TP_APURACAOIMPOSTOS - Tipo de Apuração de Impostos (SPED PIS/COFINS)
Tela de configuração: MFI003 — Parâmetros Fiscais Localização: Aba SPED PIS/COFINS → campo Apuração do Imposto Tabela:
PARMFISCAL.TP_APURACAOIMPOSTOSTipo:CHAR(1), obrigatório Valor padrão:S(Soma dos Impostos por Item da Nota)
Descrição
Define o método de cálculo dos valores de PIS e COFINS utilizados na geração dos blocos do SPED PIS/COFINS (Blocos M, A, C e F). O parâmetro controla se o sistema utiliza os valores de imposto já calculados por item de nota ou recalcula o imposto multiplicando a base de cálculo acumulada do período pela alíquota.
Telas impactadas
| Tela | Contexto |
|---|---|
| MFI003 | Tela de configuração onde o parâmetro é definido |
Campos envolvidos
| Campo | Tabela | Descrição |
|---|---|---|
TP_APURACAOIMPOSTOS | PARMFISCAL | Tipo de apuração (S ou C) |
VL_IMPOSTO | IMPOSTONOTACTB | Valor do imposto calculado por item |
VL_BASE | IMPOSTONOTACTB | Valor da base de cálculo por item |
PC_IMPOSTO | IMPOSTONOTACTB | Alíquota do imposto |
Opções disponíveis
S - Soma dos Impostos por Item da Nota
| O que faz | Detalhe |
|---|---|
| Método de cálculo | Soma diretamente os valores VL_IMPOSTO de cada item de nota fiscal |
| Fórmula | SUM(VL_IMPOSTO) por item |
| Comportamento | Utiliza o valor já calculado e gravado em cada item — respeita arredondamentos e ajustes por nota |
| Padrão | Sim (valor default ao criar novo registro) |
Simulação passo a passo
- Acesse MFI003 → Parâmetros Fiscais.
- Selecione a aba SPED PIS/COFINS.
- No campo Apuração do Imposto, selecione Soma dos Impostos por Item da Nota.
- Salve os parâmetros.
- Gere o arquivo SPED PIS/COFINS para o período desejado.
- Nos registros dos Blocos A/M/C/F, o valor de PIS/COFINS será a soma dos campos
VL_IMPOSTOde cada item das notas do período.
Resultado esperado: Os totais de PIS/COFINS nos blocos do SPED refletem exatamente os valores individuais calculados em cada item de nota fiscal, respeitando os arredondamentos de cada documento.
C - Total Base Cálculo Período x Alíquota
| O que faz | Detalhe |
|---|---|
| Método de cálculo | Recalcula o imposto multiplicando a soma das bases do período pela alíquota |
| Fórmula | SUM(VL_BASE) × (PC_IMPOSTO / 100) por alíquota |
| Comportamento | Agrega as bases de todos os itens do período e recalcula — pode gerar diferenças de centavos em relação à soma por item |
| Restrição | Pode divergir dos valores contabilizados por nota |
Simulação passo a passo
- Acesse MFI003 → Parâmetros Fiscais.
- Selecione a aba SPED PIS/COFINS.
- No campo Apuração do Imposto, selecione Total Base Cálculo Período x Alíquota.
- Salve os parâmetros.
- Gere o arquivo SPED PIS/COFINS para o período desejado.
- Nos registros dos Blocos A/M/C/F, o sistema somará todas as bases de cálculo do período para cada alíquota e multiplicará pela alíquota correspondente, produzindo o valor total de imposto.
Resultado esperado: Os totais de PIS/COFINS são calculados a partir da base acumulada do período, podendo apresentar pequenas diferenças de arredondamento em comparação à soma individual por item.
Exceção / Importante: Ao utilizar a opção
C, o valor apurado no SPED pode divergir dos valores lançados na contabilidade (que usamVL_IMPOSTOpor item). Essa divergência é de arredondamento e é esperada quando há muitas notas com bases pequenas no mesmo período.
Procedures impactadas
Rotinas Delphi
| Rotina | Arquivo | Descrição |
|---|---|---|
TdmMFI003.tabPARMFISCALAfterInsert | source/MFI003/UdmMFI003.pas | Atribui valor padrão 'S' ao campo ao inserir novo registro |
Referências SQL diretas ao campo
| Procedure/View | Arquivo | Uso |
|---|---|---|
IMPOSTONOTACTBSPED | Scripts/IMPOSTONOTACTBSPED.sql | View que recalcula VL_IMPOSTO: se S, usa VL_IMPOSTO; se C, usa VL_BASE × (PC_IMPOSTO / 100) |
RETORNA_SPEDBLOCOM | Scripts/RETORNA_SPEDBLOCOM.sql | Lê o parâmetro para decidir o cálculo no Bloco M (consolidação de créditos) |
RETORNA_SPEDBLOCOM100 | Scripts/RETORNA_SPEDBLOCOM100.sql | Lê o parâmetro para registros M100/M105 (créditos PIS) |
RETORNA_SPEDBLOCOM200 | Scripts/RETORNA_SPEDBLOCOM200.sql | Lê o parâmetro para registros M200/M205 (PIS a recolher) |
RETORNA_SPEDBLOCOM210 | Scripts/RETORNA_SPEDBLOCOM210.sql | Lê o parâmetro para registros M210/M215 (detalhamento PIS) |
RETORNA_SPEDBLOCOM215 | Scripts/RETORNA_SPEDBLOCOM215.sql | Lê o parâmetro para registros M215 |
RETORNA_SPEDBLOCOM500 | Scripts/RETORNA_SPEDBLOCOM500.sql | Lê o parâmetro para registros M500/M505 (créditos COFINS) |
RETORNA_SPEDBLOCOM600 | Scripts/RETORNA_SPEDBLOCOM600.sql | Lê o parâmetro para registros M600/M605 (COFINS a recolher) |
RETORNA_SPEDBLOCOM610 | Scripts/RETORNA_SPEDBLOCOM610.sql | Lê o parâmetro para registros M610/M615 (detalhamento COFINS) |
RETORNA_SPEDBLOCOM615 | Scripts/RETORNA_SPEDBLOCOM615.sql | Lê o parâmetro para registros M615 |
Candidatas por uso da tabela
As procedures abaixo referenciam a tabela PARMFISCAL mas não citam o campo TP_APURACAOIMPOSTOS diretamente: GERA_SPEDPISCOFINS, GERA_INTEGRACAOIMPOSTO, CONTABILIZA_IMPOSTONOTACTB, entre outras listadas no inventário. Impacto indireto possível via IMPOSTONOTACTBSPED.
Regra geral
O parâmetro atua como um desvio de cálculo em todas as rotinas de geração do SPED PIS/COFINS:
S(padrão):SUM(VL_IMPOSTO)— soma os valores já calculados item a item.C:SUM(VL_BASE) × (PC_IMPOSTO / 100)— recalcula a partir da base acumulada.
A view IMPOSTONOTACTBSPED é consumida indiretamente por várias procedures de geração SPED, garantindo que o desvio se propague para os blocos M, A, C e F.
Tabela comparativa resumida
| Opção | Nome | Fórmula | Arredondamento | Utiliza |
|---|---|---|---|---|
S | Soma dos Impostos por Item da Nota | SUM(VL_IMPOSTO) | Por item, já gravado | Valor individual de cada nota |
C | Total Base Cálculo Período × Alíquota | SUM(VL_BASE) × (PC_IMPOSTO / 100) | Global, no período | Base acumulada × alíquota |