UN layout formatting specification for UBL Invoice instances

$Date: 2004/09/09 01:30:40 $(UTC)


Table of Contents

1. Invoice formatting specification
1.1. Status
1.2. Example rendering
1.3. Layout order and information
1.4. Namespaces
2. Miscellaneous information
2.1. Document header information
3. Main document and party information
3.1. Seller
3.2. Invoice number
3.3. Invoice date (tax point)
3.4. Seller's reference
3.5. Buyer's reference
3.6. Purchase order date
3.7. Consignee
3.8. Buyer
3.9. Buyer bank
4. Additional document and party information
4.1. Country of origin
4.2. Country of destination
5. Delivery and transport
5.1. Mode of transport
5.2. Date of despatch
5.3. Means of transport
5.4. Place of despatch
5.5. Vessel/flight no.
5.6. Port of loading
5.7. Port of discharge
5.8. Place of delivery
6. Financial information
6.1. Terms of payment
6.2. Currency of payment
6.3. Seller's bank
6.4. Sort code
6.5. Account number
6.6. Account name
7. Consignment information
7.1. Shipping marks; container number
7.2. Number and kind of packages; description of goods
7.3. Total gross weight (kg)
7.4. Total cube (m3)
7.5. Total net weight (kg)
8. Line item information
8.1. Item / References
8.2. Description
8.3. Country of origin
8.4. Commodity code
8.5. Quantity
8.6. Unit price
8.7. Amount
9. Summary information
9.1. Clauses and / or Notes
9.2. Total amount
9.3. Total tax amount
9.4. Total amount due
9.5. Name of signatory
9.6. Place and date of issue
9.7. Signature
10. Continuation page

1.  Invoice formatting specification

This formatting specification describes a rendering of the UBL Invoice document model according to the United Nations Layout Key for Trade Documents guidelines for application for the 380 invoice form:

  • 380 Commercial Invoice: Document claiming payment for goods supplied under conditions agreed between seller and buyer.

For a list of all formatting specifications and an overview of the documentation conventions, please visit the formatting specification home page.

1.1.  Status

This specification has no formal status at this time. It should not be considered a reference interpretation of UBL documents. Feedback is sought from users of stylesheets that implement this formatting specification regarding suggestions for change for consideration by the OASIS UBL committees for incorporation into these formatting specifications.

Presentational semantics may never be formalized or normative in the UBL project due to differing international requirements and conventions for the presentation of information found in business documents. This document contains only examples from a few of what will probably be many available UBL stylesheet libraries.

1.2.  Example rendering

The following is an example rendering that illustrates the position and decoration of the information items found in an instance of the document type:

1.3.  Layout order and information

Items in this formatting specification are ordered roughly from the laid out fields on the form in the order left-to-right, top to bottom.

Certain descriptions are verbatim quotes from the United Nations guidelines document.

Important: the rendering of a number of fields is very simplified, reflecting a Western European interpretation of a subset of fields (as in names and addresses). User requirements need to be better understood for the level of granularity in these formatting specifications.

1.4.  Namespaces

The following namespaces are mapped to the prefixes in the expressions below:

  • xmlns:in="urn:oasis:names:specification:ubl:schema:xsd:Invoice-1.0"

  • xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-1.0"

  • xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-1.0"

2.  Miscellaneous information

The following information is unrelated to the visible fields of the form.

2.1.  Document header information

Table 1. XPath information

XPath addresses
/​in:Invoice/​in:ID
/​in:Invoice/​in:TaxPointDate
/​in:Invoice/​cac:OrderReference/​cac:SellersID

This information shows up in the window-title bar of the HTML browser, and in the document title supported by some XSL-FO processors.

3. Main document and party information

Header information is associated with the form as a whole, not to the individual items of goods.

3.1. Seller

Table 2. XPath information

XPath addresses
/​in:Invoice/​cac:SellerParty/​cac:Party/​cac:PartyName/​cbc:Name
/​in:Invoice/​cac:SellerParty/​cac:Party/​cac:Address/​cbc:BuildingNumber
/​in:Invoice/​cac:SellerParty/​cac:Party/​cac:Address/​cbc:StreetName
/​in:Invoice/​cac:SellerParty/​cac:Party/​cac:Address/​cbc:CityName
/​in:Invoice/​cac:SellerParty/​cac:Party/​cac:Address/​cbc:CountrySubentity
/​in:Invoice/​cac:SellerParty/​cac:Party/​cac:Address/​cac:CountrySubentityCode
/​in:Invoice/​cac:SellerParty/​cac:Party/​cac:Address/​cbc:PostalZone
/​in:Invoice/​cac:SellerParty/​cac:Party/​cac:Address/​cac:Country/​cbc:Name

This field is intended to show the name and address of the sender of goods or the originator of the documents, as the case may be.

Note that only one of cbc:CountrySubentity and cac:CountrySubentityCode need be used, with preference to cbc:CountrySubentity if it exists.

3.2. Invoice number

Table 3. XPath information

XPath address
/​in:Invoice/​in:ID

This number is a unique number assigned to the invoice by the seller.

3.3. Invoice date (tax point)

Table 4. XPath information

XPath address
/​in:Invoice/​in:TaxPointDate

This field states the date of the invoice for tax purposes

3.4. Seller's reference

Table 5. XPath information

XPath address
/​in:Invoice/​cac:OrderReference/​cac:SellersID

This field provides a seller assigned reference to the order corresponding to this invoice.

3.5. Buyer's reference

Table 6. XPath information

XPath address
/​in:Invoice/​cac:OrderReference/​cac:BuyersID

This field provides the buyer's reference to the original order.

3.6. Purchase order date

Table 7. XPath information

XPath address
/​in:Invoice/​cac:OrderReference/​cbc:IssueDate

This fields provides the issue date of the original order

3.7. Consignee

Table 8. XPath information

XPath addresses
/​in:Invoice/​cac:BuyerParty/​cac:Party/​cac:PartyName/​cbc:Name
/​in:Invoice/​cac:Delivery/​cac:DeliveryAddress/​cbc:BuildingNumber
/​in:Invoice/​cac:Delivery/​cac:DeliveryAddress/​cbc:StreetName
/​in:Invoice/​cac:Delivery/​cac:DeliveryAddress/​cbc:CityName
/​in:Invoice/​cac:Delivery/​cac:DeliveryAddress/​cbc:CountrySubentity
/​in:Invoice/​cac:Delivery/​cac:DeliveryAddress/​cac:CountrySubentityCode
/​in:Invoice/​cac:Delivery/​cac:DeliveryAddress/​cbc:PostalZone
/​in:Invoice/​cac:Delivery/​cac:DeliveryAddress/​cac:Country/​cbc:Name

These fields are used to provide the name and address of the receiver of the goods involved in the transaction.

Note that only one of cbc:CountrySubentity and cac:CountrySubentityCode need be used, with preference to cbc:CountrySubentity if it exists.

3.8. Buyer

Table 9. XPath information

XPath addresses
/​in:Invoice/​cac:BuyerParty/​cac:Party/​cac:PartyName/​cbc:Name
/​in:Invoice/​cac:BuyerParty/​cac:Party/​cac:Address/​cbc:BuildingNumber
/​in:Invoice/​cac:BuyerParty/​cac:Party/​cac:Address/​cbc:StreetName
/​in:Invoice/​cac:BuyerParty/​cac:Party/​cac:Address/​cbc:CityName
/​in:Invoice/​cac:BuyerParty/​cac:Party/​cac:Address/​cbc:CountrySubentity
/​in:Invoice/​cac:BuyerParty/​cac:Party/​cac:Address/​cac:CountrySubentityCode
/​in:Invoice/​cac:BuyerParty/​cac:Party/​cac:Address/​cbc:PostalZone
/​in:Invoice/​cac:BuyerParty/​cac:Party/​cac:Address/​cac:Country/​cbc:Name

These fields are used to provide the name and address of the buyer of the goods involved in the transaction.

Note that only one of cbc:CountrySubentity and cac:CountrySubentityCode need be used, with preference to cbc:CountrySubentity if it exists.

3.9. Buyer bank

Table 10. XPath information

XPath addresses
/​in:Invoice/​cac:PaymentMeans/​cac:PayerFinancialAccount/​cac:FinancialInstitutionBranch/​cac:FinancialInstitution/​cbc:Name
/​in:Invoice/​cac:PaymentMeans/​cac:PayerFinancialAccount/​cac:FinancialInstitutionBranch/​cac:FinancialInstitution/​cac:Address/​cbc:CityName
/​in:Invoice/​cac:PaymentMeans/​cac:PayerFinancialAccount/​cac:FinancialInstitutionBranch/​cac:FinancialInstitution/​cac:Address/​cbc:CountrySubentity
/​in:Invoice/​cac:PaymentMeans/​cac:PayerFinancialAccount/​cac:FinancialInstitutionBranch/​cac:FinancialInstitution/​cac:Address/​cac:CountrySubentityCode
/​in:Invoice/​cac:PaymentMeans/​cac:PayerFinancialAccount/​cac:FinancialInstitutionBranch/​cac:FinancialInstitution/​cac:Address/​cbc:PostalZone
/​in:Invoice/​cac:PaymentMeans/​cac:PayerFinancialAccount/​cac:FinancialInstitutionBranch/​cac:FinancialInstitution/​cac:Address/​cac:Country/​cbc:Name

These fields provide the name and address of the buyer's bank.

Note that only one of cbc:CountrySubentity and cac:CountrySubentityCode need be used, with preference to cbc:CountrySubentity if it exists.

4.  Additional document and party information

4.1. Country of origin

At this time this field is not being used in the invoice.

4.2. Country of destination

At this time this field is not being used in the invoice.

5. Delivery and transport

Transportation fields are header-like information and are applicable to the entire order.

5.1. Mode of transport

At this time this field is not being used in the invoice.

5.2. Date of despatch

At this time this field is not being used in the invoice.

5.3. Means of transport

At this time this field is not being used in the invoice.

5.4. Place of despatch

At this time this field is not being used in the invoice.

5.5. Vessel/flight no.

At this time this field is not being used in the invoice.

5.6. Port of loading

At this time this field is not being used in the invoice.

5.7. Port of discharge

At this time this field is not being used in the invoice.

5.8. Place of delivery

At this time this field is not being used in the invoice.

6. Financial information

The financial information provides details of the buyer and seller account details.

6.1. Terms of payment

Table 11. XPath information

XPath addresses
/​in:Invoice/​cac:PaymentTerms/​cac:PenaltyPeriod/​cbc:DurationMeasure
/​in:Invoice/​cac:PaymentTerms/​cac:PenaltyPeriod/​cbc:DurationMeasure/​@measureUnitCode
/​in:Invoice/​cac:PaymentTerms/​cac:PenaltyPeriod/​cbc:StartDateTime
/​in:Invoice/​cac:PaymentTerms/​cbc:Note

These fields provide information relating to the payment terms.

6.2. Currency of payment

Table 12. XPath information

XPath address
/​in:Invoice/​in:InvoiceCurrencyCode

This specifies the payment currency for the entire invoice.

6.3. Seller's bank

Table 13. XPath information

XPath addresses
/​in:Invoice/​cac:PaymentMeans/​cac:PayeeFinancialAccount/​cac:FinancialInstitutionBranch/​cac:FinancialInstitution/​cbc:Name
/​in:Invoice/​cac:PaymentMeans/​cac:PayeeFinancialAccount/​cac:FinancialInstitutionBranch/​cac:FinancialInstitution/​cac:Address/​cbc:BuildingNumber
/​in:Invoice/​cac:PaymentMeans/​cac:PayeeFinancialAccount/​cac:FinancialInstitutionBranch/​cac:FinancialInstitution/​cac:Address/​cbc:StreetName
/​in:Invoice/​cac:PaymentMeans/​cac:PayeeFinancialAccount/​cac:FinancialInstitutionBranch/​cac:FinancialInstitution/​cac:Address/​cbc:CityName
/​in:Invoice/​cac:PaymentMeans/​cac:PayeeFinancialAccount/​cac:FinancialInstitutionBranch/​cac:FinancialInstitution/​cac:Address/​cbc:CountrySubentity
/​in:Invoice/​cac:PaymentMeans/​cac:PayeeFinancialAccount/​cac:FinancialInstitutionBranch/​cac:FinancialInstitution/​cac:Address/​cac:CountrySubentityCode
/​in:Invoice/​cac:PaymentMeans/​cac:PayeeFinancialAccount/​cac:FinancialInstitutionBranch/​cac:FinancialInstitution/​cac:Address/​cbc:PostalZone
/​in:Invoice/​cac:PaymentMeans/​cac:PayeeFinancialAccount/​cac:FinancialInstitutionBranch/​cac:FinancialInstitution/​cac:Address/​cac:Country/​cbc:Name

These fields provide the name and address of the seller's bank.

Note that only one of cbc:CountrySubentity and cac:CountrySubentityCode need be used, with preference to cbc:CountrySubentity if it exists.

6.4. Sort code

Table 14. XPath information

XPath address
/​in:Invoice/​cac:PaymentMeans/​cac:PayeeFinancialAccount/​cac:FinancialInstitutionBranch/​cac:ID

This field contains the sort code for the seller's bank.

6.5. Account number

Table 15. XPath information

XPath address
/​in:Invoice/​cac:PaymentMeans/​cac:PayeeFinancialAccount/​cac:ID

This field contains the seller's account number.

6.6. Account name

Table 16. XPath information

XPath address
/​in:Invoice/​cac:PaymentMeans/​cac:PayeeFinancialAccount/​cbc:Name

This field contains the seller's account name.

7. Consignment information

The consignment information holds generic details and totals relating to all the goods items in the invoice.

7.1. Shipping marks; container number

At this time this field is not being used in the invoice.

7.2. Number and kind of packages; description of goods

At this time this field is not being used in the Invoice.

7.3. Total gross weight (kg)

At this time this field is not being used in the Invoice.

7.4. Total cube (m3)

At this time this field is not being used in the Invoice.

7.5. Total net weight (kg)

At this time this field is not being used in the Invoice.

8. Line item information

Line item information is associated with the individual item of goods in the invoice

8.1. Item / References

Table 17. XPath information

XPath addresses
/​in:Invoice/​cac:InvoiceLine/​cac:OrderLineReference/​cac:BuyersLineID
/​in:Invoice/​cac:InvoiceLine/​cac:OrderLineReference/​cac:SellersLineID

The first reference is the buyer's assigned reference to the line item.

The second reference is the seller's assigned reference to the line item.

8.2. Description

Table 18. XPath information

XPath address
/​in:Invoice/​cac:InvoiceLine/​cac:Item/​cbc:Description

This provides a free text description of the line item.

8.3. Country of origin

Table 19. XPath information

XPath address
/​in:Invoice/​cac:InvoiceLine/​cac:Item/​cac:OriginCountry/​cbc:Name

This field is used to provide to country of origin for the line item.

8.4. Commodity code

Table 20. XPath information

XPath address
/​in:Invoice/​cac:InvoiceLine/​cac:Item/​cac:CommodityClassification/​cac:CommodityCode

This field is used to provide the commodity code for the line item.

8.5. Quantity

Table 21. XPath information

XPath address
/​in:Invoice/​cac:InvoiceLine/​cbc:InvoicedQuantity

This fields states the number of items invoiced for the line item.

8.6. Unit price

Table 22. XPath information

XPath address
/​in:Invoice/​cac:InvoiceLine/​cac:BasePrice/​cbc:PriceAmount

This field is used to specify the unit price of the line item.

8.7. Amount

Table 23. XPath information

XPath address
/​in:Invoice/​cac:InvoiceLine/​cbc:LineExtensionAmount

This field states the actual line item amount which will be quantity multiplied by the unit price, the result is not calculated it will be transmitted.

9. Summary information

Summary information is associated to the entire invoice and not to any individual line item.

9.1. Clauses and / or Notes

Table 24. XPath information

XPath address
/​in:Invoice/​cbc:Note

This notes field is used for any free text information that relates to the entire invoice, for specific invoice clauses or declarations.

9.2. Total amount

Table 25. XPath information

XPath addresses
/​in:Invoice/​in:InvoiceCurrencyCode
/​in:Invoice/​cac:LegalTotal/​cbc:LineExtensionTotalAmount

Two data fields populate this one form field: the currency and the total amount.

NB The total amount is the total of all the individual line items and is not calculated it will be transmitted

9.3. Total tax amount

Table 26. XPath information

XPath address
/​in:Invoice/​cac:TaxTotal/​cbc:TotalTaxAmount

This fields provides details of any tax associated to the entire invoice, this amount will not be calculated it will be transmitted

9.4. Total amount due

Table 27. XPath information

XPath addresses
/​in:Invoice/​in:InvoiceCurrencyCode
/​in:Invoice/​cac:LegalTotal/​cbc:TaxInclusiveTotalAmount

Two data fields populate this one form field: the currency and the total amount.

This fields specifies the amount to be paid and will not be calculated it will be transmitted.

9.5. Name of signatory

Table 28. XPath information

XPath address
/​in:Invoice/​cac:SellerParty/​cac:Party/​cac:Contact/​cbc:Name

This fields identified the name of the signatory.

9.6. Place and date of issue

Table 29. XPath information

XPath addresses
/​in:Invoice/​cac:SellerParty/​cac:Party/​cac:Address/​cbc:CityName
/​in:Invoice/​cac:SellerParty/​cac:Party/​cac:Address/​cbc:CountrySubentity
/​in:Invoice/​cac:SellerParty/​cac:Party/​cac:Address/​cac:CountrySubentityCode
/​in:Invoice/​cbc:IssueDate

The above fields provide information relating to the date and place of issue of the invoice.

Note that only one of cbc:CountrySubentity and cac:CountrySubentityCode need be used, with preference to cbc:CountrySubentity if it exists.

9.7. Signature

This field is not currently being filled automatically as it is a manual entry.

10.  Continuation page

The continuation page comprises only a copy of the document identification information described in Section 3, “Main document and party information” and room for additional line item entries described in Section 8, “Line item information”.