Consignment stock¶
Consignment stock lets a company ship goods to a customer’s own site while keeping legal ownership of them until the customer actually sells or uses the goods. The customer is only invoiced for what they consumed, and can send unsold goods back at any time — the company never loses track of what is on-site, what has been paid for, and what has been returned.
The eyssen_consignment module builds this on top of standard Sales and Inventory: it
adds a dedicated stock location per consignment customer, keeps stock legally owned by the company
even while it physically sits at the customer, tracks delivered/settled/returned quantities on
each sale order line, and drives periodic settlement (what got sold), return (what came
back unsold) and verification (physical stock check) cycles through a single
Consignment document.
How consignment stock works¶
Per-customer consignment location¶
Every consignment customer gets its own dedicated stock.location. On the customer’s
form (),
enabling Can Buy on Consignment automatically creates a location flagged as a
Customer Consignment Place (usage customer, linked back to the partner) as a child of the
company’s configured Customer Consignment Stock Location. Renaming the customer later
renames the location to match.
Buy on Consignment by Default pre-checks new sale orders and deliveries for that customer as consignment automatically.
The Consignment Stock smart button opens the stock quants currently held at that customer’s location.
The setting cannot be disabled while the customer still has stock at that location — the system blocks it until everything has been settled or returned.
For a delivery-address contact under a company, the consignment section is only usable if the parent company already has Can Buy on Consignment enabled.
Important
Consigned stock never becomes the customer’s property while it sits at their location. Whenever an outgoing delivery for a consignment order is validated, the resulting stock quants at the customer’s consignment location are re-owned to the company, not the customer. The goods only leave the company’s books once a settlement report confirms they were actually sold.
Consignment sale orders and deliveries¶
A sale order exposes a Consignment Order checkbox next to the payment terms (only visible if the customer Can Buy on Consignment, and pre-checked automatically when the customer has Buy on Consignment by Default). Deliveries generated from a consignment order automatically inherit the same flag, and a delivery’s Consignment Order flag can also be set directly if a picking is created outside the normal sale flow.
Per-product control — every product can be restricted from consignment sales individually with its Sale Policy (see Configuration). If a consignment order or delivery contains a product whose policy resolves to Disabled — or if the customer is not allowed to buy on consignment at all — a red warning banner lists the offending products, and sending the quotation, confirming the order, or validating the delivery is blocked until the issue is resolved.
On the outgoing delivery itself, the destination location is automatically forced to the customer’s consignment location (overriding any other destination set on the transfer), and the Owner field becomes read-only — it stays under the company’s ownership, per the note above.
Cons. Quantity on the sale order line¶
Each sale order line on a consignment order tracks four running quantities, shown as optional columns on the order line list:
Cons. Delivered Quantity — the quantity actually delivered to the customer’s consignment location (computed from done, non-scrapped stock moves).
Cons. Settled Quantity — the quantity a Sales Settlement Report has confirmed as sold.
Cons. Returned Quantity — the quantity a Returns Submission report has sent back unsold.
Cons. Remaining Quantity — delivered minus settled minus returned: what is still physically out at the customer, neither paid for nor returned yet.
Important
Consigned goods are not invoiced on delivery. For consignment lines the quantity to invoice excludes both the remaining (still out, unsettled) and the returned quantity — only settled goods become billable. This is what makes the settlement report the trigger for invoicing instead of the delivery itself.
Consignment Settlement Reports¶
All settlement, return and verification cycles are handled through the consignment.settlement.report
document, listed under . Each report has
a sequence reference (CSR/<year>/#####), belongs to one customer, and has a Type:
Sales Settlement Report — records what the customer actually sold/consumed.
Returns Submission — records what the customer is sending back unsold.
Inventory Verification — a read-only style snapshot of the raw physical quantity at the customer’s location, used purely to reconcile stock; it is never confirmed into an invoice or a return.
Tip
The normal entry point is the Settlement Report button on the customer’s form: it finds (or creates) that customer’s current draft report and refreshes its lines automatically. A report can also be created directly from the Consignment menu.
Syncing lines with physical stock¶
Refreshing a draft report (automatically when opened via the customer button, or explicitly when Set to Draft is used) recomputes one line per product, with Cons. Quantity set to the physical quantity on hand at the customer’s consignment location.
Note
On Sales Settlement Report and Returns Submission reports, any quantity already
committed to a previous, not-yet-arrived consignment return is subtracted from
Cons. Quantity, so a fully-returned product correctly shows 0 instead of the
stale physical count. Inventory Verification reports intentionally skip this adjustment and
always show the raw physical quantity, since their purpose is stock reconciliation.
For each line, the agent enters (or edits) the Settled Quantity — capped between 0
and Cons. Quantity — either row by row, with the header Set All /
Set Null shortcuts, or in bulk:
Add Bulk Products opens a wizard that resets every line to unsettled and then applies quantities pasted as text, or uploaded as a CSV/Excel file, matching each row to a product by internal reference, barcode, or product name.
Serial and lot-tracked products¶
For a tracked product, Settled Quantity is not typed in directly: the agent opens the line’s Lots/Serials picker and selects the exact serials/lots present at the customer’s location (only lots actually on hand there are selectable). The picked total must equal the quantity being settled or returned before the report can be confirmed, and each serial movement is recorded so the same serial can never be both settled and returned for the same customer.
Confirming a settlement report¶
Confirm is only available on a draft report with at least one settled/returned quantity, and behaves differently by type:
Sales Settlement Report — matches the settled quantities FIFO against that customer’s open consignment sale order lines (oldest order first), then:
creates an internal transfer moving the settled quantity from the customer’s consignment location to the company’s own consignment stock location;
increases Cons. Settled Quantity on every matched sale order line;
generates a single customer invoice, one invoice line per matched sale order line, using that line’s price, discount and taxes; and
sets the report to Done, linking the generated picking and invoice (visible from the Pickings and Invoices smart buttons).
Returns Submission — FIFO-matches the same way, then:
creates a Consignment Return RMA sourced from the customer’s consignment location, one line per matched sale order line;
increases Cons. Returned Quantity on every matched sale order line; and
auto-approves the RMA, which schedules (but does not yet validate) an incoming receipt back into the warehouse — the physical arrival is still confirmed manually by a warehouse operator, which is exactly why the sync above has to discount it from the next report’s Cons. Quantity.
Note
Only Sales Settlement Report type documents can be cancelled (Cancel Settlement) once done — this reverses the invoice (credit note) and the stock move, and rewinds Cons. Settled Quantity on the sale order lines. Returns are undone through the RMA flow instead, not by cancelling the settlement report.
Important
Once a report is Done or Cancelled, its settled/consigned quantities and audit links are locked against further edits — they must be reset with Set to Draft first, which also re-checks that no leftover audit data blocks the transition.
Configuration¶
Company-wide settings, at , in the Traceability section right below Set owner on stored products:
Customer Consignment Stock Location — the parent location under which every new customer’s consignment location is created. Required before Can Buy on Consignment can be enabled on any customer.
Customer Consignment Report Operation Type — the operation type used for the internal transfers generated when a settlement report is confirmed or cancelled.
Consignment Sale Product Policy — the company-wide default (Enabled / Disabled) applied to products whose own Sale Policy is left on Use default.
Per product, on the product’s Sales tab, the Sale Policy field (Use default / Enabled / Disabled) overrides the company policy for that product specifically. The Consignment Stock smart button (also available in the product list and kanban views) opens the quants currently held for that product across every customer’s consignment location.
Access rights are limited to the Sales / User group (sales_team.group_sale_salesman), which
can create and edit settlement reports and their lines but never delete them, preserving the audit
trail. An additional admin-only recovery action (restricted to the Inventory / Administrator
group) is available on a cancelled report to clear leftover audit data if a cancellation was
interrupted.
Usage¶
Enable the customer. On the customer’s form, set Can Buy on Consignment (the company-wide Customer Consignment Stock Location must be configured first). Optionally enable Buy on Consignment by Default so new orders default to consignment.
Sell and deliver. Create a sale order for the customer — Consignment Order is pre-checked if configured by default, or can be checked manually. Confirm the order and validate the delivery as usual; the goods land at the customer’s consignment location, still owned by the company.
Settle what was sold. Periodically, open the customer’s Settlement Report button (or the Consignment menu), review the Cons. Quantity per product, enter the Settled Quantity for what the customer reports as sold — row by row, with Set All/Set Null, or via Add Bulk Products — and Confirm. The system invoices the customer and moves that stock off the consignment books.
Return what wasn’t sold. Create (or reuse) a Returns Submission report the same way, enter the quantities being sent back, and Confirm. A Consignment Return RMA is created and auto-approved; validate the resulting incoming receipt once the goods physically arrive back at the warehouse.
Reconcile stock. Use an Inventory Verification report at any time to see the raw physical quantity currently sitting at the customer’s location, without affecting invoicing or returns.
Scope and modules¶
eyssen_consignment— the full consignment feature: the per-customer consignment location, the consignment flag and warnings on sale orders/quotations and deliveries, the Cons. * quantity fields on sale order lines, the Consignment settlement/ return/verification reports and their invoicing and RMA integration, the per-product sale policy, and the related company settings.