Germany: Required Elements
Germany requires specific elements for a valid document.
The following elements are specifically required for Germany:
Extensions / UBL Extensions
Extensions are required for all countries as explained in more detail in the Extensions topic.
Invoice
The Invoice element requires the following sub-elements. The sub-elements also have required sub-elements of their own:
Element | Description |
---|---|
Invoice/CustomizationID | You must specify a CustomizationID. |
Invoice/ProfileID | You must specify a ProfileID. |
Invoice/ID | You must specify an ID for the document, |
Invoice/IssueDate | You must specify an IssueDate for the document. |
Invoice/InvoiceTypeCode | Germany requires specific Invoice Type Codes as described in the Germany: Invoice Types for German Suppliers (Conditional) |
Invoice/AccountingCustomerParty | You must specify the Customer's details in the AccountingCustomerParty element. See Germany: Buyer Information (Mandatory) |
Invoice/AccountingSupplierParty | You must specify the Supplier's details in the AccountingSupplierParty element. See Germany: Supplier Information (Mandatory) |
Invoice/TaxTotal | You must specify the total tax in the TaxTotal element. |
Invoice/LegalMonetaryTotal | You must specify the legal total in the LegalMonetaryTotal element. |
Invoice/InvoiceLine | You must specify the document's line items in the InvoiceLine element. |
InvoiceLine
The following sub-elements of the InvoiceLine element are required:
Element | Description |
---|---|
InvoiceLine/CustomizationID | You must specify urn:vertexinc:verbl:billing:1.0 as the value for the CustomizationID element. |
InvoiceLine/ProfileID | You must specify urn:vertexinc:verbl:billing:1.0 as the value for the ProfileID element. |
InvoiceLine/ID | You must specify an ID for the line. |
InvoiceLine/IssueDate | You must specify the date the line was issued in the IssueDate element. |
InvoiceLine/[InvoiceTypeCode | You must use specific Invoice Type Codes as described in the Malaysia: Invoice Type Code (Mandatory) topic. |
InvoiceLine/DocumentCurrencyCode | You must specify a currency for the line item in the DocumentCurrencyCode element. |
OrderReference
The following sub-element of the OrderReference element is mandatory:
Element | Description |
---|---|
OrderReference/ID | You must specify the order ID using the ID element. |
IDs
The following elements, if used, require an ID to be present:
- AdditionalDocumentReference
- OrderReference
- InvoiceDocumentReference
- DespatchDocumentReference
- ReceiptDocumentReference
- OriginatorDocumentReference
- ContractDocumentReferences
- ProjectReference
DocumentTypeCode
If the DocumentTypeCode sub-element is 130, then an ID is mandatory.
You are also required to specify the following attributes when the /Attachment/EmbeddedDocumentBinaryObject
is present:
Attribute | Description |
---|---|
@filename | Specify a name for the file. |
@mimecode | Specify a MIME code. |
If the Attachment/ExternalReference
element is present, you must specify the following sub-element:
Element | Description |
---|---|
Attachment/ExternalReference/URI | Specify the URI of the reference's location. |
AcccountSupplierParty
The following sub-element is required for the AccountingSupplierParty element:
Element | Description |
---|---|
Party | You must use the Party element to define the Supplier's contact information. |
Party/EndpointID | An EndpointID is required. The @Scheme attribute is also required. |
Party/PostalAddress | The Supplier's postal address is required. |
If PartyTaxScheme/ID = 'VAT' is present | The LegalEntity element is required. |
If PartyTaxScheme/ID = 'VAT' is present | The CompanyID and TaxScheme elements are required. |
If Party/LegalPartyEntity is present | The RegistrationName element is required. |
If the Party/LegalPartyEntity/RegistrationName/CompanyID element is present | The @schemeID attribute is required. |
PartyTaxScheme/CompanyID | If you want to facilitate automatic detection of the Supplier by the Buyer, then you need to specify the CompanyID element. |
if PartyIdentification[ID/@schemeID != 'SEPA'] is present | You must specify an ID. |
Party/PostalAddress/Country | You must specify the Supplier's Country's code. See |
If PostalAddress/AddressLine is present | You must specify a single Line. |
AccountCustomerParty
The AccountingCustomerParty element requires the following sub-elements:
Element | Description |
---|---|
Party | You must use the Party element to define the Customer's contact information. |
Party/EndpointID | An Endpoint ID is required. The @Scheme attribute is also required. |
Party/PostalAddress | The Customer's postal address is required. |
If the PartyTaxScheme is present | The LegalEntity element is required. |
Party/PostalAddress/Country | You must specify the Customer's Country's code. See |
If PostalAddress/AddressLine is present | You must specify a single Line. |
If PartyTaxScheme is present | You must specify the CompanyID and TaxScheme elements, |
If PartyTaxScheme/TaxScheme is present | You must specify an ID and attribute value for the Tax Scheme, |
if Party/PartyLegalEntity is present | The RegistrationName elements is required. |
If Party/PartyLegalEntity/CompanyID is present | The CompanyID element also requires an attribute value. |
PayeeParty
The PayeeParty element requires the following sub-elements:
Element | Description |
---|---|
PayeeParty/PartyName | You must specify a Party Name. |
If the PayeeParty/PartyIdentification element is present | The ID element is required. |
If the PayeeParty/PartyIdentification/ID is present | The @schemeID attribute is required. |
If the PayeeParty/PartyLegalEntity element is present | The CompanyID element is required. The @schemeID attribute is also required. |
TaxRepresentativeParty
The TaxRepresentativeParty element requires the following sub-elements:
Element | Description |
---|---|
TaxRepresentativeParty/PartyName | You must specify a Party Name. |
TaxRepresentativeParty/PostalAddress | You must specify a Postal Address. |
TaxRepresentativeParty/PartyTaxScheme | You must specify a Tax Scheme. See Tax Schemes. |
TaxRepresentativeParty/PostalAddress/Country | You must specify a country. |
If PartyTaxScheme is present | You must specify the CompanyID and TaxScheme , |
If PartyTaxScheme/TaxScheme is present | You must specify an ID and attribute value for the Tax Scheme, |
Delivery
The Delivery element requires the following sub-elements:
Element | Description |
---|---|
Delivery/DeliveryLocation/Address/Country | You must specify a country. |
If Delivery/DeliveryLocation/Address/AddressLine is present | You must specify a Line. |
If Delivery/DeliveryParty is present | The PartyName element is required. |
If Delivery/DeliveryParty/PartyTaxScheme is present | You must specify the CompanyID and TaxScheme , |
PaymentMeans
The PaymentMeans element requires the following sub-elements:
Element | Description |
---|---|
PaymentMeans/PaymentMeansCode | You must specify a PaymentMeansCode. See Germany: Payment Means (Payment Instructions) (Mandatory) |
If the PaymentMeans/CardAccount element is present. | The PrimaryAccountNumberID and NetworkID elements are required. See Germany: Payment Card (Conditional) |
If PaymentMeans/PayeeFinancialAccount is present. | The ID element is required. |
If PaymentMeans/PayeeFinancialAccount/FinancialInstitutionBranch is present. | The ID element is required. |
If /PayeeFinancialAccount/FinancialInstitutionBranch/Address/AddressLine is present. | The Line element is required. |
If PaymentMeans/PaymentMandate/PayerFinancialAccount is present | The ID element is required. |
PaymentTerms
The PaymentTerms element requires the following sub-element:
Element | Description |
---|---|
If PaymentTerms/cbc:Amount is present | The @CurrencyID attribute is required. |
PrepaidPayment
The PrepaidPayments element requires the following sub-element:
Element | Description |
---|---|
If PrepaidPayment/cbc:PaidAmount is present | The @CurrencyID attribute is required. |
AllowanceCharge
The AllowanceCharge element requires the following sub-elements:
Element | Description |
---|---|
AllowanceCharge[cbc:ChargeIndicator = true|false()] | You must specify whether the charge is true or false. |
AllowanceCharge[cbc:ChargeIndicator = true|false()]/Amount | You must specify an amount for the charge. The @currencyID attribute is also required. |
AllowanceCharge[cbc:ChargeIndicator = true|false()]/AllowanceChargeReasonCode | You must use an UNCL 5189 code to specify a reason for the allowance. |
If AllowanceCharge[ChargeIndicator = true|false()]/TaxCategory is present | The ID element is required to specify the Tax Category. |
AllowanceCharge[ChargeIndicator = true|false()]/TaxCategory/TaxScheme | You must specify a Tax Scheme. See Tax Schemes. |
If AllowanceCharge[ChargeIndicator = true|false()]/TaxCategory/TaxScheme is present | The ID element is required. |
TaxTotal
The TaxTotal element requires the following sub-elements:
Element | Description |
---|---|
TaxAmount/Amount | You must specify an amount. The @currencyID attribute is also required. |
TaxAmount/TaxSubtotal | At lease one of this element is required. |
TaxAmount/TaxSubtotal/TaxableAmount | You must specify a taxable amount for the subtotal. The @currencyID attribute is also required. |
TaxAmount/TaxSubtotal/TaxAmount | You must specify a tax amount for the subtotal. The @currencyID attribute is also required. |
TaxAmount/TaxSubtotal/TaxCategory | You must specify a Tax Category for the subtotal. |
TaxAmount/TaxSubtotal/TaxCategory/ID | You must specify an ID for the Tax Category. See Germany: VAT Category Code (Mandatory) |
TaxAmount/TaxSubtotal/TaxCategory/TaxScheme | You must specify a Tax Scheme for the Tax Category. |
TaxAmount/TaxSubtotal/TaxCategory/TaxScheme/ID | You must specify an ID for the Tax Scheme. |
LegalMonetaryTotal
The LegalMonetaryTotal element requires the following sub-elements:
Element | Description |
---|---|
LegalMonetaryTotal/LineExtensionAmount | You must specify an amount for the line extension. The @currencyID attribute is also required. |
LegalMonetaryTotal/TaxExclusiveAmount | You must specify the amount excluding tax. The @currencyID attribute is also required. |
LegalMonetaryTotal/TaxInclusiveAmount | You must specify the amount including tax. The @currencyID attribute is also required. |
LegalMonetaryTotal/PayableAmount | You must specify the amount payable. The @currencyID attribute is also required. |
Updated 4 months ago