Developers
Build on TujuPay in an afternoon.
A clean REST API, signed webhooks and a sandbox that behaves like the real thing. Amounts in sen, idempotent writes and errors that tell you what to fix.
Start here
Documentation
A step-by-step guide from your first API key to your first live payment.
Learn moreAPI reference
Every endpoint, field, status and error code, with request and response examples.
Learn moreWebhooks
Get told the moment a payment, refund or payout happens, and verify it came from us.
Learn moreSandbox
Test approvals, declines and timeouts with test banks and no real money.
Learn moreFrom zero to your first payment.
- 1
Get your sandbox keys
Sign up and copy your test secret key from the dashboard. No approval needed.
- 2
Create a payment
Send the amount in sen and the methods you accept. You get back a checkout link.
- 3
Listen for the webhook
We call your server when the payment succeeds. Check the signature, then fulfil the order.
curl https://api.tujupay.com/v1/payments \ -u sk_test_51HxQ2...: \ -H "Idempotency-Key: order-2214" \ -d amount=18900 \ -d currency=myr \ -d "methods[]=fpx" \ -d "methods[]=duitnow_qr" \ -d reference=ORDER-2214 \ -d return_url=https://yourshop.my/orders/2214
Made for developers.
SDKs
Official libraries for Node.js, PHP and Flutter.
Idempotency keys
Retry any write safely without creating duplicates.
Signed webhooks
Every event is signed with HMAC so you know it came from us.
Sandbox banks
Test FPX banks that approve, decline or time out on demand.
Questions, answered.
Is the API available today?+
The sandbox opens to waitlist developers first. Live keys follow once TujuPay is licensed.
Do you have a WooCommerce plugin?+
Yes, along with Shopify. Both use the same API underneath.
Be first when we open.
We will invite merchants in small groups. Join the waitlist and we will save you a spot.