14.6.2.12.1. gIBSCBS [RTCv130]
14.6.2.12.1.3. gCBS [RTC]
14.6.2.12.1.2. gIBSMun [RTC]
« Anterior
14.6.2.12.1.4. gTribRegular [RTC]
Próximo »

14.6.2.12.1.3. gCBS [RTC]

Grupo de Informações da CBS

Funcionalidade para gerar o XML do grupo do ID=UB55 - Grupo de Informações da CBS

Assinatura

string gCBS(double pCBS, double pDif_Opc, double vDif_Opc, double vDevTrib_Opc, double pRedAliq_Opc, double pAliqEfet_Opc, double vCBS)

Descrição:

Funcionalidade para gerar o XML do grupo do ID=UB55 - Grupo de Informações da CBS

Importante

Atualização necessária para atender o novo leiaute da NF-e da NT 2025/002 - Reforma Tributária do Consumo

Vigência:

  • ambiente de homologação: a partir de 01/07/2025
  • ambiente de produção: a partir de 01/10/2025

Versão da DLL requerida:

Histórico de atualização:

Parâmetros:

nome tipo tam. obrig. descrição
pCBS double 5,2-4 sim Informar a alíquota do CBS

A alíquota de CBS (pCBS) deverá ser:
- 0,9% para documento com data de emissão no ano de 2025 e 2026. (Art. 346 da LC 214/25);
Exceção: Se o cClassTrib possuir indicador de Tributação Regular, o pCBS deve ser igual a zero
Observação: Alíquota de referência a ser publicada para anos posteriores a 2026.
gDif grupo - CST=510
CST=515
informaro o grupo de informações do Diferimento para CST=510-Diferimento ou CST=515-Diferimento com redução de alíquota

O gDIF - grupo do diferimento será gerado somente quando pDif_Opc > 0.
pDif_Opc double 5,2-4 sim Informar o percentual do diferimento
vDif_Opc double 15,2 sim Informar o valor do Diferimento
vDif = vBC x (pCBS / 100 x (pDif / 100)
vDevTrib_Opc double 15,2 depende Informar o valor do tributo devolvido (desconto na própria Nota Fiscal / Fatura)
Deve ser utilizado para informar a devolução de tributos no fornecimento de energia elétrica, água, esgoto, gás natural e em outras hipóteses definidas no regulamento
gRed grupo - CST=200
CST=515
informar o grupo de informações da redução de alíquota para CST=200-Alíquota reduzida ou CST=515-Diferimento com redução de alíquota

O gRed - grupo da redução de alíquota será gerado somente quando pRedAliq_Opc > 0 ou pAliqEfet_Opc > 0.

Para gerar o grupo gRed com pRedAliq = 0.0000 e pAliqEefet = 0.00, informe pRedAliq_Opc=0.00001 ou pAliqEfet_Opc=0.00001
pRedAliq_Opc double 5,2-4 sim Informar o percentual da redução de alíquota do cClassTrib
pAliqEfet_Opc double 5,2-4 sim Informar a Alíquota Efetiva do IBS de competência das UF que será aplicada a Base de Cálculo

- Alíquota Efetiva (tag: pAliqEfet) deve ser o resultado de:
- Se NÃO houver compra governamental (grupo gCompraGov não informado): pAliqEfet = pCBS × (1 - pRedAliq / 100).
- Se houver compra governamental (grupo gCompraGov informado): pAliqEfet = pCBS × (1 - pRedAliq / 100) × (1 - gCompraGov/pRedutor / 100).

Exemplo: Redução de 40% na alíquota:
Alíquota vigente (A): 10%
Redução na alíquota (R): 40%
Redutor de compras governamentais (RG): 5%
Alíquota Efetiva (E): E = A * (1 - R)*(1- RG)
E = 10 * (1 - 0,4) *(1-0,05) = 5,7
vCBS double 15,2 sim Informar o Valor do CBS
Valor do CBS (vCBS) deverá ser resultante de: vCBS = (gIBSCBS/vBC x (pCBS / 100)) - vDif - vDevTrib

Observação 1: Aceitar uma tolerância de 0,01 a mais ou a menos
Observação 2: Em caso de preenchimento do grupo de redução (gCBS/gRed) a alíquota utilizada deverá ser a tag Alíquota Efetiva (gCBS/gRed/pAliqEfet): vCBS = (gIBSCBS/vBC x (pAliqEfet / 100)) - vDif - vDevTrib

Diagrama:

DiagramaIdentificacao

Retorno:

Um string com o grupo XML do grupo gCBS

XML:

CST=000, cClassTribg=000001 - Situações tributadas integralmente pelo IBS e CBS, vBC=1000.00

 
<gCBS>
   <pCBS>0.90</pCBS>
   <vCBS>9.00</vCBS>
</gCBS>

CST=200, cClassTribg=200038-Fornecimento dos insumos agropecuários e aquícolas (Anexo IX), com 60% de redução, vBC=1000.00

 
<gCBS>
   <pCBS>0.90</pCBS>
   <gRed>
     <pRedAliq>60.00</pRedAliq>
     <pAliqEfet>0.0400</pAliqEfet>
   </gRed>
   <vCBS>3.60</vCBS>
</gCBS>

CST=200, cClassTribg=200003-Vendas de produtos destinados à alimentação humana (Anexo I), com 100% de redução, vBC=1000.00

 
<gCBS>
  <pCBS>0.90</pCBS>
  <gRed>
    <pRedAliq>100.00</pRedAliq>
    <pAliqEfet>0.0000</pAliqEfet>
  </gRed>
  <vCBS>0.00</vCBS>
</gCBS>

CST=515, cClassTribg=515001-Operações, sujeitas a diferimento, com insumos agropecuários e aquícolas destinados a produtor rural não contribuinte (Anexo IX) , com 60% de redução, vBC=1000.00

 
<gCBS>
  <pCBS>0.90</pCBS>
  <gDif>
    <pDif>100.00</pDif>
    <vDif>3.60</vDif>
  </gDif>
  <gRed>
    <pRedAliq>60.00</pRedAliq>
    <pAliqEfet>0.3600</pAliqEfet>
  </gRed>
  <vCBS>0.00</vCBS>
</gCBS>

Exemplos de uso:

Visual Basic 6.0

 
' grupo de Informações da CBS - ID=UB55 do grupo UB da NT 2025/002-RTC

' declaração das variáveis

Dim gCBS As String
Dim pCBS As Double
Dim pDif_Opc As Double
Dim vDif_Opc As Double
Dim DevTrib_Opc As Double
Dim pRedAliq_Opc As Double
Dim pAliqEfet_Opc As Double
Dim vCBS As Double
 
' inicializar variáveis

gCBS = ""           ' XML do grupo CBS
pCBS = 8.7          ' Alíquota da CBS

' grupo de informações do Diferimento - gerado quando pDif_Opc > 0
pDif_Opc = 10       ' Percentual do diferimento
vDif_Opc = 0        ' Valor do Diferimento

' grupo de Informações da devolução de tributos
vDevTrib_Opc = 10   ' Valor do tributo devolvido

' grupo de informações da redução da alíquota
pRedAliq_Opc = 10   ' Percentual da redução de alíquota
pAliqEfet_Opc = 10  ' Alíquota Efetiva da CBS que será aplicada a Base Cálculo

vCBS = 140          ' Valor da CBS

'   instancia DLL

Dim objNFeUtil As Object
 
Set objNFeUtil = CreateObject("NFe_Util_2G.Util")
 
'   gera grupo de Informações da CBS

gCBS = objNFeUtil.gCBS(pCBS, pDif_Opc, vDif_Opc, vDevTrib_Opc, pRedAliq_Opc, pAliqEfet_Opc, vCBS)
 
MsgBox gCBS, vbInformation, "Informação"

Delphi

 
 
procedure TForm1.Button10Click(Sender: TObject);
 
// grupo gCBS
 
// grupo de Informações da CBS - ID=UB55 do grupo UB da NT 2025/002-RTC
 
var
 
// declarar a interface da DLL
 
objNFeUtil: OleVariant;
 
// declarar parâmetros
 
gCBS:widestring;
pCBS:double;
pDif_Opc:double;
vDif_Opc:double;
vDevTrib_Opc:double;
pRedAliq_Opc:double;
pAliqEfet_Opc:double;
vCBS:double;
 
begin
 
//   inicializa parâmetros
 
gCBS := '';            // XML do grupo CBS
pCBS := 8.7;           // Alíquota da CBS
 
// grupo de informações do Diferimento - gerado quando pDif_Opc > 0
pDif_Opc := 10;       // Percentual do diferimento
vDif_Opc := 0;        // Valor do Diferimento
 
// grupo de Informações da devolução de tributos
vDevTrib_Opc := 10;   // Valor do tributo devolvido
 
// grupo de informações da redução da alíquota
pRedAliq_Opc := 10;  // Percentual da redução de alíquota
pAliqEfet_Opc := 10; // Alíquota Efetiva da CBS que será aplicada a Base Cálculo
 
//   instancia DLL - late binding
 
objNFeUtil := CreateOleObject('NFe_Util_2G.util');
 
// gera XML do grupo gCBS
 
gCBS := objNFeUtil.gCBS(pCBS, pDif_Opc, vDif_Opc, vDevTrib_Opc, pRedAliq_Opc, pAliqEfet_Opc, vCBS);
 
MessageDlg( 'XML resultante: '+gCBS, mtInformation, [mbOk], 0);
 
 
end;

c#

 
// grupo gCBS
 
// grupo de Informações da CBS - ID=UB55 do grupo UB da NT 2025/002-RTC
 
string gCBS = "";           // XML do grupo CBS
double pCBS = 8.7;        // Alíquota da CBS
// grupo de informações do Diferimento - gerado quando pDif_Opc > 0
double pDif_Opc = 10;       // Percentual do diferimento
double vDif_Opc = 0;        // Valor do Diferimento
// grupo de Informações da devolução de tributos
double vDevTrib_Opc = 10;   // Valor do tributo devolvido
// grupo de informações da redução da alíquota
double pRedAliq_Opc = 10;   // Percentual da redução de alíquota
double pAliqEfet_Opc = 10;  // Alíquota Efetiva da CBS que será aplicada a Base Cálculo
 
double vCBS = 140;          // Valor da CBS
 
// instancia a DLL
 
NFe_Util_2G.Util util = new NFe_Util_2G.Util();
 
// gera XML do grupo gCBS
 
gCBS = util.gCBS(pCBS, pDif_Opc, vDif_Opc, vDevTrib_Opc, pRedAliq_Opc, pAliqEfet_Opc, vCBS);
 
//
14.6.2.12.1.3. gCBS [RTC]
14.6.2.12.1. gIBSCBS [RTCv130]
« Anterior
14.6.2.12.1.2. gIBSMun [RTC]
Próximo »
14.6.2.12.1.4. gTribRegular [RTC]