- Build Your Integration
Go live
Stage 6 of 6. When your integration works in Sandbox, move it to Live. In Live, Wafeq ASP delivers real e-invoices and reports them to the FTA.
This page uses these terms:
- Live: the mode of the Wafeq ASP portal and the API for real e-invoicing.
- Subscription: the paid plan of your organization for Wafeq ASP in Live. You buy and manage it in the Wafeq ASP portal.
- Taxpayer seat: one unit of your subscription. Each business from which your organization has an active grant holds one seat.
- Verified app: an app that Wafeq ASP verified on request. An app that is not verified can have a maximum of 25 businesses in Live.
Live and Sandbox are separate. Nothing from Sandbox goes to Live: no API keys, no OAuth client, no webhook endpoints, no taxpayers, no grants and no documents. For this reason, you do the setup again in Live, and each business connects again in Live.
Before you start
Make sure that your integration does these tasks correctly in Sandbox:
- It connects a test taxpayer. Refer to Connect a taxpayer.
- It checks and submits documents. Refer to Submit a document.
- It tracks the delivery and the report of each document. Refer to Track a document.
- It issues credit notes and corrections. Refer to Correct or cancel a document.
Go live: the five steps
| Step | Action |
|---|---|
| 1 | Buy a subscription in Live. |
| 2 | Do the setup of your organization again in Live. |
| 3 | Get your app verified, if it will have more than 25 businesses. |
| 4 | Change the configuration of your app to Live. |
| 5 | Connect each business again in Live. |
Step 1: Buy a subscription in Live
- In the Wafeq ASP portal, select Live.
- Buy a subscription. Get enough taxpayer seats for the businesses that you will connect.
Without an active subscription, no business can approve your app in Live, and your app cannot submit documents in Live.
Step 2: Do the setup of your organization again in Live
In Live mode, do the four steps of Set up your organization again:
- Create a Live API key. A Live API key starts with
pk_live_. - Get the Live OAuth client, and add your callback URLs. In Live, each callback URL must use HTTPS.
- Add a Live webhook endpoint, select the events, and copy its signing secret.
- Make sure that the name, logo, support email and website of your app are correct. Businesses see them on the approval page.
Step 3: Get your app verified, if it will have more than 25 businesses
An app that is not verified can have a maximum of 25 businesses in Live. If your app will have more businesses, contact Wafeq ASP to get your app verified.
Step 4: Change the configuration of your app to Live
Change these values in the configuration of your app:
| Value | Sandbox | Live |
|---|---|---|
| API key | pk_test_… | pk_live_… |
| OAuth client ID and secret | Sandbox client | Live client |
| Authorization page | https://portal-einvoicing.wafeq.com/sandbox/oauth/authorize | https://portal-einvoicing.wafeq.com/oauth/authorize |
| Token endpoint | https://portal-einvoicing.wafeq.com/sandbox/oauth/token | https://portal-einvoicing.wafeq.com/oauth/token |
| Webhook signing secret | Sandbox secret | Live secret |
The base URL of the API does not change: https://api.wafeq.com/ae/v1. The API key selects the mode.
Step 5: Connect each business again in Live
Send each business through the connection flow in Live. Refer to Connect a taxpayer.
In Live, a new business does its onboarding in EmaraTax. This is the real onboarding, and Wafeq ASP registers the business with the FTA and on Peppol. A business that is already onboarded with Wafeq ASP only signs in and approves your app.
Each business gets a new Taxpayer ID and a new grant ID in Live. Store them separately from the IDs of Sandbox.
After you go live
These items are not steps. Monitor them while your integration runs in Live.
- Taxpayer seats. When all seats are in use, new businesses cannot approve your app. Free seats or change your subscription before this happens.
- The subscription. If the subscription stops, Wafeq ASP refuses submissions with
402 subscription_required. - Webhook events. Make sure that your webhook endpoint answers. Wafeq ASP sends each event again if the endpoint does not answer with a
2xxstatus.
For the details behind each field and each error, refer to How UAE E-Invoicing Works and to Reference.
Updated about 14 hours ago