Pular para conteúdo

Bloco E — Apuração ICMS, ICMS-ST, DIFAL/FCP e IPI

Finalidade

Apurar os valores de ICMS, ICMS-ST por UF, DIFAL/FCP de operações interestaduais e IPI do período.


E100 — Período de Apuração ICMS

Campo Origem Regra
DT_INI ⚙️ self.date_ini Período do SPED
DT_FIN ⚙️ self.date_fim Período do SPED

Evento: Ao gravar E100, dispara enviar_registro_E111() para os ajustes.


E110 — Apuração do ICMS Próprio

Montado a partir dos acumuladores preenchidos durante a geração dos blocos C e D.

Campo SPED Origem Tipo
VL_TOT_DEBITOS self.e110_vl_tot_debitos 🧮 Soma de ICMS das saídas (C190/D190/C590/D590)
VL_AJ_DEBITOS self.e110_vl_aj_debitos 🧮 Ajustes C197 com l10n_br_transf_credito
VL_TOT_AJ_DEBITOS self.e110_vl_tot_aj_debitos ✅ Manual
VL_ESTORNOS_CRED self.e110_vl_estornos_cred ✅ Manual
VL_TOT_CREDITOS self.e110_vl_tot_creditos 🧮 Soma de ICMS das entradas (C190/D190/C590/D590)
VL_AJ_CREDITOS self.e110_vl_aj_creditos 🧮 Ajustes C197 sem flag de transferência
VL_TOT_AJ_CREDITOS self.e110_vl_tot_aj_creditos ✅ Manual
VL_ESTORNOS_DEB self.e110_vl_estornos_deb ✅ Manual
VL_SLD_CREDOR_ANT self.e110_vl_sld_credor_ant 🧮 Busca saldo credor do mês anterior
VL_SLD_APURADO self.e110_vl_sld_apurado 🧮 Calculado
VL_TOT_DED self.e110_vl_tot_ded ✅ Manual
VL_ICMS_RECOLHER self.e110_vl_icms_recolher 🧮 Calculado
VL_SLD_CREDOR_TRANSPORTAR self.e110_vl_sld_credor_transportar 🧮 Calculado
DEB_ESP self.e110_deb_esp ✅ Manual

Fórmula de Apuração

Lado Débito = VL_TOT_DEBITOS + VL_AJ_DEBITOS + VL_TOT_AJ_DEBITOS + VL_ESTORNOS_CRED
Lado Crédito = VL_TOT_CREDITOS + VL_AJ_CREDITOS + VL_TOT_AJ_CREDITOS + VL_ESTORNOS_DEB + VL_SLD_CREDOR_ANT

VL_SLD_APURADO = Lado Débito - Lado Crédito

Se VL_SLD_APURADO > 0:
  VL_ICMS_RECOLHER = VL_SLD_APURADO - VL_TOT_DED
  VL_SLD_CREDOR_TRANSPORTAR = 0
Senão:
  VL_ICMS_RECOLHER = 0
  VL_SLD_CREDOR_TRANSPORTAR = |VL_SLD_APURADO|

E111 — Ajustes de Apuração ICMS

Campo Origem Regra
COD_AJ_APUR ⚙️ line_e111.cod_aj_apur ✅ Linha de ajuste manual
DESCR_COMPL_AJ ⚙️ line_e111.descr_compl_aj
VL_AJ_APUR ⚙️ line_e111.vl_aj_apur

Origem: Model sped.fiscal.e111, campo line_e111_ids no SPED.


E113 — Documentos de Ajuste Detalhado

Condição Gerado por enviar_registro_E113(COD_AJ_APUR)

Usado para códigos de ajuste específicos: - PR020207: Créditos ICMS de Simples Nacional - PR020210: Créditos ICMS-ST de notas de entrada

Campo Origem
COD_PART 👤 move.partner.id
COD_MOD 📄 move.l10n_br_tipo_documento
NUM_DOC 📄 move.l10n_br_numero_nota_fiscal
DT_DOC 📄 move.invoice_date
COD_ITEM 📦 product.default_code
VL_AJ_ITEM 📋 Valor de ICMS ou ICMS-ST conforme código
CHV_DOCE 📄 move.l10n_br_chave_nf

E116 — Obrigação Recolhimento ICMS

Campo Origem Regra
COD_OR 🔒 "000" Fixo
VL_OR self.e110_vl_icms_recolher 🧮
DT_VCTO ⚙️ date_ini.replace(day=e116_icms_dia_vencimento) ✅ SPED → Dia Vencimento
COD_REC ⚙️ self.e116_icms_codigo_receita ✅ SPED → Código Receita
MES_REF ⚙️ date_ini formato mmYYYY 🧮

E200/E210 — ICMS-ST por UF

E200 — Identificação da UF

Campo Origem
UF ⚙️ line_icmsst.state_id.code
DT_INI / DT_FIN ⚙️ Período do SPED

E210 — Apuração ICMS-ST

Campo SPED Origem Regra
VL_SLD_CRED_ANT_ST ⚙️ line_icmsst.e210_vl_sld_cred_ant_st Saldo anterior
VL_DEVOL_ST 🧮 CFOPs de devolução ST (C190) Acumulado
VL_RESSARC_ST 🧮 CFOPs 1603,2603 (C190) Acumulado
VL_OUT_CRED_ST 🧮 Demais CFOPs de entrada com ST (C190) Acumulado
VL_RETENCAO_ST 🧮 CFOPs de saída com ST (C190) Acumulado
VL_AJ_CREDITOS_ST / VL_AJ_DEBITOS_ST / VL_OUT_DEB_ST ⚙️ Manual

Efeito: Se e210_vl_icms_recol_st > 0, gera E250 (obrigação de recolhimento ST).


E250 — Obrigação Recolhimento ICMS-ST

Campo Origem Regra
COD_OR 🧮 '999' se UF diferente da empresa, '002' se mesma UF Calculado
VL_OR ⚙️ line_icmsst.e210_vl_icms_recol_st 🧮
DT_VCTO 🔒 Dia 12 do mês corrente Fixo
COD_REC 🔒 "100099" Fixo
MES_REF 🧮 Mês anterior ao período Calculado

E300/E310 — DIFAL/FCP por UF de Destino

E300 — Identificação da UF

Gerado para cada UF de destino com DIFAL/FCP nas vendas do período.

E310 — Apuração DIFAL/FCP

Divide em dois blocos: DIFAL (diferencial de alíquota) e FCP (fundo de combate à pobreza).

Campo (parte DIFAL) Origem
VL_TOT_DEBITOS_DIFAL 🧮 sum(line.l10n_br_icms_dest_valor) por UF
VL_SLD_CRED_ANT_DIFAL / VL_OUT_DEB_DIFAL / VL_OUT_CRED_DIFAL ... ⚙️ Manual
Campo (parte FCP) Origem
VL_TOT_DEB_FCP 🧮 sum(line.l10n_br_fcp_dest_valor) por UF
VL_SLD_CRED_ANT_FCP / VL_OUT_DEB_FCP / VL_OUT_CRED_FCP ... ⚙️ Manual

E500/E510/E520 — Apuração IPI

E500 — Período IPI

Campo Origem
IND_APUR 🔒 '0' (mensal)
DT_INI / DT_FIN ⚙️ Período do SPED

E510 — Consolidado por CST IPI/CFOP

Agrupa linhas com IPI > 0 por (ipi_cst, cfop):

Campo Origem
CFOP 📋 CFOP da linha
CST_IPI 📋 CST IPI da linha
VL_BC_IPI 📋 sum(ipi_base) agrupado
VL_IPI 📋 sum(ipi_valor) agrupado

Efeito: CFOP 5*,6*e520_vl_deb_ipi. CFOP 1*,2*e520_vl_cred_ipi.

E520 — Apuração IPI

Campo Origem Regra
VL_SD_ANT_IPI ⚙️ self.e520_vl_sd_ant_ipi Saldo anterior
VL_DEB_IPI 🧮 Acumulado no E510 (saídas) 🧮
VL_CRED_IPI 🧮 Acumulado no E510 (entradas) 🧮
VL_OD_IPI / VL_OC_IPI ⚙️ Manual
VL_SC_IPI 🧮 Saldo credor calculado 🧮
VL_SD_IPI 🧮 Saldo devedor calculado 🧮

Referências