Spedy
novoNFS-e tomadas na API

Consulta automática de NFS-e tomadas, dentro do seu produto.

A Spedy busca no Ambiente Nacional as notas de serviço emitidas contra o CNPJ dos seus clientes e entrega XML e DANFSe completos, com cancelamento e manifestação no webhook. Na mesma API que já emite.

sem taxa de setup

seu-sistema · stdout
← inbound_invoice.detected · 200
↘ evento cancellation
← inbound_invoice.event · 200
10s · loop
NFS-e · tomada
cancelada

Nuvem Sul Tecnologia

R$ 2.350,00

XML ↓DANFSe ↓
webhook
✓detected
✓event · cancellation

mesmo handler da NF-e

+12.000

empresas atendidas

+60 milhões

notas fiscais emitidas

+R$ 10 bilhões

em volume processado

SebraeGrupo PrimoSescFluencypassPoder360

01 · o problema

A nota de serviço sempre foi o buraco do ERP.

Nota de produto tem a SEFAZ. A de serviço passou anos espalhada em portal de prefeitura. O seu cliente toma serviço todo mês, e o seu sistema não vê.

Desenvolvedor com a mão na testa diante de várias abas de sites de prefeituras e de um editor de código

robô de portal

Manutenção que nunca acaba, no time que devia estar no seu produto.

portal · layout · login

Cada prefeitura, uma integração

Portal, layout e autenticação mudam de cidade para cidade. O robô de captura quebra no primeiro redesign do site da prefeitura.

cancelamento

A nota muda depois que chega

O prestador cancela e ninguém avisa. O contas a pagar segue programando um documento que não vale mais.

ISS · IR · CSRF

A retenção mora na nota

ISS retido, IR e contribuições saem do documento tomado. Sem ele, o fechamento do seu cliente espera alguém baixar PDF.

IBS · CBS

A Reforma Tributária pesa na entrada

Com IBS e CBS, crédito sobre serviço tomado depende de documento fiscal válido. Quem não captura a nota não enxerga o crédito.

02 · a fonte

Uma conexão no lugar de milhares de prefeituras.

O Ambiente de Dados Nacional da NFS-e reúne os documentos dos municípios e distribui para quem é parte da nota. A Spedy consulta essa fonte com o certificado do seu cliente. Prefeitura deixa de existir no seu código.

antes: uma integração por cidade

  • São Paulo/SP
  • Curitiba/PR
  • Cuiabá/MT
  • Recife/PE
  • Porto Alegre/RS
  • Belo Horizonte/MG
  • Goiânia/GO
  • Florianópolis/SC
  • Salvador/BA
  • Campinas/SP
  • Joinville/SC
  • Londrina/PR
  • Natal/RN
  • Uberlândia/MG
  • Sorocaba/SP
  • Maringá/PR
  • Vitória/ES
  • Campo Grande/MS
  • Fortaleza/CE
  • Ribeirão Preto/SP
  • Blumenau/SC
  • Caxias do Sul/RS
  • e milhares de outras
  1. 1

    Ambiente de Dados Nacional

    a fonte oficial da NFS-e no padrão nacional

  2. 2

    Spedy

    certificado · NSU · sincronização · limite de consulta

  3. 3

    O seu produto

    GET /v1/inbound-service-invoices

cobre os municípios que compartilham documentos com o Ambiente Nacional · a Spedy não raspa portal de prefeitura, e é isso que mantém a integração estável

conte em quais cidades a sua base está

03 · como funciona

Quatro passos. Nenhum deles no portal da prefeitura.

empresas · configuração
PUT /v1/companies/cmp_8f3a/settings
{
  "serviceInvoice": {
    "inbound": {
      "enabled": true,
      "startDate": "2026-08-01"
    }
  }
}

# a partir daqui a Spedy consulta o
# Ambiente Nacional sozinha

pré-requisitos · recurso de notas recebidas no contrato · certificado A1 válido por empresa · a importação lê documentos reais e roda sempre em produção, qualquer que seja o ambiente de emissão

Documentação

X-Api-Key · REST · JSON

04 · uma chave

Emissão, NF-e e NFS-e na mesma chave.

No modelo mais comum do mercado, emitir e capturar são dois produtos, com dois contratos e duas integrações. Aqui a NFS-e tomada é mais uma chamada, e o webhook é o mesmo das notas destinadas.

  • mesmo contrato e mesma base de empresas
  • mesmo handler de webhook
  • sem novo setup
  • não precisa migrar a emissão
X-Api-Key: $SPEDY_KEY
POST/v1/service-invoices# emissão
GET /v1/inbound-product-invoices# NF-e destinadas
GET /v1/inbound-service-invoices# NFS-e tomadas · novo
# o mesmo webhook para as duas notas
if (data.model === "serviceInvoice")
lancarServicoTomado(data)
else
lancarCompra(data)

emissão de NFS-e opcional · dá para contratar só a consulta

05 · eventos

A nota muda depois que chega. O seu sistema fica sabendo.

Nota de serviço é cancelada e manifestada depois da emissão. Cada evento registrado no Ambiente Nacional vira uma chamada no seu webhook, sem reconsulta periódica para descobrir o que mudou.

  • detectedA nota chega completa: XML autorizado e DANFSe disponíveis na importação.
  • cancellationO prestador cancelou. A nota passa para canceled sem ninguém reconsultar.
  • manifestationConfirmação ou rejeição do tomador, e a confirmação tácita registrada pela administração.
  • otherOs demais eventos do padrão nacional, como manifestação do prestador, análise fiscal e bloqueio.
  • syncSincronização sob demanda, assíncrona, com 429 e Retry-After previsíveis.
  • modelserviceInvoice ou productInvoice: NFS-e e NF-e no mesmo webhook.

06 · manifestação do tomador

Duas opções, e nenhuma volta.

No padrão nacional o tomador confirma ou rejeita, e a primeira manifestação é definitiva. A validação vem na chamada: o seu produto não deixa o cliente errar.

confirmed · definitiva

Confirmar

A operação ocorreu como está descrita na nota. Sem motivo e sem justificativa. É o caminho da maioria dos serviços recorrentes.

{ "status": "confirmed" }

rejected · definitiva · motivo obrigatório

Rejeitar

O cliente contesta a nota. O motivo sai de uma lista fechada, e a justificativa, opcional, vai de 15 a 255 caracteres.

  • Nota em duplicidade

    duplicate

  • Já emitida pelo tomador

    alreadyIssuedByTaker

  • Sem fato gerador

    noTriggeringEvent

  • Erro na responsabilidade tributária

    taxLiabilityError

  • Erro de valor, serviço ou data

    valueServiceOrDateError

  • Outro

    other

Sem resposta? A administração pode registrar a confirmação tácita por decurso de prazo, e a nota deixa de aceitar manifestação. O registro também chega no seu webhook.

POST /v1/inbound-service-invoices/{id}/manifest · resposta síncrona

Regra na documentação

diferente da NF-e: não existe ciência provisória

07 · o que construir

O documento é a matéria-prima. O módulo de serviços é o produto.

A Spedy entrega a NFS-e estruturada. O que o seu time constrói em cima dela é o que diferencia o seu sistema.

prestador · valor

Contas a pagar de serviços

Contabilidade, software, manutenção, consultoria: a nota entra estruturada. O cliente confere em vez de digitar.

ISS · IR · CSRF

Retenções conferidas na entrada

ISS retido, IR e contribuições lidos da própria nota, conferidos antes de o pagamento sair.

cancellation

Bloqueio de nota cancelada

O evento de cancelamento chega no webhook e trava o título antes que alguém pague uma nota que não vale mais.

valor × contrato

Conferência de contrato recorrente

Mensalidade de fornecedor que veio com valor diferente do contrato vira alerta, e não surpresa no fim do mês.

EFD-Reinf

Obrigações acessórias e contador

Serviço tomado com retenção alimenta a EFD-Reinf. XML e DANFSe prontos para a rotina contábil, sem portal de prefeitura.

reforma tributária

Base para crédito de IBS e CBS

Na Reforma Tributária, crédito sobre serviço tomado depende do documento fiscal. A entrada estruturada é a base do cálculo.

o time ajuda a desenhar o módulo

08 · construir ou integrar

O trabalho existe de qualquer jeito. A escolha é de quem faz.

Nada disso é diferencial do seu produto, e tudo custa time sênior. Sem integração, o seu cliente continua baixando nota no portal da prefeitura.

fonte dos documentos

Robô por prefeitura ou integração própria com o ADN

Um endpoint REST e dois webhooks

certificado dos clientes

Guarda e renovação de um A1 por empresa

Cadastro por empresa, multiempresa nativo

cancelamento

Reconsulta periódica para descobrir o que mudou

Evento no webhook, status já atualizado

manifestação

Lista de motivos, regra definitiva e confirmação tácita

Uma chamada, regra aplicada

limite de consulta

Controle de NSU e risco de bloqueio do CNPJ

Sincronização gerenciada pela Spedy

mudança do padrão

Acompanhar cada nota técnica do padrão nacional

Do nosso lado, sem release do seu produto

09 · contratação

Por volume, sem taxa de setup.

O mesmo modelo da API da Spedy: uma franquia mensal de notas, no mesmo contrato da emissão. A franquia certa depende do volume da sua base, e é isso que o time levanta na conversa.

  • Dá para contratar só a consulta, sem migrar a emissão
  • NF-e destinadas e NFS-e tomadas usam o mesmo recurso do contrato
  • Multiempresa nativo: habilita empresa por empresa no mesmo contrato
Documentação

10 · quem faz

Quem constrói a API.

Fundada em 2021, a Spedy é citada como referência em automação fiscal pela imprensa especializada, e processa notas para alguns dos maiores negócios digitais do Brasil.

11 · perguntas frequentes

O que o time técnico pergunta antes.

As dúvidas que mais aparecem nas conversas sobre NFS-e tomadas.

  • É a busca automática das notas fiscais de serviço emitidas contra o CNPJ de uma empresa, ou seja, os serviços que ela contratou. A Spedy consulta o Ambiente de Dados Nacional da NFS-e com o certificado digital da empresa e devolve os documentos estruturados para o seu sistema, por API e webhook.

  • Para quem desenvolve software: ERPs, SaaS de gestão, plataformas e software houses que atendem várias empresas e querem oferecer contas a pagar de serviços, conferência de retenções ou rotina fiscal sem depender do cliente baixar nota no portal da prefeitura.

  • Do Ambiente de Dados Nacional (ADN) do Sistema Nacional NFS-e, que reúne os documentos dos municípios e distribui para quem é parte da nota. A cobertura é a dos municípios que compartilham documentos com o ambiente nacional: quem não compartilha não aparece por esse canal. A Spedy não busca em portal de prefeitura, e é isso que mantém a integração estável.

  • Não. Ao contrário da NF-e, a NFS-e chega completa: XML autorizado e DANFSe ficam disponíveis no momento da importação. Por isso não existe o webhook inbound_invoice.completed para NFS-e.

  • Por webhook. A Spedy dispara inbound_invoice.detected quando a nota chega e inbound_invoice.event a cada evento registrado no Ambiente Nacional: cancelamento, manifestação e os demais eventos do padrão nacional. Existe sincronização sob demanda, mas ela tem limite de chamadas por CNPJ e não deve ser usada para descobrir notas novas.

  • As notas em que a empresa aparece como tomadora do serviço e as em que ela é intermediária da operação. As notas que a própria empresa emitiu como prestadora ficam de fora, para não duplicar com a emissão.

  • No padrão nacional são dois atos: confirmar ou rejeitar. A primeira manifestação é definitiva. Rejeitar exige um motivo de uma lista fechada (duplicidade, já emitida pelo tomador, sem fato gerador, erro na responsabilidade tributária, erro de valor, serviço ou data, ou outro) e aceita justificativa opcional de 15 a 255 caracteres. A chamada já valida tudo isso.

  • Quando o tomador não se manifesta, a administração pode registrar a confirmação por decurso de prazo. Depois disso a nota não aceita mais manifestação. O registro chega no seu sistema como evento, pelo mesmo webhook.

  • O recurso de notas recebidas no seu contrato e certificado digital A1 válido cadastrado para a empresa. Com isso, uma chamada nas configurações da empresa liga a importação de NFS-e e define a data de início. Também dá para ligar pela tela.

  • Até 90 dias para trás. A data de início da importação não pode ser mais antiga que isso.

  • Não. A NFS-e não tem consulta individual por chave de acesso: as notas chegam exclusivamente pela distribuição do Ambiente Nacional. A chave da NFS-e tem 50 dígitos, e não 44 como a da NF-e.

  • A importação de NFS-e roda sempre em produção, qualquer que seja o ambiente de emissão configurado para a empresa, porque lê documentos reais do Ambiente Nacional. O restante da API tem ambiente de testes normalmente.

  • Pouco. O recurso do contrato é o mesmo, a habilitação é outra chave nas configurações da empresa e o webhook é o mesmo: o campo model diz se o documento é NF-e (productInvoice) ou NFS-e (serviceInvoice).

  • Não. Dá para contratar só a consulta de NFS-e tomadas e manter a emissão onde ela está hoje. Se você já emite pela nossa API, é o mesmo contrato e a mesma chave.

  • É o mesmo modelo da API da Spedy: sem taxa de setup e com uma franquia mensal de notas. A franquia certa depende do volume da sua base, e é isso que o time levanta na conversa.

Quantos dos seus clientes ainda baixam nota no portal da prefeitura?

sem taxa de setup · mesma chave da emissão · a gente mostra o fluxo funcionando