Skip to main content

BT-150 Item Price Base Quantity Unit Code

The unit code for the item price base quantity.

BT-150 (Item price base quantity unit of measure code) states the unit for the price base quantity (BT-149), using a UN/ECE Recommendation 20 code inside BG-29. Conditional under EN 16931 and, when present, it must be the same as the invoiced quantity unit of measure (BT-130). Example: C62.

BT-150 · EN 16931 / XRechnung 3.x

BT Reference Card

Key EN 16931 and XRechnung facts for this business term.

BT code
BT-150
Name
Item Price Base Quantity Unit Code
Cardinality
Conditional (C)
Business group
BG-29 PRICE DETAILS
Data type
Code
Example value
C62

Line items

The goods or services on each invoice line, including quantities, prices, and VAT.

Quick actions

In plain language

The unit code for the item price base quantity.

Describes how the invoice line price is derived, including base quantity and any price-level discount, so automated checks can recalculate line totals.

What you usually enter here

UNECE Recommendation 20/21 unit code

Typical valid values include: EA, HUR, KGM

Defined by EN 16931 for line price calculation data; required fields must satisfy the listed BR and Peppol calculation constraints.

Where the field sits

Lines
UBL 2.1 Syntax
  1. Invoice
  2. cac:InvoiceLine
  3. cac:Price
  4. cbc:BaseQuantity @unitCodeBT-150
CII (UN/CEFACT) Syntax
  1. rsm:CrossIndustryInvoice
  2. rsm:SupplyChainTradeTransaction
  3. ram:IncludedSupplyChainTradeLineItem
  4. ram:SpecifiedLineTradeAgreement
  5. ram:NetPriceProductTradePrice
  6. ram:BasisQuantity @unitCodeBT-150

or

  1. rsm:CrossIndustryInvoice
  2. rsm:SupplyChainTradeTransaction
  3. ram:IncludedSupplyChainTradeLineItem
  4. ram:SpecifiedLineTradeAgreement
  5. ram:GrossPriceProductTradePrice
  6. ram:BasisQuantity @unitCodeBT-150

If BT-149 is present in both price locations, the quantities must match. If BT-150 is present on NetPriceProductTradePrice, it must also be present on GrossPriceProductTradePrice with the same unit code (BR-TMP-3).

BT-150 belongs to the Lines part of the invoice. UBL 2.1 Syntax: Invoice › cac:InvoiceLine › cac:Price › cbc:BaseQuantity @unitCode. CII (UN/CEFACT) Syntax: rsm:CrossIndustryInvoice › rsm:SupplyChainTradeTransaction › ram:IncludedSupplyChainTradeLineItem › ram:SpecifiedLineTradeAgreement › ram:NetPriceProductTradePrice › ram:BasisQuantity @unitCode or rsm:CrossIndustryInvoice › rsm:SupplyChainTradeTransaction › ram:IncludedSupplyChainTradeLineItem › ram:SpecifiedLineTradeAgreement › ram:GrossPriceProductTradePrice › ram:BasisQuantity @unitCode. If BT-149 is present in both price locations, the quantities must match. If BT-150 is present on NetPriceProductTradePrice, it must also be present on GrossPriceProductTradePrice with the same unit code (BR-TMP-3).

What goes wrong often

Avoid values like: each, kg

Relevant rule codes: BR-CL-23, PEPPOL-EN16931-R130

Valid Examples

  • EA
  • HUR
  • KGM

Invalid Examples

  • each
  • kg

XML mapping and field facts

Open the technical reference if you need XML paths, validator rule codes, legal wording, or schema-specific mapping details.

Field ID:

BT-150

Data Type:

code

Cardinality:

0..1

Requirement:

Optional

XML Implementation

UBL 2.1 Syntax
/Invoice/cac:InvoiceLine/cac:Price/cbc:BaseQuantity/@unitCode
CII (UN/CEFACT) Syntax
/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:IncludedSupplyChainTradeLineItem/ram:SpecifiedLineTradeAgreement/ram:NetPriceProductTradePrice/ram:BasisQuantity/@unitCode

Validation Rules

BR-CL-23

BR-CL-23

PEPPOL-EN16931-R130

PEPPOL-EN16931-R130

Next step

Check whether your XRechnung sets BT-150 correctly

Upload the XML file to the free validator. It applies the KoSIT rules for XRechnung 3.0 and names each finding with its rule ID, for this field for example BR-CL-23, PEPPOL-EN16931-R130. Creating a new invoice instead? The converter checks the invoice against the same rules and shows the findings before download.

Free, no account needed. XML file up to 2 MB.

Official sources and tools