- 12.10. Impostos do CT-e RT
12.10.9. IBS e CBS RTv110 - 12.10.8. ICMSUFFim
« Anterior - 12.10.9.1. gIBSCBS RTv110
Próximo »
12.10.9. IBS e CBS RTv110
Sumário
Grupo de IBSCBS - IBS - Imposto sobre Bens e Serviços e CBS - Contribuição sobre Bens e Serviços
Funcionalidade para gerar o XML do grupo Informações do Imposto de Bens e Serviços - IBS e da Contribuição de Bens e Serviços - CBS
Assinatura
string IBSCBSv110(string CST, string cClassTrib, string indDoacao_Opc, string gIBSCBS, string gEstornoCred_Opc)
Descrição:
Funcionalidade para gerar as informações do IBS e da CBS do item de produto da NF-e.
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:
- 2025-11-07 - versão 2Gv5.00b
Parâmetros:
| nome | tipo | tam. | obrig. | descrição |
|---|---|---|---|---|
| CST | string | 3 | sim | Informar o Código de Situação Tributária do IBS/CBS Tabela - CST |
| cClassTrib | string | 6 | sim | Informar o Código de Classificação Tributária Tabela - cClassTrib |
| indDoacao_Opc | string | 1 | não | Informar "1" quando existir a necessidade de gerar a tag indDoacao (indicador de doação). A tag será gerada quando o parâmetro indDoacao_Opc for informado com qualquer valor diferente de "". |
| gIBSCBS | string | - | sim | Informar o grupo gIBSCBS. |
| gEstornoCred_Opc | string | - | não | Informar o grupo gEstornoCred quando o CST exigir a informação (Exemplo CST=200). |
Diagrama:

Retorno:
Um string com o grupo XML do grupo IBSCBS
XML:
Exemplo de Tributação Normal
<IBSCBS> <CST>000</CST> <cClassTrib>000001</cClassTrib> <gIBSCBS> <vBC>1235.56</vBC> <gIBSUF> <pIBSUF>15.00</pIBSUF> <gDif> <pDif>10.00</pDif> <vDif>0.00</vDif> </gDif> <gDevTrib> <vDevTrib>10.00</vDevTrib> </gDevTrib> <gRed> <pRedAliq>10.00</pRedAliq> <pAliqEfet>10.00</pAliqEfet> </gRed> <vIBSUF>100.00</vIBSUF> </gIBSUF> <gIBSMun> <pIBSMun>10.00</pIBSMun> <gDif> <pDif>10.00</pDif> <vDif>0.00</vDif> </gDif> <gDevTrib> <vDevTrib>10.00</vDevTrib> </gDevTrib> <gRed> <pRedAliq>10.00</pRedAliq> <pAliqEfet>10.00</pAliqEfet> </gRed> <vIBSMun>100.00</vIBSMun> </gIBSMun> <gCBS> <pCBS>17.00</pCBS> <gDif> <pDif>10.00</pDif> <vDif>0.00</vDif> </gDif> <gDevTrib> <vDevTrib>10.00</vDevTrib> </gDevTrib> <gRed> <pRedAliq>10.00</pRedAliq> <pAliqEfet>10.00</pAliqEfet> </gRed> <vCBS>140.00</vCBS> </gCBS> <gTribRegular> <CSTReg>001</CSTReg> <cClassTribReg>000001</cClassTribReg> <pAliqEfetRegIBSUF>15.00</pAliqEfetRegIBSUF> <vTribRegIBSUF>150.15</vTribRegIBSUF> <pAliqEfetRegIBSMun>8.00</pAliqEfetRegIBSMun> <vTribRegIBSMun>8.08</vTribRegIBSMun> <pAliqEfetRegCBS>13.00</pAliqEfetRegCBS> <vTribRegCBS>13.13</vTribRegCBS> </gTribRegular> <gIBSCredPres> <cCredPres>12</cCredPres> <pCredPres>14.00</pCredPres> <vCredPres>1234.56</vCredPres> <vCredPresCondSus>10.23</vCredPresCondSus> </gIBSCredPres> <gCBSCredPres> <cCredPres>51</cCredPres> <pCredPres>13.00</pCredPres> <vCredPres>1234.56</vCredPres> <vCredPresCondSus>10.23</vCredPresCondSus> </gCBSCredPres> </gIBSCBS> </IBSCBS>
Exemplos de uso:
Visual Basic 6.0
' grupo de informações do IBS e CBS ' declaração das variáveis Dim IBSCBS As String Dim CST As String Dim cClassTrib As String Dim indDoacao_Opc As String Dim gIBSCBS As String Dim gEstornoCred_Opc As String ' inicializar variáveis IBSCBS = "" ' XML do grupo do IBS e CBS CST = "000" ' Código de Situação Tributária do IBS e CBS cClassTrib = "000002" ' Código de Classificação Tributária do IBS e CBS indDoacao_Opc = "" ' Indicador de Doação, a tag será gerada quando for informado qualquer valor diferente de "" 'XML do grupo IBSCBS normal ou IBSCBSMono gIBSCBS = "<gIBSCBS><vBC>1235.56</vBC><gIBSUF><pIBSUF>15.00</pIBSUF><gDif><pDif>10.00</pDif><vDif>0.00</vDif></gDif><gDevTrib><vDevTrib>10.00</vDevTrib></gDevTrib><gRed><pRedAliq>10.00</pRedAliq><pAliqEfet>10.00</pAliqEfet></gRed><vIBSUF>100.00</vIBSUF></gIBSUF><gIBSMun><pIBSMun>10.00</pIBSMun><gDif><pDif>10.00</pDif><vDif>0.00</vDif></gDif>" gIBSCBS = gIBSCBS + "<gDevTrib><vDevTrib>10.00</vDevTrib></gDevTrib><gRed><pRedAliq>10.00</pRedAliq><pAliqEfet>10.00</pAliqEfet></gRed><vIBSMun>100.00</vIBSMun></gIBSMun><gCBS><pCBS>17.00</pCBS><gDif><pDif>10.00</pDif><vDif>0.00</vDif></gDif><gDevTrib><vDevTrib>10.00</vDevTrib></gDevTrib><gRed><pRedAliq>10.00</pRedAliq><pAliqEfet>10.00</pAliqEfet></gRed><vCBS>140.00</vCBS></gCBS>" gIBSCBS = gIBSCBS + "<gTribRegular><CSTReg>001</CSTReg><cClassTribReg>000001</cClassTribReg><pAliqEfetRegIBSUF>15.00</pAliqEfetRegIBSUF><vTribRegIBSUF>150.15</vTribRegIBSUF><pAliqEfetRegIBSMun>8.00</pAliqEfetRegIBSMun><vTribRegIBSMun>8.08</vTribRegIBSMun><pAliqEfetRegCBS>13.00</pAliqEfetRegCBS><vTribRegCBS>13.13</vTribRegCBS></gTribRegular>></gIBSCBS>" 'XML do grupo gEstornoCred, deve ser informado somente quando o CST exigir a informação gEstornoCred_Opc = "" ' instancia DLL Dim objCTeUtil As Object Set objCTeUtil = CreateObject("CTe_Util.Util") ' gera grupo de informações do IBS e CBS IBSCBS = objCTeUtil.IBSCBSv110(CST, cClassTrib, indDoacao_Opc, gIBSCBS, gEstornoCred_Opc) MsgBox IBSCBS, vbInformation, "Informação"
Delphi
procedure TForm1.Button6Click(Sender: TObject); var // grupo IBSCBS // grupo de informações do IBS / CBS // declarar a interface da DLL objCTeUtil: OleVariant; // declarar parâmetros IBSCBS : widestring; CST : widestring; cClassTrib : widestring; indDoacao_Opc : widestring; gIBSCBS : widestring; gEstornoCred_Opc : widestring; begin // inicializa parâmetros IBSCBS := ''; // XML do grupo do IBS e CBS CST := '000'; // Código de Situação Tributária do IBS e CBS cClassTrib := '000002'; // Código de Classificação Tributária do IBS e CBS indDoacao_Opc := ''; // Indicador de Doação, a tag será gerada quando for informado qualquer valor diferente de '' // XML do grupo IBSCBS normal ou IBSCBSMono gIBSCBS := '<gIBSCBS><vBC>1235.56</vBC><gIBSUF><pIBSUF>15.00</pIBSUF><gDif><pDif>10.00</pDif><vDif>0.00</vDif></gDif><gDevTrib><vDevTrib>10.00</vDevTrib></gDevTrib>'; gIBSCBS := gIBSCBS + '<gRed><pRedAliq>10.00</pRedAliq><pAliqEfet>10.00</pAliqEfet></gRed><vIBSUF>100.00</vIBSUF></gIBSUF><gIBSMun><pIBSMun>10.00</pIBSMun><gDif><pDif>10.00</pDif><vDif>0.00</vDif></gDif>'; gIBSCBS := gIBSCBS + '<gDevTrib><vDevTrib>10.00</vDevTrib></gDevTrib><gRed><pRedAliq>10.00</pRedAliq><pAliqEfet>10.00</pAliqEfet></gRed><vIBSMun>100.00</vIBSMun></gIBSMun><gCBS><pCBS>17.00</pCBS><gDif>'; gIBSCBS := gIBSCBS + '<pDif>10.00</pDif><vDif>0.00</vDif></gDif><gDevTrib><vDevTrib>10.00</vDevTrib></gDevTrib><gRed><pRedAliq>10.00</pRedAliq><pAliqEfet>10.00</pAliqEfet></gRed><vCBS>140.00</vCBS></gCBS>'; gIBSCBS := gIBSCBS + '<gTribRegular><CSTReg>001</CSTReg><cClassTribReg>000001</cClassTribReg><pAliqEfetRegIBSUF>15.00</pAliqEfetRegIBSUF><vTribRegIBSUF>150.15</vTribRegIBSUF><pAliqEfetRegIBSMun>8.00</pAliqEfetRegIBSMun>'; gIBSCBS := gIBSCBS + '<vTribRegIBSMun>8.08</vTribRegIBSMun><pAliqEfetRegCBS>13.00</pAliqEfetRegCBS><vTribRegCBS>13.13</vTribRegCBS></gTribRegular></gIBSCBS>'; // XML do grupo gEstornoCred, deve ser informado somente quando o CST exigir a informação gEstornoCred_Opc := ''; // instancia DLL - late binding objCTeUtil := CreateOleObject('CTe_Util.util'); // gera XML do grupo IBSCBS IBSCBS := objCTeUtil.IBSCBSv110(CST, cClassTrib, indDoacao_Opc, gIBSCBS, gEstornoCred_Opc); MessageDlg( 'XML resultante: '+IBSCBS, mtInformation, [mbOk], 0); end;
c#
// grupo IBSCBS // grupo de informações do IBS / CBS string IBSCBS = ""; // XML do grupo IBSCBS gerado // Código de Situação Tributária do IBS e CBS string CST = "000"; // Código de Classificação Tributária do IBS e CBS string cClassTrib = "000001"; // Indicador de Doação, a tag será gerada quando for informado qualquer valor diferente de "" indDoacao_Opc = ""; // grupo IBS e CBS string gIBSCBS = "<gIBSCBS><vBC>1235.56</vBC><gIBSUF><pIBSUF>15.00</pIBSUF><gDif><pDif>10.00</pDif><vDif>0.00</vDif></gDif><gDevTrib><vDevTrib>10.00</vDevTrib></gDevTrib><gRed><pRedAliq>10.00</pRedAliq><pAliqEfet>10.00</pAliqEfet></gRed><vIBSUF>100.00</vIBSUF></gIBSUF><gIBSMun><pIBSMun>10.00</pIBSMun><gDif><pDif>10.00</pDif><vDif>0.00</vDif></gDif><gDevTrib><vDevTrib>10.00</vDevTrib></gDevTrib><gRed><pRedAliq>10.00</pRedAliq><pAliqEfet>10.00</pAliqEfet></gRed><vIBSMun>100.00</vIBSMun></gIBSMun><gCBS><pCBS>17.00</pCBS><gDif><pDif>10.00</pDif><vDif>0.00</vDif></gDif><gDevTrib><vDevTrib>10.00</vDevTrib></gDevTrib><gRed><pRedAliq>10.00</pRedAliq><pAliqEfet>10.00</pAliqEfet></gRed><vCBS>140.00</vCBS></gCBS><gTribRegular><CSTReg>000</CSTReg><cClassTribReg>000001</cClassTribReg><pAliqEfetRegIBSUF>15.00</pAliqEfetRegIBSUF><vTribRegIBSUF>150.15</vTribRegIBSUF><pAliqEfetRegIBSMun>8.00</pAliqEfetRegIBSMun><vTribRegIBSMun>8.08</vTribRegIBSMun><pAliqEfetRegCBS>13.00</pAliqEfetRegCBS><vTribRegCBS>13.13</vTribRegCBS></gTribRegular></gIBSCBS>"; // XML do grupo gEstornoCred, deve ser informado somente quando o CST exigir a informação string gEstornoCred_Opc = ""; // instancia a DLL CTe_Util.Util util = new CTe_Util.Util(); // gera XML do grupo IBSCBS IBSCBS = util.IBSCBSv110(CST, cClassTrib, indDoacao_Opc, gIBSCBS, gEstornoCred_Opc); //
- 12.10.9. IBS e CBS RTv110
12.10. Impostos do CT-e RT - « Anterior
12.10.8. ICMSUFFim - Próximo »
12.10.9.1. gIBSCBS RTv110
