Funcionalidade para gerar o XML das informações do detalhe do pagamento da NF-e/NFC-e [detPag].
string detPag202006(string indPag_Opc, string tPag, string xPag_Opc, double vPag, string tpIntegra_Opc, string CNPJ_Opc, string tBand_Opc, string cAut_Opc)
Funcionalidade para gerar o XML das informações do detalhe do pagamento da NF-e/NFC-e, de acordo com a alteração do leiaute promovido pela NT 2020/006.
nome | tipo | tam. | obrig. | descrição |
---|---|---|---|---|
indPag_Opc | string | – | não | informar o indicador da forma de pagamento: 0 – pagamento à vista; 1 – pagamento à prazo. |
tPag | string | 2 | sim | informar o Meio de pagamento: 01=Dinheiro 02=Cheque 03=Cartão de Crédito 04=Cartão de Débito 05=Crédito Loja 10=Vale Alimentação 11=Vale Refeição 12=Vale Presente 13=Vale Combustível 15=Boleto Bancário 16=Depósito Bancário 17=Pagamento Instantâneo (PIX) 18=Transferência bancária, Carteira Digital 19=Programa de fidelidade, Cashback, Crédito Virtual 90=Sem Pagamento; 99=Outros. |
xPag_Opc | string | 2-60 | não | informar a descrição do meio de pagamento quando tPag for informado com 99 (campo novo) |
vPag | double | 15,2 | sim | informar o valor do Pagamento. |
tpIntegra_Opc | string | 1 | não | Tipo de Integração do processo de pagamento com o sistema de automação da empresa: 1=Pagamento integrado com o sistema de automação da empresa (Ex.: equipamento TEF, Comércio Eletrônico); 2= Pagamento não integrado com o sistema de automação da empresa (Ex.: equipamento POS) |
CNPJ_Opc | string | 14 | ? | Informar o CNPJ da instituição de pagamento, adquirente ou subadquirente. Caso o pagamento seja processado pelo intermediador da transação, informar o CNPJ deste. |
tBand_Opc | string | 2 | ? | informar a Bandeira da operadora de cartão de crédito e/ou débito : 01=Visa 02=Mastercard 03=American Express 04=Sorocred 99=Outros. |
cAut_Opc | string | 1-20 | ? | Identifica o número da autorização da transação da operação com cartão de crédito e/ou débito. |
Os campos com contorno tracejado podem ser omitidos se a operação não exigir a informação.
Os campos em verde são tags novas ou tags que sofreram alteração na definição do leiaute.
Um string com o grupo XML de pagamento da NF-e/NFC-e
Exemplo de pagamento com informações do cartão de crédito
<detPag>
<tPag>03</tPag>
<vPag>100.00</vPag>
<card>
<tpIntegra>1</tpIntegra>
<CNPJ>12345678000123</CNPJ>
<tBand>01</tBand>
<cAut>12345</cAut>
</card>
</detPag>
Exemplo sem informações do cartão de crédito/débito
<pag>
<tPag>03</tPag>
<vPag>100.00</vPag>
</pag>
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.
Visual Basic 6.0
Exemplo de pagamento com informações do cartão de crédito
' inicializar variáveis
'...............................................
Dim objNFeUtil As Object
Set objNFeUtil = CreateObject("NFe_Util_2G.Util")
detPagto = ""
pagto_indPag_Opc = ""
pagto_tPag = "03"
pagto_xPag_Opc = ""
pagto_vPag_Opc = 100
pagto_CNPJ_Opc = "12345678000123"
pagto_tBand_Opc = "01"
pagto_cAut_Opc = "12345"
tpIntegra_Opc = "1"
'
' gera grupo do total do detalhe do pagamento
'
detPagto = objNFeUtil.detPag(pagto_indPag_Opc, pagto_tPag, pagto_tPag_Opc, pagto_vPag_Opc, tpIntegra_Opc, pagto_CNPJ_Opc, pagto_tBand_Opc, pagto_cAut_Opc)
MsgBox pagto, vbInformation, "Informação"
Exemplo sem informações do cartão de crédito/débito
' inicializar variáveis
'...............................................
Dim objNFeUtil As Object
Set objNFeUtil = CreateObject("NFe_Util_2G.Util")
detPagto = ""
pagto_indPag_Opc = ""
pagto_tPag = "01"
pagto_xPag_Opc = ""
pagto_vPag_Opc = 100
pagto_CNPJ_Opc = ""
pagto_tBand_Opc = ""
pagto_cAut_Opc = ""
tpIntegra_Opc = ""
'
' gera grupo do detalhe do pagamento
'
detPagto = objNFeUtil.detPag(pagto_indPag_Opc, pagto_tPag, pagto_xPag_Opc, pagto_vPag_Opc, tpIntegra_Opc, pagto_CNPJ_Opc, pagto_tBand_Opc, pagto_cAut_Opc)
MsgBox pagto, vbInformation, "Informação"