Delivery create now accepts externalNumber (user-supplied reference) instead
of number; the manifest number is auto-allocated server-side via
nextNumber('delivery'). Update patches externalNumber (clearable) rather than
number. DeliverySummary schema documents externalNumber and notes number is
auto-generated. Regenerate API docs.
1.5 KiB
1.5 KiB
POST /delivery
Protected. Requires a valid session cookie (credentials: 'include').
Create delivery
Creates a goods receipt with header and lines in one transaction.
The manifest number is allocated automatically via
nextNumber('delivery'); the user-supplied reference is stored as
externalNumber. Each line requires sku, amount, net, and
tax (rate). rebate defaults to 0; transactedAmount defaults
to amount.
Body (JSON)
{
"externalNumber": "DHL-123",
"date": "2026-08-10",
"supplierId": 1,
"lines": [
{
"sku": "1",
"amount": 10,
"net": 99.5,
"tax": 19
}
]
}
Response 201
Created delivery
{
"delivery": {
"id": 1,
"number": "…",
"type": "delivery",
"supplierId": 1,
"externalNumber": "…",
"date": "2026-08-10T00:00:00.000Z",
"lines": [
{
"id": 1,
"articleId": 1,
"sku": "…",
"amount": 1,
"net": 1,
"transactedAmount": 1,
"rebate": 1,
"tax": 1,
"comment": "…"
}
]
}
}
Errors
| Status | Description |
|---|---|
| 400 | Invalid delivery, invalid lines, or no company selected — {"error":"…"} |
| 401 | Unauthorized — {"error":"…"} |
| 403 | Not authorized — {"error":"…"} |
| 404 | Company, supplier, or article not found — {"error":"…"} |
Generated from @openapi JSDoc. Do not edit by hand — run npm run docs:api.