Developers
Integrate UPI payments in an afternoon.
Create an order server-side, open the cashier, and listen for the signed webhook. That is the whole integration.
Quickstart
Four steps to live
1 · Get your keys
Create a merchant account and copy your API key from the dashboard. Keep it server-side only.
Open merchant panel →2 · Create an order
POST https://paysetu-api.theraphael.online/v1/orders with amount_paise (integer) and an Idempotency-Key. You get back a token and payment_url.
API reference →3 · Open the cashier
Redirect to payment_url or load vexoli.js and call Vexoli.open({ token }).
SDK guide →4 · Listen for the webhook
Verify the signature, then fulfil on payment.success. Never fulfil on a browser callback alone.
Webhook guide →curl -X POST https://paysetu-api.theraphael.online/v1/orders \
-H "Authorization: Bearer $VEXOLI_API_KEY" \
-H "Idempotency-Key: order-2481-v1" \
-H "Content-Type: application/json" \
-d '{"amount_paise": 49900, "reference": "ORD-2481", "customer": {"name": "Asha", "phone": "9876543210"}}'