Changes to generic fields

  • recipient.address.line1 is required for XRechnung.
  • recipient.address.line2 is required for XRechnung.
  • recipient.address.city is required for XRechnung.
  • recipient.address.state is required for XRechnung.
  • recipient.address.country is required for XRechnung.
  • recipient.address.postalCode is required for XRechnung.

Germany-specific fields

type Invoice {
  // ...everything from Generic credit note
  invoiceRefs: string[];
  lines: InvoiceLine[];
  // ...everything from recipient
  recipient: {
    contact: {
      email?: string;
    }
    peppolId: {
      endpointId: string;
    };
  }
}

type InvoiceLine {
  description: string;
  unit: Unit;
	quantity?: number;
	vat: {
    type: 'fixed' | 'percent';
    code: VatCodeUNTDID;
    amount: number;
  };
  price: {
    amount: number;
  };
}
NameTypeRequiredDescription
lines[].vat.codestringYesA value from an enumerated list as outlined on VAT code classification (UNTDID 5305)
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.

Example CSV file

Credit note - Germany.csv