uCom: unidade comercial na NF-e e NFC-e
<uCom>det › prod › uComRevisão editorial em 26 de set. de 2026. As versões e condições das regras estão indicadas ao longo do artigo.
uCom informa a unidade em que o item está sendo comercializado. Essa unidade dá significado a qCom, a quantidade, e a vUnCom, o preço por unidade comercial. O campo é obrigatório dentro de det/prod, admite de 1 a 6 caracteres e não é um valor numérico. A definição está no MOC 7.0, Anexo I, I09, página 18.
Nesta página: unidade e preço, conversão comercial/tributável, XML e formato, unidade inválida, diagnóstico.
A unidade explica o que a quantidade e o preço medem
O número 2 em qCom pode representar duas unidades, duas caixas ou dois quilogramas. Sem uCom, a leitura fica incompleta. O preço de vUnCom precisa se referir à mesma unidade: preço por caixa com quantidade de unidades soltas produz um cálculo errado mesmo que os números tenham formato válido.
Considere um exemplo sintético: venda de duas caixas, cada uma com seis unidades, a R$ 60,00 por caixa. A representação comercial é uCom=CX, qCom=2 e vUnCom=60.00; o bruto do item vProd é R$ 120,00. Se o pedido tivesse sido registrado como 12 unidades a R$ 10,00, a representação comercial seria outra, embora o bruto permanecesse R$ 120,00. Não troque somente o rótulo de unidade: quantidade e preço precisam acompanhar a representação real usada na operação.
As abreviações CX, UN e KG neste texto são escolhas sintéticas para explicar as unidades. Não constituem uma tabela oficial completa nem provam autorização de qualquer operação. A abreviação do cadastro deve permitir compreender a unidade efetivamente comercializada.
uCom e uTrib podem ser diferentes
uTrib é a unidade tributável; qTrib e vUnTrib expressam quantidade e preço nessa unidade. O trio comercial e o trio tributável não precisam ter valores iguais quando há uma conversão documentada.
No exemplo das caixas, assumindo que a unidade tributável definida para o caso seja a unidade individual, duas caixas de seis unidades correspondem a 12 unidades tributáveis. Teríamos uCom=CX, qCom=2, vUnCom=60.00 e uTrib=UN, qTrib=12, vUnTrib=10.00. As duas multiplicações chegam ao mesmo bruto: 2 × 60 = 12 × 10 = 120.
O fator seis vem da composição da caixa, não de uma equivalência universal de “CX”. Outro produto pode ter uma caixa de 24 unidades. Confira produto, embalagem, fator e a unidade tributável aplicável antes de calcular. Se a definição tributável depender da classificação ou de exigência fiscal específica, confirme esse parâmetro com o responsável fiscal, levando o cadastro, a embalagem e a documentação da mercadoria. O artigo explica como representar e conferir a conversão depois desse parâmetro definido; não decide a unidade fiscal do leitor. MOC, I09–I14a, páginas 18–19.
Como localizar e representar uCom
Fragmento sintético parcial; outros campos obrigatórios do produto foram omitidos:
<prod xmlns="http://www.portalfiscal.inf.br/nfe">
<uCom>CX</uCom>
<qCom>2.0000</qCom>
<vUnCom>60.00</vUnCom>
<vProd>120.00</vProd>
<uTrib>UN</uTrib>
<qTrib>12.0000</qTrib>
<vUnTrib>10.00</vUnTrib>
</prod>
O caminho em uma nota processada é nfeProc/NFe/infNFe/det/prod/uCom. Leia a unidade do det correto e confira seus campos numéricos. Uma tag uTrib encontrada depois não substitui uCom ausente.
No schema, uCom é texto de 1 a 6 caracteres baseado em TString. Campo omitido, vazio, com excesso de tamanho ou espaços nas extremidades pode falhar na validação estrutural. CX tem duas posições; “CAIXA COM 6” ultrapassa o limite e mistura unidade com descrição da embalagem. A composição deve ser preservada no cadastro e na descrição pertinente, sem alongar artificialmente a tag de unidade. Consulte os elementos prod/uCom e TString no pacote oficial PL_010c.
Uma abreviação válida no schema não prova aceitação fiscal
O MOC registra a regra I09-10, código 734, para NFC-e com uCom fora de uma tabela específica. Na página 94, o próprio Manual informa que essa regra tinha previsão de implementação futura e não havia entrado em produção até a publicação do MOC. Esse registro histórico não comprova implantação atual em cada UF e não fornece aqui uma lista universal de unidades permitidas. MOC, páginas 93–94.
Se um retorno real trouxer 734, confirme modelo 65, UF/autorizador, item e mensagem recebida, e consulte a documentação/tabela efetivamente adotada naquele ambiente. Não substitua a unidade por “UN” apenas por tentativa: uma etiqueta aceita com quantidade e preço em outra unidade pode falsear a representação comercial.
Como investigar uma unidade incoerente
Compare pedido, cadastro e XML: a mercadoria foi vendida por unidade, embalagem ou peso? A quantidade corresponde a essa unidade? O preço foi carregado na mesma base? Se a origem usa caixas e o XML usa unidades, procure a conversão e confira se quantidade e preço foram convertidos, mantendo o bruto.
Para divergência aritmética, compare também vProd com qCom × vUnCom. Em documento normal (finNFe=1), o MOC prevê a regra facultativa I11-10/629; ela é uma conferência do bruto, não uma tabela de unidades. O produto da multiplicação é arredondado a duas casas e a nota (*4) admite tolerância de R$ 0,01 para mais ou menos. Essa tolerância não corrige unidade errada. MOC, página 93 e nota (*4), página 140.
Corrija o dado ou mapeamento comprovadamente incorreto, gere novamente e confira os dois trios. Não edite XML assinado ou altere dados reais para fechar uma conta. Para detalhes numéricos, consulte qCom e vUnCom.
Referência técnica para integração
- XPath completo
/nfeProc/NFe/infNFe/det/prod/uCom- 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
- inline:TString · TString
- Preenchimento no catálogo
- Obrigatório
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.
- maxLength
6- minLength
1- pattern
[!-ÿ]{1}[ -ÿ]{0,}[!-ÿ]{1}|[!-ÿ]{1}- whiteSpace
preserve