Germany

Invoice

Changes to generic fields

  • recipient.address.line1 is required.
  • recipient.address.line2 is required.
  • recipient.address.city is required.
  • recipient.address.state is required.
  • recipient.address.country is required.
  • recipient.address.postalCode is required.
type Invoice {
  // ...all generic invoice fields
  due: string;
  customInfo: {
    deu: {
      paymentCode: CodeListUncl4461;
      deliveryDate: string;
      isSelfBilled?: boolean;
    };
  };
  lines: [
    { 
      // ...other line item fields
      vat: {
      // ...other line item vat fields
      code: VatCodeUNTDID;
      exemptReason?: string;
      }
    }
  ];
  recipient: {
    contact: {
      email?: string;
    }
    peppolId: {
      endpointId: string;
     };
    };
 paymentMeans: [
    {
      code: string;
      ref: string;
      account: {
        iban: string;
        accountName: string;
        accountNumber: string;
        bic: string;
        bankName: string;
        branch: string;
      }
    }
 ],
 notes?: string;
};

Field information

NameTypeRequiredDescription
duestring (ISO 8601 date)YesDue date of invoice.
customInfo.deu.paymentCodestringYesMust contain payment means type code Payment Means. Required for XRechnung and ZUGFeRD.
customInfo.deu.deliveryDatestringNoDelivery date of goods
customInfo.deu.isSelfBilledstringOptionalIndicates if this invoice is being self-billed.
lines[].vat.codestringYesA value from an enumerated list as outlined on VAT code classification (UNTDID 5305)
lines[].vat.exemptReasonstringConditionalA textual statement of the reason why the amount is exempted from VAT or why no VAT is being charged. Optional for XRechnung when VAT is 0 and required for ZUGFeRD.
recipient.contact.emailstringConditionalRecipient email address. Required for ZUGFeRD.
recipient.peppolId.endpointIdstringConditionalPeppol ID of the recipient (eg. iso6523-actorid-upis::9930:uat-eezi-12345) Required for XRechnung.
paymentMeans.refstringOptionalRemittance information
A textual value used to establish a link between the payment and the Invoice, issued by the Seller. Used for creditor's critical reconciliation information. This information element helps the Seller to assign an incoming payment to the relevant payment process.
paymentMeans.codestringOptionalPayment means type code
The means, expressed as code, for how a payment is expected to be or has been settled.
paymentMeans.account.ibanstringOptionalIBAN Payment account identifier
A unique identifier of the financial payment account, at a payment service provider, to which payment should be made. This would be used instead of account.accountNumber when provided.
paymentMeans.account.accountNumberstringOptionalPayment account identifier
A unique identifier of the financial payment account, at a payment service provider, to which payment should be made. This will only be used if when no IBAN number was specified.
paymentMeans.account.accountNamestringOptionalPayment account name
The name of the payment account, at a payment service provider, to which payment should be made.
paymentMeans.account.bicstringOptionalThe BIC (Bank Identifier Code) is an international code that clearly identifies banks worldwide. The BIC, often also called the SWIFT Code, is used as a second identifier in addition to the IBAN.
paymentMeans.account.bankNamestringOptionalName of bank.
paymentMeans.account.branchstringOptionalThe branch identifier for the payment service provider where a payment account is located.
notesstringOptionalFree text notes for additional data

Example CSV files

Invoice - Germany - PEPPOL.csv

Invoice - Germany - XRechnung.csv

Invoice - Germany ZUGFerd.csv