Nota autorizada na prefeitura totalmente diferente da que vem pela API

Olá,
Temos varias notas autorizadas na prefeitura autorizadas, fizemos a sincronização… a nota que esta na prefeitura é totalmente diferente da que vem pela API.
O mesmo numero de nota que vem pela API nao tem nada haver com a nota que esta autorizada na prefeitura.
Id nfs_3a134d612aa9491899c09fbd3af675c6
Mas existem outros casos, estou enviando apenas um id.

Aguardo retorno e obrigado
João

Bom dia, @jbgeral7.

O problema deve estar na sincronização. Ela foi feita em notas que estavam com erro de emissão?

Foi feito em notas que estava pendentes e demorava pra retornar o status da prefeitura.

Tem um bug nessa sincronização de vocês, não deveria trazer em hipótese nenhuma nota que não é aquela que está sendo sincronizada… é que vimos antes aqui de enviar para o cliente, mas isso daria um pau sério com o cliente final…

@jbgeral7

De acordo com a nossa documentação, o endpoint de sincronização utiliza um identificador para sincronizar a nota. Caso não seja informado, a sincronização ocorrerá através do número e série do RPS.

Provavelmente, o que está ocorrendo é que você está sincronizando notas que possuem o mesmo número de RPS.

Iremos analisar o seu caso específico e retornamos em breve.

Mas repetindo, não importa o que ocorrer, não pode trazer dados de uma nota nada haver, isso pode dar problema judicial do nosso lado, entende? ainda mais com LGPD hoje em dia.
Se os dados da nota em questão não conferem com o que foi enviado pra a prefeitura… simplesmente não pode retornar.
E consultando na prefeitura, varios lotes foram processados com erro após o id que te mandei, tem o numero de lote mas não tem o numero de rps.
obrigado.

@jbgeral7

Todas as notas que são enviadas à prefeitura possuem numeração de RPS e série. Basta você consultá-las que verá essa informação.

Quando o endpoint de sincronização é utilizado e não é informado um identificador, a API irá sincronizar a nota com o exato número de RPS associado a ela. Você deve garantir que nenhuma outra nota tenha sido transmitida após ela com o mesmo número de RPS, caso contrário há chances de ocorrer esse comportamento descrito se esse número de RPS tiver sido autorizado pela prefeitura para uma outra nota.

O endpoint de sincronização foi feito para ser utilizado em casos extremos, onde erros de transmissão (conexão, timeouts, etc) provocam uma inconsistência entre os dados da nota na Nuvem Fiscal e prefeitura. Não é uma solução “bala de prata” e deve ser utilizado com parcimônia e muito cuidado.

Amigo, sei que não existe bala de prata, a gente aqui programa também, fazemos integração direta com ambientes do governo com nfe, mdfe e cte, optamos pela API da nota de SERVIÇO de vocês por conta do tempo de integração, cada prefeitura é uma história.
Afirmo que existe bugs e falta de lógica eficiente nessa API de NFSE de voces SIM, é mais bonito você admitir que irá melhorar do que achar desculpa, o que você está falando não tem cabimento!
Como eu aqui que não tenho acesso diretio ao ws da prefeitura vou saber se devo ou não utilizar o método de sincronização???!!! como eu vou saber se houve timeout ou não??!! sendo que eu consumo a API e não a prefeitura diretamente, percebe o absurdo que está falando pra gente???
É sua API que precisa garantir que não irá ter essa duplicidade, é sua API que precisa fazer a sincronização regularmente, ela é que deve identificar a casualidade extrema e consultar NFSE novamente, é ela que precisa identificar que houve timeout na prefeitura e a mesma sincronizar ou processar a nota novamente.
Estamos testando aqui com poucas notas… imagine se colocarmos isso em um ERP nosso que tem demanda para milhares de notas de serviço???
No método ConsultarNfse passamos apenas o id identificador da sua API.
Resumindo, estamos lascados aqui ou procuramos outro serviço de API de NFSe.

@jbgeral7

Não fazemos a sincronização regularmente, apenas em casos específicos em que temos a certeza que ela pode ser feita (timeout é um deles) e que não dará conflito com outra nota. Nos demais casos, o uso é de inteira responsabilidade do usuário.

A sincronização é realmente bastante problemática e confusa. Entendemos a sua frustração. Mas é o que é. É da natureza dela. Foi feito para tentar solucionar casos problemáticos em que realmente não temos muito o que fazer e apenas o usuário pode decidir se cabe ou não tal operação.

Outro ponto a ser ponderado é a necessidade de se fazer tantas sincronizações assim. Se está recorrente, isso indica que tem algo de muito errado acontecendo ou com a prefeitura ou com o seu fluxo de emissão. De qualquer forma, você sempre pode considerar não migrar clientes de municípios “problemáticos” ou simplesmente não utilizar a nossa solução.

Por fim, as suas sugestões são bem-vindas e iremos utilizá-las para melhorar o nosso serviço. Também não temos problema algum em reconhecer bugs, basta você dar uma lida em nossa Central de Suporte que verá vários deles sendo reportados e corrigidos. E nesse caso específico do endpoint de sincronização, nós até gostaríamos que fosse um bug, acredite, pois assim estaria no nosso controle.

Entendi, mas vc viu o id que passei? na consulta esta vindo uma nota fiscal nada haver com o que era pra vir… e isso está acontecendo em várias notas.
Como fazemos nesse caso?

@jbgeral7

Sim, dei uma olhada. Foram sincronizadas várias notas com o RPS número 1010.

Segue a relação:

  • nfs_3a134e2a29ce41afb6672c7c127c7c23
  • nfs_3a134e24b4744201a50a21b74afd0bd9
  • nfs_3a134e224ecd41d8b7988f08bc96fa1d
  • nfs_3a134db2568248ec8777baef50856fe2
  • nfs_3a134db0d87a44438f08f17f851a9fdd
  • nfs_3a134d9829444ad8bc17323a31ea65cb
  • nfs_3a134d8268eb4f9283fdd7afd0dfe6fc
  • nfs_3a134d612aa9491899c09fbd3af675c6
  • nfs_3a134d3754f54e8d9684f64d3fe5faac

Uma delas foi autorizada na prefeitura e as demais foram sincronizadas indevidamente.

Você sabe informar qual a que foi autorizada na prefeitura?

Um outro detalhe que percebi é que o provedor está demorando muito para dar um retorno da emissão assíncrona, por isso a nota ficou pendente por bastante tempo. Iremos alterar o método de envio para síncrono, talvez assim a prefeitura se comporte melhor e a necessidade de sincronização se reduza bastante.

Recomendamos também que não deixe a opção de sincronização disponível para o seu usuário final. Se possível, deixe apenas essa opção acessível para o seu suporte.

A nota autorizada foi a 1010 cod de verificação da prefeitura 1C8E61596C e esse numero replicou para as demais sincronização que foram feitas.
O metodo de sincronizar adotamos hoje, vou alterar ele para executar apenas qdo não obter o retorno depois uns 30 minutos, aqui realmente, a prefeitura é lenta no processamento das notas por apis.

Estou fazendo isso e permitindo apenas quando passar mais que uns 5 ou 10 minutos.

@jbgeral7

Você poderia confirmar com o suporte deles se o envio síncrono está funcionando normalmente? Pode ser uma ótima alternativa.