Através deste endpoint, é possível cancelar uma NFS-e autorizada no município de Teresina – PI enviando o conteúdo no respectivo layout em JSON ou XML.
URL
Homologação: POST https://nfseapi.ns.eti.br/v1/teresina/cancelar
Header
No cabeçalho da requisição poderão ser informados os campos abaixo, conforme ocorrência.
| Campo | Ocorrência | Descrição |
|---|---|---|
| X-AUTH-TOKEN | 1-1 | Token de acesso da Software House |
| tpAmb | 1-1 | Tipo do ambiente: 1-Produção; 2-Homologação |
| Content-Type | 1-1 | Indica o formato dos dados enviados: JSON: application/json; XML: application/xml ou text/xml |
Dados de Entrada
| Campo | Ocorrência | Descrição | Tipo | Tamanho | Observações |
|---|---|---|---|---|---|
| CNPJ | 1-1 | CNPJ do emitente da NFS-e | String | 14 | |
| IM | 1-1 | Inscrição municipal ligada ao CNPJ | String | 1-15 | |
| cMun | 1-1 | Código do município para o cancelamento | String | 7 | |
| codigo | 1-1 | Código do cancelamento | Inteiro | 1-4 | Chave da NFSe recebida na Consulta de Status de Processamento |
| nNF | 0-1 | Número da NFS-e a ser cancelada | Inteiro | 1-9 | Retornado na Consulta Status de Processamento |
| tpAmb | 1-1 | Tipo do ambiente: 1-Produção; 2-Homologação | Inteiro | 1 | Pode ser informado no Header |
Exemplo de requisição
Requisição de cancelamento de NFS-e
curl -X POST
\-H "Content-Type: application/xml"
\-H "X-AUTH-TOKEN: SEU_TOKEN"
\-H "tpAmb:2"
\-d '{"CNPJ": "99999999999999","IM": "000000","nNF": "79","cMun": "4304606","codigo": "2","tpAmb": "2"}'
https://nfseapihml.ns.eti.br/v1/teresina/cancelar
Exemplo de cancelamento em XML
<CancelarNfseEnvio>
<Pedido>
<InfPedidoCancelamento>
<IdentificacaoNfse>
<Numero>1533</Numero>
<Cnpj>07485055000269</Cnpj>
<InscricaoMunicipal>333336</InscricaoMunicipal>
<CodigoMunicipio>1219</CodigoMunicipio>
</IdentificacaoNfse>
<CodigoCancelamento>176268a6ea83ce4d50e1f44385521022de8b90e3</CodigoCancelamento>
<MotivoCancelamentoNfse>Teste de Cancelamento de nota</MotivoCancelamentoNfse>
</InfPedidoCancelamento>
</Pedido>
</CancelarNfseEnvio>
Exemplo de cancelamento em JSON
{
"CNPJ": "99999999999999",
"IM": "000000",
"nNF": "79",
"cMun": "4304606",
"codigo": "176268a6ea83ce4d50e1f44385521022de8b90e3",
"tpAmb": "2"
}
Dados retornados
| Campo | Descrição | Pai | Observação |
|---|---|---|---|
| status | Código de status do processamento da NS | ||
| motivo | Descrição literal do status de processamento da NS | ||
| retEvento | Objeto contendo o retorno do evento | Apenas em status = 200 | |
| cStat | Código de status do processamento da NFS-e na Prefeitura | retEvento | |
| xMotivo | Descrição literal do status de processamento na Prefeitura | retEvento | Quando cStat diferente de 100, contem a mensagem de erro retornada pela Prefeitura |
| idEvento | Identificação do Evento | retEvento | Somente em cStat = 100 |
| xml | XML de distribuição da NFS-e | retEvento | Somente em cStat = 100 |
| erro | Objeto contendo o erro ocorrido | Apenas em status != 200 | |
| cStat | Código de status do processamento | erro | |
| xMotivo | Descrição literal do status de processamento | erro |
Exemplos de retorno
Retorno com sucesso
{
"status": 200,
"motivo": "Documento já processado anteriormente e autorizado",
"retEvento": {
"cStat": "135",
"xMotivo": "Cancelamento Homologado na Prefeitura",
"idEvento": "CAN_79",
"xml": "<?xml version=\"1.0\" encoding=\"utf-8\"?...."
}
}
Retorno com erro
{
"status": -2,
"motivo": "Nao foi possivel vincular o evento a NFSe",
"erro": {
"cStat": 898,
"xMotivo": "Documento Original não localizado, ou não autorizado, para emissão do cancelamento"
}
}