- 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:
- Timestamp - data e hora da ocorrência do erro
- WS - nome do WS acessado
- URL - URL do WS acessado
- ambiente - código do ambiente
- certificado - nome do titular (assunto) do certificado digital utilizado
- erro - código e descrição do erro
- msgDados - mensagem gerada pela DLL enviada ao WS
- msgRetWS - conteúdo do retorno do WS
Os erros com código > 5000 são erros tratados pela DLL e ocorrem nas seguintes situações:
- 5001 - 5017 - falha na tentativa de consumir o WS (problema de conexão/rede)
- 5101 - 5105 - falha no tratamento do XML de resposta do WS (problema na resposta do WS)
- 5201 - 5206 - falha na recuperação da URL do WS desejado (problema no arquivo de configuração da URL)
- 5403 - 5408 - falha no acesso ao certificado digital
- 6501 - 6515 - falha no tratamento dos parâmetros da chamada da DLL
- 7001 - 7003 - falha na validação da licença de uso
Histórico de atualização:
- 2012-10-10 - versão inicial
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