BNC v1.0

DOKU has partnered with various banks and one of them is BNC to provide Virtual Account Payment. Learn more about how DOKU can help you integrate with BNC Virtual Account here.

Process Flow

There is one method to integrate with BNC VA:

VA From Acquirer

Merchant could hit create VA API (service code 27) to create their virtual account number by acquirer. The number created then will be inquired by acquirer, merchant can get the payment notification.

Check this flow diagram to get know about this method

Integration Steps

Here is the overview of how to integrate with Virtual Account:

1. Create Virtual Account

To create Virtual Account, you will need to hit this API through your Backend:

API Endpoint


Service Code


HTTP Method


API Endpoint Sandbox

API Endpoint Production


Here is the sample request header, request body and response body for BNC VA

  1. DOKU Generate Payment Code

  1. Merchant Generate Payment Code

Pro Tips!

  1. You can also show payment instruction link to your customer by using virtual_account_info.how_to_pay_page

  2. If you wish to customize the UI for the payment instruction, you can use the virtual_account_info.how_to_pay_api

2. Display Virtual Account

You can display the payment code to your customer by using virtual_account_info.virtual_account_number that you retrieved from the API response.

3. Acknowledge payment result

After the payment is being made by your customer, DOKU will send HTTP Notification to your defined Notification URL. Learn how to handle the notification from DOKU .

4. Hit DOKU Check Status API

If you do not receive notifications from DOKU due to some issue, you can perform an API status check on the DOKU side to determine the updated transaction status. See the detailed request and response here Check Status API.

Last updated