Docs

Profiles

Basic WL

Includes MINIMUM profile plus additional data for buyer's process automation.

This includes the profile MINIMUM plus some additional data which is typically required for process automation on the buyer’s side. Such data may be optional or conditional, depending on the underlying business transaction. This profile does not include any invoice information at line level, but it contains all mandatory fields on document level, including those on which business rules from the EN 16931 may apply.

import { BASIC_WL, type ProfileBasicWL } from "node-zugferd/profile/basic-wl";
Documents containing only information of the first two profiles (MINIMUM and BASIC WL) are not considered to be invoices according to German fiscal law (→ GoBD); they may therefore not be used as electronic invoices in Germany. They will not be considered as invoices in France anymore once the einvoicing B2B mandate CTC reform has been fully deployed (2028). It is then highly recommended to target the BASIC profile at minimum.

Basic Usage

Setup the Profile

First configure the zugferd instance (invoicer) to use the Basic WL profile. This defines the standard and complexity level of the invoice.

invoicer.ts
import { BASIC_WL } from "node-zugferd/profile/basic-wl"; 

export const invoicer = zugferd({
  profile: BASIC_WL, 
});

Define Invoice Data

Now define the actual invoice content, including all required fields of the profile, using the ProfileBasicWL type for type safety.

import { ProfileBasicWL } from "node-zugferd/profile/basic-wl";

const data: ProfileBasicWL = {
  number: "INV-001",
  // ...
};

Create Invoice

Use the previously created instance (invoicer) to generate the invoice from your data. You can either:

  • Generate standalone XML
  • Embed the XML inside a PDF/A-3b compliant file.
import fs from "fs";
import { invoicer } from "./invoicer";

const invoice = invoicer.create(data);

// Only generate xml
const xml = await invoice.toXML();

// Or embed xml in a PDF-A/3b
const pdf = fs.readFileSync("./your/invoice.pdf");
const pdfA = await invoicer.embedInPdf(pdf); 

🎉 That's it

Your invoice is now ready! You've successfully created a ZUGFeRD invoice using the Basic WL profile.

Schema

Extends MINIMUM

Type:string
Required:
Type:object[]
Required:

Invoice Note

A group of business terms providing textual notes that are relevant for the invoice, together with an indication of the note subject.

Type:string
Required:
ram:Content

Invoice note

A textual note that gives unstructured information that is relevant to the Invoice as a whole.

Such as the reason for any correction or assignment note in case the invoice has been factored.

Type:string
Required:
ram:SubjectCode

Invoice note subject code

The subject of the textual note in BT-22.

To be chosen from the entries in UNTDID 4451 [6].

Among the list, the following codes can be used:

  • AAI: General Information
  • SUR: Supplier Notes
  • REG: Regulatory information
  • ABL: Legal Information
  • TXD: Tax Information
  • CUS: Customs Information
Type:object
Required:
Type:object
Required:
Type:object
Required:

Details of the associated contract

Type:string
Required:
ram:IssuerAssignedID

Contract reference

The identification of a contract.

The contract identifier should be unique in the context of the specific trading relationship and for a defined time period.

CHORUSPRO : This is the "numéro de Marché" (contract number)

Type:object
Required:
Type:string[]
Required:
ram:ID[i]

Seller identifier

An identification of the Seller.

For many systems, the Seller identifier is a key piece of information. Multiple Seller identifiers may be assigned or specified. They may be differentiated by using various identification schemes. If no scheme is specified, it should be known by Buyer and Seller, e.g. a previously exchanged Buyer assigned identifier of the Seller.

BR-CO-26: In order for the buyer to automatically identify a supplier, the Seller identifier (BT-29), the Seller legal registration identifier (BT-30) and/or the Seller VAT identifier (BT-31) shall be present.

Type:object
Required:

Seller global identifier

The identification scheme identifier of the seller is a specific identifier given to the seller by a global registration authority.

The seller’s global ID is a unique identifier assigned to a seller by a global registration body.

If the seller has a GlobalID, he can qualify it with this attribute. Otherwise, he uses the ID.

Type:string
Required:
ram:GlobalID

Seller global identifier

The identification scheme identifier of the seller is a specific identifier given to the seller by a global registration authority.

The seller’s global ID is a unique identifier assigned to a seller by a global registration body.

If the seller has a GlobalID, he can qualify it with this attribute. Otherwise, he uses the ID.

Type:string
Required:
@schemeID

Seller identifier identification scheme identifier

Scheme identifier

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

In particular, the following codes can be used:

  • 0021 : SWIFT
  • 0060 : DUNS
  • 0088 : GLN
  • 0177 : ODETTE
Type:object
Required:
Type:string
Required:
ram:TradingBusinessName

Seller trading name

A name by which the Seller is known, other than Seller name (also known as Business name).

This may be used if different from the Seller name.

CHORUS PRO: this field is limied to 99 characters.

Type:object
Required:
Type:string | number
Required:
ram:PostcodeCode

Seller post code

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

Such as a ZIP code or a post code.

Type:string
Required:
ram:LineOne

Seller address line 1

The main address line in an address.

Usually the street name and number or post office box.

Type:string
Required:
ram:LineTwo

Seller address line 2

An additional address line in an address that can be used to give further details supplementing the main line.

Type:string
Required:
ram:LineThree

Seller address line 3

An additional address line in an address that can be used to give further details supplementing the main line.

Type:string
Required:
ram:CityName

Seller city

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

Type:string
Required:
ram:CountrySubDivisionName

Seller country subdivision

The subdivision of a country.

Such as a region, a county, a state, a province, etc.

Type:object
Required:

Details about the electronic address

Type:string
Required:
ram:URIID

Seller electronic address

Identifies the Seller's electronic address to which a business document may be delivered.

Type:string
Required:
@schemeID

Scheme identifier

The identification scheme identifier of the Seller electronic address

The scheme identifier shall be chosen from a list to be maintained by the Connecting Europe Facility.

Type:object
Required:

Seller Tax Representative Party

A group of business terms providing information about the Seller's tax representative.

The "Seller Tax Representative party" block must be filled in if the seller has a tax representative.

Type:string
Required:
ram:Name

Seller tax representative name

The full name of the Seller's tax representative party.

Type:object
Required:

Seller Tax Representative Postal Address

A group of business terms providing information about the postal address for the tax representative party.

The seller tax representative name/postal address shall be provided in the invoice, if the seller has a tax representative who is liable to pay the VAT due. Sufficient components of the address are to be filled in order to comply to legal requirements.

The address block of the Seller Tax Representative is mandatory if the supplier has a tax representative. Like any address, the fields necessary to define the address must appear. The country code is mandatory.

BR-19: The Seller tax representative postal address (BG-12) shall be provided in the Invoice, if the Seller (BG-4) has a Seller tax representative party (BG-11).

Type:string
Required:
ram:PostcodeCode

Tax representative post code

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

Such as a ZIP code or a post code.

Type:string
Required:
ram:LineOne

Tax representative address line 1

The main address line in an address.

Usually the street name and number or the post office box.

Type:string
Required:
ram:LineTwo

Tax representative address line 2

An additional address line in an address that can be used to give further details supplementing the main line.

Type:string
Required:
ram:LineThree

Tax representative address line 3

An additional address line in an address that can be used to give further details supplementing the main line.

Type:string
Required:
ram:CityName

Tax representative city

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

Type:string
Required:
ram:CountryID

Tax representative country code

A code that identifies the country.

Country where VAT is liable. The lists of valid countries are registered with the ISO 3166-1 Maintenance agency, "Codes for the representation of names of countries and their subdivisions".

Type:string
Required:
ram:CountrySubDivisionName

Tax representative country subdivision

The subdivision of a country.

Such as a region, a county, a state, a province, etc.

Type:object
Required:

Detailed information on tax information

Type:string
Required:
ram:ID

Seller tax representative VAT identifier

The VAT identifier of the Seller's tax representative party.

VAT number prefixed by a country code based on EN ISO 3166-1 "Codes for the representation of names of countries and their subdivisions".

Type:object
Required:
Type:string
Required:
ram:ID

Buyer identifier

An identifier of the Buyer.

If no scheme is specified, it must be known by Buyer and Seller.

Type:object
Required:

Buyer global identifier

The identification scheme identifier of the seller is a specific identifier given to the seller by a global registration authority.

GloablID, if global identifier exists and can be stated in @schemeID, ID else The global identifier of a buyer is the specific identification given to him by a global registry organization.

Type:string
Required:
ram:GlobalID

Buyer global identifier

The identification scheme identifier of the seller is a specific identifier given to the seller by a global registration authority.

GloablID, if global identifier exists and can be stated in @schemeID, ID else The global identifier of a buyer is the specific identification given to him by a global registry organization.

Type:string
Required:
@schemeID

Scheme identifier

The identification scheme identifier of the Buyer identifier.

If used, the identification scheme shall be chosen from the entries of the list published by the ISO/IEC 6523 maintenance agency.

Type:object
Required:
Type:string | number
Required:
ram:PostcodeCode

Buyer post code

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

Such as a ZIP code or a post code.

Type:string
Required:
ram:LineOne

Buyer address line 1

The main address line in an address.

Usually the street name and number or post office box.

Type:string
Required:
ram:LineTwo

Buyer address line 2

An additional address line in an address that can be used to give further details supplementing the main line.

Type:string
Required:
ram:LineThree

Buyer address line 3

An additional address line in an address that can be used to give further details supplementing the main line.

Type:string
Required:
ram:CityName

Buyer city

The common name of the city, town or village, where the Buyer's address is located.

Type:string
Required:
ram:CountryID

Buyer country code

A code that identifies the country.

The lists of valid countries are registered with the ISO 3166-1 Maintenance agency, "Codes for the representation of names of countries and their subdivisions".

Type:string
Required:
ram:CountrySubDivisionName

Buyer country subdivision

The subdivision of a country.

Such as a region, a county, a state, a province, etc.

Type:object
Required:

Details about the electronic address

Type:string
Required:
ram:URIID

Buyer electronic address

Identifies the Buyer's electronic address to which a business document should be delivered.

Type:string
Required:
@schemeID

Scheme identifier

The identification scheme identifier of the Buyer electronic address.

The scheme identifier shall be chosen from a list to be maintained by the Connecting Europe Facility.

Type:object
Required:

Detailed information on buyer tax information

Type:string
Required:
ram:ID

Buyer VAT identifier

The Buyer's VAT identifier (also known as Buyer VAT identification number).

VAT number prefixed by a country code based on EN ISO 3166-1 "Codes for the representation of names of countries and their subdivisions"

CHORUSPRO: If entered, ChorusPro will not integrate the VAT ID of the buyer because it is the SIRET number that is used to identify a buyer for public entities (BT-47)

BR-CO-9: The Seller VAT identifier (BT-31), the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48) shall have a prefix in accordance with ISO code ISO 3166-1 alpha-2 by which the country of issue may be identified. Nevertheless, Greece may use the prefix ‘EL’.

Type:object
Required:
Type:object
Required:

Delivery Information

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

Type:string
Required:
ram:ID

Deliver to location identifier

An identifier for the location at which the goods and services are delivered.

If no scheme is specified, it should be known by Buyer and Seller, e.g. a previously exchanged Buyer or Seller assigned identifier.

Type:object
Required:

Deliver to location global identifier

Type:string
Required:
ram:GlobalID

Deliver to location global identifier

Type:string
Required:
@schemeID

Scheme identifier

The identification scheme identifier of the Deliver to location identifier.

If used, the identification scheme shall be chosen from the entries of the list published by the ISO/IEC 6523 maintenance agency.

Type:string
Required:
ram:Name

Deliver to party name

The name of the party to which the goods and services are delivered.

Shall be used if the Deliver to party is different from the Buyer.

Type:object
Required:

Deliver to address

A group of business terms providing information about the address to which goods and services invoiced were or are delivered.

In the case of pick-up, the deliver to address is the pick-up address. Sufficient components of the address are to be filled to comply with legal requirements.

Like any address, the fields necessary to define the address must appear. The country code is mandatory.

Type:string | number
Required:
ram:PostcodeCode

Deliver to post code

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

Such as a ZIP code or a post code.

Type:string
Required:
ram:LineOne

Deliver to address line 1

The main address line in an address.

Usually the street name and number.

Type:string
Required:
ram:LineTwo

Deliver to address line 2

An additional address line in an address that can be used to give further details supplementing the main line.

Type:string
Required:
ram:LineThree

Deliver to address line 3

An additional address line in an address that can be used to give further details supplementing the main line.

Type:string
Required:
ram:CityName

Deliver to city

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

Type:string
Required:
ram:CountryID

Deliver to country code

A code that identifies the country.

The lists of valid countries are registered with the ISO 3166-1 Maintenance agency, "Codes for the representation of names of countries and their subdivisions".

Type:string
Required:
ram:CountrySubDivisionName

Deliver to country subdivision

The subdivision of a country.

Such as a region, a county, a state, a province, etc.

Type:object
Required:

Detailed information about the actual Delivery

Type:date
Required:
udt:DateTimeString

Actual delivery date

The date on which the supply of goods or services was made or completed.

In Germany, the date of delivery and performance is a mandatory information on invoices. This can also be indicated at item level, but must in any case be indicated here.

Type:object
Required:

Detailed information on the corresponding despatch advice

Type:string
Required:
ram:IssuerAssignedID

Despatch advice reference

An identifier of a referenced despatch advice.

CHORUS PRO : not used

Type:object
Required:
Type:string
Required:
ram:CreditorReferenceID

Bank assigned creditor identifier

Unique banking reference identifier of the Payee or Seller assigned by the Payee or Seller bank.

Used in order to pre-notify the Buyer of a SEPA direct debit.

This is the ICS for SEPA direct debits

Type:string
Required:
ram:PaymentReference

Remittance information

A textual value used to establish a link between the payment and the Invoice, issued by the Seller.

Used for creditor's critical reconciliation information. This information element helps the Seller to assign an incoming payment to the relevant payment process. When specifying the textual value, which is commonly the invoice number of the invoice being paid, but may be another seller reference, the buyer should indicate this reference in his payment order when executing the payment. In a payment transaction this reference is transferred back to the Seller as Remittance Information.

In order to allow for automatic processing of cross-border SEPA payments, only Latin characters should be used in this field, with a maximum of 140 characters. Referencesection 1.4 of the SEPA credit transfer and SEPA direct debit scheme implementation guides [13] and [14] for details of the allowed characters. Other rules may apply for SEPA payments within national borders.

If remittance information is structured according to the ISO 11649:2009 standard [16] for Structured RF Creditor Reference, it shall be mapped to the Structured Remittance Information Creditor Reference field in SEPA payments messages. If remittance information is structured according to the EACT standard for automated reconciliation [17], it shall be mapped to the Unstructured Remittance Information field in SEPA payments messages.”

If remittance information is to be mapped to the End To End Identification field or to the Structured Remittance Information Creditor Reference field in SEPA payments messages, then in addition to the Latin character set restriction, the content shall not start or end with a '/' and the content shall not contain '//'s. See reference [15].

Type:string
Required:
ram:TaxCurrencyCode

VAT accounting currency code

The currency used for VAT accounting and reporting purposes as accepted or required in the country of the Seller.

Shall be used in combination with the Total VAT amount in accounting currency (BT-111) when the VAT accounting currency code differs from the Invoice currency code. The lists of valid currencies are registered with the ISO 4217 Maintenance Agency ""Codes for the representation of currencies and funds"". Please refer to Article 230 of the Council Directive 2006/112/EC [2] for more information.

Type:object
Required:

Payee

A group of business terms providing information about the Payee, i.e. the role that receives the payment.

The role of Payee may be fulfilled by another party then the Seller, e.g. a factoring service.

This group makes it possible to identify the invoices to be paid to a third-party Payee in the case of factoring. CHORUS PRO: In the event of subrogation factoring, the legal information associated with subrogation must be present in the PDF visual presentation of the invoice. In this case, the bank identifier oresent in the invoice is the factor one.

Type:string
Required:
ram:ID

Payee identifier

If no scheme is specified, it should be known by Buyer and Seller, e.g. a previously exchanged Buyer or Seller assigned identifier.

Type:object
Required:

Payee global identifier

Type:string
Required:
ram:GlobalID

Payee global identifier

Type:string
Required:
@schemeID

Scheme identifier

The identification scheme identifier of the Payee identifier.

If used, the identification scheme shall be chosen from the entries of the list published by the ISO/IEC 6523 maintenance agency.

Type:string
Required:
ram:Name

Payee name

The name of the Payee.

Shall be used when the Payee is different from the Seller (but may also be the Seller name).

If the PAYEE party block is present, the name of the Payee is mandatory

BR-17: The Payee name (BT-59) shall be provided in the Invoice, if the Payee (BG-10) is different from the Seller (BG-4).

Type:object
Required:

Details about the organization

Type:object
Required:

Payee legal registration identifier

An identifier issued by an official registrar that identifies the Payee as a legal entity or person.

If no scheme is specified, it should be known by Buyer and Seller, e.g. the identifier that is exclusively used in the applicable legal environment.

Type:string
Required:
ram:ID

Payee legal registration identifier

An identifier issued by an official registrar that identifies the Payee as a legal entity or person.

If no scheme is specified, it should be known by Buyer and Seller, e.g. the identifier that is exclusively used in the applicable legal environment.

Type:string
Required:
@schemeID

Scheme identifier

The identification scheme identifier of the Payee legal registration identifier.

If used, the identification scheme shall be chosen from the entries of the list published by the ISO/IEC 6523 maintenance agency.

For a SIREN or a SIRET, the value of this field is "0002"

Type:object[]
Required:

VAT Breakdown

A group of business terms providing information about VAT breakdown by different categories, rates and exemption reasons

Type:string | number
Required:
ram:CalculatedAmount

VAT category tax amount

The total VAT amount for a given VAT category.

Calculated by multiplying the VAT category taxable amount with the VAT category rate for the relevant VAT category.

For EXTENDED profile only, BR-CO-17 is not applied.

Type:string
Required:
ram:TypeCode

Type of tax (code)

Coded identification of a VAT category.

The VAT category code and the VAT category rate shall be consistent. For more information on the recommended codes, please refer to subclause 6.3.3.2 - Specification of VAT category codes.

Type:string
Required:
ram:ExemptionReason

VAT exemption reason text

A textual statement of the reason why the amount is exempted from VAT or why no VAT is being charged

Articles 226 items 11 to 15 Directive 2006/112/EC [2].

CHORUS PRO: this field is limited to 1024 characters

Type:string | number
Required:
ram:BasisAmount

VAT category taxable amount

Sum of all taxable amounts subject to a specific VAT category code and VAT category rate (if the VAT category rate is applicable).

The sum of Invoice line net amount minus allowances plus charges on document level which are subject to a specific VAT category code and VAT category rate (if the VAT category rate is applicable).

Type:string
Required:
ram:CategoryCode

VAT category code

Coded identification of a VAT category.

The following entries of UNTDID 5305 [6] are used (further clarification between brackets):

  • Standard rate (Liable for VAT in a standard way)
  • Zero rated goods (Liable for VAT with a percentage rate of zero)
  • Exempt from tax (VAT/IGIC/IPSI)
  • VAT Reverse Charge (Reverse charge VAT/IGIC/IPSI rules apply)
  • VAT exempt for intra community supply of goods (VAT/IGIC/IPSI not levied due to Intra-community supply rules)
  • Free export item, tax not charged (VAT/IGIC/IPSI not levied due to export outside of the EU)
  • Services outside scope of tax (Sale is not subject to VAT/IGIC/IPSI)
  • Canary Islands General Indirect Tax (Liable for IGIC tax)
  • Liable for IPSI (Ceuta/Melilla tax)

The VAT category codes are as follows:

  • S = Standard VAT rate
  • Z = Zero rated goods
  • E = VAT exempt
  • AE = Reverse charge
  • K = Intra-Community supply (specific reverse charge)
  • G = Exempt VAT for Export outside EU
  • O = Outside VAT scope
  • L = Canary Islands
  • M = Ceuta and Mellila

BR-47: Each VAT breakdown (BG-23) shall be defined through a VAT category code (BT-118).

For EXTENDED profile only, BR-O-11, BR-O-12, BR-O-13 and BR-O-14 are not applied.

Type:string
Required:
ram:ExemptionReasonCode

VAT exemption reason code

A coded statement of the reason for why the amount is exempted from VAT.

Code list issued and maintained by the Connecting Europe Facility.

Type:string
Required:
ram:DueDateTypeCode

Value added tax point date code

The code of the date when the VAT becomes accountable for the Seller and for the Buyer.

The code shall distinguish between the following entries of UNTDID 2005 [6]:

  • Invoice docment issue date
  • Delivery date, actual
  • Payment date. The Value added tax point date code is used if the Value added tax point date is not known when the invoice is issued. The use of BT-8 and BT-7 is mutually exclusive.

This code can not be present if the Value added tax point date is provided directly in the ""Value added tax point date"" (BT-7). This code should be selected from the following values from UNTDID 2475 (instead of UNTDID 2005 [6]):

  • 5: Date of the invoice (VAT on DEBITS)
  • 29: Delivery date (VAT on DEBITS)
  • 72: Payment date (VAT on RECEIPTS)

BR-CO-3: Value added tax point date (BT-7) and Value added tax point date code (BT-8) are mutually exclusive.

Type:string | number
Required:
ram:RateApplicablePercent

VAT category rate

The VAT rate, represented as percentage that applies for the relevant VAT category.

The VAT category code and the VAT category rate shall be consistent.

The value to enter is the percentage. For example, for 20%, it must be given as 20 (and not 0.2)

BR-48: Each VAT breakdown (BG-23) shall have a VAT category rate (BT-119), except if the Invoice is not subject to VAT.

Type:object
Required:

Invoicing period

A group of business terms providing information on the invoice period.

Used to indicate when the period covered by the invoice starts and when it ends. Also called delivery period.

Type:date
Required:
udt:DateTimeString

Invoicing period start date

The date when the Invoice period starts.

The initial date of delivery of goods or services.

This date must be less than or equal to the period end date (BT-74), if it exists

BR-CO-19: If Invoicing period (BG-14) is used, the Invoicing period start date (BT-73) or the Invoicing period end date (BT-74) shall be filled, or both.

Type:date
Required:
udt:DateTimeString

Invoicing period end date

This date must be greater than or equal to the period start date (BT-73), if it exists

BR-29: If both Invoicing period start date (BT-73) and Invoicing period end date (BT-74) are given then the Invoicing period end date (BT-74) shall be later or equal to the Invoicing period start date (BT-73).

BR-CO-19: If Invoicing period (BG-14) is used, the Invoicing period start date (BT-73) or the Invoicing period end date (BT-74) shall be filled, or both.

Type:object
Required:

Payment instructions

A group of business terms providing information about the payment.

Type:string
Required:
ram:TypeCode

Payment means type code

The means, expressed as code, for how a payment is expected to be or has been settled.

Entries from the UNTDID 4461 code list [6] shall be used. Distinction should be made between SEPA and non-SEPA payments, and between credit payments, direct debits, card payments and other instruments.

In particular, the following codes can be used:

  • 10: Species
  • 20: Check
  • 30: Transfer (includes SEPA transfer for CHORUSPRO)
  • 42: Payment on bank account
  • 48: Payment by credit card
  • 49: Direct debit (includes SEPA Direct Debit for CHORUSPRO)
  • 57 : Standing Agreement
  • 58: SEPA transfer (not used for CHORUSPRO: code 30)
  • 59: SEPA Direct Debit (not used for CHORUSPRO: code 49)
  • 97: Report
  • ZZZ: agreed amoung trading partners on interim basis

BR-49: A Payment instruction (BG-16) shall specify the Payment means type code (BT-81).

Type:string
Required:
ram:IBANID

Debited account identifier

The account to be debited by the direct debit.

Type:object[]
Required:

Credit transfer

A group of business terms to specify credit transfer payments.

Type:string
Required:
ram:IBANID

Payment account identifier

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

Such as IBAN (in case of SEPA payment) or a national account number.

Type:string
Required:
ram:ProprietaryID

National account number (not SEPA)

Use IBANID when appropriate, otherwise use ProprietaryID

Type:object[]
Required:

Document Level Allowances

A group of business terms providing information about allowances applicable to the Invoice as a whole.

Deductions, such as withheld tax may also be specified in this group.

Type:string | number
Required:
ram:CalculationPercent

Document level allowance percentage

The percentage that may be used, in conjunction with the document level allowance base amount, to calculate the document level allowance amount.

Type:string | number
Required:
ram:BasisAmount

Document level allowance base amount

The base amount that may be used, in conjunction with the document level allowance percentage, to calculate the document level allowance amount.

Type:string | number
Required:
ram:ActualAmount

Document level allowance amount

The amount of an allowance, without VAT.

Type:string
Required:
ram:ReasonCode

Document level allowance reason code

The reason for the document level allowance, expressed as a code.

Use entries of the UNTDID 5189 code list [6]. The Document level allowance reason code and the Document level allowance reason shall indicate the same allowance reason.

BR-33: Each Document level allowance (BG-20) shall have a Document level allowance reason (BT-97) or a Document level allowance reason code (BT-98).

BR-CO-5: Document level allowance reason code (BT-98) and Document level allowance reason (BT-97) shall indicate the same type of allowance.

BR-CO-21: Each Document level allowance (BG-20) shall contain a Document level allowance reason (BT-97) or a Document level allowance reason code (BT-98), or both.

Type:string
Required:
ram:Reason

Document level allowance reason

The reason for the document level allowance, expressed as text.

CHORUS PRO: this field is limited to 1024 characters

BR-33: Each Document level allowance (BG-20) shall have a Document level allowance reason (BT-97) or a Document level allowance reason code (BT-98).

BR-CO-5: Document level allowance reason code (BT-98) and Document level allowance reason (BT-97) shall indicate the same type of allowance.

BR-CO-21: Each Document level allowance (BG-20) shall contain a Document level allowance reason (BT-97) or a Document level allowance reason code (BT-98), or both.

Type:object
Required:

VAT type code for document level allowances

Type:string
Required:
ram:CategoryCode

Document level allowance VAT category code

A coded identification of what VAT category applies to the document level allowance.

The following entries of UNTDID 5305 [6] are used (further clarification between brackets):

  • Standard rate (Liable for VAT in a standard way)
  • Zero rated goods (Liable for VAT with a percentage rate of zero)
  • Exempt from tax (VAT/IGIC/IPSI)
  • VAT Reverse Charge (Reverse charge VAT/IGIC/IPSI rules apply)
  • VAT exempt for intra community supply of goods (VAT/IGIC/IPSI not levied due to Intra-community supply rules)
  • Free export item, tax not charged (VAT/IGIC/IPSI not levied due to export outside of the EU)
  • Services outside scope of tax (Sale is not subject to VAT/IGIC/IPSI)
  • Canary Islands General Indirect Tax (Liable for IGIC tax)
  • Liable for IPSI (Ceuta/Melilla tax)

The VAT category codes are as follows:

  • S = Standard VAT rate
  • Z = Zero rated goods
  • E = VAT exempt
  • AE = Reverse charge
  • K = Intra-Community supply (specific reverse charge)
  • G = Exempt VAT for Export outside EU
  • O = Outside VAT scope
  • L = Canary Islands
  • M = Ceuta and Mellila

BR-32: Each Document level allowance (BG-20) shall have a Document level allowance VAT category code (BT-95).

Type:string | number
Required:
ram:RateApplicablePercent

Document level allowance VAT rate

The VAT rate, represented as percentage that applies to the document level allowance.

The value to enter is the percentage. For example, for 20%, it must be given as 20 (and not 0.2)

Type:object[]
Required:

Document Level Charges

A group of business terms providing information about charges and taxes other than VAT, applicable to the Invoice as a whole.

Type:string | number
Required:
ram:CalculationPercent

Document level charge percentage

The percentage that may be used, in conjunction with the document level charge base amount, to calculate the document level charge amount.

Type:string | number
Required:
ram:BasisAmount

Document level charge base amount

The base amount that may be used, in conjunction with the document level charge percentage, to calculate the document level charge amount.

Type:string | number
Required:
ram:ActualAmount

Document level charge amount

The amount of a charge, without VAT.

Type:string
Required:
ram:ReasonCode

Document level charge reason code

The reason for the document level charge, expressed as a code.

Use entries of the UNTDID 7161 code list [6]. The Document level charge reason code and the Document level charge reason shall indicate the same charge reason.

In particular, the following codes and reasons can be used:

  • AA = Advertising discount
  • ABL = Packing supplement
  • ADR = Other services
  • ADT = Removal
  • FC = transportation costs
  • FI = Financial expenses
  • LA = Labeling

BR-38: Each Document level charge (BG-21) shall have a Document level charge reason (BT-104) or a Document level charge reason code (BT-105).

BR-CO-6: Document level charge reason code (BT-105) and Document level charge reason (BT-104) shall indicate the same type of charge.

BR-CO-22: Each Document level charge (BG-21) shall contain a Document level charge reason (BT-104) or a Document level charge reason code (BT-105), or both.

Type:string
Required:
ram:Reason

Document level charge reason

The reason for the document level charge, expressed as text.

CHORUS PRO: this field is limited to 1024 characters

BR-38: Each Document level charge (BG-21) shall have a Document level charge reason (BT-104) or a Document level charge reason code (BT-105).

BR-CO-6: Document level charge reason code (BT-105) and Document level charge reason (BT-104) shall indicate the same type of charge.

BR-CO-22: Each Document level charge (BG-21) shall contain a Document level charge reason (BT-104) or a Document level charge reason code (BT-105), or both.

Type:object
Required:

Detailed information on tax information

A finite sequence of characters.

Type:string
Required:
ram:CategoryCode

Document level charge VAT category code

A coded identification of what VAT category applies to the document level charge.

The following entries of UNTDID 5305 [6] are used (further clarification between brackets):

  • Standard rate (Liable for VAT in a standard way)
  • Zero rated goods (Liable for VAT with a percentage rate of zero)
  • Exempt from tax (VAT/IGIC/IPSI)
  • VAT Reverse Charge (Reverse charge VAT/IGIC/IPSI rules apply)
  • VAT exempt for intra community supply of goods (VAT/IGIC/IPSI not levied due to Intra-community supply rules)
  • Free export item, tax not charged (VAT/IGIC/IPSI not levied due to export outside of the EU)
  • Services outside scope of tax (Sale is not subject to VAT/IGIC/IPSI)
  • Canary Islands General Indirect Tax (Liable for IGIC tax)
  • Liable for IPSI (Ceuta/Melilla tax)

The VAT category codes are as follows:

  • S = Standard VAT rate
  • Z = Zero rated goods
  • E = VAT exempt
  • AE = Reverse charge
  • K = Intra-Community supply (specific reverse charge)
  • G = Exempt VAT for Export outside EU
  • O = Outside VAT scope
  • L = Canary Islands
  • M = Ceuta and Mellila

BR-37: Each Document level charge (BG-21) shall have a Document level charge VAT category code (BT-102).

Type:string | number
Required:
ram:RateApplicablePercent

Document level charge VAT rate

The VAT rate, represented as percentage that applies to the document level charge.

The value to enter is the percentage. For example, for 20%, it must be given as 20 (and not 0.2)

Type:object
Required:

Detailed information about payment terms

Type:string
Required:
ram:Description

Payment terms

A textual description of the payment terms that apply to the amount due for payment (Including description of possible penalties).

This element may contain multiple lines and multiple terms.

Type:date
Required:
udt:DateTimeString

Payment due date

The date when the payment is due.

The payment due date reflects the due date of the net payment. For partial payments it states the first net due date. The corresponding description of more complex payment terms can be stated in BT-20 Payment terms.

Type:string
Required:
ram:DirectDebitMandateID

Mandate reference identifier

Unique identifier assigned by the Payee for referencing the direct debit mandate.

Used in order to pre-notify the Buyer of a SEPA direct debit.

This is the RUM (Unique Mandate Reference) for SEPA direct debits

Type:object
Required:
Type:string | number
Required:
ram:LineTotalAmount

Sum of Invoice line net amount

Sum of all Invoice line net amounts in the Invoice.

For EXTENDED profile only, BR-CO-10 is replaced by BR-FXEXT-CO-10, which add a tolerance of 0,01 euro per line, document level charge and allowance in calculation.

Type:string | number
Required:
ram:ChargeTotalAmount

Sum of charges on document level

Sum of all charges on document level in the Invoice.

Charges on line level are included in the Invoice line net amount which is summed up into the Sum of Invoice line net amount.

For EXTENDED profile only, BR-CO-12 is replaced by BR-FXEXT-CO-12, which add a tolerance of 0,01 euro per line, document level charge and allowance in calculation.

Type:string | number
Required:
ram:AllowanceTotalAmount

Sum of allowances on document level

Sum of all allowances on document level in the Invoice.

Allowances on line level are included in the Invoice line net amount which is summed up into the Sum of Invoice line net amount.

For EXTENDED profile only, BR-CO-11 is replaced by BR-FXEXT-CO-11, which add a tolerance of 0,01 euro per line, document level charge and allowance in calculation.

Type:string | number
Required:
ram:TotalPrepaidAmount

Paid amount

The sum of amounts which have been paid in advance.

This amount is subtracted from the invoice total amount with VAT to calculate the amount due for payment.

Type:object[]
Required:

Precending Invoice Reference

A group of business terms providing information on one or more preceding Invoices.

To be used in case:

  • a preceding invoice is corrected
  • preceding partial invoices are refered to from a final invoice
  • preceding pre-payment invoices are refered to from a final invoice

This business group is mandatory in case of a Credit Note in order to reference the invoices it credits, unless the Credit Note refers to a period which must then be present in group BG-14.

Type:string
Required:
ram:IssuerAssignedID

Preceding Invoice reference

The identification of an Invoice that was previously sent by the Seller.

Type:date
Required:
qdt:DateTimeString

Preceding Invoice issue date

The date when the Preceding Invoice was issued.

The Preceding Invoice issue date shall be provided in case the Preceding Invoice identifier is not unique.

Type:object
Required:
Type:string
Required:
ram:ID

Buyer accounting reference

A textual value that specifies where to book the relevant data into the Buyer's financial accounts.

CHORUS PRO: not used