Message Implementation Guideline
ZUGFeRD v1.0
Outgoing invoice
Version: V1.0
Issue date: 09.01.2019
Author: BMW
Page 2 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
Document Information
Changed for Release
Go Live Date Version Segment Change Author
WP1 Go Live 09.01.2019 V1.0 N/A MIG created / GoLive BMW / OT
Page 3 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
Important notices
FORMAT
An XSD file provided with ZUGFeRD Standard defines structure of the ZUGFeRD CII XML
and data type attribute for each element. The XSD file does not define length limitation of
the element value. For informational purposes Format defines type and length or date
mask of each element sent by BMW. Some of elements are listed in provided code lists.
The complete lists of ZUGFeRD allowed codes with explanations can be found in chapter
2, while references to the corresponding ISO Code Lists are added in CodeList properties.
GENERAL INFORMATION:
Self-Billing Zugferd files (TypeCode = “389”) with negative amounts are self billing debit
notes.
Page 4 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
Contents
1. The ZUGFeRD schema ........................................................................................................................................... 5
2. Code Lists ................................................................................................................................................................ 39
2.1. BUSINESS PROCESS CODE LIST ........................................................................................................... 39
2.2. DOCUMENT TYPE CODE LIST ................................................................................................................. 39
2.3. TYPE OF REFERENCED DOCUMENT CODE LIST .............................................................................. 39
2.4. TAX CATEGORY CODE LIST ..................................................................................................................... 40
2.5. MEASUREMENT UNIT CODE LIST .......................................................................................................... 40
2.6. ALLOWANCE/CHARGE REASON CODE LIST ....................................................................................... 41
2.7. QUALIFYING THE TYPE OF TEXT CODE LIST ..................................................................................... 41
2.8. PRODUCT CLASSIFICATION CODE LIST .............................................................................................. 41
Page 5 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
1. The ZUGFeRD schema
Cardinality Element/Attribute Business term / Properties
CrossIndustryDocument 1 .. 1 xsd:sequence
1 .. 1
SpecifiedExchangedDocumentCont Grouping of message based properties
ext
. Status: R 1 .. 1 xsd:sequence
0 .. 1
TestIndicator Test indicator
Remark: The test indicator can be used when implementing
a newly developed system. It is to mark the invoice as a "test" and thus not leading to vat issues.
. Status: O
1 .. 1 xsd:choice
1 .. 1 Indicator Test indicator, value
xs:boolean Path to element: CrossIndustryDocument +SpecifiedExchangedDocumentContext ++TestIndicator +++Indicator
Remark: false = productive invoice message, true = test invoice message
Example: false Status: R CodeList: false, true Profile: BASIC and upwards
0 .. 1
BusinessProcessSpecifiedDocum Grouping of business context information
entContextParameter Remark: This element will always be sent. . Status: O
1 .. 1 xsd:sequence
0 .. 1 ID Business process, value
udt:IDType Path to element: CrossIndustryDocument +SpecifiedExchangedDocumentContext ++BusinessProcessSpecifiedDocumentContextParameter +++ID
Remark: This element will always be sent. The complete list of ZUGFeRD allowed codes with explanations can be found in chapter 2.1.
Example: SBI
Status: O CodeList: CAN, SBI, GUA, FCS, REV, CDN, VHS, BPO, BTS, FCN, MMS, LTS, CNS, GUF, INF
Profile: EXTENDED only
1 .. 1
GuidelineSpecifiedDocumentCont Grouping of guideline information
extParameter .
Status: R 1 .. 1 xsd:sequence
1 .. 1 ID Guideline
udt:IDType Path to element: CrossIndustryDocument +SpecifiedExchangedDocumentContext ++GuidelineSpecifiedDocumentContextParameter +++ID Synonym: Profile Remark: case sensitive and version dependent Example: urn:ferd:CrossIndustryDocument:invoice:1p0:extended Status: R CodeList: ZUGFeRD extended:
urn:ferd:CrossIndustryDocument:invoice:1p0:extended
Page 6 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
Cardinality Element/Attribute Business term / Properties
1 .. 1
HeaderExchangedDocument Grouping of properties regarding the whole
document . Status: R 1 .. 1 xsd:sequence
1 .. 1
ID Invoice identifier, value
udt:IDType Path to element: CrossIndustryDocument +HeaderExchangedDocument ++ID Example: 7412B563579935 Status: R Format: X(16) Profile: BASIC and upwards
1 .. 1
Name Document name (free text), value
udt:TextType Path to element: CrossIndustryDocument +HeaderExchangedDocument ++Name Example: Self-billed invoice Status: R Format: X(1280) Profile: BASIC and upwards
1 .. 1
TypeCode Document type (Code), value
qdt:DocumentCodeType Path to element: CrossIndustryDocument +HeaderExchangedDocument ++TypeCode
Remark: The complete list of ZUGFeRD allowed codes with explanations can be found in chapter 2.2.
Example: 389 Status: R CodeList: 389
Profile: BASIC and upwards
1 .. 1
IssueDateTime Invoice date
. Status: R 1 .. 1 xsd:choice
1 .. 1 DateTimeString Invoice date, value
extension (xsd:string) Path to element: CrossIndustryDocument +HeaderExchangedDocument ++IssueDateTime +++DateTimeString Synonym: Document date
Example: 20160420 Status: R Format: CCYYMMDD
Profile: BASIC and upwards
required format Date, format
.. . CodeList: 102 (CCYYMMDD) . Status: R . Profile: BASIC and upwards
0 .. 1
CopyIndicator Copy indicator
Remark: Will, for instance, be set to 'true' if the recipient explicitly asks for resending. Apart from that, this information is required only if it is not an identical copy.
. Status: D 1 .. 1 xsd:choice
1 .. 1 Indicator Copy indicator, value
xs:boolean Path to element: CrossIndustryDocument +HeaderExchangedDocument ++CopyIndicator +++Indicator Remark: false = original,
Page 7 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
true = copy
Example: false Status: R
Cardinality Element/Attribute Business term / Properties
0 .. unbounded
CodeList: false, true
Profile: EXTENDED only
IncludedNote Free text on header level
.
Status: O Remark: tax deputy will be send in Include Note
1 .. 1 xsd:sequence
1 .. unbounded
Content
Free text on header level (content)
udt:TextType Path to element: CrossIndustryDocument +HeaderExchangedDocument ++IncludedNote +++Content
Example: Vorsitzender des Aufsichtsrates : Norbert Reithofer Vorstand : Harald Krüger, Vorsitzender : Milagros Caiña Carreiro-Andree;Klaus Fröhlich;Pieter Nota;Nicolas Peter;Peter Schwarzenbauer;Andreas Wendt;Oliver Zipse Steuernummer : 143/301/01130 Sitz und Registergericht : München HRB 42243 VATID : DE129273398 Tel. : +49 89 382-0 Fax. : +49 89 382-70-25858 www.bmwgroup.com Example tax deputy: Tax deputy name: DIETRICH LUETTGENS GMBH & CO. KG, HASSELBECKER STRASSE 16, 42579 HEILIGENHAUS, DEUTSCHLAND, Tax deputy VAT number: DE121545539, Tax deputy tax Id number: 139/5722/0014
Status: R Format: X(1280) Profile: BASIC and upwards
0 .. 1 SubjectCode Free text on header level (qualifying the type of
udt:CodeType text), value Path to element: CrossIndustryDocument +HeaderExchangedDocument ++IncludedNote +++SubjectCode
Remark: The complete list of ZUGFeRD allowed codes with explanations can be found in chapter 2.7.
Example: (empty) Status: A
CodeList: (empty), REG; AAK Profile: COMFORT and upwards
1 .. 1
SpecifiedSupplyChainTradeTransac Grouping information of trade transaction
tion . Status: R 1 .. 1 xsd:sequence
1 .. 1
ApplicableSupplyChainTradeAgre Grouping on trade agreement
ement
. Status: R 1 .. 1 xsd:sequence
0 .. 1 BuyerReference Buyer reference, value
udt:TextType Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeAgreement +++BuyerReference
Remark: This element will always be sent. Information helping the receiver to assign the invoice correctly.
Example: HRB 42243 München Status: O Format: X(35)
Profile: COMFORT and upwards
Page 8 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
Cardinality Element/Attribute Business term / Properties 1 .. 1
SellerTradeParty Seller (=service provider)
. Synonym: The seller (=taxable person) is, by default,
also the invoice issuer, the originator of the invoice, the supplier and the payee. If some of
these roles have been transferred to other people, these must be defined separately. . Status: R
1 .. 1
xsd:sequence
0 .. 1 ID Seller ID, value
udt:IDType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeAgreement +++SellerTradeParty ++++ID Synonym: Supplier identification assigned by the customer
Remark: This element will always be sent. The seller’s ID is a unique identifier assigned to the
seller and agreed on a bilateral basis.
Example: 31084916 Status: O Format: X(35) Profile: COMFORT and upwards
0 .. unbounded GlobalID Global identifier of the seller, value
udt:IDType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeAgreement +++SellerTradeParty ++++GlobalID Remark: The seller’s global ID is a unique identifier assigned to a seller by a global registration body. Example: 12-345-6789
Status: A
Format: X(70) Profile: COMFORT and upwards
required schemeID Type of global identifier
.. . CodeList: 0060 (D-U-N-S Number) . Status: R . Profile: COMFORT and upwards
Page 9 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
Cardinality Element/Attribute Business term / Properties
1 .. 1 Name (Company) name of the seller, value
udt:TextType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeAgreement +++SellerTradeParty ++++Name Example: Lieferant GmbH
Status: R Format: X(140)
Profile: BASIC and upwards
0 .. 1
DefinedTradeContact Details on the seller's contact person
.
Status: O 1 .. 1 xsd:sequence
0 .. 1 PersonName Contact person name, value
udt:TextType Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction
++ApplicableSupplyChainTradeAgreement +++SellerTradeParty ++++DefinedTradeContact +++++PersonName Remark: If the contact is defined, either the Name or Department must occur.
Example: Name Kontaktperson oder Abteilung Status: D
Format: X(35) Profile: EXTENDED only 0 .. 1
DepartmentName Department name, value
udt:TextType Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction
++ApplicableSupplyChainTradeAgreement +++SellerTradeParty ++++DefinedTradeContact +++++DepartmentName Remark: If the contact is defined, either the Name or Department must occur. Example: Abt-/Personal ID Status: D
Format: X(17) Profile: EXTENDED only
0 .. 1
TelephoneUniversalCommun Details of the phone number
ication
.
Status: O 1 .. 1 xsd:sequence
1 .. 1 CompleteNumber Phone number, value
udt:TextType Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction
++ApplicableSupplyChainTradeAgreement +++SellerTradeParty ++++DefinedTradeContact +++++TelephoneUniversalCommunication ++++++CompleteNumber
Remark: Usage of an international format is adviced. Example: +49 (123) 2323232323
Status: R Format: X(100)
Profile: EXTENDED only
Page 10 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
Cardinality Element/Attribute Business term / Properties
0 .. 1
FaxUniversalCommunication Details of the fax number
.
Status: O 1 .. 1 xsd:sequence
1 .. 1 CompleteNumber Fax number, value
udt:TextType Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction
++ApplicableSupplyChainTradeAgreement +++SellerTradeParty ++++DefinedTradeContact +++++FaxUniversalCommunication ++++++CompleteNumber Example: +888999888 Status: R
Format: X(100) Profile: EXTENDED only 0 .. 1
EmailURIUniversalCommuni Details on email
cation
.
Status: O 1 .. 1 xsd:sequence
1 .. 1 URIID Email, value
udt:IDType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeAgreement +++SellerTradeParty ++++DefinedTradeContact +++++EmailURIUniversalCommunication ++++++URIID Example: [email protected] Status: R
Format: X(100) Profile: EXTENDED only
0 .. 1
PostalTradeAddress Details on address
Remark: This element will always be sent.
.
Status: A 1 .. 1 xsd:sequence
0 .. 1 PostcodeCode Postcode, value
udt:CodeType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeAgreement +++SellerTradeParty ++++PostalTradeAddress
+++++PostcodeCode
Remark: This element will always be sent. Example: 13629
Status: A
Format: X(17) Profile: BASIC and upwards
Page 11 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
Cardinality Element/Attribute Business term / Properties
0 .. 1
LineOne
Line one, value
udt:TextType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeAgreement +++SellerTradeParty ++++PostalTradeAddress +++++LineOne Remark: Indication of street or postal box. For addresses indicating the postcode and locality, "-" must be entered. Example: Nonnendammallee 101
Status: A Format: X(70)
Profile: BASIC and upwards
0 .. 1
CityName
City, value
udt:TextType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeAgreement +++SellerTradeParty ++++PostalTradeAddress +++++CityName Example: Berlin
Status: A Format: X(35)
Profile: BASIC and upwards
0 .. 1 CountryID Country (Code), value
qdt:CountryIDType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeAgreement +++SellerTradeParty ++++PostalTradeAddress
+++++CountryID
Remark: This element will always be sent. Example: DE
Status: A CodeList: Codelist ISO 3166-1 alpha-2 is used.
Profile: BASIC and upwards
0 .. unbounded
SpecifiedTaxRegistration Tax registration details
.
Status: A 1 .. 1 xsd:sequence
0 .. 1 ID (Local) tax Id, value
udt:IDType VAT Id, value Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction
++ApplicableSupplyChainTradeAgreement +++SellerTradeParty ++++SpecifiedTaxRegistration +++++ID Remark: A Core Invoice that contains VAT category code with code value "AE" MUST contain Sellers VAT identification and Buyer VAT identification. Example: DE129000202 121212121 Status: D D
Format: X(35) X(35)
Profile: BASIC and upwards
required
schemeID
Type of tax identifier
.. . Synonym: VAT Id, tax Id . CodeList: VA, FC . Status: R . Profile: BASIC and upwards
Page 12 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
Cardinality Element/Attribute Business term / Properties
1 .. 1
BuyerTradeParty Buyer (=service recipient)
. Synonym: The buyer (=customer) is, by default, also the ship-to-party, the invoicee and the payee. If some of these roles have been transferred to other people, these must be defined separately.
. Status: R 1 .. 1 xsd:sequence
0 .. 1 ID Buyer ID, value
udt:IDType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeAgreement +++BuyerTradeParty
++++ID Remark: This element will always be sent. Full list of BMW Company Codes is in chapter 11.1 of BMW eInvoicing EDI Implementation Guideline ZUGFeRD
Example: A1 Status: O CodeList: A1, B7, MU
Profile: COMFORT and upwards
0 .. unbounded GlobalID Global identifier of the seller, value
udt:IDType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeAgreement +++BuyerTradeParty ++++GlobalID Remark: The buyer’s global ID is a unique identifier assigned to a buyer by a global registration body. Example: 01-234-5678
Status: A
Format: X(70) Profile: COMFORT and upwards
required schemeID Type of global identifier
.. . CodeList: 0060 (D-U-N-S Number) . Status: R . Profile: COMFORT and upwards
1 .. 1 Name (Company) name of the buyer, value
udt:TextType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeAgreement +++BuyerTradeParty ++++Name
Example: Bayerische Motoren Werke AG Status: R Format: X(140) Profile: BASIC and upwards
0 .. 1
DefinedTradeContact Details on the buyer's contact person
.
Status: O
1 .. 1 xsd:sequence
0 .. 1 PersonName Contact person name, value
udt:TextType Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction
++ApplicableSupplyChainTradeAgreement +++BuyerTradeParty ++++DefinedTradeContact +++++PersonName Remark: If the contact is defined, either the Name or Department must occur. Example: Klaus Meier
Status: D
Page 13 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
Format: X(35) Profile: EXTENDED only
0 .. 1
DepartmentName Department name, value
udt:TextType Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction
++ApplicableSupplyChainTradeAgreement +++BuyerTradeParty ++++DefinedTradeContact +++++DepartmentName Remark: If the contact is defined, either the Name or Department must occur. Example: ABC123
Status: D Format: X(17)
Profile: EXTENDED only
Cardinality Element/Attribute Business term / Properties
0 .. 1
TelephoneUniversalCommun Details of the phone number
ication
.
Status: O 1 .. 1 xsd:sequence
1 .. 1 CompleteNumber Phone number, value
udt:TextType Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction
++ApplicableSupplyChainTradeAgreement +++BuyerTradeParty ++++DefinedTradeContact +++++TelephoneUniversalCommunication ++++++CompleteNumber
Remark: Usage of an international format is adviced. Example: +49 (123) 456789-0
Status: R Format: X(100)
Profile: EXTENDED only 0 .. 1
FaxUniversalCommunication Details of the fax number
.
Status: O 1 .. 1 xsd:sequence
1 .. 1 CompleteNumber Fax number, value
udt:TextType Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction
++ApplicableSupplyChainTradeAgreement +++BuyerTradeParty ++++DefinedTradeContact +++++FaxUniversalCommunication ++++++CompleteNumber
Example: 123123123 Status: R
Format: X(100) Profile: EXTENDED only
0 .. 1
EmailURIUniversalCommuni Details on email
cation
.
Status: O 1 .. 1 xsd:sequence
1 .. 1 URIID Email, value
udt:IDType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeAgreement +++BuyerTradeParty ++++DefinedTradeContact +++++EmailURIUniversalCommunication ++++++URIID Example: [email protected]
Status: R
Format: X(100) Profile: EXTENDED only
Page 14 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
Cardinality Element/Attribute Business term / Properties
0 .. 1
PostalTradeAddress Details on address
Remark: This element will always be sent.
Status: A .
1 .. 1 xsd:sequence
0 .. 1
PostcodeCode
Postcode, value
udt:CodeType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeAgreement +++BuyerTradeParty ++++PostalTradeAddress
+++++PostcodeCode Remark: This element will always be sent.
Example: 13599 Status: A Format: X(17) Profile: BASIC and upwards
0 .. 1 LineOne Line one, value
udt:TextType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeAgreement +++BuyerTradeParty ++++PostalTradeAddress +++++LineOne Remark: Indication of street or postal box. For addresses indicating the postcode and locality, "-" must be entered.
Example: Am Juliusturm 14-38
Status: A Format: X(70) Profile: BASIC and upwards
0 .. 1 CityName City
udt:TextType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeAgreement +++BuyerTradeParty ++++PostalTradeAddress
+++++CityName Remark: This element will always be sent.
Example: Berlin Status: A Format: X(35) Profile: BASIC and upwards
0 .. 1 CountryID Country (Code), value
qdt:CountryIDType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeAgreement +++BuyerTradeParty ++++PostalTradeAddress
+++++CountryID Remark: This element will always be sent.
Example: DE
Status: A CodeList: Codelist ISO 3166-1 alpha-2 is used.
Profile: BASIC and upwards
Page 15 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
Cardinality Element/Attribute Business term / Properties
0 .. unbounded
SpecifiedTaxRegistration Tax registration details
Status: A
1 .. 1 xsd:sequence
0 .. 1
ID
(Local) tax Id, value
udt:IDType VAT Id, value Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeAgreement +++BuyerTradeParty ++++SpecifiedTaxRegistration
+++++ID Remark: In case of Buyer’s country code is DE, Buyer’s VAT Registration Number or Buyer’s Fiscal Number is mandatory. In case of Buyer’s country code belongs to European Union (EU), Buyer’s VAT Registration Number is mandatory and Buyer’s Fiscal Number is optional. In case of Buyer’s country code does not belong to European Union (EU), both Buyer’s VAT Registration Number and Buyer’s Fiscal Number are optional.
Example: DE129273398 129273000
Status: D D
Format: X(35) X(35)
Profile: BASIC and upwards
required schemeID Type of tax identifier
.. . Synonym: VAT Id, tax Id . CodeList: VA, FC . Status: R
. Profile: BASIC and upwards
0 .. unbounded
AdditionalReferencedDocumen Details on additional referenced document
t
. Status: O 1 .. 1 xsd:sequence
1 .. 1 TypeCode Type of referenced document, value
qdt:DocumentCodeType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeAgreement +++AdditionalReferencedDocument ++++TypeCode
Remark: The complete list of ZUGFeRD allowed codes with explanations can be found in chapter 2.3.
Example: OI
Status: R
CodeList: AJS, OI, BC Profile: EXTENDED only
1 .. 1
ID
Document number, value
udt:IDType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeAgreement +++AdditionalReferencedDocument ++++ID
Example: F336N66 Status: R Format: X(70)
Profile: EXTENDED only
Page 16 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
Cardinality Element/Attribute Business term / Properties
1 .. 1
ApplicableSupplyChainTradeDeli Grouping on delivery information
very
. Status: R
1 .. 1 xsd:sequence
0 .. 1
ShipToTradeParty Details on alternative ship to
. Status: O 1 .. 1 xsd:sequence
0 .. 1 ID Identification of ship to, value
udt:IDType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeDelivery +++ShipToTradeParty
Remark: ++++ID List of Business Areas is in chapter 11.2
of BMW eInvoicing EDI Implementation Guideline ZUGFeRD Example: A1
Status: R CodeList: A1, BX, DG, DX, FX, HH, HX, LX, MX, NG, NX, RX, SX, XA
Profile: EXTENDED only
1 .. 1 Name (Company) name of ship to, value
udt:TextType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeDelivery +++ShipToTradeParty ++++Name
Example: Zentrale, Werke und Sparten
Status: R Format: X(140) Profile: EXTENDED only
0 .. 1
DefinedTradeContact Details of the contact person
.
Status: O 1 .. 1 xsd:sequence
0 .. 1 PersonName Contact person name, value
udt:TextType Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction
++ApplicableSupplyChainTradeDelivery +++ShipToTradeParty ++++DefinedTradeContact +++++PersonName Remark: If the contact is defined, either the Name or Department must occur. Example: Materials department Status: D
Format: X(35) Profile: EXTENDED only 0 .. 1
DepartmentName Department name, value
udt:TextType Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction
++ApplicableSupplyChainTradeDelivery +++ShipToTradeParty ++++DefinedTradeContact +++++DepartmentName Remark: If the contact is defined, either the Name or Department must occur. Example: Number Status: D
Format: X(17) Profile: EXTENDED only
Page 17 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
Cardinality Element/Attribute Business term / Properties
0 .. 1
EmailURIUniversalCommuni Details on email
cation
.
Status: O 1 .. 1 xsd:sequence
1 .. 1 URIID Email, value
udt:IDType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeDelivery +++ShipToTradeParty ++++DefinedTradeContact +++++EmailURIUniversalCommunication ++++++URIID Example: [email protected]
Status: R Format: X(100)
Profile: EXTENDED only
0 .. 1
PostalTradeAddress Details on address
.
Status: A 1 .. 1 xsd:sequence
0 .. 1 PostcodeCode Postcode, value
udt:CodeType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeDelivery +++ShipToTradeParty ++++PostalTradeAddress +++++PostcodeCode Example: 13629 Status: A Format: X(17) Profile: EXTENDED only
0 .. 1
LineOne
Line one, value
udt:TextType Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeDelivery +++ShipToTradeParty ++++PostalTradeAddress +++++LineOne
Remark: Indication of street or postal box. For addresses
indicating the postcode and locality, "-" must be entered.
Example: Nonnendammallee 101
Status: A Format: X(70)
Profile: EXTENDED only
0 .. 1
CityName
City, value
udt:TextType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeDelivery +++ShipToTradeParty ++++PostalTradeAddress +++++CityName Example: Berlin
Status: A
Format: X(35) Profile: EXTENDED only
0 .. 1
CountryID Country (Code), value
qdt:CountryIDType Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction
++ApplicableSupplyChainTradeDelivery +++ShipToTradeParty
Page 18 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
++++PostalTradeAddress +++++CountryID Example: DE Status: A
CodeList: Codelist ISO 3166-1 alpha-2 is used.
Cardinality Element/Attribute Business term / Properties Profile: EXTENDED only 0 .. 1
ShipFromTradeParty Identification of the alternative ship from
. Status: O 1 .. 1 xsd:sequence
1 .. 1
Name (Company) name of the ship from, value
udt:TextType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeDelivery +++ShipFromTradeParty ++++Name
Example: ShipFrom Name Status: R Format: X(140)
Profile: EXTENDED only
0 .. 1
PostalTradeAddress Details on address
.
Status: A 1 .. 1 xsd:sequence
0 .. 1 PostcodeCode Postcode, value
udt:CodeType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeDelivery +++ShipFromTradeParty ++++PostalTradeAddress +++++PostcodeCode Example:
Status: Format: Profile:
13629 A X(17) EXTENDED only
0 .. 1
LineOne
Line one, value
udt:TextType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeDelivery +++ShipFromTradeParty ++++PostalTradeAddress +++++LineOne Remark: Indication of street or postal box. For addresses indicating the postcode and locality, "-" must be entered. Example: Nonnendammallee 101
Status: A Format: X(70)
Profile: EXTENDED only
0 .. 1 CityName City, value
udt:TextType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeDelivery +++ShipFromTradeParty ++++PostalTradeAddress +++++CityName Example: Berlin
Status: A
Format: X(35) Profile: EXTENDED only
0 .. 1
CountryID
Country (Code), value
qdt:CountryIDType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeDelivery +++ShipFromTradeParty
Page 19 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
++++PostalTradeAddress +++++CountryID Example: DE
Status: A
CodeList: Codelist ISO 3166-1 alpha-2 is used. Profile: EXTENDED only
Cardinality Element/Attribute Business term / Properties
0 .. 1
ActualDeliverySupplyChainEve Details on actual delivery
nt Remark: The delivery date on header level contains the last delivery date and is relevant for the
allocation of the taxes to a tax period. . Status: D 1 .. 1 xsd:sequence
0 .. 1
OccurrenceDateTime Actual date of delivery of goods/provision of
services Remark: Indicating either here for the entire invoice, or alternatively for each line item
. Status: D
1 .. 1 xsd:choice
1 .. 1 DateTimeString Actual date of delivery of goods/provision of
extension (xsd:string) services, value Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeDelivery +++ActualDeliverySupplyChainEvent ++++OccurrenceDateTime +++++DateTimeString Synonym: Actual date of delivery of goods/provision of services for VAT purposes
Example: 20160420 Status: R
Format: CCYYMMDD Profile: BASIC and upwards
required format Date, format
.. . CodeList: 102 (CCYYMMDD) . Status: R . Profile: BASIC and upwards
1 .. 1 ApplicableSupplyChainTradeSett Grouping on settlement information
lement
. Status: R 1 .. 1 xsd:sequence
1 .. 1
InvoiceCurrencyCode Currency (code), value
udt:CodeType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++InvoiceCurrencyCode
Example: EUR Status: R
CodeList: Codelist ISO 4217 3A is used. Profile: BASIC and upwards
0 .. 1
InvoiceeTradeParty Details on the alternative invoicee
. Status: O 1 .. 1 xsd:sequence
0 .. 1 ID Identification of the alternative invoicee, value
udt:IDType Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++InvoiceeTradeParty ++++ID
Example: A1 Status: O
Format: X(35) Profile: COMFORT and upwards
Page 20 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
0 .. unbounded GlobalID Global identifier of the seller, value
udt:IDType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++InvoiceeTradeParty ++++GlobalID Remark: The invoiee’s global ID is a unique identifier assigned to A invoicee by a global registration body. Example: 01-234-5678
Status: A
Format: X(70) Profile: COMFORT and upwards
required schemeID Type of global identifier
.. . CodeList: 0060 (D-U-N-S Number) . Status: R . Profile: COMFORT and upwards
1 .. 1 Name (Company) name of the alternative invoicee,
udt:TextType value Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++InvoiceeTradeParty ++++Name
Example: InvoiceeTradeParty Status: R
Format: X(140) Profile: COMFORT and upwards
Cardinality Element/Attribute Business term / Properties
1 .. 1
PostalTradeAddress Details on address
.
Status: A 1 .. 1 xsd:sequence
0 .. 1 PostcodeCode Postcode, value
udt:CodeType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++InvoiceeTradeParty ++++PostalTradeAddress +++++PostcodeCode Example: 13599
Status: A
Format: X(17) Profile: COMFORT and upwards
0 .. 1
LineOne
Line one, value
udt:TextType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++InvoiceeTradeParty ++++PostalTradeAddress +++++LineOne Remark: Indication of street or postal box. For addresses indicating the postcode and locality, "-" must be entered. Example: Am Juliusturm 14-38
Status: A Format: X(70)
Profile: COMFORT and upwards
0 .. 1
CityName
City, value
udt:TextType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++InvoiceeTradeParty ++++PostalTradeAddress +++++CityName Example: Berlin Status: A
Page 21 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
Format: X(35) Profile: COMFORT and upwards
0 .. 1 CountryID Country (Code), value
qdt:CountryIDType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++InvoiceeTradeParty ++++PostalTradeAddress +++++CountryID Example: DE
Status: A CodeList: Codelist ISO 3166-1 alpha-2 is used.
Profile: COMFORT and upwards
Cardinality Element/Attribute Business term / Properties
0 .. 1
PayeeTradeParty Details on alternative payee
. Status: O 1 .. 1 xsd:sequence
0 .. 1 ID Identification of the alternative payee, value
udt:IDType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++PayeeTradeParty ++++ID
Example: 31084916 Status: O
Format: X(35) Profile: EXTENDED only
1 .. 1 Name (Company) name of the alternative payee,
udt:TextType value Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++PayeeTradeParty ++++Name
Example: PayeeTradeParty Status: R Format: X(140) Profile: EXTENDED only
0 .. 1
PostalTradeAddress Details on address
.
Status: A 1 .. 1 xsd:sequence
0 .. 1 PostcodeCode Postcode, value
udt:CodeType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++PayeeTradeParty ++++PostalTradeAddress +++++PostcodeCode Example: 13629
Status: A
Format: X(17) Profile: EXTENDED only
0 .. 1
LineOne
Line one, value
udt:TextType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++PayeeTradeParty ++++PostalTradeAddress +++++LineOne Remark: Indication of street or postal box. For addresses indicating the postcode and locality, "-" must be entered. Example: Nonnendammallee 101
Page 22 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
Status: A Format: X(70)
Profile: EXTENDED only
Cardinality Element/Attribute Business term / Properties
0 .. 1 CityName City, value
udt:TextType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++PayeeTradeParty ++++PostalTradeAddress +++++CityName Example: Berlin
Status: A Format: X(35)
Profile: EXTENDED only
0 .. 1 CountryID Country (Code), value
qdt:CountryIDType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++PayeeTradeParty ++++PostalTradeAddress +++++CountryID Example: DE
Status: A CodeList: Codelist ISO 3166-1 alpha-2 is used.
Profile: EXTENDED only
0 .. unbounded
SpecifiedTradeSettlementPaym Details on payment means
entMeans
. Status: O 1 .. 1 xsd:sequence
0 .. 1
PayerPartyDebtorFinancialAc Buyer's financial account
count
.
Remark: Must be stated with direct debit. Status: D
1 .. 1 xsd:sequence
0 .. 1 IBANID IBAN, value
udt:IDType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++SpecifiedTradeSettlementPaymentMeans ++++PayerPartyDebtorFinancialAccount +++++IBANID
Remark: Must be stated with direct debit
Example: 4433221100
Status: D
Format: X(35) Profile: COMFORT and upwards
Page 23 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
Cardinality Element/Attribute Business term / Properties
0 .. 1
PayerSpecifiedCreditorFinan Buyer's financial institution
cialInstitution
. Remark: Must be stated with direct debit. Status: D
1 .. 1 xsd:sequence
0 .. 1 BICID BIC, value
udt:IDType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++SpecifiedTradeSettlementPaymentMeans ++++PayerSpecifiedDebtorFinancialInstitution +++++BICID
Remark: Only for direct debit. Example: 76020070
Status: D Format: X(11)
Profile: COMFORT and upwards
0 .. 1
GermanBankleitzahlID German bank code, value
udt:IDType Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction
++ApplicableSupplyChainTradeSettlement +++SpecifiedTradeSettlementPaymentMeans ++++PayerSpecifiedDebtorFinancialInstitution +++++GermanBankleitzahlID Remark: Obsolete since SEPA Example: 10090000
Status: D Format: X(17)
Profile: COMFORT and upwards 0 .. 1
Name Bank name, value
udt:TextType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++SpecifiedTradeSettlementPaymentMeans ++++PayerSpecifiedDebtorFinancialInstitution +++++Name Remark: Must be stated with direct debit. Example: Volksbank
Status: D
Format: X(70)
Cardinality Element/Attribute Business term / Properties
0 .. unbounded
ApplicableTradeTax Details on trade tax
Remark: This section must be used if the invoice needs to show more than one tax type.
. Status: D 1 .. 1 xsd:sequence
1 .. 1
CalculatedAmount Tax calculated amount, value
udt:AmountType Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++ApplicableTradeTax ++++CalculatedAmount
Example: 451.03 Status: R
Format: N(15) Profile: BASIC and upwards required currencyID Currency
.. . CodeList: EUR Euro Codelist ISO 4217 3A is used.
. Status: R . Profile: BASIC and upwards
1 .. 1 TypeCode Tax type (code), value
qdt:TaxTypeCodeType
Page 24 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++ApplicableTradeTax ++++TypeCode
Example: VAT Status: R
Format: X(3) Profile: BASIC and upwards
0 .. 1 ExemptionReason Exemption reason (free text), value
udt:TextType Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++ApplicableTradeTax ++++ExemptionReason
Remark: This element must be used if the invoice needs to show more than one tax type. Example: Reason for exemption
Status: D Format: X(1280) Profile: COMFORT and upwards
ardinality Element/Attribute Business term / Properties
1 .. 1 BasisAmount Tax base amount, value
udt:AmountType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++ApplicableTradeTax ++++BasisAmount Example: 2373.86
Status: R Format: N(15)
Profile: BASIC and upwards
required currencyID Currency
.. . CodeList: EUR Euro Codelist ISO 4217 3A is used. . Status: R . Profile: BASIC and upwards
0 ... 1 LineTotalBasisAmount Goods amount for tax rate, value
udt:AmountType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++ApplicableTradeTax ++++LineTotalBasisAmount Example: 2373.86
Status: D Format: N(15)
Profile: extended
required currencyID Currency
.. . CodeList: EUR Euro Codelist ISO 4217 3A is used. . Status: R . Profile: extended 0 .. 1
CategoryCode Tax category, value
qdt:TaxCategoryCodeType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++ApplicableTradeTax ++++CategoryCode
Remark: This element must be used if the invoice needs to show more than one tax type. The complete list of ZUGFeRD allowed codes with explanations can be found in chapter 2.4.
Example: S Status: D CodeList: AE, E, Z, O, S
Profile: COMFORT and upwards
1 .. 1 ApplicablePercent Tax rate percentage, value
udt:PercentType
Page 25 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++ApplicableTradeTax ++++ApplicablePercent
Example: 19.00 Status: R Format: N(7)
Profile: BASIC and upwards
0 .. unbounded
SpecifiedTradeAllowanceCharg Details on allowances and charges
e
Remark: This segment is used for additional charge on invoice level (e.g. freight, packaging), i.e. in addition to charges that might be stated at individual line items. Status: D
1 .. 1 xsd:sequence
1 .. 1
ChargeIndicator Charge indicator
.
Status: R 1 .. 1 xsd:choice
1 .. 1 Indicator Charge indicator, value
xs:boolean Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++SpecifiedTradeAllowanceCharge ++++ChargeIndicator +++++Indicator Remark: true= charge
Example: true CodeList: true Status: R Profile: COMFORT and upwards
Cardinality Element/Attribute Business term / Properties
1 .. 1
ActualAmount Allowance or charge base amount, value
udt:AmountType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++SpecifiedTradeAllowanceCharge
++++ActualAmount
Example: 0.0000
Status: R
Format: N(15) Profile: COMFORT and upwards
required currencyID Currency
.. . CodeList: EUR Euro Codelist ISO 4217 3A is used. . Status: R . Profile: COMFORT and upwards
0 .. 1 ReasonCode Reason for allowance or charge (Code), value
qdt:AllowanceChargeReasonCodeType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++SpecifiedTradeAllowanceCharge ++++ReasonCode
Remark: The complete list of ZUGFeRD allowed codes with explanations can be found in chapter 2.6. Example: ADR
Status: O
CodeList: ADR, FC, IN, PC, SH Profile: EXTENDED only
0 .. 1 Reason Reason for allowance or charge (free text),
udt:TextType value Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction
Page 26 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
++ApplicableSupplyChainTradeSettlement
+++SpecifiedTradeAllowanceCharge ++++Reason
Remark: If ReasonCode is specified, Reason must be also provided.
Example: Reason Status: D
Format: X(1280) Profile: COMFORT and upwards
0 .. unbounded
SpecifiedTradePaymentTerms Details on payment terms
Remark: If invoice was paid in advance, this section can be omitted. Otherwise, it should be indicated. . Status: D
1 .. 1 xsd:sequence
1 .. unbounded
Description Free text on payment terms, value
udt:TextType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++SpecifiedTradePaymentTerms ++++Description
0 .. 1
Example: Payable within 30 days from date of invoice Status: R Format: X(1280) Profile: COMFORT and upwards
DueDateDateTime Due date . Status: O
xsd:choice
1 .. 1
DueDateDateString Due date, value
extension (xsd:string) Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++SpecifiedTradePaymentTerms
++++DueDateDateTime +++++DateTimeString
Example: 20181030 Status: R Format: X(1280) Profile: COMFORT and upwards
requried format
Date, format Example: 102 Status: R
Format: X(1280) Profile: COMFORT and upwards
Cardinality Element/Attribute Business term / Properties
1 .. 1
SpecifiedTradeSettlementMone Details of document totals
tarySummation
. Status: R 1 .. 1 xsd:sequence
1 .. 1 LineTotalAmount Line total amount, value
udt:AmountType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++SpecifiedTradeSettlementMonetarySummation ++++LineTotalAmount
Remark: Sum of net amount from lines
Example: 2373.86
Status: R
Format: N(15) Profile: BASIC and upwards
required currencyID Currency
.. CodeList: EUR Euro Codelist ISO 4217 3A is used.
Status: R .
Page 27 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
. Profile: BASIC and upwards
1 .. 1 ChargeTotalAmount Charge total amount, value
udt:AmountType Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++SpecifiedTradeSettlementMonetarySummation ++++ChargeTotalAmount
Example: 0.00 Status: R
Format: N(15) Profile: BASIC and upwards
required currencyID Currency
.. . CodeList: EUR Euro Codelist ISO 4217 3A is used.
. Status: R . Profile: BASIC and upwards 1 .. 1
AllowanceTotalAmount Allowance total amount, value
udt:AmountType Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++SpecifiedTradeSettlementMonetarySummation ++++AllowanceTotalAmount
Remark: Sum of allowances defined on document level however in case of Billg@te data model there is no possibility to define allowances on document level, thus value of this element must always be “0.00” because the element is required.
Example: 0.00 Status: R Format: N(15)
Profile: BASIC and upwards required currencyID Currency
.. . CodeList: EUR Euro
Codelist ISO 4217 3A is used.
. Status: R
. Profile: BASIC and upwards 1 .. 1
TaxBasisTotalAmount Tax basis total amount, value
udt:AmountType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++SpecifiedTradeSettlementMonetarySummation ++++TaxBasisTotalAmount
Remark: Sum of line total amount + charge totals - allowance totals
Example: 2373.86 Status: R Format: N(15)
Profile: BASIC and upwards
Cardinality Element/Attribute Business term / Properties
required currencyID Currency
.. . CodeList: EUR Euro Codelist ISO 4217 3A is used.
. Status: R . Profile: BASIC and upwards
1 .. 1
TaxTotalAmount Tax total amount, value
udt:AmountType Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++SpecifiedTradeSettlementMonetarySummation ++++TaxTotalAmount
Example: 451.03 Status: R
Format: N(15) Profile: BASIC and upwards required currencyID Currency
Page 28 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
.. . CodeList: EUR Euro Codelist ISO 4217 3A is used.
. Status: R . Profile: BASIC and upwards
1 .. 1 GrandTotalAmount Grand total, value
udt:AmountType Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++SpecifiedTradeSettlementMonetarySummation ++++GrandTotalAmount
Example: 2824.89 Status: R
Format: N(15) Profile: BASIC and upwards required currencyID Currency
.. . CodeList: EUR Euro Codelist ISO 4217 3A is used.
. Status: R . Profile: BASIC and upwards
0 .. 1 TotalPrepaidAmount Total prepaid amount, value
udt:AmountType Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++SpecifiedTradeSettlementMonetarySummation ++++TotalPrepaidAmount
Remark: This element can be used for indication of received prepayments.
Example: 0.00 Status: D Format: N(15)
Profile: COMFORT and upwards required currencyID Currency
.. . CodeList: EUR Euro Codelist ISO 4217 3A is used.
. Status: R . Profile: COMFORT and upwards
0 .. 1 DuePayableAmount Due payable amount, value
udt:AmountType Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction ++ApplicableSupplyChainTradeSettlement +++SpecifiedTradeSettlementMonetarySummation ++++DuePayableAmount
Remark: This element will always be sent. If prepayments are made, this value will be different than invoice amount. Total gross amount – total prepaid amount
Example: 2824.89 Status: D Format: N(15)
Profile: COMFORT and upwards required ..
currencyID Currency
. CodeList: EUR Euro Codelist ISO 4217 3A is used.
. Status: R
Cardinality Element/Attribute Business term / Properties
1 .. unbounded
Profile: COMFORT and upwards
IncludedSupplyChainTradeLineIte Grouping of item information
m . Status: R
1 .. 1 xsd:sequence
1 .. 1
AssociatedDocumentLineDocu Grouping of general information
ment .
Status: R 1 .. 1 xsd:sequence
0 .. 1 LineID Line number, value
udt:IDType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem
Page 29 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
+++AssociatedDocumentLineDocument ++++LineID Remark: This element will always be sent. Example: 000010
Status: A
Format: N(6)
Profile: COMFORT and upwards
0 .. 1
SpecifiedSupplyChainTradeAg Grouping of agreement information
reement
. Status: A 1 .. 1 xsd:sequence
0 .. 1
BuyerOrderReferencedDocu Details on referenced order
ment
.
Status: O
1 .. 1 xsd:sequence
0 .. 1
IssueDateTime Order date, value qdt:DateMandatoryDateTimeType
Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction
++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeAgreement ++++BuyerOrderReferencedDocument +++++IssueDateTime
Example: 2016-04-19 Status: O
Format: CCYY-MM-DD Profile: EXTENDED only 0 .. 1
LineID Item number, value
udt:IDType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeAgreement ++++BuyerOrderReferencedDocument +++++LineID
Example: 000010 Status: O
Format: N(6) Profile: EXTENDED only
Cardinality Element/Attribute Business term / Properties
1 .. 1 ID Order Id, value
udt:IDType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeAgreement ++++BuyerOrderReferencedDocument +++++ID
Example: SIPS800 Status: R
Format: X(70)
0 .. unbounded
Profile: EXTENDED only AdditionalReferencedDocum Details on additional document references
ent
.
Status: O 1 .. 1 xsd:sequence
1 .. 1
ID Document Id, value
udt:IDType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeAgreement ++++AdditionalReferencedDocument +++++ID
Example: 6130065483 Status: R Format: X(70) Profile: EXTENDED only
Page 30 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
1 .. 1
ReferenceTypeCode Document type, value
qdt:ReferenceCodeType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeAgreement ++++AdditionalReferencedDocument +++++ReferenceTypeCode
Example: OI Status: R
CodeList: OI Previous invoice number Profile: EXTENDED only
0 .. 1
GrossPriceProductTradePric Details on gross price excluding taxes
e
Remark: This element will always be sent.
. Status: A 1 .. 1 xsd:sequence
1 .. 1 ChargeAmount Gross price, value
udt:AmountType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeAgreement ++++GrossPriceProductTradePrice +++++ChargeAmount Remark: Sum of net price, allowance and charge per line.
Example: 2580.2800 Status: R
Format: N(15) Profile: COMFORT and upwards
required currencyID Currency
.. . CodeList: EUR Euro Codelist ISO 4217 3A is used. . Status: R . Profile: COMFORT and upwards
Page 31 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
Cardinality Element/Attribute Business term / Properties
0 .. unbounded
AppliedTradeAllowanceChar Details on allowances and charges
ge
. Status: O 1 .. 1 xsd:sequence
1 .. 1
ChargeIndicator Charge indicator
.
Status: R 1 .. 1 xsd:choice
1 .. 1 Indicator Charge indicator, value
xs:boolean Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeAgreement ++++GrossPriceProductTradePrice +++++AppliedTradeAllowanceCharge ++++++ChargeIndicator +++++++Indicator Remark: true= charge, false = allowance
Example: false Status: R
CodeList: false, true Profile: COMFORT and upwards
0 .. 1 CalculationPercent Allowance charge percent, value
udt:PercentType Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction
++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeAgreement ++++GrossPriceProductTradePrice +++++AppliedTradeAllowanceCharge ++++++CalculationPercent Example: 5.00 Status: O Format: N(10) Profile: EXTENDED only
1 .. 1 ActualAmount Allowance or charge base amount, value
udt:AmountType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeAgreement ++++GrossPriceProductTradePrice +++++AppliedTradeAllowanceCharge ++++++ActualAmount
Example: 206.4200 Status: R Format: N(15) Profile: COMFORT and upwards
required currencyID Currency
.. . CodeList: EUR Euro Codelist ISO 4217 3A is used. . Status: R . Profile: COMFORT and upwards
0 .. 1 ReasonCode Reason for allowance or charge (Code),
value qdt:AllowanceChargeReasonCodeType
Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction
++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeAgreement ++++GrossPriceProductTradePrice +++++AppliedTradeAllowanceCharge ++++++ReasonCode Remark: The complete list of ZUGFeRD allowed codes with explanations can be found in chapter 2.6. Example: FC Status: O CodeList: ADR, FC, IN, PC, SH Profile: EXTENDED only
Page 32 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
Cardinality Element/Attribute Business term / Properties
0 .. 1
Reason
Reason for allowance or charge (free text),
udt:TextType value Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeAgreement ++++GrossPriceProductTradePrice +++++AppliedTradeAllowanceCharge
++++++Reason Remark: If ReasonCode is specified, Reason must be also provided.
Example: Rabatt 1 Status: D Format: X(1280) Profile: COMFORT and upwards
0 .. 1
NetPriceProductTradePrice Details on net price without tax
. Status: A 1 .. 1 xsd:sequence
1 .. 1 ChargeAmount Net price, value
udt:AmountType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeAgreement ++++NetPriceProductTradePrice +++++ChargeAmount
Example: 2373.8600 Status: R
Format: N(15) Profile: COMFORT and upwards
required currencyID Currency
.. . CodeList: EUR Euro Codelist ISO 4217 3A is used. . Status: R . Profile: COMFORT and upwards
Cardinality Element/Attribute Business term / Properties 0 .. 1
SpecifiedSupplyChainTradeDeli Grouping on delivery information
very
Remark: This element will always be sent.
. Status: A 1 .. 1 xsd:sequence
1 .. 1 BilledQuantity Billed quantity, value
udt:QuantityType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeDelivery ++++BilledQuantity
Example: 1.0000 Status: R
Format: N(10) Profile: BASIC and upwards
required unitCode Measurement unit
.. . CodeList: C62 one (piece) The complete list of ZUGFeRD allowed
codes with explanations can be found in chapter 2.5.
. Status: R . Profile: BASIC and upwards 0 .. 1
ShipToTradeParty Details on the alternative ship to
.
Status: O
1 .. 1 xsd:sequence
0 .. 1
ID Identification of ship to, value
udt:IDType
Page 33 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeDelivery ++++ShipToTradeParty
+++++ID Remark: List of Business Areas is in chapter 11.2 of BMW eInvoicing EDI Implementation Guideline ZUGFeRD
Example: A1
Status: R CodeList: A1, BX, DG, DX, FX, HH, HX, LX, MX, NG, NX, RX, SX, XA VIN
Profile: EXTENDED only
1 .. 1 Name (Company) name of ship to, value
udt:TextType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeDelivery ++++ShipToTradeParty
+++++Name Example: Zentrale, Werke und Sparten Status: R Format: X(140) Profile: EXTENDED only
Cardinality Element/Attribute Business term / Properties
0 .. 1
DefinedTradeContact Details of the contact person
. Status: O 1 .. 1 xsd:sequence
0 .. 1 PersonName Contact person name, value
udt:TextType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeDelivery ++++ShipToTradeParty +++++DefinedTradeContact
++++++PersonName Remark: If the contact is defined, either the Name or Department must occur.
Example: Herr Schulze Status: D Format: X(256) Profile: EXTENDED only
0 .. 1 DepartmentName Department name, value
udt:TextType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeDelivery ++++ShipToTradeParty +++++DefinedTradeContact
++++++DepartmentName Remark: If the contact is defined, either the Name or Department must occur.
Example: Abt. WE
Status: D
Format: X(17) Profile: EXTENDED only
0 .. 1
TelephoneUniversalCommun Details of the phone number
ication
.
.
Status: O 1 .. 1 xsd:sequence
1 .. 1 CompleteNumber Phone number, value
udt:TextType
Page 34 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction
++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeDelivery ++++ShipToTradeParty +++++DefinedTradeContact ++++++TelephoneUniversalCommunication +++++++CompleteNumber
Example: +49 (123) 12034034 Status: R
Format: X(512) Profile: EXTENDED only
0 .. 1
FaxUniversalCommunication Details of the fax number
.
Status: O 1 .. 1 xsd:sequence
1 .. 1 CompleteNumber Fax number, value
udt:TextType Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction
++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeDelivery ++++ShipToTradeParty +++++DefinedTradeContact ++++++FaxUniversalCommunication +++++++CompleteNumber
Example: 5555544444 Status: R
Format: X(512) Profile: EXTENDED only
Cardinality Element/Attribute Business term / Properties
0 .. 1
EmailURIUniversalCommuni Details on email
cation
.
Status: O 1 .. 1 xsd:sequence
1 .. 1 URIID Email, value
udt:IDType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeDelivery ++++ShipToTradeParty +++++DefinedTradeContact ++++++EmailURIUniversalCommunication +++++++URIID
Example: [email protected] Status: R
Format: X(512) Profile: EXTENDED only
0 .. 1
PostalTradeAddress Details on address
.
Status: A 1 .. 1 xsd:sequence
0 .. 1 PostcodeCode Postcode, value
udt:CodeType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeDelivery ++++ShipToTradeParty +++++PostalTradeAddress ++++++PostcodeCode Example: 13629
Status: A
Format: X(17) Profile: EXTENDED only
0 .. 1
LineOne Line one, value
udt:TextType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem
Page 35 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
+++SpecifiedSupplyChainTradeDelivery ++++ShipToTradeParty +++++PostalTradeAddress ++++++LineOne Remark: Indication of street or postal box. For addresses indicating the postcode and locality, "-" must be entered. Example: Nonnendammallee 101
Status: A Format: X(70)
Profile: EXTENDED only
0 .. 1
CityName
City, value
udt:TextType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeDelivery ++++ShipToTradeParty +++++PostalTradeAddress ++++++CityName Example: Berlin
Status: A Format: X(35)
Profile: EXTENDED only
Cardinality Element/Attribute Business term / Properties
0 .. 1
CountryID
Country (Code), value
qdt:CountryIDType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeDelivery ++++ShipToTradeParty +++++PostalTradeAddress ++++++CountryID Example: DE
Status: A CodeList: Codelist ISO 3166-1 alpha-2 is used.
Profile: EXTENDED only
0 .. 1
ActualDeliverySupplyChainE Details on actual delivery
vent Remark: If the line items of an invoice have different delivery or service completion dates, then this date has to be given for each line item.
.
Status: D 1 .. 1 xsd:sequence
0 .. 1
OccurrenceDateTime Actual date of delivery or date of service
provision
.
Remark: The actual date of delivery in respect of VAT must be provided on header level
Status: D 1 .. 1 xsd:choice
1 .. 1 DateTimeString Actual date of delivery, value
extension (xsd:string) Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeDelivery ++++ActualDeliverySupplyChainEvent +++++OccurrenceDateTime ++++++DateTimeString Example: 20160420 Status: R
Format: CCYYMMDD
Profile: EXTENDED only
required format Date, format
.. . CodeList: 102 (CCYYMMDD) . Status: R . Profile: EXTENDED only
0 .. 1
DeliveryNoteReferencedDocu Details on referenced delivery note ment
.
Status: O
Page 36 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
1 .. 1 xsd:sequence
0 .. 1 IssueDateTime Document date, value
qdt:DateMandatoryDateTimeType Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction
++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeDelivery ++++DeliveryNoteReferencedDocument +++++IssueDateTime
Example: 2016-04-19 Status: O
Format: CCYY-MM-DD Profile: EXTENDED only
1 .. 1 ID Document number, value
udt:IDType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeDelivery ++++DeliveryNoteReferencedDocument +++++ID
Example: SIPS80081334790 Status: R Format: X(70) Profile: EXTENDED only
Cardinality Element/Attribute Business term / Properties
1 ..1
SpecifiedSupplyChainTradeSett Grouping on settlement information
lement . Status: R 1 .. 1 xsd:sequence
0 .. unbounded
ApplicableTradeTax Details on taxes
Remark: This section must be used even if the invoice needs to show more than one tax type.
Status: D . 1 .. 1 xsd:sequence
0 .. 1
TypeCode Tax type (Code), value qdt:TaxTypeCodeType
Path to element: CrossIndustryDocument
+SpecifiedSupplyChainTradeTransaction
++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeSettlement
++++ApplicableTradeTax +++++TypeCode
Remark: This element must be used if the invoice needs to show more than one tax type.
Example: VAT Status: D
Format: X(3) Profile: COMFORT and upwards
0 .. 1 CategoryCode Tax category, value
qdt:TaxCategoryCodeType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeSettlement ++++ApplicableTradeTax +++++CategoryCode
Remark: This element must be used if the invoice needs to show more than one tax type. The complete list of ZUGFeRD allowed codes with explanations can be found in chapter 2.4.
Example: S
Status: D
CodeList: AE, E, Z, O, S Profile: COMFORT and upwards
1 .. 1 ApplicablePercent Tax percentage, value
Page 37 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
udt:PercentType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeSettlement ++++ApplicableTradeTax +++++ApplicablePercent
Example: 19.00 Status: R
Format: N(7) Profile: COMFORT and upwards
Cardinality Element/Attribute Business term / Properties
0 .. 1
SpecifiedTradeSettlementMo Details on summation
netarySummation
Remark: If only a text block without pricing is specified, this block can be omitted. Otherwise, it must be indicated. . Status: D 1 .. 1 xsd:sequence
1 .. 1 LineTotalAmount Line total amount, value
udt:AmountType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeSettlement ++++SpecifiedTradeSettlementMonetarySummation +++++LineTotalAmount Remark: The line total amount is the net amount, including any additions and deductions without specifying the value-added tax.
Example: 2373.86 Status: R
Format: N(15) Profile: COMFORT and upwards
required currencyID Currency
.. . CodeList: EUR Euro Codelist ISO 4217 3A is used. . Status: R . Profile: COMFORT and upwards
0 .. 1 TotalAllowanceChargeAmo Allowance and charge total, value
unt udt:AmountType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedSupplyChainTradeSettlement ++++SpecifiedTradeSettlementMonetarySummation +++++TotalAllowanceChargeAmount
Remark: This element will always be sent. Sum of allowance and charge from line if AppliedTradeAllowanceCharge segment is provided.
Example: 206.4200 Status: D Format: N(15)
Profile: EXTENDED only
required
currencyID Currency
.. . CodeList: EUR Euro Codelist ISO 4217 3A is used. . Status: R . Profile: EXTENDED only
Page 38 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
Cardinality Element/Attribute Business term / Properties
0 .. 1
SpecifiedTradeProduct Grouping of product or service information
Remark: This element will always be sent. . Status: A
1 .. 1 xsd:sequence
0 .. 1
BuyerAssignedID Buyer's article number, value
udt:IDType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedTradeProduct ++++BuyerAssignedID Remark: The identifier of the product is a unique, bilaterally agreed number of the product. It can, for example, be a
customer item number or reference to the manufacturers part number.
Example: 6081271 Status: O
Format: X(35) Profile: COMFORT and upwards
1 .. 1
Name Article name, value
udt:TextType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedTradeProduct ++++Name
Example: SIMOTICS SD 1LE15 IEC-LV Status: R
Format: X(512) Profile: BASIC and upwards
0 .. unbounded
DesignatedProductClassifica Details on product classification
tion
. Status: O 1 .. 1 xsd:sequence
1 .. 1 ClassCode Class code, value
udt:CodeType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedTradeProduct ++++DesignatedProductClassification +++++ClassCode
Example: SN1234567890 Status: R Format: X(35) Profile: EXTENDED only
required listID Product classification name
.. . CodeList: SELLER_ASSIGNED
The complete list of ZUGFeRD allowed codes with explanations can be found in chapter 2.8.
. Status: R . Profile: EXTENDED only
1 .. unbounded ClassName Product classification (free text), value
udt:TextType Path to element: CrossIndustryDocument +SpecifiedSupplyChainTradeTransaction ++IncludedSupplyChainTradeLineItem +++SpecifiedTradeProduct ++++DesignatedProductClassification +++++ClassName Synonym: Commodity group
Example: VINCode Status: R Format: X(35) Profile: EXTENDED only
Page 39 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
2. Code Lists
2.1. BUSINESS PROCESS CODE LIST
Business Process Code
Code Description
CAN Cancellation
SBI Self-billing invoice
GUA Guarantee
FCS Fix cost settlement
REV Revaluation
CDN Credit or Debit note
VHS Vehicle settlement
BPO Bank posting
BTS Business trip settlement
FCN Freight credit notes
MMS Maintenence material settlement
LTS Literatur settlement
CNS Cantine settlement
GUF Guarantee freight
INF Information letter
2.2. DOCUMENT TYPE CODE LIST
Document Type Code
Code Description
389 Self-billed invoice
2.3. TYPE OF REFERENCED DOCUMENT CODE LIST
Type of Referenced Document
Code Description
AJS Agreement number
BC Buyer's contract number
OI Previous invoice number
Page 40 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
2.4. TAX CATEGORY CODE LIST
Tax Category Code
Code Description
AE VAT Reverse Charge Code
E Exempt from tax
Z Zero rated goods
O Services outside scope of tax
S Standard rate
2.5. MEASUREMENT UNIT CODE LIST
Measurement Unit Code
Code Description
C62 one (piece)
PCE piece
DAY day
HAR hectare
HUR hour
KGM kilogram
KTM kilometre
KWH kilowatt hour
LS lump sum
LTR litre
MIN minute
MMK square millimetre
MMT millimetre
MTK square metre
MTQ cubic metre
MTR metre
NAR number of articles
NPR number of pairs
P1 percent
SET set
TNE tonne (metric ton)
WEE week
Page 41 Cardinality - occurrence of elements (e.g. 0 .. 1 - minimum occurrence equals 0 and maximum occurrence equals 1) Status - M=Mandatory, C=Conditional, R=Required, O=Optional, D=Dependent, A=Advised, N=Not used Format: X(n) - string with exception of XML forbidden characters, maximum number of characters: n N(n) - decimal number, maximum length including digits and decimal point: n CCYYMMDD or CCYY-MM-DD - date field-format ("CCYY" – four-digit year, "MM" – two-digit month, "DD" – two-digit day)
2.6. ALLOWANCE/CHARGE REASON CODE LIST
Allowance/ Charge Reason Code
Code Description
ADR Other services
FC Freight service
IN Insurance
PC Packing
SH Special handling
2.7. QUALIFYING THE TYPE OF TEXT CODE LIST
Qualifying the Type of Code
Code Description
(empty) General free text
REG Regulatory information
AAK Price condition
Remark for Code AAK:
In France the information about early payment discount is mandatory.
BMW has no early payment and indicate “Escompte Néant ” or “No Early Payment discount”
(legal data - L 441-3 of the Commercial Code) in IncludedNote – SubjectCode = AAK
2.8. PRODUCT CLASSIFICATION CODE LIST
Product Classification Code
Code Description
HS Harmonized System (WCO)
SELLER_ASSIGNED assigned by seller