14.1. Identificação do CT-e OS RT
14.1.2. Compra Governamental RT
14.1.1. Informações do Percurso
« Anterior
14.2. Dados Complementares do CT-e
Próximo »

14.1.2. Compra Governamental RT

Funcionalidade para gerar o XML com a informação da Compra Governamental.

Assinatura

string gCompraGov(int tpEnteGov, double pRedutor, int tpOperGov)

Descrição:

Funcionalidade para gerar o XML com a informação da Compra Governamental.

Informar o grupo quando a legislação exigir a informação em uma venda para administração pública direta e suas autarquias e fundações.

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:

Histórico de atualização:

Parâmetros:

nome tipo tam. obrig. descrição
tpEnteGov inteiro 1 sim Tipo de ente governamental
Informar o tipo de ente governamental:
1=União
2=Estado
3=Distrito Federal
4=Município
pRedutor double 5,2-4 sim Percentual de redução de alíquota em compra governamental
Informar o percentual de redução de alíquota em compra governamental, conforme artigos 472 e 370 da LC 214/2025.
Consultar o percentual com o Contador ou responsável pelo faturamento.

Diagrama:

DiagramaCTeCompraGov

Retorno:

Um string com o grupo XML da grupo da compra governamental

XML:

Exemplo de XML de compra governamental

<gCompraGov>
  <tpEnteGov>0</tpEnteGov>
  <pRedutor>10.00</pRedutor>
</gCompraGov>

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

 
' grupo de Compras Governamentais

' declaração das variáveis

Dim gCompraGov As String
Dim tpEnteGov As Long
Dim pRedutor As Double
 
' inicializar variáveis

tpEnteGov = 1           ' tipo de ente governamental, valores válidos:
                        ' 1=União
                        ' 2=Estado
                        ' 3=Distrito Federal
                        ' 4=Município

pRedutor = 10           ' Percentual de redução da alíquota em compra governamental
                        ' conforme arts 472 e 370 da LC 214/2025

'   instancia DLL - late binding

Dim objCTeUtil As Object
 
Set objCTeUtil = CreateObject("CTe_Util.Util")
 
'   gera grupo de Compras Governamentais

gCompraGov = objCTeUtil.gCompraGov(tpEnteGov, pRedutor)
 
MsgBox gCompraGov, vbInformation, "Informação"

Delphi

 
procedure TForm1.Button4Click(Sender: TObject);
var
 
objCTeUtil: OleVariant;                       // declarar a interface da DLL
 
gCompraGov: widestring;
tpEnteGov: integer;
pRedutor: double;
 
begin
 
//   grupo de Compras Governamentais
 
//   inicializa parâmetros
 
gCompraGov := '';
 
tpEnteGov := 0;         // tipo de ente governamental, valores válidos:
                        // 1=União
                        // 2=Estado
                        // 3=Distrito Federal
                        // 4=Município
 
pRedutor := 10;         // Percentual de redução da alíquota em compra governamental
                        // conforme arts 472 e 370 da LC 214/2025, consultar contador
 
//   instancia DLL - late binding
 
objCTeUtil := CreateOleObject('CTe_Util.util');    // instancia a DLL - late binding
 
//   gera grupo de Compras Governamentais
 
gCompraGov := objCTeUtil.gCompraGov(tpEnteGov, pRedutor);
 
MessageDlg( 'XML resultante: '+gCompraGov, mtInformation, [mbOk], 0);
 
end;

c#

 
//   grupo de Compras Governamentais
 
//   inicializa parâmetros
 
string gCompraGov = "";
 
int tpEnteGov = 0;      // tipo de ente governamental, valores válidos:
                        // 1=União
                        // 2=Estado
                        // 3=Distrito Federal
                        // 4=Município
 
double pRedutor = 10;   // Percentual de redução da alíquota em compra governamental
                        // conforme arts 472 e 370 da LC 214/2025, consultar contador
 
 
//   instancia DLL
 
CTe_Util.Util util = new CTe_Util.Util();
 
//   gera grupo de Compras Governamentais 
 
gCompraGov = util.gCompraGov(tpEnteGov, pRedutor);
14.1.2. Compra Governamental RT
14.1. Identificação do CT-e OS RT
« Anterior
14.1.1. Informações do Percurso
Próximo »
14.2. Dados Complementares do CT-e