You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Olá @fabiogb, o comportamento que você está observando, onde a SEFAZ retorna diretamente o código de status (cStat) 104 em vez do 103, indica que o lote enviado foi processado imediatamente, sem a necessidade de uma etapa intermediária de recebimento. O cStat 103 significa "Lote recebido com sucesso", enquanto o cStat 104 indica "Lote processado".
Quando a SEFAZ retorna o cStat 104 diretamente, isso significa que o processamento do lote foi concluído no momento do recebimento, e o número do recibo (nRec) pode não ser fornecido nesse caso. Portanto, a etapa de consulta posterior com NFeRetAutorizacao usando o número do recibo torna-se desnecessária, pois o resultado do processamento já está disponível na resposta inicial.
Para adaptar seu código a esse comportamento, você pode verificar o valor do cStat retornado pela SEFAZ. Se for 104, significa que o lote já foi processado, e você pode acessar diretamente o resultado do processamento sem precisar realizar uma consulta adicional. Aqui está um exemplo de como ajustar seu código:
if (sefazResult.Retorno.cStat == 104)
{
// O lote foi processado imediatamente
// Acesse diretamente o resultado do processamento
var resultadoProcessamento = sefazResult.Retorno.protNFe;
// Lide com o resultado conforme necessário
}
else if (sefazResult.Retorno.cStat == 103)
{
// O lote foi recebido e será processado posteriormente
// Obtenha o número do recibo para consulta futura
string receiptNumber = sefazResult.Retorno.infRec.nRec;
// Realize a consulta de autorização posteriormente usando o número do recibo
answerNfeInfo = srv.NFeRetAutorizacao(receiptNumber);
}
else
{
// Lide com outros códigos de status conforme necessário
}
Dessa forma, seu aplicativo poderá lidar adequadamente com ambos os cenários: quando o lote é processado imediatamente (cStat 104) e quando é necessário aguardar o processamento (cStat 103).
Espero que isso ajude a resolver o problema que você está enfrentando.
Olá amigos.
Sefaz parou de retornar o cstat 103 e retorna direto o cstat 104 por conta disso não consigo ter acesso ao nRec e nem a NFeRetAutorizacao.
string receiptNumber = sefazResult.Retorno.infRec.nRec;
answerNfeInfo = srv.NFeRetAutorizacao(receiptNumber);
The text was updated successfully, but these errors were encountered: