FBR Digital Invoicing Sandbox Testing Scenarios (SN001–SN028) Explained
Before you go live, FBR requires you to pass sandbox test scenarios that match your business activity and sector. Here is what the SN001–SN028 scenarios are, which ones apply to you, and how to clear testing without surprises.
What sandbox scenarios are
The FBR Digital Invoicing sandbox is a testing environment where you post sample invoices before touching any real data. Each sample maps to a numbered scenario — SN001 through SN028 — that represents a specific kind of sale, such as standard-rate goods, reduced-rate goods, exempt goods, 3rd Schedule items, services or steel-sector sales.
Passing the scenarios that apply to your profile is how FBR confirms your setup produces valid invoices. Only once your required scenarios validate cleanly is your production token issued and you can go live.
Which scenarios apply to you depend on your profile
You are not expected to pass all 28. The scenarios you must clear are driven by your registered business activity (manufacturer, importer, distributor, wholesaler, exporter, retailer, service provider or other) and your sector (for example steel, FMCG, textile, telecom, petroleum, pharmaceuticals or all-other-sectors).
For instance, a standard manufacturer in all-other-sectors typically tests standard-rate, reduced-rate, exempt, zero-rate and a few related scenarios, while a steel business tests steel-melting, ship-breaking and toll-manufacturing scenarios instead. Retailers registered as such also test the end-consumer scenarios (SN026–SN028).
The scenarios people trip on most
The most common testing failures come from a handful of fields. The extra-tax field must be empty for reduced-rate, exempt, zero-rate and non-adjustable supplies — sending a zero where an empty value is required triggers a rejection. 3rd Schedule goods calculate sales tax on the printed retail price, not the transaction value, so the retail-price field must be populated and the value field left at zero.
Other frequent snags are the unit of measure not matching the HS Code, a missing SRO/schedule number where the rate is not 18%, and a calculated tax amount that does not match the rate times the value. Each of these maps to a specific FBR error code with a clear fix.
The scenarioId only belongs in sandbox
Every sandbox payload carries a scenarioId (for example "SN001") that tells FBR which case you are testing. This field is required in sandbox and must be removed for production — a live invoice should never carry a scenarioId.
A good platform strips this automatically when you switch environments, so you do not have to remember. It is a common cause of confusion for teams building their own integration by hand.
How to clear testing without surprises
Work through your required scenarios one at a time, read the exact error code on any rejection, and fix that single field before moving on — chasing several errors at once is where teams lose days. Keep a note of which scenarios you have passed so you can see when your set is complete.
Digi Invoice handles the sandbox and production connection, builds each scenario's payload correctly and validates against the FBR DI v1.12 rules before submission, so clearing your required scenarios is a guided process rather than trial and error.