Virtual Account
DOKU provides various payment channels. One of the most used by our merchants is Virtual Account. By using this payment channels, your customer can pay their order through bank transfer and DOKU will notify you once the payment is completed by your customer. DOKU has partnered with various banks to help you provide many payment options for your customers.
Features for Virtual Account
There are 2 types of general features that can be used with Virtual Accounts :
Register : The VA number will be registered to DOKU and Acquirer will inquiry to our side when the customer make payment at the acquirer channel (ATM, mobile banking, internet banking, etc.)
DOKU Generated Payment Code ( DGPC )
Merchants don’t need to generate payment code, just need to request from DOKU and DOKU will send a unique payment code.
Component VA Number : BIN
and Unique VA Number
. Suitable for e-commerce business model.
Merchant Generated Payment Code ( MGPC )
Merchants can generate payment codes with their own rules, and send the code to DOKU and customers will use it for payment.
Component VA Number : BIN
and Unique VA Number
. Suitable for top up business model.
Direct Inquiry ( DIPC ) : The VA number is registered on merchant side and DOKU will forward Acquirer inquiry request to merchant side when the customer make payment at the acquirer channel (ATM, mobile banking, internet banking, etc.). Component VA Number :
BIN
andUnique VA Number
.
ONE TRANSACTION CAN'T USE 2 OR 3 FEATURES AT THE SAME TIME.
By default, DOKU will register your business with Doku Generate Payment Code feature which means BIN for VA will be generated by DOKU side. But there is no limit for you to be able to use 2 features at the same time. What it can't do is that 1 transaction uses 2 features at the same time.
GET THE BIN
If you want to use MGPC or DIPC, then please contact the care team to get a BIN as a component for the VA Number.
Billing Type
Billing type is a type of feature used by merchants to determine the method of payment for their customers when they are in Inquiry. In case, the customer can input the amount according to their expected amount or the customer can also pay according to the amount that has been determined by the merchant.
Here is a billing type and their defenition that can be implemented into virtual account transactions.
FIX_BILL
Customer can only pay the bill with the amount stated in the bill (Closed Amount / Full Payment).
NO_BILL
Customer can pay with their amount and Virtual Account can accept payments for any nominal value.
BILL_VARIABLE_AMOUNT
Customer can pay according to the amount they want or randomly in a predetermined range.
PARTIAL_AMOUNT
Customer can pay according to the amount they want in a predetermined amount stated in the bill.
Applicable for Channel
For your information, each acquirer has its own rules. There is an Acquirer that doesn't support billing type. Here's the checklist :
BCA VA
✅
✅
✅
❌
MANDIRI VA
✅
✅
❌
❌
BRI VA
✅
✅
❌
❌
BNI VA
✅
✅
❌
✅
PERMATA VA
✅
✅
❌
❌
CIMB VA
✅
✅
❌
✅
DANAMON VA
✅
✅
❌
✅
DOKU VA
✅
✅
❌
❌
MAYBANK VA
✅
✅
❌
❌
BTN VA
✅
✅
❌
❌
BNC VA
✅
✅
❌
❌
BSS VA
✅
✅
❌
❌
BIN Rules
In accordance with the explanation regarding the Virtual Account Component, BIN is one of the components to create a virtual account. So, here's an explanation regarding BIN rules and adapt them to your needs.
Reusable Status
Reusable Status is a parameter in API to indicate if Payment Code can be paid more than once, set this to true if merchants wish to enable it.
Here is a reusable status explanation. Set this value in the API, to implement reusable status.
true
Payment Code can be paid more than once
false
Payment Code can only be paid once
What's next?
You can learn more about how to integrate to each payment channels you wish by clicking the menu on the sidebar.
Last updated
Was this helpful?