Your sales
What the customer has sold on Cru, one entry per unit sold, stored with Cru or held outside it, by the date it sold (traded_at), newest first unless direction is "asc", as the Cru app's Sold list shows it, in the market currency: price is the list's Sold For (for wine held outside Cru, after Cru's commission), cru_id, transfer_ref (the transfer's reference, when there is one), cost (what the customer paid), sold_price (what the sale came to before Cru's commission and any fee), Cru's commission (commission_percent and commission; none for a supplier), any settlement_fee, net_proceeds (what the customer received: sold_price less commission and settlement_fee), profit_loss (net_proceeds less cost) and profit_loss_percent (of cost; null when no cost is recorded), and for wine held outside Cru the Cru warehouse it goes to (deliver_to, deliverable_warehouse_code) and when it is due there (deliver_by), all null for wine that was not. status is where the wine is in reaching Cru: "transfer_needed", "awaiting_transfer", "on_purchase_order" or "delivered_to_cru", which wine stored with Cru always is. Prices are normal amounts in the market currency - 12345.5 is 12,345.50 - and every market states its currency.
Marked readOnlyHint, so an assistant may call it without asking the customer first.
Arguments
ALL OPTIONAL| ARGUMENT | DESCRIPTION |
|---|---|
| lwin18array<string> · LWIN18 · ≤ 20 | Only sales of these wines, as 18-digit LWIN18 codes (wine, vintage and pack). Get them from search_wines. |
| statusarray<string> · one of transfer_needed, awaiting_transfer, on_purchase_order, delivered_to_cru · ≤ 4 | Only sales in these states - see status. |
| deliverable_warehouse_codearray<string> · one of UK_DRAK, HK_KERRY, SG_TOLL, FR_DARTESS, US_NAPA · ≤ 5 | Only sales of wine held outside Cru going to any of these Cru warehouses - see list_warehouses. |
| sortstring · one of traded_at | What to order sales by: traded_at, the date of the sale. |
| directionstring · one of desc, asc | "desc" (newest first, the default) or "asc" (oldest first). |
| limitinteger · 1–50 | Sales per page. Default: 10 |
| offsetinteger · 0–10000 | Sales to skip, for the next page. Default: 0 |
Any other argument is refused with a tool error that lists what the tool accepts. Numbers may also be sent as strings, and booleans as "true" or 1.
Returns
STRUCTUREDCONTENTsales: lwin18, wine_name, vintage, pack_size, quantity (always 1), price, total, currency, reference (always null), traded_at, cru_id, transfer_ref, cost, sold_price, commission_percent, commission, settlement_fee, net_proceeds, profit_loss, profit_loss_percent, deliver_to, deliverable_warehouse_code, deliver_by and status; pagination.
The same object also comes as JSON text in content, for hosts that read only that.
Errors
A refusal — a wine that is not on Cru, a price out of range — comes back as a result with isError: true and a message worded for the assistant to act on. A connection without trades:read is not offered this tool, and calling it anyway returns 403 with a JSON-RPC error naming the scope. Missing or invalid credentials return 401. Conventions every tool shares →