# ICMS-ST e CEST

O **ICMS-ST (Substituição Tributária)** transfere a responsabilidade do recolhimento do ICMS para um contribuinte diferente do que realiza o fato gerador - tipicamente o fabricante ou importador recolhe o ICMS das operações subsequentes antecipadamente.

## Quando se aplica

O regime de ST é definido por **convênio/protocolo entre UFs** e varia por NCM. Na nota, a ST aparece em operações com os seguintes códigos:

- **CST**: 10, 30, 60, 70 (regime normal de tributação).
- **CSOSN**: 201, 202, 203, 500, 900 (Simples Nacional).

## CEST obrigatório

Sempre que o produto está sujeito a ST, o **CEST (Código Especificador da Substituição Tributária)** é obrigatório e deve ter **7 dígitos**. Sem CEST, a SEFAZ devolve **rejeição 806**.

A API valida o tamanho do CEST e remove formatação automaticamente (qualquer caractere não numérico é descartado antes do envio à SEFAZ).

## Cálculo da base de ST (MVA)

A base de cálculo do ICMS-ST é calculada com a **Margem de Valor Agregado (MVA)** definida pela UF destino para cada NCM. A MVA é informada **por produto**, no campo `Imposto.ICMS.AliquotaMVA`:

```
BaseST = (vProd + vFrete + vSeg + vOutro − vDesc) × (1 + MVA%)
vICMSST = BaseST × pICMSST − vICMS
```

A MVA varia por UF + NCM e é responsabilidade do integrador enviá-la corretamente. Quando há redução de base de ST, preencha `Imposto.ICMS.RedICMSST` (em %) - default 0 (sem redução). Quando há redução de base de ST com ICMS próprio reduzido, ambos podem ser combinados conforme o CST/CSOSN escolhido.

## Simples Nacional (CSOSN)

- **201/202/203** - saídas com ST em operações interestaduais; exigem CEST e MVA.
- **500** - ICMS já recolhido anteriormente (complemento de ST).
- **900** - outras operações com ST, incluindo ICMS antecipado.

## Ver também

- [CSOSN vs CST](/conceitos-fiscais/csosn-vs-cst)
- [Regimes Tributários (CRT)](/conceitos-fiscais/regimes-tributarios)
- [Rejeições SEFAZ](/conceitos-fiscais/rejeicoes/index)
