Skip to main content
Use a pk_test_… key with the test base URL. No card is ever charged and no money moves (settledAt stays null). Statuses, webhooks, receipts and fees behave like live.
1

Use your test key and test base URL

Send pk_test_… in the x-api-key header.
2

Pay with a test card

Use one of the test cards. Any name, any future expiry (e.g. 12/30) and any CVV (e.g. 123).
3

Enter a test OTP

123456 succeeds. Any other code is wrong.
4

Check your webhook

Confirm your endpoint verifies the signature and handles each event once.
Before going live, test every outcome: success, declined, insufficient funds, expired card, wrong OTP, and card network unavailable.