ICMS — Imposto sobre Circulação de Mercadorias e Serviços

O ICMS é o tributo central na emissão de NF-e (Modelo 55). A declaração do grupo de ICMS é obrigatória em todos os itens do payload, mesmo em operações sem destaque de imposto (isenções, imunidades, não incidência ou diferimento).

A situação tributária informada define a regra de recolhimento perante a SEFAZ para cenários de vendas internas, interestaduais, substituição tributária (ICMS-ST), importações e devoluções.

Regra de Validação: A definição do código do ICMS deve ser estritamente compatível com o Regime Tributário (CRT) do emitente. O envio de combinações inválidas resultará em rejeição do documento pela SEFAZ


A estrutura dos campos no JSON varia de acordo com o regime tributário da empresa emitente (CRT):

  • Regime Normal (Código de Situação Tributária - 2 dígitos).
CódigoDescrição
00Tributada integralmente
02Tributação monofásica própria sobre combustíveis
10Tributada e com cobrança do ICMS por substituição tributária (ICMS-ST)
15Tributação monofásica própria e com responsabilidade pela retenção sobre combustíveis
20Tributada com redução de base de cálculo
30Isenta ou não tributada e com cobrança do ICMS-ST
40Isenta
41Não tributada
50Suspensão
51Diferimento (regras de preenchimento variam por UF)
53Tributação monofásica sobre combustíveis com recolhimento diferido
60ICMS cobrado anteriormente por substituição tributária
61Tributação monofásica sobre combustíveis cobrada anteriormente
70Tributada com redução de base de cálculo e cobrança do ICMS-ST
90Outras (Regime Normal)

  • Simples Nacional (Código de Situação da Operação no Simples Nacional - 3 dígitos)
CódigoDescrição
101Tributada pelo Simples Nacional com permissão de crédito
102Tributada pelo Simples Nacional sem permissão de crédito
103Isenção do ICMS no Simples Nacional para faixa de receita bruta
201Tributada pelo Simples Nacional com permissão de crédito e cobrança do ICMS-ST
202Tributada pelo Simples Nacional sem permissão de crédito e cobrança do ICMS-ST
203Isenção do ICMS no Simples Nacional para faixa de receita bruta e cobrança do ICMS-ST
300Imune
400Não tributada pelo Simples Nacional
500ICMS cobrado anteriormente por substituição tributária (substituído) ou por antecipação
900Outras (Simples Nacional)

A obrigatoriedade dos campos do grupo de ICMS varia de acordo com o código de situação tributária informado.

Situação TributáriaCampo APITAG XML
00 – Tributada integralmente
icms_origem
orig
icms_modalidade_base_calculomodBC
icms_situacao_tributariaCST
icms_base_calculovBC
icms_aliquotapICMS
icms_valorvICMS
Situação TributáriaCampo APITAG XML
02 – Tributação monofásica própria sobre combustíveisicms_origemorig
icms_base_calculo_monoqBCMono
icms_aliquotaadRemICMS
icms_valor_monovICMSMono
Situação TributáriaCampo APITAG XML
10 – Tributada e com cobrança do ICMS por substituição tributária.icms_origemorig
icms_situacao_tributariaCST
icms_modalidade_base_calculomodBC
icms_base_calculovBC
icms_aliquotapICMS
icms_valorvICMS
icms_modalidade_base_calculo_stmodBCST
icms_reducao_base_calculo_stpRedBCST
icms_base_calculo_stvBCST
icms_aliquota_stpICMSST
icms_valor_stvICMSST
Situação TributáriaCampo APITAG XML
15 – Tributação monofásica própria e com responsabilidade pela retenção sobre combustíveisicms_origemorig
icms_base_calculo_monoqBCMono
icms_aliquotaadRemICMS
icms_valor_monovICMSMono
icms_base_calculo_mono_retencaoqBCMonoReten
icms_aliquota_retencaoadRemICMSReten
icms_valor_mono_retencaovICMSMonoReten
icms_percentual_reducaopRedAdRem
icms_motivo_reducaomotRedAdRem
Situação TributáriaCampo APITAG XML
20 – Tributada com redução de base de cálculoicms_origemorig
icms_situacao_tributariaCST
icms_modalidade_base_calculo  modBC
icms_reducao_base_calculo pRedBC
icms_base_calculo vBC
icms_aliquota pICMS
icms_valor vICMS
Campos Opcionais*
icms_valor_desonerado vICMSDeson
icms_motivo_desoneracao motDesICMS
Situação TributáriaCampo APITAG XML
30 – Isenta ou não tributada e com cobrança do ICMS por substituição tributária.icms_origemorig
icms_situacao_tributariaCST
icms_modalidade_base_calculo_st modBCST
icms_margem_valor_adicionado_st pMVAST
icms_reducao_base_calculo_st pRedBCST
icms_base_calculo_stvBCST
icms_aliquota_st pICMSST
icms_valor_st vICMSST
Campos Opcionais*
icms_valor_desonerado vICMSDeson
icms_motivo_desoneracao motDesICMS
Situação TributáriaCampo APITAG XML
40 – Isenta;
41 – Não tributada;
50 – Suspensão.
icms_origemorig
icms_situacao_tributariaCST
Campos Opcionais*
icms_valor_desonerado vICMSDeson
icms_motivo_desoneracao motDesICMS
Situação TributáriaCampo APITAG XML
51 – Diferimento (a exigência do preenchimento das informações do ICMS diferido fica a critério de cada UF).icms_origemorig
icms_situacao_tributariaCST
icms_modalidade_base_calculo modBC
icms_reducao_base_calculo pRedBC
icms_base_calculo vBC
icms_aliquota pICMS
icms_valor_operacao vICMSOp
icms_percentual_diferimento pDif
icms_valor_diferido vICMSDif
icms_valor vICMS
Situação TributáriaCampo APITAG XML
53 – Tributação monofásica sobre combustíveis com
recolhimento diferido
icms_origemorig
icms_base_calculo_monoqBCMono
icms_aliquotaadRemICMS
icms_valor_mono_operacaovICMSMonoOp
icms_percentual_diferimento pDif
icms_valor_mono_diferidovICMSMonoDif
icms_valor_monovICMSMono
Situação TributáriaCampo APITAG XML
60 – Cobrado anteriormente por substituição tributária.icms_origemorig
icms_situacao_tributariaCST
Campos Opcionais* 
icms_base_calculo_retido_st vBCSTRet
icms_valor_retido_st vICMSSTRet
icms_valor_substitutovICMSSubstituto
icms_aliquota_finalpST
Situação TributáriaCampo APITAG XML
61 – Tributação monofásica sobre combustíveis cobrada anteriormenteicms_origemorig
icms_base_calculo_mono_retidoqBCMonoRet
icms_aliquota_retidoadRemICMSRet
icms_valor_mono_retidovICMSMonoRet
Situação TributáriaCampo APITAG XML
70: Tributada com redução de base de cálculo e com cobrança do ICMS por substituição tributária.icms_origemorig
icms_situacao_tributariaCST
icms_modalidade_base_calculo modBC
icms_reducao_base_calculo pRedBC
icms_base_calculo vBC
icms_aliquota pICMS
icms_valor vICMS
icms_modalidade_base_calculo_stmodBCST
icms_margem_valor_adicionado_st pMVAST
icms_reducao_base_calculo_st pRedBCST
icms_base_calculo_st vBCST
icms_aliquota_st pICMSST
icms_valor_st vICMSST
Campos Opcionais*
icms_valor_desonerado vICMSDeson
icms_motivo_desoneracao motDesICMS
Situação TributáriaCampo APITAG XML
90 – Outras (regime Normal).icms_origemorig
icms_situacao_tributariaCST
Campos Opcionais 1*
icms_modalidade_base_calculo modBC
icms_base_calculo vBC
icms_reducao_base_calculo pRedBC
icms_aliquota pICMS
icms_valor vICMS
Campos Opcionais 2*
icms_modalidade_base_calculo_stmodBCST
icms_margem_valor_adicionado_st pMVAST
icms_reducao_base_calculo_st pRedBCST
icms_base_calculo_st vBCST
icms_aliquota_st pICMSST
icms_valor_st vICMSST
Campos Opcionais*
icms_valor_desonerado vICMSDeson
icms_motivo_desoneracao motDesICMS
Situação TributáriaCampo APITAG XML
101 – Tributada pelo Simples Nacional com permissão de crédito.icms_origemorig
icms_situacao_tributariaCSOSN
icms_aliquota_credito_simplespCredSN
icms_valor_credito_simplesvCredICMSSN
Situação TributáriaCampo APITAG XML
102 – Tributada pelo Simples Nacional sem permissão de crédito;
103 – Isenção do ICMS no Simples Nacional para faixa de receita bruta;
300 – Imune;
400 – Não tributada pelo Simples Nacional;
icms_origemorig
icms_situacao_tributariaCSOSN
Situação TributáriaCampo APITAG XML
201 – Tributada pelo Simples Nacional com permissão de crédito e com cobrança do ICMS por substituição tributária.icms_origemorig
icms_situacao_tributariaCSOSN
icms_modalidade_base_calculo_stmodBCST
icms_margem_valor_adicionado_st pMVAST
icms_reducao_base_calculo_st pRedBCST
icms_base_calculo_st vBCST
icms_aliquota_st pICMSST
icms_valor_st vICMSST
icms_aliquota_credito_simplespCredSN
icms_valor_credito_simplesvCredICMSSN
Situação TributáriaCampo APITAG XML
202 – Tributada pelo Simples Nacional sem permissão de crédito e com cobrança do ICMS por substituição tributária;
203 – Isenção do ICMS nos Simples Nacional para faixa de receita bruta e com cobrança do ICMS por substituição tributária;
icms_origemorig
icms_situacao_tributariaCSOSN
icms_modalidade_base_calculo_stmodBCST
icms_margem_valor_adicionado_st pMVAST
icms_reducao_base_calculo_st pRedBCST
icms_base_calculo_st vBCST
icms_aliquota_st pICMSST
icms_valor_st vICMSST
Situação TributáriaCampo APITAG XML
500 – ICMS cobrado anteriormente por substituição tributária (substituído) ou por antecipação.icms_origemorig
icms_situacao_tributariaCSOSN
Campos Opcionais*
icms_base_calculo_retido_st vBCSTRet
icms_valor_retido_st vICMSSTRet
icms_aliquota_finalpST
icms_valor_substitutovICMSSubstituto
Situação TributáriaCampo APITAG XML
900 – Outras (regime Simples Nacional).icms_origemorig
icms_situacao_tributariaCSOSN
Campos Opcionais 1*
icms_modalidade_base_calculo modBC
icms_base_calculo vBC
icms_reducao_base_calculo pRedBC
icms_aliquota pICMS
icms_valor vICMS
Campos Opcionais 2*
icms_modalidade_base_calculo_stmodBCST
icms_margem_valor_adicionado_st pMVAST
icms_reducao_base_calculo_st pRedBCST
icms_base_calculo_st vBCST
icms_aliquota_st pICMSST
icms_valor_st vICMSST
Campos Opcionais*
icms_aliquota_credito_simplespCredSN
icms_valor_credito_simplesvCredICMSSN

⚠️

Regra de Validação de Grupos Opcionais

Caso opte por enviar um grupo de campos opcionais no payload, todos os campos pertencentes àquele grupo específico devem ser informados. O preenchimento parcial de um grupo opcional resultará em erro de validação de schema pela API.

📘

ATENÇÃO!

Quando usado o código "90" ou "900" deve ser escolhido um dos dois grupos de campos opcionais (1 ou 2) possíveis.


Did this page help you?