Pular para o conteúdo
Fiscal ProBiblioteca
NF-e e NFC-e · PIS e PIS-ST

qBCProd em PISOutr: quantidade de base, unidade e conversão

<qBCProd>det › imposto › PIS › PISOutr › qBCProd

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

qBCProd é a quantidade usada como base do PIS, Programa de Integração Social, na alternativa por quantidade de PISOutr. Fica em /nfeProc/NFe/infNFe/det/imposto/PIS/PISOutr/qBCProd. Multiplicada por vAliqProd, em reais por unidade, produz vPIS.

A conferência precisa preservar tanto o número quanto sua unidade. Uma quantidade numericamente válida pode gerar imposto errado quando a unidade não corresponde ao valor unitário.

Quantidade dentro da alternativa correta

PISOutr contém CST e escolhe entre vBC/pPIS e qBCProd/vAliqProd, seguido de vPIS. Na alternativa por quantidade, qBCProd é obrigatório junto de vAliqProd; não pode ser combinado com pPIS percentual nem com a base monetária da outra alternativa. MOC 7.0, Anexo I, páginas 53–54.

PISOutr não se torna PISQtde apenas por usar quantidade. O primeiro tem domínio próprio de CST; PISQtde admite CST 03. O método e a classificação precisam corresponder à operação definida.

Unidade da base e conversão

A unidade a que se refere vAliqProd precisa corresponder à unidade da base. Não copie qCom, quantidade comercial, ou qTrib, quantidade tributável do produto, sem confirmar essa correspondência para o cálculo específico.

Exemplo exclusivamente sintético: suponha operação fictícia com método por quantidade, CST 99 e base definida em litros. A documentação hipotética informa oito caixas de 12 litros, totalizando 96 litros; o parâmetro assumido é R$ 0,1250 por litro. A conta é:

8 caixas × 12 litros/caixa = 96 litros;
96 litros × R$ 0,1250/litro = R$ 12,00.

<PISOutr xmlns="http://www.portalfiscal.inf.br/nfe">
  <CST>99</CST>
  <qBCProd>96.0000</qBCProd>
  <vAliqProd>0.1250</vAliqProd>
  <vPIS>12.00</vPIS>
</PISOutr>

O fragmento é parcial e sintético, não pronto para transmissão; método, código, unidade e parâmetro não são recomendação tributária. O fator 12 foi declarado como informação do exemplo, não deduzido do nome do produto.

Usar qBCProd=8 mantendo R$ 0,1250 por litro produziria R$ 1,00, pois misturaria caixas e litros. Isso localiza um possível erro de unidade; não autoriza assumir litros para outra operação. Sem fator comprovado e unidade definida, a conversão está incompleta.

Representação e rastreio da quantidade

No XSD real PL_010d_v1.03, referência histórica, PISOutr/qBCProd usa TDec_1204v: até 12 inteiros e de uma a quatro casas na parte fracionária, se presente. Zero e inteiros também são aceitos. 96, 96.0 e 96.0000 seguem esse padrão; 96.00000, vírgula decimal e texto de unidade dentro da tag não seguem. Schemas 010d v1.03, PISOutr/qBCProd e tipos básicos.

A tag não carrega o nome da unidade. A memória de cálculo e os dados de origem precisam demonstrar essa relação. Zero estrutural não é substituto de quantidade desconhecida. Não arredonde a base fracionária para inteiro apenas porque o valor de PIS será monetário.

Diante de divergência, compare quantidade comercial, unidade da base confirmada, fator documental de conversão, quantidade calculada e literal enviado. Uma diferença múltipla do tamanho da embalagem sugere onde investigar; não prova o fator.

Se o erro é estrutural, confira o par completo e a exclusividade de alternativas. Se o número diverge, recalcule o produto usando os valores enviados, preserve a precisão e confira a apresentação monetária de vPIS. Corrija a origem demonstrada, gere e valide novamente, sem editar XML assinado.

A definição da unidade e do método cabe à confirmação da operação com o responsável contábil; apresente dados do produto, unidades, quantidades e documento que sustenta a conversão.

Compare vAliqProd de PISOutr, vBC de PISOutr e qBCProd de PISQtde.

Referência técnica para integração

XPath completo
/nfeProc/NFe/infNFe/det/imposto/PIS/PISOutr/qBCProd
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
TDec_1204v · 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]{1,4}|[1-9]{1}[0-9]{0,11}|[1-9]{1}[0-9]{0,11}(\.[0-9]{1,4})?
whiteSpace
preserve