Rule at a Glance

ID Severity Context (XPath)
Series ref. BR-46 Fatal (error) //cac:AdditionalItemProperty
Schematron ID: ibr-054  |  Field: cbc:Name (IBT-160) and cbc:Value (IBT-161)

Classification

Master Data — item attributes are sourced from the item record, so a failure here almost always traces back to how products are maintained in the item master rather than to anything decided at invoicing time.

What the Rule Is Checking

Each Item attribute block (IBG-32), carried in UBL as cac:AdditionalItemProperty, must contain both an Item attribute name (IBT-160) and an Item attribute value (IBT-161). The schematron test requires cbc:Name and cbc:Value to exist together. An attribute with a label but no content, or content with no label, fails validation and blocks the invoice.

Why This Rule Exists

Item attributes are free-form name-value pairs that let a seller describe a product beyond the item name — colour, size, grade, batch, model year. Half a pair carries no information: a name with no value tells the buyer nothing about the item, and a value with no name cannot be interpreted at all. Since these fields feed buyer-side matching and product identification in automated processing, the standard requires the pair to be complete wherever the block appears.

UAE Data Example

PASSES ✓: <cac:AdditionalItemProperty><cbc:Name>Colour</cbc:Name><cbc:Value>Blue</cbc:Value></cac:AdditionalItemProperty> on an invoice line for garments.

FAILS ✗: <cac:AdditionalItemProperty><cbc:Name>Batch</cbc:Name><cbc:Value></cbc:Value></cac:AdditionalItemProperty> — typically produced when an ERP maps a custom item field into the attribute structure for every product, including products where that field was never filled in.

What Your ERP / IT Team Must Ensure

The safe mapping logic is conditional: emit an AdditionalItemProperty block only when both the name and the value are populated in the item master, and skip the block entirely otherwise. Blanket mappings that export a fixed set of attribute fields for every item are the main failure source, because they turn every empty custom field into an invalid half-pair. Cleanse the item master for attributes you intend to transmit, and make attribute completeness part of the data quality checks that run before go-live rather than something discovered invoice by invoice.

Related Rules

Attribute pairs sit alongside the item identification fields — item name, standard identifiers and classification codes — covered elsewhere in this series. The scheme identifier requirements for item standard identifiers (ibr-064) and classification identifiers (ibr-065) remain to be covered in later posts.