Skip to content

Cancelar Nota (Nfe Nfce)

Leonardo Gregianin edited this page Feb 20, 2020 · 5 revisions

Exemplo de cancelamento de nota

from pynfe.processamento.comunicacao import ComunicacaoSefaz
from pynfe.processamento.serializacao import SerializacaoXML
from pynfe.processamento.assinatura import AssinaturaA1
from pynfe.entidades.evento import EventoCancelarNota
from pynfe.entidades.fonte_dados import _fonte_dados
import datetime

certificado = "/home/user/certificado.pfx"
senha = 'senha'
uf = 'pr'
homologacao = True

cancelar = EventoCancelarNota(
	cnpj='99999999000199',                                # cpf ou cnpj do emissor
	chave='99999999999999999999999999999999999999999999', # chave de acesso da nota
	data_emissao=datetime.datetime.now(),
	uf=uf,
	protocolo='123',                                      # número do protocolo da nota
	justificativa='Venda cancelada a pedido do cliente'
	)

# serialização
serializador = SerializacaoXML(_fonte_dados, homologacao=homologacao)
nfe_cancel = serializador.serializar_evento(cancelar)

# assinatura
a1 = AssinaturaA1(certificado, senha)
xml = a1.assinar(nfe_cancel)

con = ComunicacaoSefaz(uf, certificado, senha, homologacao)
envio = con.evento(modelo='nfce', evento=xml)               # modelo='nfce' ou 'nfe'

print(envio.text)

Voltar