Skip to main content

DANA Widget

DANA Widget is a DANA solution that streamlines the payment process for merchants and users. This solution offers two key functionalities:

  1. DANA Widget Binding: Users can securely link their DANA accounts to a merchant's platform, enabling seamless transactions.
  2. DANA Widget Non Binding: User chooses DANA as a payment method on their transaction by inputing their phone number.

This integration allows customers to browse, select items, and complete DANA payments all within the merchant's platform, enhancing user experience and conversion rates

DANA Widget Binding
User make a payment and bind the DANA's account into merchant's platform.
DANA Widget Non Binding
User make a payment using the DANA's account in merchant's platform
Mandatory APIs
Get OAuth 2.0 URL GETUsed to generate OAuth 2.0 redirect URL to DANA to initiate account binding process where the user will be able to register/login from DANA page
Apply Token POSTUsed to finalized account binding process by exchanging the authCode into accessToken that can be used as user authorization
Apply OTT POSTUsed to get one time token that will be used as authorization parameter upon redirecting to DANA
Direct Debit Payment POSTUsed to initiate payment from merchant’s platform to DANA

Merchants must select either Query Payment or Finish Notify API from below to validate transaction status.

Available Optional APIs
Account Unbinding POSTUsed to reverses the account binding process by revoking the accessToken and refreshToken
Finish Notify WebhookUsed to notify payment status and information from DANA to merchant’s platform
Query Payment POSTUsed to inquiry payment status and information from merchant’s platform to DANA
Cancel Order POSTUsed to cancel the order from merchant’s platform to DANA
Refund Order POSTUsed to refund the order from merchant’s platform to DANA
Balance Inquiry POSTUsed to query user’s DANA account balance via merchant
Transaction History POSTUsed to query user’s DANA transaction history list via merchant
Transaction Detail POSTUsed to query user’s DANA transaction history detail via merchant

Process Flow

The general flow of payment using a DANA Widget Binding is as follows:

scenario 0
  1. User begins DANA account binding with the merchant platform.
  2. Merchant calls Deeplink Binding to create redirect URL.
  3. Redirect customer to DANA App using the returned Deeplink URL.
  4. If merchant provides seamlessData parameter, the Seamless Binding process will be used and DANA will check if the user's phone number inside the seamlessData matches with then account that is logged into their DANA app. If they match, DANA will direct to agreement page.
  5. If the seamlessData user's phone number is different from the logged in account, DANA will require the user to log out of their current phone number and login or register using the seamlessData phone number.
  6. After successful authorization, DANA redirects the user to the agreement page.
  7. When merchant does not provide seamlessData, the Normal Binding process will be used and DANA will show the phone number input screen.
  8. User enters phone number and do login or register.
  9. After successful authorization, DANA redirects the user to the agreement page.
  10. User makes an agreement to continue the process.
  11. DANA returns the result of binding process to DANA Server.
  12. DANA redirects the customer to the redirectUrl set by merchant along with the authCode.
  13. Merchant exchanges the authCode for an accessToken by calling Apply Token API.
  14. DANA returns the accessToken and refreshToken that are valid for each user.
  15. The merchant stores accessToken and refreshToken.