13. Gerar XML do CT-e Simplificado
13.14. Consolida CT-e RT
13.13. QRCode
« Anterior
14. Gerar XML do CT-e OS
Próximo »

13.14. Consolida CT-e RT

Funcionalidade para consolidar a CT-e Simplificado.

Assinatura

string CTeSimpRT(string versao, string Id, string ide, string compl_Opc, string emit, string toma,string infCarga, string det, string infModal, string cobr_Opc, string infSub_Opc, string imp, double vTPrest, double vTRec, string autXML_Opc, string infRespTec_Opc, string infCTeSupl, double vTotDFe_Opc)

Descrição:

Funcionalidade para consolidar o CT-e Simplificado, é a última etapa da geração do CT-e e todos os fragmentos do CT-e devem ter sido criados.

Importante

Atualização necessária para atender os novos leiautes do CT-e, CT-e Simplificado e CT-e OS da NT 2025/001 - Reforma Tributária do Consumo

Vigência:

  • ambiente de homologação: até 28/07/2025
  • ambiente de produção: 06/10/2025

Versão da DLL requerida:

Parâmetros:

nome tipo tam. obrig. descrição
versao string 1-4 sim informar o "4.00"
Id string 44 sim informar a chave de acesso do CT-e, recomendamos o uso da funcionalidade criaChaveCTeNovo
ide string - sim informar o grupo ide, com as informações de Identificação do CT-e
compl_Opc string - sim informar o grupo compl, com as informações complementares do CT-e
emit string - sim informar o grupo emit, com as informações do Emitente do CT-e
toma string - sim informar o grupo toma com as informações do tomador do serviço.
infCarga string - sim informar o grupo infCarga, com as informações da carga.
det string - sim informar o grupo det, com as informações do detalhamento das Entregas / prestação.
infModal string - sim informar o grupo infModal, com as informações do específicas do modal.
cobr_Opc string - não informar o grupo de informação da cobrança do CT-e.
infSub_Opc string - não informar o grupo de informação do CT-e de Substituição
imp string - sim informar o grupo imp, com as informações do ICMS
vTPrest double - sim informar o valor total da prestação do CT-e Simplificado.
vTRec double - sim informar o valor total a receber do CT-e Simplificado.
autXML_Opc string - não informar o grupo autXML, com as informações dos autorizados a fazer o download do CT-e
infRespTec_Opc string - não informar o grupo infRespTec, com as informações do responsável técnico pelo desenvolvimento do sistema de emissão do DF-e
infCTeSupl string - sim informar o grupo infCTeSupl, com o QR-Code de consulta do CT-e.
vTotDFe_Opc double 13,2 não informar o Valor total do documento fiscal (vTPrest + total do IBS + total da CBS)
CAMPO NOVO
.

Diagrama:

DiagramaCTe

Dica

Os campos com contorno tracejado podem ser omitidos se a operação não exigir a informação.

Retorno:

Um string com o grupo XML do CT-e

Histórico de atualização:

XML:

Exemplo da estrutura básica do XML do CT-e simplificado

 
<?xml version="1.0" encoding="UTF-8"?>
<CTeSimp xmlns="http://www.portalfiscal.inf.br/cte">
  <infCte versao="4.00" Id="CTe12345678912345678912345678912345678912345678">
    <ide>...</ide>
    <compl>...</compl>
    <emit>...</emit>
    <toma>...</toma>
    <infCarga>...</infCarga>
    <det>...</det>
    <infModal>...</infModal>
    <cobr>...</cobr>
    <infCteSub>...</infCteSub>
    <imp>...</imp>
    <total>
      <vTPrest>100.00</vTPrest>
      <vTRec>0.00</vTRec>
      <vTotDFe>101.00</vTotDFe>
    </total>
    <autXML>...</autXML>
    <infRespTec>...</infRespTec>
  </infCte>
  <infCTeSupl>...</infCTeSupl>
</CTeSimp>

Exemplos de uso:

Visual Basic 6.0

'
'======  Dados do  Conhecimento de Transporte Eletrônico==========
'
Dim CTe As String
Dim CTe_versao As String
Dim CTe_Id As String
Dim CTe_ide As String
Dim CTe_compl_Opc As String
Dim CTe_emit As String
Dim CTe_toma As String
Dim CTe_infCarga As String
Dim CTe_det As String
Dim CTe_infModal As String
Dim CTe_cobr_Opc As String
Dim CTe_infSub_Opc As String
Dim CTe_imp As String
Dim CTe_vTPrest As Double
Dim CTe_vTRec As Double
Dim CTe_vTotDFe_Opc As Double
Dim CTe_autXML_Opc As String
Dim CTe_infRespTec_Opc As String
Dim CTe_infCTeSupl 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  Dados do  Conhecimento de Tranporte Eletrônico=======================
'
'

CTe_versao = "4.00"                                         ' Versão do leiaute (Ex: "4.00")
CTe_Id = "12345678912345678912345678912345678912345678"     ' Identificador da Tag a ser assinada
CTe_ide = "<ide>...</ide>"                                  ' Identificação do CT-e
CTe_compl_Opc = "<compl>...</compl>"                        ' Dados complementares do CT-e para fins operacionais ou comerciais
CTe_emit = "<emit>...</emit>"                               ' Identificação do Emitente do CT-e
CTe_toma = "<toma>...</toma>"                               ' Informações do Remetente das mercadorias transportadas pelo CT-e
CTe_infCarga = "<infCarga>...</infCarga>"                   ' Informações da Carga
CTe_det = "<det>...</det>"                                  ' Informações do detalhe da entrega/serviço
CTe_infModal = "<infModal>...</infModal>"                   ' Informações do Modal
CTe_cobr_Opc = "<cobr>...</cobr>"                           ' Informações da cobrança
CTe_infSub = "<infCteSub>...</infCteSub>"                   ' Grupo de Informações do CT-e Substituto
CTe_imp = "<imp>...</imp>"                                  ' Informações relativas ao imposto
CTe_vTPrest = 100                                           ' Valor Total da prestação
CTe_vTRec = 0                                               ' Valor Total a receber
CTe_vTotDFe_Opc = 101                                       ' Valor Total do documento fiscal (vTPrest + total do IBS + total da CBS)
CTe_autXML_Opc = "<autXML>...</autXML>"                     ' Autorizados a fazer o download do CT-e
CTe_infRespTec_Opc = "<infRespTec>...</infRespTec>"         ' Informações responsável técnico do sistema emissor
CTe_infCTeSupl = "<infCTeSupl>...</infCTeSupl>"             ' QRCode

'

CTe = objCTeUtil.CTeSimpRT(CTe_versao, _
                           CTe_Id, _
                           CTe_ide, _
                           CTe_compl_Opc, _
                           CTe_emit, _
                           CTe_toma, _
                           CTe_infCarga, _
                           CTe_det, _
                           CTe_infModal, _
                           CTe_cobr_Opc, _
                           CTe_infSub, _
                           CTe_imp, _
                           CTe_vTPrest, _
                           CTe_vTRec, _
                           CTe_autXML_Opc, _
                           CTe_infRespTec_Opc, _
                           CTe_infCTeSupl, _
                           CTe_vTotDFe_Opc)
 
MsgBox "Dados do CTE - Conhecimento de Tranporte Eletrônico" + CTe, vbInformation, "Resultado"

Exemplos de uso: Delphi

 
procedure TForm1.Button11Click(Sender: TObject);
var
 
Util: OleVariant;                       // declarar a interface da DLL
 
//
//======  Dados do  Conhecimento de Transporte Eletrônico==========
//
CTe :  widestring;
CTe_versao :  widestring;
CTe_Id :  widestring;
CTe_ide :  widestring;
CTe_compl_Opc :  widestring;
CTe_emit :  widestring;
CTe_toma :  widestring;
CTe_infCarga :  widestring;
CTe_det :  widestring;
CTe_infModal :  widestring;
CTe_cobr_Opc :  widestring;
CTe_infSub_Opc :  widestring;
CTe_imp :  widestring;
CTe_vTPrest :  currency;
CTe_vTRec :  currency;
CTe_vTotDFe_Opc :  currency;
CTe_autXML_Opc :  widestring;
CTe_infRespTec_Opc :  widestring;
CTe_infCTeSupl :  widestring;
 
begin
 
//
//
//====== instancia DLL==================
//
//
// referenciando a DLL em late binding
// não é necessário fazer o reference da DLL
// o intelisense não funciona
//
 
Util := CreateOleObject('CTe_Util.util');                 // instância a DLL
 
//
//         criação dos grupos
//
//===================grupo de  Dados do  Conhecimento de Tranporte Eletrônico=======================
//
//
 
CTe_versao := '4.00';                                         // Versão do leiaute (Ex: '4.00')
CTe_Id := '12345678912345678912345678912345678912345678';     // Identificador da Tag a ser assinada
CTe_ide := '<ide>...</ide>';                                  // Identificação do CT-e
CTe_compl_Opc := '<compl>...</compl>';                        // Dados complementares do CT-e para fins operacionais ou comerciais
CTe_emit := '<emit>...</emit>';                               // Identificação do Emitente do CT-e
CTe_toma := '<toma>...</toma>';                               // Informações do Remetente das mercadorias transportadas pelo CT-e
CTe_infCarga := '<infCarga>...</infCarga>';                   // Informações da Carga
CTe_det := '<det>...</det>';                                  // Informações do detalhe da entrega/serviço
CTe_infModal := '<infModal>...</infModal>';                   // Informações do Modal
CTe_cobr_Opc := '<cobr>...</cobr>';                           // Informações da cobrança
CTe_infSub_Opc := '<infCteSub>...</infCteSub>';               // Grupo de Informações do CT-e Substituto
CTe_imp := '<imp>...</imp>';                                  // Informações relativas ao imposto
CTe_vTPrest := 100;                                           // Valor Total da prestação
CTe_vTRec := 0;                                               // Valor Total a receber
CTe_vTotDFe_Opc := 101;                                       // Valor Total do documento fiscal (vTPrest + total do IBS + total da CBS)
CTe_autXML_Opc := '<autXML>...</autXML>';                     // Autorizados a fazer o download do CT-e
CTe_infRespTec_Opc := '<infRespTec>...</infRespTec>';         // Informações responsável técnico do sistema emissor
CTe_infCTeSupl := '<infCTeSupl>...</infCTeSupl>';             // QRCode
 
//
 
CTe := Util.CTeSimpRT(CTe_versao, 
                           CTe_Id, 
                           CTe_ide, 
                           CTe_compl_Opc, 
                           CTe_emit, 
                           CTe_toma, 
                           CTe_infCarga, 
                           CTe_det, 
                           CTe_infModal, 
                           CTe_cobr_Opc, 
                           CTe_infSub_Opc,
                           CTe_imp,
                           CTe_vTPrest,
                           CTe_vTRec,
                           CTe_autXML_Opc,
                           CTe_infRespTec_Opc,
                           CTe_infCTeSupl,
                           CTe_vTotDFe_Opc);
 
MessageDlg( 'CT-e Simplificado: ' + chr(13) + CTe, mtInformation, [mbOk], 0);
 
end;
13.14. Consolida CT-e RT
13. Gerar XML do CT-e Simplificado
« Anterior
13.13. QRCode
Próximo »
14. Gerar XML do CT-e OS