Goods Inward Done Right: Matching Every Purchase Order to the GRN in a Distribution Business
The tempo raised a purchase order for 100 cartons. Ninety-six came off the truck. The invoice was for 100. Your godown boy signed the delivery sheet without counting, because there were three more vehicles waiting behind it and the driver was in a hurry.
Nobody stole anything. Nobody lied. But you just paid for four cartons that are not in your godown, and you will not find out until a stock audit in March, if you find out at all.
This is goods inward, and for most distributors it is the quietest hole in the business. Everyone watches sales. Everyone chases outstanding. Almost nobody watches what happens at the receiving gate, where the money actually leaves. This page is for the distributor and wholesaler who buys in bulk from a dozen principals, receives partial and mixed shipments every single day, and wants what arrived to match what was ordered before it becomes a fight with the supplier six weeks later.
You ordered one thing. Something else arrived.
Walk any distribution godown at 11 a.m. and you will see the same scene. Boxes on the floor, a purchase invoice on the table, and one person trying to tally the two while the phone keeps ringing. The gap between the purchase order and the actual delivery is where distributors lose margin they never see leave.
A short supply is only the most obvious version. There is also the rate that quietly changed between the order and the invoice. The 10+1 scheme the sales officer promised that never showed up on paper. The near-expiry batch that got mixed into an otherwise clean lot. The two damaged cartons that should have gone straight back but got taken into stock instead. Each one is small. Together, across a year and a few thousand purchase entries, they are not small at all.
What a GRN actually is, and why "just take it into stock" costs you money
A GRN, the Goods Receipt Note, is the record of what physically arrived at your gate: the quantities, the batches, the condition, and any shortfall against what you ordered. It is not paperwork for its own sake. It is the one moment where you can catch a mismatch before it hardens into a payment.
The three documents that must agree: PO, GRN, supplier invoice
Anyone who has run an accounts department knows the discipline of the three-way match. The purchase order says what you asked for and at what rate. The GRN says what actually came in. The supplier invoice says what you are being asked to pay. Payment should not go out until all three line up. It is a standard control in accounts payable, and it is exactly the step distributors skip when receiving is a separate register kept in a separate diary from the billing software.
Skip it and you are trusting the supplier's invoice as the truth. The invoice is the one document with an incentive to be generous.
Where goods inward quietly leaks money for distributors
Short supply you still paid for
The classic. You ordered a quantity, less arrived, and the invoice was cut for the full order. If your receiving step does not check the received quantity against the purchase order line by line, the shortage becomes a payment. When you finally spot it, the supplier's records show the full dispatch and you are now arguing from a weaker position, weeks after the goods left their warehouse.
Rate and scheme differences that wreck your landed cost
You set your selling rate based on the purchase rate you agreed at order time. Then the invoice arrives at a slightly higher rate, or the promised free goods and slab benefit are missing. Your landed cost is now wrong, which means your margin is wrong, which means you are selling at a thinner profit than your own reports tell you. This is the leak nobody feels because the numbers still look fine on screen. They are just quietly off.
Batch and expiry accepted at the gate
For pharma and FMCG distributors this one is not optional. In pharmacy, tracking every item by batch number and expiry date is non-negotiable, and FEFO, First Expire First Out, only works if the batch and expiry are captured accurately the moment goods come in. Accept a near-expiry batch without checking it against what you expected, and you have bought a return you will be fighting to make six months from now.
Damage and rejects that should have been a purchase return
Two cartons are crushed. They should trigger a purchase return then and there, with the paperwork to claim credit from the supplier. Instead, in the rush, they get counted into stock. Now your system thinks you have sellable goods you cannot sell, and the credit you were owed is gone.

The real fix is not "a receiving app". It is one core.
Search for a solution to this and you will find a market full of standalone GRN and inward apps. They will happily capture what arrives. Then they hand that data off to your separate billing software and your separate accounting, and you are back to the same gap: three systems, three versions of the same delivery, and a reconciliation job every month to make them agree. You have not closed the leak. You have moved it downstream.
This is where SwilERP is built differently, and it is worth being precise about why.
How SwilERP checks the GRN against the PO at inward
In SwilERP, purchase orders, GRN, purchase returns, and supplier documents all live in the same Purchase module, on top of the same stock and the same accounts. When goods arrive, the GRN is raised against the original purchase order, so what you received is checked against what you ordered at the point of receiving, not discovered at audit. A shortage is visible as a shortage. A rate difference is visible against the PO rate. A damaged lot goes out as a purchase return with its own document. Batch and expiry are captured as the goods come in, which is what makes FEFO actually work later at the counter.
One brain for your entire business, not five apps pretending to talk to each other.
That line is the whole point of pillar three, and goods inward is where it earns its keep.
One entry, and stock, supplier ledger, and GST input agree
Here is the mechanism that separates a real fix from a receiving app. Because SwilERP is one operational core, the accepted GRN is the same record your accounts team sees. Book the goods once and your stock moves, the supplier's payable ledger moves, your landed cost updates, and the GST input from that purchase sits on the same transaction. No second entry into a billing package. No third entry into the books. No monthly job to force a receiving diary and an accounting system to tie out, and no blame ambiguity when they do not.
This is the difference between accounting-first tools and an operational core. In an accounting-first setup the supplier ledger and the GST are correct, but the goods-inward check against the purchase order, the shortages, the free goods, the batch at the gate, is a manual step done off the system. The books are correct and the warehouse is guesswork. SWIL has spent 30 years on the warehouse side of that gap, which is why receiving is a first-class step in SwilERP, not an afterthought.
SwilSort: verifying goods at the warehouse gate
For distributors running a larger warehouse, SwilSort adds a purchase verify step at the gate, so the physical check of incoming goods happens on a device at the point of receiving and flows into the same SwilERP stock truth. The person counting cartons and the person who will answer to the supplier ledger are finally looking at the same numbers.
A clean goods-inward routine you can run from tomorrow
You do not need to boil the ocean to fix this. You need a routine that everyone at the gate follows the same way, every time.
- Raise the GRN against the purchase order, never against the invoice. The PO is what you agreed to. The invoice is what you are being asked to pay.
- Count and enter the received quantity line by line. Let the shortage show.
- Check the rate and any scheme or free goods against the PO before you accept.
- Capture batch and expiry at entry for every batch-tracked item.
- Push damaged or rejected units to a purchase return the same day, with the document to claim credit.
- Accept the GRN only when it reconciles. What does not match stays open until it is resolved with the supplier.

Six steps. The whole point is that they happen at the gate, in the same system that runs your stock and your accounts, so nothing gets re-keyed and nothing gets discovered too late to act on.
The India layer: e-way bill, GST invoice, and ITC
Goods inward in India carries a compliance tail, and it is worth knowing where your receiving data ends up. Inter-state movement above fifty thousand rupees has needed an e-way bill since April 2018, and that e-way bill and the GST invoice can be matched against the material you actually received. On the tax side, the input tax credit you claim on a purchase is only as clean as the purchase entry behind it, and ITC eligibility is subject to GST rules, including the blocked-credit checks under Section 17(5). None of this is a SWIL feature claim; it is the compliance reality your goods-inward records feed into. The cleaner the GRN, the less painful the year-end reconciliation with your CA.
Stop discovering mismatches at audit
The distributors who lose the least at goods inward are not the ones with the strictest staff. They are the ones who made the correct thing the easy thing: one entry at the gate, checked against the order, feeding one stock truth and one ledger. That is not a receiving app bolted onto billing. It is one operational core, which is what SwilERP has been built as across 30 years and more than 18,000 active businesses.
If your PO and your GRN currently live in two different places, that gap is where your margin is going.
See it on your own purchase flow. Talk to your local SWIL partner and ask them to walk you through PO-to-GRN matching in SwilERP with your own suppliers and your own goods. Bring your worst mismatch. That is the one worth fixing first.
More from the blog
Distribution & Supply ChainSecondary Sales Reporting for Distributors: How to Track Sell-Through Your Principals Can TrustSee real sell-through without a bolt-on DMS. How Indian distributors capture salesman and B2B orders and report secondary sales from one operational core.
Read article
PharmacyManaging Expiry Returns in Pharma Distribution: How to Recover Value from Near-Expiry StockHow pharma distributors handle near-expiry stock, saleable vs non-saleable returns, breakage claims and expiry credit notes without losing money or ITC.
Read article
Distribution & Supply ChainMoving from Tally to a Distribution ERP: When You've Outgrown the BooksThe honest signs a distributor has outgrown Tally, what a distribution ERP adds, and how to migrate in phases without stopping billing.
Read article
Distribution & Supply ChainTablet-Based Picking in the Warehouse: How Device Setup Drives Real-Time Fulfilment PerformanceTablet picking lifts accuracy and live stock visibility, but only if the picker hardware fits the job. Device minimums, zone flows, and fixed-station picking wi…
Read article
Distribution & Supply ChainHow to Control Outstanding Payments in a Distribution BusinessCut overdue receivables in your distribution business with credit limits, party-wise ageing and collection follow-ups in one ledger. An India-first guide.
Read article
Distribution & Supply ChainSwilPOS for Field Operations: Tablet POS, Field Sales & Delivery Fulfilment in One AppField sales on one app, delivery proof on another, billing on a third. Here is how SwilPOS runs order-taking, dispatch, and tablet POS on a single ERP truth.
Read article
Distribution & Supply ChainSecondary Sales Reporting for Distributors: How to Track Sell-Through Your Principals Can TrustSee real sell-through without a bolt-on DMS. How Indian distributors capture salesman and B2B orders and report secondary sales from one operational core.
Read article
PharmacyManaging Expiry Returns in Pharma Distribution: How to Recover Value from Near-Expiry StockHow pharma distributors handle near-expiry stock, saleable vs non-saleable returns, breakage claims and expiry credit notes without losing money or ITC.
Read article
Distribution & Supply ChainMoving from Tally to a Distribution ERP: When You've Outgrown the BooksThe honest signs a distributor has outgrown Tally, what a distribution ERP adds, and how to migrate in phases without stopping billing.
Read article
Distribution & Supply ChainTablet-Based Picking in the Warehouse: How Device Setup Drives Real-Time Fulfilment PerformanceTablet picking lifts accuracy and live stock visibility, but only if the picker hardware fits the job. Device minimums, zone flows, and fixed-station picking wi…
Read article
Distribution & Supply ChainHow to Control Outstanding Payments in a Distribution BusinessCut overdue receivables in your distribution business with credit limits, party-wise ageing and collection follow-ups in one ledger. An India-first guide.
Read article
Distribution & Supply ChainSwilPOS for Field Operations: Tablet POS, Field Sales & Delivery Fulfilment in One AppField sales on one app, delivery proof on another, billing on a third. Here is how SwilPOS runs order-taking, dispatch, and tablet POS on a single ERP truth.
Read article
