Reforma Tributária 2026
A Emenda Constitucional 132/2023 substitui PIS + COFINS + ICMS + ISS pelos novos tributos:
- IBS (Imposto sobre Bens e Serviços) — federal + estadual + municipal
- CBS (Contribuição sobre Bens e Serviços) — federal
- IS (Imposto Seletivo) — sobre bens prejudiciais à saúde/ambiente
Transição faseada: 2026 começa em ambiente de teste com alíquota simbólica. Plena vigência 2033.
Como o gateway suporta
Cada Account tem uma flag taxRegime:
| Valor | Comportamento |
|---|---|
pre2026 (default) | XML segue layout 4.00 tradicional: ICMS/ISS/PIS/COFINS |
ibs-cbs | XML inclui campos paralelos: vIBS, vCBS, vIS, totalizadores |
A flag é por Account, não por nota. Você muda no dashboard quando seu contador disser “vai”.
Alterando o regime
curl -X PATCH https://api.zfiscoo.zek.app.br/v1/account \
-H "Authorization: Bearer fk_live_..." \
-d '{ "tax_regime": "ibs-cbs" }'A partir desse momento, todas as novas emissões usam o builder de Reforma. Notas já autorizadas permanecem com o regime que tinham na hora da autorização (histórico imutável).
Campos novos no payload
Quando taxRegime = "ibs-cbs", cada item pode informar:
{
"items": [
{
"description": "Produto X",
"quantity": 1,
"unit_price": 100.00,
"ncm": "...",
"cfop": "...",
"vBcIBS": 100.00,
"pIBS": 17.7,
"vIBS": 17.70,
"vBcCBS": 100.00,
"pCBS": 8.8,
"vCBS": 8.80,
"vBcIS": 100.00,
"pIS": 0.0,
"vIS": 0.0,
"cstReforma": "000"
}
]
}Se você não informar vIBS/vCBS, o gateway calcula automaticamente baseado em ncm + cfop + uf usando a
tabela atualizada do CONFAZ (mensal).
Por que tem campos paralelos?
Durante o período transitório (2026-2032), o XML precisa carregar os dois sets de tributos — antigos e novos. A SEFAZ valida ambos, mas só um deles é efetivamente cobrado (depende do regime fiscal do emissor e do ano-calendário). O builder do gateway gera os blocos conforme a regra.
Atualização de alíquotas: o gateway puxa a tabela CONFAZ mensalmente via cron. Você não precisa atualizar tabela alguma na sua aplicação.
Reforma e NFC-e: o que muda no QR-code
O QR-code de NFC-e ganha dois campos novos no URL parameter:
vIBS(valor total IBS)vCBS(valor total CBS)
O leitor SEFAZ valida + apresenta separadamente no app do consumidor.
Migração de cliente existente
1. Avalie com seu contador qual é a data de virada
Pra maioria dos negócios, a data depende do regime tributário e da UF.
2. Teste no sandbox primeiro
# Crie Account de teste com taxRegime='ibs-cbs'
# Emita NFC-e e valide o XML retornado contém <IBSCBS>, <IS>3. No dia X, PATCH /v1/account
Atualize a flag. Notas já em processamento (status=‘processing’) terminam com o regime que tinham.
4. Monitore os primeiros dias
Use o dashboard pra inspecionar XMLs autorizados e validar que os campos novos estão lá.
Roadmap interno
| Marco | Quando | O quê |
|---|---|---|
| 6.1 | Q3 2026 | Builder IBS/CBS/IS + flag por Account + landing /reforma-2026 |
| 7.x | Q1 2027 | Calculadora IBS-CBS por NCM automática (sem tabela manual) |
| 8.x | Q3 2027 | Migration auto: detecta data de virada do regime + aviso 30d antes |
Por enquanto Marco 6.1 está implementado em modo “preview” — funciona, mas a regulamentação federal ainda está sendo fechada (mid-2026 prevê reta final). Pode haver pequenos ajustes de campo até lá.