Features #
Support Country/Region | Indonesia |
---|---|
processing currency | IDR |
settlement currency | USD |
Maximum transaction amount | No Transaction Limit depends on users balance. |
refund | ❌ |
partial refund | ❌ |
multiple partial refund | ❌ |
chargeback | ❌ |
Payment flow #
Integration Method #
Payment method enumeration values: bank_transfer_id
There are two integration methods for bank transfer
- Direct API
- Checkout
Direct API #
How to integration #
For direct API integration, you can create a PaymentIntent and get url in only one step. The following is the demo of creating payment intent:
Create a PaymentIntent on your server and specify the amount to collect and a supported currency.
If you have an existing Payment Intents integration, add bank_transfer_id
to the list of payment method types.
Request
{
"amount": 1000000,
"currency": "IDR",
"confirm": true,
"payment_method_data": {
"type": "bank_transfer_id"
},
"return_url": "https://your.website"
}
response
{
"id": "pi_1664204164491640832",
"object": "payment_intent",
"created": 1685612167000,
"currency": "IDR",
"amount": 1000000,
"status": "requires_action",
"livemode": false,
"client_secret": "pi_1664204164491640832_secret_0lq3zf45XA4nCXR5ASyKh5UB",
"next_action": {
"type": "bank_transfer_id_handle_redirect",
"bank_transfer_id_handle_redirect": {
"url": "https://apitest.wooshpay.com/v1/receives/c12/pay/pi_1664204164491640832"
}
},
"payment_method_types": [
"bank_transfer_id"
],
"confirmation_method": "automatic",
"return_url": "https://your.website",
"payment_method": "pm_1664204164365811712",
"capture_method": "automatic"
}
Checkout #
Create a seesion #
Request
{
"cancel_url": "www.wooshpay.com",
"mode": "payment",
"success_url": "https://wooshpay.com/",
"payment_method_types": [
"bank_transfer_id"
],
"line_items": [
{
"price_data": {
"currency": "IDR",
"unit_amount": 10000000,
"nickname": "apple",
"product_data": {
"name": "apple"
},
"billing_scheme": "testscheme",
"lookup_key": "test_lookup_key"
},
"quantity": 1
}
]
}
Response
{
"id": "cs_1676152166701596672",
"object": "checkout.session",
"created": 1688460793000,
"livemode": true,
"currency": "IDR",
"customer": "",
"mode": "payment",
"status": "open",
"url": "https://checkout.wooshpay.com/pay/cs_1676152166701596672?key=pk_live_NTE2NzQzMzE3MjI5MzU4MzI1NzYxOjdWSld1WmpGd1dJZ3BLNHQyOU9UTVJvWTE2ODgwMjY3NjUwNDU",
"cancel_url": "www.wooshpay.com",
"line_items": {
"object": "list",
"data": [
{
"id": "li_1676152166739345408",
"object": "item",
"currency": "IDR",
"description": "apple",
"price": {
"id": "price_1676152166756122624",
"object": "price",
"created": 1688460793000,
"livemode": true,
"active": true,
"currency": "IDR",
"nickname": "apple",
"product": {
"id": "prod_1676152166772899840",
"object": "product",
"created": 1688460793000,
"livemode": true,
"active": true,
"name": "apple",
"updated": 1688460793000
},
"type": "one_time",
"unit_amount": 10000000,
"billing_scheme": "per_unit",
"lookup_key": "test_lookup_key"
},
"quantity": 1,
"amount_subtotal": 10000000,
"amount_total": 10000000
}
]
},
"payment_intent": "pi_1676152166986809344",
"payment_method_types": [
"bank_transfer_id"
],
"payment_status": "unpaid",
"success_url": "https://wooshpay.com/",
"amount_subtotal": 10000000,
"amount_total": 10000000,
"billing_address_collection": "auto",
"expires_at": 1688547192604,
"payment_link": "",
"client_secret": "pi_1676152166986809344_secret_12UeqK1EhVKoXfZrQoK0FBcv"
}
Next step #
You can add more features to your integration as needed
Create a Webhook #
Listen to events on your WooshPay account so your integration can automatically trigger reactions. Create a webhook that mainly focuses on enabled_events and url.