4. Web Service do MDF-e 07-09-18
4.1. EnviaMDFe 07-09-18
4. Web Service do MDF-e 07-09-18
« Anterior
4.2. BuscaMDFe
Próximo »

4.1. EnviaMDFe 07-09-18

Envia Lote 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 EnviaMDFe(string siglaWS, string nomeCertificado, string versao, string MDFe, out string msgDados, out string msgRetWS, out integer cStat, out string msgResultado, out string nRec, out string dhRecbto, out string tMed, string proxy, string usuario, string senha, string licenca)

Descrição:

Funcionalidade para envio de MDF-e para a SEFAZ.

PONTOS DE ATENÇÃO

Envio de um único MDF-e

O lote de MDF-e só aceita um MDF-e.

tipoAmbiente

A DLL utiliza o valor informado na tag tpAmb do MDF-e.

Processo Assíncrono

A recepção do lote pela SEFAZ e a devolução do número do recibo do lote não significa que os MDF-e foram autorizados. É necessário consultar o resultado do processamento do lote enviado através da funcionalidade BuscaMDFe, além de processar a mensagem do WS para verificar se o MDF-e foi autorizado ou rejeitado.

Preenchimento do nomeCertificado

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

Parâmetros da chamada:

nome tipo fluxo descrição
siglaWS string entrada informar "RS"
nomeCertificado string entrada informar nome do titular do certificado a ser utilizado na conexão SSL com o WS e na assinatura digital do MDF-e:
É 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 XML: "1.00" ou "3.00"
MDFe string entrada informar a string com o MDF-e neste parâmetro. o MDF-e não deve estar assinado, pois a DLL realiza a assinatura do MDF-e e monta o lote de MDF-e
msgDados string saída retorna a mensagem XML enviada para o WS.
msgRetWS string saída retorna a mensagem XML de resposta do WS
cStat int saída retorna o código do resultado do envio do MDF-e, veja tabela de códigos de retorno que existe adiante.
msgResultado string saída retorna a literal do resultado da chamada do WS
nRec string saída retorna o número do recibo de entrega, este número será necessário para consultar o resultado do processamento do lote de MDF-e na funcionalidade BuscaMDFe
dhRecibo string saída retorna data e hora da recebimento do lote de MDF-e no formato AAAA-MM-DDTHH:HH:MM
tMed string saída retorna o tempo médio de resposta em segundos do serviço nos últimos 5 minutos, em tese, pode ser utilizado para definir o tempo de espera para consultar o resultado do processamento do lote.
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 da chamada:

A chamada EnviaMDFe devolve o XML do MDFe assinado.

O resultado da chamada do EnviaMDFe é devolvido no parâmetro cStat e tem 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 -
6301 Erro: O parâmetro versao não foi informado DLL -
6302 Erro: O conteúdo do parâmetro versao informado é inválido: [valor informado], a DLL espera: [valor esperado]" DLL -
6303 Erro: O nome do titular do certificado deve ser informado DLL -
6304 Erro: O parâmetro siglaWS deve ser informado DLL -
6305 Erro: O MDF-e a ser enviado não deve estar assinado, pois o MDF-e será assinada pela DLL DLL -
6306 Erro: Falha não tratada, informe a mensagem de erro exata para o suporte, MENSAGEM DE ERRO: [mensagem do ERRO DO WINDOWS] 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 -
7004 Erro: A tag infMDFe não foi localizada no lote, validação da licença prejudicada [Identificação da versão da DLL em uso] DLL -
7005 Erro: Atributo Id não localizada na tag infMDFe, validação da licença prejudicada [Identificação da versão da DLL em uso] DLL -
7006 Erro: Atributo Id: [conteúdo do atributo ID] da tag infMDFe não iniciada com a literal MDFe, validação da licença prejudicada. [Identificação da versão da DLL em uso] DLL -
7007 Erro: O Tamanho [tamanho] do Atributo Id [conteúdo do atributo ID] da tag infMDFe diferente de 48, validação da licença prejudicada. [Identificação da versão da DLL em uso] DLL -
103 lote recebido com sucesso 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
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
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
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


Tratamento de Erro:

Caso ocorra algum erro na chamada do WS (5001-7007) 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:

XML de Exemplo de MDF-e sem assinatura digital

<?xml version="1.0" encoding="UTF-8"?>
<MDFe xmlns="http://www.portalfiscal.inf.br/mdfe">
<infMDFe versao="1.00" Id="MDFe35140210142785000190580010000000021491283024">
  <ide>
    <cUF>35</cUF>
    <tpAmb>2</tpAmb>
    <tpEmit>2</tpEmit>
    <mod>58</mod>
    <serie>1</serie>
    <nMDF>2</nMDF>
    <cMDF>49128302</cMDF>
    <cDV>4</cDV>
    <modal>1</modal>
    <dhEmi>2014-02-03T02:19:28</dhEmi>
    <tpEmis>1</tpEmis>
    <procEmi>0</procEmi>
    <verProc>DLL_MDFe.Util v_1.00</verProc>
    <UFIni>SP</UFIni>
    <UFFim>SC</UFFim>
    <infMunCarrega>
      <cMunCarrega>3550308</cMunCarrega>
      <xMunCarrega>Sao Paulo</xMunCarrega>
    </infMunCarrega>
  </ide>
  <emit>
    <CNPJ>10142785000190</CNPJ>
    <IE>495171423115</IE>
    <xNome>MRM KATO ASAKURA EPP</xNome>
    <xFant>FlexDocs Documentos Eletronicos</xFant>
    <enderEmit>
      <xLgr>Avenida Doutor Altino Arantes</xLgr>
      <nro>131</nro>
      <xCpl>14 andar - sala 145</xCpl>
      <xBairro>Centro</xBairro>
      <cMun>3534708</cMun>
      <xMun>Ourinhos</xMun>
      <CEP>19900030</CEP>
      <UF>SP</UF>
      <fone>1433022000</fone>
      <email>contato@flexdocs.com.br</email>
    </enderEmit>
  </emit>
  <infModal versaoModal="1.00">
    <rodo xmlns="http://www.portalfiscal.inf.br/mdfe">
      <RNTRC>22334455</RNTRC>
      <CIOT>111222333444</CIOT>
      <veicTracao>
        <cInt>3010</cInt>
        <placa>BBB1111</placa>
        <tara>15000</tara>
        <condutor>
          <xNome>Fulano de Tal motorista</xNome>
          <CPF>11111111111</CPF>
        </condutor>
        <condutor>
          <xNome>Beltrano de Tal motorista</xNome>
          <CPF>22222222222</CPF>
        </condutor>
        <condutor>
          <xNome>Sicrano de Tal motorista</xNome>
          <CPF>33333333333</CPF>
        </condutor>
        <tpRod>01</tpRod>
        <tpCar>00</tpCar>
        <UF>SP</UF>
      </veicTracao>
      <veicReboque>
        <cInt>3011</cInt>
        <placa>ABC1000</placa>
        <tara>30000</tara>
        <capKG>20000</capKG>
        <capM3>60</capM3>
        <prop>
          <CNPJ>99999999000191</CNPJ>
          <RNTRC>10581234</RNTRC>
          <xNome>DIAS e DIAS TENTANDO S/A</xNome>
          <IE>123456789011</IE>
          <UF>SP</UF>
          <tpProp>1</tpProp>
        </prop>
        <tpCar>01</tpCar>
        <UF>SC</UF>
      </veicReboque>
      <valePed>
        <disp>
          <CNPJForn>00000000000191</CNPJForn>
          <CNPJPg>00000000000272</CNPJPg>
          <nCompra>20120123</nCompra>
        </disp>
        <disp>
          <CNPJForn>00000000000353</CNPJForn>
          <nCompra>012345</nCompra>
        </disp>
      </valePed>
    </rodo>
  </infModal>
  <infDoc>
    <infMunDescarga>
      <cMunDescarga>4205407</cMunDescarga>
      <xMunDescarga>Florianopolis</xMunDescarga>
      <infNFe>
        <chNFe>35140210142785000190550001234567891876543210</chNFe>
      </infNFe>
      <infNFe>
        <chNFe>35140210142785000190550001234567901876543211</chNFe>
      </infNFe>
    </infMunDescarga>
  </infDoc>
  <tot>
    <qCTe>4</qCTe>
    <qCT>5</qCT>
    <qNFe>3</qNFe>
    <qNF>10</qNF>
    <vCarga>15000.00</vCarga>
    <cUnid>01</cUnid>
    <qCarga>12300</qCarga>
  </tot>
  <lacres>
    <nLacre>AKUX10019KX</nLacre>
  </lacres>
  <lacres>
    <nLacre>AKUX10020KX</nLacre>
  </lacres>
  <lacres>
    <nLacre>AKUX10021KX</nLacre>
  </lacres>
  <lacres>
    <nLacre>AKUX10020KX</nLacre>
  </lacres>
  <infAdic>
    <infAdFisco>Informacoes de Adcionais do Fisco. Operacao nao tributada.</infAdFisco>
    <infCpl>Teste de geracao do XML do MDF-e.</infCpl>
  </infAdic>
</infMDFe>
</MDFe>

XML de Exemplo de Lote de MDF-e enviado para o WS

<?xml version="1.0" encoding="UTF-8"?>
<enviMDFe xmlns="http://www.portalfiscal.inf.br/mdfe" versao="1.00">
  <idLote>001000000002</idLote>
  <MDFe xmlns="http://www.portalfiscal.inf.br/mdfe">
    <infMDFe versao="1.00" Id="MDFe35140210142785000190580010000000021491283024">
      <ide>
        <cUF>35</cUF>
        <tpAmb>2</tpAmb>
        <tpEmit>2</tpEmit>
        <mod>58</mod>
        <serie>1</serie>
        <nMDF>2</nMDF>
        <cMDF>49128302</cMDF>
        <cDV>4</cDV>
        <modal>1</modal>
        <dhEmi>2014-02-03T02:19:28</dhEmi>
        <tpEmis>1</tpEmis>
        <procEmi>0</procEmi>
        <verProc>DLL_MDFe.Util v_1.00</verProc>
        <UFIni>SP</UFIni>
        <UFFim>SC</UFFim>
        <infMunCarrega>
          <cMunCarrega>3550308</cMunCarrega>
          <xMunCarrega>Sao Paulo</xMunCarrega>
        </infMunCarrega>
      </ide>
      <emit>
        <CNPJ>10142785000190</CNPJ>
        <IE>495171423115</IE>
        <xNome>MRM KATO ASAKURA EPP</xNome>
        <xFant>FlexDocs Documentos Eletronicos</xFant>
        <enderEmit>
          <xLgr>Avenida Doutor Altino Arantes</xLgr>
          <nro>131</nro>
          <xCpl>14 andar - sala 145</xCpl>
          <xBairro>Centro</xBairro>
          <cMun>3534708</cMun>
          <xMun>Ourinhos</xMun>
          <CEP>19900030</CEP>
          <UF>SP</UF>
          <fone>1433022000</fone>
          <email>contato@flexdocs.com.br</email>
        </enderEmit>
      </emit>
      <infModal versaoModal="1.00">
        <rodo xmlns="http://www.portalfiscal.inf.br/mdfe">
          <RNTRC>22334455</RNTRC>
          <CIOT>111222333444</CIOT>
          <veicTracao>
            <cInt>3010</cInt>
            <placa>BBB1111</placa>
            <tara>15000</tara>
            <condutor>
              <xNome>Fulano de Tal motorista</xNome>
              <CPF>11111111111</CPF>
            </condutor>
            <condutor>
              <xNome>Beltrano de Tal motorista</xNome>
              <CPF>22222222222</CPF>
            </condutor>
            <condutor>
              <xNome>Sicrano de Tal motorista</xNome>
              <CPF>33333333333</CPF>
            </condutor>
            <tpRod>01</tpRod>
            <tpCar>00</tpCar>
            <UF>SP</UF>
          </veicTracao>
          <veicReboque>
            <cInt>3011</cInt>
            <placa>ABC1000</placa>
            <tara>30000</tara>
            <capKG>20000</capKG>
            <capM3>60</capM3>
            <prop>
              <CNPJ>99999999000191</CNPJ>
              <RNTRC>10581234</RNTRC>
              <xNome>DIAS e DIAS TENTANDO S/A</xNome>
              <IE>123456789011</IE>
              <UF>SP</UF>
              <tpProp>1</tpProp>
            </prop>
            <tpCar>01</tpCar>
            <UF>SC</UF>
          </veicReboque>
          <valePed>
            <disp>
              <CNPJForn>00000000000191</CNPJForn>
              <CNPJPg>00000000000272</CNPJPg>
              <nCompra>20120123</nCompra>
            </disp>
            <disp>
              <CNPJForn>00000000000353</CNPJForn>
              <nCompra>012345</nCompra>
            </disp>
          </valePed>
        </rodo>
      </infModal>
      <infDoc>
        <infMunDescarga>
          <cMunDescarga>4205407</cMunDescarga>
          <xMunDescarga>Florianopolis</xMunDescarga>
          <infNFe>
            <chNFe>35140210142785000190550001234567891876543210</chNFe>
          </infNFe>
          <infNFe>
            <chNFe>35140210142785000190550001234567901876543211</chNFe>
          </infNFe>
        </infMunDescarga>
      </infDoc>
      <tot>
        <qCTe>4</qCTe>
        <qCT>5</qCT>
        <qNFe>3</qNFe>
        <qNF>10</qNF>
        <vCarga>15000.00</vCarga>
        <cUnid>01</cUnid>
        <qCarga>12300</qCarga>
      </tot>
      <lacres>
        <nLacre>AKUX10019KX</nLacre>
      </lacres>
      <lacres>
        <nLacre>AKUX10020KX</nLacre>
      </lacres>
      <lacres>
        <nLacre>AKUX10021KX</nLacre>
      </lacres>
      <lacres>
        <nLacre>AKUX10020KX</nLacre>
      </lacres>
      <infAdic>
        <infAdFisco>Informacoes de Adcionais do Fisco. Operacao nao tributada.</infAdFisco>
        <infCpl>Teste de geracao do XML do MDF-e.</infCpl>
      </infAdic>
    </infMDFe>
    <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="#MDFe35140210142785000190580010000000021491283024">
          <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>BZxyRnX5vPY+odncabytmfWuKkg=</DigestValue>
        </Reference>
      </SignedInfo>
      <SignatureValue>OUTXNyJW2MHmAuuWDEPxn/9OgP8YcC(...)mdr13Owo95Yh7JLo53P9jMA==</SignatureValue>
      <KeyInfo>
        <X509Data>
          <X509Certificate>MIIHHjCCBQagAwIBAgIIXkz0Bw(...)lv4KbnNflruEKhUZGwM75wko=</X509Certificate>
        </X509Data>
      </KeyInfo>
    </Signature>
  </MDFe>
</enviMDFe>

XML de Exemplo de XML de retorno do Envio de Lote

<retEnviMDFe xmlns="http://www.portalfiscal.inf.br/mdfe" versao="1.00">
  <tpAmb>2</tpAmb>
  <cUF>35</cUF>
  <verAplic>RS20130821113405</verAplic>
  <cStat>103</cStat>
  <xMotivo>Arquivo recebido com sucesso</xMotivo>
  <infRec>
    <nRec>359000000560919</nRec>
    <dhRecbto>2014-02-03T02:40:05</dhRecbto>
    <tMed>1</tMed>
  </infRec>
</retEnviMDFe>

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 ser desnecessária, pois os browser exibem formatado.

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
nomeCertificado = "" ' informar o certificado digital
versao = ""          ' informar a versao do leiaute, ex.: "1.00"
MDFe = ""            ' informar o XML do MDFe
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
nRec = ""            ' retorna o número do recibo do lote atribuído ao lote pela SEFAZ, este será utilizado para consultar o resultado do processamento do lote
dhRecbto = ""        ' retorna a data e hora de recebimento do lote pela SEFAZ
tMed = ""            ' retorna o tempo médio de resposta do serviço em segundos dos últimos 5 minutos
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
MDFeAssinado = ""    ' para receber o XML do MDFe assinado em caso de envio com sucesso = cStat=103

' carga / atribuição de valores para os parâmetros

siglaWS = "RS"                                           'Informar a sigla WS de envio
nomeCertificado = "CN=M R M KATO ASAKURA EIRELI EPP:69621187915, OU=AC CAIXA PJ v2, OU=Caixa Economica Federal, O=ICP-Brasil, C=BR"
 
' importante: indicar aqui assunto do certificado digital válido
'
' 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

versao = "1.00"                                        'informar a versão da mensagem XML: "1.00"

MDFe = ""                  ' informar o XML do MDFe, se for um arquivo é necessário carregar o XML no parâmetro, exemplo

Dim nomeArquivo As String  ' nome do arquivo que contem o MDFe
'
nomeArquivo = "c:\MDFeSemAssinatura.xml"
 
' importante: verificar a existência do arquivo solicitado e indicar o caminho correto para ele
'
'  Carrega o conteúdo do nome do arquivo em MDFe
'
Open nomeArquivo For Input As #1
MDFe = Input$(LOF(1), 1)
Close #1
'

Dim objMDFeUtil As Object
 
Set objMDFeUtil = CreateObject("MDFe_Util.Util")
 
'
'
Screen.MousePointer = vbHourglass    ' ampulheta
'
MDFeAssinado = objMDFeUtil.EnviaMDFe(siglaWS, _
                                     nomeCertificado, _
                                     versao, _
                                     MDFe, _
                                     msgDados, _
                                     msgRetWS, _
                                     cStat, _
                                     msgResultado, _
                                     nRec, _
                                     dhRecbto, _
                                     tMed, _
                                     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 Envio do MDFe"
'
' analisar o retorno da chamada, se cStat= 103, lote recepcionado pelo WS, gravar ou guardar o MDFeAssinado e fazer a busca do resultado do processamento, após 15 segundos.
'
' se cStat diferente de 103, houve algum problema na chamada, necessário analisar o cStat e tomar a medida adequada.
'
4.1. EnviaMDFe 07-09-18
4. Web Service do MDF-e 07-09-18
« Anterior
4. Web Service do MDF-e 07-09-18
Próximo »
4.2. BuscaMDFe