12.3. Cancelamento e Inutilização de NF-e [15-08-17]
12.3.1. CancelaNF2G [20-08-12]
12.3. Cancelamento e Inutilização de NF-e [15-08-17]
« Anterior
12.3.2. CancelaNFEvento [15-08-17]
Próximo »

12.3.1. CancelaNF2G [20-08-12]

Cancelamento de NF-e

FUNCIONALIDADE OBSOLETA

Utilize o evento de cancelamento


[information] CANCELAMENTO COMO EVENTO [20-08-12]

O Web Service de Cancelamento de NF-e será desativado no dia 01/12/2012, os pedidos de cancelamentos serão recepcionados pelo Web Service de Recepção de Eventos a partir desta data conforme divulgada na NT 2011/006.

FAQ - cancelamento como evento

  • qual será a data de desativação do WS de cancelamento? - o WS de cancelamento 2G será desativado em 01/12/2012, a partir desta data somente serão aceitos cancelamento como evento;

  • o que vai mudar? - a SEFAZ está padronizando a estrutura de eventos da NF-e e o cancelamento passa a ser tratado com um evento da NF-e, as alterações são as seguintes:

    • alteração do WS - os pedidos de cancelamento serão recepcionados pelo WS de recepção de Eventos;
    • alteração na estrutura do pedido de cancelamento - o pedido de cancelamento vai seguir a estrutura padrão Evento e o XML será alterado, mas cabe observar que as informações exigidas são mesmas, isto é: chave da NF-e objeto do cancelamento, número do protocolo de autorização de uso e justificativa do cancelamento;
    • alteração na estrutura do resposta do WS - A mensagem de resposta do processamento do pedido de cancelmanto será a resposta padrão do Web Service de Cancelemento;
    • alteração no cStat do resultado do processamento - ao invés do cStat = "101" e xMotivo = "Cancelamento de NF-e homologado", passaremos a receber cStat = "135" e xMotivo = "Evento registrado e vinculado a NF-e".
      Cabe ressaltar que a partir de 01/11/2012 poderemos ter o cStat = "151" (cancelamento normal) ou "155" (cancelamento por evento) com xMotivo = "Cancelamento de NF-e homologado fora de prazo" nas UF que permitem o cancelamento fora do prazo (o cancelamento fora do prazo deve resultar em multa).
  • o que muda na DLL? - a funcionalidade CancelaNF2G foi atualizada para permitir o cancelamento em forma de evento, apesar de tomarmos o cuidado para que as alterações sejam mínimas, será necessário atualizar a DLL para a versão 2Gv1.0a ou superior, além de adequar a aplicação do usuário para tratar os novos códigos de retorno do WS;

    • data e hora do evento o XML do evento tem a tag dhEvento que deve ser informada com a data e hora do evento, optamos por não criar um novo parâmetro na funcionalidade e utilizar a data e hora do equipamento reduzida de 5 minutos. Isto pode causar o erro: 579 - Rejeição: A data do evento não pode ser menor que a data de autorização para NF-e não emitida em contingência se o usuário tentar cancelar uma nota fiscal recém autorizada sem aguardar o lapso temporal de 5 minutos.
  • qual o reflexo para minha aplicação? - são necessárias as seguintes alterações:

    • parâmetro versao - para realizar o cancelamento por evento, basta informar "1.00" no parâmetro versao, para utilizar o WS atual continue informando "2.00" neste parâmetro;
    • parâmetro cStat - o código que identifica o cancelamento homologado é cStat = 135 ou 155 ao invés de cStat = 101 ou 151, não deixe de tratar o cStat = 151 e 155 que são novos códigos de homologação de cancelamento fora de prazo, a UF que permitir o cancelamento fora de prazo deve lançar uma multa, que pode surpreender o usuário mais tarde, o WS de recepção tem outros códigos de rejeição que não existiam no WS de Cancelamento da NF;
    • retorno do WS - a mensagem de retorno do WS será o procEvento ao invés do proCancNFe;
  • a funcionalidade CriaProcCancNFe2G vai funcionar? - a funcionalidade CriaProcNFe2G não vai funcionar para recuperar o Evento de Cancelamento, utilize a ConsultaNFe2G, informando "2.01" no parâmetro versao caso não obtenha a resposta do WS de cancelamento;

  • o uso desta funcionalidade requer atualização onerosa? - o uso desta funcionalidade não requer atualização onerosa, somente será necessário atualizar a DLL. O uso das funcionalidades relacionadas com a Manifestação do Destinatário requer atualização onerosa, mas as demais funcionalidades podem ser utilizadas com a chave adquiridas até 29/02/2012.

Assinatura

string CancelaNF2G(string siglaWS, int tipoAmbiente, string nomeCertificado, string versao, ref string msgDados, out string msgRetWS, out int resultado, out string msgResultado, string chaveNFe, string nProtocolo, string justificativa, out string nProtocoloCanc, out string dProtocoloCanc, string proxy, string usuario, string senha, string licenca)

Descrição:

Funcionalidade para Cancelamento de NF-e.

Os principais parâmetros de cancelamento são:

A identificação do WS de acessado deverá ser informada no parâmetro siglaWS.

Os emissores localizados em UF usuárias da SEFAZ Virtual devem informar a sigla SVAN (MA, PA e PI) ou a sigla SVRS (AC, AL, AP, DF, ES, PB, RJ, RN, RO, RR, SC, SE e TO), ou informar a sigla da UF (AM, BA, CE, GO, MS, MT, MG, PE, PR, RS e SP) nos casos de UF que tenham aplicação própria. Em caso de emissão em contingência SCAN - Sistema de Contingência do Ambiente Nacional, informar a sigla SCAN.

Condições para Cancelamento

  • NF-e autorizada, o usuário deve utilizar a inutilização de numeração se a NF-e não estiver autorizada;
  • NF-e autorizada em até 24 horas, o prazo máximo é de até 2 horas em MT;
  • Possuir o número do protocolo de autorização de uso;
  • A mercadoria não pode ter circulado;
  • A NF-e não pode ter registro de passagem na fiscalização de trânsito;
  • A NF-e não pode ter a confirmação de recebimento;

Prazo de cancelamento

Em até 24 horas da autorização de uso da NF-e objeto do cancelamento, no MT o prazo de cancelamento é de 2 horas da autorização de uso.

Número do Protocolo de Autorização de Uso

Alguns usuários confundem o número do recibo do envio do lote com o número da autorização de uso e não conseguem cancelar a NF-e.

Novidades:

Preenchimento da siglaWS

  • a sigla SVAN, caso a UF seja usuária da SEFAZ Virtual do Ambiente Nacional (MA, PA e PI);
  • a sigla SVRS, caso a UF seja usuária da SEFAZ Virtual do Rio Grande do Sul (AC, AL, AP, DF, ES, PB, RJ, RN, RO, RR, SC, SE e TO);
  • a sigla da UF, caso a UF tenha aplicação própria (AM, BA, CE, GO, MS, MT, MG, PE, PR, RS e SP);
  • a sigla SCAN, na emissão em contingência SCAN - Sistema de Contingência do Ambiente Nacional.

Preenchimento do nomeCertificado

informar o Nome do titular (campo Assunto) do certificado digital a ser utilizado na conexão SSL, formas possíveis:

1. uso de certificado digital existente no repositório MY do CSP do usuário corrente (currentuser)

É a forma de mais comum de uso, cabe ressaltar que é a única forma de uso de certificado digital do tipo A3 que a DLL oferece.
O usuário deve passar como parâmetro o campo assunto do certificado no parâmetro NomeCertificado para que a DLL localize um certificado digital com mesmo assunto no repositório MY do currentuser do equipamento.
Esta forma de uso requer a prévia instalação do certificado digital na conta do usuário do Windows (logon) que irá utilizar o certificado digital.

2. uso de certificado digital em arquivo no formato pfx

Permite o de uso de certificado digital em arquivo formato pfx.
O caminho da localização (path) do arquivo pfx deve ser passado para a DLL no formato: ARQUIVO | [nome do arquivo pfx com caminho completo] | [senha do arquivo] no parâmetro NomeCertificado, ex.: "ARQUIVO|c:\certificado.pfx|senha".
Esta opção só funciona com certificado digital do tipo A1.

3. uso de certificado digital em string base64

Permite uso o arquivo do certificado digital em formato pfx convertido em uma string base64. O certificado digital em string base64 deve ser passado para a DLL no formato: CERTIFICADO | [string base64 do arquivo pfx] | [senha do arquivo] no parâmetro NomeCertificado, ex.: "CERTIFICADO|MIIGoDCCBYigAwIBAgIQep(arquivo pfx do certificado digital convertido em base64...)QQDExNBQy|senha".
Esta opção só funciona com certificado digital do tipo A1. É uma opção de uso que oferece maior versatilidade, pois permite o armazenamento do certificado digital em banco de dados na aplicação. É a forma mais indicada para uso em ASP.NET.

Parâmetros:

nome tipo fluxo descrição
siglaWS string entrada informar a sigla do WS desejado, informar SVAN - SEFAZ Virtual do Ambiente Nacional (MA, PA e PI) ou SVRS - SEFAZ Virtual do Rio Grande do Sul (AC, AL, AP, DF, ES, PB, RJ, RN, RO, RR, SC, SE e TO), caso a UF seja usuário da SEFAZ Virtual, em caso contrário informar a sigla da UF (AM, BA, CE, GO, MS, MT, MG, PE, PR, RS e SP). Em caso de contingência SCAN, informar a sigla SCAN.
tipoAmbiente inteiro entrada informar o código do ambiente desejado: 1- produção ou 2-homologação
NomeCertificado string entrada informar o certificado digital que será utilizado para assinatura:
1. informar o assunto do certificado digital que deve existir no repositório MY do current user, ex.: "CN=NFe - Associacao NF-e:99999090910270, C=BR, L=PORTO ALEGRE, O=Teste Projeto NFe RS, OU=Teste Projeto NFe RS, S=RS".
2. informar: ARQUIVO | [nome do arquivo pfx com caminho completo] | [senha do arquivo] para uso do certificado digital em arquivo pfx, ex.: "ARQUIVO|c:\certificado.pfx|senha".
3. informar: CERTIFICADO | [string base64 do arquivo pfx] | [senha do arquivo] no parâmetro NomeCertificado para passar uma string contendo um certificado digital em base64, ex.:"CERTIFICADO|MIIGoDCCBYigAwIBAgIQep(arquivo pfx do certificado digital convertido em base64...)QQDExNBQy|senha".
(novas opções)
versao string entrada informar a versão da mensagem do WS - 1.07 (manual de integração versão 2.04 ou 3.00)
2.00 (manual de integração versão 4.0x) - válido até 01/12/2012
1.00 (Cancelamento por Evento) - uso obrigatório após 01/12/2012 [20-08-12]
(parâmetro novo)
msgDados string saída retorna a mensagem XML do pedido de cancelamento criado pela DLL que foi enviado ao WS.
msgRetWS string saída retorna a mensagem XML de resposta do WS
cStat inteiro saída retorna o resultado da chamada do WS. (nome do parâmetro alterado - ex-resultado)
msgResultado string saída retorna a literal do resultado da chamada do WS
chaveNFe string entrada informar a chave de acesso da NF-e objeto do cancelamento
nProtocolo string entrada informar o número do protocolo de autorização de uso da NF-e objeto do cancelamento
justificativa string entrada informar a justificativa do cancelamento com pelo menos 15 caracteres
nProtocoloCanc string saída retorna o número do protocolo da homologação do cancelamento da NF-e (parâmetro novo)
dProtocoloCanc string saída retorna a data e hora da homologação do cancelamento da NF-e pela SEFAZ. (parâmetro novo)
proxy string entrada informar 'http://proxyserver:port' quando existir uso de proxy no ambiente. verificar com o cliente qual é o endereço do servidor proxy e a porta https, a porta padrão do https é 443, assim teríamos algo do tipo 'http://192.168.15.1:443'
usuario string entrada informar o usuário para autenticação no proxy, se necessário
senha string entrada informar a senha de autenticação no proxy, se necessário
licenca string entrada informar a chave da licenca de uso ou registro, esta funcionalidade pode ser utilizada sem qualquer restrição no ambiente de homologação. O uso em ambiente de produção requer o licenciamento, para maiores detalhes veja as condições de uso

Atenção para as seguintes alterações nos parâmetros:

Parâmetros novos:

  • versão;
  • nProtocoloCanc;
  • dProtocoloCanc;
  • procCancNFe (retorno da função);

Parâmetros que mudaram de nome ou de lugar:

  • resultado (mudou de nome para cStat);

Parâmetros eliminados:

  • msgCabec;

Retorno:

O resultado da chamada do CancelaNFe é a mensagem XML composta pelo pedido de cancelamento e respectivo protocolo de homologação do cancelamento da NF-e gerada de acordo com o leiaute de distribuição do Cancelamento de NF-e previsto no item 10.3 do Manual de Integração do Contribuinte, que transcrevemos a seguir:

procCancNFe

O parâmetro cStat retorna um código numérico com os seguintes significados:

código Mensagem origem regra
5001 Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: o certificado cliente: 1.não é ICP-Brasil; 2.fora do prazo de validade; 3.revogado; 4.certificado cliente não confiável para o Web Service acessado, contatar a SEFAZ) DLL -
5002 Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: a cadeia de certificação do Web Service acessado ou do certificado cliente inexistente no repositório de certificados do usuário corrente do Windows) DLL -
5003 Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: serviço inexistente, verifique se o nome do serviço da url acessada está correto no arquivo ws2.xml) DLL -
5004 Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: método não permitido) DLL -
5005 Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: a url não encontrada, verifique se o nome do domínio da url acessada está correto no arquivo ws2.xml) DLL -
5006 Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: Time-Out, o WS não respondeu a solicitação no tempo estabelecido: [{1:0}]) DLL -
5007 Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: mensagem maior que a permitida) DLL -
5008 Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: Servidor com problemas) DLL -
5009 Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: Serviço não implementado) DLL -
5010 Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: Serviço temporariamente indisponível, servidor sem recursos para atender a solicitação) DLL -
5011 Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: Causa provável da falha na conexão: Rede indisponível) DLL -
5012 Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: Versão do SOAP não suportada DLL -
5013 Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: Web Service não consumido, não houve nenhum retorno ou resposta) DLL -
5014 Erro: Falha na conexão: [MENSAGEM DE ERRO DO WINDOWS] (Causa provável: Web Service não consumido, falha desconhecida) DLL -
5015 Erro: Falha na conexão: Tempo limite de time-out alcançado [TEMPO DE TIME OUT UTILIZADO ms] - [MENSAGEM DE ERRO DO WINDOWS] DLL -
5016 Erro: Falha na conexão: Falha da Biblioteca Criptografica: [MENSAGEM DE ERRO DO WINDOWS] DLL -
5017 Erro: Falha ao tratar o XML de retorno do WS: [MENSAGEM DE ERRO DO WINDOWS] DLL -
5101 Erro: A mensagem de retorno do WS não é um XML válido: [MENSAGEM DE ERRO DO WINDOWS] DLL -
5102 Erro: Tag cStat inexistente na mensagem de retorno [MENSAGEM DE ERRO DO WINDOWS] DLL -
5103 Erro: Tag xMotivo inexistente na mensagem de retorno [MENSAGEM DE ERRO DO WINDOWS] DLL -
5104 Erro: Tag [NOME TAG] inexistente na mensagem de retorno [MENSAGEM DE ERRO DO WINDOWS] DLL -
5105 Erro: O WS não devolveu nenhum resultado DLL -
5201 Erro: O código do tipo de ambiente [CODIGO RECEBIDO PELA DLL] informado diferente de 1 - produção e 2 - homologação DLL -
5202 Erro: A sigla da UF [SIGLA RECEBIDA PELA DLL] informada é inválida DLL -
5203 Erro: Inexiste url para a UF [SIGLA UF] informada no ambiente [AMBIENTE] desejado, verifique se existe atualização do arquivo [NOME ARQUIVO] disponível. DLL -
5204 Erro: Arquivo que contem a URL do WS não localizado em [CAMINHO DA APLICACAO] DLL -
5205 Erro: Ocorreu um erro inesperado no processamento da URL (NOME URL) : [MENSAGEM DE ERRO DO WINDOWS] DLL -
5206 Erro: Ocorreu um erro de validação do XML (NOME XML) : [MENSAGEM DE ERRO DO WINDOWS] DLL -
5403 Erro: Falha ao acessar certificado digital [mensagem de ERRO DO WINDOWS] DLL -
5404 Erro: Nenhum certificado digital selecionado DLL
5405 Erro: Nenhum certificado válido foi encontrado com o nome [NomeCertificado] informado no repositório [MY do CurrentUser] DLL -
5406 Erro: Falha no tratamento do parâmetro nome: [nome informado] DLL -
5407 Erro: Quantidade de parâmetos inválido: [nome informado] DLL -
5408 Erro: Falha na criação do objeto certificate: [mensagem do ERRO DO WINDOWS] DLL -
6101 Erro: O parâmetro versao não foi informado DLL -
6102 Erro: O conteúdo do parâmetro sigla da UF: [CONTEÚDO] é inválido DLL -
6103 Erro: O conteúdo do parâmetro versao informado é inválido: [CONTEUDO] DLL -
6104 Erro: O parâmetro chaveNFe não informado DLL -
6105 Erro: O tamanho [TAMANHO DO PARAMETRO] do parâmetro chaveNFe informado não tem 44 caracteres DLL -
6106 Erro: As posições correspondentes (1,2) ao código da UF [POSIÇÃO DA CHAVE] do parâmetro chaveNFe não é um código de UF válido DLL -
6107 Erro: A chave de acesso deve ter 44 posições: [POSIÇÃO DA CHAVE] DLL -
6108 Erro: O conteúdo do parâmetro número do protocolo: [NÚMERO DO PROTOCOLO] deve ter 15 posições DLL -
6109 Erro: O conteúdo do parâmetro justificativa: [JUSTIFICATIVA] deve ter pelo menos 15 posições DLL -
6110 Erro: O nome do titular do certificado deve ser informado DLL -
6120 Erro: O parâmetro chave de acesso deve ser informado DLL -
6122 Erro: O parâmetro justificativa deve ter se informado DLL -
6123 Erro: O parâmetro tipoAmbiente deve ser informado DLL -
6124 Erro: O parâmetro tipoAmbiente [CONTEUDO] deve ser 1 ou 2 DLL -
6141 Erro: O parâmetro siglaWS deve ser informado DLL -
7001 Erro: A licença não foi informada DLL -
7002 Erro: A licença informada: [CONTEUDO] tem tamanho:[TAMANHO] diferente de 128 DLL -
7003 Erro: A licença informada: [CONTEUDO] não pertence ao CNPJ:[TAMANHO] DLL -
101 Cancelamento de NF-e homologado WS -
151 Cancelamento de NF-e homologado fora de prazo WS -
135 Evento registrado e vinculado a NF-e WS -
155 Evento registrado fora do prazo e vinculado a NF-e WS -
108 Serviço Paralisado Momentaneamente (curto prazo) WS B03
109 Serviço Paralisado sem Previsão WS B04
203 Rejeição: Emissor não habilitado para emissão da NF-e WS H04
205 Rejeição: NF-e está denegada na base de dados da SEFAZ WS H08
213 Rejeição: CNPJ-Base do Emitente difere do CNPJ-Base do Certificado Digital WS F03
214 Rejeição: Tamanho da mensagem excedeu o limite estabelecido WS B01
215 Rejeição: Falha no schema XML WS D01
216 Rejeição: Chave de Acesso é diferente do existente no BD WS H07
217 Rejeição: NF-e não consta na base de dados da SEFAZ WS H06
219 Rejeição: Circulação da NF-e verificada WS H13
220 Rejeição: NF-e autorizada há mais de 24 horas WS H10
221 Rejeição: Confirmado o recebimento da NF-e pelo destinatário WS H12
222 Rejeição: Protocolo de Autorização de Uso difere do cadastrado WS H11
236 Rejeição: Chave de Acesso com dígito verificador inválido WS H03
238 Rejeição: Cabeçalho - Versão do arquivo XML superior a Versão vigente WS C05
239 Rejeição: Cabeçalho - Versão do arquivo XML não suportada WS C06
240 Rejeição: Cancelamento/Inutilização - Irregularidade Fiscal do Emitente WS H05
242 Rejeição: Cabeçalho - Falha no Schema XML WS C01
243 Rejeição: XML Mal Formado WS B02
249 Rejeição: UF da Chave de Acesso diverge da UF autorizadora WS H02
252 Rejeição: Ambiente informado diverge do Ambiente de recebimento WS H01
266 Rejeição: Na autorização pela SEFAZ Autorizada: não aceitar série diferente de 0-899 WS H02a
280 Rejeição: Certificado Transmissor inválido WS A01
281 Rejeição: Certificado Transmissor Data Validade WS A02
282 Rejeição: Certificado Transmissor sem CNPJ WS A07
283 Rejeição: Certificado Transmissor - erro Cadeia de Certificação WS A03
284 Rejeição: Certificado Transmissor revogado WS A05
285 Rejeição: Certificado Transmissor difere ICP-Brasil WS A06
286 Rejeição: Certificado Transmissor erro no acesso a LCR WS A04
290 Rejeição: Certificado Assinatura inválido WS E01
291 Rejeição: Certificado Assinatura Data Validade WS E02
292 Rejeição: Certificado Assinatura sem CNPJ WS E03
293 Rejeição: Certificado Assinatura - erro Cadeia de Certificação WS E04
294 Rejeição: Certificado Assinatura revogado WS E06
295 Rejeição: Certificado Assinatura difere ICP-Brasil WS E07
296 Rejeição: Certificado Assinatura erro no acesso a LCR WS E05
297 Rejeição: Assinatura difere do calculado WS F02
298 Rejeição: Assinatura difere do padrão do Projeto WS F01
299 Rejeição: XML da área de cabeçalho com codificação diferente de UTF-8 WS C01a
402 Rejeição: XML da área de dados com codificação diferente de UTF-8 WS D03
404 Rejeição: Uso de prefixo de namespace não permitido WS D02
409 Rejeição: Campo cUF inexistente no elemento nfeCabecMsg do SOAP Header WS C02
410 Rejeição: UF informada no campo cUF não é atendida pelo Web Service WS C03
411 Rejeição: Campo versaoDados inexistente no elemento nfeCabecMsg do SOAP Header WS C04
420 Rejeição: Cancelamento para NF-e já cancelada WS H09
502 Rejeição: Erro na Chave de Acesso - Campo Id não corresponde à concatenação dos campos correspondentes WS H02c
503 Rejeição: Na autorização pelo SCAN: não aceitar série diferente de 900-999 WS H02b
420 Rejeição: Cancelamento para NF-e já cancelada WS H09
489 Rejeição: CNPJ informado inválido (DV ou zeros) WS G03
490 Rejeição: CPF informado inválido (DV ou zeros) WS G04
491 Rejeição: O tpEvento informado inválido WS D04
492 Rejeição: O verEvento informado inválido WS D05
493 Rejeição: detEvento não atende o Schema XML específico WS D06
494 Rejeição: Chave de Acesso inexistente WS G06
501 Rejeição: NF-e autorizada há mais de 30 dias (720 horas) WS GA02
502 Rejeição: Erro na Chave de Acesso - Campo Id não corresponde à concatenação dos campos correspondentes WS H02c
516 Rejeição: Falha no schema XML - inexiste a tag raiz esperada para a mensagem WS D01a
517 Rejeição: Falha no schema XML - inexiste atributo versao na tag raiz da mensagem WS D01b
545 Rejeição: Falha no schema XML - versão informada na versaoDados do SOAPHeader diverge da versão da mensagem WS D01c
561 Rejeição: Mês de Emissão informado na Chave de Acesso difere do Mês de Emissão da NFe WS H07a
572 Rejeição: Erro Atributo ID do evento não corresponde a concatenação dos campos ("ID" + tpEvento + chNFe + nSeqEvento) WS G05
573 Rejeição: Duplicidade de Evento WS G07
574 Rejeição: O autor do evento diverge do emissor da NF-e WS G08
575 Rejeição: O autor do evento diverge do destinatário da NF-e WS G09
576 Rejeição: O autor do evento não é um órgão autorizado a gerar o evento WS G10
577 Rejeição: A data do evento não pode ser menor que a data de emissão da NF-e WS G11
578 Rejeição: A data do evento não pode ser maior que a data do processamento WS G12
579 Rejeição: A data do evento não pode ser menor que a data de autorização para NF-e não emitida em contingência WS G13
580 Rejeição: O evento exige uma NF-e autorizada WS GA01
587 Rejeição: Usar somente o namespace padrão da NF-e WS D01d
588 Rejeição: Não é permitida a presença de caracteres de edição no início/fim da mensagem ou entre as tags da mensagem WS D01e
594 Rejeição: O número de seqüencia do evento informado é maior que o permitido WS G03
613 Rejeição: Chave de acesso difere da existente em BD WS H07b
999 Rejeição: Erro não catalogado (mensagem) WS -

Tratamento de Erro:

Caso ocorra algum erro na chamada do WS (5001-6145) ou a requisição não seja atendida pelo WS (203-999), será gravado um log na pasta log, com as seguintes informações que devem ser úteis para identificação do problema:

Os erros com código > 5000 são erros tratados pela DLL e ocorrem nas seguintes situações:

Histórico de atualização:

Mensagens XML - (CANCELAMENTO COMO EVENTO) [20-08-12] versão 1.00:

Evento de Cancelamento

<envEvento xmlns="http://www.portalfiscal.inf.br/nfe" versao="1.00">
  <idLote>00000002311801</idLote>
  <evento xmlns="http://www.portalfiscal.inf.br/nfe" versao="1.00">
    <infEvento Id="ID1101113512081014278500019055001000000023118453497301">
      <cOrgao>35</cOrgao>
      <tpAmb>2</tpAmb>
      <CNPJ>10142785000190</CNPJ>
      <chNFe>35120810142785000190550010000000231184534973</chNFe>
      <dhEvento>2012-08-18T20:26:58-03:00</dhEvento>
      <tpEvento>110111</tpEvento>
      <nSeqEvento>1</nSeqEvento>
      <verEvento>1.00</verEvento>
      <detEvento versao="1.00">
        <descEvento>Cancelamento</descEvento>
        <nProt>135120005426259</nProt>
        <xJust>Teste de Cancelamento como Evento</xJust>
      </detEvento>
    </infEvento>
    <Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
      <SignedInfo>
        <CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" />
        <SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" />
        <Reference URI="#ID1101113512081014278500019055001000000023118453497301">
          <Transforms>
            <Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" />
            <Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" />
          </Transforms>
          <DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" />
          <DigestValue>ltctExluD0Od3kxNimxSQTgKkAQ=</DigestValue>
        </Reference>
      </SignedInfo>
      <SignatureValue>iorN1e//LP/fKzwJtmxkh4fvZjafKkd4qU(...)eG3PPUC3p7B6/9g1f3d599XTO62JsQEU=</SignatureValue>
      <KeyInfo>
        <X509Data>
          <X509Certificate>MIIFtDCCBJygAwIBAgIIG1mv0XRoW(...)ED6q4AxkHNUQBimd6HAhA0oDjO/oaDeEC</X509Certificate>
        </X509Data>
      </KeyInfo>
    </Signature>
  </evento>

Resposta do Evento de Cancelamento

<retEnvEvento versao="1.00" xmlns="http://www.portalfiscal.inf.br/nfe">
  <idLote>00000002311801</idLote>
  <tpAmb>2</tpAmb>
  <verAplic>SP_EVENTOS_PL_100</verAplic>
  <cOrgao>35</cOrgao>
  <cStat>128</cStat>
  <xMotivo>Lote de Evento Processado</xMotivo>
  <retEvento versao="1.00">
    <infEvento>
      <tpAmb>2</tpAmb>
      <verAplic>SP_EVENTOS_PL_100</verAplic>
      <cOrgao>35</cOrgao>
      <cStat>135</cStat>
      <xMotivo>Evento registrado e vinculado a NF-e</xMotivo>
      <chNFe>35120810142785000190550010000000231184534973</chNFe>
      <tpEvento>110111</tpEvento>
      <xEvento>Cancelamento registrado</xEvento>
      <nSeqEvento>1</nSeqEvento>
      <CNPJDest>00000000000191</CNPJDest>
      <emailDest>contato@bb.com.br</emailDest>
      <dhRegEvento>2012-08-18T20:32:05-03:00</dhRegEvento>
      <nProt>135120005426267</nProt>
    </infEvento>
  </retEvento>
</retEnvEvento>

Proc do Evento de Cancelamento

  <procEventoNFe versao="1.00">
    <evento xmlns="http://www.portalfiscal.inf.br/nfe" versao="1.00">
      <infEvento Id="ID1101113512081014278500019055001000000023118453497301">
        <cOrgao>35</cOrgao>
        <tpAmb>2</tpAmb>
        <CNPJ>10142785000190</CNPJ>
        <chNFe>35120810142785000190550010000000231184534973</chNFe>
        <dhEvento>2012-08-18T20:26:58-03:00</dhEvento>
        <tpEvento>110111</tpEvento>
        <nSeqEvento>1</nSeqEvento>
        <verEvento>1.00</verEvento>
        <detEvento versao="1.00">
          <descEvento>Cancelamento</descEvento>
          <nProt>135120005426259</nProt>
          <xJust>Teste de Cancelamento como Evento</xJust>
        </detEvento>
      </infEvento>
      <Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
        <SignedInfo>
          <CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" />
          <SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" />
          <Reference URI="#ID1101113512081014278500019055001000000023118453497301">
            <Transforms>
              <Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" />
              <Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" />
            </Transforms>
            <DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" />
            <DigestValue>ltctExluD0Od3kxNimxSQTgKkAQ=</DigestValue>
          </Reference>
        </SignedInfo>
        <SignatureValue>iorN1e//LP/fKzwJtmxkh4fvZjafK(...)7B6/9g1f3d599XTO62JsQEU=</SignatureValue>
        <KeyInfo>
          <X509Data>
            <X509Certificate>MIIFtDCCBJygAwIBAgIIG1mv(...)AxkHNUQBimd6HAhA0oDjO/oaDeEC</X509Certificate>
          </X509Data>
        </KeyInfo>
      </Signature>
    </evento>
    <retEvento versao="1.00">
      <infEvento>
        <tpAmb>2</tpAmb>
        <verAplic>SP_EVENTOS_PL_100</verAplic>
        <cOrgao>35</cOrgao>
        <cStat>135</cStat>
        <xMotivo>Evento registrado e vinculado a NF-e</xMotivo>
        <chNFe>35120810142785000190550010000000231184534973</chNFe>
        <tpEvento>110111</tpEvento>
        <xEvento>Cancelamento registrado</xEvento>
        <nSeqEvento>1</nSeqEvento>
        <CNPJDest>00000000000191</CNPJDest>
        <emailDest>contato@bb.com.br</emailDest>
        <dhRegEvento>2012-08-18T20:32:05-03:00</dhRegEvento>
        <nProt>135120005426267</nProt>
      </infEvento>
    </retEvento>
  </procEventoNFe>

Mensagens XML - versão 2.00:

procCancNFe

<?xml version="1.0" encoding="UTF-8"?>
<procCancNFe xmlns="http://www.portalfiscal.inf.br/nfe" versao="2.00">
   <cancNFe xmlns="http://www.portalfiscal.inf.br/nfe" versao="2.00">
       <infCanc Id="ID35100610142785000190552000000000061062311555">
         <tpAmb>2</tpAmb>
         <xServ>CANCELAR</xServ>
         <chNFe>35100610142785000190552000000000061062311555</chNFe>
         <nProt>135100021635460</nProt><xJust>NF-e emitida em duplicidade por engano.</xJust>
      </infCanc>
      <Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
        <SignedInfo>
         <CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" />
         <SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" />
         <Reference URI="#ID35100610142785000190552000000000061062311555">
            <Transforms>
               <Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" />
               <Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" />
            </Transforms>
            <DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" />
            <DigestValue>wy82JRHX3y8iLYjlE8NiSBI32XY=</DigestValue>
         </Reference>
        </SignedInfo>
        <SignatureValue>39y2mEV2E91P2WsYahecKXgKyiR51Kbv(...)6viy2PHQQE2MKnAAYWDmRm8=</SignatureValue>
        <KeyInfo>
            <X509Data>
               <X509Certificate>MIIFujCCBKKgAwIBAgIEQeK(...)7EkkauyGZwoF73Go9ifYKrOChY5aPCNQz7Lw</X509Certificate>
            </X509Data>
        </KeyInfo>
      </Signature>
   </cancNFe>
   <retCancNFe versao="2.00" xmlns="http://www.portalfiscal.inf.br/nfe">
      <infCanc>
         <tpAmb>2</tpAmb>
         <verAplic>SP_NFE_PL_006e</verAplic>
         <cStat>101</cStat>
         <xMotivo>Cancelamento de NF-e homologado</xMotivo>
         <cUF>35</cUF>
         <chNFe>35100610142785000190552000000000061062311555</chNFe>
         <dhRecbto>2010-06-14T01:15:48</dhRecbto>
         <nProt>135100021635462</nProt>
     </infCanc>
   </retCancNFe>
</procCancNFe>

Exemplos de uso:

Visual Basic 6.0

' declaração das variáveis que serão utilizadas na passagem de parâmetros da DLL
'
Dim msgDados As String ' retorna a mensagem XML do pedido de cancelamento criado pela DLL que foi enviado ao WS
Dim msgRetWS As String ' retorna a mensagem XML de resposta do WS
Dim msgResultado As String ' retorna a literal do resultado da chamada do WS
Dim siglaWS As String ' informar a sigla do WS que deseja consultar, informar SVAN - SEFAZ Virtual do Ambiente Nacional (MA, PA e PI) ou SVRS - SEFAZ Virtual do Rio Grande do Sul (AC, AL, AP, DF, ES, PB, RJ, RN, RO, RR, SC, SE e TO), caso a UF seja usuário da SEFAZ Virtual, em caso contrário informar a sigla da UF (AM, BA, CE, GO, MS, MT, MG, PE, PR, RS e SP). Em caso de contingência SCAN, informar a sigla SCAN
Dim nomeCertificado As String ' informar o Nome do titular (campo Assunto) do certificado digital a ser utilizado na conexão SSL. Ex.: "CN=NFe - Associacao NF-e:99999090910270, C=BR, L=PORTO ALEGRE, O=Teste Projeto NFe RS, OU=Teste Projeto NFe RS, S=RS"
'
' importante: indicar aqui assunto do certificado digital válido, este da associacao trata-se apenas de um exemplo para testes
'
' EXEMPLO PARA USO DE ARQUIVO PFX
'
'nomeCertificado = "ARQUIVO|c:\certificado.pfx|associacao"
'
'  onde:
'  ARQUIVO            --> indica opção de uso de arquivo PFX
'  c:\certificado.pfx --> nome e caminho do arquivo PFX
'  associacao         --> senha do arquivo PFX
'
'
' EXEMPLO PARA USO DE ARQUIVO PFX EM STRING BASE64
'
'nomeCertificado = "CERTIFICADO|MIIGoDCCBYigAwIBAgIQep(arquivo pfx do certificado digital convertido em base64...)QQDExNBQy|senha"
'
'  onde:
'  CERTIFICADO        --> indica opção de uso de arquivo PFX em base64
'  MIIGoDCCBYigAwIBAgIQep(arquivo pfx do certificado digital convertido em base64...)QQDExNBQy --> arquivo PFX em base64
'  senha              --> senha do arquivo PFX
'
Dim tipoAmbiente As Integer ' informar o código do ambiente a ser consultado: 1- produção ou 2-homologação
Dim versao As String ' informar a versão da mensagem do WS - 1.07 (manual de integração versão 2.04 ou 3.00) ou 2.00 (manual de integração versão 4.0x)
'
' Informações da NF-e a ser cancelada
'
Dim chaveNFe As String ' informar a chave de acesso da NF-e objeto do cancelamento
Dim nProtocolo As String ' informar o número do protocolo de autorização de uso da NF-e objeto do cancelamento
Dim justificativa As String ' informar a justificativa do cancelamento com pelo menos 15 caracteres
'
' Retorno da DLL
'
Dim cStat As Long ' retorna o resultado da chamada do WS
Dim nProtocoloCanc As String ' retorna o número do protocolo da homologação do cancelamento da NF-e
Dim dProtocoloCanc As String ' retorna a data e hora da homologação do cancelamento da NF-e pela SEFAZ
Dim procCancNFe As String ' retorna protocolo de homologação de cancelamento da NF-e gerada de acordo com o leiaute de distribuição de Cancelamento de NF-e
'
' As variáveis do proxy devem ser informadas se necessário
'
' proxy deve ser informado com o endereço da url : porta, ex: 192.168.15.1:443
'
Dim proxy As String ' informar 'http://proxyserver:port' quando existir uso de proxy no ambiente. verificar com o cliente qual é o endereço do servidor proxy e a porta https, a porta padrão do https é 443, assim teríamos algo do tipo 'http://192.168.15.1:443'
Dim usuario As String ' informar o usuário para autenticação no proxy, se necessário
Dim senha As String ' informar a senha de autenticação no proxy, se necessário
'
' chave da licença de uso, vinculado ao CNPJ do emissor
'
Dim licenca As String ' informar a chave da licenca de uso ou registro, esta funcionalidade pode ser utilizada sem qualquer restrição no ambiente de homologação. O uso em ambiente de produção requer o licenciamento ou registro, para maiores detalhes veja as condições de uso
'
' IMPORTANTE: todas as variáveis utilizadas como parâmetro da DLL devem ser inicialiazadas
'
'
proxy = "" ' informar 'http://proxyserver:port' quando existir uso de proxy no ambiente. verificar com o cliente qual é o endereço do servidor proxy e a porta https, a porta padrão do https é 443, assim teríamos algo do tipo 'http://192.168.15.1:443'
usuario = "" ' informar o usuário para autenticação no proxy, se necessário
senha = "" ' informar a senha de autenticação no proxy, se necessário
msgDados = "" ' retorna a mensagem XML do pedido de cancelamento criado pela DLL que foi enviado ao WS
msgRetWS = "" ' retorna a mensagem XML de resposta do WS
'
'
'
licenca = "" ' informar a chave da licenca de uso ou registro, esta funcionalidade pode ser utilizada sem qualquer restrição no ambiente de homologação. O uso em ambiente de produção requer o licenciamento ou registro, para maiores detalhes veja as condições de uso
'
' prepara variáveis
'
nomeCertificado = "CN=NFe - Associacao NF-e:99999090910270, C=BR, L=PORTO ALEGRE, O=Teste Projeto NFe RS, OU=Teste Projeto NFe RS, S=RS"
' importante: indicar aqui assunto do certificado digital válido, este da associacao trata-se apenas de um exemplo para testes
siglaWS = "SVRS" ' informar a sigla do WS que deseja consultar, informar SVAN - SEFAZ Virtual do Ambiente Nacional (MA, PA e PI) ou SVRS - SEFAZ Virtual do Rio Grande do Sul (AC, AL, AP, DF, ES, PB, RJ, RN, RO, RR, SC, SE e TO), caso a UF seja usuário da SEFAZ Virtual, em caso contrário informar a sigla da UF (AM, BA, CE, GO, MS, MT, MG, PE, PR, RS e SP). Em caso de contingência SCAN, informar a sigla SCAN
siglaUF = "RJ" ' sigla da UF
tipoAmbiente = 2 ' informar o código do ambiente a ser consultado: 1- produção ou 2-homologação
versao = "2.00"  ' informar a versão da mensagem do WS
                 ' 1.07 (manual de integração versão 2.04 ou 3.00)
                 ' 2.00 (manual de integração versão 4.0x) - válido até 01/12/2012
                 ' -----------------------------------------------------------------
                 ' 1.00 (Cancelamento por Evento) - uso obrigatório após 01/12/2012
                 ' -----------------------------------------------------------------
chaveNFe = "33100700000000000191550011234567891876543210" ' informar a chave de acesso da NF-e objeto do cancelamento
nProtocolo = "133100021635462" ' informar o número do protocolo de autorização de uso da NF-e objeto do cancelamento
justificativa = "Nota fiscal emitida com valor incorreto" ' informar a justificativa do cancelamento com pelo menos 15 caracteres
'
' Retorno da DLL
'
cStat = 0 ' retorna o resultado da chamada do WS
nProtocoloCanc = "" ' retorna o número do protocolo da homologação do cancelamento da NF-e
dProtocoloCanc = "" ' retorna a data e hora da homologação do cancelamento da NF-e pela SEFAZ
procCancNFe = "" ' retorna protocolo de homologação de cancelamento da NF-e gerada de acordo com o leiaute de distribuição de Cancelamento de NF-e
'
Dim objNFeUtil As NFe_Util_2G.Util
'
' instancia a DLL
'
Set objNFeUtil = New NFe_Util_2G.Util
'
'
Screen.MousePointer = vbHourglass ' ampulheta
'
procCancNFe = objNFeUtil.CancelaNF2G(siglaWS, tipoAmbiente, nomeCertificado, versao, msgDados, msgRetWS, cStat, msgResultado, chaveNFe, nProtocolo, justificativa, nProtocoloCanc, dProtocoloCanc, proxy, usuario, senha, licenca)
'
'
Screen.MousePointer = vbDefault ' normal
'
' analisar o retorno do WS, se cStat:
'
'     101 - cancelamento de NF-e homologado
'     151 - cancelamento de NF-e homologado fora de prazo (depende da UF, pode haver multa)
'     135 - Evento registrado e vinculado a NF-e (cancelamento de NF-e homologado)
'     ??? - Evento registrado e vinculado a NF-e fora de prazo (a SEFAZ deve criar um cStat para Evento recebido fora do prazo);
'
'
' mostra mensagem XML enviada
'
MsgBox msgDados, vbInformation, "Mensagem XML do Pedido de Cancelamento de NF-e"
'
' mostra mensagem XML da mensagem de retorno do WS
'
MsgBox msgResultado + Chr(13) + Chr(13) + msgRetWS, vbInformation, "Resultado da chamada do Web Service"
'
' libera classe
'
Set objNFeUtil = Nothing
12.3.1. CancelaNF2G [20-08-12]
12.3. Cancelamento e Inutilização de NF-e [15-08-17]
« Anterior
12.3. Cancelamento e Inutilização de NF-e [15-08-17]
Próximo »
12.3.2. CancelaNFEvento [15-08-17]