Invoice positionen

This API endpoint exists for customers who would like to manage invoices in differennt system then TimberData.
It allows to read all invoice positions in intervals to replicate invoices.

Article identifier format

Invoice positions created from wood sales do not have an article identifier and so an identifier has to be generated.
You can provide a custom article identifier format via the article_number_format query parameter. The following list of characters will be replaced with the shortname of wood attributes:

  • T - Tree type shortname
  • U - Usage shortname
  • Q - Quality shortname
  • S - Thickness class

Example:

Given the format T-U a position with beech wood in fix length segments would result in: BU-FL

Missing information:

Wenn a sale is done with a grouping that ignores some of the meta information of the wood the value is replaced by a fallback value:

  • Quality - ZZQ
  • Usage - ZZU
  • Tree type - ZZT
  • Thickness class - ZZS

Given the format T-U-Q a position that was created in an invoice that is only grouped by Tree Type the resulting article identifier would be: BU-ZZU-ZZQ

Invoice position entity

invoice_number string Invoice number
invoice_date string Invoice date
service_date string Service date
due_date string Due date
invoice_type string Invoice Type
buyer object Buyer ID and name
position_text string Position description
position_identifier string Article identifier
unit_price int Unitprice in EUR-Cent
amount float Amount / Quantity
net_price int Net price EUR-Cent
gross_price int Gross price in EUR-Cent
unit string Unit
tax_rate float Tax rate
tree_type string Tree type or empty when non wood based article
usage string Usage or empty when non wood based article
cashback_due_date string Cashback due date
cashback_percent float Cashback percentage
invoice_id int Invoice ID
invoice_creator object Information about the user that created the invoice

Invoice position listing

Endpoint /inventory/v4/sale/invoice/positions/export
Method GET
Scope invoice
Query parameter
article_number_format see above “Article identifier format” article_number_format=T-U-Q
created_start_time Collect invoices created at or after then the given date created_start_time=2024-05-02
created_end_time Collect invoices created at or before the given date created_end_time=2024-05-03

Example response:

{
    "data": [
        {
            "invoice_number": "24-274",
            "invoice_date": "2024-09-04T13:40:31+02:00",
            "service_date": "2024-09-04T17:38:28+02:00",
            "due_date": "2024-09-25T17:38:28+02:00",
            "invoice_type": "invoice",
            "position_text": "5.290000 fm",
            "tree_type": "LI",
            "usage": "ST",
            "net_price": 529,
            "gross_price": 630,
            "unit_price": 100,
            "position_identifier": "LI-ST-ZZQ",
            "amount": 4,
            "unit": "fm",
            "cashback_percent": 0,
            "cashback_due_date": "",
            "invoice_id": 123,
            "invoice_creator": {
                "id": 1234,
                "name": "Musteruser",
                "email": "example@timberdata.de"
            },
            "tax_rate": 19,
            "buyer": {
                "id": 91011,
                "name": "Sägewerk GmbH"
            }
        },
        {
            "invoice_number": "24-274",
            "invoice_date": "2024-09-04T13:40:31+02:00",
            "service_date": "2024-09-04T17:38:28+02:00",
            "due_date": "2024-09-25T17:38:28+02:00",
            "invoice_type": "invoice",
            "position_text": "5.942000 fm",
            "tree_type": "PAP",
            "usage": "BL",
            "net_price": 594,
            "gross_price": 636,
            "unit_price": 100,
            "position_identifier": "PAP-BL-ZZQ",
            "amount": 10,
            "unit": "fm",
            "cashback_percent": 0,
            "cashback_due_date": "",
            "invoice_id": 123,
            "invoice_creator": {
                "id": 1234,
                "name": "Musteruser",
                "email": "example@timberdata.de"
            },
            "tax_rate": 19,
            "buyer": {
                "id": 91011,
                "name": "Sägewerk GmbH"
            }
        },
        {
            "invoice_number": "24-274",
            "invoice_date": "2024-09-04T13:40:31+02:00",
            "service_date": "2024-09-04T17:38:28+02:00",
            "due_date": "2024-09-25T17:38:28+02:00",
            "invoice_type": "invoice",
            "position_text": "Freitext Artikel",
            "tree_type": "",
            "usage": "",
            "net_price": 500,
            "gross_price": 595,
            "unit_price": 500,
            "position_identifier": "",
            "amount": 1,
            "unit": "",
            "cashback_percent": 0,
            "cashback_due_date": "",
            "invoice_id": 123,
            "invoice_creator": {
                "id": 1234,
                "name": "Musteruser",
                "email": "example@timberdata.de"
            },
            "tax_rate": 19,
            "buyer": {
                "id": 91011,
                "name": "Sägewerk GmbH"
            }
        },
        {
            "invoice_number": "24-274",
            "invoice_date": "2024-09-04T13:40:31+02:00",
            "service_date": "2024-09-04T17:38:28+02:00",
            "due_date": "2024-09-25T17:38:28+02:00",
            "invoice_type": "invoice",
            "position_text": "Weinachtsbaum",
            "tree_type": "",
            "usage": "",
            "net_price": 2000,
            "gross_price": 2380,
            "unit_price": 2000,
            "position_identifier": "1",
            "amount": 1,
            "unit": "STK",
            "cashback_percent": 0,
            "cashback_due_date": "",
            "invoice_id": 123,
            "invoice_creator": {
                "id": 1234,
                "name": "Musteruser",
                "email": "example@timberdata.de"
            },
            "tax_rate": 19,
            "buyer": {
                "id": 91011,
                "name": "Sägewerk GmbH"
            }
        }
    ]
}