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

pDevTrib da CBS: percentual de cashback e rejeição 1188

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

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

pDevTrib em gCBS/gDevTrib é o percentual de devolução da CBS. Ele incide sobre o valor da CBS considerado pela fórmula, não diretamente sobre o valor do produto. Não é a alíquota da CBS e não se confunde com percentual de diferimento ou redução de alíquota.

Onde localizar esta ocorrência

XPath completo: /nfeProc/NFe/infNFe/det/imposto/IBSCBS/gIBSCBS/gCBS/gDevTrib/pDevTrib. 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.

Por que a ausência pode ser rejeitada

pDevTrib tem ocorrência 0–1 no XSD compartilhado. Já UB62a-10 se aplica à NF-e 55 com gCBS/gDevTrib informado e exige o percentual; a ausência resulta em rejeição 1188. Não conclua que o campo é dispensável só porque o XML passa na validação estrutural.

Na NFC-e 65 a regra UB62-10 rejeita o próprio grupo, código 1187. Informar o percentual não torna o grupo permitido nesse modelo. O artigo trata exclusivamente do percentual da CBS; os homônimos de gIBSUF e gIBSMun têm restrições próprias.

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

Qual é a escala do percentual

A fórmula UB63-10 é vBC × (alíquota da CBS / 100) × (pDevTrib / 100), usando gRed/pAliqEfet quando houver redução. Com base hipotética de R$ 1.000,00 e alíquota de 0,90%, a CBS de referência da conta é R$ 9,00. Uma devolução hipotética de 20% gera R$ 1,80. Aplicar 20% diretamente sobre R$ 1.000,00 produziria R$ 200,00 e confundiria a grandeza.

No XML, 20.0000 significa 20%, enquanto 0.2000 significa 0,20%. Não serialize a fração interna do cálculo como se fosse o percentual. O exemplo explica a escala, não estabelece um percentual de cashback aplicável.

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

Como ler o percentual junto ao valor

Fragmento parcial do grupo, para os parâmetros sintéticos acima, em hipótese admitida da NF-e 55:

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

O tipo TDec_0302_04RTC admite até três dígitos inteiros e de duas a quatro casas quando houver decimal, com ponto e sem %. O valor em reais é informado separadamente em vDevTrib. Zero conhecido e ausência de parâmetro são situações distintas.

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

O que conferir na origem do parâmetro

Reúna documento do beneficiário, operação, data, fundamento da devolução e percentual confirmado. O art. 118 é a referência citada pela NT; a elegibilidade e o percentual do caso não são definidos pelo tipo XML. Confira também se o emissor omitiu o campo opcional por tratá-lo como vazio ou converteu porcentagem em fração duas vezes.

Após confirmar o parâmetro, recalcule vDevTrib e a CBS efetiva do mesmo item. A conta tem tolerância de R$ 0,01 em UB63-10, mas essa tolerância monetária não permite substituir um percentual desconhecido por um número conveniente.

Fontes: NT 2025.002 v1.52 — p. 20 UB62a/UB63; p. 49 UB62-10/UB62a-10/UB63-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/pDevTrib
Namespace
http://www.portalfiscal.inf.br/nfe
Leiaute
4.00 · PL_010e_v1.02
Ocorrências no XSD
0–1 no contexto do elemento pai
Tipo
TDec_0302_04RTC · 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,4}|[1-9]{1}[0-9]{0,2}(\.[0-9]{2,4})?
whiteSpace
preserve