CFOP e CST são dois campos que precisam contar a mesma história sobre a mesma operação. Quando um diz que houve venda com substituição tributária e o outro diz que a operação foi tributada normalmente, a nota está se contradizendo sozinha — e essa contradição é uma das primeiras coisas que um cruzamento automatizado encontra.
Este texto mostra as combinações que mais aparecem, como localizá-las no seu acervo e o que fazer depois.
O que cada campo declara
O CFOP, Código Fiscal de Operações e Prestações, declara a natureza da operação: se é venda ou devolução, se é dentro ou fora do estado, se envolve substituição tributária, se é remessa, industrialização, transferência.
O CST, Código de Situação Tributária, declara como aquele item específico foi tributado: tributado integralmente, isento, não tributado, com substituição, com redução de base, diferido.
O CFOP descreve o contexto. O CST descreve o tratamento. Eles precisam ser compatíveis, e a compatibilidade é verificada por item, não por nota — uma nota pode ter dez itens com dez CSTs diferentes, e todos precisam fazer sentido com o CFOP daquela linha.
Por que a divergência acontece na prática
Quase nunca por má-fé. Os três motivos mais comuns são estruturais:
Regra de tributação criada para um caso e nunca revisada. Alguém configurou uma exceção no ERP para atender um cliente específico há dois anos. O cenário mudou, a regra ficou. Agora ela aplica um CST que não conversa mais com o CFOP que o sistema calcula.
Cadastro de produto desatualizado. O item mudou de enquadramento — entrou ou saiu de substituição tributária — e o cadastro não acompanhou. O CFOP passa a ser calculado por uma lógica e o CST por outra.
Operação nova em cenário antigo. A empresa começou a vender para outro estado, ou passou a fazer devolução, ou virou substituta. O CFOP muda automaticamente; o CST continua o de antes.
O padrão dos três é o mesmo: não é erro de digitação, é erro de configuração. Por isso ele nunca aparece uma vez só. Aparece em todas as notas daquele item, daquele cliente ou daquela operação, mês após mês, até alguém olhar.
As combinações que mais geram divergência
- CFOP da família de substituição tributária com CST que não é de ST. A operação declara que houve retenção e o item declara tributação normal. É a mais comum e a mais visível.
- CST de substituição tributária sem valor de ICMS-ST lançado. O item afirma que houve ST, mas não há valor retido. Ou o CST está errado, ou o cálculo não aconteceu.
- CFOP de venda tributada com CST de isenção. Ou a operação não era isenta, ou o CFOP deveria refletir a isenção.
- CFOP de devolução com CST que não espelha a nota original. A devolução precisa devolver o mesmo tratamento tributário da entrada. Quando não espelha, gera crédito ou débito indevido.
- CFOP interestadual com CST de operação interna. Costuma vir junto com alíquota errada, porque a causa raiz é a mesma: cadastro de cliente com UF incorreta.
Como localizar no seu acervo
No SPED, a informação está no registro C170, que traz os itens de cada documento. O CFOP e o CST de ICMS estão lá, linha a linha.
O problema é que o C170 sozinho não te diz de qual nota aquele item veio, e nem qual era a alíquota cadastrada para o produto. Para uma conferência que sirva, você precisa juntar três registros:
- C100 — a capa do documento: número, data, participante, situação
- C170 — os itens: CFOP, CST, valores, alíquotas
- 0200 — o cadastro do produto: descrição, NCM, alíquota cadastrada
Com os três unidos numa base só, a conferência vira filtro de planilha: agrupe por par CFOP + CST e olhe os pares que aparecem. Os corretos vão se repetir milhares de vezes. Os errados aparecem em grupos pequenos e estranhos — e é justamente aí que está o problema.
No XML, a informação está dentro de cada item, na tag do imposto. A vantagem de conferir aqui é que este é o documento que a SEFAZ já tem. A desvantagem é o volume: são milhares de arquivos separados, e sem extração automatizada não há como cruzar.
Uma verificação que vale ouro: rode a mesma checagem nos dois lados. Se o par bate no XML e não bate no SPED, o erro nasceu na escrituração. Se não bate nos dois, nasceu no cadastro. Isso te diz onde corrigir.
O que fazer ao encontrar
Antes de corrigir nota, entenda o alcance. Uma divergência isolada é ajuste pontual. A mesma divergência em duzentas notas é uma regra mal configurada, e corrigir as notas sem corrigir a regra só adia o problema para o mês seguinte.
Depois, avalie o impacto. Nem toda divergência gera imposto a pagar. Algumas geram crédito indevido para o destinatário, outras são inconsistência formal. A ordem de correção deve seguir o dinheiro exposto, não a ordem alfabética.
Por último, corrija na origem — cadastro do produto ou regra de tributação — e só então trate o passado. E vale considerar retificação apenas onde há impacto real de apuração; retificar por inconsistência formal isolada nem sempre compensa.
A parte inviável
Conferir a coerência entre CFOP e CST é simples em cem notas. Você exporta, filtra, olha os pares.
Em três mil notas com dez itens cada, são trinta mil linhas. E essa é apenas uma das verificações — ainda tem alíquota contra cadastro, monofásico com débito destacado, CEST fora de contexto, documento cancelado com valor lançado, prova real dos itens.
É aqui que a conferência manual deixa de ser questão de disciplina e vira questão de aritmética.
A Fiskai faz esse cruzamento automaticamente.
Você envia o SPED em .TXT e os XMLs — soltos, em pasta ou num .ZIP — e a plataforma decodifica o layout oficial, junta C100, C170 e 0200 numa linha só e roda as verificações de conformidade sobre os dois acervos. Sai uma base em Excel, um dashboard, um laudo em PDF e um assistente de IA ancorado nos números daquela auditoria.
A Fiskai está em pré-lançamento. Quem entra na lista de espera testa o plano Escritório Pro por 10 dias, sem cartão e sem compromisso.
Entrar na lista de esperaPerguntas frequentes
- CFOP e CST precisam bater em todos os itens da nota?
- Sim. A verificação é por item, não por documento. Uma nota pode ter itens com tratamentos tributários diferentes, e cada linha precisa ser coerente consigo mesma.
- Divergência entre CFOP e CST gera multa automaticamente?
- Não automaticamente. Ela é uma inconsistência que pode ser identificada em cruzamento e levar a questionamento. O impacto depende de haver ou não diferença de imposto, e do que a legislação aplicável ao caso prevê.
- Onde encontro o CFOP e o CST no arquivo do SPED?
- No registro C170, que traz os itens de cada documento fiscal. O C100 traz a capa e o 0200 traz o cadastro do produto.
- Dá para conferir sem software?
- Dá, em volume pequeno. Exporte a base, agrupe pelos pares CFOP e CST e analise os grupos com poucas ocorrências. A partir de alguns milhares de itens isso deixa de ser praticável.