Cuzdan360 — Integration Guide¶
1. Overview¶
Cuzdan360 accepts deposit and withdraw requests from your site, routes them to a payment channel/account, and notifies your callback URL with a signed message once the result is final.
| Direction | Caller | Description |
|---|---|---|
| Request | You → Cuzdan360 | HMAC-signed calls to /paymentapi/v1/* |
| Callback | Cuzdan360 → You | Signed POST to your callback URL on approve/reject |
Deposit flow — hosted payment page (standard):
1. User starts a deposit on your site
2. You ──POST /paymentapi/v1/deposits {"redirect": true}──▶ Cuzdan360 (HMAC signed)
3. Cuzdan360 returns a payment_url
4. You redirect the user there; they enter the amount and see the IBAN on a
Cuzdan360-hosted page, then pay
5. On approval Cuzdan360 ──POST {callback_url}──▶ You (hashcode signed)
6. You verify hashcode, credit the user, return HTTP 200
This is the integration we recommend and the one the rest of this guide leads with: you never render an IBAN, never handle the amount, and the payment screen (including the auto-cancel countdown) is maintained by us.
redirect: truemust be sent explicitly. The field defaults tofalsewhen omitted — a request without it runs the direct flow below. There is no account-level switch; it is decided per request.
Withdraw is the same shape: create via /paymentapi/v1/withdrawals, result delivered by callback.
Alternative: direct flow. If you want to render the IBAN on your own page,
omit redirect and send amount instead. Cuzdan360 then returns a bank account
(assigned_bank_name, assigned_holder_name, assigned_iban) rather than a
payment_url, and you show it yourself. The result reaches you by callback
exactly the same way — see section 5.1.