# Ladu20 API

## API structure

Ladu20 API is REST based, queries are processed via CURL POST requests.

**API base URL:** henceforth ***BASEURL***, will be provided by KMA.  
**API key:** henceforth ***APIKEY***, will be provided by KMA  
**Request data** is posted in CURLOPT\_POSTFIELDS as JSON.  
**Response** data is JSON formatted and returns request status, request type, result data and rowcount.  
  
HTTP header Content-Type needs to be set to application/json

##### PHP sample request

<div id="bkmrk-%3C%3Fphp">&lt;?php</div><div id="bkmrk-%24curl%C2%A0%3D%C2%A0curl_init%28%29%3B">$curl = curl_init();</div><div id="bkmrk-curl_setopt_array%28%24c">curl_setopt_array($curl, array<wbr>(</wbr></div><div id="bkmrk-%C2%A0%C2%A0curlopt_url%C2%A0%3D%3E%C2%A0%27ht"> CURLOPT_URL =&gt; '[https://***baseurl***/product](https://web.kma.ee/api/product)',</div><div id="bkmrk-%C2%A0%C2%A0curlopt_returntran"> <span class="il">CURLOPT\_RETURNTRANSFER</span> =&gt; tr<wbr>ue,</wbr></div><div id="bkmrk-%C2%A0%C2%A0curlopt_encoding%C2%A0%3D"> CURLOPT_ENCODING =&gt; '',</div><div id="bkmrk-%C2%A0%C2%A0curlopt_maxredirs%C2%A0"> CURLOPT_MAXREDIRS =&gt; 10,</div><div id="bkmrk-%C2%A0%C2%A0curlopt_timeout%C2%A0%3D%3E"> CURLOPT_TIMEOUT =&gt; 0,</div><div id="bkmrk-%C2%A0%C2%A0curlopt_followloca"> CURLOPT_FOLLOWLOCATION =&gt; tr<wbr>ue,</wbr></div><div id="bkmrk-%C2%A0%C2%A0curlopt_http_versi"> CURLOPT_HTTP_VERSION =&gt; <wbr>CURL\_HTTP\_VERSION\_1\_1,</wbr></div><div id="bkmrk-%C2%A0%C2%A0curlopt_customrequ"> CURLOPT_CUSTOMREQUEST =&gt; '<wbr>POST',</wbr></div><div id="bkmrk-%C2%A0%C2%A0curlopt_postfields"> CURLOPT_POSTFIELDS =&gt;'{"id":<wbr>"21161"}',</wbr></div><div id="bkmrk-%C2%A0%C2%A0curlopt_httpheader"> CURLOPT_HTTPHEADER =&gt; array(</div><div id="bkmrk-%C2%A0%C2%A0%C2%A0%C2%A0%27content-type%3A%C2%A0a"> 'Content-Type: <wbr>application/json',</wbr></div><div id="bkmrk-%C2%A0%C2%A0%C2%A0%C2%A0%27x-api-key%3A-apik"> 'x-api-key: **APIKEY**'</div><div id="bkmrk-%C2%A0%C2%A0%29%2C"> ),</div><div id="bkmrk-%29%29%3B">));</div><div id="bkmrk-%24response%C2%A0%3D%C2%A0curl_exe">$response = curl_exec($curl);</div><div id="bkmrk-curl_close%28%24curl%29%3B">curl_close($curl);</div><div id="bkmrk-echo%C2%A0%24response%3B">echo $response;</div><div id="bkmrk-">  
</div>##### Result handling

Query success or failure is defined in the boolean response field "ok". Response data and error descriptions are available in the field "data".

**Successful response with results:** *{"timestamp":"2023-10-13T10:00:35.133","ok":true,"query":"customer","row\_count":1,"data":\[{"customer\_code":"1234","main\_customer\_code":"1234","receiving\_customer\_code":"1234","last\_update":"2023-10-06T10:35:56.177","name":"TEST OÜ","reg\_code":"1234568","vat\_in\_use":1,"vat\_no":"EE1234567","is\_private\_person":0,"is\_customer":1,"is\_supplier":0,"is\_producer":0,"is\_transporter":0,"is\_owner":0,"phone":"555555555","address1":"Mustamäe tee 46","address2":"Harjumaa","address3":"Tallinn","postcode":"10612","country":"EE","language":"","email":"info@kma.ee","currency":"EUR","ref\_no":"0","old":0,"rowno":1}\]}*

**Successful response with no results:** *{"timestamp":"2023-10-13T09:54:22.303","ok":true,"query":"customer","row\_count":0}*

**Unsuccessful request:** *{"timestamp":"2023-10-13T09:56:54.410","ok":false,"query":"customer","data":{"message":"Technical error occurred"}}*

## Data output requests

API requests serve data from Ladu20 by predefined filterable POST requests. Filter parameters are defined per request and are not mandatory.

Currently the following standard outputs are available:

- Customer data
- Product data
- Stock levels
- Order
- Dispatch
- Invoice

### Customer data

**URL: *BASEURL***/customer

Returns customer data from Ladu20 database. Ladu20 defines customers as one collection of data with several statuses. The latter means the customer cards for suppliers, customers, producers etc are the same data unit, with several statuses defining the customer state (eg is\_supplier=1 means that the customer is also regarded a supplier in Ladu20).

##### Filter parameters

<table border="1" cellpadding="0" cellspacing="0" dir="ltr" id="bkmrk-parameter-name-type-" style="height: 211px; width: 808px;"><colgroup><col width="235"></col><col width="51"></col><col width="258"></col></colgroup><tbody><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"PARAMETER NAME"}" style="height: 29px; width: 251.212px;">**PARAMETER NAME**</td><td data-sheets-value="{"1":2,"2":"TYPE"}" style="height: 29px; width: 54.5125px;">**TYPE**</td><td data-sheets-value="{"1":2,"2":"DESCRIPTION"}" style="height: 29px; width: 275.8px;">**DESCRIPTION**</td><td style="width: 225.675px; height: 29px;">**Default value**</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"last_update"}" style="height: 29px; width: 251.212px;">last\_update</td><td data-sheets-value="{"1":2,"2":"string"}" style="height: 29px; width: 54.5125px;">string</td><td data-sheets-value="{"1":2,"2":"format: 2023-10-11T00:00:00"}" style="height: 29px; width: 275.8px;">returns data which is update later than the timestamp;  
format: 2023-10-11T00:00:00</td><td style="width: 225.675px; height: 29px;">last 240 hours</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"old"}" style="height: 29px; width: 251.212px;">old</td><td data-sheets-value="{"1":2,"2":"bit"}" style="height: 29px; width: 54.5125px;">bool</td><td style="height: 29px; width: 275.8px;">returns results marked as old in Ladu20;</td><td style="width: 225.675px; height: 29px;">false</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"id"}" style="height: 29px; width: 251.212px;">id</td><td data-sheets-value="{"1":2,"2":"string"}" style="height: 29px; width: 54.5125px;">string</td><td data-sheets-value="{"1":2,"2":"customer id"}" style="height: 29px; width: 275.8px;">customer id in Ladu20</td><td style="width: 225.675px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"page"}" style="height: 29px; width: 251.212px;">page</td><td data-sheets-value="{"1":2,"2":"int"}" style="height: 29px; width: 54.5125px;">int</td><td data-sheets-value="{"1":2,"2":"1-n, default 1"}" style="height: 29px; width: 275.8px;">Range 1-n</td><td style="width: 225.675px; height: 29px;">1</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"rowcount"}" style="height: 29px; width: 251.212px;">rowcount</td><td data-sheets-value="{"1":2,"2":"int"}" style="height: 29px; width: 54.5125px;">int</td><td data-sheets-value="{"1":2,"2":"1-300, default 300"}" style="height: 29px; width: 275.8px;">Range 1-1000</td><td style="width: 225.675px; height: 29px;">300</td></tr></tbody></table>

##### Sample request data

'{"last\_update":"2023-10-11T00:00:00","rowcount":2,"page":1}'

##### Response data

<table border="1" cellpadding="0" cellspacing="0" dir="ltr" id="bkmrk-field-name-type-desc" style="height: 1462px; width: 1005px;"><colgroup><col width="235"></col><col width="51"></col><col width="258"></col><col width="65"></col></colgroup><tbody><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"FIELD NAME"}" style="height: 29px; width: 312.172px;">**FIELD NAME**</td><td data-sheets-value="{"1":2,"2":"TYPE"}" style="height: 29px; width: 67.7344px;">**TYPE**</td><td data-sheets-value="{"1":2,"2":"DESCRIPTION"}" style="height: 29px; width: 342.719px;">**DESCRIPTION**</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"customer_code"}" style="height: 29px; width: 312.172px;">customer\_code</td><td data-sheets-value="{"1":2,"2":"int"}" style="height: 29px; width: 67.7344px;">int</td><td style="height: 29px; width: 342.719px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"main_customer_code"}" style="height: 29px; width: 312.172px;">main\_customer\_code</td><td data-sheets-value="{"1":2,"2":"int"}" style="height: 29px; width: 67.7344px;">int</td><td data-sheets-value="{"1":2,"2":"payer customer code"}" style="height: 29px; width: 342.719px;">payer customer code</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"receiving_customer_code"}" style="height: 29px; width: 312.172px;">receiving\_customer\_code</td><td data-sheets-value="{"1":2,"2":"int"}" style="height: 29px; width: 67.7344px;">int</td><td style="height: 29px; width: 342.719px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"last_update"}" style="height: 29px; width: 312.172px;">last\_update</td><td data-sheets-value="{"1":2,"2":"date"}" style="height: 29px; width: 67.7344px;">date</td><td data-sheets-value="{"1":2,"2":"format: 2023-10-11T00:00:00, created date"}" style="height: 29px; width: 342.719px;">format: 2023-10-11T00:00:00, created date</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"name"}" style="height: 29px; width: 312.172px;">name</td><td data-sheets-value="{"1":2,"2":"string"}" style="height: 29px; width: 67.7344px;">string</td><td style="height: 29px; width: 342.719px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"reg_code"}" style="height: 29px; width: 312.172px;">reg\_code</td><td data-sheets-value="{"1":2,"2":"string"}" style="height: 29px; width: 67.7344px;">string</td><td style="height: 29px; width: 342.719px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"vat_in_use"}" style="height: 29px; width: 312.172px;">vat\_in\_use</td><td data-sheets-value="{"1":2,"2":"int"}" style="height: 29px; width: 67.7344px;">int</td><td style="height: 29px; width: 342.719px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"vat_no"}" style="height: 29px; width: 312.172px;">vat\_no</td><td data-sheets-value="{"1":2,"2":"string"}" style="height: 29px; width: 67.7344px;">string</td><td style="height: 29px; width: 342.719px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"is_private_person"}" style="height: 29px; width: 312.172px;">is\_private\_person</td><td data-sheets-value="{"1":2,"2":"boolean"}" style="height: 29px; width: 67.7344px;">boolean</td><td style="height: 29px; width: 342.719px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"customer"}" style="height: 29px; width: 312.172px;">customer</td><td data-sheets-value="{"1":2,"2":"boolean"}" style="height: 29px; width: 67.7344px;">boolean</td><td data-sheets-value="{"1":2,"2":"customer status"}" style="height: 29px; width: 342.719px;">customer status</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"supplier"}" style="height: 29px; width: 312.172px;">supplier</td><td data-sheets-value="{"1":2,"2":"boolean"}" style="height: 29px; width: 67.7344px;">boolean</td><td data-sheets-value="{"1":2,"2":"customer status"}" style="height: 29px; width: 342.719px;">customer status</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"producer"}" style="height: 29px; width: 312.172px;">producer</td><td data-sheets-value="{"1":2,"2":"boolean"}" style="height: 29px; width: 67.7344px;">boolean</td><td data-sheets-value="{"1":2,"2":"customer status"}" style="height: 29px; width: 342.719px;">customer status</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"transporter"}" style="height: 29px; width: 312.172px;">transporter</td><td data-sheets-value="{"1":2,"2":"boolean"}" style="height: 29px; width: 67.7344px;">boolean</td><td data-sheets-value="{"1":2,"2":"customer status"}" style="height: 29px; width: 342.719px;">customer status</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"owner"}" style="height: 29px; width: 312.172px;">owner</td><td data-sheets-value="{"1":2,"2":"string"}" style="height: 29px; width: 67.7344px;">string</td><td style="height: 29px; width: 342.719px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"info"}" style="height: 29px; width: 312.172px;">info</td><td data-sheets-value="{"1":2,"2":"string"}" style="height: 29px; width: 67.7344px;">string</td><td style="height: 29px; width: 342.719px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"phone"}" style="height: 29px; width: 312.172px;">phone</td><td data-sheets-value="{"1":2,"2":"string"}" style="height: 29px; width: 67.7344px;">string</td><td style="height: 29px; width: 342.719px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"address1"}" style="height: 29px; width: 312.172px;">address1</td><td data-sheets-value="{"1":2,"2":"string"}" style="height: 29px; width: 67.7344px;">string</td><td data-sheets-value="{"1":2,"2":"street"}" style="height: 29px; width: 342.719px;">street</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"address2"}" style="height: 29px; width: 312.172px;">address2</td><td data-sheets-value="{"1":2,"2":"string"}" style="height: 29px; width: 67.7344px;">string</td><td data-sheets-value="{"1":2,"2":"city"}" style="height: 29px; width: 342.719px;">city</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"address3"}" style="height: 29px; width: 312.172px;">address3</td><td data-sheets-value="{"1":2,"2":"string"}" style="height: 29px; width: 67.7344px;">string</td><td data-sheets-value="{"1":2,"2":"county"}" style="height: 29px; width: 342.719px;">county</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"postcode"}" style="height: 29px; width: 312.172px;">postcode</td><td data-sheets-value="{"1":2,"2":"string"}" style="height: 29px; width: 67.7344px;">string</td><td style="height: 29px; width: 342.719px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"country"}" style="height: 29px; width: 312.172px;">country</td><td data-sheets-value="{"1":2,"2":"string"}" style="height: 29px; width: 67.7344px;">string</td><td style="height: 29px; width: 342.719px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"language"}" style="height: 29px; width: 312.172px;">language</td><td data-sheets-value="{"1":2,"2":"string"}" style="height: 29px; width: 67.7344px;">string</td><td style="height: 29px; width: 342.719px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"email"}" style="height: 29px; width: 312.172px;">email</td><td data-sheets-value="{"1":2,"2":"string"}" style="height: 29px; width: 67.7344px;">string</td><td style="height: 29px; width: 342.719px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"currency"}" style="height: 29px; width: 312.172px;">currency</td><td data-sheets-value="{"1":2,"2":"decimal"}" style="height: 29px; width: 67.7344px;">decimal</td><td style="height: 29px; width: 342.719px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"bank"}" style="height: 29px; width: 312.172px;">bank</td><td data-sheets-value="{"1":2,"2":"string"}" style="height: 29px; width: 67.7344px;">string</td><td data-sheets-value="{"1":2,"2":"bank name"}" style="height: 29px; width: 342.719px;">bank name</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"bankaccount"}" style="height: 29px; width: 312.172px;">bankaccount</td><td data-sheets-value="{"1":2,"2":"string"}" style="height: 29px; width: 67.7344px;">string</td><td style="height: 29px; width: 342.719px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"ref_no"}" style="height: 29px; width: 312.172px;">ref\_no</td><td data-sheets-value="{"1":2,"2":"int"}" style="height: 29px; width: 67.7344px;">int</td><td data-sheets-value="{"1":2,"2":"reference no"}" style="height: 29px; width: 342.719px;">reference no</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"glncode"}" style="height: 29px; width: 312.172px;">glncode</td><td data-sheets-value="{"1":2,"2":"int"}" style="height: 29px; width: 67.7344px;">int</td><td style="height: 29px; width: 342.719px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"lat"}" style="height: 29px; width: 312.172px;">lat</td><td data-sheets-value="{"1":2,"2":"int"}" style="height: 29px; width: 67.7344px;">int</td><td data-sheets-value="{"1":2,"2":"latitude"}" style="height: 29px; width: 342.719px;">latitude</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"long"}" style="height: 29px; width: 312.172px;">long</td><td data-sheets-value="{"1":2,"2":"int"}" style="height: 29px; width: 67.7344px;">int</td><td data-sheets-value="{"1":2,"2":"longitude"}" style="height: 29px; width: 342.719px;">longitude</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"credit_limit"}" style="height: 29px; width: 312.172px;">credit\_limit</td><td data-sheets-value="{"1":2,"2":"decimal"}" style="height: 29px; width: 67.7344px;">decimal</td><td style="height: 29px; width: 342.719px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"debt_min_amount"}" style="height: 29px; width: 312.172px;">debt\_min\_amount</td><td data-sheets-value="{"1":2,"2":"decimal"}" style="height: 29px; width: 67.7344px;">decimal</td><td style="height: 29px; width: 342.719px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"debt_from"}" style="height: 29px; width: 312.172px;">debt\_from</td><td data-sheets-value="{"1":2,"2":"int"}" style="height: 29px; width: 67.7344px;">int</td><td data-sheets-value="{"1":2,"2":"debt from days"}" style="height: 29px; width: 342.719px;">debt from days</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"owner_customer"}" style="height: 29px; width: 312.172px;">owner\_customer</td><td data-sheets-value="{"1":2,"2":"string"}" style="height: 29px; width: 67.7344px;">string</td><td style="height: 29px; width: 342.719px;"> </td></tr></tbody></table>

### Product data

**URL: *BASEURL***/product

Returns product data from Ladu20 database. Ladu20 defines all product information with prices, replacements, parameters, lots, images and price agreements. In addition, the current state of the products, ordered and reserved quantities.   
The price of the products ("price excluding VAT") is usually the main selling price. To classify products more easily, we have created groups of products. You can also add subgroups to item groups. For example product group1 no is 1 and, code V1 and description vegetables then subgroup for group1 may be V12(apples), V13 (citrus) etc.

##### Filter parameters

<table border="1" cellpadding="0" cellspacing="0" dir="ltr" id="bkmrk-parameter-name-type--0" style="height: 211px; width: 808px;"><colgroup><col width="235"></col><col width="51"></col><col width="258"></col></colgroup><tbody><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"PARAMETER NAME"}" style="height: 29px; width: 251.212px;">**PARAMETER NAME**</td><td data-sheets-value="{"1":2,"2":"TYPE"}" style="height: 29px; width: 54.5125px;">**TYPE**</td><td data-sheets-value="{"1":2,"2":"DESCRIPTION"}" style="height: 29px; width: 275.8px;">**DESCRIPTION**</td><td style="width: 225.675px; height: 29px;">**Default value**</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"last_update"}" style="height: 29px; width: 251.212px;">last\_update</td><td data-sheets-value="{"1":2,"2":"string"}" style="height: 29px; width: 54.5125px;">string</td><td data-sheets-value="{"1":2,"2":"format: 2023-10-11T00:00:00"}" style="height: 29px; width: 275.8px;">returns data which is update later than the timestamp;  
format: 2023-10-11T00:00:00</td><td style="width: 225.675px; height: 29px;">last 240 hours</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"old"}" style="height: 29px; width: 251.212px;">old</td><td data-sheets-value="{"1":2,"2":"bit"}" style="height: 29px; width: 54.5125px;">bool</td><td style="height: 29px; width: 275.8px;">returns results marked as old in Ladu20;</td><td style="width: 225.675px; height: 29px;">false</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"id"}" style="height: 29px; width: 251.212px;">id</td><td data-sheets-value="{"1":2,"2":"string"}" style="height: 29px; width: 54.5125px;">string</td><td data-sheets-value="{"1":2,"2":"customer id"}" style="height: 29px; width: 275.8px;">customer id in Ladu20</td><td style="width: 225.675px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"page"}" style="height: 29px; width: 251.212px;">page</td><td data-sheets-value="{"1":2,"2":"int"}" style="height: 29px; width: 54.5125px;">int</td><td data-sheets-value="{"1":2,"2":"1-n, default 1"}" style="height: 29px; width: 275.8px;">Range 1-n</td><td style="width: 225.675px; height: 29px;">1</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"rowcount"}" style="height: 29px; width: 251.212px;">rowcount</td><td data-sheets-value="{"1":2,"2":"int"}" style="height: 29px; width: 54.5125px;">int</td><td data-sheets-value="{"1":2,"2":"1-300, default 300"}" style="height: 29px; width: 275.8px;">Range 1-1000</td><td style="width: 225.675px; height: 29px;">300</td></tr><tr><td style="width: 251.212px;">group1</td><td style="width: 54.5125px;">string</td><td style="width: 275.8px;"> </td><td style="width: 225.675px;"> </td></tr><tr><td style="width: 251.212px;">group2</td><td style="width: 54.5125px;">string</td><td style="width: 275.8px;"> </td><td style="width: 225.675px;"> </td></tr><tr><td style="width: 251.212px;">group3</td><td style="width: 54.5125px;">string</td><td style="width: 275.8px;"> </td><td style="width: 225.675px;"> </td></tr><tr><td style="width: 251.212px;">group4</td><td style="width: 54.5125px;">string</td><td style="width: 275.8px;"> </td><td style="width: 225.675px;"> </td></tr></tbody></table>

##### Sample request data

'{"last\_update":"2023-10-11T00:00:00","rowcount":10,"page":4}'

##### Response data

<table border="1" cellpadding="0" cellspacing="0" dir="ltr" id="bkmrk-field-name-type-desc-0" style="width: 721px;"><colgroup><col width="235"></col><col width="51"></col><col width="258"></col></colgroup><tbody><tr><td data-sheets-value="{"1":2,"2":"FIELD NAME"}" style="width: 311.112px;">**FIELD NAME**</td><td data-sheets-value="{"1":2,"2":"TYPE"}" style="width: 67.5125px;">**TYPE**</td><td data-sheets-value="{"1":2,"2":"DESCRIPTION"}" style="width: 341.575px;">**DESCRIPTION**</td></tr><tr><td data-sheets-value="{"1":2,"2":"product_id"}" style="width: 311.112px;">product\_id</td><td data-sheets-value="{"1":2,"2":"int"}" style="width: 67.5125px;">int</td><td data-sheets-value="{"1":2,"2":"product code"}" style="width: 341.575px;">product code</td></tr><tr><td data-sheets-value="{"1":2,"2":"product_code"}" style="width: 311.112px;">product\_code</td><td data-sheets-value="{"1":2,"2":"int"}" style="width: 67.5125px;">int</td><td data-sheets-value="{"1":2,"2":"siffer"}" style="width: 341.575px;">siffer</td></tr><tr><td data-sheets-value="{"1":2,"2":"barcode"}" style="width: 311.112px;">barcode</td><td data-sheets-value="{"1":2,"2":"string"}" style="width: 67.5125px;">string</td><td style="width: 341.575px;"> </td></tr><tr><td data-sheets-value="{"1":2,"2":"product_name"}" style="width: 311.112px;">product\_name</td><td data-sheets-value="{"1":2,"2":"string"}" style="width: 67.5125px;">string</td><td style="width: 341.575px;"> </td></tr><tr><td data-sheets-value="{"1":2,"2":"baseunit"}" style="width: 311.112px;">baseunit</td><td data-sheets-value="{"1":2,"2":"string"}" style="width: 67.5125px;">string</td><td style="width: 341.575px;"> </td></tr><tr><td data-sheets-value="{"1":2,"2":"large_unit"}" style="width: 311.112px;">large\_unit</td><td data-sheets-value="{"1":2,"2":"string"}" style="width: 67.5125px;">string</td><td style="width: 341.575px;"> </td></tr><tr><td data-sheets-value="{"1":2,"2":"large_unit_multiplier"}" style="width: 311.112px;">large\_unit\_multiplier</td><td data-sheets-value="{"1":2,"2":"string"}" style="width: 67.5125px;">string</td><td style="width: 341.575px;"> </td></tr><tr><td data-sheets-value="{"1":2,"2":"aidunit"}" style="width: 311.112px;">aidunit</td><td data-sheets-value="{"1":2,"2":"string"}" style="width: 67.5125px;">string</td><td style="width: 341.575px;"> </td></tr><tr><td data-sheets-value="{"1":2,"2":"aidunit_multiplier"}" style="width: 311.112px;">aidunit\_multiplier</td><td data-sheets-value="{"1":2,"2":"string"}" style="width: 67.5125px;">string</td><td data-sheets-value="{"1":2,"2":"aidunits in one package"}" style="width: 341.575px;">aidunits in one package</td></tr><tr><td data-sheets-value="{"1":2,"2":"min_sales_qty"}" style="width: 311.112px;">min\_sales\_qty</td><td data-sheets-value="{"1":2,"2":"decimal"}" style="width: 67.5125px;">decimal</td><td data-sheets-value="{"1":2,"2":"minimum quantity on sale"}" style="width: 341.575px;">minimum quantity on sale</td></tr><tr><td data-sheets-value="{"1":2,"2":"sales_qty_step"}" style="width: 311.112px;">sales\_qty\_step</td><td data-sheets-value="{"1":2,"2":"decimal"}" style="width: 67.5125px;">decimal</td><td data-sheets-value="{"1":2,"2":"minimum quantity step on sale"}" style="width: 341.575px;">minimum quantity step on sale</td></tr><tr><td data-sheets-value="{"1":2,"2":"is_expireable"}" style="width: 311.112px;">is\_expireable</td><td data-sheets-value="{"1":2,"2":"boolean"}" style="width: 67.5125px;">boolean</td><td data-sheets-value="{"1":2,"2":"product is expirable or not (1,0)"}" style="width: 341.575px;">product is expirable or not (1,0)</td></tr><tr><td data-sheets-value="{"1":2,"2":"product_shelf_life"}" style="width: 311.112px;">product\_shelf\_life</td><td data-sheets-value="{"1":2,"2":"string"}" style="width: 67.5125px;">string</td><td style="width: 341.575px;"> </td></tr><tr><td data-sheets-value="{"1":2,"2":"cn8"}" style="width: 311.112px;">cn8</td><td data-sheets-value="{"1":2,"2":"string"}" style="width: 67.5125px;">string</td><td data-sheets-value="{"1":2,"2":"cn8 code"}" style="width: 341.575px;">cn8 code</td></tr><tr><td data-sheets-value="{"1":2,"2":"coo"}" style="width: 311.112px;">coo</td><td data-sheets-value="{"1":2,"2":"string"}" style="width: 67.5125px;">string</td><td data-sheets-value="{"1":2,"2":"country of origin"}" style="width: 341.575px;">country of origin</td></tr><tr><td data-sheets-value="{"1":2,"2":"min_temp"}" style="width: 311.112px;">min\_temp</td><td data-sheets-value="{"1":2,"2":"string"}" style="width: 67.5125px;">string</td><td data-sheets-value="{"1":2,"2":"minimum temperature"}" style="width: 341.575px;">minimum temperature</td></tr><tr><td data-sheets-value="{"1":2,"2":"max_temp"}" style="width: 311.112px;">max\_temp</td><td data-sheets-value="{"1":2,"2":"string"}" style="width: 67.5125px;">string</td><td data-sheets-value="{"1":2,"2":"maximum temperature"}" style="width: 341.575px;">maximum temperature</td></tr><tr><td data-sheets-value="{"1":2,"2":"stock_qty"}" style="width: 311.112px;">stock\_qty</td><td data-sheets-value="{"1":2,"2":"decimal"}" style="width: 67.5125px;">decimal</td><td data-sheets-value="{"1":2,"2":"stock quantity"}" style="width: 341.575px;">stock quantity</td></tr><tr><td data-sheets-value="{"1":2,"2":"ordered_qty"}" style="width: 311.112px;">ordered\_qty</td><td data-sheets-value="{"1":2,"2":"decimal"}" style="width: 67.5125px;">decimal</td><td data-sheets-value="{"1":2,"2":"ordered quantity"}" style="width: 341.575px;">ordered quantity</td></tr><tr><td data-sheets-value="{"1":2,"2":"reserved_qty"}" style="width: 311.112px;">reserved\_qty</td><td data-sheets-value="{"1":2,"2":"decimal"}" style="width: 67.5125px;">decimal</td><td data-sheets-value="{"1":2,"2":"reserved quantity"}" style="width: 341.575px;">reserved quantity</td></tr><tr><td data-sheets-value="{"1":2,"2":"netweight"}" style="width: 311.112px;">netweight</td><td data-sheets-value="{"1":2,"2":"int"}" style="width: 67.5125px;">int</td><td style="width: 341.575px;"> </td></tr><tr><td data-sheets-value="{"1":2,"2":"brutweight"}" style="width: 311.112px;">brutweight</td><td data-sheets-value="{"1":2,"2":"int"}" style="width: 67.5125px;">int</td><td style="width: 341.575px;"> </td></tr><tr><td data-sheets-value="{"1":2,"2":"volume"}" style="width: 311.112px;">volume</td><td data-sheets-value="{"1":2,"2":"int"}" style="width: 67.5125px;">int</td><td style="width: 341.575px;"> </td></tr><tr><td data-sheets-value="{"1":2,"2":"price"}" style="width: 311.112px;">price</td><td data-sheets-value="{"1":2,"2":"decimal"}" style="width: 67.5125px;">decimal</td><td style="width: 341.575px;"> </td></tr><tr><td data-sheets-value="{"1":2,"2":"vat"}" style="width: 311.112px;">vat</td><td data-sheets-value="{"1":2,"2":"int"}" style="width: 67.5125px;">int</td><td data-sheets-value="{"1":2,"2":"vat on sale"}" style="width: 341.575px;">vat on sale</td></tr><tr><td data-sheets-value="{"1":2,"2":"group1"}" style="width: 311.112px;">group1</td><td data-sheets-value="{"1":2,"2":"boolean"}" style="width: 67.5125px;">boolean</td><td data-sheets-value="{"1":2,"2":"product qroup"}" style="width: 341.575px;">product qroup</td></tr><tr><td data-sheets-value="{"1":2,"2":"group2"}" style="width: 311.112px;">group2</td><td data-sheets-value="{"1":2,"2":"boolean"}" style="width: 67.5125px;">boolean</td><td data-sheets-value="{"1":2,"2":"product qroup"}" style="width: 341.575px;">product qroup</td></tr><tr><td data-sheets-value="{"1":2,"2":"group3"}" style="width: 311.112px;">group3</td><td data-sheets-value="{"1":2,"2":"boolean"}" style="width: 67.5125px;">boolean</td><td data-sheets-value="{"1":2,"2":"product qroup"}" style="width: 341.575px;">product qroup</td></tr><tr><td data-sheets-value="{"1":2,"2":"group4"}" style="width: 311.112px;">group4</td><td data-sheets-value="{"1":2,"2":"boolean"}" style="width: 67.5125px;">boolean</td><td data-sheets-value="{"1":2,"2":"product qroup"}" style="width: 341.575px;">product qroup</td></tr><tr><td data-sheets-value="{"1":2,"2":"group5"}" style="width: 311.112px;">group5</td><td data-sheets-value="{"1":2,"2":"boolean"}" style="width: 67.5125px;">boolean</td><td data-sheets-value="{"1":2,"2":"product qroup"}" style="width: 341.575px;">product qroup</td></tr><tr><td data-sheets-value="{"1":2,"2":"last_update"}" style="width: 311.112px;">last\_update</td><td data-sheets-value="{"1":2,"2":"date"}" style="width: 67.5125px;">date</td><td data-sheets-value="{"1":2,"2":"format: 2023-10-11T00:00:00"}" style="width: 341.575px;">format: 2023-10-11T00:00:00</td></tr><tr><td data-sheets-value="{"1":2,"2":"web_groups/group_id"}" style="width: 311.112px;">web\_groups/group\_id</td><td data-sheets-value="{"1":2,"2":"int"}" style="width: 67.5125px;">int</td><td data-sheets-value="{"1":2,"2":"product webgroup id"}" style="width: 341.575px;">product webgroup id</td></tr><tr><td data-sheets-value="{"1":2,"2":"web_groups/group_code"}" style="width: 311.112px;">web\_groups/group\_code</td><td data-sheets-value="{"1":2,"2":"int"}" style="width: 67.5125px;">int</td><td data-sheets-value="{"1":2,"2":"product group id"}" style="width: 341.575px;">product group id</td></tr><tr><td data-sheets-value="{"1":2,"2":"web_groups/group_name"}" style="width: 311.112px;">web\_groups/group\_name</td><td data-sheets-value="{"1":2,"2":"string"}" style="width: 67.5125px;">string</td><td data-sheets-value="{"1":2,"2":"product group name"}" style="width: 341.575px;">product group name</td></tr><tr><td data-sheets-value="{"1":2,"2":"flex_groups/group_id"}" style="width: 311.112px;">flex\_groups/group\_id</td><td data-sheets-value="{"1":2,"2":"int"}" style="width: 67.5125px;">int</td><td data-sheets-value="{"1":2,"2":"product webgroup id"}" style="width: 341.575px;">product webgroup id</td></tr><tr><td data-sheets-value="{"1":2,"2":"flex_groups/group_code"}" style="width: 311.112px;">flex\_groups/group\_code</td><td data-sheets-value="{"1":2,"2":"int"}" style="width: 67.5125px;">int</td><td data-sheets-value="{"1":2,"2":"product group id"}" style="width: 341.575px;">product group id</td></tr><tr><td data-sheets-value="{"1":2,"2":"flex_groups/group_name"}" style="width: 311.112px;">flex\_groups/group\_name</td><td data-sheets-value="{"1":2,"2":"string"}" style="width: 67.5125px;">string</td><td data-sheets-value="{"1":2,"2":"product group name"}" style="width: 341.575px;">product group name</td></tr></tbody></table>

### Stockbalance

**URL: *BASEURL***/stockbalance

Returns stockbalance data from Ladu20 database - product amounts in different warehouses (balance, ordered, reserved). Owner is usually main warehouse.

Filter parameters

<table border="1" cellpadding="0" cellspacing="0" dir="ltr" id="bkmrk-parameter-name-type--1" style="height: 211px; width: 808px;"><colgroup><col width="235"></col><col width="51"></col><col width="258"></col></colgroup><tbody><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"PARAMETER NAME"}" style="height: 29px; width: 251.212px;">**PARAMETER NAME**</td><td data-sheets-value="{"1":2,"2":"TYPE"}" style="height: 29px; width: 54.5125px;">**TYPE**</td><td data-sheets-value="{"1":2,"2":"DESCRIPTION"}" style="height: 29px; width: 275.8px;">**DESCRIPTION**</td><td style="width: 225.675px; height: 29px;">**Default value**</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"page"}" style="height: 29px; width: 251.212px;">id</td><td data-sheets-value="{"1":2,"2":"int"}" style="height: 29px; width: 54.5125px;">int</td><td data-sheets-value="{"1":2,"2":"1-n, default 1"}" style="height: 29px; width: 275.8px;"> id</td><td style="width: 225.675px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"rowcount"}" style="height: 29px; width: 251.212px;">page</td><td data-sheets-value="{"1":2,"2":"int"}" style="height: 29px; width: 54.5125px;">int</td><td data-sheets-value="{"1":2,"2":"1-300, default 300"}" style="height: 29px; width: 275.8px;">Range 1-n</td><td style="width: 225.675px; height: 29px;">1</td></tr><tr><td style="width: 251.212px;">rowcount</td><td style="width: 54.5125px;">int</td><td style="width: 275.8px;">Range 1-1000</td><td style="width: 225.675px;">300</td></tr></tbody></table>

##### Sample request data

'{"last\_update":"2023-10-11T00:00:00","rowcount":10,"page":4}'

##### Response data

<table border="1" cellpadding="0" cellspacing="0" dir="ltr" id="bkmrk-field-name-type-desc-1" style="width: 80.8333%;"><colgroup><col style="width: 34.6608%;" width="235"></col><col style="width: 15.7695%;" width="51"></col><col style="width: 49.5697%;" width="392"></col></colgroup><tbody><tr><td data-sheets-value="{"1":2,"2":"FIELD NAME"}">**FIELD NAME**</td><td data-sheets-value="{"1":2,"2":"TYPE"}">**TYPE**</td><td data-sheets-value="{"1":2,"2":"DESCRIPTION"}">**DESCRIPTION**</td></tr><tr><td data-sheets-value="{"1":2,"2":"product_id"}">product\_id</td><td data-sheets-value="{"1":2,"2":"int"}">int</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"product_code"}">product\_code</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td>siffer</td></tr><tr><td data-sheets-value="{"1":2,"2":"stock_balance"}">stock\_balance</td><td data-sheets-value="{"1":2,"2":"decimal"}">decimal</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"ordered_amount"}">ordered\_amount</td><td data-sheets-value="{"1":2,"2":"decimal"}">decimal</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"reserved_amount"}">reserved\_amount</td><td data-sheets-value="{"1":2,"2":"decimal"}">decimal</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"product_id"}">product\_id</td><td data-sheets-value="{"1":2,"2":"int"}">int</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"rows/owner"}">rows/owner</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"rows/owner_stock_balance"}">rows/owner\_stock\_balance</td><td data-sheets-value="{"1":2,"2":"decimal"}">decimal</td><td> </td></tr></tbody></table>

<span style="color: #222222; font-size: 2.333em; font-weight: 400;">Order</span>

**URL: *BASEURL***/order

Returns order data from Ladu20 database. Order = sales order, which is in most cases, the primary document for the sales side for the warehouse.

##### Filter parameters

<table border="1" cellpadding="0" cellspacing="0" dir="ltr" id="bkmrk-parameter-name-type--2" style="height: 203px; width: 808px;"><colgroup><col width="235"></col><col width="51"></col><col width="258"></col></colgroup><tbody><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"PARAMETER NAME"}" style="height: 29px; width: 246.45px;">**PARAMETER NAME**</td><td data-sheets-value="{"1":2,"2":"TYPE"}" style="height: 29px; width: 53.475px;">**TYPE**</td><td data-sheets-value="{"1":2,"2":"DESCRIPTION"}" style="height: 29px; width: 270.575px;">**DESCRIPTION**</td><td style="width: 236.7px; height: 29px;">**Default value**</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"last_update"}" style="height: 29px; width: 246.45px;">start</td><td data-sheets-value="{"1":2,"2":"string"}" style="height: 29px; width: 53.475px;">string</td><td data-sheets-value="{"1":2,"2":"format: 2023-10-11T00:00:00"}" style="height: 29px; width: 270.575px;">date from,   
format: 2023-10-11T00:00:00</td><td style="width: 236.7px; height: 29px;">l</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"old"}" style="height: 29px; width: 246.45px;">id</td><td data-sheets-value="{"1":2,"2":"bit"}" style="height: 29px; width: 53.475px;">int</td><td style="height: 29px; width: 270.575px;">order id</td><td style="width: 236.7px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"id"}" style="height: 29px; width: 246.45px;">end</td><td data-sheets-value="{"1":2,"2":"string"}" style="height: 29px; width: 53.475px;">date</td><td data-sheets-value="{"1":2,"2":"customer id"}" style="height: 29px; width: 270.575px;">date until, format: 2023-10-11T00:00:00</td><td style="width: 236.7px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"page"}" style="height: 29px; width: 246.45px;">customer\_id</td><td data-sheets-value="{"1":2,"2":"int"}" style="height: 29px; width: 53.475px;">string</td><td data-sheets-value="{"1":2,"2":"1-n, default 1"}" style="height: 29px; width: 270.575px;">customer code</td><td style="width: 236.7px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"rowcount"}" style="height: 29px; width: 246.45px;">page</td><td data-sheets-value="{"1":2,"2":"int"}" style="height: 29px; width: 53.475px;">int</td><td data-sheets-value="{"1":2,"2":"1-300, default 300"}" style="height: 29px; width: 270.575px;">Range 1-n</td><td style="width: 236.7px; height: 29px;">1</td></tr><tr style="height: 29px;"><td style="width: 246.45px; height: 29px;">rowcount</td><td style="width: 53.475px; height: 29px;">int</td><td style="width: 270.575px; height: 29px;">Range 1-1000</td><td style="width: 236.7px; height: 29px;">300</td></tr></tbody></table>

##### Sample request data

'{"last\_update":"2023-10-11T00:00:00","rowcount":10,"page":4}'

##### Response data

<table border="1" cellpadding="0" cellspacing="0" dir="ltr" id="bkmrk-field-name-type-desc-2" style="width: 80.8333%;"><colgroup><col style="width: 34.6608%;" width="235"></col><col style="width: 18.4205%;" width="51"></col><col style="width: 46.9187%;" width="392"></col></colgroup><tbody><tr><td data-sheets-value="{"1":2,"2":"FIELD NAME"}">**FIELD NAME**</td><td data-sheets-value="{"1":2,"2":"TYPE"}">**TYPE**</td><td data-sheets-value="{"1":2,"2":"DESCRIPTION"}">**DESCRIPTION**</td></tr><tr><td data-sheets-value="{"1":2,"2":"customer_code"}">customer\_code</td><td data-sheets-value="{"1":2,"2":"int"}">int</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"doc_no"}">doc\_no</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td data-sheets-value="{"1":2,"2":"order no"}">order no</td></tr><tr><td data-sheets-value="{"1":2,"2":"doc_date"}">doc\_date</td><td data-sheets-value="{"1":2,"2":"date"}">date</td><td data-sheets-value="{"1":2,"2":"order date, format: 2023-10-11T00:00:00"}">order date, format: 2023-10-11T00:00:00</td></tr><tr><td data-sheets-value="{"1":2,"2":"del_due"}">del\_due</td><td data-sheets-value="{"1":2,"2":"date"}">date</td><td data-sheets-value="{"1":2,"2":"delivery date, format: 2023-10-11T00:00:00"}">delivery date, format: 2023-10-11T00:00:00</td></tr><tr><td data-sheets-value="{"1":2,"2":"status"}">status</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td data-sheets-value="{"1":2,"2":"order status"}">order status</td></tr><tr><td data-sheets-value="{"1":2,"2":"additional_info"}">additional\_info</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"inserter"}">inserter</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"dicount_per"}">dicount\_per</td><td data-sheets-value="{"1":2,"2":"decimal"}">decimal</td><td data-sheets-value="{"1":2,"2":"discount percent"}">discount percent</td></tr><tr><td data-sheets-value="{"1":2,"2":"doc_no2"}">doc\_no2</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td data-sheets-value="{"1":2,"2":"customer order no"}">customer order no</td></tr><tr><td data-sheets-value="{"1":2,"2":"confirmed"}">confirmed</td><td data-sheets-value="{"1":2,"2":"boolean"}">boolean</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"currency"}">currency</td><td data-sheets-value="{"1":2,"2":"decimal"}">decimal</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"currency_rate"}">currency\_rate</td><td data-sheets-value="{"1":2,"2":"decimal"}">decimal</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"customer_date"}">customer\_date</td><td data-sheets-value="{"1":2,"2":"date"}">date</td><td data-sheets-value="{"1":2,"2":"format: 2023-10-11T00:00:00"}">format: 2023-10-11T00:00:00</td></tr><tr><td data-sheets-value="{"1":2,"2":"pre_order"}">pre\_order</td><td data-sheets-value="{"1":2,"2":"boolean"}">boolean</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"payer"}">payer</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td data-sheets-value="{"1":2,"2":"payer customer"}">payer customer</td></tr><tr><td data-sheets-value="{"1":2,"2":"warning"}">warning</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"xml_done"}">xml\_done</td><td data-sheets-value="{"1":2,"2":"boolean"}">boolean</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"owner"}">owner</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"customer"}">customer</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td data-sheets-value="{"1":2,"2":"customer who placed the order"}">customer who placed the order</td></tr><tr><td data-sheets-value="{"1":2,"2":"phone"}">phone</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td data-sheets-value="{"1":2,"2":"customer phone no"}">customer phone no</td></tr><tr><td data-sheets-value="{"1":2,"2":"country"}">country</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td data-sheets-value="{"1":2,"2":"customer country"}">customer country</td></tr><tr><td data-sheets-value="{"1":2,"2":"picking_in_prog"}">picking\_in\_prog</td><td data-sheets-value="{"1":2,"2":"boolean"}">boolean</td><td data-sheets-value="{"1":2,"2":"picking in progress"}">picking in progress</td></tr><tr><td data-sheets-value="{"1":2,"2":"payment_due"}">payment\_due</td><td data-sheets-value="{"1":2,"2":"date"}">date</td><td data-sheets-value="{"1":2,"2":"format: 2023-10-11T00:00:00"}">format: 2023-10-11T00:00:00</td></tr><tr><td data-sheets-value="{"1":2,"2":"payment_type"}">payment\_type</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td data-sheets-value="{"1":2,"2":"cash, transfer etc"}">cash, transfer etc</td></tr><tr><td data-sheets-value="{"1":2,"2":"weborder_id"}">weborder\_id</td><td data-sheets-value="{"1":2,"2":"int"}">int</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"customer_name"}">customer\_name</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td data-sheets-value="{"1":2,"2":"customer contact who placed the order"}">customer contact who placed the order</td></tr><tr><td data-sheets-value="{"1":2,"2":"doc_sum"}">doc\_sum</td><td data-sheets-value="{"1":2,"2":"decimal"}">decimal</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"recip_customer"}">recip\_customer</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td data-sheets-value="{"1":2,"2":"recipient customer"}">recipient customer</td></tr><tr><td data-sheets-value="{"1":2,"2":"original_quantity"}">original\_quantity</td><td data-sheets-value="{"1":2,"2":"decimal"}">decimal</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"quantity"}">quantity</td><td data-sheets-value="{"1":2,"2":"decimal"}">decimal</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"price"}">price</td><td data-sheets-value="{"1":2,"2":"decimal"}">decimal</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"baseprice"}">baseprice</td><td data-sheets-value="{"1":2,"2":"decimal"}">decimal</td><td> </td></tr></tbody></table>

### Dispatch

**URL: *BASEURL***/dispatch

Returns order data from Ladu20 database - dispatch of the products from Ladu20 warehouses.

##### Filter parameters

<table border="1" cellpadding="0" cellspacing="0" dir="ltr" id="bkmrk-parameter-name-type--3" style="height: 203px; width: 767px;"><colgroup><col style="width: 241px;" width="235"></col><col style="width: 64px;" width="51"></col><col style="width: 252px;" width="258"></col></colgroup><tbody><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"PARAMETER NAME"}" style="height: 29px; width: 242.663px;">**PARAMETER NAME**</td><td data-sheets-value="{"1":2,"2":"TYPE"}" style="height: 29px; width: 52.6625px;">**TYPE**</td><td data-sheets-value="{"1":2,"2":"DESCRIPTION"}" style="height: 29px; width: 266.413px;">**DESCRIPTION**</td><td style="width: 204.462px; height: 29px;">**Default value**</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"last_update"}" style="height: 29px; width: 242.663px;">start</td><td data-sheets-value="{"1":2,"2":"string"}" style="height: 29px; width: 52.6625px;">string</td><td data-sheets-value="{"1":2,"2":"format: 2023-10-11T00:00:00"}" style="height: 29px; width: 266.413px;">date from,   
format: 2023-10-11T00:00:00</td><td style="width: 204.462px; height: 29px;">l</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"old"}" style="height: 29px; width: 242.663px;">id</td><td data-sheets-value="{"1":2,"2":"bit"}" style="height: 29px; width: 52.6625px;">int</td><td style="height: 29px; width: 266.413px;">dispatch id</td><td style="width: 204.462px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"id"}" style="height: 29px; width: 242.663px;">end</td><td data-sheets-value="{"1":2,"2":"string"}" style="height: 29px; width: 52.6625px;">date</td><td data-sheets-value="{"1":2,"2":"customer id"}" style="height: 29px; width: 266.413px;">date until, format: 2023-10-11T00:00:00</td><td style="width: 204.462px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"page"}" style="height: 29px; width: 242.663px;">customer\_id</td><td data-sheets-value="{"1":2,"2":"int"}" style="height: 29px; width: 52.6625px;">string</td><td data-sheets-value="{"1":2,"2":"1-n, default 1"}" style="height: 29px; width: 266.413px;">customer code</td><td style="width: 204.462px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"rowcount"}" style="height: 29px; width: 242.663px;">page</td><td data-sheets-value="{"1":2,"2":"int"}" style="height: 29px; width: 52.6625px;">int</td><td data-sheets-value="{"1":2,"2":"1-300, default 300"}" style="height: 29px; width: 266.413px;">Range 1-n</td><td style="width: 204.462px; height: 29px;">1</td></tr><tr style="height: 29px;"><td style="width: 242.663px; height: 29px;">rowcount</td><td style="width: 52.6625px; height: 29px;">int</td><td style="width: 266.413px; height: 29px;">Range 1-1000</td><td style="width: 204.462px; height: 29px;">300</td></tr></tbody></table>

##### Sample request data

'{"last\_update":"2023-10-11T00:00:00","rowcount":10,"page":4}'

##### Response data

<table border="1" cellpadding="0" cellspacing="0" dir="ltr" id="bkmrk-field-name-type-desc-3" style="width: 80.8333%;"><colgroup><col style="width: 34.6608%;" width="235"></col><col style="width: 11.204%;" width="51"></col><col style="width: 54.1352%;" width="392"></col></colgroup><tbody><tr><td data-sheets-value="{"1":2,"2":"FIELD NAME"}">**FIELD NAME**</td><td data-sheets-value="{"1":2,"2":"TYPE"}">**TYPE**</td><td data-sheets-value="{"1":2,"2":"DESCRIPTION"}">**DESCRIPTION**</td></tr><tr><td data-sheets-value="{"1":2,"2":"dispatch_code"}">dispatch\_code</td><td data-sheets-value="{"1":2,"2":"int"}">int</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"customer_id"}">customer\_id</td><td data-sheets-value="{"1":2,"2":"int"}">int</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"dispatch_type_id"}">dispatch\_type\_id</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"date"}">date</td><td data-sheets-value="{"1":2,"2":"date"}">date</td><td data-sheets-value="{"1":2,"2":"format: 2023-10-11T00:00:00"}">format: 2023-10-11T00:00:00</td></tr><tr><td data-sheets-value="{"1":2,"2":"doc_no"}">doc\_no</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td data-sheets-value="{"1":2,"2":"dispatch document no"}">dispatch document no</td></tr><tr><td data-sheets-value="{"1":2,"2":"discount_per"}">discount\_per</td><td data-sheets-value="{"1":2,"2":"int"}">int</td><td data-sheets-value="{"1":2,"2":"discount percent"}">discount percent</td></tr><tr><td data-sheets-value="{"1":2,"2":"inserter"}">inserter</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"sum_net"}">sum\_net</td><td data-sheets-value="{"1":2,"2":"decimal"}">decimal</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"sum_incl_vat"}">sum\_incl\_vat</td><td data-sheets-value="{"1":2,"2":"decimal"}">decimal</td><td data-sheets-value="{"1":2,"2":"sum including vat"}">sum including vat</td></tr><tr><td data-sheets-value="{"1":2,"2":"due"}">due</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td data-sheets-value="{"1":2,"2":"payment due"}">payment due</td></tr><tr><td data-sheets-value="{"1":2,"2":"payer"}">payer</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td data-sheets-value="{"1":2,"2":"payer customer"}">payer customer</td></tr><tr><td data-sheets-value="{"1":2,"2":"additional_info"}">additional\_info</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"currency"}">currency</td><td data-sheets-value="{"1":2,"2":"decimal"}">decimal</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"payment_type"}">payment\_type</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td data-sheets-value="{"1":2,"2":"cash, transfer etc"}">cash, transfer etc</td></tr><tr><td data-sheets-value="{"1":2,"2":"warehouse_aadress"}">warehouse\_aadress</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"account"}">account</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td data-sheets-value="{"1":2,"2":"bank account"}">bank account</td></tr><tr><td data-sheets-value="{"1":2,"2":"country"}">country</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"rec_customer"}">rec\_customer</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td data-sheets-value="{"1":2,"2":"recipient customer"}">recipient customer</td></tr><tr><td data-sheets-value="{"1":2,"2":"needed_due"}">needed\_due</td><td data-sheets-value="{"1":2,"2":"date"}">date</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"owner"}">owner</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"ship_customer"}">ship\_customer</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"tracking_no"}">tracking\_no</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"paid"}">paid</td><td data-sheets-value="{"1":2,"2":"decimal"}">decimal</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"amount_of_boxes"}">amount\_of\_boxes</td><td data-sheets-value="{"1":2,"2":"decimal"}">decimal</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"product_id"}">product\_id</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"batch"}">batch</td><td data-sheets-value="{"1":2,"2":"int"}">int</td><td data-sheets-value="{"1":2,"2":"batch code"}">batch code</td></tr><tr><td data-sheets-value="{"1":2,"2":"amount"}">amount</td><td data-sheets-value="{"1":2,"2":"decimal"}">decimal</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"discount_per"}">discount\_per</td><td data-sheets-value="{"1":2,"2":"int"}">int</td><td data-sheets-value="{"1":2,"2":"discount percent"}">discount percent</td></tr><tr><td data-sheets-value="{"1":2,"2":"price"}">price</td><td data-sheets-value="{"1":2,"2":"decimal"}">decimal</td><td data-sheets-value="{"1":2,"2":"product price"}">product price</td></tr><tr><td data-sheets-value="{"1":2,"2":"net_value"}">net\_value</td><td data-sheets-value="{"1":2,"2":"int"}">int</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"discount_price"}">discount\_price</td><td data-sheets-value="{"1":2,"2":"decimal"}">decimal</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"base_price"}">base\_price</td><td data-sheets-value="{"1":2,"2":"decimal"}">decimal</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"brut_weight"}">brut\_weight</td><td data-sheets-value="{"1":2,"2":"int"}">int</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"set"}">set</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td data-sheets-value="{"1":2,"2":"set of products"}">set of products</td></tr><tr><td data-sheets-value="{"1":2,"2":"account"}">account</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td data-sheets-value="{"1":2,"2":"bank account"}">bank account</td></tr><tr><td data-sheets-value="{"1":2,"2":"row_amount"}">row\_amount</td><td data-sheets-value="{"1":2,"2":"decimal"}">decimal</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"stockaddress"}">stockaddress</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"set_amount"}">set\_amount</td><td data-sheets-value="{"1":2,"2":"decimal"}">decimal</td><td data-sheets-value="{"1":2,"2":"how many products in set"}">how many products in set</td></tr><tr><td data-sheets-value="{"1":2,"2":"pieces"}">pieces</td><td data-sheets-value="{"1":2,"2":"int"}">int</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"warning"}">warning</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"sales_id"}">sales\_id</td><td data-sheets-value="{"1":2,"2":"int"}">int</td><td data-sheets-value="{"1":2,"2":"saleorder id"}">saleorder id</td></tr><tr><td data-sheets-value="{"1":2,"2":"pricelist_id"}">pricelist\_id</td><td data-sheets-value="{"1":2,"2":"int"}">int</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"price_type"}">price\_type</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"vat_sale"}">vat\_sale</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"fix_net_value"}">fix\_net\_value</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"warehouse_agent"}">warehouse\_agent</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td data-sheets-value="{"1":2,"2":"warehouse agent name"}">warehouse agent name</td></tr><tr><td data-sheets-value="{"1":2,"2":"added"}">added</td><td data-sheets-value="{"1":2,"2":"boolean"}">boolean</td><td data-sheets-value="{"1":2,"2":"dispatch added (1,0)"}">dispatch added (1,0)</td></tr><tr><td data-sheets-value="{"1":2,"2":"package_id"}">package\_id</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"picker"}">picker</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td data-sheets-value="{"1":2,"2":"warehouse agent who picked products"}">warehouse agent who picked products</td></tr><tr><td data-sheets-value="{"1":2,"2":"agent"}">agent</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td data-sheets-value="{"1":2,"2":"agent on sale"}">agent on sale</td></tr><tr><td data-sheets-value="{"1":2,"2":"base_code"}">base\_code</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"batch_id"}">batch\_id</td><td data-sheets-value="{"1":2,"2":"int"}">int</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"description"}">description</td><td data-sheets-value="{"1":2,"2":"string"}">string</td><td> </td></tr><tr><td data-sheets-value="{"1":2,"2":"expiration_date"}">expiration\_date</td><td data-sheets-value="{"1":2,"2":"date"}">date</td><td data-sheets-value="{"1":2,"2":"format: 2023-10-11T00:00:00"}">format: 2023-10-11T00:00:00</td></tr></tbody></table>

### Invoice

**URL: *BASEURL***/invoice

Returns invoice data from Ladu20 database. Invoices are accounting outputs from dispatches.

##### Filter parameters

<table border="1" cellpadding="0" cellspacing="0" dir="ltr" id="bkmrk-parameter-name-type--4" style="height: 211px; width: 808px;"><colgroup><col width="235"></col><col width="51"></col><col width="258"></col></colgroup><tbody><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"PARAMETER NAME"}" style="height: 29px; width: 251.212px;">**PARAMETER NAME**</td><td data-sheets-value="{"1":2,"2":"TYPE"}" style="height: 29px; width: 54.5125px;">**TYPE**</td><td data-sheets-value="{"1":2,"2":"DESCRIPTION"}" style="height: 29px; width: 275.8px;">**DESCRIPTION**</td><td style="width: 225.675px; height: 29px;">**Default value**</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"last_update"}" style="height: 29px; width: 251.212px;">last\_update</td><td data-sheets-value="{"1":2,"2":"string"}" style="height: 29px; width: 54.5125px;">string</td><td data-sheets-value="{"1":2,"2":"format: 2023-10-11T00:00:00"}" style="height: 29px; width: 275.8px;">returns data which is update later than the timestamp;  
format: 2023-10-11T00:00:00</td><td style="width: 225.675px; height: 29px;">last 240 hours</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"old"}" style="height: 29px; width: 251.212px;">end</td><td data-sheets-value="{"1":2,"2":"bit"}" style="height: 29px; width: 54.5125px;">date</td><td style="height: 29px; width: 275.8px;">format: 2023-10-11T00:00:00</td><td style="width: 225.675px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"id"}" style="height: 29px; width: 251.212px;">customer\_id</td><td data-sheets-value="{"1":2,"2":"string"}" style="height: 29px; width: 54.5125px;">string</td><td data-sheets-value="{"1":2,"2":"customer id"}" style="height: 29px; width: 275.8px;">customer code</td><td style="width: 225.675px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"page"}" style="height: 29px; width: 251.212px;">id</td><td data-sheets-value="{"1":2,"2":"int"}" style="height: 29px; width: 54.5125px;">int</td><td data-sheets-value="{"1":2,"2":"1-n, default 1"}" style="height: 29px; width: 275.8px;">invoice id</td><td style="width: 225.675px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"rowcount"}" style="height: 29px; width: 251.212px;">page</td><td data-sheets-value="{"1":2,"2":"int"}" style="height: 29px; width: 54.5125px;">int</td><td data-sheets-value="{"1":2,"2":"1-300, default 300"}" style="height: 29px; width: 275.8px;">Range 1-n</td><td style="width: 225.675px; height: 29px;">1</td></tr><tr><td style="width: 251.212px;">rowcount</td><td style="width: 54.5125px;">int</td><td style="width: 275.8px;">Range 1-1000</td><td style="width: 225.675px;">300</td></tr></tbody></table>

##### Sample request data

'{"last\_update":"2023-10-11T00:00:00","rowcount":10,"page":4}'

##### Response data

<table border="1" cellpadding="0" cellspacing="0" dir="ltr" id="bkmrk-field-name-type-desc-4" style="width: 721px; height: 1199px;"><colgroup><col width="235"></col><col width="51"></col><col width="258"></col></colgroup><tbody><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"FIELD NAME"}" style="width: 311.112px; height: 29px;">**FIELD NAME**</td><td data-sheets-value="{"1":2,"2":"TYPE"}" style="width: 67.5125px; height: 29px;">**TYPE**</td><td data-sheets-value="{"1":2,"2":"DESCRIPTION"}" style="width: 341.575px; height: 29px;">**DESCRIPTION**</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"customer_code"}" style="width: 311.112px; height: 29px;">customer\_code</td><td data-sheets-value="{"1":2,"2":"int"}" style="width: 67.5125px; height: 29px;">int</td><td style="width: 341.575px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"invoice_date"}" style="width: 311.112px; height: 29px;">invoice\_date</td><td data-sheets-value="{"1":2,"2":"date"}" style="width: 67.5125px; height: 29px;">date</td><td data-sheets-value="{"1":2,"2":"invoice (document created) date"}" style="width: 341.575px; height: 29px;">invoice (document created) date</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"invoice_no"}" style="width: 311.112px; height: 29px;">invoice\_no</td><td data-sheets-value="{"1":2,"2":"string"}" style="width: 67.5125px; height: 29px;">string</td><td data-sheets-value="{"1":2,"2":"invoice number"}" style="width: 341.575px; height: 29px;">invoice number</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"total"}" style="width: 311.112px; height: 29px;">total</td><td data-sheets-value="{"1":2,"2":"decimal"}" style="width: 67.5125px; height: 29px;">decimal</td><td data-sheets-value="{"1":2,"2":"total sum"}" style="width: 341.575px; height: 29px;">total sum</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"paid"}" style="width: 311.112px; height: 29px;">paid</td><td data-sheets-value="{"1":2,"2":"decimal"}" style="width: 67.5125px; height: 29px;">decimal</td><td style="width: 341.575px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"paid_date"}" style="width: 311.112px; height: 29px;">paid\_date</td><td data-sheets-value="{"1":2,"2":"date"}" style="width: 67.5125px; height: 29px;">date</td><td data-sheets-value="{"1":2,"2":"format: 2023-10-11T00:00:00"}" style="width: 341.575px; height: 29px;">format: 2023-10-11T00:00:00</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"fine_for_delay"}" style="width: 311.112px; height: 29px;">fine\_for\_delay</td><td data-sheets-value="{"1":2,"2":"String"}" style="width: 67.5125px; height: 29px;">String</td><td style="width: 341.575px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"deadline"}" style="width: 311.112px; height: 29px;">deadline</td><td data-sheets-value="{"1":2,"2":"date"}" style="width: 67.5125px; height: 29px;">date</td><td data-sheets-value="{"1":2,"2":"format: 2023-10-11T00:00:00"}" style="width: 341.575px; height: 29px;">format: 2023-10-11T00:00:00</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"paym_meth"}" style="width: 311.112px; height: 29px;">paym\_meth</td><td data-sheets-value="{"1":2,"2":"string"}" style="width: 67.5125px; height: 29px;">string</td><td data-sheets-value="{"1":2,"2":"payment method"}" style="width: 341.575px; height: 29px;">payment method</td></tr><tr style="height: 46px;"><td data-sheets-value="{"1":2,"2":"printed"}" style="width: 311.112px; height: 46px;">printed</td><td data-sheets-value="{"1":2,"2":"boolean"}" style="width: 67.5125px; height: 46px;">boolean</td><td style="width: 341.575px; height: 46px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"post_date"}" style="width: 311.112px; height: 29px;">post\_date</td><td data-sheets-value="{"1":2,"2":"date"}" style="width: 67.5125px; height: 29px;">date</td><td data-sheets-value="{"1":2,"2":"format: 2023-10-11T00:00:00"}" style="width: 341.575px; height: 29px;">format: 2023-10-11T00:00:00</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"partial"}" style="width: 311.112px; height: 29px;">partial</td><td data-sheets-value="{"1":2,"2":"string"}" style="width: 67.5125px; height: 29px;">string</td><td data-sheets-value="{"1":2,"2":"partial payment"}" style="width: 341.575px; height: 29px;">partial payment</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"cred_invoice_no"}" style="width: 311.112px; height: 29px;">cred\_invoice\_no</td><td data-sheets-value="{"1":2,"2":"string"}" style="width: 67.5125px; height: 29px;">string</td><td data-sheets-value="{"1":2,"2":"credit invoice no"}" style="width: 341.575px; height: 29px;">credit invoice no</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"from_stock"}" style="width: 311.112px; height: 29px;">from\_stock</td><td data-sheets-value="{"1":2,"2":"string"}" style="width: 67.5125px; height: 29px;">string</td><td data-sheets-value="{"1":2,"2":"sent out from stock"}" style="width: 341.575px; height: 29px;">sent out from stock</td></tr><tr style="height: 46px;"><td data-sheets-value="{"1":2,"2":"report_done"}" style="width: 311.112px; height: 46px;">report\_done</td><td data-sheets-value="{"1":2,"2":"boolean"}" style="width: 67.5125px; height: 46px;">boolean</td><td style="width: 341.575px; height: 46px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"warning"}" style="width: 311.112px; height: 29px;">warning</td><td data-sheets-value="{"1":2,"2":"string"}" style="width: 67.5125px; height: 29px;">string</td><td style="width: 341.575px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"owner"}" style="width: 311.112px; height: 29px;">owner</td><td data-sheets-value="{"1":2,"2":"string"}" style="width: 67.5125px; height: 29px;">string</td><td style="width: 341.575px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"ref_no"}" style="width: 311.112px; height: 29px;">ref\_no</td><td data-sheets-value="{"1":2,"2":"string"}" style="width: 67.5125px; height: 29px;">string</td><td data-sheets-value="{"1":2,"2":"reference no"}" style="width: 341.575px; height: 29px;">reference no</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"add_info"}" style="width: 311.112px; height: 29px;">add\_info</td><td data-sheets-value="{"1":2,"2":"string"}" style="width: 67.5125px; height: 29px;">string</td><td data-sheets-value="{"1":2,"2":"additional information"}" style="width: 341.575px; height: 29px;">additional information</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"prepaym_amount"}" style="width: 311.112px; height: 29px;">prepaym\_amount</td><td data-sheets-value="{"1":2,"2":"decimal"}" style="width: 67.5125px; height: 29px;">decimal</td><td style="width: 341.575px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"prepaym_info"}" style="width: 311.112px; height: 29px;">prepaym\_info</td><td data-sheets-value="{"1":2,"2":"string"}" style="width: 67.5125px; height: 29px;">string</td><td style="width: 341.575px; height: 29px;"> </td></tr><tr style="height: 46px;"><td data-sheets-value="{"1":2,"2":"returned"}" style="width: 311.112px; height: 46px;">returned</td><td data-sheets-value="{"1":2,"2":"boolean"}" style="width: 67.5125px; height: 46px;">boolean</td><td style="width: 341.575px; height: 46px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"product_id"}" style="width: 311.112px; height: 29px;">product\_id</td><td data-sheets-value="{"1":2,"2":"long"}" style="width: 67.5125px; height: 29px;">long</td><td style="width: 341.575px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"batch"}" style="width: 311.112px; height: 29px;">batch</td><td data-sheets-value="{"1":2,"2":"long"}" style="width: 67.5125px; height: 29px;">long</td><td data-sheets-value="{"1":2,"2":"products batch"}" style="width: 341.575px; height: 29px;">products batch</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"amount"}" style="width: 311.112px; height: 29px;">amount</td><td data-sheets-value="{"1":2,"2":"decimal"}" style="width: 67.5125px; height: 29px;">decimal</td><td style="width: 341.575px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"discount_percent"}" style="width: 311.112px; height: 29px;">discount\_percent</td><td data-sheets-value="{"1":2,"2":"int"}" style="width: 67.5125px; height: 29px;">int</td><td data-sheets-value="{"1":2,"2":"%"}" style="width: 341.575px; height: 29px;">%</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"price"}" style="width: 311.112px; height: 29px;">price</td><td data-sheets-value="{"1":2,"2":"decimal"}" style="width: 67.5125px; height: 29px;">decimal</td><td style="width: 341.575px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"net_value"}" style="width: 311.112px; height: 29px;">net\_value</td><td data-sheets-value="{"1":2,"2":"int"}" style="width: 67.5125px; height: 29px;">int</td><td style="width: 341.575px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"discount_price"}" style="width: 311.112px; height: 29px;">discount\_price</td><td data-sheets-value="{"1":2,"2":"decimal"}" style="width: 67.5125px; height: 29px;">decimal</td><td style="width: 341.575px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"base_price"}" style="width: 311.112px; height: 29px;">base\_price</td><td data-sheets-value="{"1":2,"2":"decimal"}" style="width: 67.5125px; height: 29px;">decimal</td><td style="width: 341.575px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"brut_weight"}" style="width: 311.112px; height: 29px;">brut\_weight</td><td data-sheets-value="{"1":2,"2":"int"}" style="width: 67.5125px; height: 29px;">int</td><td style="width: 341.575px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"set"}" style="width: 311.112px; height: 29px;">set</td><td data-sheets-value="{"1":2,"2":"string"}" style="width: 67.5125px; height: 29px;">string</td><td data-sheets-value="{"1":2,"2":"set of products"}" style="width: 341.575px; height: 29px;">set of products</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"account"}" style="width: 311.112px; height: 29px;">account</td><td data-sheets-value="{"1":2,"2":"string"}" style="width: 67.5125px; height: 29px;">string</td><td style="width: 341.575px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"row_amount"}" style="width: 311.112px; height: 29px;">row\_amount</td><td data-sheets-value="{"1":2,"2":"decimal"}" style="width: 67.5125px; height: 29px;">decimal</td><td style="width: 341.575px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"stockaddress"}" style="width: 311.112px; height: 29px;">stockaddress</td><td data-sheets-value="{"1":2,"2":"string"}" style="width: 67.5125px; height: 29px;">string</td><td style="width: 341.575px; height: 29px;"> </td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"set_amount"}" style="width: 311.112px; height: 29px;">set\_amount</td><td data-sheets-value="{"1":2,"2":"decimal"}" style="width: 67.5125px; height: 29px;">decimal</td><td data-sheets-value="{"1":2,"2":"how many products in set"}" style="width: 341.575px; height: 29px;">how many products in set</td></tr><tr style="height: 29px;"><td data-sheets-value="{"1":2,"2":"pieces"}" style="width: 311.112px; height: 29px;">pieces</td><td data-sheets-value="{"1":2,"2":"int"}" style="width: 67.5125px; height: 29px;">int</td><td style="width: 341.575px; height: 29px;"> </td></tr><tr style="height: 46px;"><td data-sheets-value="{"1":2,"2":"vat_sale"}" style="width: 311.112px; height: 46px;">vat\_sale</td><td data-sheets-value="{"1":2,"2":"boolean"}" style="width: 67.5125px; height: 46px;">boolean</td><td style="width: 341.575px; height: 46px;"> </td></tr></tbody></table>

## Importing data

### Salesorder

**URL: *BASEURL***/salesorder

With salesorder access point, you can import sales orders to Ladu20. Posting is identical to data output requests.

**Important notes:**

- If no customer code is defined, Ladu20 uses a generic customer code for the order.
- Delivery information blocks are used for postal services integrations;
- If you are using the API for B2B orders services, do not fill the subblocks customer and delivery;
- VAT percentages are especially important for cross border sales;
- Transportation fees should be added to document rows with product codes according to the product database.

Input data

<table border="1" cellpadding="0" cellspacing="0" dir="ltr" id="bkmrk-type-description-req"><colgroup><col width="235"></col><col width="51"></col><col width="258"></col></colgroup><tbody><tr><td>**FIELD NAME**</td><td data-sheets-value="{"1":2,"2":"TYPE"}">**TYPE**</td><td data-sheets-value="{"1":2,"2":"DESCRIPTION"}">**DESCRIPTION**</td><td>**REQUIRED**</td></tr><tr><td>customer\_code</td><td data-sheets-value="{"1":2,"2":"int"}">string</td><td>customer code in Ladu20</td><td> </td></tr><tr><td>customer/name</td><td>string</td><td>customer name</td><td> </td></tr><tr><td>customer/street</td><td>string</td><td>delivery address street</td><td> </td></tr><tr><td>customer/city</td><td>string</td><td>delivery address city</td><td> </td></tr><tr><td>customer/postalcode</td><td>string</td><td>delivery address postal code</td><td> </td></tr><tr><td>customer/county</td><td>string</td><td>county code</td><td> </td></tr><tr><td>customer/country</td><td>string</td><td>country code</td><td> </td></tr><tr><td>customer/email</td><td>string</td><td>email</td><td> </td></tr><tr><td>customer/phone</td><td>string</td><td>address</td><td> </td></tr><tr><td>customer/is\_company</td><td>bit</td><td>yes/no</td><td> </td></tr><tr><td>customer/company\_name</td><td>string</td><td>Customer company name</td><td> </td></tr><tr><td>customer/company\_regno</td><td>string</td><td>Mandtory if is\_company=1</td><td> </td></tr><tr><td>customer/company\_vatno</td><td>string</td><td> </td><td> </td></tr><tr><td>delivery/type</td><td>string</td><td>"Parcel machine", "Courier" or "Self pickup"

</td><td> </td></tr><tr><td>delivery/delivery\_partner</td><td>string</td><td>Delivery partner name for courier and parcel machines</td><td>parcel and courier</td></tr><tr><td>delivery/name</td><td>string</td><td>customer name</td><td> </td></tr><tr><td>delivery/company\_name</td><td>string</td><td>company name

</td><td> </td></tr><tr><td>delivery/street</td><td>string</td><td>delivery address street</td><td> </td></tr><tr><td>delivery/city</td><td>string</td><td>delivery address city</td><td> </td></tr><tr><td>delivery/postalcode</td><td>string</td><td>delivery address postal code</td><td> </td></tr><tr><td>delivery/county</td><td>string</td><td>county </td><td> </td></tr><tr><td>delivery/country</td><td>string</td><td>country</td><td> </td></tr><tr><td>delivery/email

</td><td>string</td><td>email</td><td> </td></tr><tr><td>delivery/phone</td><td>string</td><td>phone number</td><td> </td></tr><tr><td>delivery/parcel\_code</td><td>string</td><td>parcel machine number</td><td>parcel only</td></tr><tr><td>doc\_no</td><td>string</td><td>order number in external system</td><td>\*</td></tr><tr><td>project\_code</td><td>string</td><td>order project code for Ladu20</td><td> </td></tr><tr><td>doc\_seller</td><td>string</td><td>Seller code for whole document</td><td> </td></tr><tr><td>doc\_date</td><td>string</td><td>order date in external system,

format "2019-12-31T11:14:25.473"

defaults to now

</td><td> </td></tr><tr><td>del\_due</td><td>string</td><td>delivery deadline,  
format "2019-12-31T11:14:25.473"

defaults to now+1

</td><td> </td></tr><tr><td>currency</td><td>string</td><td>order currency code

</td><td> </td></tr><tr><td>currency\_rate</td><td>decimal</td><td>order rate

</td><td> </td></tr><tr><td>order\_sum</td><td>decimal</td><td></td><td> </td></tr><tr><td>order\_sum\_with\_vat</td><td>decimal</td><td></td><td> </td></tr><tr><td>payment\_partner</td><td>string</td><td>payment partner or account code. Used for accounting purposes.

</td><td> </td></tr><tr><td>payment\_sum</td><td>decimal</td><td>sum of prepayament

</td><td> </td></tr><tr><td>payment\_type</td><td>int</td><td></td><td> </td></tr><tr><td>rows/product\_code</td><td>string</td><td>row product code in Ladu20

</td><td>\*</td></tr><tr><td>rows/product\_name</td><td>string</td><td>product name, if required as additional info; if not filled, default product name will be used

</td><td> </td></tr><tr><td>rows/quantity</td><td>decimal</td><td>order row quantity

</td><td>\*</td></tr><tr><td>rows/price</td><td>decimal</td><td>netprice

</td><td>\*</td></tr><tr><td>rows/vat</td><td>int</td><td>vat percentage of order row

</td><td> </td></tr><tr><td>rows/seller</td><td>string</td><td>row based seller code

</td><td> </td></tr></tbody></table>

Sample data

```JSON
{
   "customer_code":"kaupmees#",
   "customer":{
      "name":"kaupmees nimi",
      "street":"kase 1",
      "city":"tallinn",
      "postalcode":"12345",
      "county":"harjumaa",
      "country":"ee",
      "email":"info@mail. Ee",
      "phone":"55 123 123"
   },
   "delivery":{
      "delivery_partner":"Omniva",      
      "email":"info@mail.Ee",
      "phone":"55 123 123"     ,
      "name":"Name on parcel",       
      "country":"ee",
     /* FOR PARCEL MACHINE */
      "type":"Parcel machine",
      "parcel_code":"444569",    ,     
      /* FOR COURIER */          
      "type":"Courier",                
      "street":"kase 1",
      "city":"tallinn",
      "county":"harjumaa"
      "postalcode":"12345"      
   },  
   "doc_no":"10001",
   "project_code":"WEBSHOP_01"
   "doc_date":"2019-12-31t11:14:25.473",
   "del_due":"2019-12-31t00:00:00",
   "currency":"eur",
   "currency_rate":1,
   "order_sum":134.15,
   "order_sum_with_vat":154.15,
   "payment_type":1,   
   "payment_partner":'Maksekeskus",   
   "payment_sum":154.15,   
   "rows":[
      {
         "product_code":"digi",
         "product_name":"ajakiri digi",
         "quantity":1,
         "vat":20,
         "price":4.185
      },
      {
         "product_code":"digi-2",
         "product_name":"ajakiri digi",
         "quantity":2,
         "vat":20,
         "price":4.185
      },
      {
         "product_code":"digi-3",
         "product_name":"ajakiri digi",
         "quantity":3,
         "vat":0,        
         "price":14.185
      }
   ]
}
```

### Order payment

**URL: *BASEURL***/order\_payment

Adding a payment to an existing order.

Input data

<table border="1" cellpadding="0" cellspacing="0" dir="ltr" id="bkmrk-field-name-type-desc-6"><colgroup><col width="235"></col><col width="51"></col><col width="258"></col></colgroup><tbody><tr><td>**FIELD NAME**</td><td data-sheets-value="{"1":2,"2":"TYPE"}">**TYPE**</td><td data-sheets-value="{"1":2,"2":"DESCRIPTION"}">**DESCRIPTION**</td><td>**REQUIRED**</td></tr><tr><td>doc\_no</td><td data-sheets-value="{"1":2,"2":"int"}">string</td><td>Document number in Ladu20</td><td>\*</td></tr><tr><td>order\_id</td><td>int</td><td>Order ID in Ladu20</td><td> </td></tr><tr><td>payment\_sum</td><td>decimal</td><td>Sum of made payment</td><td>\*</td></tr></tbody></table>

Sample data

```JSON
{
  "payment_sum":145.67,
  "doc_no":"11145",
  "order_id":12455
}
```