When a customer brings medicine back, you record a sale return against the original invoice. MediPOS puts the stock back into the batches it came from, works out a fair refund, and either pays the money back or credits the customer's account. This is how your pharmacy handles customer returns and refunds for part of a bill, or for any bill older than today.
If Returns is not in your Sales menu, your plan does not include Sale returns; the owner can see what each plan includes under Plan & billing.
Return or void?
| Situation | Use |
|---|---|
| Wrong item billed today, whole bill to cancel | Void the sale |
| One item from today's bill comes back | Sale return |
| Customer brings a strip back next week | Sale return |
| Bill already voided | Nothing to return |
How to return items against an invoice
You can start from the invoice (Sales → Invoices, open the bill, Return items) or from Sales → Returns → New return. On the new return page, type the Invoice number, either in full (INV-000123) or just the last digits (123), and click Find invoice. When you search by the last digits, MediPOS opens the latest bill ending in them, so check the date, customer and total at the top before you go on.
- The table lists each item with Sold, Can return and Return qty. Enter how many are coming back; leave 0 on lines that stay sold. Quantities are in the unit on the bill.
- For each returned line, choose Put back to: Shelf (sellable) or Quarantine (damaged).
- Under Refund, choose Pay back money and pick Refund by (Cash, EasyPaisa, JazzCash, Bank transfer or Card), or Credit …'s account if the bill was made to a named customer.
- Enter the Reason, for example "Doctor changed the medicine".
- Click Complete return and confirm. Stock and money are updated at once.
The return gets its own number (SR-…) and appears in the Sale returns list with Invoice, Reason, Refund and Amount.
How the refund amount is worked out
The refund is each item's share of what the customer actually paid, including any bill discount. A customer bought 2 packs of Augmentin 625 mg at Rs. 600 and a Brufen syrup at Rs. 150, a bill of Rs. 1,350 with a Rs. 135 bill discount. The Augmentin carried Rs. 120 of that discount, so the 2 packs cost him Rs. 1,080. Returning one pack refunds Rs. 540, not Rs. 600. Item discounts are taken off in the same way.
Where the stock goes
- Stock goes back into the exact batch it was sold from, at the cost it left at, so stock value and profit stay correct. If a line was sold from two batches, the batch with the later expiry is refilled first.
- Shelf (sellable) puts it back in the branch's selling store, ready for the next customer.
- Quarantine (damaged) puts it in the branch's quarantine location, where it cannot be sold. From there you can return it to the supplier or write it off.
- Stock from a batch that has expired or been blocked always goes to quarantine, whatever you choose.
How the refund is paid
Pay back money. The refund is paid from the account you pick. A cash refund made while your shift is open reduces the expected cash in your drawer, shown as Refunds to customers.
Credit the customer's account. No money changes hands. The credit first clears whatever is still unpaid on that same invoice, then reduces the customer's other udhaar. If nothing is owed, it becomes an advance for their next purchase. This option appears only when the original bill was made to a customer.
Returns without the receipt
When a customer has lost the receipt and you cannot find the bill, staff with the Return without invoice permission see Return without an invoice on the new return page. Search each product, choose the Unit, Qty and Put back to, then the Refund by method and a Reason. The refund is at today's price, the stock goes into the product's latest batch, the refund is always paid in money, and the return is recorded in the audit log. By default only the Owner and Admin roles have this permission, because it can be misused.
Rules and limits
- Never more than was sold. MediPOS counts what has already been returned from each line. Trying to return more gives a message such as "Only 1 Pack of Augmentin 625 mg can still be returned from this invoice."
- Voided bills cannot be returned. Their stock and money were already reversed.
- Returns are final. A completed return cannot be edited or cancelled, so check the quantities before you confirm.
- Permission. Returns need Process sale returns. The Manager and Pharmacist roles have it by default; the Cashier role does not.
- Dated today. A return is dated the day you enter it, whatever the date of the original bill.
- Where it shows. Returns reduce net sales in the Daily sales report and Returns today on the dashboard, appear as Returns taken in Sales by cashier and as Refunded in Payments at the counter, and show as Less: returns in the profit and loss.
Common questions
Can a cashier take a return?
Not with the default Cashier role. A pharmacist or manager can take the return, or, if your plan includes custom roles, the owner can add Process sale returns to the Cashier role under Administration → Roles.
Does the refund include the discount the customer got?
Yes. The refund is what the customer actually paid for those items after item and bill discounts, so you never refund more than you received.
The customer returned an expired strip. Where does it go?
Stock from an expired batch always goes to quarantine, so it can never be sold again by mistake. Return it to the distributor or write it off from there.
I entered a return by mistake. Can I undo it?
No. A completed return cannot be cancelled or edited, which is why MediPOS asks you to confirm it. If the items did not really come back, bill them again as a new sale so the stock and money are right.
Related guides
Last updated 25 September 2026. Still stuck? Contact us.