By the end of this guide, you’ll have created a sandbox payment with the Simiz API and redirected the customer to the hosted payment page.

Prerequisites

Environments

1

Create your Simiz account

Sign up at simiz.io/register. You’ll get instant access to your dashboard and sandbox environment.Once signed in, navigate to Settings → API Keys to find your test credentials.
2

Get your API keys

You’ll have two types of API keys:
Never expose your secret key in client-side code or public repositories. Use environment variables to store your keys securely.
3

Create your first payment

From your backend, create a payment with your API key. Add an Idempotency-Key header to safely retry the request without creating a duplicate (key valid for 24h). See the POST /payments API reference.
The response returns the payment token, its PENDING status and the hosted payment URL:
4

Redirect the customer to pay

Redirect the customer to the returned paymentUrl. On this hosted page they pick their Mobile Money operator (Orange Money, MTN MoMo…), enter their number and confirm via a USSD prompt on their phone.When done, Simiz sends them back to your returnUrl (success) or cancelUrl (cancelled).
The returnUrl does not prove payment — it’s just a browser redirect. Always confirm the payment server-side via the webhook (below) or GET /v1/payments/{token}/verify.
5

Confirm with a webhook

Once the payment is confirmed by the operator, Simiz sends a transaction.completed webhook to the webhook URL configured in your dashboard:
Every webhook is signed. Verify the X-Simiz-Signature header (format t={timestamp},v1={hmac}, HMAC-SHA256 computed over {timestamp}.{raw_body}) before processing the event.
See the Signature Verification guide for full examples in Node.js, Python and PHP.

Sandbox test numbers

On the hosted payment page in sandbox, use these numbers to simulate different outcomes:

Full sandbox documentation

See all test numbers and scenarios in the Sandbox guide.

Next steps

Choosing a plan? Visit the pricing page and append ?intent=growth (or starter / scale) to the contact URL to pre-fill your plan of interest in the sales form.Example: https://simiz.io/contact?intent=growth

Configure Webhooks

Set up real-time notifications for payment events.

Explore the API

Browse the full API reference.