Invoices
Workist XML
File extension: .xml
File name: <UUID>.xml
The default format for invoices. Header data sits directly below invoice, followed by payment (payment details), summary (amounts) and line_items (line items).
Unlike orders and requests for quotation, Workist writes every configured header, payment, summary and line item field, even when it is empty (e.g. <contract_number />). The payment, summary and line_items blocks are always present. Address and supplier blocks only contain filled fields.
Dates have the format YYYY-MM-DD. Decimal numbers use a decimal comma without trailing zeros by default (1487,5), see Date and number formats. The options Include reference to the analyzed file, Include link to the Workbench, Include email sender information and Use short external file name have no effect for invoices.
Full example
<?xml version="1.0" encoding="utf-8"?>
<invoice>
<invoice_number>INV-2025-0042</invoice_number>
<order_number>PO-2025-0001</order_number>
<contract_number />
<delivery_note_number>DN-2025-300</delivery_note_number>
<invoice_date>2025-03-20</invoice_date>
<invoice_due_date>2025-04-19</invoice_due_date>
<delivery_date>2025-03-15</delivery_date>
<document_type>Invoice</document_type>
<recipient_address>
<Code>RCPT-001</Code>
<name>Accounts Payable</name>
<street_and_nr>Hauptstrasse 42</street_and_nr>
<misc>Building A</misc>
<company_name>Acme Corp GmbH</company_name>
<postcode>80331</postcode>
<city>Munich</city>
<country>DE</country>
<country_subdivision>BY</country_subdivision>
<email>invoices@acme.de</email>
<phone>+49 89 12345678</phone>
</recipient_address>
<sender_supplier>
<address>
<name>Best Supplier GmbH</name>
<street_and_nr>Lieferantenweg 10</street_and_nr>
<postcode>20095</postcode>
<city>Hamburg</city>
<country>DE</country>
<email>info@bestsupplier.de</email>
<phone>+49 40 99999999</phone>
</address>
<name>Best Supplier GmbH</name>
<misc>Werk Nord</misc>
<customer_number>SUP-500</customer_number>
<customer_type>preferred</customer_type>
<contact_person>Hans Mueller</contact_person>
<vat_id>DE987654321</vat_id>
<internal_note>Pay only after goods receipt</internal_note>
</sender_supplier>
<sender_vat_id>DE987654321</sender_vat_id>
<sender_tax_number>143/123/45678</sender_tax_number>
<sender_contact>
<contact_id>SC-001</contact_id>
<name>Hans Mueller</name>
<email>hans@bestsupplier.de</email>
<phone>+49 40 88888888</phone>
</sender_contact>
<Info_Text>Payment due within 30 days.</Info_Text>
<payment>
<payment_bank>Deutsche Bank AG</payment_bank>
<payment_bic>DEUTDEFF</payment_bic>
<payment_iban>DE89370400440532013000</payment_iban>
<payment_method>SEPA credit transfer</payment_method>
<payment_reference>INV-2025-0042</payment_reference>
<payment_swift>DEUTDEFF</payment_swift>
<payment_terms_discount>2% within 10 days</payment_terms_discount>
<payment_terms_due_days>30</payment_terms_due_days>
<payment_terms_type>net</payment_terms_type>
<payment_terms>Net 30 days</payment_terms>
</payment>
<summary>
<currency>EUR</currency>
<net_amount>1250</net_amount>
<tax_rate>19</tax_rate>
<tax_amount>237,5</tax_amount>
<total_amount>1487,5</total_amount>
<total_due>1487,5</total_due>
</summary>
<line_items>
<line_item>
<pos>10</pos>
<article_id1>ART-001-A</article_id1>
<article_id2>ART-001-A-ALT</article_id2>
<article_id3>4006381333931</article_id3>
<article_partition_specific_number>SUP-ART-777</article_partition_specific_number>
<article_description>Industrial Sensor Module Type A</article_description>
<quantity>100</quantity>
<unit>PCE</unit>
<unit_price>12,5</unit_price>
<total_price>1250</total_price>
<gross_price />
<price_unit>1</price_unit>
<tax_rate>19</tax_rate>
<tax_amount>237,5</tax_amount>
</line_item>
</line_items>
</invoice>
Header fields
| Element | Type | Description |
|---|---|---|
invoice_number | Text | Invoice number |
order_number | Text | Order number the invoice refers to |
contract_number | Text | Contract number |
delivery_note_number | Text | Delivery note number |
invoice_date | Date | Invoice date |
invoice_due_date | Date | Due date |
delivery_date | Date | Delivery or service date |
document_type | Text | Document type as free text, as recognised. For e-invoices (ZUGFeRD, XRechnung) Invoice or Credit Note |
recipient_address | Block | Invoice recipient; fields see Address fields |
sender_supplier | Block | Invoicing party, filled from your supplier master data |
sender_supplier/address | Block | Supplier address; fields see Address fields |
sender_supplier/name | Text | Supplier name |
sender_supplier/misc | Text | Additional information from the supplier master data (misc) |
sender_supplier/customer_number | Text | Supplier number |
sender_supplier/customer_type | Text | Type from the master data |
sender_supplier/contact_person | Text | Contact person from the master data |
sender_supplier/vat_id | Text | VAT ID from the master data |
sender_supplier/internal_note | Text | Internal note from your master data (internal_note) |
sender_vat_id | Text | Supplier's VAT ID as stated on the invoice |
sender_tax_number | Text | Supplier's tax number |
sender_contact | Block | Contact person at the supplier |
sender_contact/contact_id | Text | Number of the contact person |
sender_contact/name | Text | Name of the contact person |
sender_contact/email | Text | Contact person's email address |
sender_contact/phone | Text | Contact person's phone number |
Info_Text | Text | Free text. Workist splits it into chunks of 70 characters, one element per chunk, at most 5 elements; anything beyond is dropped |
Address fields
recipient_address and sender_supplier/address share this structure. Workist only writes filled fields.
| Element | Type | Description |
|---|---|---|
Code | Text | Address number from your master data |
name | Text | Name |
street_and_nr | Text | Street and house number |
misc | Text | Additional address line |
company_name | Text | Company name |
postcode | Text | Postcode |
city | Text | City |
country | Text | Country code (e.g. DE) |
country_subdivision | Text | State or region code |
email | Text | Email address |
phone | Text | Phone number |
Payment fields (payment)
| Element | Type | Description |
|---|---|---|
payment_bank | Text | Bank name |
payment_bic | Text | BIC |
payment_iban | Text | IBAN |
payment_method | Text | Payment method as free text; for e-invoices the label of the payment means code (e.g. SEPA credit transfer) |
payment_reference | Text | Payment reference |
payment_swift | Text | SWIFT code |
payment_terms_discount | Text | Early payment discount terms |
payment_terms_due_days | Text | Payment term in days |
payment_terms_type | Text | Type of payment terms |
payment_terms | Text | Payment terms as written |
Summary fields (summary)
| Element | Type | Description |
|---|---|---|
currency | Text | Currency code (e.g. EUR) |
net_amount | Decimal | Net amount |
tax_rate | Decimal | Tax rate in percent |
tax_amount | Decimal | Tax amount |
total_amount | Decimal | Gross amount |
total_due | Decimal | Amount due |
Line item fields (line_items/line_item)
Workist writes one line_item per line item, provided at least one line item field is configured.
| Element | Type | Description |
|---|---|---|
pos | Text | Line number |
article_id1 | Text | Your article number (article_id1 from your article master data) |
article_id2 | Text | Second article number (article_id2) |
article_id3 | Text | Third article number (article_id3, e.g. EAN) |
article_partition_specific_number | Text | The supplier's article number |
article_description | Text | Article description |
quantity | Decimal | Quantity |
unit | Text | Unit of measure |
unit_price | Decimal | Unit price |
total_price | Decimal | Line total |
gross_price | Decimal | Gross price from your article master data (gross_price) |
price_unit | Text | Price unit (e.g. 1 or 100) |
tax_rate | Decimal | Tax rate of the line |
tax_amount | Decimal | Tax amount of the line |