Pular para o conteúdo
Fiscal ProBiblioteca
NF-e e NFC-e · Outros tributos e observações do item

xCampo de obsCont no item: atributo de identificação

@xCampodet › obsItem › obsCont › @xCampo

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

xCampo em obsItem/obsCont é o atributo que identifica a observação de uso livre do contribuinte de um item. O nome da informação fica nesse atributo; seu conteúdo fica em xTexto, dentro do mesmo obsCont.

A estrutura descrita usa o pacote oficial PL_010f_v1.04, publicado em 31/08/2026. Esse pacote não altera a versão selecionada de um XML histórico na consulta; para arquivos de outra versão, confira a declaração correspondente e as regras vigentes na data e no ambiente do documento.

Neste artigo:

Por que o XPath termina com @xCampo

O caminho é /nfeProc/NFe/infNFe/det/obsItem/obsCont/@xCampo, VA03. O símbolo @ indica um atributo. Na escrita XML, ele aparece na abertura de obsCont, como xCampo="REF_INTERNA". Gerar um elemento filho chamado xCampo dentro de obsCont não equivale a preencher esse atributo.

Há xCampo em obsFisco e nos grupos de observações da nota inteira. Para selecionar o correto, mantenha obsItem/obsCont no caminho e o det correspondente ao nItem. Um extrator que procura qualquer atributo xCampo pode devolver uma observação de outro titular, outra posição ou outro item.

Schemas NF-e/NFC-e PL_010f_v1.04 NT 2021.004 — Regras de Validação e Novos Campos

Limite e obrigatoriedade do identificador

xCampo é obrigatório quando obsCont do item está informado. Sua restrição baseada em TString admite uma a 20 posições. obsCont pode ser omitido quando não há observação, mas um obsCont presente sem xCampo ou com o atributo vazio não satisfaz a declaração.

O tipo preserva espaços e restringe a faixa de caracteres, sem espaço no início ou no fim. Um identificador de 20 caracteres ocupa o limite; um de 21 ultrapassa a restrição. Conte caracteres interpretados, não bytes UTF-8. Não remova acentos ou corte o nome automaticamente: isso pode mudar a identificação acordada com quem consome o XML.

Schemas NF-e/NFC-e PL_010f_v1.04 Tipos básicos do leiaute NF-e NT 2021.004 — Regras de Validação e Novos Campos

O atributo identifica e xTexto informa o valor

O par funciona como nome e conteúdo: REF_INTERNA pode identificar a informação, e Controle demonstrativo do item 1 pode ser seu conteúdo em xTexto. Esses nomes são sintéticos. O leiaute geral define a estrutura, sem declarar que todo identificador escolhido pelo emitente tenha reconhecimento fiscal.

xTexto tem limite separado de 60 posições. Preencher apenas xCampo não completa obsCont: o elemento xTexto também é obrigatório. Não transporte o valor da observação para o atributo para contornar o limite do filho. Um código tributário obrigatório em tag própria não é substituído pela criação de um rótulo homônimo aqui.

Schemas NF-e/NFC-e PL_010f_v1.04 NT 2021.004 — Regras de Validação e Novos Campos

Exemplo correto no contexto do contribuinte

Fragmento sintético do grupo obsCont, parcial em relação à nota inteira. O identificador ilustra a estrutura e não é código oficial nem recomendação de preenchimento fiscal.

<obsCont xmlns="http://www.portalfiscal.inf.br/nfe" xCampo="REF_INTERNA">
  <xTexto>Controle demonstrativo do item 1</xTexto>
</obsCont>

Na NF-e, esse grupo fica em det/obsItem. O atributo xCampo não recebe prefixo de namespace próprio; pertence ao elemento obsCont cuja declaração está no namespace da NF-e. Use um serializador para criar o atributo e escapar aspas ou & que integrem o valor, sem inserir markup manualmente.

Schemas NF-e/NFC-e PL_010f_v1.04 Tipos básicos do leiaute NF-e

Conferência de erro e de significado

Em erro de schema, confira primeiro se xCampo é atributo, está em obsCont do item, está preenchido e respeita o limite. Depois confira xTexto e a ocorrência única de obsCont em obsItem. Se uma integração lê o nome, compare o valor interpretado pelo parser com o valor de origem; escapes XML não fazem parte do nome.

Se a dúvida é qual identificador usar para uma exigência fiscal, o schema geral não resolve essa escolha. Reúna orientação ou ato oficial, UF, data, operação e item; confirme o nome e o alcance com o responsável contábil. Só depois confira sua representação exata, sem abreviar um identificador exigido ou atribuir efeito tributário a um nome inventado.

Schemas NF-e/NFC-e PL_010f_v1.04 Tipos básicos do leiaute NF-e NT 2021.004 — Regras de Validação e Novos Campos

Leitura relacionada

Fontes oficiais

Referência técnica para integração

XPath completo
/nfeProc/NFe/infNFe/det/obsItem/obsCont/@xCampo
Namespace
Não informado
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
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.

maxLength
20
minLength
1
pattern
[!-ÿ]{1}[ -ÿ]{0,}[!-ÿ]{1}|[!-ÿ]{1}
whiteSpace
preserve