Purchase Workflow
“What is the difference between a goods received note and a purchase invoice?” In BigLedger the answer depends on which of two receiving applets you use, and it is the most expensive choice in this folder: with the plain Purchase GRN the invoice brings the stock in and the receipt posts nothing, while with GRN Stock In the receipt brings the stock in and the invoice that follows books only the money. This page is for the buyer, the receiving clerk and the accounts-payable clerk who share the buying cycle. For every applet in the folder, and the three purchase documents filed in other folders, it says whose screen it is, what its FINAL writes into stock, the ledger and the next document, when to pick it, and what it will not do.
The detail for each document is on its own page. This page routes you there and does not repeat it.
What each purchase document writes when it goes FINAL
FINAL is a separate step from Save. It locks the document and hands it to a posting job, which starts every follow-on job your tenant runs: stock, journal, the open queue the next document knocks off, e-Invoice matching or submission, and the intercompany mirror. Whether stock moves and which way the money goes is fixed per document type on the server, and no setting changes it (the two numbers on every document type). Because the journal is written by a job after FINAL, a document can read FINAL and have no journal; that is the first thing to check when a figure looks short.
Asking, comparing and committing. None of these moves stock, and only the order can post, for a header Group Discount (its row). Their FINAL opens their lines for the next document to knock off, and only for the pairs your company’s Knock Off Configuration lists.
| Applet | Whose screen | What FINAL does behind the scene | What will not happen |
|---|---|---|---|
| Purchase Requisition | A branch or department asking for something to be bought | Opens its lines for a quotation or order. Where approval is set up, the first approval sets it FINAL | No order is raised for you. An approval whose FINAL was refused, by a locked period for instance, leaves the requisition DRAFT and the refusal only in a log |
| Purchase Quotation | The buyer recording what a supplier offered | Opens its lines for the order, without reducing what the requisition still has open for ordering | Its KO For tab is there only while the quotation is unsaved: knock the requisition off before the first save |
| Blanket Purchase Order | The buyer holding a long-term agreement with one supplier | Opens the agreed quantity for purchase orders to draw down; only a purchase order consumes it | Its end date gates nothing: an expired agreement keeps offering its lines until they are drawn or it is voided |
| Purchase Order | The buyer committing to buy | Opens its lines for the receipt and the invoice, once per enabled pair; queues the sister company’s sales order where an intercompany rule exists. Posts nothing, except that a header Group Discount posts a journal for the discount, a known issue | It holds no stock, it is not in Stock Availability’s main figure, and it does not warn when more is received than ordered |
Receiving. The choice that decides where your stock and your accrual come from.
| Applet | Whose screen | Stock | Ledger | What will not happen |
|---|---|---|---|---|
| Purchase GRN | The receiving clerk counting a delivery | Nothing. Until it is invoiced it counts in Stock Availability’s available quantity | Nothing | Stock arrives on the purchase invoice, on the invoice’s date |
| Purchase GRN Stock In | The receiving clerk where goods must be sellable before the bill | In, at FINAL | Dr Inventory Not Invoiced, Dr Input Tax / Cr Creditor Not Invoiced: the goods-received-not-invoiced accrual | The accrual is cleared by the Purchase Invoice No Stock In knocked off from it. Knocked off into a full Purchase Invoice instead, the goods are counted twice |
| Purchase GIN | Whoever records goods leaving toward a supplier | Nothing | Nothing | It does not take goods out of stock or reduce what you owe; a Purchase Return does both |
Billing and correcting. These are what reach your creditor balance.
| Applet | Whose screen | Stock | What you owe | What will not happen |
|---|---|---|---|---|
| Purchase Invoice (in Finance) | Accounts payable, after a plain GRN or with no receipt | In | Up: Dr Purchase, Dr Input Tax / Cr Creditor. Also writes the item’s last purchase cost | No due date is stored, and no price or quantity is compared with the order |
| Purchase Invoice No Stock In | Accounts payable, after a GRN Stock In | Nothing | Up; and on any invoice knocked off from another document, it also posts Dr Creditor Not Invoiced / Cr Inventory Not Invoiced to clear the receipt’s accrual | Knocked off a plain GRN or an order, it clears an accrual that was never made, and the goods never reach stock |
| Purchase Debit Note | Accounts payable, for an overcharge, a rebate, a short delivery | Nothing | Down: Dr Creditor / Cr Purchase | No goods go back; that is a return |
| Purchase Credit Note | Accounts payable, for a further charge the supplier adds | Nothing | Up: the same side as an invoice | Despite the name, it does not reduce what you owe, and a FINAL credit note is not voided |
| Purchase Return | Whoever sends goods back to a supplier | Out | Down: Dr Creditor / Cr Purchase Return | No cash comes back by itself; the balance is closed by contra or by the supplier’s refund |
| Purchase Refund Note | Accounts payable, when goods go back and the refund is settled on the same document | Out | Down, and its settlement lines record the money the supplier pays back | Today its screen does not save a new note; Import PRN, the CSV import, still creates one |
Consignment runs its own chain with two accounts of its own, Consignment Stock and Consignment Liability. The liability comes from the company’s default GL codes only; when it is missing, the document goes FINAL with no journal (consignment is its own chain).
| Applet | What FINAL does behind the scene |
|---|---|
| Consignment Purchase Order | Nothing but open its lines for the Consignment GRN |
| Consignment GRN (in Inventory Workflow) | Stock in, into the moving average; Dr Consignment Stock / Cr Consignment Liability. Nothing reaches your creditors and the last purchase cost is not touched |
| Consignment Return | Dr Consignment Liability / Cr Consignment Stock. No stock movement |
| Consignment Billing (in Sales Workflow) | The consignor’s bill to you for what sold: Dr Purchase, Dr Input Tax / Cr Creditor, plus Dr Consignment Liability / Cr Consignment Stock. No stock moves. It sits in the sales folder and is a purchase document |
| Consignor Purchase Billing | A period worksheet of what you owe one consignor, in its own tables. It has no FINAL: no journal, no stock, no creditor balance |
Your supplier’s own windows. A login linked to a supplier record opens copies of your documents scoped to that supplier: Purchase Order, GRN, Purchase Invoice, Credit Note, Return and Blanket Purchase Order. All of them only read, except that the purchase order copy lets the supplier advance the order’s workflow status and import orders from a CSV file; none of them changes a posting status. Supplier Delivery Order is the one where the supplier creates a document: an outbound delivery order that stays DRAFT until your own staff press FINAL on it.
Reading the chain, not adding to it. AP Automation reads supplier e-Invoices and matches them against your GRNs by the delivery-order number; it posts nothing and blocks nothing. Its supplier copy lets the supplier explain an unmatched row. The Purchase Report analyses FINAL purchase invoices, returns and no-stock-in invoices; orders, receipts and requisitions are not in it.
Which one to pick
| You want to | Use | Rather than |
|---|---|---|
| Goods counted at the door and the bill booked when it arrives | Purchase GRN, then Purchase Invoice knocked off from it | A GRN Stock In followed by a full Purchase Invoice, which counts the goods twice |
| Goods sellable the day they land, before the supplier bills | GRN Stock In, then Purchase Invoice No Stock In | A plain GRN followed by a No Stock In invoice, which never counts them at all |
| A bill with nothing to receive — rent, a subscription, a fee | Purchase Invoice with a non-stock item whose GL code is the expense, or a Payment Voucher’s expense lines when it is paid on the spot | A GRN: there is nothing to count |
| Pay less because the supplier overcharged or gave a rebate | Purchase Debit Note | A Purchase Credit Note, which raises what you owe |
| Send goods back | Purchase Return, or a Refund Note when the refund is settled on the same document | A debit note, which leaves the goods in stock |
| A year’s price and quantity agreed with one supplier, called off as you need it | Blanket Purchase Order, released into orders | A purchase order you keep editing |
| Stock a brand principal places with you and still owns | The consignment chain, with the price agreed before the Consignment GRN: one keyed at RM 0 pulls the item’s average cost down | An ordinary receipt and invoice, which book a payable for goods you have not bought |
| One company in the group buying from another | The sister company’s intercompany setting, which raises your purchase document from its sale (one company buys for another) | Keying the purchase invoice a second time from a printout |
Where the purchase figures come from
| Figure | Where you see it | How it is made |
|---|---|---|
| The quantity offered on KO For | The next document’s knock-off tab | Stored: an open-queue row per source line, written when the source goes FINAL, only for the pairs your company’s Knock Off Configuration lists. Each knock-off subtracts from it and the row is deleted at zero, which is why a fully received order drops out of the picker |
| What is left on a blanket agreement | The purchase order’s KO For › Blanket Purchase Order tab | Stored on the agreement’s open-queue row at FINAL, and recomputed from the agreed quantity and every purchase-order link each time an order links to it. At zero the row is deleted, so a fully drawn agreement disappears; the agreement line’s Purchase Order sub-tab tells a drawn-down line from one that never entered the queue |
| Available quantity | Stock Availability | Worked out each time you load it: balance, plus plain GRNs not yet on a purchase invoice, minus open sales orders not yet invoiced, minus reserved. Purchase orders are not in it |
| Last purchase cost | The item | Written only by the Purchase Invoice |
| The creditor balance | Creditor Report | Each FINAL document’s open amount; the subledger tab reads journal lines |
| Matching status and amount difference | AP Automation’s B2B vs E-invoice Summary | Stored by background jobs in AP Automation’s own tables: the supplier’s e-Invoice amount beside your GRN’s, matched by the supplier’s delivery-order number typed in the GRN’s Client Doc 3 and the supplier. Empty until those jobs are scheduled. Payment Status beside it is a label finance types; the payables ledger never sees it |
| Purchase Report totals | Purchase Report | Worked out at Search, from FINAL purchase invoices, returns and no-stock-in invoices only. Every amount is multiplied by the line’s stock sign, so a No Stock In invoice shows as zeros; its value is in the Creditor Report. Cost columns are the cost stored on each line |
A week at GS-KV-01
On Monday the buyer raises a purchase order on an accessory wholesaler for 200 wireless earbuds at RM 128, delivered to GS-KV-01. Its FINAL posts nothing; it opens 200 on each line for the receipt to knock off. On Wednesday 180 arrive. The branch receives them on a plain Purchase GRN knocked off from the order: the order now offers 20, the receipt matches the shelf, and neither the stock ledger nor the general ledger has moved, because on this receiving pair the invoice does both.
On Thursday GadgetSphere Distribution takes to FINAL a sales invoice billing GadgetSphere Sdn Bhd for 30 ultraportable laptops. Because that sale names an intercompany rule, a purchase invoice appears in GS by itself, as a draft dated the day the rule ran, its description starting Auto Created From, unless the rule is set to make it FINAL at once. Until it is FINAL, GSD shows the receivable and GS has neither the payable nor the laptops. That is the first place to look when the two companies’ balances disagree.
On Friday the wholesaler’s bill arrives for 180 at RM 130. Knocking the invoice off from the GRN copies RM 128, and nothing compares the two figures: the clerk does, before FINAL. The wholesaler confirms RM 128 and reissues the bill, the invoice goes FINAL, and only then does the stock go in at GS-KV-01, with the moving average and the last purchase cost. Had the clerk keyed RM 130 and the supplier later agreed RM 128, the correction would be a Purchase Debit Note for RM 360, which lowers what you owe; a Purchase Credit Note would have raised it by the same amount. The last 20 earbuds are not coming, so the buyer presses CLOSE on the order: its open quantities go to zero and it leaves every knock-off picker. CLOSE is not undone, so it waits until the wholesaler has confirmed.
When a purchase looks wrong
| What you see | Why | What to do |
|---|---|---|
| The order is FINAL and the GRN’s KO For picker is empty | No Knock Off Configuration row for that pair, so FINAL wrote no open-queue row | Add the pair to the company’s Knock Off Configuration (Organization › the company). Orders finalised before it existed are re-queued from Data Fix › Generic Documents › Missing Open Queue, or by BigLedger if you do not hold that applet |
| The GRN is FINAL and the stock has not moved | A plain GRN moves nothing | The purchase invoice moves it |
| Stock is double what was delivered | A GRN Stock In was knocked off into a full Purchase Invoice, or the company’s knock-off pairs route it there | Route GRN Stock In only to Purchase Invoice No Stock In, and void the duplicate (GRN Stock In, Troubleshooting) |
| The document is FINAL and its Journal Txn is empty | The journal job failed after FINAL, usually on an unmapped company default GL code | Map the code, then follow that document’s own Troubleshooting row for the repair; for most it is Repost or Resolve in Financial Report’s Trace Document. Check Journal Txn again afterwards |
| A requisition was approved and is still DRAFT | The FINAL the approval triggered was refused (a locked period, a missing exchange rate) and only logged | Fix the cause and press FINAL |
| A No Stock In invoice shows as zeros on the Purchase Report | The report multiplies amounts by the stock sign, which is 0 on that document | Read those invoices on the Creditor Report |
| AP Automation shows an e-Invoice unmatched although the goods arrived | The supplier’s delivery-order number was typed in the GRN’s External Delivery Order, not Client Doc 3 | Key it in Client Doc 3; the next run retries |
| A note meant to lower what you owe raised it | It was a Purchase Credit Note, which posts on the invoice’s side | A FINAL credit note is not voided: raise a Purchase Debit Note for the same amount to cancel it, and a second for the reduction you meant |
| VOID is refused on a GRN | An invoice has already knocked it off | Read the GRN’s Doc Link tab to find the invoice; void the invoice first, where VOID is offered, then the GRN |
| A journal appears against a purchase order, and you owe the supplier more than any invoice says | The order’s header Group Discount line posts a journal at FINAL, a known issue | Give discounts per line or on the invoice, leave Group Discount empty, and reverse a stray entry with a journal entry |
| An invoice appeared FINAL that nobody keyed | A document-flow configuration turned a FINAL GRN into an invoice | Set the flow to DRAFT if someone should review each bill |
How you know a purchase posted
Open the document’s Doc Link tab: it lists what this document knocked off and what has knocked it off. Then open its Trace Document panel: Journal Txn has rows for any document that posts, and Inv Txn has rows for one that moves stock. A Purchase Invoice with an empty Journal Txn, or a GRN Stock In with an empty Inv Txn, has not done its job, whatever its status says. A plain GRN, a GIN or an order with both empty has done exactly its job. That is thirty seconds per document. For the period, the check is the creditor reports.
What these applets leave to people, and who does it
- Compare the bill with the order or the receipt. Knock-off copies the source’s lines and prices, and FINAL checks no tolerance. The accounts-payable clerk compares the supplier’s paper with the copied lines before FINAL. AP Automation compares supplier e-Invoices with GRNs, not invoices with orders, and blocks nothing.
- Hold a document for approval. Among purchase documents, approval exists for the Purchase Order and the Purchase Requisition only, it is off until someone sets it up, and its completion sets the document FINAL; a pending request does not stop anyone pressing FINAL. On every purchase document, who holds the FINAL permission is the control (approvals).
- Work out when a supplier falls due, or stop you buying past the ceiling you set for them. A purchase invoice stores no due date and nothing reads the purchase ceiling stored on the supplier record. Accounts payable works out each due date from the invoice date and the supplier’s terms, and the buyer keeps to the limit by policy.
- Accrue goods received on a plain GRN. Only GRN Stock In posts the goods-received-not-invoiced accrual. On the standard pair, goods on the floor and not yet billed are in nobody’s ledger until the invoice; before each close the accountant reads the GRNs still offered on the purchase invoice’s KO For tab: those are the receipts not yet billed.
- Let a supplier post anything. The supplier windows change no posting status; the Supplier Delivery Order saves a draft that your own staff take to FINAL in the internal Delivery Order applet.
- Treat a blanket agreement’s end date as a rule. The validity window is recorded and gates nothing: an expired agreement keeps offering its lines to purchase orders until they are drawn down or it is voided. The buyer voids it when the agreement ends.
- Turn Consignor Purchase Billing into a bill. It is a worksheet with no FINAL; what you owe the consignor is recorded by Consignment Billing.
- Fill AP Automation by itself. Its four matching jobs run from a Scheduler entry or when BigLedger triggers them, and nothing creates that entry for you; until they run, its summaries stay empty.
Where these applets sit
- Must exist first: the supplier’s record, whose AR/AP Type decides which creditor account every document credits; each stock item a basic item, or an alias linked to an inventory item, or the invoice posts and no stock arrives (a basic item with no link is linked for you the first time it posts); the company’s default GL codes: without the creditor’s (or Creditor Not Invoiced for GRN Stock In, Consignment Liability for consignment) the document goes FINAL with no journal, and without a purchase, input tax or stock code that line is left out and the supplier’s line absorbs it, with no message either way; a Knock Off Configuration row for each pair you use, or the next document’s KO For picker is empty (what must exist before the first purchase posts).
- Downstream: the Payment Voucher settles what the invoices raised; the creditor reports read the open amounts; stock costing takes the invoice’s or the GRN Stock In’s value into the moving average; a self-billed invoice, return, credit or debit note goes to MY E-Invoice Portal after FINAL.
- Siblings, and when to choose which: the tables above. The shortest version: one receiving pair per company; a debit note to owe less and a credit note to owe more; a return when goods go back; the consignment chain for stock you do not own.
- Blast radius: the wrong receiving pair doubles or loses stock with no error; a back-dated purchase invoice rewrites the cost stored on later sales lines, so earlier margins move (why a back-dated purchase moves earlier margins); once e-Invoice is enabled for the company the purchase invoice screen no longer offers VOID, and a mistake is corrected with a note.
- Used together: Purchase Order, Purchase GRN, Purchase Invoice and Payment Voucher; Stock Replenishment, which raises the purchase orders from minimum and maximum levels; the sister company’s sales invoice and the purchase invoice its intercompany rule raises.