14.6. Impostos do CT-e OS RT
14.6.4. Tributação Outros RT
14.6.3. Tributação Isento, não Tributado ou diferido RT
« Anterior
14.6.5. Tributação Outra UF RT
Próximo »

14.6.4. Tributação Outros RT


Assinatura

string ImpCST90CTeOS(string CST, double pRedBC_Opc, double vBC, double pICMS, double vICMS, double vCred,double vTotTrib_Opc, string infAdFisco_Opc, string ICMSUFFim_Opc, string infTribFed_Opc, double vICMSDeson_Opc, string cBenef_Opc, string IBSCBS_Opc, double vTotDFe_Opc)

Descrição:

Funcionalidade para gerar o XML do grupo de ICMS 90 - ICMS Outros.

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
CST string 2 sim Classificação Tributária do Serviço (90 - ICMS Outros).
pRedBC_Opc double 3,2 não Percentual de redução da BC (5 posições, sendo 3 inteiras e 2 decimais).
vBC double 13,2 sim Valor da BC do ICMS (15 posições, sendo 13 inteiras e 2 decimais).
pICMS double 3,2 sim Valor da Alíquota do ICMS (5 posições, sendo 3 inteiras e 2 decimais).
vICMS double 13,2 sim Valor do ICMS (15 posições, sendo 13 inteiras e 2 decimais).
vCred double 13,2 sim Valor do Crédito outorgado/Presumido (15 posições, sendo 13 inteiras e 2 decimais).
vTotTrib_Opc double 13,2 não informar o valor Total dos Tributos Aproximado previsto na Lei da Transparência - 12.741/12 (15 posições, sendo 13 inteiras e 2 decimais).
infAdFisco_Opc string 1-2000 não Informações adicionais de interesse do Fisco.
ICMSUFFim_Opc string - não Informações do ICMSUFFim ICMS devido para a UF de término do serviço de transporte, nas operações interestaduais para consumidor final
infTribFed_Opc string - não Informações do infTribFed Informações dos tributos federais
vICMSDeson_Opc double 13,2 não informar o valor do ICMS desonerado.
cBenef_Opc string 1-10 não informar o código do benefício fiscal na UF.
IBSCBS_Opc string - não Informações do IBSCBS
CAMPO NOVO
vTotDFe_Opc double 13,2 não informar o Valor total do documento fiscal (vTPrest + total do IBS + total da CBS)
CAMPO NOVO
.

Diagrama:

DiagramaCST90

Retorno:

Um string com o grupo XML de ICMS 90 - ICMS Outros

XML:

Exemplo de XML

<imp>
  <ICMS>
    <ICMS90>
      <CST>90</CST>
      <pRedBC>5.12</pRedBC>
      <vBC>1235.48</vBC>
      <pICMS>11.52</pICMS>
      <vICMS>1235.36</vICMS>
      <vCred>1585.44</vCred>
    </ICMS90>
  </ICMS>
  <vTotTrib>12.34</vTotTrib>
  <infAdFisco>Informações</infAdFisco>
</imp>

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 ICMS 90 - ICMS Outros==========
'
Dim ImpICMS90 As String
Dim ImpICMS90_CST As String
Dim ImpICMS90_pRedBC As Double
Dim ImpICMS90_vBC As Double
Dim ImpICMS90_pICMS As Double
Dim ImpICMS90_vICMS As Double
Dim ImpICMS90_vCred As Double
Dim ImpICMS90_vTotTrib_Opc As Double
Dim ImpICMS90_infAdFisco_Opc As String
Dim ImpICMS90_ICMSUFFim_Opc As String
Dim ImpICMS90_infTribFed_Opc As String
Dim ImpICMS90_vICMSDeson_Opc As Double
Dim ImpICMS90_cBenef_Opc As String
Dim ImpICMS90_IBSCBS_Opc As String
Dim ImpICMS90_vTotDFe_Opc As Double
'
'
'====== 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 do ICMS 90 - ICMS Outros=======================
'
'
ImpICMS90_CST = "90"                         ' Classificação Tributária do Serviço (90 - ICMS outros)
ImpICMS90_pRedBC = 5.12                      ' Percentual de redução da BC (5 posições sendo 3 inteiras e 2 decimais)
ImpICMS90_vBC = 1235.48                      ' Valor da BC do ICMS (15 posições, sendo 13 inteiras e 2 decimais)
ImpICMS90_pICMS = 11.52                      ' Alíquota do ICMS (5 posições sendo 3 inteiras e 2 decimais)
ImpICMS90_vICMS = 1235.36                    ' Valor da BC do ICMS (15 posições, sendo 13 inteiras e 2 decimais)
ImpICMS90_vCred = 1585.44                    ' Valor do Crédito outorgado/Presumido (15 posições, sendo 13 inteiras e 2 decimais)
ImpICMS90_vTotTrib_Opc = 12.34               ' valor Total dos Tributos Aproximado
ImpICMS90_infAdFisco_Opc = "Informações"     ' Informações adicionais de interesse do Fisco (Norma referenciada, informações complementares, etc)
ImpICMS90_ICMSUFFim_Opc = ""                 ' Informações do ICMS devido para a UF de término do serviço de transporte, nas operações interestaduais para consumidor final
ImpICMS90_infTribFed_Opc = ""                ' Informações dos tributos federais
ImpICMS90_vICMSDeson_Opc = 100               ' valor o ICMS desonerado
ImpICMS90_cBenef_Opc = "SP12345678"          ' código do benefício fiscal na UF
ImpICMS90_IBSCBS_Opc = ""                    ' Informações do IBS e CBS
ImpICMS90_vTotDFe_Opc = 0                    ' Valor total do documento fiscal (vTPrest + total IBS + total CBS)
'
ImpICMS90 = objCTeUtil.ImpCST90CTeOS(ImpICMS90_CST, _
                                     ImpICMS90_pRedBC, _
                                     ImpICMS90_vBC, _
                                     ImpICMS90_pICMS, _
                                     ImpICMS90_vICMS, _
                                     ImpICMS90_vCred, _
                                     ImpICMS90_vTotTrib_Opc, _
                                     ImpICMS90_infAdFisco_Opc, _
                                     ImpICMS90_ICMSUFFim_Opc, _
                                     ImpICMS90_infTribFed_Opc, _
                                     ImpICMS90_vICMSDeson_Opc, _
                                     ImpICMS90_cBenef_Opc, _
                                     ImpICMS90_IBSCBS_Opc, _
                                     ImpICMS90_vTotDFe_Opc)
 
MsgBox "ICMS 90 - ICMS Outros" + ImpICMS90, vbInformation, "Resultado"

Exemplos de uso: Delphi

 
 
procedure TForm1.Button23Click(Sender: TObject);
 
var
 
Util: OleVariant;                       // declarar a interface da DLL
 
ImpICMS90  : widestring;
ImpICMS90_CST : widestring;
ImpICMS90_pRedBC : currency;
ImpICMS90_vBC : currency;
ImpICMS90_pICMS : currency;
ImpICMS90_vICMS : currency;
ImpICMS90_vCred_Opc : currency;
ImpICMS90_vTotTrib_Opc : currency;
ImpICMS90_infAdFisco_Opc : widestring;
ImpICMS90_infTribFed_Opc : widestring;
ImpICMS90_ICMSUFFim_Opc : widestring;
ImpICMS90_vICMSDeson_Opc : currency;
ImpICMS90_cBenef_Opc : widestring;
ImpICMS90_IBSCBS_Opc : widestring;
ImpICMS90_vTotDFe_Opc : currency;
 
begin
 
ImpICMS90_CST := '90';                       // Classificação Tributária do Serviço
ImpICMS90_pRedBC := 10;                  // Percentual de redução da BC (5 posições sendo 3 inteiras e 2 decimais)
ImpICMS90_vBC := 1235.02;                    // Valor da BC do ICMS (15 posições, sendo 13 inteiras e 2 decimais)
ImpICMS90_pICMS := 11;                       // Alíquota do ICMS (5 posições sendo 3 inteiras e 2 decimais)
ImpICMS90_vICMS := 1235.43;                  // Valor da BC do ICMS (15 posições, sendo 13 inteiras e 2 decimais)
ImpICMS90_vCred_Opc := 1585.44;              // Valor do Crédito outorgado/Presumido (15 posições, sendo 13 inteiras e 2 decimais)
ImpICMS90_vTotTrib_Opc := 12.34;             // valor Total dos Tributos Aproximado
ImpICMS90_infAdFisco_Opc := 'Informações';   // Informações adicionais de interesse do Fisco (Norma referenciada, informações complementares, etc)
ImpICMS90_ICMSUFFim_Opc := ' ';
ImpICMS90_infTribFed_Opc := ' ';
ImpICMS90_vICMSDeson_Opc :=1000;
ImpICMS90_cBenef_Opc :='SP2345678';
ImpICMS90_IBSCBS_Opc := '';                 // Informações do IBS e da CBS
ImpICMS90_vTotDFe_Opc := 0;                 // Valor total do documento fiscal (vTPrest + total IBS + total CBS)
 
 
Util := CreateOleObject('CTe_Util.util');                 // instância a DLL
 
ImpICMS90  := Util.ImpCST90CTeOS(ImpICMS90_CST,
                                 ImpICMS90_pRedBC,
                                 ImpICMS90_vBC,
                                 ImpICMS90_pICMS,
                                 ImpICMS90_vICMS,
                                 ImpICMS90_vCred_Opc,
                                 ImpICMS90_vTotTrib_Opc,
                                 ImpICMS90_infAdFisco_Opc,
                                 ImpICMS90_ICMSUFFim_Opc,
                                 ImpICMS90_infTribFed_Opc,
                                 ImpICMS90_vICMSDeson_Opc,
                                 ImpICMS90_cBenef_Opc,
                                 ImpICMS90_IBSCBS_Opc,
                                 ImpICMS90_vTotDFe_Opc);
 
MessageDlg( 'ICMS90: ' + chr(13) + ImpICMS90, mtInformation, [mbOk], 0);
 
 
end;
14.6.4. Tributação Outros RT
14.6. Impostos do CT-e OS RT
« Anterior
14.6.3. Tributação Isento, não Tributado ou diferido RT
Próximo »
14.6.5. Tributação Outra UF RT