Pular para o conteúdo
Fiscal ProBiblioteca
NF-e e NFC-e · IBS e CBS

vDevTrib da CBS: como conferir o cashback do item

<vDevTrib>det › imposto › IBSCBS › gIBSCBS › gCBS › gDevTrib › vDevTrib

Revisão editorial em 14 de out. de 2026. As versões e condições das regras estão indicadas ao longo do artigo.

vDevTrib em gCBS/gDevTrib é o valor monetário da CBS devolvida como cashback no item. Ele reduz a CBS efetiva pela fórmula correspondente, mas não é desconto comercial, crédito presumido ou valor de devolução de mercadoria.

Onde localizar esta ocorrência

XPath completo: /nfeProc/NFe/infNFe/det/imposto/IBSCBS/gIBSCBS/gCBS/gDevTrib/vDevTrib. A informação pertence ao item det, dentro de imposto/IBSCBS/gIBSCBS. Em um XML cuja raiz é NFe, o caminho começa em /NFe, sem o invólucro nfeProc. Para consultas XPath, associe um prefixo ao namespace http://www.portalfiscal.inf.br/nfe. Preserve todos os ancestrais e o item; o nome isolado não distingue tributo, total ou grupo de referência.

Fontes: Tipos RTC — PL_010f_v1.04.

Qual conta é verificada pela rejeição 1189

Para a NF-e 55 com gCBS/gDevTrib, UB63-10 calcula vDevTrib = vBC × (pCBS / 100) × (pDevTrib / 100). Se houver gCBS/gRed, substitua pCBS por gCBS/gRed/pAliqEfet. A regra aceita tolerância de R$ 0,01 para mais ou menos; divergência corresponde ao código 1189.

Exemplo exclusivamente matemático: base de R$ 2.000,00, alíquota nominal de 0,90%, redução hipotética que resulte em 0,54% e percentual hipotético de devolução de 20%. A CBS antes do cashback é R$ 10,80, e a devolução é R$ 2,16. Usar a alíquota nominal produziria R$ 3,60, ignorando a substituição exigida quando existe redução.

Fontes: NT 2025.002 v1.52 — p. 20 UB63; p. 49 UB62-10/UB62a-10/UB63-10; p. 52 UB67-10, tipos RTC — PL_010f_v1.04.

Por que não descontar duas vezes

UB67-10 calcula a CBS efetiva a partir da base e alíquota do ramo, subtraindo vDif e vDevTrib. No exemplo, sem diferimento, R$ 10,80 menos R$ 2,16 resulta em vCBS=8.64. O valor devolvido não deve ser descontado novamente de vCBS por um relatório que já lê o valor líquido informado nesse campo.

Essa conta não determina a formação da base nem a elegibilidade ao cashback. Confirme esses parâmetros antes da conferência; não deduza pDevTrib a partir de um desconto comercial ou tente ajustar a base para alcançar o valor desejado.

Fontes: NT 2025.002 v1.52 — p. 20 UB63; p. 49 UB62-10/UB62a-10/UB63-10; p. 52 UB67-10, tipos RTC — PL_010f_v1.04.

Como reconhecer a parcela no XML

Fragmento parcial do grupo de devolução da CBS, para o exercício anterior e supondo a hipótese fiscal admitida na NF-e 55:

<gDevTrib xmlns="http://www.portalfiscal.inf.br/nfe">
  <pDevTrib>20.0000</pDevTrib>
  <vDevTrib>2.16</vDevTrib>
</gDevTrib>

vDevTrib é obrigatório dentro do grupo e usa TDec1302RTC: até 13 dígitos inteiros, com duas casas se houver parte decimal, ponto e sem símbolo monetário. Na NF-e, o percentual também é exigido por RV, embora opcional no XSD.

Fontes: NT 2025.002 v1.52 — p. 20 UB63; p. 49 UB62-10/UB62a-10/UB63-10; p. 52 UB67-10, tipos RTC — PL_010f_v1.04.

Como separar erros de modelo, estrutura e cálculo

Na NFC-e 65, UB62-10/1187 rejeita o grupo, independentemente de a conta estar certa. Na NF-e 55, UB62a-10/1188 trata do percentual ausente; UB63-10/1189 trata da conta. Um valor como 2,16 pode falhar no schema antes das duas últimas verificações.

Localize o item, compare o XML com a memória de cálculo e procure alíquota nominal usada no lugar da efetiva, percentual em escala errada ou parcela copiada do IBS. Reúna dados do beneficiário, fundamento e período com o responsável fiscal quando a origem do cashback não estiver demonstrada; não edite XML assinado para corrigir a divergência.

Fontes: NT 2025.002 v1.52 — p. 20 UB63; p. 49 UB62-10/UB62a-10/UB63-10; p. 52 UB67-10, tipos RTC — PL_010f_v1.04.

Leitura relacionada

Referência técnica para integração

XPath completo
/nfeProc/NFe/infNFe/det/imposto/IBSCBS/gIBSCBS/gCBS/gDevTrib/vDevTrib
Namespace
http://www.portalfiscal.inf.br/nfe
Leiaute
4.00 · PL_010e_v1.02
Ocorrências no XSD
1–1 no contexto do elemento pai
Tipo
TDec1302RTC · string
Preenchimento no catálogo
Condicional

A ocorrência vale dentro da estrutura XML: um campo obrigatório em um grupo opcional não torna esse grupo obrigatório. A aplicação fiscal depende da operação e da versão da regra.

pattern
0|0\.[0-9]{2}|[1-9]{1}[0-9]{0,12}(\.[0-9]{2})?
whiteSpace
preserve