This commit is contained in:
seb
2026-10-07 21:23:10 +02:00
parent a29ad50b74
commit 7d537aaa6b
33 changed files with 598 additions and 327 deletions

View File

@@ -5,7 +5,8 @@ Protected. Requires a valid session cookie (`credentials: 'include'`).
Replace POS prices by SKU
Replace-all prices for the company POS customer group.
Each entry: `price` (net), `tax` (rate, ensured via tax.ensure), optional `minmultiplier` (default 1).
Each entry accepts `net` OR `gross` price (or legacy `price`), `taxRate` OR `tax` (percentage, e.g. 19 for 19%, ensured via tax.ensure), optional `minmultiplier` (default 1).
When `gross` is provided, net price is computed as `gross / (1 + taxRate / 100)`.
Empty `prices` clears all POS prices. Returns the same shape as GET by SKU (article `prices` array contains `{ minmultiplier, net, taxRate, customergroupId }`).
@@ -20,20 +21,23 @@ Empty `prices` clears all POS prices. Returns the same shape as GET by SKU (arti
| Field | Required | Type | Description |
|-------|----------|------|-------------|
| `prices` | yes | object[] | |
| `prices[].price` | yes | number | Net price |
| `prices[].tax` | yes | number | Tax rate (e.g. 19) |
| `prices[].minmultiplier` | no | number | Defaults to 1; must be unique per request |
| `prices[].net` | no | number | Net price (excl. VAT). Either `net`, `gross`, or legacy `price` is required. |
| `prices[].gross` | no | number | Gross price (incl. VAT). Net is computed as `gross / (1 + taxRate / 100)`. |
| `prices[].price` | no | number | Legacy alias for `net`. |
| `prices[].taxRate` | no | number | Tax rate percentage (e.g. 19 for 19%, 7 for 7%, 0 for 0%). |
| `prices[].tax` | no | number | Alias for `taxRate` percentage. |
| `prices[].minmultiplier` | no | number | Defaults to 1; must be unique per request. |
```json
{
"prices": [
{
"price": 10.5,
"tax": 19
"net": 10.5,
"taxRate": 19
},
{
"price": 9.9,
"tax": 19,
"gross": 11.9,
"taxRate": 19,
"minmultiplier": 10
}
]
@@ -58,8 +62,21 @@ Updated article detail
"track_stock": true,
"unitamount": 1,
"weight": 1,
"unit": {},
"brand": {},
"unit": {
"si": "…",
"basesi": "…",
"basesifactor": 1,
"symbol": "…",
"name": "…"
},
"brand": {
"id": 1,
"name": "…",
"fullHash": "…",
"thumbW": 1,
"thumbH": 1,
"thumbHash": "…"
},
"categoryIds": [
1
],