Skip to content

[16.0] envio em lote de NFe gera rejeição quando se envia uma única nota #4152

Closed as not planned

Description

@marioolofo

Assim como visto no issue #4015, as outras versões de l10n-brazil também são impactadas mas é possível contornar o problema forçando o envio síncrono de notas na configuração fiscal. Porém, o quanto o envio síncrono impacta no caso de muitas notas serem geradas ao mesmo tempo?

Module

l10n_br_fiscal_edi

Describe the bug

Alguns Estados ativaram uma trava para recebimento em lote somente quando se envia mais de uma nota fiscal, o que gera a rejeição "452 - Rejeição: Solicitada resposta assíncrona para Lote com somente 1 (uma) NF-e"

To Reproduce

Com a opção de envio de notas em modo síncrono não selecionado na configuração fiscal, tente emitir uma única nota fiscal e enviar. Aqui em SP por exemplo, a nota é rejeitada.

Expected behavior
O código de envio de notas deveria verificar se está enviando uma ou múltiplas notas e enviar de forma síncrona/assíncrona baseado na quantidade de notas na fila.

Activity

  1. CristianoMafraJunior commented on Oct 14, 2025

    @CristianoMafraJunior
    Member

    Bom dia @marioolofo, dentro da Aba Fiscal -> NF-e tem opção Habilitar Transmissão Sincrona, acredito que vai corrigir o erro.

    Image
  2. marioolofo commented on Oct 14, 2025

    @marioolofo
    Author

    Bom dia @marioolofo, dentro da Aba Fiscal -> NF-e tem opção Habilitar Transmissão Sincrona, acredito que vai corrigir o erro.

    Image

    Bom dia @CristianoMafraJunior, com a opção ativada, o erro some, mas isso é uma correção para o problema ou somente uma forma de contornarmos por enquanto?
    Pelo meu entendimento, envio de notas em lote seria mais eficiente do que síncrono (ou o envio síncrono também manda em lotes?)

  3. antoniospneto commented on Oct 14, 2025

    @antoniospneto
    SponsorContributor

    Eu penso que, para implementar o envio assíncrono, o primeiro passo é criar um cron, por exemplo a cada 5 minutos, que pegue todas as notas e monte o lote para envio assíncrono. O módulo queue_job é uma boa para isso. Já foram feitas algumas propostas aqui na localização, mas ninguém chegou a finalizar. Acho que isso é muito útil para e-commerce, mas para chão de fábrica nem tanto; por isso, nem todo mundo pode estar interessado. Ainda assim, se alguém implementar isso, vai ser muito bom para a localização.

    Ver: #854

  4. antoniospneto commented on Oct 14, 2025

    @antoniospneto
    SponsorContributor

    @marioolofo apenas para acrescentar um pouco mais de contexto: até há pouco tempo a localização nem tinha implementado o webservice síncrono; sempre se usou o webservice assíncrono, mesmo para a emissão de uma nota. Na localização isso era “mascarado” por um processo síncrono, rsss. Não era um assíncrono de verdade no fim...

    Para implementar o assíncrono de verdade, é necessário um cron, como comentei há pouco.

  5. marioolofo commented on Oct 14, 2025

    @marioolofo
    Author

    Eu penso que, para implementar o envio assíncrono, o primeiro passo é criar um cron, por exemplo a cada 5 minutos, que pegue todas as notas e monte o lote para envio assíncrono. O módulo queue_job é uma boa para isso. Já foram feitas algumas propostas aqui na localização, mas ninguém chegou a finalizar. Acho que isso é muito útil para e-commerce, mas para chão de fábrica nem tanto; por isso, nem todo mundo pode estar interessado. Ainda assim, se alguém implementar isso, vai ser muito bom para a localização.

    Ver: #854

    Valeu, vou dar uma olhada, estou ainda amarrando todas as pontas soltas de implantação mas assim que eu tiver mais tempo vou contribuir para avançarmos nessas melhorias.

  6. rvalyi commented on Oct 14, 2025

    @rvalyi
    Member

    @marioolofo a parte da transmissão pelo erpbrasil.edoc tb é algo que serviu uns 7 anos mas que claramente tem uma qualidade de código muito inferior aos padrões da OCA e acaba atrasando nossa vida. Eu comecei a re-escrever essa lib usando a tipagem forte do xsdata e requests em vez do Zeep, com testes aqui #4147 porem é um work in progress. Mas enfim so para dizer que não estamos satisfeitos com essa implementação atual...

  7. marcelsavegnago commented on Oct 14, 2025

    @marcelsavegnago
    SponsorMember

    Aqui nós fizemos uma migração basica para 14.0 do módulo l10n_br_fiscal_queue, mas nem utilizamos. Mas se alguem quiser usar algo, ta ai.

    #1887

  8. rvalyi commented on Oct 17, 2025

    @rvalyi
    Member

    @marioolofo @marcelsavegnago @antoniospneto @renatonlima vale a pena considerar esse modulo OCA também, talvez como dependência ou apenas fonte de inspiração: https://github.com/OCA/edi/tree/16.0/account_invoice_export_job

  9. github-actions commented on May 24, 2026

    @github-actions

    There hasn't been any activity on this issue in the past 6 months, so it has been marked as stale and it will be closed automatically if no further activity occurs in the next 30 days.
    If you want this issue to never become stale, please ask a PSC member to apply the "no stale" label.

  10. added
    stalePR/Issue without recent activity, it'll be soon closed automatically.
    on May 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    16.0bugstalePR/Issue without recent activity, it'll be soon closed automatically.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions