Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Retorno do XML autorizado #33

Closed
joselobinho opened this issue May 23, 2018 · 7 comments
Closed

Retorno do XML autorizado #33

joselobinho opened this issue May 23, 2018 · 7 comments

Comments

@joselobinho
Copy link

comunicacao.py linha 104
if status == '100':
raiz = etree.Element('nfeProc', xmlns=NAMESPACE_NFE, versao=VERSAO_PADRAO)
raiz.append(nota_fiscal)
raiz.append(prot_nfe)
return 0, raiz

Estar retornando None

@juniortada
Copy link
Member

Bom dia José Lobinho. Para te ajudar vou precisar de mais informações:
Qual a UF? Tipo da nota (NF-e ou NFC-e) xml enviado.
Lembrando que a versão master (NF-e 4.00) ainda está em desenvolvimento. A versão estável é o branch 3.10.

@joselobinho
Copy link
Author

Rio de janeiro UF:RJ a nota e NFE, e estou testando a versao master NFe 4.00

@victtorvpb
Copy link
Contributor

Então, passei por esse erro com o código do master e tentando enviar uma Nota para a Bahia cheguei a ver onde o problema era ocasionado, ele aconteceu na linha 86, ele não consegue entender o retorno com isso o prot fica vazio dando a exceção de IndexError na linha 92.

Como a prioridade mudou não me aprofundei na correção.

Ainda não cheguei a testar com as novas alteração que o @juniortada subiu essa semana, possivelmente irei fazer isso hoje a noite.

@juniortada
Copy link
Member

Por padrão, RJ e BA não retornam modo sincrono, então pra começar vcs precisam informar modo assincrono, receber o número de protocolo e consultar a nota para montar o protNFe.

Exemplo:

envio

con = ComunicacaoSefaz(uf, certificado, senha, homologacao)
envio = con.autorizacao(modelo='nfe', nota_fiscal=xml, ind_sinc=0)

Se o lote for recebido com sucesso, o retorno será 0 (sucesso), número do recibo e xml da nota enviada.
Caso tenha algum erro, o retorno será 1 (erro), xml de resposta da SEFAZ (informando o erro) e o xml da nota enviada.

Então reforçando, em ambos os casos (Victorpb e Joselobinho) RJ e BA a autorização não deve passar pelo if do ind_sinc=1, que compreende entre as linhas 78~104.

@victtorvpb
Copy link
Contributor

@juniortada meu caso deve ter sido isso realmente então, irei olhar hoje a noite e dou um feedback.

@victtorvpb
Copy link
Contributor

@juniortada Continuou dando erro, porém corrigir e vou fazer o PR, aconteceram dois problemas com o ind_sic=0, um na linha 105 onde o rec = etree.fromstring(retorno.text) estava dando ValueError por conta da codificação, usei a mesma lógica do envio sincrono.

O outro erro é na linha 110 onde para pegar o número estava quebrando.

@victtorvpb victtorvpb mentioned this issue May 25, 2018
Merged
juniortada added a commit that referenced this issue May 25, 2018
#33 Corrigido resposta retorno modo assincrono.
@juniortada
Copy link
Member

Ok, obrigado Victor. Algumas UFs retornam text e outras content.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants