Skip to main content
Until now you have used a test key against a sandbox business. Going live means using a live key against a production business, where each sale is a real tax document filed with KRA. Work through this list in order.
A live sale cannot be deleted. If one is wrong, the only remedy is a credit note, which is itself a tax document. Test thoroughly in the sandbox first.
1

Onboard the business for production

In the compliance dashboard, add the business as a production business with its KRA PIN, branch and device details. Production values come from KRA’s own onboarding. See eTIMS as a Third-Party Integrator (OSCU) for where each one comes from. You do not need to certify with KRA yourself.
2

Create a live key

On the production business’s Integrations page, create a key in Live mode. It is a different key from your test key, and a test key can never act on a production business. See Authentication & API keys.
3

Register your items again

A production business is a separate business from your sandbox one, with its own items. Create and register your items for it with POST /v1/items and POST /v1/items/{id}/register. The item id values will be different, so do not reuse ids you stored from the sandbox.
4

Add opening stock again

Add the real opening stock for goods with POST /v1/stock/adjustments. Stock you added in the sandbox is not there.
5

Switch your configuration

Replace the key with the live key, and, if you use callbacks, check that every callbackUrl is a public https address. The base URL does not change: it is still https://sync2books-compliance-api.apps.kintro.money/v1.
6

Run a smoke test

Issue one real, low-value sale. Open the receipt.verificationUrl and confirm KRA shows the receipt. Download the PDF and check it. Credit the sale if it should not stand.
7

Check you are operationally ready

  • Every POST of a sale or credit note sends an Idempotency-Key.
  • Your code handles 201, 202, 422 and 5xx responses, and a 429.
  • You read the rate-limit headers, and have asked support for a higher limit if you will need one.
  • Keys have an expiry or a rotation plan, and live keys are held in a secret store.
  • You alert on sale.failed callbacks, and your callback receiver re-fetches the sale before acting.

Support

For help going live, write to support@sync2books.com. Include the business, the sale or item id and the error body, and never the key. Service status is at status.sync2books.com.