Pular para o conteúdo principal

Devolução de Venda - NF-e

Para realizar o cancelamento de uma venda acobertada por NF-e após o tempo de cancelamento da nota, é necessário emitir uma nota de devolução. Para a emissão da nota de devolução deve ser utilizada a rota aqui documentada.  

Esta rota está preparada para devoluções parciais ou totais. 

Autenticação

Para utilizar a rota de devolução de venda NF-e é necessário realizar autenticação, conforme detalhado na documentação de Autenticação do Emissor


API Devolução de Venda

  • Endpoint: /nfemiddleware/Sale/Return
  • Método: POST
  • Header:
    • Authorization: Token de autorização
    • Content-Type: application/json 

Dados dos parâmetros de envio:

CampoDescriçãoObrigatório Simples e MEIObrigatório Regime NormalGrupo e Tag do XML que irá alimentar
IdId único da venda. Não poderá se repetir. Recomendado utilizar um GUIDSimSim -
SaleIdID gerado no momento da vendaSimSim -
CnpjCNPJ do emissorSimSim -
NumeroSerieNúmero de série do documento fiscal. Recomendado um por PDVSimSim serie
dhSaiEntData/Hota da Saída. Se não informado será utilizada a 
data da emissão
NãoNãodhSaiEnt
tpDANFETipo de Danfe a ser retornado
1 - Retrato
5 - Simplificado 
6 - Simplificado SC
7 - Etiqueta
8 - Paisagem
SimSim
infCplInformações Complementares de interesse do ContribuinteNãoNãoinfCpl
Items Array de itens a serem desenvolvidosSimSim -
Items.cProdCódigo do produto informado na vendaSimSimcProd
Items.qComQuantidade a ser devolvidaSimSimqCom
Items.qTribQuantidade tributada a ser devolvidaNãoNãoqTrib
Items.infAdProdInformação adicional do produtoNãoNãoinfAdProd
Items.CSTPisDevolucaoInformar o CST que será vinculado ao PISNãoSimPIS - CST
Items.CSTCofinsDevolucao Informar o CST que será vinculado ao COFINSNãoSimPIS - COFINS

Exemplo Payload de Envio

{
"Id": "{{$guid}}",
"SaleId": "9058d650-5838-4f8e-b05f-de6a69fd4e67 ",
"NumeroSerie": "2",
"Cnpj": "99999999999999",
"dhSaiEnt": "2025-06-24T15:50:50TZD",
"tpDANFE": 1,
"infCpl": "Observações",
"Items": [
{
"cProd": "1",
"qCom": 1,
"qTrib": 1,
"infAdProd": ""
}
]
}

retorno da API poderá ser o documento autorizado ou a rejeição do documento. Segue o detalhamento dos parâmetros retornados:

TagDescrição
chNFeChave da nota fiscal
cStatStatus vinculado ao documento. Os possíveis status serão detalhados em tópico específico.
xMotivoDescrição do status do documento
danfeDANFE em PNG. Deverá decodificar de Base64
nNFNúmero do documento fiscal
xUrlDanfeURL de consulta do documento fiscal na Sefaz

Exemplo Payload de Retorno


{
"chNFe": "35250649792429000158550020004001961370973520",
"cStat": "100",
"danfe": "Base64",
"nNF": 400196,
"xMotivo": "Autorizado o uso da NF-e",
"xUrlDanfe": null
}

Detalhamento campo cStat

Neste campo poderão haver retornos de status da SEFAZ e da Solução Fiscal, conforme segue

Retornos da SEFAZ

  • Autorização:
    • 100 – Autorizado
  • Rejeições:
    • Consultar todos os códigos de rejeição vinculados a emissão de documento no manual de orientação ao contribuinte (MOC – Anexo I) disponível no item “4.4.2. Tabela de Códigos de Rejeição”

Retornos da Solução Fiscal

  • Rejeições
RetornoComo Resolver
M0001 - O CNPJ não está cadastro para emissão.Necessário cadastrar o CNPJ emissor na Solução Fiscal (Cadastro Emissor/Empresa). Após cadastrar o Emissor e gerar chave para ele autenticar, basta realizar a devolução novamente.
M0002 - O CNPJ está inativo para emissão.Necessário vincular produto de emissão de NF-e no cadastro do CNPJ emissor na Solução Fiscal. Campos Produto e Produtos ID. (Cadastro Emissor/Empresa). Após realizar este ajuste, basta realizar a venda novamente.
M0003 - Não existe um certificado cadastrado para o CNPJ.Necessário realizar upload de Certificado Digital para o CNPJ Emissor, conforme descrito na documentação Gestão Certificado Digital. Após enviar o Certificado basta realizar a devolução novamente.
M0004 - O certificado está inativo para este CNPJ.Isso significa que o certificado vinculado ao CNPJ emissor foi revogado ou venceu. Para resolver é necessário que o Certificado Digital seja substituído e enviado para Solução Fiscal. Após substituir o Certificado basta realizar a venda novamente.
M0013 - Nota já autorizada com data de emissão.A nota referente a esta venda já foi emitida. Para obter o documento emitido basta acionar a API de Consulta (Consulta Venda - NF-e)

Possíveis retornos HTTP

  • 200 - Sucesso
  • 400 – BadRequest
    • Caso tenha algum problema nas informações enviadas, causando falha na Solução Fiscal ou rejeição pela Sefaz
  • 401 - Unauthorized
  • 404 – NotFound
  • 429 - TooManyRequests
  • 500 - InternalServerError
  • 503 - Service Unavailable

Este conteúdo foi útil para você?