10.3. Cancelamento e Inutilização de CT-e
10.3.1. CancelaCT [20-06-13]
10.3. Cancelamento e Inutilização de CT-e
« Anterior
10.3.2. InutilizaNroCT [20-06-13]
Próximo »

10.3.1. CancelaCT [20-06-13]

Cancelamento de CT-e

Assinatura

int CancelaCT(string siglaWS, string siglaUF, int tipoAmbiente, string nomeCertificado, string versao, out string msgDados, out string msgRetWS, out string msgResultado, out string procCanc, string chaveCTe, string nProtocolo, string justificativa, string proxy, string usuario, string senha, string licenca)

FUNCIONALIDADE DESATIVADA PELA SEFAZ em 31/05/2014

Utilize a funcionalidade de CancelaCTEvento

Descrição:

Funcionalidade para Cancelamento de CT-e.

Os principais parâmetros de cancelamento são:

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

Condições para Cancelamento

  • CT-e autorizado, o usuário deve utilizar a inutilização de numeração se o CT-e não estiver autorizado;
  • CT-e autorizado em até 168 horas;
  • Possuir o número do protocolo de autorização de uso;
  • O CT-e não pode ter a confirmação da prestação do serviço;
  • Inexistência da Circulação da Mercadoria;
  • Inexistência da Carta de Correção;

Prazo de cancelamento

Em até 60 dias da autorização de uso do CT-e objeto do cancelamento.

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 o CT-e.

Parâmetros:

nome tipo fluxo descrição
siglaWS string entrada informar a sigla do WS de envio, veja Tabela de siglaWS
siglaUF string entrada informar a sigla da UF
tipoAmbiente inteiro entrada informar o código do ambiente a ser consultado: 1- produção ou 2-homologação
nomeCertificado string entrada informar nome do titular do certificado a ser utilizado na assinatura e conexão SSL
versao string entrada informar a versão da mensagem do WS - 1.03 / 1.04
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
msgResultado string saída retorna a literal do resultado da chamada do WS
procCanc string saída retorna o XML do procCancCTe, composto pelo pedido de cancelamento do CT-e e respectivo protocolo de homologação de cancelamento do CT-e.
O emissor deve manter este XML, na NF-e existe a obrigação de envia-lo para o tomador do NF-e cancelado.
chaveCTe string entrada informar chave de Acesso do CT-e desejado
nProtocolo string entrada informar o número do protocolo de autorização de uso do CT-e objeto do cancelamento
justificativa string entrada informar a justificativa do cancelamento com pelo menos 15 caracteres
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 ou registro, para maiores detalhes veja as condições de uso

Retorno:

O resultado da chamada do CancelaCT é um código numérico com os seguintes significados:

código Mensagem origem regra
1 código do ambiente inválido DLL -
2 sigla da UF inválida DLL -
3 a UF não oferece o serviço DLL -
4 Arquivo com a URL do WS não localizado DLL -
5 Erro não tratado de abertura/tratamento Arquivo ws.xml DLL -
6 Erro de validação de Schema DLL -
7 Nenhum Certificado Selecionado DLL -
8 Nenhum certificado válido foi encontrado com o nome informado DLL -
9 Erro Inesperado no acesso ao certificado digital: [Mensagem] DLL -
10 Erro: Time-out ao chamar o WS DLL -
11 Erro: exceção da biblioteca criptográfica DLL -
12 Erro: conectividade DLL -
13 Aplicação não licenciada DLL -
14 Erro: Problema ao acessar o certificado digital: [exceção] DLL -
15 Certificado digital inexistente para ,nome, DLL -
16 XML mal formado + exceção DLL -
17 A tag de assinatura [RefUri] inexiste DLL -
18 A tag de assinatura [RefUri] não é unica DLL -
19 Erro Ao assinar o documento - ID deve ser string [RefUri(Atributo)] DLL -
20 Erro: Ao assinar o documento - [exceção] DLL -
21 Erro: O número do protocolo deve ter 15 posições DLL -
22 Erro: A chave de acesso deve ter 44 posições DLL -
23 Erro: A justificativa deve ter pelo menos 15 posições DLL -
24 Erro: O nome do titular do certificado deve ser informado DLL -
25 Erro: A licença informada tem tamanho diferente de 128 - [chave informada] - [tamanho] DLL -
101 Cancelamento de CT-e homologado 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 do CT-e WS G062
205 Rejeição: CT-e está denegado na base de dados da SEFAZ WS G112
205 Rejeição: CT-e está denegado na base de dados da SEFAZ WS G117
205 Rejeição: CT-e está denegado na base de dados da SEFAZ WS G076
205 Rejeição: CT-e está denegado na base de dados da SEFAZ WS G085
205 Rejeição: CT-e está denegado na base de dados da SEFAZ WS G094
205 Rejeição: CT-e está denegado na base de dados da SEFAZ WS G103
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
218 Rejeição: CT-e já está cancelada na base de dados da SEFAZ WS G116
219 Rejeição: Circulação da CT-e verificada WS H13
220 Rejeição: CT-e autorizada há mais de 60 dias WS H10
221 Rejeição: Confirmado a prestação do serviço do CT-e pelo destinatário WS H12
222 Rejeição: Protocolo de Autorização de Uso difere do cadastrado WS H11
227 Rejeição: Erro na composição do Campo ID WS G005
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: Elemento cteCabecMsg inexistente no SOAP Header WS C01
243 Rejeição: XML Mal Formado WS B02
244 Rejeição: CNPJ do Certificado Digital difere do CNPJ da Matriz e do CNPJ do Emitente WS F04
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 G001
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
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 cteCabecMsg do SOAP Header WS C02
410 Rejeição: UF informada no campo cUF não é atendida pelo WebService WS C03
411 Rejeição: Campo versaoDados inexistente no elemento cteCabecMsg do SOAP Header WS C04
495 Rejeição: CT-e possui Carta de Correção WS H14
574 Rejeição: Vedado o cancelamento de CT-e do tipo substituto (tipo=3) WS H16
575 Rejeição: Vedado o cancelamento se possuir CT-e de Anulação associado WS H17
576 Rejeição: Vedado o cancelamento se possuir CT-e de Substituição associado WS H19

Histórico de atualização:

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 enviada para o WS
Dim msgRetWS As String  ' retorna a mensagem XML de resposta do WS
Dim msgResultado As String  ' retorna o resultado da chamada da funcionalidade, se o WS acessado com sucesso será devolvido o cStat da resposta do WS
Dim siglaUF As String   ' informar a sigla da UF do emissor
Dim siglaWS As String   ' informar a sigla do WS de envio:
                        ' . sigla da UF, caso a UF tenha aplicação própria (MG, MS, MT, PR, RS e SP).
                        ' . RS, caso a UF seja usuária da SVRS - SEFAZ Virtual do RS (AM, BA, CE, DF, ES,
                        '        GO, MA, RJ, RN, RO, SC, SE, e TO);
                        ' . SP, caso a UF seja usuária da SVSP - SEFAZ Virtual de SP (AP, PE e RR);
                        ' . RS quando desejar acessar a SVC-RS (AP, MT, MS, PE, RR e SP);
                        ' . SP quando desejar acessar a SVC-SP (AM, BA, CE, DF, ES, GO, MA, MG, PA, RJ, 
                        '        RN, RO, RS, SC, SE, e TO); 
Dim nomeCertificado As String   ' informar nome do titular do certificado a ser utilizado na assinatura e conexão SSL
'
'  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
Dim licenca As String   ' informar a chave da licença de uso, 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](http://www.flexdocs.com.br/cte_util.htm "condições de uso")
Dim tipoAmbiente As Long    ' informar o código do ambiente desejado: 1- produção ou 2-homologação
'
' define as variáveis que passam/recebem informações importantes
'
Dim chaveCTe As String          ' chave do CT-e objeto de cancelamento
Dim justificativa As String     ' justificativa de cancelamento
Dim procCanc As String       ' estrturura XML que contém o pedido de cancelamento e a homologação do cancelamento
                             ' que deve ser mantido pelo emissor e distribuído ao destinatário.
Dim nProtocolo As String     ' número do protocolo de autorização de uso do CT-e objeto do cancelamento
Dim versao As String         ' utilizado para escolha da versão do WS - 1.03 / 1.04
Dim cStat As Long            ' status da chamada, veja os valores em http://www.flexdocs.com.br/guiaCTe/WS.canc.cancelaCT.html   
'
'
'  IMPORTANTE: todas as variáveis utilizadas como parâmetro da DLL devem ser inicializadas
'
'
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
licenca = ""    ' informar a chave da licença de uso, 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](http://www.flexdocs.com.br/cte_util.htm "condições de uso")
msgDados = ""   ' retorna a mensagem XML enviada para o WS
msgRetWS = ""   ' retorna a mensagem XML de resposta do WS
msgResultado = ""   ' retorna o resultado da chamada da funcionalidade, se o WS acessado com sucesso será devolvido o cStat da resposta do WS
procCanc = ""   ' retorna o XML do ***procCancCTe***, composto pelo pedido de cancelamento do CT-e e respectivo protocolo de homologação de cancelamento do CT-e.<BR>O emissor deve manter este XML, na NF-e existe a obrigação de envia-lo para o tomador do NF-e cancelado.
nomeCertificado = "CN=NFe - Associacao NF-e:99999090910270, C=BR, L=PORTO ALEGRE, O=Teste Projeto NFe RS, OU=Teste Projeto NFe RS, S=RS"
              ' informar com o assunto da certificado digital
              ' Ex.: "CN=NFe - Associacao NF-e:99999090910270, C=BR, L=PORTO ALEGRE, O=Teste Projeto NFe RS, OU=Teste Projeto NFe RS, S=RS"
siglaWS = "RS"  ' SEFAZ/RS
siglaUF = "RS"  ' informar a sigla da UF do emissor
chaveCTe = "35100700000000000191570011234567891876543210"   ' chave do CT-e objeto de cancelamento
nProtocolo = "133100021635462"  ' número do protocolo de autorização de uso do CT-e objeto do cancelamento
justificativa = "CTe emitido com valor incorreto" ' informar a justificativa do cancelamento com pelo menos 15 caracteres
versao = "1.04"     ' utilizado para escolha da versão do WS - 1.03 / 1.04
tipoAmbiente = 2    ' informar o código do ambiente desejado: 1- produção ou 2-homologação
cStat = 0       ' retorna o código do resultado da chamada do WS
'
' referenciando a DLL em late binding
' não é necessário fazer o reference da DLL
' o intelisense não funciona
'
Dim objCTeUtil As Object
 
Set objCTeUtil = CreateObject("CTe_Util.Util")
'
'
'
Screen.MousePointer = vbHourglass    ' ampulheta
'
'
'
cStat = objCTeUtil.CancelaCT(siglaWS, siglaUF, tipoAmbiente, nomeCertificado, versao, msgDados, msgRetWS, msgResultado, procCanc, chaveCTe, nProtocolo, justificativa, proxy, usuario, senha, licenca)
'
Screen.MousePointer = vbDefault ' normal
'
If cStat = 101 Then
   '
   '  grava CancelaCT
   '
   nomeArquivo = "CancelaCT.xml"
   Open nomeArquivo For Output As #1
   Print #1, procCanc
   Close #1
'
'
MsgBox msgDados, vbInformation, "Mensagem XML do Pedido de Cancelamento de CT-e"
'
' mostra mensagem XML da mensagem de retorno do WS
'
MsgBox msgResultado + Chr(13) + Chr(13) + msgRetWS, vbInformation, "Resultado da chamada do Web Service"
 
Else
 
MsgBox cStat + Chr(13) + Chr(13) + msgResultado, vbInformation, "Falha no Cancelamento do CT-e"
 
End If
'
' libera classe
'
Set objCTeUtil = Nothing
10.3.1. CancelaCT [20-06-13]
10.3. Cancelamento e Inutilização de CT-e
« Anterior
10.3. Cancelamento e Inutilização de CT-e
Próximo »
10.3.2. InutilizaNroCT [20-06-13]