Skip to content
FBR compliance

FBR Sandbox Scenario Testing: A Practical Guide

How FBR's sandbox scenario testing works before you can go live — what to test, common failure points, and moving to a production token safely.

Sources: 2

Why sandbox testing exists

FBR doesn't grant production access to digital invoicing on request — it requires every business to first certify in a sandbox environment, submitting test invoices that mirror real transactions until they consistently pass validation. The logic is straightforward: FBR would rather catch integration problems against test data than have a business's live sales tax invoices failing validation in production. If you've just completed registration on IRIS, sandbox testing is the step directly ahead of you.

Finding the scenario set for your business nature and sector

FBR assigns a specific set of test scenarios based on your business's nature and sector — not a single universal checklist every business runs through. Some sources reference scenario codes like SN001 through SN028, but the exact set that applies to you depends on how your business is classified in FBR's system, so confirm your assigned list rather than assuming a fixed count applies. A retailer's scenario set will look different from a pharma distributor's or a services business's, reflecting the different invoice types each sector actually issues.

Building a clean test payload

Most sandbox friction has nothing to do with FBR's system being difficult — it comes from the test payload itself. The fields that trip people up most often:

  • Buyer identification — NTN/CNIC fields formatted incorrectly, or left blank where the scenario requires them
  • HS codes — assigned incorrectly or inconsistently across similar products
  • Tax calculation — rounding or price-base errors that only surface once FBR recalculates independently
  • Date and reference formatting — small formatting mismatches that are easy to overlook in a hand-built test file

Building your test payloads directly from real (but not live) transaction data, rather than from scratch, tends to surface these issues faster than synthetic examples.

Reading a sandbox rejection vs. a production rejection

A sandbox rejection and a production rejection return the same category of error code, but they mean different things practically. A sandbox rejection is expected — it's the system doing its job, telling you what to fix before you're allowed to go live. A production rejection, once you're certified, usually signals either a data-quality problem that slipped past testing or a configuration drift (a credential, a changed product record) since certification. Our complete guide to FBR invoice error codes breaks down what each category of rejection actually means, in either environment.

When you're "done": what certification actually confirms

You're considered certified once every scenario in your assigned set passes validation consistently — not just once. Certification confirms that your software can correctly format, submit, and receive a valid FBR response for the invoice types your business actually issues. It does not guarantee you'll never see a rejection in production; it means the basic integration is sound, and any future issues are more likely to be data problems (a specific SKU, a specific buyer record) than a structural integration failure.

Flipping to your production token safely

Once certified, moving to production is a configuration change, not a re-registration — but it's the step most likely to be rushed. Before flipping:

  1. Confirm every scenario in your assigned set has passed, not just the majority.
  2. Swap sandbox credentials for production credentials deliberately, and test with a single real invoice before resuming full volume.
  3. Keep sandbox and production credentials clearly labeled in your system to avoid the token-binding mix-up that catches many businesses right after go-live.

Keep a record of your certification

Once every scenario in your assigned set has passed, save the confirmation and a short summary of what was tested — which scenario codes, which invoice types, and the date certification completed. This becomes useful in two ways: it's the reference point if a production rejection later raises the question of whether it's a genuinely new issue or something sandbox testing should have caught, and it's documentation your tax advisor may want on file alongside the rest of your integration records.

Aboha Digital Invoicing is coming soon, and sandbox testing is planned to be free with it. Tasdeeq by Aboha is the live product, for counter sales. Sandbox certification is one stage of a longer path, and our FBR compliance hub shows where it sits between registration and go-live. If your sandbox certification has stalled, contact us and we will point you in the right direction.

Frequently asked questions

How many scenarios do I need to pass?

The exact scenario set depends on your business nature and sector as assigned by FBR/PRAL — confirm your specific list rather than assuming a fixed universal count.

Can I go live before every scenario passes?

No — production access is normally gated on completing certification for your assigned scenario set.

What's the difference between a sandbox and production rejection?

A sandbox rejection is an expected part of certification — it tells you what to fix before go-live. A production rejection after certification usually points to a data-quality issue or configuration drift rather than a structural integration problem.

Sources

  1. FBR e-Invoice Scenario Testing Guide
  2. FBR Digital Invoicing Technical Assistance

This article is informational and is not tax or legal advice. Confirm your specific obligations with FBR or your tax advisor.

Related reading

Back to the blog

Check how FBR integration applies to you

Book a demoWhatsApp us