Skip to content
Consignment Purchasing

Consignment Purchasing

You run purchasing or accounts for a retailer, and a brand wants to put its stock on your shelves without you buying it: they keep ownership, you sell it, and once a month they bill you for what sold. By the end of this guide you will have received consigned stock so that it sits in your branch balance without appearing as a purchase or a debt, sold it through your ordinary tills, billed yourself correctly for what sold, paid for that and only that, and sent the unsold units back — and you will know which of the six consignment documents moves stock, which posts, and the one whose name points the wrong way. Set aside 40 minutes for the first cycle.

Meet GadgetSphere

A wireless-audio brand principal offers GadgetSphere Sdn Bhd a launch range on consignment: 120 units of a new earbud model at branch GS-KV-01, reference price RM 189 a unit, billed monthly for whatever sold, unsold units returnable after 90 days. GadgetSphere sells them at RM 249 through its normal tills. In March, 74 units sell.

The six documents, and what each one actually does

Consignment has its own chain, separate from the ordinary purchase chain, and its own two ledger accounts: Consignment Stock (the value of goods on your shelf that you do not own) and Consignment Liability (what you would owe if you bought it all). The GRN puts a value into both; the billing takes it out of both as you buy; the return takes it out when goods go back.

DocumentMoves stock?Posts?What it is really for
Consignment Purchase OrderNoNoThe agreement as a document: items, quantities, reference price. Optional, but it gives the receipt something to knock off
Consignment GRNYes, inYes — Dr Consignment Stock / Cr Consignment LiabilityThe consignor’s goods arriving. This is the document that puts them in your branch balance
Your cash bills and sales invoicesYes, outYes, as any saleSelling the units. Nothing consignment-specific happens here
Consignment BillingNoYes — Dr Purchase / Cr Creditor, and Dr Consignment Liability / Cr Consignment StockThe consignor’s bill to you for what sold. It turns the holding into a real purchase and a real payable. Despite its name and its folder, this is a purchase invoice
Consignment ReturnNoYes — Dr Consignment Liability / Cr Consignment StockReverses the value of goods going back. It does not move the units
Consignment GINYes, outYes — but to the ordinary purchase and creditor accountsConsigned units leaving without a sale. Cannot be voided
Consignor Purchase BillingNoNoA period worksheet in its own tables: opening, net purchases, closing, quantity to bill. It has no FINAL and creates no balance
The two ledger accounts must be mapped before the first receipt. CONSIGNMENT_STOCK and CONSIGNMENT_LIABILITY are read only from the company’s default GL codes — a GL code on the line or the item is ignored for these documents. A missing code does not stop FINAL: the GRN, the billing or the return goes FINAL, and the posting job that runs a moment later fails with MISSING_DEFAULT_GL_CODE: <code>, leaving a FINAL document with no journal behind it. Nothing appears on the FINAL button; you see it on the document’s Trace Document tab (Journal Txn empty) and under Financial Report > Error Checking > Trace Document, where Resolve re-runs the posting once the code is mapped.

Before you start

  • The consignor exists as a supplier, with an AR/AP type. The billing document credits the creditor account that type resolves to.
  • Every consigned item has Consignment Item ticked in Doc Item Maintenance. Unticked items do not appear in the consignment GRN’s item search at all.
  • Company default GL codes: CONSIGNMENT_STOCK, CONSIGNMENT_LIABILITY, plus PURCHASE, INPUT_TAX and the creditor code for the billing.
  • Two Knock Off Configuration rows on the company in the Organization applet: Consignment Purchase Order → Consignment GRN, and Consignment GRN → Consignment Billing (INTERNAL_PURCHASE_CONSIGNMENT_GRN → INTERNAL_PURCHASE_CONSIGNMENT_INVOICE). Without the second, the billing’s KO For grid is empty however many GRNs you have finalised.
  • The reference price is agreed. You will key it on the GRN, and the GRN’s amount enters the item’s moving-average cost pool. A GRN at RM 0 drags the average cost of every unit in stock toward zero.
  • Serial tracking decided for the item, before the first receipt.

Step 1: Record the agreement as a consignment purchase order

Purchasing > Consignment Purchase Order (Internal) > Consignment Purchase Order > Create

This step is optional, and worth doing: it gives the warehouse a document to receive against and keeps the agreed price out of anyone’s memory.

Set branch GS-KV-01 and the location on Main Details; pick the brand principal on Account. On Lines, add the earbud model, 120 units at RM 189. Put the consignment agreement’s reference in the reference field and the return terms — unsold returnable after 90 days — in the remarks.

CREATE, then open it and FINAL. The order locks and, because the company has the Consignment Purchase Order → Consignment GRN row, its lines enter the open queue. Nothing posts and nothing moves: this is an agreement, not a transaction. Its Payment tab will accept a line; the document has no amount, so ignore that tab.

Watch out for: the KO For tab’s first sub-tab is labelled Blanket Consignment Purchase Order but searches ordinary blanket purchase orders — there is no separate blanket consignment document.

Step 2: Receive the consigned stock

Inventory > Consignment GRN (Internal) > Consignment GRN > Create

The principal’s van delivers 120 units to GS-KV-01. Count them. Open the Consignment GRN applet — it is filed under Inventory because it is the document that moves the stock — and click Create. Set branch and location on Main Details; pick the principal on Account.

On the header KO For tab, pick the consignment purchase order from Step 1 and knock it off: the 120 units come across at RM 189. If you skipped Step 1, add the line with Search Item — the picker shows consignment-flagged items only — and key 120 at RM 189 yourself. For serialised items, open the line and enter or scan the serials; every one must be new to the company.

CREATE, then FINAL from the listing. BigLedger:

  • books 120 units into stock at GS-KV-01 — they are now in Stock Balance and Stock Availability like any other stock, and their RM 189 enters the moving-average cost;
  • posts, if your company runs the journal for this document:
Dr  Consignment Stock          RM 22,680
    Cr  Consignment Liability            RM 22,680

Nothing goes to Purchases, nothing to the supplier’s creditor account, and no amount is owed. The principal’s balance in the Creditor Report is unchanged.

Watch out for:

  • The GRN is FINAL, the stock has moved, and Trace Document → Journal Txn is empty. The posting job failed after FINAL: MISSING_DEFAULT_GL_CODE: CONSIGNMENT_LIABILITY when that code is unmapped, or TOTAL_DEBITS_AND_TOTAL_CREDITS_NOT_BALANCES when no CONSIGNMENT_STOCK code could be resolved for a line and it was dropped from the journal (the company default is the only fallback that counts). Map the code in Chart of Account, then Financial Report > Error Checking > Trace Document → find the GRN under Missing JournalResolve. Do not re-key the GRN: the stock movement is a separate processor and has already posted.
  • The item is not in Search Item — Consignment Item is not ticked on it.
  • A consignment GRN that has been billed against cannot be voided until the billing is voided first. Get the quantity and the price right before FINAL.

Step 3: Sell the units — nothing special happens here

The 120 units are in the branch balance. Cashiers sell them on ordinary cash bills at RM 249; sales staff can raise ordinary sales invoices. Each sale takes one unit out of stock and posts as any sale does. There is no consignment flag on a sale and no special till procedure. What makes these units consignment is the journal that brought them in, not where they sit.

By 31 March, 74 have sold. To confirm the number, run the Stock Movement Report in the Stock Report applet for the item at GS-KV-01 for March, or read the balance: 120 received, 46 on hand, 74 gone.

The Consignor Purchase Billing worksheet. The Consignor Purchase Billing applet records, per consignor and period, an opening quantity, net purchases, closing quantity and a quantity to bill. It is a worksheet in its own tables — no FINAL, no journal, no supplier balance — and its edit screen currently loses line changes on SAVE, so key a record complete when you create it. It does not replace Step 4; the bill itself is the next document.

Step 4: Bill yourself for what sold

Sales > Consignment Billing (Internal) > Consignment Billing > Create

The principal sends their invoice for 74 units: RM 13,986 plus tax. The document that records it is Consignment Billing (Internal) — filed in the sales folder and named as if it billed a customer, but a purchase invoice in every respect: its entity picker is titled Select Supplier, and it posts the purchase direction.

Create it for branch GS-KV-01. On Account, pick the principal. On KO For, the single sub-tab Consignment Purchase GRN lists the GRN lines still waiting to be billed. Tick the earbud line from Step 2 and press KNOCK OFF: the line comes across with the full 120. Open the line and change the quantity to 74 — billing part of a GRN clears only that part of the holding; the other 46 stay as consignment stock against consignment liability. Add the tax the principal charges.

Compare with the principal’s invoice — 74 units, RM 189, RM 13,986 — before you go further. Nothing in BigLedger compares them for you.

FINAL. BigLedger posts, in one journal:

Dr  Purchase                     RM 13,986
Dr  Input Tax                    RM    839.16
    Cr  Creditor — the principal          RM 14,825.16

Dr  Consignment Liability        RM 14,825.16
    Cr  Consignment Stock                 RM 14,825.16

The first pair is the purchase you have now made; the second clears that much of the consignment holding. No stock moves — the GRN already brought the units in and the tills already took them out. The principal’s balance in the Creditor Report is now RM 14,825.16 outstanding.

Watch out for:

  • The KO For grid empties the moment you use its advanced search. Its search filters on the wrong document type, so the results never intersect the grid. Clear the search and use the grid’s column filters. Recorded as a product defect (P-0131).
  • The grid is empty before you search — the company has no Consignment GRN → Consignment Billing knock-off row, so the GRN wrote no queue rows. Add the row; support can repair the queue for GRNs finalised before it existed.
  • The selected document contains a different entity/branch — one billing document per supplier and branch.
  • A HIDE_* setting in this applet hides a field from everyone, administrators included; its per-user permissions are not seeded.

Step 5: Pay the principal

Finance > Payment Voucher (Internal) > Internal Payment Voucher > Create

Create a payment voucher for the principal: one payment line for RM 14,825.16 by bank transfer, and on the Contra tab tick the consignment billing document from Step 4 for the full amount. FINAL. The voucher posts Dr Creditor / Cr Bank, writes one cashbook line for Bank Reconciliation, and the principal’s balance returns to nil. You have paid for 74 units and nothing else.

Step 6: Send the unsold units back

After 90 days, 31 units are still unsold and go back to the principal. This is where the chain has two documents with different effects, and you need to decide — once, with your accountant — which your company uses, and then use the same one every time.

DocumentWhat it doesWhat it does not do
Consignment Return (Internal)Reverses the value: Dr Consignment Liability / Cr Consignment Stock for 31 × RM 189, and leaves a balance on the consignor to be closed by contraMoves no stock. The 31 units are still in the branch balance until something else takes them out
Consignment GIN (Internal)Takes the 31 units out of stock at GS-KV-01Is not in the backend’s consignment list: if your company posts journals for it, they go to the ordinary purchase and creditor accounts, not the consignment pair. It has no VOID

Purchasing > Consignment Return (Internal) > Consignment Return > Create — set branch and location, pick the principal, add the line: 31 units at RM 189. CREATE, then FINAL from the listing. The consignment holding drops by RM 5,859. If you also raise a Consignment GIN for the 31 units, the stock balance drops with it — and check with finance what that GIN posted.

Whatever you choose, get the principal’s signed collection note and attach it to the document.

What success looks like

Thirty seconds, four checks, after the March cycle:

  1. Stock Balance for the earbud at GS-KV-01 shows 46 (or 15 after the return) — units received less units sold less units returned.
  2. The Creditor Report shows the principal at nil: one billing document for RM 14,825.16, one payment, contra’d.
  3. Ledger And Journal shows the Consignment Stock account at 46 × RM 189 = RM 8,694 against an equal Consignment Liability — the value of what is still theirs on your shelf.
  4. No purchase was posted for units that did not sell. Search the Purchase Report for the principal in March: one document, 74 units.

If check 3 shows a balance for units you no longer hold, a Consignment GIN took stock out without a Consignment Return reversing the value — or the reverse.

Common mistakes

Receiving consignment on an ordinary Purchase GRN or Purchase Invoice. The screens look alike. A purchase invoice makes it a purchase and a debt on day one; you have just bought 120 units you agreed not to buy. Symptom: the principal shows RM 22,680 outstanding the day the van left. Void it if nothing has knocked it off, and re-key on the consignment GRN.

Keying the consignment GRN at RM 0 while the price is negotiated. The GRN’s amount enters the moving-average cost pool; at zero it pulls the average cost of every unit of that item toward zero, and the later billing pushes it back. Key the agreed reference price.

Treating Consignment Billing as a sales document. It sits in the sales folder and its name suggests a customer. It is the consignor’s invoice to you; the counterparty is a supplier and the posting is the purchase direction. If you are the one placing stock with a partner, that is the sales side — see Customer Consignment.

Billing the full GRN quantity. Knock-off brings the whole 120 across. Change the line to what sold; the rest stays as consignment stock.

Expecting the Consignment Return to take the units off the shelf. It reverses value only. The stock balance does not move until a GIN or an adjustment moves it.

Mapping the consignment GL codes on the item. They are read from the company defaults only; a code on the item or the line is ignored. FINAL still goes through; the posting job fails until the company default exists, and a FINAL document with an empty Journal Txn tab is the symptom.

Using the KO For advanced search. It empties the grid (P-0131). Column filters work.

Related documentation

The applets behind each step (full reference, every field and setting):

The other direction — your stock on somebody else’s shelf:

Related guides:

Last updated on