Files
GTI_GERENCIADOR_FISCAL/docs/pis_cofins_applicability.md
T
gtiandClaude Sonnet 5 b15dbea213 feat: unified fiscal coverage - PIS/COFINS applicability + conditional RTC in one definition, one queue, one panel
- central/app/unified_fiscal_coverage.py: pure rules (PIS/COFINS NOT_APPLICABLE/REQUIRED/OPTIONAL/NEEDS_REVIEW, RTC only when the ERP switch is on)
- agent: read-only loader (unified_fiscal.py) replaces the legacy/expanded module; findings feed the single operational state, coverage and blocker queue
- hub: BLOCKED_FISCAL_DATA blockers (PIS/COFINS/RTC) share the queue; stale ones close on the next full pass; dashboard breakdown gains CEST/PIS/COFINS/RTC
- panel: legacy/expanded coverage block removed; discreet 'Reforma Tributaria: Ativa/Desativada'
- docs: unified_fiscal_completeness, pis_cofins_applicability, rtc_pis_cofins_model + official source manifests; read-only E2E script

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-24 16:39:53 -03:00

6.3 KiB
Raw Blame History

PIS/COFINS — aplicabilidade no cadastro de produto (SGV)

Implementação: central/app/unified_fiscal_coverage.py (pis_cofins_applicability, evaluate_pis_cofins). Somente leitura; nenhum valor é preenchido. ACCESSED_AT de todas as fontes: 2026-09-24 (hashes em docs/sources/SOURCES_MANIFEST_UNIFIED_FISCAL_V1.json e docs/sources/SOURCES_MANIFEST_V3.json).

1. O que o campo do produto é (e o que não é)

Campos: COD_ENTRADA_PIS, COD_SAIDA_PIS, ALIQ_PIS, COD_ENTRADA_COFINS, COD_SAIDA_COFINS, ALIQ_COFINS, PISCOFINS (N/S), INCIDENCIA_PISCOFINS (NENHUMA / MONOFÁSICA / SUBST.TRIBUTÁRIA).

  • São defaults de cadastro (tela Produtos > Config. Impostos > CST PIS/COFINS; binding provado por DFM em docs/SGV_PRODUCT_FISCAL_UI_MAP_V1.json). Os campos CST usam um seletor com a lista oficial "NN - descrição" (2 dígitos).
  • O SGV copia esses defaults para os itens de documentos de entrada (SQL de inserção do item no executável: COD_SAIDA_PIS, COD_ENTRADA_PIS, COD_SAIDA_COFINS, COD_ENTRADA_COFINS, ... cst_ipi).
  • Não são a tributação efetiva do documento. DOCUMENT_PIS_COFINS_SOURCE: em NFCE_ITENS.CST_PIS_COFINS o CST não vem do cadastro do produto. Evidência (TESTESOFICIAIS): os 3.336 itens com CST 01 são todos de dezembro/2022 (dia 01 a 31, sequência contínua de notas) e independentes do produto (produtos com PISCOFINS=N, campos vazios); antes (jun–nov/2022) e depois (2023–2026) os itens saem com CST em branco; o produto com CST 04/MONOFÁSICA cadastrado emitiu em branco. Nas 4 bases de clientes (~570 mil itens) 100% saem em branco, mesmo para produtos com CST 04 no cadastro (RINCAO). O código do emissor de NFC-e não está disponível localmente (o executável SGV 5.0.6/5.1.0.4 não contém CST_PIS_COFINS), então a regra exata do documento não é comprovável aqui; o que é comprovado é que ela não lê o cadastro do produto.

2. Modelo de aplicabilidade (por produto)

Estado Condição (dados do próprio produto) Efeito
NOT_APPLICABLE flag N/vazio, incidência NENHUMA/vazia, os 6 campos vazios não entra na completude; sem blocker
REQUIRED flag S, ou incidência MONOFÁSICA / SUBST.TRIBUTÁRIA CST de saída válido obrigatório; alíquota conforme CST
OPTIONAL sem alegação especial, mas algum CST/alíquota digitado nada é obrigatório; o que existir tem de ser válido
NEEDS_REVIEW incidência fora do vocabulário do SGV único caso não decidível → "Não classificado"

Base de NOT_APPLICABLE: SIMPLES_DAS para CRT 1/2/4; COMPANY_DEFAULT para CRT 3 e demais (o produto sem tratamento próprio herda o padrão da empresa).

Por que é assim (fontes)

  1. Simples Nacional (CRT 1, 2, 4) — SOURCE Planalto; DOCUMENT LC 123/2006 compilada; ARTICLES art. 13, IV (Cofins) e V (PIS/Pasep): recolhidos mensalmente no DAS; art. 18, §4º-A, I: o contribuinte deve segregar a receita sujeita à tributação monofásica. Logo o produto sem regime especial não tem PIS/COFINS de documento a calcular; só a monofasia exige segregação — e ela é declarada pelo produto (flag S / incidência).
  2. Regime normal (CRT 3) — Lei 9.718/1998 art. 2º-3º (cumulativo, faturamento), Lei 10.637/2002 art. 1º (PIS não cumulativo), Lei 10.833/2003 art. 1º (Cofins não cumulativa). O regime (cumulativo/não cumulativo) é fato da empresa e alimenta o padrão da empresa, não o produto; por isso o produto vazio é NOT_APPLICABLE (COMPANY_DEFAULT) e o perfil da empresa continua sendo pergunta de empresa (OPERATOR_COMPANY_QUESTIONS_V1.md).
  3. Regimes especiais por NCM — SPED EFD-Contribuições, tabelas 4.3.10/4.3.11 (monofásica, CST 02/03/04), 4.3.12 (ST, CST 05), 4.3.13 (alíquota zero, CST 06), 4.3.14 (isenção, CST 07), 4.3.15 (sem incidência, CST 08) — versões 2026 baixadas de sped.rfb.gov.br/arquivo/download/{1638,5786,1642,1643,1646,1651} (SPED_PISCOFINS_TABLES_V3.json; 4.3.13 v1.34 de 16/04/2026). Lei 10.147/2000 (monofasia de medicamentos/perfumaria). Servem para validar coerência (CST × incidência) e para o motor de correção de produto; não tornam obrigatório preencher um produto que não declara nada, porque no SGV o campo não alimenta o documento (item 1).
  4. Domínio de CST — SPED tabelas 4.3.3 (CST-PIS) e 4.3.4 (CST-COFINS): 01–09, 49, 50–56, 60–67, 70–75, 98, 99. O seletor do SGV grava 2 dígitos.
  5. Documento fiscal — NT 2025.002-RTC v1.51 (Portal NF-e, publicada 04/08/2026), Grupos Q (PIS) e S (COFINS): o grupo é obrigatório no item da NF-e (rejeições 745/748), com exceções por finalidade. Isso vale para o documento; não obriga o cadastro do produto a ter o default preenchido.

3. Regras de validação (blockers)

Entrada e saída são avaliadas separadamente; PIS e COFINS são independentes.

Blocker Quando
{PIS,COFINS}_CST_INVALID CST de entrada ou saída digitado que não é um código oficial de 2 dígitos (ex.: 2, 4, 049). Dica no motivo quando um dígito vira código oficial com zero à esquerda (4 → 04); nunca aplicada
{PIS,COFINS}_CST_MISSING produto REQUIRED sem CST de saída
{PIS,COFINS}_RATE_MISSING CST de saída 01/02 sem alíquota
{PIS,COFINS}_RATE_INVALID alíquota não numérica ou > 100
{PIS,COFINS}_CST_INCIDENCE_MISMATCH incidência MONOFÁSICA com CST fora de {02,03,04}; SUBST.TRIBUTÁRIA com CST ≠ 05
PIS_COFINS_FLAG_INCONSISTENT flag N com incidência especial; flag S sem incidência e sem códigos

Alíquota: CST 01/02 exigem percentual; 03 (valor por unidade) e 04–09 não têm percentual; demais CSTs, opcional (validada se existir).

4. Regimes no corpus SGV

Encontrados: CRT 1 (Simples: CONSTRUCAO, MMMODAS, UNIAO, TESTESOFICIAIS) e CRT 3 (RINCAO, via EMISSOR). O motor não assume CRT 1: a base de NOT_APPLICABLE e as regras de validade dependem apenas dos dados do produto; o CRT só escolhe a base (DAS × padrão da empresa) e será usado pelos perfis de empresa.

5. Campos ignorados quando não aplicáveis

Produto NOT_APPLICABLE: os 6 campos, PISCOFINS e INCIDENCIA_PISCOFINS não contam. Candidatos a write target futuro (não usados nesta versão, sem escrita): COD_SAIDA_PIS, COD_SAIDA_COFINS (a partir das tabelas 4.3.10–4.3.15, já aplicadas na missão Local Completion V2 nas cópias autorizadas).