Overview

DOKU provides various payment channels. One of the most used by our merchants is Online to Offline. By using this payment channels, your customer can pay their order through offline counters and DOKU will notify you once the payment is completed by your customer. DOKU has partnered with various partners to help you provide many payment options for your customers.

Partnerships Model

Each user may have different needs for the business and the way they receive funds. DOKU has 2 types of models for accepting payments, namely the Aggregator Model and the Direct Model. For full details, you can check the details here.

The following is a list of models in receiving your funds for each bank via Online to Offline.


Features for Online to Offline

Payment Code Component

PAYMENT CODE COMPONENT

Payment Code which is displayed to customer, contains two parts. The first part is the company code (BIN) and the second part is unique payment code.

There are 2 types of general features that can be used with Online to Offline:

  1. Register: The payment code will be registered to DOKU and Acquirer will inquiry to our side when the customer make payment at the acquirer channel (Alfa Group, etc.)

  1. Direct Inquiry (DIPC): The payment code is registered on merchant side and DOKU will forward Acquirer inquiry request to merchant side when the customer make payment at the acquirer channel (Alfa Group, etc.). Component Payment Code : BIN and Unique Payment Code.

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 payment code 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 payment code.


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.

NOTE

Online to Offline only supports FIX BILL


BIN Rules

In accordance with the explanation regarding the payment code Component, BIN is one of the components to create a payment code. So, here's an explanation regarding BIN rules and adapt them to your needs.

NOTE

These rules only apply to Aggregator Partnership Models, which means merchants use DOKU's BIN.


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.

By default, DOKU will set the value to false, if you don't send this parameter on request.


Integration steps

Here is the overview of how to integrate with O2O:

  1. Generate payment code

  2. Display payment code

  3. Acknowledge payment result

Direct API - O2O Sequence Diagram


1. Generate payment code

To generate payment code, you will need to hit this API through your Backend:

API Request

You need to change the {{channel-name}} and {{version}} accordingly based on what payment channel you wish. Here is the list:

Every object naming in our O2O APIs are standarized and have their own customization to ensure easy integration. Therefore, you can learn more about how to integrate to each of them by clicking the link above.


2. Display payment code

You can display the payment code to your customer by using online_to_offline_info.payment_code 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:


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