Create Checkout Payments
Initialize payment sessions securely by making a server-to-server POST request. Once generated, redirect the end-customer to the returned checkout URL.
Example cURL Request
curl -X POST https://gateway.payparse.site/api/v1/order/create \
-H "Content-Type: application/json" \
-H "x-api-key: YOUR_MERCHANT_API_KEY" \
-d '{
"amount": 1500.00,
"order_ref": "INV-1002",
"expires_in": 900,
"success_url": "https://yoursite.com/payment/success",
"cancel_url": "https://yoursite.com/payment/cancel"
}'Response Payload (201 Created)
{
"payment_id": "2d65bfdf-28c9-41c8-bee3-6a6d78f59581",
"checkout_url": "https://gateway.payparse.site/checkout/2d65bfdf-28c9-41c8-bee3-6a6d78f59581",
"expires_at": "2026-06-09T20:20:00.000Z",
"amount": 1500.00,
"currency": "BDT",
"status": "pending"
}Active Payment Limits
Every checkout request is evaluated against configured safety boundaries and active merchant limits.
| Limit Type | Threshold | Evaluation Boundary |
|---|---|---|
| Minimum Amount | 10.00 BDT | Per single checkout session trigger. |
| Maximum Amount | 500,000.00 BDT | Per checkout limit safeguard. |
| Session Expiry | 300s - 86,400s | Min 5 minutes, max 24 hours (default 15m). |
Note on personal limits: Individual customer payment limits are also constrained by their mobile banking provider limits (bKash/Nagad/Rocket personal account transaction limitations).
Cancel Payments & Redirections
Active payment links can be cancelled, abandoned, or expired by the customer or the merchant system.
Customer Cancellation
If the customer clicks "Cancel and return" on the selection card, the gateway automatically redirects them to your specified cancel_url.
Session Abandonment
If a user leaves the checkout route, the session remains active until expires_at passes. Once expired, any attempt to access the link redirects to the merchant's cancel URL.
