Se o Cupom Fiscal Eletrônico é algo novo para você, essa documentação pode ser bem útil.
Sobre o CF-e:
- O que é o Cupom Fiscal Eletrônico
- Objetivos da funcionalidade CF-e
- Gerando arquivo de integração CF-e
- Fluxo de envio e consulta
- Fluxo utilizando WebHook
- Lista de Rotas CF-e
O Cupom Fiscal Eletrônico
O Cupom Fiscal Eletrônico (MDF-e), é um documento fiscal eletrônico utilizado principalmente no varejo para registrar as vendas ao consumidor final. Assim como a Nota Fiscal de Consumidor Eletrônica (NFC-e), o CF-e visa substituir o antigo cupom fiscal de papel, mas com algumas diferenças e funcionalidades específicas.
Objetivos da Funcionalidade CF-e
- Substituição do Cupom Fiscal de Papel: Substituir o tradicional cupom fiscal impresso por um documento eletrônico, reduzindo a dependência de papel e melhorando a sustentabilidade.
- Facilitação do Controle e da Fiscalização: Permite que as autoridades fiscais acompanhem as transações de forma mais eficiente e em tempo real, facilitando a detecção de irregularidades e fraudes.
- Aumento da Transparência Fiscal: Facilita a verificação e o monitoramento das operações fiscais, tanto para as empresas quanto para as autoridades fiscais.
- Redução da Burocracia: Simplificar o processo de emissão de cupons fiscais e reduzir a burocracia associada ao gerenciamento de documentos fiscais em papel.
- Integração com Sistemas de Gestão: Melhora a eficiência operacional ao permitir a emissão e o controle de cupons fiscais diretamente a partir dos sistemas de ponto de venda (PDV) e gestão.
- Segurança e Integridade das Informações: O CF-e é criptografado e enviado eletronicamente para a Secretaria da Fazenda, o que reduz a possibilidade de adulteração e aumenta a confiabilidade dos dados.
O CF-e, portanto, busca modernizar o processo de emissão de cupons fiscais, proporcionando maior eficiência, transparência e controle tanto para os estabelecimentos comerciais quanto para as autoridades fiscais.
Gerando arquivo de integração
A integração com o PlugNotas funciona por meio de um arquivo JSON.
Esse arquivo vai receber algumas informações tributárias, que foram coletadas naqueles pontos anteriores que comentamos.
O arquivo em si é bem simples. Suas dúvidas podem ser apenas em relação a alguns campos.
Algumas observações sobre o nosso JSON são as seguintes:
- O arquivo disponibilizado na documentação, é um exemplo que representa UM CASO de envio: uma empresa de Regime Normal (CNPJ da Tecnospeed) com tributação isenta. Qualquer caso diferente disso, pode ser necessário alterar alguns campos diferentes, principalmente em relação à tributação. Campos estes, que estão disponíveis no dicionário de dados.
Essa documentação aqui, é sobre a rota de envio da CF-e e nela você consegue visualizar todos os campos disponíveis para o JSON de envio, bem como a especificação dos campos (string, inteiro, enum...).
Fluxo de emissão CF-e
Os envios de notas são realizados de forma assíncrona, o que significa que o retorno direto do seu envio, NÃO é informando se a nota está autorizada ou não. Para isso, será necessário o uso de consultas dessas notas ou o uso do webhook para receber notificações. Nessa documentação, ambos os fluxos estão explicados.
Nesse fluxo, vamos assumir que os passos anteriores já foram realizados, como todos os cadastros, configurações da empresa e informações dentro do json.
Fluxo utilizando a consulta
O fluxo se inicia com o envio do arquivo json via API para o PlugNotas. Quando chega ali, nós vamos buscar os dados do cadastro da empresa, setar a numeração da nota, realizar os cálculos de impostos e valores (caso eles não constem no json) e montar o XML para enviar isso tudo para a SEFAZ. Ao mesmo tempo em que todo esse processo é feito, a API já retornou para você o ID dessa nota dentro do nosso banco de dados.
A SEFAZ vai processar essa nota e retornar para nós. Para que você consiga saber o resultado do processamento ou se ela ainda permance em processamento, você deve utilizar a rota de consulta de notas usando como filtro o ID retornado da rota de envio.
O retorno da consulta vai dizer se a nota foi autorizada (CONCLUÍDO), rejeitada (REJEITADO) ou se ainda está pendente de processamento (PROCESSANDO).
Em caso de autorização, o processo por si só está finalizado, mas caso seja do seu interesse ou do seu cliente, você pode solicitar o PDF e/ou o XML dessa nota para o PlugNotas.
Em caso de rejeição, você deve analisar o motivo da rejeição e aplicar a correção, gerando um novo envio depois disso.
Em caso de processamento pendente, resta apenas aguardar e realizar novas consultas periódicamente para saber se o processo foi finalizado.
Fluxo utilizando o WebHook
Para esse fluxo é primordial que se realize as configurações do WebHook para o qual enviaremos as notificações (os Webhooks estão explicados na documentação "Obtendo o retorno").
O fluxo se inicia com o envio do arquivo json via API para o PlugNotas. Quando chega ali, nós vamos buscar os dados do cadastro da empresa, setar a numeração da nota, realizar os cálculos de impostos e valores (caso eles não constem no json) e montar o XML para enviar isso tudo para a SEFAZ. Ao mesmo tempo em que todo esse processo é feito, a API já retornou para você o ID dessa nota dentro do nosso banco de dados.
A SEFAZ vai processar essa nota e retornar para nós. Para que você consiga saber o resultado do processamento, você receberá uma notificação via WebHook configurado anteriormente.
O retorno desse WebHook vai dizer se a nota foi autorizada (CONCLUÍDO) ou rejeitada (REJEITADO).
Em caso de autorização, o processo por si só está finalizado, mas caso seja do seu interesse ou do seu cliente, você pode solicitar o PDF e/ou o XML dessa nota para o PlugNotas.
Em caso de rejeição, você deve analisar o motivo da rejeição e aplicar a correção, gerando um novo envio depois disso.
Notas pendentes de processamento não serão notificadas, apenas notas em estado final.
Lista de Rotas CF-e
Nome da rota | Método | Rota | Descrição | Retorno |
---|---|---|---|---|
Emitir cupom | POST | http://localhost:8082/cfe | Realiza o envio assíncrono do cupom a partir do JSON no BODY da requisição. | ID do cupom em caso de JSON correto, ou um erro de validação de JSON como campos obrigatórios vazios. |
Consultar resumo do cupom | GET | http://localhost:8082/cfe/{chaveNota}/resumo | Traz apenas as informações principais sobre o processamento desse cupom |
Retorna um resumo do cupom enviado e o status do cupom. A consulta pode apresentar os seguintes status:
|
Solicitando cancelamento do cupom | POST | http://localhost:8082/cfe/{chaveNota}/cancelamento | Realiza a requisição do cancelamento assíncrono da nota a através do ID gerado para a nota. | XML de confirmação de cancelamento, em caso de sucesso, ou XML da resposta do servidor. |
Baixar PDF cupom | GET | https://api.plugnotas.com.br/cfe/{idCupomOrChave}/pdf | Download da impressão em PDF CF-e, por ID ou Chave. | Retorna o PDF em bytes. |
Baixar XML cupom | GET | https://api.plugnotas.com.br/cfe/{idCupomOrChave}/xml | Download do XML Destinatário da CF-e, por ID ou Chave. | Retorna o XML destinatário. |
Baixar XML de cancelamento do cupom | GET | https://api.plugnotas.com.br/cfe/{idCupomOrChave}/cancelamento/xml | Download do XML de cancelamento do CF-e, por ID ou Chave. | Retorna o XML de cancelamento. |
Comentários
0 comentário
Por favor, entre para comentar.