- 14.1. Identificação do GTV-e
14.1.1. Tomador de Serviço da GTV-e - 14.1. Identificação do GTV-e
« Anterior - 14.2. Dados Complementares da GTV-e
Próximo »
14.1.1. Tomador de Serviço da GTV-e
Funcionalidade para gerar o XML do grupo do Tomador de Serviço da GTV-e
Assinatura
string tomadorGVTe(int toma, string CNPJ, string CPF, string IE_Opc, string xNome, string xFant_Opc, string fone_Opc, string xLgr, string nro, string xCpl_Opc, string xBairro, string cMun, string xMun, string CEP_Opc, string UF, string cPais_Opc, string xPais_Opc, string email_Opc)
Descrição:
Funcionalidade para gerar o XML do grupo do Tomador de Serviço CT-e.
Os dados cadastrais do tomador só serão informados quando o tomador do serviço for diferente de: 0-Remetente; 1-Destinatário.
O PAPEL DO TOMADOR
O Tomador do serviço é aquele que contrata a prestação de serviços de transporte do transportador e deve receber o XML do CT-e ou o DACTE.
Parâmetros:
nome | tipo | tam. | obrig. | descrição |
---|---|---|---|---|
toma | int | 1 | sim | Tomador de Serviço, informar: 0-Remetente, 1-Destinatário ou 2 ou 4-Outros. Obs.: Os dados cadastrais do tomador só serão informados quando o tomador for 4-Outros, nos demais casos serão utilizados os dados cadastrais já informados no respectivo grupo. |
CNPJ | string | 14 | sim | informar o CNPJ do tomador, sem formatação ou máscara. Em caso de empresa não estabelecida no Brasil, será informado o CNPJ com zeros. Informar os zeros não significativos. |
CPF | string | 11 | sim | informar o CPF do tomador, sem formatação ou máscara. |
IE_Opc | string | 0-14 | sim | informar a IE do tomador, sem formatação ou máscara. |
xNome | string | 2-60 | sim | informar a razão social do tomador. |
xFant_Opc | string | 1-60 | não | informar o nome fantasia do tomador, pode ser omitido. |
fone_Opc | string | 6-14 | sim | informar o telefone do tomador. |
xLgr | string | 2-60 | sim | informar o logradouro do tomador. |
nro | string | 2-60 | sim | informar o número do endereço do tomador, campo obrigatório. Informar S/N ou . (ponto) ou - (traço) para evitar falha de schema XML quando não houver número. |
xCpl_Opc | string | 1-60 | não | informar o complemento do endereço do tomador, pode ser omitido. |
xBairro | string | 2-60 | sim | informar o bairro do endereço do tomador. |
cMun | string | 7 | sim | informar o código do município na codificação do IBGE com 7 dígitos. |
xMun | string | 2-60 | sim | informar o nome do município. |
CEP_Opc | string | 8 | não | informar o CEP, pode ser omitido. |
UF | string | 2 | sim | informar a sigla da UF. |
cPais_Opc | string | 4 | não | informar o código do pais na codificação do BACEN, se informado deve ser 1058. |
xPais_Opc | string | 6 | não | informar o nome do país, se informado deve ser Brasil ou BRASIL. |
email_Opc | string | 1-60 | não | informar o email do tomador. |
Diagrama:
Retorno:
Um string com o grupo XML do tomador
Histórico de atualização:
- ago/2020 - versão inicial.
XML:
Exemplo de XML para tomador = 0-Remetente
<toma> <toma>0</toma> <toma>
Exemplo de XML para tomador = 1-Destinatário
<toma> <toma>1</toma> <toma>
Exemplo de XML para tomador = 4-Outros
<tomaTerceiro> <toma>4</toma> <CNPJ>99999999000191</CNPJ> <IE>123456789011</IE> <xNome>DIAS e DIAS TENTANDO S/A</xNome> <xFant>DDT</xFant> <fone>1133221234</fone> <enderToma> <xLgr>AV PRINCIPAL</xLgr> <nro>S/N</nro> <xCpl>10 andar</xCpl> <xBairro>CENTRO</xBairro> <cMun>3550308</cMun> <xMun>SAO PAULO</xMun> <CEP>01300000</CEP> <UF>SP</UF> <cPais>1058</cPais> <xPais>Brasil</xPais> </enderToma> <email>fulano@dominio.com.br</email> </tomaTerceiro>
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
' '====== Dados do Dim identificação do Tomador de Serviço========== ' Dim toma As String Dim toma_toma As Long Dim toma_CNPJ As String Dim toma_CPF As String Dim toma_IE_Opc As String Dim toma_xNome As String Dim toma_xFant_Opc As String Dim toma_fone_Opc As String Dim toma_xLgr As String Dim toma_nro As String Dim toma_xCpl_Opc As String Dim toma_xBairro As String Dim toma_cMun As String Dim toma_xMun As String Dim toma_CEP_Opc As String Dim toma_UF As String Dim toma_cPais_Opc As String Dim toma_xPais_Opc As String Dim toma_email_Opc 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 objCTeUtil As Object Set objCTeUtil = CreateObject("CTe_Util.Util") ' ' criação dos grupos ' '===================grupo de identificação do Tomador de Serviço======================= ' '' toma_toma = 0 ' Tomador do Serviço (0 - Remetente; 1 - Destinatário, 2/4 - Outros) ' ' Os dados cadastrais do tomador 0, 1 ou 4 serão ignoradas pela DLL ' ' toma_CNPJ = "" ' CNPJ do tomador sem máscara de formatação toma_CPF = "" ' CPF do tomador sem máscara de formatação toma_IE_Opc = "" ' Inscrição Estadual do tomador sem máscara toma_xNome = "" ' Razão social do tomador, evitar caracteres acentuados e & toma_xFant_Opc = "" ' Nome fantasia toma_fone_Opc = "" ' número do telefone sem máscara toma_xLgr = "" ' logradouro toma_nro = "" ' número, informar S/N quano inexistente para erro de Schema XML toma_xCpl_Opc = "" ' complemento do endereço, o conteúdo pode ser omitido toma_xBairro = "" ' bairro toma_cMun = "" ' código do município, deve ser compatível com a UF toma_xMun = "" ' nome do município toma_CEP_Opc = "" ' CEP - sem máscara toma_UF = "SP" ' sigla da UF toma_cPais_Opc = "" ' código do pais - deve fixo em 1058 - Brasil toma_xPais_Opc = "" ' nome do pais (Brasil ou BRASIL) toma_email_Opc = "" ' email do tomador ' toma = objCTeUtil.tomadorGTVe(toma_toma, toma_CNPJ, toma_CPF, toma_IE_Opc, toma_xNome, toma_xFant_Opc, toma_fone_Opc, toma_xLgr, toma_nro, toma_xCpl_Opc, toma_xBairro, toma_cMun, toma_xMun, toma_CEP_Opc, toma_UF, toma_cPais_Opc, toma_xPais_Opc, toma_email_Opc) MsgBox "Grupo do Tomador de Serviço " + chr(13) + toma, vbInformation, "Resultado"
' '====== Dados do Dim identificação do Tomador de Serviço========== ' Dim toma As String Dim toma_toma As Long Dim toma_CNPJ As String Dim toma_CPF As String Dim toma_IE_Opc As String Dim toma_xNome As String Dim toma_xFant_Opc As String Dim toma_fone_Opc As String Dim toma_xLgr As String Dim toma_nro As String Dim toma_xCpl_Opc As String Dim toma_xBairro As String Dim toma_cMun As String Dim toma_xMun As String Dim toma_CEP_Opc As String Dim toma_UF As String Dim toma_cPais_Opc As String Dim toma_xPais_Opc As String Dim toma_email_Opc 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 objCTeUtil As Object Set objCTeUtil = CreateObject("CTe_Util.Util") ' ' criação dos grupos ' '===================grupo de identificação do Tomador de Serviço======================= ' '' toma_toma = 4 ' Tomador do Serviço (0 - Remetente; 1 - - Destinatário, 2/4 - Outros) ' ' Os dados cadastrais do tomador só devem ser informaods quando tomador = 4-Outros ' ' toma_CNPJ = "99999999000191" ' CNPJ do tomador sem máscara de formatação toma_CPF = "" ' CPF do tomador sem máscara de formatação toma_IE_Opc = "123456789011" ' Inscrição Estadual do tomador sem máscara toma_xNome = "DIAS e DIAS TENTANDO S/A" ' Razão social do tomador, evitar caracteres acentuados e & toma_xFant_Opc = "DDT" ' Nome fantasia toma_fone_Opc = "1133221234" ' número do telefone sem máscara toma_xLgr = "AV PRINCIPAL" ' logradouro toma_nro = "S/N" ' número, informar S/N quano inexistente para erro de Schema XML toma_xCpl_Opc = "10 andar" ' complemento do endereço, o conteúdo pode ser omitido toma_xBairro = "CENTRO" ' bairro toma_cMun = "3550308" ' código do município, deve ser compatível com a UF toma_xMun = "SAO PAULO" ' nome do município toma_CEP_Opc = "01300000" ' CEP - sem máscara toma_UF = "SP" ' sigla da UF toma_cPais_Opc = "1058" ' código do pais - deve fixo em 1058 - Brasil toma_xPais_Opc = "Brasil" ' nome do pais (Brasil ou BRASIL) toma_email_Opc = "fulano@dominio.com.br" ' email do tomador ' toma = objCTeUtil.tomadorGTVe(toma_toma, toma_CNPJ, toma_CPF, toma_IE_Opc, toma_xNome, toma_xFant_Opc, toma_fone_Opc, toma_xLgr, toma_nro, toma_xCpl_Opc, toma_xBairro, toma_cMun, toma_xMun, toma_CEP_Opc, toma_UF, toma_cPais_Opc, toma_xPais_Opc, toma_email_Opc) MsgBox "Grupo do Tomador de Serviço " + Chr(13) + toma, vbInformation, "Resultado"
- 14.1.1. Tomador de Serviço da GTV-e
14.1. Identificação do GTV-e - « Anterior
14.1. Identificação do GTV-e - Próximo »
14.2. Dados Complementares da GTV-e