This commit is contained in:
seb
2026-10-02 00:15:22 +02:00
parent 20886e7c76
commit 3f84ff2be8
12 changed files with 238 additions and 31 deletions

View File

@@ -152,12 +152,30 @@
* type: string
* prices:
* type: array
* description: Selling prices by customer group and quantity tier (field is net, not price)
* items:
* type: object
* $ref: '#/components/schemas/ArticlePriceEntry'
* suppliers:
* type: array
* items:
* type: object
* $ref: '#/components/schemas/ArticleSupplier'
* ArticlePriceEntry:
* type: object
* description: Article selling price tier for a customer group (note price field is net, not price)
* required: [minmultiplier, net, taxRate, customergroupId]
* properties:
* minmultiplier:
* type: number
* description: Quantity threshold for volume pricing (defaults to 1)
* net:
* type: number
* description: Net selling price
* taxRate:
* type: number
* description: Tax rate in percent (e.g. 19 or 8.1)
* customergroupId:
* type: integer
* description: Customer group ID (e.g. company POS customer group)
* ArticleHistoryEntry:
* type: object
* required: [id, date, text]

View File

@@ -707,7 +707,7 @@ export function register(app, basePath = '') {
* description: |
* Replace-all prices for the company POS customer group.
* Each entry: `price` (net), `tax` (rate, ensured via tax.ensure), optional `minmultiplier` (default 1).
* Empty `prices` clears all POS prices. Returns the same shape as GET by SKU.
* Empty `prices` clears all POS prices. Returns the same shape as GET by SKU (article `prices` array contains `{ minmultiplier, net, taxRate, customergroupId }`).
* security:
* - cookieAuth: []
* x-signals: [article-<sku>]