If PRA has issued you a POS ID and access token, the hard administrative part is behind you. What is left is a short, mechanical setup, and it only has to be done once per branch. Here is the path from a fresh account to a real, PRA-accepted invoice.
Step 1. Add your business profile
Before anything else, enter your business name, PNTN, address and contact details once. These print on the header of every invoice you generate, so it is worth getting them exactly right, matching what is on your PRA registration.
Step 2. Register your branch with your POS ID and access token
PRA issues one POS registration, meaning one POS ID and one access token, per outlet or counter, not per business. If you operate from a single location, you need one branch record. If you run more than one outlet, each gets registered separately with its own credentials.
When you add the branch, you will see a mode setting: sandbox or production. Leave it on sandbox for now. Sandbox uses the same POS ID and token structure but talks to PRA's test environment, so nothing you submit while testing becomes a real filed invoice.
Step 3. Set up your services once
This step decides whether your first week is smooth. Every service you sell needs a PCT code, the tariff heading that tells PRA what kind of service it is, and a tax rate. Most Punjab service categories sit at the standard 16 percent rate, but confirm yours rather than assume it.
Set this up against each service in your product list, once, and every invoice after that pulls the right classification automatically. A few things worth knowing before you start:
- If you price by a fixed unit that is not a simple one-off, a per-daig catering charge, a per-person event rate, a per-hour service fee, set the unit price to your rate for one unit, and enter the actual quantity (daigs, guests, hours) when you build the invoice. The system multiplies for you.
- Search PCT codes by description, not just number, if you are not sure of the exact tariff heading. Catering, for example, sits under a heading that literally reads "services provided by caterers, suppliers of food and drinks."
- Get the classification right once here and you will not need to touch it again per invoice.
Step 4. Test in sandbox before you go live
With your branch still in sandbox mode, create a real invoice using your actual services and a sample buyer. Submit it. You will get back a genuine PRA response, either an accepted test invoice number or an error explaining exactly what to fix. Send a handful covering your normal cases: a straightforward single-item sale, a multi-line invoice, a walk-in buyer with no NTN. Fix anything that comes back before you touch production.
Step 5. Switch to production and submit
Once your sandbox invoices come back clean, open the branch record again and switch the mode to production. From this point, every "Submit to PRA" click is a real filing. Invoices come back with a real PRA invoice number and a QR code on the printed copy. Keep an eye on the first few, most first-week issues are a classification chosen for the wrong service, not a technical fault, and they are quick to spot once you see the actual PRA response.
A note on sales tax withheld by some clients
If some of your clients are withholding agents, government departments, large taxpayers, or a few other specified categories, they may withhold a portion of the sales tax shown on your invoice and deposit it with PRA directly, rather than paying you the full tax amount in cash. Under the Punjab Sales Tax on Services (Withholding) Rules 2015, this is usually one-fifth of the tax shown.
There is no separate field for this on the invoice itself, and that is by design, not a gap: the rule calculates the withheld amount as a fraction of the tax the invoice already shows, so the invoice has to carry the full tax regardless of who ends up paying which part of it. You create and submit the invoice exactly the same way whether or not the buyer will withhold. Tracking which invoices had tax withheld, and reconciling it against the withholding certificate the buyer issues you, is a bookkeeping step on your side at return time, not something the invoice itself needs to record.
PraTax connects to PRA for you
Once your POS ID and token are in, PraTax handles submission, the QR code, and record keeping. You enter the invoice, it does the rest.
Open PraTaxGeneral information, not tax advice. Confirm your obligations, and whether a specific client is a withholding agent, with your tax consultant.