4. Web Service do MDF-e 07-09-18
4.4. CancelaMDFe 07-09-18
4.3. EnviaMDFeSincrono 24-07-19
« Anterior
4.5. EncerraMDFe 07-09-18
Próximo »

4.4. CancelaMDFe 07-09-18

Cancelamento de MDF-e

Atualizado para aceitar emissor PF (NT 2018/002)

Agora é possível que Pessoa Física com Inscrição Estadual emita o MDF-e.

Assinatura

string CancelaMDFe(string siglaWS, int tipoAmbiente, string nomeCertificado, string versao, out string msgDados, out string msgRetWS, out int resultado, out string msgResultado, string chaveMDFe, string nProtocolo, string justificativa, string dataEvento, out string nProtocoloCanc, out string dProtocoloCanc, string proxy, string usuario, string senha, string licenca)

Descrição:

Funcionalidade para Cancelamento de MDF-e.

Condições para Cancelamento

  • MDF-e autorizado há menos de 24 horas;
  • Ainda não tenha ocorrido o início do transporte;
  • Possuir o número do protocolo de autorização de uso.

Prazo de cancelamento

Em até 24 horas da autorização de uso do MDF-e objeto do cancelamento.

Número do Protocolo de Autorização de Uso do MDF-e objeto do cancelamento

Informar o Número do Protocolo de Autorização de uso do MDF-e. Alguns usuários confundem o número do recibo do envio do lote de MDF-e com o número da autorização de uso e não conseguem cancelar o MDF-e.

justificativa de cancelamento

Informar a justificativa do cancelamento com pelo menos 15 caracteres, não é permitido a existência de espaços em branco no início ou fim da justificativa e nem são permitidos caracteres de formatação como quebra de linha/tabulação/etc. no texto da justificativa.

dataEvento

informar a data e hora do evento de cancelamento. Se a data e hora informada for maior que a data do WS vai ocorrer o erro "635 - Rejeição: A data do evento não pode ser maior que a data do processamento", examine a tag dhRecbto do retorno do WS e verifique se o horário do equipamento não está adiantado em relação ao horário do WS.

Parâmetros da chamada:

nome tipo fluxo descrição
siglaWS string entrada informar a sigla "RS"
tipoAmbiente inteiro entrada informar o código do ambiente que será processado o evento de cancelamento de Manifesto:
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 com o WS:
É permitido o uso do certificado digital que tenha o mesmo CNPJ base (oito primeiros dígitos do CNPJ) do emissor do MDF-e.
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: NUMEROSERIE|[número de série] quando não seja possível localizar o certificado digital pelo assunto;
3. 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".
4. 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".
versao string entrada informar a versão da mensagem do WS: "1.00" ou "3.00"
msgDados string saída retorna a mensagem XML do pedido de cancelamento que foi enviado ao WS.
msgRetWS string saída retorna a mensagem XML de resposta do WS
resultado inteiro saída retorna o resultado do processamento do pedido de cancelamento, veja a tabela de retorno.
Teremos o retorno do código 135 quando o cancelamento for homologado, o retorno de código diferente de 135 significa que houve algum problema no processamento do pedido de cancelamento do Manifesto.
msgResultado string saída retorna a literal do resultado da chamada do WS
chaveMDFe string entrada informar chave de Acesso do MDF-e que se pretende cancelar
nProtocolo string entrada informar o número do protocolo de autorização de uso do MDF-e objeto do cancelamento
justificativa string entrada informar a justificativa do cancelamento com pelo menos 15 caracteres.
Não é permitido a existência de espaços em branco no início ou fim da justificativa e nem são permitidos caracteres de formatação como quebra de linha/tab/etc. no texto da justificativa.
dataEvento string entrada informar a data e hora da data do cancelamento no formato UTC (data e hora com fuso horário): "AAAA-MM-DDTHH:MM:SS-HH:00".
Exemplos:
2017-01-13T12:34:00-02:00 (fuso horário de Brasília no horário de verão).
2017-01-13T12:34:00-03:00 (fuso horário de Brasília).

Se nada for informado (""), a DLL utilizará a data e hora e fuso horário do equipamento.
nProtocoloCanc string saída retorna o número do protocolo de homologação de cancelamento.
dProtocoloCanc string saída retorna a data e hora de homologação do cancelamento.
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

XML do Retorno da chamada:

Quando o cancelamento for homologado pelo Web Service, haverá o retorno do XML composto pelo evento de pedido de cancelamento do MDF-e e respectivo protocolo de homologação de cancelamento do MDF-e.
O emissor deve manter este XML.

Tabela de códigos de Retorno do parâmetro resultado:

código Mensagem origem regra
5101 Erro: A mensagem de retorno do WS não é um XML válido: [mensagem de retorno] DLL -
5102 Erro: Tag cStat inexistente na mensagem de retorno [mensagem de erro] DLL -
5103 Erro: Tag xMotivo inexistente na mensagem de retorno [mensagem de erro] DLL -
5104 Erro: Tag [nome tag] inexistente na mensagem de retorno [mensagem de erro] DLL -
5105 Erro: O WS não devolveu nenhum resultado DLL -
5201 Erro: O código do tipo de ambiente [tipo de ambiente 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 informado] 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 aplicação] DLL -
5205 Erro: Ocorreu um erro inesperado no processamento da URL (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âmetros inválido: [nome informado] DLL -
5408 Erro: Falha na criação do objeto certificate: [mensagem do ERRO DO WINDOWS] DLL -
6501 Erro: O parâmetro siglaWS deve ser informado DLL -
6502 Erro: O parâmetro tipoAmbiente deve ser informado DLL -
6503 Erro: O parâmetro tipoAmbiente [valor informado] deve ser 1 ou 2 DLL -
6504 Erro: O nome do titular do certificado deve ser informado DLL -
6505 Erro: O parâmetro chaveMDFe não informado DLL -
6506 Erro: O tamanho [tamanho] do parâmetro chaveMDFe informado não tem 44 caracteres DLL -
6507 Erro: As posições correspondentes (1,2) ao código da UF [valor informado] do parâmetro chaveMDFe não é um código de UF válido DLL -
6508 Erro: O conteúdo do parâmetro número do protocolo: [valor informado] deve ter 15 posições DLL -
6509 Erro: O conteúdo do parâmetro justificativa: [valor informado] deve ter pelo menos 15 posições DLL -
6510 Erro: O parâmetro número do protocolo deve ser informado DLL -
6511 Erro: O parâmetro justificativa deve ter se informado DLL -
6512 Erro: O parâmetro versao não foi informado DLL -
6513 Erro: O parâmetro dataEvento é inválida: [valor informado] DLL -
6514 Erro: O conteúdo do parâmetro versao informado é inválido: [valor informado], a DLL espera: [valor esperado] DLL -
6515 Erro: A chave do MDF-e do retEventoMDFe: [chaveMDFe] é divergente da chave do MDF-e do Evento: [chaveMDFe] DLL -
7001 Erro: A licença não foi informada [Identificação da versão da DLL em uso] DLL -
7002 Erro: A licença informada: [valor informado] tem tamanho:[tamanho] diferente de 128 - [Identificação da versão da DLL em uso] DLL -
7003 Erro: A licença informada: [valor informado] não pertence ao CNPJ:[valor informado] [Identificação da versão da DLL em uso] DLL -
135 Evento registrado e vinculado a MDF-e WS -
136 Evento registrado, mas não vinculado a MDF-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 do MDF-e WS K03
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
217 Rejeição: MDF-e não consta na base de dados da SEFAZ WS J16
218 Rejeição: MDF-e já está cancelado na base de dados da SEFAZ. WS K04
219 Rejeição: Circulação do MDF-e verificada WS K08
220 Rejeição: MDF-e autorizado há mais de 24 horas WS K05
222 Rejeição: Protocolo de Autorização de Uso difere do cadastrado WS K06
226 Rejeição: Código da UF do Emitente diverge da UF autorizadora WS J02
236 Rejeição: Chave de Acesso com dígito verificador inválido WS J07
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
242 Rejeição: Elemento mdfeCabecMsg inexistente no SOAP Header WS C01
243 Rejeição: XML Mal Formado WS B02
249 Rejeição: UF da Chave de Acesso diverge da UF autorizadora WS K01
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 mdfeCabecMsg 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 mdfeCabecMsg do SOAP Header WS C04
592 Rejeição: Chave de acesso inválida (Ano < 2012 ou Ano maior que Ano corrente) WS J08
593 Rejeição: Chave de acesso inválida (Mês = 0 ou Mês > 12) WS J09
594 Rejeição: Chave de acesso inválida (CNPJ zerado ou digito inválido) WS J10
595 Rejeição: Chave de acesso inválida (modelo diferente de 58) WS J11
596 Rejeição: Chave de acesso inválida (numero MDFe = 0) WS J12
598 Rejeicao: Usar somente o namespace padrao do MDF-e WS D02
599 Rejeicao: Nao eh permitida a presenca de caracteres de edicao no inicio/fim da mensagem ou entre as tags da mensagem WS D03
600 Rejeição: Chave de Acesso difere da existente em BD WS J17
609 Rejeição: MDF-e já está encerrado na base de dados da SEFAZ WS K07
627 Rejeição: CNPJ do autor do evento inválido WS J03
628 Rejeição: Erro Atributo ID do evento não corresponde a concatenação dos campos (ID + tpEvento + chMDFe + nSeqEvento) WS J04
629 Rejeição: O tpEvento informado inválido WS J05
630 Rejeição: Falha no Schema XML específico para o evento WS J06
631 Rejeição: Duplicidade de evento WS J13
632 Rejeição: O autor do evento diverge do emissor do MDF-e WS J14
633 Rejeição: O autor do evento não é um órgão autorizado a gerar o evento WS J15
634 Rejeição: A data do evento não pode ser menor que a data de emissão do MDF-e WS J18
635 Rejeição: A data do evento não pode ser maior que a data do processamento WS J20
636 Rejeição: O numero sequencial do evento é maior que o permitido WS K02
637 Rejeição: A data do evento não pode ser menor que a data de autorização do MDF-e WS J19


Tratamento de Erro:

Caso ocorra algum erro na chamada do WS (5001-7003) ou a requisição não seja atendida pelo WS (214-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:

Exemplo de XML de Evento de Pedido de Cancelamento de um MDF-e

<eventoMDFe xmlns="http://www.portalfiscal.inf.br/mdfe" versao="1.00">
  <infEvento Id="ID1101113512101014278500019058001000000001149128302901">
    <cOrgao>35</cOrgao>
    <tpAmb>2</tpAmb>
    <CNPJ>10142785000190</CNPJ>
    <chMDFe>35121010142785000190580010000000011491283029</chMDFe>
    <dhEvento>2012-10-07T03:19:28</dhEvento>
    <tpEvento>110111</tpEvento>
    <nSeqEvento>1</nSeqEvento>
    <detEvento versaoEvento="1.00">
      <evCancMDFe>
        <descEvento>Cancelamento</descEvento>
        <nProt>912345678901234</nProt>
        <xJust>Teste de cancelamento</xJust>
      </evCancMDFe>
    </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="#ID1101113512101014278500019058001000000001149128302901">
        <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>noTbLtfaoS02PYxVm8ufox7OKww=</DigestValue>
      </Reference>
    </SignedInfo>
    <SignatureValue>aGVSXS+FjdZTcHzgwQjlE3HFz(...)wyvjsSY7AyVOh1WhOSpnEaDKZk=</SignatureValue>
    <KeyInfo>
      <X509Data>
        <X509Certificate>MIIFtDCCBJygAwIBAgIIG1mv0(...)NUQBimd6HAhA0oDjO/oaDeEC</X509Certificate>
      </X509Data>
    </KeyInfo>
  </Signature>
</eventoMDFe>


Exemplo de XML de Retorno com rejeição do Pedido de Cancelamento


630 - Rejeição: Falha no Schema XML específico para o evento


<retEventoMDFe xmlns="http://www.portalfiscal.inf.br/mdfe" versao="1.00">
  <infEvento Id="ID">
    <tpAmb>2</tpAmb>
    <verAplic>RS20120720150954</verAplic>
    <cOrgao>35</cOrgao>
    <cStat>630</cStat>
    <xMotivo>Rejeição: Falha no Schema XML específico para o evento</xMotivo>
  </infEvento>
</retEventoMDFe>


220 - Rejeição: MDF-e autorizado ha mais de 24 horas


<retEventoMDFe xmlns="http://www.portalfiscal.inf.br/mdfe" versao="1.00">
  <infEvento Id="ID">
    <tpAmb>2</tpAmb>
    <verAplic>RS20120720150954</verAplic>
    <cOrgao>35</cOrgao>
    <cStat>220</cStat>
    <xMotivo>Rejeição: MDF-e autorizado ha mais de 24 horas</xMotivo>
  </infEvento>
</retEventoMDFe>


631 - Rejeição: Duplicidade de evento


<retEventoMDFe xmlns="http://www.portalfiscal.inf.br/mdfe" versao="1.00">
  <infEvento Id="ID">
    <tpAmb>2</tpAmb>
    <verAplic>RS20120720150954</verAplic>
    <cOrgao>35</cOrgao>
    <cStat>631</cStat>
    <xMotivo>Rejeição: Duplicidade de evento</xMotivo>
  </infEvento>
</retEventoMDFe>


Exemplo de XML de Retorno com Homologação do Cancelamento (Evento registrado e vinculado ao MDF-e)

<retEventoMDFe xmlns="http://www.portalfiscal.inf.br/mdfe" versao="1.00">
  <infEvento Id="ID935120000000022">
    <tpAmb>2</tpAmb>
    <verAplic>RS20120720150954</verAplic>
    <cOrgao>35</cOrgao>
    <cStat>135</cStat>
    <xMotivo>Evento registrado e vinculado ao MDF-e</xMotivo>
    <chMDFe>35121010142785000190580010000000021491283026</chMDFe>
    <tpEvento>110111</tpEvento>
    <xEvento>Cancelamento</xEvento>
    <nSeqEvento>1</nSeqEvento>
    <dhRegEvento>2012-10-07T12:58:58</dhRegEvento>
    <nProt>935120000000022</nProt>
  </infEvento>
</retEventoMDFe>


Exemplo de XML de procEvento de Cancelamento de MDF-e homologado

<procEventoMDFe versao="1.00" xmlns="http://www.portalfiscal.inf.br/mdfe">
<eventoMDFe xmlns="http://www.portalfiscal.inf.br/mdfe" versao="1.00">
  <infEvento Id="ID1101113512101014278500019058001000000002149128302601">
    <cOrgao>35</cOrgao>
    <tpAmb>2</tpAmb>
    <CNPJ>10142785000190</CNPJ>
    <chMDFe>35121010142785000190580010000000021491283026</chMDFe>
    <dhEvento>2012-10-07T09:58:35</dhEvento>
    <tpEvento>110111</tpEvento>
    <nSeqEvento>1</nSeqEvento>
    <detEvento versaoEvento="1.00">
      <evCancMDFe>
        <descEvento>Cancelamento</descEvento>
        <nProt>935120000000021</nProt>
        <xJust>Teste de cancelamento</xJust>
      </evCancMDFe>
    </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="#ID1101113512101014278500019058001000000002149128302601">
        <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>59sBLXkpJdlr9qHBMrpD7ivA/iw=</DigestValue>
      </Reference>
    </SignedInfo>
    <SignatureValue>Tned2WTOTdeeNwmltpJLMOFikdSLR(...)xUT0je9YbhtsCndcde0x0bThhkj/Ivzs=</SignatureValue>
    <KeyInfo>
      <X509Data>
        <X509Certificate>MIIFtDCCBJygAwIBAgIIG1mv0X(...)6q4AxkHNUQBimd6HAhA0oDjO/oaDeEC</X509Certificate>
      </X509Data>
    </KeyInfo>
  </Signature>
</eventoMDFe>
<retEventoMDFe xmlns="http://www.portalfiscal.inf.br/mdfe" versao="1.00">
  <infEvento Id="ID935120000000022">
    <tpAmb>2</tpAmb>
    <verAplic>RS20120720150954</verAplic>
    <cOrgao>35</cOrgao>
    <cStat>135</cStat>
    <xMotivo>Evento registrado e vinculado ao MDF-e</xMotivo>
    <chMDFe>35121010142785000190580010000000021491283026</chMDFe>
    <tpEvento>110111</tpEvento>
    <xEvento>Cancelamento</xEvento>
    <nSeqEvento>1</nSeqEvento>
    <dhRegEvento>2012-10-07T12:58:58</dhRegEvento>
    <nProt>935120000000022</nProt>
  </infEvento>
</retEventoMDFe>
</procEventoMDFe>


Exemplos de uso:

Visual Basic 6.0

 
' incializacao dos parâmetros da DLL, passo importante para evitar problemas

siglaWS = ""         ' informar a sigla do WS - RS para todas as UF
tipoAmbiente = 0     ' informar o ambiente 1 = produção / 2 = homologação
nomeCertificado = "" ' informar o certificado digital
Versao = ""          ' informar a versao do leiaute, ex.: "1.00"
msgDados = ""        ' informar a string com o lote da NF-e neste parâmetro, retorna a mensagem XML enviada para o WS
msgRetWS = ""        ' retorna a mensagem XML de resposta do WS
cStat = 0            ' retorna o código do resultado da chamada
msgResultado = ""    ' retorno a literal do resultado da chamada // importante para identificar possíveis erros
chaveMDFe = ""       ' informar a chave da MDF-e objeto do cancelamento
nProtocolo = ""      ' informar o número do protocolo de autorização de uso do MDF-e objeto do cancelamento
justificativa = ""   ' informar a justifictiva do cancelamento
dataEvento = ""      ' informar a data do cancelamento formato "AAAA-MM-DD HH:MM:SS".
nProtocoloCanc = ""  ' retorna o número do protocolo de registro do evento de cancelamento
dProtocoloCanc = ""  ' retorna a data e hora do protocolo de registro do evento de cancelamento
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
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 licenca de uso, necessário para consumir o WS de produção
eventoMDFe = ""      ' para receber o XML do evento de cancelamento do MDF-e, só é gerado quando cStat=135

' informar os parâmetros básicos do chamada

siglaWS = "RS"
tipoAmbiente = 2
nomeCertificado = "CN=M R M KATO ASAKURA EIRELI EPP:69621187915, OU=AC CAIXA PJ v2, OU=Caixa Economica Federal, O=ICP-Brasil, C=BR"
Versao = "1.00"
 
' informar os dados do MDF-e objeto do cancelamento

chaveMDFe = "35121010142785000190580010000000011491283029"
nProtocolo = "935120000000020"
justificativa = "Teste de cancelamento"
dataEvento = Format$(Now, "yyyy-mm-dd HH:mm:ss")
 
' instancia DLL

Dim objMDFeUtil As Object
 
Set objMDFeUtil = CreateObject("MDFe_Util.Util")
 
' consome Web Service

Screen.MousePointer = vbHourglass    ' ampulheta

eventoMDFe = objMDFeUtil.CancelaMDFe(siglaWS, _
                                     tipoAmbiente, _
                                     nomeCertificado, _
                                     Versao, _
                                     msgDados, _
                                     msgRetWS, _
                                     cStat, _
                                     msgResultado, _
                                     chaveMDFe, _
                                     nProtocolo, _
                                     justificativa, _
                                     dataEvento, _
                                     nProtocoloCanc, _
                                     dProtocoloCanc, _
                                     proxy, _
                                     usuario, _
                                     senha, _
                                     licenca)
 
 
 Screen.MousePointer = vbDefault ' normal
 '
 ' mostra mensagem XML enviada e a mensagem de retorno do WS
 '
  MsgBox msgResultado + Chr(13) + Chr(13) + msgDados + Chr(13) + Chr(13) + msgRetWS, vbInformation, "Resultado do Cancelamento do MDFe"
 '
 ' analisar o retorno da chamada, se cStat= 135 o cancelamento foi realizado, gravar ou guardar o eventoMDFe
 '
 ' se cStat diferente de 135, houve algum problema na chamada, necessário analisar o cStat e tomar a medida adequada.
 '
4.4. CancelaMDFe 07-09-18
4. Web Service do MDF-e 07-09-18
« Anterior
4.3. EnviaMDFeSincrono 24-07-19
Próximo »
4.5. EncerraMDFe 07-09-18