4. Web Service do MDF-e 07-09-18
4.6. ConsultaMDFe
4.5. EncerraMDFe 07-09-18
« Anterior
4.7. ConsultaStatus
Próximo »

4.6. ConsultaMDFe

Consulta a situação de um MDF-e

Assinatura

int ConsultaMDFe(string siglaWS, int tipoAmbiente, string nomeCertificado, string versao, out string msgDados, out string msgRetWS, out string msgResultado, string chaveMDFe, string proxy, string usuario, string senha)

Descrição:

Consulta a situação atual de um MDF-e no Web Services onde foi autorizado.

A consulta pode ser realizada por qualquer interessado que conheça a chave de acesso do MDF-e e possua um certificado digital válido.

Certificado Digital

Informar o Nome do titular (campo Assunto) do certificado digital a ser utilizado na conexão SSL.

Para consultar o status de um MDF-e é necessário possuir um certificado digital válido para estabelecer a conexão SSL com o WS.

Parâmetros da chamada:

nome tipo fluxo descrição
siglaWS string entrada informar a sigla "RS"
ambiente 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 com o WS:

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 XML do WS - "1.00" ou "3.00"
msgDados string saída retorna a mensagem XML enviada para o 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
chaveMDFe string entrada informar a chave de acesso do MDF-e que se deseja consultar
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

Retorno da chamada:

O resultado da chamada da Consulta Status de um MDF-e é um código numérico com os seguintes significados:

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 -
6201 Erro: O parâmetro versao não foi informado DLL -
6202 Erro: O conteúdo do parâmetro versao informado é inválido: [conteúdo informado], a DLL espera: [conteúdo esperado] DLL -
6203 Erro: O parâmetro chaveMDFe não informado DLL -
6204 Erro: O tamanho [tamanho da chave] do parâmetro chaveMDFe informado não tem 44 caracteres DLL -
6205 Erro: As posições correspondentes (1,2) ao código da UF [UF informada] do parâmetro chaveMDFe não é um código de UF válido DLL -
6206 Erro: O nome do titular do certificado deve ser informado DLL -
6207 Erro: O parâmetro tipoAmbiente deve ser informado DLL -
6208 Erro: O parâmetro tipoAmbiente [ambiente informado] deve ser 1 ou 2 DLL -
6209 Erro: O parâmetro siglaWS deve ser informado DLL -
100 Autorizado o uso do MDF-e WS -
101 Cancelamento de MDF-e homologado WS -
132 Encerramento de MDF-e homologado WS -
108 Serviço Paralisado Momentaneamente (curto prazo) WS B03
109 Serviço Paralisado sem Previsão WS B04
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 difere da cadastrada WS H10
217 Rejeição: MDF-e não consta na base de dados da SEFAZ WS H09
226 Rejeição: Código da UF do Emitente diverge da UF autorizadora WS H02
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
242 Rejeição: Elemento mdfeCabecMsg inexistente no SOAP Header WS C01
243 Rejeição: XML Mal Formado WS B02
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
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 H04
593 Rejeição: Chave de acesso inválida (Mês = 0 ou Mês > 12) WS H05
594 Rejeição: Chave de acesso inválida (CNPJ zerado ou digito inválido) WS H06
595 Rejeição: Chave de acesso inválida (modelo diferente de 58) WS H07
596 Rejeição: Chave de acesso inválida (numero MDFe = 0) WS H08
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 H11


Tratamento de Erro:

Caso ocorra algum erro na chamada do WS (5001-6209) 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 da Consulta o situação de um MDF-e

 
<?xml version="1.0" encoding="UTF-8"?>
<consSitMDFe xmlns="http://www.portalfiscal.inf.br/mdfe" versao="1.00">
  <tpAmb>2</tpAmb>
  <xServ>CONSULTAR</xServ>
  <chMDFe>35121010142785000190580010000000011491283029</chMDFe>
</consSitMDFe>

Exemplo de XML da resposta: 100 - Autorizado o uso do MDF-e

 
<retConsSitMDFe xmlns="http://www.portalfiscal.inf.br/mdfe" versao="1.00">
  <tpAmb>2</tpAmb>
  <verAplic>RS20120203153602</verAplic>
  <cStat>100</cStat>
  <xMotivo>Autorizado o uso do MDF-e</xMotivo>
  <cUF>35</cUF>
  <protMDFe versao="1.00" xmlns="http://www.portalfiscal.inf.br/mdfe">
    <infProt Id="MDFe935120000000020">
      <tpAmb>2</tpAmb>
      <verAplic>RS20121001094405</verAplic>
      <chMDFe>35121010142785000190580010000000011491283029</chMDFe>
      <dhRecbto>2012-10-01T15:03:57</dhRecbto>
      <nProt>935120000000020</nProt>
      <digVal>tl8XoXHE+pMJ5hCZUl3PshBCQrc=</digVal>
      <cStat>100</cStat>
      <xMotivo>Autorizado o uso do MDF-e</xMotivo>
    </infProt>
  </protMDFe>
</retConsSitMDFe>

Exemplo de XML da resposta: 101 - Cancelamento de MDF-e homologado

<retConsSitMDFe xmlns="http://www.portalfiscal.inf.br/mdfe" versao="1.00">
  <tpAmb>2</tpAmb>
  <verAplic>RS20120203153602</verAplic>
  <cStat>101</cStat>
  <xMotivo>Cancelamento de MDF-e homologado</xMotivo>
  <cUF>35</cUF>
  <protMDFe versao="1.00" xmlns="http://www.portalfiscal.inf.br/mdfe">
    <infProt Id="MDFe935120000000021">
      <tpAmb>2</tpAmb>
      <verAplic>RS20121001094405</verAplic>
      <chMDFe>35121010142785000190580010000000021491283026</chMDFe>
      <dhRecbto>2012-10-06T20:26:17</dhRecbto>
      <nProt>935120000000021</nProt>
      <digVal>4jS69q9fSMW7Cmdd3oNGIXZZkNE=</digVal>
      <cStat>100</cStat>
      <xMotivo>Autorizado o uso do MDF-e</xMotivo>
    </infProt>
  </protMDFe>
  <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>
</retConsSitMDFe>

Exemplo de XML da resposta: 132 - Encerramento de MDF-e homologado

<retConsSitMDFe xmlns="http://www.portalfiscal.inf.br/mdfe" versao="1.00">
  <tpAmb>2</tpAmb>
  <verAplic>RS20120203153602</verAplic>
  <cStat>132</cStat>
  <xMotivo>Encerramento de MDF-e homologado</xMotivo>
  <cUF>35</cUF>
  <protMDFe versao="1.00" xmlns="http://www.portalfiscal.inf.br/mdfe">
    <infProt Id="MDFe935120000000020">
      <tpAmb>2</tpAmb>
      <verAplic>RS20121001094405</verAplic>
      <chMDFe>35121010142785000190580010000000011491283029</chMDFe>
      <dhRecbto>2012-10-01T15:03:57</dhRecbto>
      <nProt>935120000000020</nProt>
      <digVal>tl8XoXHE+pMJ5hCZUl3PshBCQrc=</digVal>
      <cStat>100</cStat>
      <xMotivo>Autorizado o uso do MDF-e</xMotivo>
    </infProt>
  </protMDFe>
  <procEventoMDFe versao="1.00" xmlns="http://www.portalfiscal.inf.br/mdfe">
    <eventoMDFe xmlns="http://www.portalfiscal.inf.br/mdfe" versao="1.00">
      <infEvento Id="ID1101123512101014278500019058001000000001149128302901">
        <cOrgao>35</cOrgao>
        <tpAmb>2</tpAmb>
        <CNPJ>10142785000190</CNPJ>
        <chMDFe>35121010142785000190580010000000011491283029</chMDFe>
        <dhEvento>2012-10-07T03:20:28</dhEvento>
        <tpEvento>110112</tpEvento>
        <nSeqEvento>1</nSeqEvento>
        <detEvento versaoEvento="1.00">
          <evEncMDFe>
            <descEvento>Encerramento</descEvento>
            <nProt>935120000000020</nProt>
            <dtEnc>2012-10-07</dtEnc>
            <cUF>43</cUF>
            <cMun>4314902</cMun>
          </evEncMDFe>
        </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="#ID1101123512101014278500019058001000000001149128302901">
            <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>adrwO1ItqeEpMsPgDJakFIklq+E=</DigestValue>
          </Reference>
        </SignedInfo>
        <SignatureValue>Ck4Er17njiJYm49YQb2BSD(...)J6CFTekhOlBT0MOKk08Hk6Tno+WiIA=</SignatureValue>
        <KeyInfo>
          <X509Data>
            <X509Certificate>MIIFtDCCBJygAwIBA(...)xkHNUQBimd6HAhA0oDjO/oaDeEC</X509Certificate>
          </X509Data>
        </KeyInfo>
      </Signature>
    </eventoMDFe>
    <retEventoMDFe xmlns="http://www.portalfiscal.inf.br/mdfe" versao="1.00">
      <infEvento Id="ID935120000000023">
        <tpAmb>2</tpAmb>
        <verAplic>RS20120720150954</verAplic>
        <cOrgao>35</cOrgao>
        <cStat>135</cStat>
        <xMotivo>Evento registrado e vinculado ao MDF-e</xMotivo>
        <chMDFe>35121010142785000190580010000000011491283029</chMDFe>
        <tpEvento>110112</tpEvento>
        <xEvento>Encerramento</xEvento>
        <nSeqEvento>1</nSeqEvento>
        <dhRegEvento>2012-10-07T18:20:45</dhRegEvento>
        <nProt>935120000000023</nProt>
      </infEvento>
    </retEventoMDFe>
  </procEventoMDFe>
</retConsSitMDFe>

Importante

O trecho do XML foi formatado para uma melhor visualização, a mensagem original não tem formatação.

Vale observar que a formatação pode corromper a assinatura digital, além de ocupar espaço e sendo desnecessária, pois os browser exibem formatado.

Exemplos de uso:

Visual Basic 6.0

 
' EM BREVE
4.6. ConsultaMDFe
4. Web Service do MDF-e 07-09-18
« Anterior
4.5. EncerraMDFe 07-09-18
Próximo »
4.7. ConsultaStatus