DANA
Learn about DANA, a digital wallet popular with customers from Indonesia.
DANA is an Indonesian digital wallet with over 30 million users. It is an all-in-one app that allows users to safely make cashless and cardless payments for everyday usage. With Dana, it's possible to pay online, in-store, and make mobile top ups and bill payments.
Features
Processing currencies | IDR |
---|---|
Settlement currencies | USD |
Minimum transaction amount | 100 IDR |
Maximum transaction amount | 300,000,000 IDR |
Refunds | ✅ |
Partial Refunds | ✅ |
Multiple partial refund | ❌ |
Chargeback | ❌ |
Integration Method
Payment method enumeration values: dana
There are two integration methods for DANA
- Direct API
- Checkout
Direct API
Payment flow
- For direct API integration, after creating payment intent by OpenAPI, customers will be redirected to DANA login page
- The client logs in to his/her DANA account and completes payment
- Payment succeeds and the client is redirected back to the page you designated
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:
A PaymentIntent is an object that represents your intent to collect payment from your customer and tracks the lifecycle of the payment process. 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 dana to the list of payment method types.
Request
{
"amount":100,
"currency":"IDR",
"confirm":true,
"payment_method_data" : {
"type":"dana"
},
"return_url":"https://your.website"
}
Response
{
"id": "pi_1646356544343769088",
"object": "payment_intent",
"created": 1681356963000,
"currency": "IDR",
"amount": 100,
"status": "requires_action",
"livemode": true,
"client_secret": "pi_1646356544343769088_secret_m58mCj87dL3cj5JiUOtbdx2e",
"next_action": {
"type": "redirect_to_url",
"dana_handle_redirect": {
"url": "https://XXXXXXXXXXXXXXXXXXX"
}
},
"payment_method_types": [
"dana"
],
"confirmation_method": "automatic",
"return_url": "https://your.website",
"payment_method": "pm_1646356544205357056",
"capture_method": "automatic"
}
Checkout
Payment flow
- Customer selects DANA from the list of payment methods available and clicks on the Pay botton
- Customers will be redirected to DANA login page
- The client logs in to his/her DANA account and completes payment
- Payment succeeds and the client is redirected back to the page you designated
Create a Session
Request
{
"cancel_url": "www.wooshpay.com",
"mode": "payment",
"success_url": "https://wooshpay.com/",
"payment_method_types": [
"dana"
],
"line_items": [
{
"price_data": {
"currency": "IDR",
"unit_amount": 20000,
"nickname": "apple",
"product_data": {
"name": "apple"
},
"billing_scheme": "testscheme",
"lookup_key": "test_lookup_key"
},
"quantity": 1
}
]
}
Response
{
"id": "cs_1676131330724724736",
"object": "checkout.session",
"created": 1688455825000,
"livemode": false,
"currency": "IDR",
"customer": "",
"mode": "payment",
"status": "open",
"url": "https://checkouttest.wooshpay.com/XXXXXXXXXXXXXXXXXXX",
"cancel_url": "www.wooshpay.com",
"line_items": {
"object": "list",
"data": [
{
"id": "li_1676131330754084864",
"object": "item",
"currency": "IDR",
"description": "apple",
"price": {
"id": "price_1676131330766667776",
"object": "price",
"created": 1688455825000,
"livemode": false,
"active": true,
"currency": "IDR",
"nickname": "apple",
"product": {
"id": "prod_1676131330783444992",
"object": "product",
"created": 1688455825000,
"livemode": false,
"active": true,
"name": "apple",
"updated": 1688455825000
},
"type": "one_time",
"unit_amount": 20000,
"billing_scheme": "per_unit",
"lookup_key": "test_lookup_key"
},
"quantity": 1,
"amount_subtotal": 20000,
"amount_total": 20000
}
]
},
"payment_intent": "pi_1676131330947022848",
"payment_method_types": [
"dana"
],
"payment_status": "unpaid",
"success_url": "https://wooshpay.com/",
"amount_subtotal": 20000,
"amount_total": 20000,
"billing_address_collection": "auto",
"expires_at": 1688542224918,
"payment_link": "",
"client_secret": "pi_1676131330947022848_secret_ENUbfvBKA7zljcENnlrG3K7q"
}
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.
Create a Refund
Create a refund to repay funds to your customer. You can also perform partial refunds, but not every payment method supports them. A partial refund is when you refund only part of the original transaction amount.