How does onboarding work?
Onboarding takes eight steps, from the first conversation to live traffic:
- Contact Omno. Tell us your markets, methods and current providers.
- Account created. Omno creates your merchant account and gives you dashboard access.
- Choose your integration. The hosted checkout, or your own checkout with Card Fields for cards and Direct Links for local methods, wallets and crypto. The older Payment Page is not available to new merchants.
- Generate API credentials. In the dashboard, go to Developers, API Credentials and create a Client ID and Client Secret.
- Configure providers and routing. Payment providers and routers are set up for your account.
- Integrate and test against fake payment providers, as described below.
- Configure and verify webhooks, including repeated and out-of-order deliveries.
- Go live. Omno removes the fake providers and activates your live ones.
Which hosts does the API use?
Three hosts cover everything:
| Host | Used for |
|---|---|
https://api.omno.com | All API requests |
https://sso.omno.com/realms/omno/protocol/openid-connect/token | OAuth 2.0 token endpoint |
https://checkout.omno.com | The hosted checkout, and the baseUrl for the Web SDK |
How do I get an access token?
Use the OAuth 2.0 client credentials flow. Your backend sends the Client ID and Client Secret to the token endpoint and receives an access token, then sends it on every API call:
POST /realms/omno/protocol/openid-connect/token
Host: sso.omno.com
Content-Type: application/x-www-form-urlencoded
grant_type=client_credentials&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET
POST /public/cashier/session
Host: api.omno.com
Authorization: Bearer <access_token>
Keep the Client Secret and access tokens on your backend. They never belong in a browser or mobile app.
How do I test without a separate test environment?
You test in production with fake payment providers. Omno configures them on your account; in the dashboard they appear under Payment Providers, Add Provider as Fake Card Pay-In, Fake APM Pay-In, Fake Card Pay-Out and Fake APM Pay-Out. Authorise each one and check that it is active in your router. Test transactions are not charged, and Omno removes the fake providers when testing ends.
Test cards work only with the fake providers. Use expiry 12/29, CVC 123 and any cardholder name:
| Card number | Result |
|---|---|
4539148803436467 | Success |
6011111111111117 | Failure before the provider |
378282246310005 | 3-D Secure challenge, with a simulated page to pick the result |
To force a specific decline on a card, use the code as the CVC. For local methods, enter the same three-digit code in the recipient field:
| Code | Card or method decline | Payout decline |
|---|---|---|
| 001 | General decline | |
| 002 | Not allowed | |
| 004 | Expired card | Expired |
| 005 | Inactive or blocked | Inactive |
| 011 | Insufficient funds | Insufficient funds |
| 013 | Invalid card number | Invalid card number |
| 015 | CVV check failed | |
| 016 | Invalid amount or currency | |
| 026 | Fraud | Fraud |
| 033 | Provider timeout | Timeout |
| 034 | Provider rejected | Rejected |
| 040 | Service unavailable | Unavailable |
For payouts that need manual approval, test both confirming and rejecting them.
What must be true before go-live?
Run through this list with the Omno team:
- Omno has removed the fake payment providers.
- Live providers are configured and your routers are verified.
- Webhook handling is verified, including repeated deliveries and statuses that arrive out of order.
- Your balance logic ignores fake provider IDs.
- Final statuses come only from webhooks or Get Transaction Info, never from redirects or browser events.