When the distributor's delivery arrives, the purchase bill is how the stock gets into MediPOS. This guide is for the owner or purchase manager who enters pharmacy purchase bills. Each line records the batch, expiry and trade price (TP). MediPOS then works bonus schemes, discounts, sales tax and freight into a landed cost per tablet or bottle, and your profit is measured against that cost.
If Purchases is not in your menu, your plan does not include Purchases & suppliers. The owner can see what each plan includes under Plan & billing.
How to enter a distributor bill
- Go to Purchasing → Purchases and click New bill. The New bill button on a supplier's page does the same, with the supplier filled in.
- Choose the Supplier. Type the Supplier bill no. exactly as printed, and the Bill date, which cannot be in the future.
- In Receive into, pick where the stock goes, usually Main Store.
- Search for the Product by name or generic, or scan its barcode.
- Check the Unit. MediPOS picks the largest unit, such as box, because that is how distributors bill. Qty, T.P. (per unit) and MRP (per unit) are all per the unit you choose.
- Enter Qty (paid), Bonus (free), T.P. (per unit), and Disc % and Tax % if the bill has them.
- Enter the Batch no. and Expiry from the pack. They are required for medicines that track batches and expiry.
- Enter the MRP (per unit) printed on the pack. At the counter, MediPOS sells at the MRP of the batch going out first. If you leave it blank, the product's own price is used.
- Click Add item for each further line.
- Enter any Bill discount and Freight / other (delivery or cartage), and check that Bill total matches the paper bill.
- Click Save draft to finish later, or Save & post to receive the stock now.
How a bonus scheme becomes landed cost
For each line, MediPOS works out gross (qty × TP), takes off the discount, and adds tax on what is left. The bill discount and freight are then shared across the lines in proportion to each line's value. Finally, the landed total is divided by paid plus bonus units, counted in the smallest unit.
Say Hassan Pharma Distributors bills you for two lines, plus Rs 111 freight:
| Line | Paid | Bonus | T.P. | Disc | Line net | Freight share | Landed cost |
|---|---|---|---|---|---|---|---|
| Panadol 500 mg (box of 10 strips × 10) | 10 boxes | 1 box | Rs 900 | 2% | Rs 8,820.00 | Rs 88.20 | Rs 8.10 per tablet |
| Brufen syrup 90 ml | 24 bottles | — | Rs 95 | — | Rs 2,280.00 | Rs 22.80 | Rs 95.95 per bottle |
The Panadol line costs Rs 8,908.20 landed, spread over 1,100 tablets (11 boxes). Without the bonus spread in, it would look like Rs 8.91 a tablet. The posted bill shows this figure in the Cost / base unit column. The last line absorbs any paisa of rounding, so the lines always add up to the bill total exactly.
If the batch number and expiry you enter already exist for that product, the new units join the same batch. Its cost becomes the average of the old stock and the new stock.
Draft or post
- Draft: nothing changes yet. You can Edit it, finish it tomorrow, or Discard it.
- Post: use Save & post on the form, or Post on a saved draft. After you confirm, the stock goes into its batches, the supplier's balance goes up by the bill total, and the bill gets a number starting with PB.
Duplicate bill guard: when you post, MediPOS checks the supplier bill number against that supplier's posted bills, ignoring capital letters. If bill #4471 was already entered, posting is refused and you are told which PB number holds it. Bills with no supplier bill number are not checked. Voided bills do not count.
How to pay while posting
The Paid now (optional) box takes an Amount, Paid by (Cash, Bank transfer, EasyPaisa, JazzCash and so on) and a Reference for methods that need one. It only works with Save & post. The payment is dated on the bill date and is set against this bill first. A part payment leaves the bill showing Unpaid balance. If you already hold an advance with the supplier, it is used against the new bill automatically.
A saved draft posted with the Post button has no payment box, so pay from the supplier's page. The Still due card shows the due date, which is the bill date plus the supplier's credit days.
How to void a bill entered by mistake
On a posted bill, the Void this bill panel asks for a Reason. Click Void bill and confirm. The stock is removed, the supplier balance is reversed on today's date, and the bill stays in the list as Voided, with its reason. Any money paid against it becomes an advance, which is matched to the supplier's other open bills.
Voiding is only possible while every unit from the bill is still on the shelf. If even one strip has been sold or moved, MediPOS refuses. Use a return to the supplier instead.
Rules and tips
- Saving drafts needs Enter purchases. Posting needs Post purchases to stock, and voiding needs Void purchases. The built-in Manager role cannot void bills; Owner and Admin can.
- Bills belong to the branch you are working in, and hold up to 300 lines. The Purchases list filters by Drafts, Posted, Unpaid balance and Voided. Posting and voiding are recorded in the audit log.
- Always enter free goods in Bonus, not by lowering the TP. The Purchases by product report can then show paid and bonus quantities separately.
Common questions
The distributor gave 10+1 on Augmentin 625. Do I enter 11 in Qty?
No. Enter 10 in Qty and 1 in Bonus, with the TP per pack. You pay for 10, stock goes up by 11, and the cost of each pack is the line amount divided by 11.
MediPOS says the bill number is already entered. What now?
Open the PB number shown in the message. If it is the same bill, discard your draft. If the distributor really reused the number, add a suffix such as 4471-B so both bills can be kept.
Can I change a bill after posting it?
No. Posted bills cannot be edited. If nothing from it has been sold, void it and enter it again correctly. Otherwise, correct the stock with a return or an adjustment.
Why is my cost per tablet lower than the TP?
Because the free units are counted in. A 10+1 scheme makes every unit about 9% cheaper, and a line discount lowers it further. Freight pushes it up slightly.
Related guides
Last updated 25 September 2026. Still stuck? Contact us.