Substitutos Tributários — Retenção de ISS na fonte
Base: IPATINGA_NOTAS (MySQL 5.7.42) · somente leitura.
Fontes: sig_iss_t19_notas_fiscais (2023+, vivo), nfse (2014–2020, histórico), status_contribuinte (flags), livro (livro de serviços), recibo_retencao (recibos do prestador).
1. O que é o substituto no sistema
O figura do substituto tributário aqui é o tomador que recebe serviços com ISS retido na fonte e que, por isso, mantém escrituração própria no livro de serviços tomados — e é quem recolhe o ISS ao município.
Três mecanismos no schema sustentam o papel:
| elemento | onde | o que faz |
|---|---|---|
t19_retencao = '1' |
sig_iss_t19_notas_fiscais |
marca a nota como com ISS retido (o prestador reteve, o tomador paga) |
livro tipo 'T' |
livro |
livro de serviços tomados do substituto — base e ISS a recolher |
recibo_retencao |
recibo_retencao |
recibo que o prestador entrega ao substituto, provando a retenção |
status_contribuinte.t01_substituto |
status_contribuinte |
flag cadastral de substituto (histórico temporal, dt_inicial/dt_final) |
status_contribuinte.t01_retencao_tomada |
status_contribuinte |
flag de retenção como tomador |
No nfse (base antiga) o mesmo papel aparece em situacao = 'RETIDA'.
A USIMINAS confirma o padrão
| CNPJ / CCM | 60894730002582 / 101200 |
| notas emitidas por ano | 2 (2023) · 3 (2024) · 2 (2025) · 0 (2026) |
| notas recebidas por ano | 10.845 · 10.524 · 10.803 · 12.123 |
| notas retidas recebidas | 10.447 · 10.183 · 10.478 · 11.951 (96% a 99%) |
| prestadores distintos | 117 · 105 · 116 · 154 |
| ISS retido (corrigido) | R$ 49,1 mi · R$ 27,4 mi · R$ 31,2 mi · R$ 33,8 mi |
Confirmado: a USIMINAS praticamente não emite NFS-e — é grande tomadora, e 97% do que recebe chega retido.
2. O universo de substitutos (2023–2026)
Tabela sig_iss_t19_notas_fiscais, t19_retencao='1', excluindo notas canceladas (t19_situacao='ca') e valores-sentinela (≥ 99.999.999,99).
| ano | substitutos (CNPJ+CCM) | notas retidas | base R$ | ISS retido R$ | % s/ base |
|---|---|---|---|---|---|
| 2023 | 603 | 45.266 | 2.149.684.178,46 | 61.398.195,60 | 2,86% |
| 2024 | 727 | 46.519 | 1.442.694.478,92 | 41.401.349,32 | 2,87% |
| 2025 | 860 | 46.787 | 1.607.440.589,73 | 47.411.813,15 | 2,95% |
| 2026 | 2.292 | 51.279 | 1.897.631.098,95 | 55.012.603,89 | 2,90% |
| TOTAL | 2.697 | 189.851 | 7.097.450.346,06 | 205.223.961,96 | 2,89% |
São 2.638 CNPJs distintos — 52 deles têm mais de um CCM (sedes/estabelecimentos) e aparecem como mais de uma linha no catálogo.
A taxa de 2,86%–2,95% é coerente com as alíquotas de ISS vigentes (2%, 2,5%, 3%, 3,5%, 5%) — sinal de que o filtro está correto.
Os 20 maiores
| CNPJ | CCM | Razão social | notas retidas | base | ISS retido | prest. | t01_substituto |
|---|---|---|---|---|---|---|---|
| 60894730002582 | 101200 | USINAS SIDERURGICAS DE MINAS GERAIS | 40.658 | 4.773.537.580,21 | 141.547.385,32 | 235 | 1 |
| 19878404000100 | 20500 | FUNDACAO SAO FRANCISCO XAVIER | 37.540 | 561.885.444,09 | 16.733.924,68 | 754 | 1 |
| 19876424000142 | 3875000 | MUNICIPIO DE IPATINGA | 6.744 | 593.558.908,64 | 14.835.652,12 | 159 | 1 |
| 19878404001000 | 20506 | FUNDACAO SAO FRANCISCO XAVIER | 8.643 | 112.324.128,85 | 3.317.254,82 | 251 | 1 |
| 02830943000258 | 7463200 | UNIGAL LTDA | 1.571 | 100.263.480,79 | 2.555.457,15 | 27 | 1 |
| 06981180000116 | 9831200 | CEMIG DISTRIBUICAO S.A | 1.308 | 55.189.220,59 | 1.688.177,91 | 58 | 1 |
| 17281106000103 | 15472800 | COPASA MG | 3.502 | 45.293.552,11 | 1.479.160,37 | 45 | 1 |
| 00360305233206 | 862701 | CAIXA ECONOMICA FEDERAL | 2.927 | 45.226.037,68 | 1.310.310,42 | 60 | 1 |
| 21154554000113 | 8678700 | TRIBUNAL DE JUSTIÇA DE MG | 162 | 26.807.629,26 | 807.161,08 | 12 | 0 |
| 19878404001506 | 20507 | FUNDACAO SAO FRANCISCO XAVIER | 1.790 | 30.706.083,81 | 780.941,49 | 65 | 1 |
| 42956441003046 | 25670100 | SOLUCOES EM ACO USIMINAS S.A. | 412 | 24.651.443,08 | 754.178,82 | 22 | 1 |
| 58239603000120 | −2042350201 | CONCESSIONÁRIA DE RODOVIA NOVA | 55 | 17.318.154,84 | 745.935,39 | 10 | 0 |
| 19905116000106 | 161200 | CONVACO CONSTRUTORA VALE DO AÇO | 5.231 | 20.372.275,41 | 691.844,79 | 187 | 1 |
| 04644515000185 | 7970300 | TODOS EMPREENDIMENTOS LTDA | 990 | 19.112.290,24 | 555.238,88 | 72 | 1 |
| 33592510015933 | −877019 | VALE S.A. | 183 | 15.779.790,78 | 499.598,68 | 5 | 0 |
| 07594881000165 | 10214200 | WR CONSTRUTORA E INCORPORADORA | 2.794 | 16.074.926,48 | 464.466,60 | 174 | 1 |
| 06981176000158 | 9746402 | CEMIG GERAÇÃO E TRANSMISSÃO | 962 | 15.195.904,76 | 463.651,81 | 49 | 1 |
| 19871680000147 | 7415100 | CÂMARA MUNICIPAL DE IPATINGA | 407 | 14.419.862,27 | 447.508,26 | 33 | 1 |
| 24232886018961 | 27186002 | PRÓ SAÚDE – ASSOC. BENEFICENTE | 1.923 | 15.004.984,30 | 438.172,86 | 65 | 1 |
| 17197385014262 | 789200 | (não cadastrado) | 1.614 | 10.379.877,27 | 330.579,48 | 25 | — |
A USIMINAS sozinha responde por 69% do ISS retido do município (R$ 141,5 mi de R$ 205,2 mi), com 235 prestadores. É o substituto de maior consequência fiscal do período.
3. Reconciliação: livro de serviços tomados × notas retidas (USIMINAS, 2025)
| mês | livro T — faturamento | livro T — ISS | notas retidas | ISS retido | notas recebidas (todas) | ISS de todas |
|---|---|---|---|---|---|---|
| 1 | 102.175.569,07 | 3.029.253,97 | 763 | 1.997.513,44 | 785 | 2.165.293,49 |
| 2 | 110.762.738,53 | 3.281.988,73 | 807 | 2.355.179,67 | 832 | 2.514.784,16 |
| 3 | 95.822.307,48 | 2.837.275,83 | 1.100 | 2.286.565,56 | 1.122 | 2.459.917,99 |
| 4 | 121.073.246,55 | 3.597.401,67 | 819 | 2.706.839,18 | 847 | 2.886.399,74 |
| 5 | 154.357.662,09 | 4.268.262,93 | 843 | 2.927.865,95 | 862 | 3.090.181,70 |
| 6 | 171.450.993,36 | 4.802.994,66 | 905 | 3.344.333,92 | 927 | 3.527.430,92 |
| 7 | 172.040.288,19 | 4.955.925,48 | 954 | 3.438.304,55 | 984 | 3.612.408,19 |
| 8 | 168.969.315,84 | 4.885.147,18 | 830 | 3.630.317,18 | 861 | 3.706.032,55 |
| 9 | 141.184.783,58 | 4.059.106,41 | 886 | 2.560.137,66 | 915 | 2.618.062,60 |
| 10 | 138.011.682,18 | 3.969.987,27 | 826 | 2.589.410,11 | 864 | 2.625.918,39 |
| 11 | 130.921.389,71 | 3.695.697,59 | 733 | 2.572.697,11 | 760 | 2.645.906,17 |
| 12 | 172.072.795,51 | 4.782.295,51 | 1.012 | 3.421.517,12 | 1.044 | 3.489.654,17 |
| 2025 | 1.678.842.772,09 | 48.165.337,23 | 10.478 | 33.830.681,45 | 10.803 | 35.341.990,07 |
Leitura: o livro de serviços tomados do substituto é maior que as notas recebidas no sistema municipal — R$ 1,68 bi contra R$ 1,18 bi de base, e R$ 48,17 mi contra R$ 35,34 mi de ISS (+36%). A taxa implícita do livro é 2,87%, coerente com ISS.
Isso indica que o livro tem escopo mais amplo que o NFS-e municipal: inclui serviços recebidos de prestadores que não emitiram nota aqui (outros municípios, ou prestadores não obrigados), declarados pelo substituto. Não é erro, é amplitude — mas significa que o livro não pode ser reconciliado 1:1 com as notas, e a diferença precisa ser explicada na declaração.
Livro de serviços da USIMINAS por ano
| tipo | ano | linhas | faturamento | ISS | competências fechadas |
|---|---|---|---|---|---|
| P (prestados) | 2023 | 2 | 126.274,00 | 3.788,22 | 2 |
| P | 2024 | 1 | 27.773,00 | 833,19 | 1 |
| P | 2025 | 1 | 2.142,00 | 64,26 | 1 |
| T (tomados) | 2022 | 12 | 1.573.626.992,63 | 39.690.770,99 | 12 |
| T | 2023 | 12 | 2.639.920.839,15 | 76.302.672,37 | 12 |
| T | 2024 | 12 | 1.395.608.524,99 | 41.365.830,48 | 12 |
| T | 2025 | 12 | 1.678.842.772,09 | 48.165.337,23 | 12 |
| T | 2026 | 10 | 1.417.777.751,26 | 28.748.269,96 | 4 de 10 |
O contraste é o mais forte do caso: R$ 13,7 bilhões de serviços tomados contra R$ 8,8 milhões de serviços prestados (2010–2026). É uma tomadora pura.
⚠️ 2026 está incompleto: só 4 das 10 competências fechadas (status=1). As 6 competências em aberto somam R$ 1,42 bi de faturamento e R$ 28,7 mi de ISS ainda não consolidados — em fechamento.
4. Problemas encontrados
4.1 — Recibo de retenção duplicado (170 substitutos afetados)
recibo_retencao deveria ter 1 linha por nota retida. Tem 13.235 linhas para 9.288 notas distintas.
| ano | linhas | notas distintas | fator | ISS somado | ISS real |
|---|---|---|---|---|---|
| 2022 | 3.056 | 2.794 | 1,094 | 1.006.594,79 | 920.296,41 |
| 2023 | 2.066 | 1.558 | 1,326 | 506.734,68 | 382.135,83 |
| 2024 | 5.243 | 3.029 | 1,731 | 14.188.266,26 | 8.196.883,18 |
| 2025 | 2.461 | 1.574 | 1,564 | 365.242,90 | 233.601,11 |
170 CNPJs substitutos têm fator > 1,05 (137 pares CNPJ+CCM no catálogo). Os piores são a USIMINAS (1,997) e o grupo Cooperativa de Consumo dos Empregados da Usiminas (CNPJs 19860683xxx, fatores 1,47 a 1,80).
Na USIMINAS em 2024: 1.753 notas, todas com exatamente 2 cópias (fator 1,997), o ISS somado é o dobro do real (R$ 13.977.326,32 vs R$ 6.988.663,16).
Par duplicado concreto — mesma nota, gerado 17 segundos antes:
id_recibo 1965 | id_nota 10435975 | CNPJ 43211325000550 | base 184.921,26 | ISS 5.547,64 | 2024-07-12 14:57:14 | MASTER
id_recibo 1966 | id_nota 10435975 | CNPJ 43211325000550 | base 184.921,26 | ISS 5.547,64 | 2024-07-12 14:57:31 | MASTER
As duas linhas têm controle = 1 — o flag de controle não impede a duplicação.
Risco: o recibo é a prova da retenção. Duplicado, o substituto pode reter ou recolher em dobro, ou o provedor pode ser creditado duas vezes.
4.2 — Número da nota gravado como INT_MAX em 68% dos recibos
recibo_retencao com nota = 2147483647 |
9.008 de 13.235 linhas (68%) |
Para a USIMINAS em 2024, todas as 2.290 linhas têm nota = 2147483647 em vez do número real da nota. O recibo é o documento que liga prestador, tomador e nota — com o número quebrado, a rastreabilidade está perdida.
4.3 — Notas-sentinela de R$ 1 bilhão em 2026
Duas notas com valor = base = 999.999.999,99, ambas t19_situacao='ca' (canceladas) e t19_retencao='1':
| t19_id | prestador | tomador | mês | valor | base | ISS | vr_atividade |
|---|---|---|---|---|---|---|---|
| 53041394 | 62852154000169 | 19878404000100 (Fundação S. F. Xavier) | 06/2026 | 999.999.999,99 | 999.999.999,99 | 999.999.999,99 | 3,0000 |
| 52854194 | 19878404000100 | 17361536000135 | 05/2026 | 999.999.999,99 | 999.999.999,99 | 0,00 | 3,0000 |
A primeira tem ISS igual ao valor total, embora a alíquota seja 3% — deveria ser R$ 30 milhões. Sozinha ela representava 99,5% do ISS retido de 2026 do CCM 20500. Filtrando situacao='ca' e sentinelas, o número de 2026 cai de R$ 1,06 bilhão para R$ 55,0 milhões — taxa de 2,90%, coerente com os demais anos.
4.4 — Notas canceladas somadas nos totais
t19_situacao='ca' tem R$ 6,36 bilhões de ISS em 2026 (70.750 notas). Qualquer agregação que não filtre a situação mistura ISS cancelado com ISS a recolher.
4.5 — O cadastro de substitutos está defasado
| substitutos reais (notas retidas, 2023–2026) | 2.697 pares (CNPJ+CCM) / 2.638 CNPJs |
com t01_substituto = 1 |
258 (9,6%) |
com t01_retencao_tomada = 1 |
9 |
| sem nenhuma linha no livro de serviços tomados | 115 |
A flag t01_substituto cobre bem os grandes (USIMINAS, Fundação São Francisco Xavier, Município de Ipatinga, CEMIG, Caixa), mas 2.439 substitutos reais não estão marcados — VALE S.A., Tribunal de Justiça, Concessionária de Rodovia Nova, Unigal, Convaço, WR Construtora, Todos Empreendimentos, Pró Saúde.
E a USIMINAS tem t01_retencao_tomada = 0 — o flag esteve ligado por apenas 11 minutos em 04/10/2023 e nunca mais voltou. Como é o maior substituto do município, o cadastro não reflete a operação.
Os 115 substitutos sem livro de serviços tomados também merecem atenção: se há retenção na fonte, o tomador é o responsável pelo recolhimento — e sem livro registrado não há como conferir se o ISS foi recolhido.
5. Recomendações
Imediato
1. Deduplicar recibo_retencao por (id_nota, cnpj_tomador) e criar chave única — 170 substitutos, R$ 6,0 mi de ISS somado indevidamente só em 2024.
2. Corrigir o campo nota (9.008 linhas com INT_MAX) e reemitir os recibos afetados — sem o número da nota o recibo não tem valor probatório.
3. Excluir as 2 notas-sentinela de R$ 1 bi e revisar se há outras com o mesmo padrão (valor = 999.999.999,99).
Sistema
4. Gravar a retenção sempre no bucket correto do ledger do tomador, e garantir que situacao='ca' nunca entre em totais de ISS.
5. Regenerar o cadastro de substitutos a partir das notas retidas (2.638 empresas) em vez de depender de marcação manual — e corrigir t01_retencao_tomada da USIMINAS.
6. Tornar a emissão do recibo idempotente (não reemitir se já existe para a nota) e validar controle na geração.
Auditoria 7. Conciliar o livro de serviços tomados com a declaração: o livro da USIMINAS tem R$ 1,68 bi contra R$ 1,18 bi de notas recebidas — a diferença de R$ 12,8 mi de ISS precisa ser explicada (serviços de fora do município) ou corrigida. 8. Fechar as 6 competências de 2026 ainda abertas da USIMINAS (R$ 28,7 mi de ISS em aberto). 9. Auditar o grupo Cooperativa de Consumo dos Empregados da Usiminas (19860683xxx) — 8 CNPJs com duplicação de recibo entre 1,47 e 1,80.
Arquivos
| arquivo | conteúdo |
|---|---|
substitutos_tributarios.csv |
catálogo dos 2.697 substitutos (2.638 CNPJs): notas, base, ISS retido, prestadores, flags, livro T, recibos, fator de duplicidade |
substitutos_final.txt |
saída completa da consolidação (universo, top 20, USIMINAS, duplicidade, sentinelas) |
analise_substitutos_final.py |
script da consolidação |
export_substitutos.py |
gerador do CSV |
notas_sentinela.txt |
busca de valores-sentinela (execução interrompida por timeout — refazer por índice) |