Solução para importação de NFSe para prefeituras sem webservices

Egon Hilgenstieler

Algumas prefeituras possuem nota fiscal eletrônica de serviços mas não possuem a possibilidade de integrar com outros sistemas através de webservices. A solução nestes casos é a importação de NFSe: situação onde a prefeitura disponibiliza uma forma de importar várias notas fiscais para emissão em lote, evitando o trabalho de digitar e autorizar cada NFSe de forma manual.

Conteúdo

Algumas prefeituras possuem nota fiscal eletrônica de serviços mas não possuem a possibilidade de integrar com outros sistemas através de webservices.

A solução nestes casos é a importação de NFSe: situação onde a prefeitura disponibiliza uma forma de importar várias notas fiscais para emissão em lote, evitando o trabalho de digitar e autorizar cada NFSe de forma manual.

A API do Focus NFe agora atende essas situações fornecendo uma interface padronizada para geração destes arquivos, usando um formato muito similar com o já usado para autorizar NFSe’s individualmente.

Geração do arquivo de importação

Para gerar o arquivo para importação, deve ser feita a seguinte solicitação

POST /lotes_nfse?token=TOKEN&ref=REFERENCIA

Onde TOKEN é o seu token de acesso e REFERENCIA uma referência do lote a ser gerado (ele poderá ser usado posteriormente na consulta). Os dados que devem ir no POST é um arquivo YAML muito similar ao arquivo de autorização de NFSe, consistindo pelos seguintes campos:

prestador:

  • cnpj(*): CNPJ do prestador de serviços.
  • codigo_municipio(*): Código IBGE do município do prestador
  • inscricao_municipal: Inscrição municipal do prestador de serviços.

lista_nfse: Array com  as notas a serem geradas, usando o mesmo formato do arquivo de NFSe omitindo apenas a seção “prestador”.

Exemplo de arquivo:

prestador:
  cnpj: 32334535000121
  inscricao_municipal: 123123
  codigo_municipio: 3547304
lista_nfse:
  - data_emissao: 2015-02-04T17:7:26-03:00
    natureza_operacao: 1
    servico:
      discriminacao: "Servico 1"
      item_lista_servico: "01.06"
      valor_iss: 10.26
      valor_servicos: 513.00
    tomador:
      razao_social: 'João da Silva'
      cpf: '03055054812'
      codigo_municipio: 4106902
      cep: 80310333
      logradouro: Rua ABC
      numero: 12
      complemento: apto 21
      email: joao@example.com
  - data_emissao: 2015-02-05T17:7:26-03:00
    natureza_operacao: 1
    servico:
      discriminacao: "Serviço 2"
      item_lista_servico: "01.06"
      valor_iss: 10.26
      valor_servicos: 513.00
    tomador:
      razao_social: 'Maria da Silva'
      cpf: '04055054813'
      codigo_municipio: 4106902
      cep: 88000090
      logradouro: Rua XYZ
      numero: 21
      complemento: casa
      email: maria@example.com

A solicitação é síncrona e pode retornar os seguintes status HTTP:

  • HTTP status 201 (Created) – Arquivo de importação gerado. É devolvido o conteúdo do arquivo como resposta
  • HTTP status 415 (Unsupported Media Type) – Formato de arquivo YAML inválido
  • HTTP status 422 (Unprocessable Entity) – Campos obrigatórios não preenchidos ou em formato incorreto
  • HTTP status 400 (Bad Request ) – Requisição rejeitada devido a CNPJ ou token inválido (mensagem de erro apropriada é exibida)

Consulta do arquivo de importação

Esta operação está disponível caso queira consultar novamente o arquivo gerado. Seu formato é:

GET /lotes_nfse/REFERENCIA?token=TOKEN

Retorno:

  • HTTP status 200 (OK) – É devolvido o conteúdo do arquivo de importação como resposta
  • HTTP status 404 (Not found) – Lote não encontrado com referência informada

Importando o arquivo de resposta (opcional)

Algumas prefeituras disponibilizam um arquivo de resposta, que poderá informar erros no arquivo enviado ou informar dados da nota fiscal gerada (por exemplo número e código de verificação). Quando implementado você poderá enviar a resposta da prefeitura para nossa API e iremos gerar a resposta de acordo com o padrão da nossa API.

Seu formato é:

POST /lotes_nfse/REFERENCIA/resposta?token=TOKEN

O conteúdo do POST deverá ser a resposta da prefeitura.

Retorno:

  • HTTP status 201 (Created) – Arquivo de importação gerado. É devolvido o status de cada nota enviada. Nenhuma nota é processada se alguma nota tiver algum erro.
  • HTTP status 415 (Unsupported Media Type) – Formato de arquivo inválido
  • HTTP status 400 (Bad Request ) – Requisição rejeitada devido a CNPJ ou token inválido (mensagem de erro apropriada é exibida)

Quando o arquivo é processado com sucesso, é gerado uma resposta com um array no mesmo formato de uma consulta de NFSe. Exemplo:

-
caminho_xml_nota_fiscal: /notas_fiscais_servico/NFSe21123430001233505708-4759664-31-3347-2325799-T.xml
  codigo_verificacao: 334L.2795.8967.1235799-T
  data_emissao: 2017-09-04 00:00:00 -03:00
  numero: "31"
  status: autorizado
  uri: "https://www.municipio.sp.gov.br/nfe/"
-
  caminho_xml_nota_fiscal: /notas_fiscais_servico/NFSe21237430001233505708-4759664-32-990R-9926-9-Z.xml
  codigo_verificacao: 990R.9926.0621.0181239-Z
  data_emissao: 2017-09-04 00:00:00 -03:00
  numero: "32"
  status: autorizado
  uri: "https://www.municipio.sp.gov.br/nfe/"
Picture of Egon Hilgenstieler

Egon Hilgenstieler

CTO e cofundador do Focus NFe, desenvolvedor, professor de yoga e praticante de meditação. Enquanto não está programando, procura a resposta para a vida, para o universo e para tudo mais.

Inscreva-se em nossa newsletter​

Receba nossos conteúdos exclusivos em primeira mão.

Explore outros conteúdos:

Validação de nota fiscal: o que é, como funciona e onde validar
Nota Fiscal
João Vallim

Validação de nota fiscal: o que é, como funciona e onde validar

A validação de nota fiscal está entre os diversos processos que fazem parte da gestão tributária brasileira, que existem para verificar se tudo está dentro das normas.

Afinal, as notas fiscais, assim como qualquer outro documento, podem sofrer adulterações. Isso pode prejudicar tanto quem emite quanto quem recebe esses documentos. Por isso, conhecer o processo de verificação é importante para evitar transtornos.

Neste artigo, exploraremos o que é a validação de nota fiscal, destacando sua importância para sua empresa. Vamos também examinar os órgãos responsáveis por assegurar que essa verificação seja realizada de maneira eficaz.

Continue lendo para entender como a validação de nota fiscal pode otimizar sua gestão tributária e proteger seus interesses.

Leia mais »
Substituição Tributária: o que é, como funciona e como calcular!
Nota Fiscal
Ricardo Acras

Substituição Tributária: o que é, como funciona e como calcular!

A Substituição Tributária (ST) é um meio utilizado pelos governos federal e estaduais para arrecadar tributos como o ICMS (Imposto sobre Circulação de Mercadorias e Serviços) e o IPI (Imposto sobre Produtos Industrializados).

Dessa forma, o órgão responsável determina que um terceiro envolvido na transação fique responsável por calcular e pagar os tributos, tanto das suas operações como das etapas seguintes da cadeia de produção e distribuição. Geralmente, é o fabricante ou o importador que torna-se responsável por isso.

Por possuir alta complexidade, é preciso estar a par do seu funcionamento e saber em quais situações a Substituição Tributária se enquadra. Isso evita problemas fiscais e permite uma gestão mais clara das finanças da sua empresa.

Leia mais »
decreto-n-599-2023
Nota Fiscal
Ludmila Ferreira

Decreto n° 599/2023: novas regras de pagamento da NFe e NFCe

O Decreto n.º 599/2023, publicado em 28 de novembro de 2023 no Diário Oficial do Mato Grosso, introduz na legislação estadual a obrigatoriedade de vinculação dos pagamentos eletrônicos ao programa emissor da Nota Fiscal Eletrônica (NF-e) e Nota Fiscal do Consumidor Eletrônica (NFC-e).

Conforme o Portal da Transparência de Mato Grosso, com o avanço das tecnologias aplicadas ao comércio, principalmente aquelas que concernem aos pagamentos eletrônicos, permite-se que os sistemas emissores e APIs de documentos fiscais (NF-e) possam se integrar a diversos meios de pagamento eletrônico.

Por este motivo, trazemos explicações sobre o Decreto n.º 599/2023, suas alterações, quem deve aderir às suas regras e prazo de se adequar à obrigatoriedade disposta no Decreto.

Leia mais »