0015 — IBS/CBS: o grupo fica para quando for obrigatório e houver tabela¶
Status: Aceita Data: 2026-09-29
Contexto¶
O leiaute v1.01 acrescenta ao infDPS o grupo opcional IBSCBS, da reforma
tributária (LC 214/2025): 28 tipos complexos e mais de cem regras novas de
rejeição. A issue #21
pediu que a pergunta de negócio viesse antes da técnica: quando um MEI ou
ME/EPP precisa declarar IBS/CBS, e a partir de quando?
A resposta abaixo vem só dos documentos oficiais versionados no repositório, com a origem de cada afirmação.
O que os documentos dizem¶
| Afirmação | Fonte |
|---|---|
| "Para optantes dos Simples Nacional, os grupos IBSCBS só serão obrigatórios a partir de 2027." | ANEXO I v1.01, aba "LEIAUTE DPS_NFS-e", nota do grupo infDPS/IBSCBS (e do infNFSe/IBSCBS) |
| O grupo só é aceito com competência a partir de 01/01/2026. | E0850 |
O grupo só é aceito numa DPS versao="1.01". |
E0854 |
Com o grupo, a DPS precisa trazer um item da NBS (cServ/cNBS). |
E0322 |
Uma DPS 1.00 sem o grupo passa no schema: TVerNFSe aceita 1.00\|1.01 e o IBSCBS tem minOccurs="0". |
tiposSimples_v1.01.xsd, tiposComplexos_v1.01.xsd |
| Existe uma rejeição por "prazo de aceitação da versão do leiaute ultrapassado", sem data. | E0001 |
O grupo exige finNFSe, cIndOp, indDest e, em valores/trib/gIBSCBS, CST e cClassTrib. O cIndOp precisa constar do ANEXO C (E0901); o cClassTrib é validado por uma "Calculadora" externa (E0958); o CST precisa ser o prefixo do cClassTrib (E0959). |
leiaute e regras E0901, E0958, E0959 |
O indFinal do grupo "será descontinuado a partir da implantação do layout da NT 005 que ocorrerá ao longo de 2026, em data a ser divulgada". É o único indício oficial de que o leiaute muda de novo. |
ANEXO I v1.01, aba "LEIAUTE DPS_NFS-e", nota de infDPS/IBSCBS/indFinal |
O que eles não dizem:
- o dia exato em 2027, nem se a data de referência é a competência ou a emissão;
- como a obrigatoriedade será cobrada: nenhuma regra de v1.01 recusa uma DPS por falta do grupo;
- quando a versão 1.00 deixa de ser aceita;
- quais
CSTecClassTribum prestador do Simples deve usar. A tabela de classificação não está no repositório, e as notas técnicas NT 005 e NT 007, citadas pelos documentos, também não.
Decisão¶
Não gerar o grupo IBSCBS agora. Continuar emitindo a DPS 1.00, que é
válida no schema atual e foi aceita em produção restrita em 18/09/2026.
Avisar a partir de 2027. Uma emissão com competência a partir de
01/01/2027 imprime um aviso: o ANEXO I torna o grupo obrigatório para
optantes do Simples, e este emissor ainda não o gera. Todo prestador que o
emissor atende é optante (opSimpNac 2 ou 3). É um aviso, não uma recusa.
Nenhuma regra recusa a DPS ainda, e o emissor recusar o que a Sefin talvez
aceite seria adivinhar.
Começar a implementação quando houver o que implementar sem adivinhar:
- a tabela oficial de
CST/cClassTribpara serviços, com as marcasexigeGrupoTributacaoRegularepermiteDiferimentoque as regras E0964, E0965, E0971 e E0972 consultam; - a correspondência entre o
cTribNace a NBS, para preencher ocNBSque a E0322 exige. O ANEXO B v1.01 traz as duas listas, mas não a correspondência entre elas; - a NT que fixar a data e a forma de cobrança da obrigatoriedade.
Com isso em mãos, boa parte do caminho técnico já existe: o DANFSe imprime o bloco IBS/CBS quando a nota o traz, e o validador pelo XSD da ADR 0014, que usa o pacote v1.01, confere o grupo inteiro.
Consequências¶
- Nenhuma mudança para quem emite em 2026. A DPS continua a mesma.
- Quem emitir com competência de 2027 é avisado antes de enviar, com o link para acompanhar.
- O risco que fica: se a obrigatoriedade for cobrada a partir de 1º de janeiro e as tabelas chegarem tarde, haverá um intervalo em que o emissor não atende. O aviso existe para que isso não seja uma surpresa.
CST,cClassTribecIndOpnão entram na configuração como texto livre "para adiantar". Um código errado nesses campos vira imposto errado numa nota válida, que é o pior resultado possível (ADR 0006).
Alternativas consideradas¶
Implementar o grupo com valores configuráveis pelo usuário. Tecnicamente
possível, e o validador pegaria erros de formato. Mas o usuário teria de saber
qual cClassTrib usar, que é exatamente a informação que falta. Na prática
seria transferir o chute para ele.
Recusar a emissão a partir de 2027. Seria mais seguro se a rejeição fosse certa, mas nenhum documento a estabelece. Recusar o que a Sefin talvez aceite deixaria o emissor mais restritivo que o governo, sem motivo.
Aprendizado¶
A pergunta de negócio encurtou o trabalho: a resposta ("2027, e a tabela ainda não existe no repositório") transformou uma versão inteira de código num aviso de uma linha e numa lista do que buscar. Perguntar primeiro custou uma tarde de leitura. Implementar primeiro teria custado 28 tipos complexos preenchidos no escuro.