13. Gerar XML do CT-e OS - modelo 67
13.4. Tomador de Serviço do CT-e
13.3. Emitente do CT-e
« Anterior
13.5. Valores do Serviço
Próximo »

13.4. Tomador de Serviço do CT-e

Funcionalidade para gerar o XML do grupo do Tomador de Serviço do CT-e

Assinatura

string tomadorCTeOS(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.

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
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:

DiagramaTomador

Retorno:

Um string com o grupo XML do tomador

Histórico de atualização:

XML:

Exemplo de XML para tomador

<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>
</toma>

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=======================
'
'
' 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.tomadorCTeOS( 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"
13.4. Tomador de Serviço do CT-e
13. Gerar XML do CT-e OS - modelo 67
« Anterior
13.3. Emitente do CT-e
Próximo »
13.5. Valores do Serviço