3. Gerar o XML do MDF-e
3.13. QRCode 24-07-19
3.12. Responsável Técnico 2 24-07-19
« Anterior
3.14. Consolida MDF-e 25-02-20
Próximo »

3.13. QRCode 24-07-19

Funcionalidade para gerar QR code de consulta do MDF-e

Assinatura

string infMDFeSupl(string URL, string chaveMDFe, int tpAmb, string nomeCertificado, out string qrCode, out int resultado, out string msgResultado)

Descrição:

Funcionalidade para gerar o grupo de informações da URL de consulta do MDF-e. O indicador tpEmis da chave de acesso informada é utilizada para gerar o QRCode normal ou de contingência.

Parâmetros:

nome tipo tam. obrig. descrição
URL string - sim informar a URL de consulta do MDF-e, https://dfe-portal.svrs.rs.gov.br/mdfe/qrCode
chaveMDFe string 44 sim informar a chave de acesso da MDF-e
tpAmb int - sim informar o tipo Ambiente: 1 - produção / 2 - homologação
nomeCertificado string - entrada informar nome do titular do certificado a ser utilizado na 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".
qrCode string - não retorna a string do qrCode que deve ser gerado no DAMDFE
resultado int - saída retorna o código do resultado da geração do qrCode = 6200
msgResultado string - saída retorna a literal do resultado da geração do qrCode = 6200 - qrCode gerado com sucesso

Diagrama:

DiagramainfSup

Retorno:

Um string com o grupo XML do Grupo informações suplementares do MDF-e

XML:

Exemplo de XML - MDF-e emissão normal

<infMDFeSupl>
    <qrCodMDFe><![CDATA[https://dfe-portal.svrs.rs.gov.br/mdfe/qrCode?chMDFe=35190710142785000190580010000000071086438399&tpAmb=2]]></qrCodMDFe>
</infMDFeSupl>

Exemplo de XML - MDF-e emissão contingência

<infMDFeSupl>
    <qrCodMDFe><![CDATA[https://dfe-portal.svrs.rs.gov.br/mdfe/qrCode?chMDFe=35190710142785000190580010000000052299246164&tpAmb=2&sign=Q00cAqX6gZECRwVPrTOk3sOaBkLFuhP2EBQeEVhIhb+fkuzNJA431ODqMKgKdzHDD29DakVNuiXu9UDCGZvOdep5mJ61nsWlx7JQve9I1E3XTKosVGSr0GtdfPdAMJKGwyWgX270EeTm8FSGRUrGGJEqgxGtOvAfKbnMbFR17KyQMtSoxkzVGnqQn5Bwivilq/mKJSJNRPlyCIZQyG+pNoxo4pm1h0er0pAE1O0eS0v6UDvz/VqyO7NTTaG+1Xxl53qU64pK/AElNy6lLFUWAEtA0fI+zedb2DzPXQdBLiFvuNMXmU86ZzeTdyHA2iS+xYNOXZUdnOrXUjZBSNo4IQ==]]></qrCodMDFe>
</infMDFeSupl>

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.

Histórico de atualização:

Exemplos de uso:

Visual Basic 6.0

'
'======  Dados do Dim do Grupo de Corte de Voo ==========
'
Dim infMDFeSupl As String
Dim infMDFeSupl_URL As String
Dim infMDFeSupl_chaveMDFe As String
Dim infMDFeSupl_tpAmb As long
Dim infMDFeSupl_nomeCertificado As String
Dim infMDFeSupl_QRCode As String
 
Dim resultado As long
Dim msgResultado As String
 
'
'====== instancia DLL==================
'
'
' referenciando a DLL em late binding
' não é necessário fazer o reference da DLL
' o intelisense não funciona
'
Dim objMDFeUtil As Object
 
Set objMDFeUtil = CreateObject("MDFe_Util.Util")
 
'
'         criação dos grupos
'

infMDFeSupl_URL = "https://dfe-portal.svrs.rs.gov.br/mdfe/qrCode"
infMDFeSupl_chaveMDFe = "35190710142785000190580010000000071086438399"
infMDFeSupl_tpAmb = 2
infMDFeSupl_nomeCertificado = "CN=M R M KATO ASAKURA EIRELI:10142785000190, OU=AR SERASA, OU=RFB e-CNPJ A3, OU=Secretaria da Receita Federal do Brasil - RFB, O=ICP-Brasil, L=OURINHOS, S=SP, C=BR"
 
infMDFeSupl_QRCode =""
resultado = 0
msgResultado =""
 
'
infMDFeSupl = MDFeUtil.infMDFeSupl(infMDFeSupl_URL, infMDFeSupl_chaveMDFe, infMDFeSupl_tpAmb, infMDFeSupl_nomeCertificado, infMDFeSupl_qrCode, resultado, msgResultado)
 
MsgBox "grupo infMDFeSupl " + infMDFeSupl, vbInformation, "Resultado"
3.13. QRCode 24-07-19
3. Gerar o XML do MDF-e
« Anterior
3.12. Responsável Técnico 2 24-07-19
Próximo »
3.14. Consolida MDF-e 25-02-20