1. Guias de NFS-e
  2. Emissão de NFS-e

POST /nfse emite uma NFS-e de forma síncrona para a empresa dona da x-api-key. A Treeunfe monta a DPS com os dados da empresa, aplica a regra de tributação do serviço, assina com o certificado A1 e transmite à SefIN Nacional.

​
Antes da primeira emissão

1

Confira o certificado

A empresa precisa de um certificado A1 válido. Veja Consultar certificado atual.

2

Confira as configurações de NFS-e

Regime (CRT), inscrição municipal, série, numeração e ambiente (tpAmb) ficam nas configurações de NFS-e. A configuração inicial é feita no emissor; pela API você consulta e ajusta.

3

Escolha o código do serviço

Consulte os códigos de serviço com escopo=organizacao_cnae para ver só os compatíveis com os CNAEs da empresa.

​
Payload

{
  "tomadorCnpj": "12345678000195",
  "cTribNac": "010501",
  "cNbs": "115011000",
  "cTribMun": "001",
  "descricao": "Licenciamento de software - mensalidade",
  "vServ": 230
}
CampoObrigatórioDescrição
cTribNacSimCódigo nacional do serviço (6 dígitos).
vServSimValor do serviço, como número.
cNbsPara regime normalCódigo NBS (9 dígitos). Obrigatório quando o CRT da empresa é NORMAL.
tomadorCnpjNãoCNPJ ou CPF do tomador, só com números.
cTribMunNãoCódigo de tributação municipal.
descricaoNãoDescrição do serviço.

Os dados do prestador (CNPJ, inscrição municipal, regime) vêm do cadastro e das configurações da empresa. Não é preciso enviá-los.

​
Como a tributação é definida

A Treeunfe usa a regra de tributação configurada no emissor para o cTribNac (e o cNbs, quando houver). A regra define ISSQN, local da prestação, retenções, PIS/COFINS, INSS e IBS/CBS.

​
Resposta

Quando a nota é autorizada:

{
  "success": true,
  "nfseId": "123e4567-e89b-12d3-a456-426614174000",
  "status": "AUTHORIZED"
}

Guarde o nfseId. Ele é o ID usado para baixar o PDF, enviar por e-mail e, como idDps, no cancelamento.

O resultado do processamento vem em outcome:

outcomeSignificadoO que fazer
SUCCESSNota emitida.Nada.
FAILED_PERMANENTNota recusada.Corrija o payload ou a configuração antes de reenviar.
TRANSIENT_ERRORFalha temporária.Tente de novo mais tarde.
VALIDATION_ERRORPayload inválido (400).Veja a lista errors em Erros.

​
Depois da emissão

ParaUse
Baixar o PDF (DANFSE)GET /nfse/{id}/danfse
Obter só o link do PDFGET /nfse/{id}/danfe
Enviar XML e PDF ao tomadorPOST /nfse/{id}/send-email
Ser avisado da autorizaçãoWebhooks, evento NFSE_AUTHORIZED

​
Status de resposta

StatusSignificado
200Nota processada. Confira outcome.
400Payload inválido ou erro na emissão. Veja errors.
401x-api-key ausente ou inválida.
429Limite de requisições excedido.