01. DADOS GERAIS
Produto: | Solucoes_totvs |
---|
Solucao | Solucoes_totvs_cross |
---|
SolucaoCross | Solucoes_totvs_parceiros |
---|
SolucaoParceiros | Solucoes_totvs_parceirosexptotvs |
---|
TOTVS Varejo Franquias e Redes |
---|
SolucaoParcsExpsTOTVS | Linha de Produto: | linhas_totvs Franquias e Redes |
---|
Segmento: | |
---|
Módulo: | PDV OMNISHOP - DESK |
---|
Função: | INTEGRAÇÃO FISCAL |
---|
Ticket: | 000000 |
---|
Requisito/Story/Issue (informe o requisito relacionado) : | DVARLIVEPDV-39656 |
---|
02. SITUAÇÃO/REQUISITO
O PDV Omni permitiu que em lojas que utilizam o modelo fiscal NFCe/NFe e o emissor PDV Omni realizassem vendas com o certificado vencido.
...
Mesmo após alterar o certificado por um arquivo válido, não foi possível autorizar a nota, pois a XML da venda já havia sido assinada com o certificado vencido. O PDV tentou autorizar a venda diversas vezes e em todas recebeu a rejeição 291 devido a assinatura.
03. SOLUÇÃO
Como solução do problema realizamos as seguinte alterações-
- Criação de um JOB que será executado a cada 3h, responsável por atualizar a propriedade de validação do certificado diversas vezes ao dia. Retirando a necessidade de fechamento do sistema ou de acesso a tela de configuração do PDV.
...
- Reassinar o arquivo antes de tentar autoriza-lo.
- No fluxo de tratar notas emitidas em contingência iremos reassinar o arquivo, ou seja, apesar da XML já estar assinada com os dados do momento da venda iremos coletar novamente os dados atualizados do certificado e reassinar o arquivo, para casos onde o certificado seja alterado após a emissão da nota garantirmos que a assinatura estará com as novas informações.
...
- Retirar da fila de tratativa vendas que tenham recebido uma rejeição diferente das conhecidas.
- No momento que iremos autorizar as notas emitidas em contingência, caso a nota receba uma rejeição diferente da rejeição 204 ou 539, iremos retira-la da fila de autorização. Com isso, caso a nota receba uma rejeição não tratada não iremos forçar a tentativa de autorização que não será resolvida, consumindo o serviço da SEFAZ desnecessariamente. Será alterada a coluna pendente_tratativa_contingencia para false.
Para melhor analise futura, caso necessário, adicionamos também no JOB que será executado o LOG da informação recebida.
As informações serão gravadas no log C:TOTVSPDVLogsTOTVS.Omnishop.API.Module.HangfireJobs.Models.ScheduledJob.log e haverá uma informação como o exemplo: VerificaValidadeCertificadoEmissorScheduledJob: Arquivo: C:TOTVSPDVResourcesCertificadoNfce.pfx Data de expiração: 22/08/2025 09:37:29 Valido: True
https://tdn.totvs.com/display/TVPO/DT+DVARLIVEPDV-26600+DT+Bloquear+PDV+quando+certificado+estiver+expirado
05. ASSUNTOS RELACIONADOS
Não se aplica
06. ANÁLISE DE IMPACTO
- Emissão de venda
- Navegação de telas com certificado vencido
- Serviços do hangfire
07. VERSÃO
PRODUTO | VERSÃO |
---|
TOTVS PDV Omni | 3.8.XXX.0 |