vBC = 0.00 - o SPED-PHP entende que “não existe tributação” e simplesmente NÃO GERA os subgrupos

56 views
Skip to first unread message

Renato Igleziaz

unread,
Dec 9, 2025, 4:26:09 PM (10 days ago) Dec 9
to NFePHP
Estou com esse problema:
  • Água galão 20L (NCM 22011000)

  • CST ICMS = 60 (ST na compra → revenda sem destaque)

  • PIS/Cofins = CST 06 (não tributado)

  • IBS/CBS = CST 000 (tributação normal → mas como água NÃO é monofásica, valores = zero)

  • Sem regime especial

  • Operação interna

  • Simples Nacional (CRT = 3)

  • vBC = 0,00

Este é o modelo 100% aceito nas homologações atuais (NT 2024.001 + PL10)

Quando você informa vBC = 0.00, o SPED-PHP entende que “não existe tributação” e simplesmente NÃO GERA os subgrupos:

  • <gIBSCBS>

  • <gIBSUF>

  • <gIBSMun>

  • <gCBS>

Isso é não seria um erro de lógica da biblioteca? 

Porque mesmo com valores zerados, a NT 2024.001 da Reforma exige que TODOS os grupos existam.

Resultado:
A SEFAZ rejeita com erro 1022 (grupo obrigatório não informado).

Como esse trecho do codigo:

if ($vBC > 0) {
    // monta gIBSCBS
}

Resultando em :

<IBSCBS>
    <CST>000</CST>
    <cClassTrib>000001</cClassTrib>
</IBSCBS>

E isso causa rejeição.

Existe alguma ideia de como resolver isso para produtos como água?

Obrigado a quem puder ajudar.

Renato Igleziaz

unread,
Dec 9, 2025, 4:36:40 PM (10 days ago) Dec 9
to NFePHP
Forçar geração dos subgrupos mesmo com vBC = 0

Talvez um dos arquivos abaixo da biblioteca :

NFe/Entity/ICMS/IBSCBS.php
ou
NFe/Entity/Det/IBSCBS.php

Trocar de:

if ($this->vBC > 0) {

Por:

if ($this->vBC >= 0) {

Seria o suficiente para resolver, olhando por cima, mas não sei que impactos isso poderia gerar.

Renato Igleziaz

unread,
Dec 9, 2025, 4:54:18 PM (10 days ago) Dec 9
to NFePHP
Consegui!

É só colocar vBC nesses casos = 0 e não NULL 

Agora deu outra rejeição para esse produto especifico:
1069-Rejeição: Valor da CBS difere do calculado [nItem: 1]

Não coloquem NULL no vBC nunca rs

Renato Igleziaz

unread,
Dec 9, 2025, 5:04:59 PM (10 days ago) Dec 9
to NFePHP
Pra quem vai sofrer com isso, apenas coloquem assim:

<IBSCBS>
<CST>000</CST>
<cClassTrib>000001</cClassTrib>
<gIBSCBS>
<vBC>0.00</vBC>
<gIBSUF>
<pIBSUF>0.1000</pIBSUF>
<vIBSUF>0.00</vIBSUF>
</gIBSUF>
<gIBSMun>
<pIBSMun>0.00</pIBSMun>
<vIBSMun>0.00</vIBSMun>
</gIBSMun>
<vIBS>0.00</vIBS>
<gCBS>
<pCBS>0.9000</pCBS>
<vCBS>0.00</vCBS>
</gCBS>
</gIBSCBS>
</IBSCBS>

Passou em Homologação.

Moacir Fortes

unread,
Dec 9, 2025, 5:07:52 PM (10 days ago) Dec 9
to nfe...@googlegroups.com
Informe vbc = 0.001, isto deve resolver.

--
--
Você recebeu esta mensagem porque está inscrito no Grupo "NFePHP".
Para Postar: nfe...@googlegroups.com
Para Sair do Grupo: nfephp+un...@googlegroups.com
Link: http://groups.google.com.br/group/nfephp?hl=pt-BR
-------
Repositórios: https://github.com/nfephp-org
---
You received this message because you are subscribed to the Google Groups "NFePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to nfephp+un...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/nfephp/4e39c642-f10c-457e-b92b-b992c25eb5b0n%40googlegroups.com.

Renato Igleziaz

unread,
Dec 9, 2025, 5:22:17 PM (10 days ago) Dec 9
to NFePHP
Boa noite Moacir,

Consegui resolver não mantendo vBC = NULL, porque nesse caso os subgrupos não são informados.
Informando 0.00 já funciona na ultima versão da SPED PHP.
Muito Obrigado mesmo assim!

Renato
Reply all
Reply to author
Forward
0 new messages