Neriyam
Open App

Goods Receipt

Record receipt of goods against a purchase order — the GRN.

Goods Receipt#

A Goods Receipt Note (GRN) records that goods have physically arrived from a supplier. Every receipt of purchased material is a GRN. It updates your stock balance and the linked PO's Receipt Status.

Where it sits in the flow#

Purchase Order (approved)  →  Goods Receipt(s)  →  (optional) Purchase Return

You can post multiple GRNs against a single PO as material arrives in phases.

How it is built#

Under the hood, a GRN is a stock entry with transaction type PPR. It has a header (supplier, warehouse, posting date) and one or more lines, each drawing from a PO line.

Creating a goods receipt#

  1. Navigate to Purchase › Goods Receipt
  2. Click + New Goods Receipt
  3. Choose the creation mode — GRN from PO is the main path
  4. Pick the Purchase Order
  5. Pick the Warehouse where the goods will land (defaults to your Default Receiving Warehouse set in Inventory Settings)
  6. Confirm the Posting Date (defaults to today)
  7. Tick the lines you are receiving; for each, enter the Receive Qty.
  8. Click Save as Draft — you land on the detail page.
  9. On the detail page, review and click Submit for Approval when you are ready to post — only a submitted GRN affects stock and PO status.

The create page only has Cancel and Save as Draft buttons; the Submit for Approval action lives on the detail page once the draft exists.

Header fields#

FieldRequiredNotes
Purchase OrderYesSearchable dropdown of POs with pending lines
WarehouseYesDestination of the received goods. Defaults to the Inventory Settings default receiving warehouse.
Posting DateYesDefaults to today
RemarksNoFree text (driver name, vehicle, waybill number, etc.)

Line selection#

For each PO line, the form shows:

FieldNotes
ItemRead-only from the PO
UOMRead-only
Ordered QtyRead-only
Received So FarSum of previously submitted GRNs
Pending QtyOrdered − Received − Short-Closed
Receive QtyEditable. Capped at pending qty.
Line RemarksOptional

You cannot receive more than the pending quantity on a PO line. If you legitimately need more, the PO must be amended (usually by cancelling and recreating with higher quantities).

What happens when you submit#

  • An inward stock ledger entry is posted in the destination warehouse, increasing balance quantity and blending the rate into the moving-average cost (see Stock valuation)
  • The PO line's Received Qty increases by this GRN's qty
  • The PO's Receipt Status recomputes (NR → PR → FR)
  • The GRN gets its own code from the GRN numbering series

A draft GRN does not affect stock or the PO. Until you click Submit, it is a plan, not a posting.

Ownership on receipt#

GRN receives your own material only — stock you are paying for. Customer-supplied material (for job work) does not flow through GRN; it has a dedicated Job Work Receipt path that is planned for a future release. See Stock ownership.

Cancelling a GRN#

Submitted GRNs can be cancelled. Cancellation posts a reversal — the inward entry is backed out at the same rate:

  • Stock balance drops.
  • PO line's Received Qty decreases.
  • PO's Receipt Status recomputes.

Both postings remain on the stock ledger as an audit trail.

If a Purchase Return (PPT) references this GRN's lines, cancellation is blocked until the PPT is cancelled first. The error names the dependent PPT(s). Cancel from the leaves up.

Partial and multiple receipts#

A typical PO might be received in 2–3 shipments:

PO LineOrderedGRN-1 (30)GRN-2 (50)GRN-3 (20)
Line 1100Received 30Received 80Received 100 → Fully Received

The PO's Receipt Status moves along as lines progress.

List page#

  • Search by GRN code or supplier
  • Filter by status, date range, warehouse
  • Click a row to open the detail page
  • Row menu: View PDF, Submit (if Draft), Cancel (if Submitted)

Printing#

View PDF generates a GRN document showing:

  • Your company header
  • Supplier billing address
  • Reference PO code
  • Received items with quantities
  • Dispatch/vehicle/gate pass info from remarks

Permissions#

ActionPermission
View GRNsPURCHASE.VIEW_PURCHASE_ENTRIES or INVENTORY.VIEW_STOCK_ENTRIES
Create, submit, cancel GRNsPURCHASE.MANAGE_GRN

FAQ#

Can I receive before the PO is approved?
No — only approved (or sent) POs can have GRNs.

Can I receive at a different rate than the PO?
In the current version, GRN rates mirror the PO. Rate renegotiation is handled via PO amendment rather than per-GRN override.

What if the supplier delivers extra?
You cannot receive more than the PO's ordered qty on a line. If you want to accept extra, cancel the PO and issue a new one at the correct quantities — or treat the excess as a separate ad-hoc purchase.

What if the material is damaged on arrival?
Receive into a "Quarantine" or "Inspection" warehouse first. After inspection, either move good stock to the main warehouse via a Stock Transfer, or raise a Purchase Return for the damaged portion.

Validation rules#

A Goods Receipt (GRN) entry can only be created/submitted when these rules are met:

Item requirements

  • All items must be purchasable (is_purchasable = true) AND stockable (is_stockable = true).

Quantity

  • Always positive — GRN only adds to stock.

Document linkage

  • If any item has is_po_mandatory = true, a Purchase Order link is required for that line.
  • Otherwise the entry can be created from a PO, from a PR, or standalone.

Header

  • Supplier is required at the header. Customer is not allowed.

Ownership

  • Own only. Customer-owned material does not arrive via GRN; it arrives via Job Work Receipt (planned).

Approval state

  • The supplier and all items must be Approved to be selectable.

If a rule is violated, submission fails with a specific error naming the line and the problem.

Last updated