E-Invoice Object

Document Data

Parameter
Data Type
Field Validations
Description

ID

String

Maximum length: 150

Mandatory. Document reference number used by Supplier for internal tracking purpose.

IssueDate

String

Format:

YYYY-MM-DD

Mandatory. Date of issuance of the e-Invoice

*Note that the date must be the current date

InvoiceTypeCode

String

-

Mandatory. Invoice Type Code https://docs.peppol.eu/poacc/billing/3.0/codelist/UNCL1001-inv/

Object. Identifies the document type (e.g., Sales invoice, credit note, debit note, refund note, etc.)

Note

String

Max length 300

Optional. A textual note that gives unstructured information that is relevant to the Invoice or document

DocumentCurrencyCode

String

Enum: ISO code list 4217 alpha-3

Mandatory. Specific currency that is used to represent the monetary value stated in the e-Invoice.

https://docs.peppol.eu/poacc/billing/3.0/codelist/ISO4217/

TaxCurrencyCode

String

Enum: ISO code list 4217 alpha-3

Optional. Specific currency that is used to represent the tax monetary value stated in the e-Invoice.

https://docs.peppol.eu/poacc/billing/3.0/codelist/ISO4217/.

If provided, then TaxTotal[1].TaxAmount must also be provided, in the tax currency, as described in TaxTotal array description. Otherwise, exactly one object must be present in the TaxTotal array.

BuyerReference

String

An invoice must have buyer reference or order reference.

Mandatory if OrderReference.ID is not present. An identifier assigned by the Buyer used for internal routing purposes.

InvoicePeriod

Object

-

Optional. Represents Billing Period Details. Refer to Invoice Period Object

OrderReference.ID

String

An invoice must have buyer reference or order reference.

Mandatory if BuyerReference is not present. An identifier of a referenced purchase order, issued by the Buyer.

BillingReference

Array

-

Conditional. A group of business terms providing information on one or more preceding Invoices. Refer Billing Reference Object.

ContractDocumentReference.ID

String

-

The identification of a contract.

ProjectReference.ID

String

-

The identification of the project the invoice refers to

AccountingSupplierParty

Object

-

Mandatory. Accounting Supplier Party Object

AccountingCustomerParty

Object

-

Mandatory. Accounting Customer Party Object

Delivery

Object

-

Conditional.

A group of business terms providing information about where and when the goods and services invoiced are delivered.

PaymentMeans

Object

-

Mandatory. Payment instructions. Refer Payment Means object

PaymentTerms

Object

-

Optional. Refer Payment Terms Object

AllowanceCharge

Array

-

Conditional. Required in case of invoice level discount. Allowance Charge Object

TaxTotal

Array

-

Mandatory. Array of Tax Total Objects.

TaxTotal[0]

Object

-

Mandatory. Tax amount and breakdown in document currency.

TaxTotal[1]

Object

-

Conditional. Mandatory when tax currency is provided.

LegalMonetaryTotal

Object

-

Mandatory. Legal Monetary Total Object

InvoiceLine

Array

-

Mandatory. Array of Invoice Line Item Objects

Payment Terms Object

Parameter
Data Type
Field Validations
Description

Note

String

Max Length: 300

Optional. An agreed-upon payment terms and conditions e.g., timing and method of payment

Billing Reference Object

Parameter
Data Type
Field Validations
Description

InvoiceDocumentReference

Object

-

Conditional Mandatory. Document number of original invoice / document that is being affected / adjusted.

If "Invoice type code" (BT-3) contains the code 384 (Corrected invoice), reference should be provided at least once.

InvoiceDocumentReference.ID

String

MaxLength: 150

Mandatory when InvoiceDocumentReference object is present. The identification of an Invoice that was previously sent by the Seller.

InvoiceDocumentReference.IssueDate

Date

yyyy-mm-dd

Max Length: 10

Optional.

Legal Monetary Total Object

Note: All amounts will be accepted in document currency

Parameter
Data Type
Field Validations
Description

LineExtensionAmount.Value

Number

-

Mandatory. Sum of all Invoice line net amounts in the Invoice, excluding any applicable taxes.

TaxExclusiveAmount.Value

Number

-

Mandatory. The total amount of the Invoice without TAX, inclusive of invoice level allowances and charges.

TaxInclusiveAmount.Value

Number

-

Mandatory. The total amount of the Invoice inclusive of tax.

AllowanceTotalAmount.Value

Number

-

Total of document level allowance amounts

ChargeTotalAmount.Value

Number

-

Total of document level charge amounts

PrepaidAmount.Value

Number

-

Optional

PayableRoundingAmount.Value

Number

-

Optional, where applicable. Rounding amount added to the amount payable.

PayableAmount.Value

Number

-

Mandatory. Sum of amount payable (inclusive of total taxes chargeable) excluding any amount paid in advance and any rounding adjustment.

Tax Total Object (Document Currency)

Parameter
Data Type
Field Validations
Description

TaxAmount.Value

Number

-

Mandatory. Total amount of tax payable

TaxSubtotal[]

Array

-

Mandatory for document currency tax total object. One or more Tax Subtotal objects.

Must be absent in case of TaxTotal object having accounting currency tax amount.

Tax SubTotal Object

Parameter
Data Type
Field Validations
Description

TaxableAmount.Value

Amount Object

-

Mandatory where applicable. Sum of amount chargeable for each tax type

TaxAmount.Value

Amount Object

-

Mandatory. Total amount of tax payable for each tax type

TaxCategory

Object

-

Mandatory. Tax Category Object

Tax Category Object

Parameter
Data Type
Field Validations
Description

ID

String

Tax category code.

Mandatory.

Percent

Number

VAT rate

Conditional Mandatory

TaxExemptionReason

String

Description of reason for VAT exemption

Conditional Mandatory

TaxExemptionReasonCode

Enum

-

Conditional, based on VAT category. A coded statement of the reason for why the amount is exempted from TAX.

https://test-docs.peppol.eu/pint/pint-eu/pint-eu/trn-invoice/codelist/Aligned-TaxExemptionCodes/

Tax Total Object (Tax Currency)

Parameter
Data Type
Field Validations
Description

TaxAmount.Value

Amount Object

-

Mandatory. Total amount of tax payable, in tax currency

Document Allowance Charge Object

Parameter
Data Type
Field Validations
Description

ChargeIndicator

Boolean

-

Mandatory. An indicator that this AllowanceCharge describes a discount. The value of this tag indicating discount (Allowance) must be "false", and for fee/charge it must be “true”

AllowanceChargeReasonCode

Enum

Conditional. Contain the description of the additional discount applied or description of the additional fees.

Must be present when the allowance charge object is present.

MultiplierFactorNumeric

Number

-

The discount/charge rate. E.g. If the rate is 5%, the value of this element shall be “5”.

Amount.Value

Number

-

Mandatory. Total amount deducted from the original price of a product or service

BaseAmount.Value

Number

-

Mandatory. The amount based on which allowance or charge is calculated. Equal to invoice level total before taxes, charges, and discounts.

TaxCategory

Object

-

Mandatory

Document Level Allowance Charge Tax Category object

Parameter
Data Type
Field Validations
Description

ID

String

-

Mandatory.

Percent

Number

VAT rate

Conditional Mandatory

TaxScheme.ID

String

-

Optional. A code indicating the type of tax. Default: “VAT”

Delivery Object

Parameter
Data Type
Field Validations
Description

ActualDeliveryDate

String

Format:

YYYY-MM-DD

Optional

DeliveryLocation

Object

-

Optional

DeliveryParty

Object

-

Optional

Delivery Location Object

Parameter
Data Type
Field Validations
Description

ID.Value

String

-

Optional

Delivery location ID

ID.SchemeID

Enum

-

Mandatory if Delivery Location ID is present

https://docs.peppol.eu/poacc/billing/3.0/codelist/ICD/

Address

Object. Postal Address Object

-

Optional

Delivery Party Object

Parameter
Data Type
Field Validations
Description

PartyName.Name

String

-

Name of shipping recipient of the products included in the e-Invoice in a commercial transaction

Accounting Supplier Party Object

Parameter
Data Type
Field Validations
Description

Party

Object

-

Mandatory. Supplier Party Object.

Party.EndpointID.Value

String

-

Mandatory.Seller’s electronic address to which the application level response to the invoice may be delivered.

Party.EndpointID.SchemeID

Enum

Mandatory

Party.PartyIdentification

Array

-

Mandatory. Supplier Party Identification Object.

Party.PartyIdentification.ID

Object

-

Mandatory. Supplier Party Identification ID Object.

Party.PartyIdentification.ID.Value

String

Alphanumeric

Mandatory

Party.PartyIdentification.ID.SchemeID

Enum

-

Mandatory.

The identification scheme identifier shall be chosen from the entries of the list published by the ISO/IEC 6523 maintenance agency.

ISO 6523 ICD list - Peppol BIS Billing 3.0

Party.PostalAddress

Object. Postal Address Object

-

Mandatory. Seller Postal Address object. Seller address must contain street name, additional street name, postal code, city, state, and country code.

PartyTaxScheme

Object

-

PartyTaxScheme.CompanyID

String

-

Mandatory. Supplier VAT identifier.

PartyTaxScheme.TaxScheme.ID

String

-

Optional. The scheme of the TAX identifier. Default: VAT

Party.PartyLegalEntity

Object

-

Mandatory. Seller Party Legal Entity Object

Party.PartyLegalEntity.RegistrationName

String

-

Mandatory. Name of business or individual who will be the issuer of the e-Invoice.

Party.Contact

Object

-

Optional

Party.Contact.Name

String

MaxLength: 300

Optional

Party.Contact.Telephone

String

MaxLength: 20

Mandatory.

Party.Contact.ElectronicMail

String

MaxLength: 320

Optional

Postal Address Object

Parameter
Data Type
Field Validations
Description

StreetName

String

MaxLength: 150

Mandatory. Seller address line 1.

AdditionalStreetName

String

MaxLength: 150

Mandatory. Seller address line 2.

CityName

String

-

The common name of the city, town or village, where the Seller address is located.

PostalZone

String

Numerals MinLen: 5 MaxLen: 5

Optional. The identifier for an addressable group of properties according to the relevant postal service. Ex 50480

CountrySubentity

String

-

Mandatory. The state of a country.

AddressLine

Array

Min Size: 0

Max Size: 1

Optional.

AddressLine.Line

String

MaxLength: 150

Mandatory if AddressLine object is present. Seller address line 3.

Country

Object

-

Mandatory

Country.IdentificationCode

String

-

Mandatory. Seller country code. Country codes in an invoice MUST be coded using ISO3166-1:Alpha2.

https://test-docs.peppol.eu/pint/pint-eu/pint-eu/trn-invoice/codelist/ISO3166/

Accounting Customer Party Object

Parameter
Data Type
Field Validations
Description

Party

Object

-

Buyer Party Object.

Party.EndpointID.Value

String

-

Mandatory.

Buyer’s electronic address to which the invoice is delivered.

Party.EndpointID.SchemeID

Enum

-

Party.PartyIdentification

Array

-

Mandatory. Buyer Party Identification Object.

Party.PartyIdentification.ID

Object

-

Mandatory. Buyer Party Identification ID Object.

Party.PartyIdentification.ID.Value

String

Alphanumeric

Mandatory

Party.PartyIdentification.ID.SchemeID

String

Party.PostalAddress

Object. Postal Address Object

-

Mandatory.

Buyer Postal Address object. Buyer address must contain additional number, street name, building number, postal code, city, Neighborhood, country code.

Party.PartyLegalEntity

Object

-

Conditional.

Buyer Party Legal Entity Object

Party.PartyLegalEntity.RegistrationName

String

-

Name of recipient of the e-Invoice in a commercial transaction

Party.Contact

Object

-

Optional

Party.Contact.Name

String

MaxLength: 300

Optional

Party.Contact.Telephone

String

MaxLength: 20

Optional

Party.Contact.ElectronicMail

String

MaxLength: 320

Optional

Invoice Line Object

Parameter
Data Type
Field Validations
Description

ID

Number

-

Mandatory.

Each Invoice line (BG-25) shall have an Invoice line identifier (BT-126).

A unique identifier for the individual line within the Invoice.

An Invoice shall have at least one Invoice line (BG-25)

InvoicedQuantity

Object

-

Mandatory.

The quantity of items object

InvoicedQuantity.Quantity

Number

-

Mandatory.

Number of units of a particular product or service in a commercial transaction

InvoicedQuantity.UnitCode

String

Unit code (ibt-130), (ibt-150) MUST be coded according to the UN/ECE Recommendation 20 with Rec 21 extension. https://test-docs.peppol.eu/pint/pint-eu/pint-eu/trn-invoice/codelist/UNECERec20/

Mandatory.

Standard unit or system used to measure the product or service.

LineExtensionAmount.Value

Number

-

Mandatory.

Total Excluding Tax. Sum of amount payable (inclusive of applicable discounts and charges), excluding any applicable taxes (e.g., sales tax, service tax)

AllowanceCharge[]

Array

-

Conditional.

Required only if there is invoice line item level allowance.

One or more Invoice level allowance charge objects.

Item

Object

-

Mandatory.

Each Invoice line (BG-25) shall contain the Item name (BT-153).

Item.Description

String

MaxLength: 300

Optional.

Details of products or services being billed as a result of a commercial transaction

Item.Name

String

MaxLength: 300

Mandatory

Item.OriginCountry.IdentificationCode

String

-

Optional.

The code identifying the country from which the item originates.

Item.CommodityClassification[]

Array

-

Mandatory

Item.CommodityClassification[].ItemClassificationCode.Value

String

-

Mandatory.

Category of products or services being billed as a result of a commercial transaction. More than 1 classification codes can be added for goods / services included in the invoice. OR Product Tariff Code [Only applicable for Goods]

Item.CommodityClassification[].ItemClassificationCode.SchemeID

Enum

The identification scheme shall be chosen from the entries in UNTDID 7143.

Item.ClassifiedTaxCategory

Object

-

Mandatory

Item.ClassifiedTaxCategory.Percent

Number

-

Conditional.

The TAX rate, represented as the percentage that applies to the invoiced item.

Price

Object

-

Mandatory.

Each Invoice line shall contain the Item net price

Price.PriceAmount.Value

Number

-

Mandatory.

Price assigned to a single unit of a product or service. (Unit Price)

AllowanceCharge[].ChargeIndicator

Boolean

-

Conditional.

Required in case of parent context exists.

An indicator that this AllowanceCharge describes a discount. The value of this tag indicating discount (Allowance) must be "false". The value of this tag indicating Charge (Allowance) must be "true".

AllowanceCharge[].AllowanceChargeReasonCode

Enum

Conditional.

To contain the reason code of the line-item discount/charge applied

Must be encoded using respective code list:

Allowance reason codes (UNCL5189 subset) ,

Charge reason code (UNCL7161)

AllowanceCharge[].MultiplierFactorNumeric

Number

Min: 0.00

Max: 100.00

Conditional.

Discount Rate or Charge Rate.

MultiplierFactorNumeric. Charge associated with the product or service (be it in the form of percentage (%) or prevailing specified rate) imposed after tax OR

Percentage of deduction from the original price of a product or service

AllowanceCharge[].Amount.Value

Number

-

Amount deducted from the original price of a product or service.

OR

Charge associated with the product or service imposed after tax.

Currency will be overridden by document currency, if other currency is specified.

AllowanceCharge[].BaseAmount.Value

Number

Conditional.

The amount on which allowance/charge is calculated. Should be same as unitPrice * quantity. Currency will be overridden by document currency, if other currency is specified.

Payment Means Object

Parameter
Data Type
Field Validations
Description

PaymentMeansCode

Enum

MUST be coded using UNCL4461 code list

Mandatory.

The means, expressed as code, for how a payment is expected to be or has been settled. Payment means code | Peppol Specifications for the EU implementation of PINT

PayeeFinancialAccount

Object

-

Conditional.

Payee Financial Account Payment Note object.

PayeeFinancialAccount.ID

String

MaxLength: 150

Conditional.

A unique identifier of the financial payment account of the supplier, at a payment service provider, to which payment should be made.

PayeeFinancialAccount.Name

String

MaxLength: 150

Optional.

The Supplier’s bank account name

PayeeFinancialAccount.FinancialInstitutionBranch.ID

String

MaxLength: 150

Conditional.

The Supplier’s bank’s branch ID

Last updated

Was this helpful?