Beruflich Dokumente
Kultur Dokumente
Table of Contents
1. Introduction 3
1.1 About this document 3
1.2 Requirements 3
2. Transaction 4
2.1 Credit Card 4
2.1.1 Overview 4
2.1.1.1 BIN Filtering 4
2.1.1.2 Installment 4
2.1.1.3 Tokenization 4
2.1.1.4 Recurring 5
2.1.1.5 Customer Input at Merchant 5
2.1.1.6 Authorize & Capture 5
2.1.1.7 Void, Refund, or Cancellation 5
2.1.2 Transaction Flow 6
2.2 DOKU Wallet 7
2.2.1 Overview 7
2.2.2 Transaction Flow 7
2.3 Internet Banking 8
2.3.1 Overview 8
2.3.2 General Internet Banking Transaction Flow 8
2.3.3 KlikBCA Transaction Flow 9
2.4 Virtual Account 10
2.4.1 Overview 10
2.4.2 Regular 11
2.4.3 Direct 12
3. Message Formats and Contents 13
3.1 Shared Key Hash Value 13
3.2 Payment Request 14
3.2.1 Method and URL 14
3.2.2 Parameters Required 14
3.2.3 Advanced Features 15
3.2.3.1 Airlines 15
3.2.3.2 Credit Card Installment 16
3.2.3.3 Tokenization 16
3.2.3.4 Recurring 17
3.2.3.5 Customer Input at Merchant 17
3.3 Other Payment Request 17
3.3.1 Method and URL 17
3.3.2 Parameters Required 18
3.3.3 Response 18
3.4 Identify (optional) 19
3.4.1 Method 19
3.4.2 Parameters Sent 19
3.5 Notify 19
3.5.1 Method 19
3.5.2 Parameters Sent 19
3.5.3 Notify Response 20
3.6 Redirect 20
3.6.1 Method 20
3.6.2 Parameters Sent 20
3.7 Capture 21
1
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
2
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
1. Introduction
1.1 About this document
This documentation is intended to be used as manual ONLY for registered DOKU Merchants Technical / IT
Division or merchant’s appointed 3rd party vendor / web developers to integrate DOKU Payment Module in
Merchant’s websites.
In this document will explain in details how to use the Communication API with DOKU, how to represent the
payment page and what are the best practices. All samples for API in this document are using PHP language.
Other language can follow the same logic used in the PHP samples. All variables and parameters explained in
this document are treated as case-sensitive.
All users have to obey the rules to prevent account theft and security breach as follows:
• DO NOT SHARE this document to other party without any legal permission from DOKU. Fail to do so will
be lead to law prosecution.
• DO NOT SHARE any kind of Bank Information for merchant to other party. DOKU will not be responsible
of any problems that may occur from this action.
1.2 Requirements
- MID/TID from Bank Acquirer for accepting Visa, MasterCard, and JCB credit card transactions.
- DOKU Merchant ID or MALL ID. This number is generated by DOKU Integration Team and is provided to
you upon account activation.
- Merchant prepares URL in testing and production environment for 3 type of transaction, which are: Identify
(optional), Notify, and Redirect.
- DOKU API have minimum requirements to run properly:
o Dynamic language : Must use a language that support dynamic environment. Cannot be plain HTML.
o Language : Can use any kind of language that web-enabled such as Apache PHP, Microsoft ASP,
Adobe ColdFusion, Sun Java, Ruby on Rails.
o Frameworks : Virtually can use many of different framework available such as CodeIgniter, Spring, etc.
o Capable of using both HTTP Method GET and POST.
o Database : Any kind of database available in the market that support basic SQL Statements.
3
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
2. Transaction
2.1 Credit Card
2.1.1 Overview
DOKU accept all credit card issued with these Principals:
• Mastercard
• Visa
• JCB (Only for BNI Acquiring)
Credit card transaction in Indonesia Online Merchant is usually required additional security from issuer Bank,
called 3D Secure. This process will ask the genuine credit card holder to enter Internet PIN or One Time PIN
(OTP) that usually sent to Credit Card Holder mobile phone.
2.1.1.2 Installment
DOKU supported credit card installment payment. Merchant can trigger installment payment by adding some
parameters in payment request to DOKU.
2.1.1.3 Tokenization
Tokenization enables the customer to make a purchase without having to input card details or personal
information, apart from the CVV number. This process is typically used by merchants that have repeat
customers who will benefit from a faster checkout by reducing the number of fields the customer needs to fill
in. If the card issuer requires 3D secure verification process, the customer will still have to complete this to
make a purchase. In order for this process to work, the customer enters all of the card information only during
the very first time they make a purchase. DOKU stores this data in a secure form and gives the merchant a
token, which is paired to the customer’s login credentials on the merchant website. After this process has
been completed, each time they make a payment from hereon out, they only have to input the CVV.
4
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
2.1.1.4 Recurring
Using the same principles as Tokenization, Recurring payment takes it a step further and allows the customer
to make a purchase with a single click on the website. This means that they can skip the process of inputting
their card details, personal information, CVV number and 3D secure. The customer will have to enter the card
details and complete the 3D secure verification process only during the first time they make a purchase. By
eliminating the extra steps, you are able to create a more seamless and easy checkout process, which may
lead to a lower drop-off rate. However, please note that this is subject to DOKU’s and the bank’s approval due
to an increase in fraud risk. Please contact DOKU if you are interested to implement Recurring feature.
Authorize & Capture is a feature that allows you to block a certain amount from the customer’s credit card limit
(Authorize), then hold it for a certain period before charging a payment – which can be a different amount from
what you block (Capture). To enable this feature, you will need an agreement with the acquiring bank; please
contact DOKU sales representative for more detail.
5
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
6
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
Description:
1. Customer conducts the checkout process on merchant's webpage
2. Merchant send payment request to DOKU and redirect page
3. DOKU displays payment page to the customer
4. Customer inputs the card and payment detail and submits the payment page to DOKU
5. DOKU can send payment channel used to Merchant using Identify API (optional)
6. DOKU will redirect customer to 3D Secure page (except for the rare occasion where 3D Secure is
disabled)
7. Customer submits the OTP on 3D Secure page and back to DOKU
8. DOKU submits transaction to acquiring bank
9. Bank gives response for the transaction process (success or failed)
10. DOKU notifies the transaction result to the merchant
11. Merchant gives response for transaction process (continue or stop) / (expect CONTINUE)
12. DOKU will redirect the customer back to merchant’s webpage and display the result
13. If merchant does not receive notify status from DOKU, please run/do Check Status function
7
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
14. If merchant uses EDU, please wait for the second notify status before flagging the transaction to
SUCCESS
Description:
1. Customer conducts the checkout process on merchant's webpage
2. Merchant send payment request to DOKU and redirect page
3. DOKU displays payment page to the customer
4. Customer select DOKU Wallet in DOKU payment page
5. DOKU can send payment channel used to Merchant using Identify API (optional)
6. DOKU will redirect customer to DOKU Wallet page
7. Customer submits data and authentication required in DOKU Wallet page
8. DOKU notifies the transaction result to the merchant
9. Merchant gives response for transaction process (continue or stop) / (expect CONTINUE)
10. DOKU will redirect the customer back to merchant’s webpage and display the result
8
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
11. If merchant does not receive notify status from DOKU, please run/do Check Status function
12. DOKU will respond with transaction status info to Merchant
9
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
Description:
1. Customer conducts the checkout process on merchant's webpage
2. Merchant send payment request to DOKU and redirect page
3. DOKU displays payment page to the customer
4. Customer select Internet Banking as payment channel
5. DOKU can send payment channel used to Merchant using Identify API (optional)
6. DOKU redirect page to Bank’s Internet Banking page
7. Internet Banking page showed to the Customer
8. Customer do transaction in Internet Banking page
9. Bank respond Internet Banking result to DOKU
10. DOKU notifies the transaction result to the merchant
11. Merchant gives response for transaction process (CONTINUE)
12. DOKU will redirect the customer back to merchant’s webpage and display the result
13. If merchant does not receive notify status from DOKU, please run/do Check Status function
14. DOKU will respond with transaction status info to Merchant
10
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
11
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
o Sinarmas
• Convenience Store
o Alfamart
o Indomaret
DOKU Virtual Account aggregates the funds using different entities – Bank Permata, Bank Sinarmas, Bank
Mandiri, Alfa Group and Indomaret. When the customer clicks ‘Generate Payment Code’, DOKU will generate
a one-time use, 11 digits payment code that is valid at any Prima, ALTO or ATM Bersama as well as all of Alfa
Group’s and Indomaret convenience stores. For each of the different acquiring entities, the first 5 digit codes
will define where the payment should be made. See codes below:
Bank First 5 Digit Code
Permata 88560
Mandiri 88899
Sinarmas 88900
Indomaret 88xxx
Danamon 8922x
So a payment code that is valid for payment at an Alfa store would look like this: 88888-39421877483. And a
bank transfer with Permata acquiring would look like this: 89650-39421877483.
Integration for ATM transfer and convenient store is practically identical; however, keep in mind that you will
have to set the first 5 digits according to the payment method, and the last 11 digits will be queried from the
DOKU server.
2.4.2 Regular
Regular VA is common used VA in DOKU Merchants. DOKU will generate Payment Code that will be used by
Customer as payment destination. Below is the flow of Regular VA:
12
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
Description:
1. Customer conducts the checkout process on merchant's webpage
2. Merchant send payment request to DOKU and redirect page
3. DOKU displays payment page to the customer
4. Customer select VA payment channel and choose Generate Payment Code
5. DOKU can send payment channel used to Merchant using Identify API (optional)
6. DOKU show Payment Code generated to Customer
7. Customer conduct payment in Convenience Store / Bank Channel (ATM, Internet Banking, Mobile
Banking, Teller), then Store / Bank will notify DOKU for payment result
8. DOKU notifies the transaction result to the merchant
9. Merchant gives response for transaction process (CONTINUE)
10. If merchant does not receive notify status from DOKU, please run/do Check Status function
11. DOKU will respond with transaction status info to Merchant
2.4.3 Direct
Direct is an alternative flow for Virtual Account. In Direct VA, Merchant is the one who generate Payment Code.
DOKU will give guidance for Merchant about the Payment Code numbering sequence. Below is the flow of
Direct VA:
13
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
Description:
1. Customer conducts the checkout process on merchant's webpage
2. Merchant generate Payment Code and show it to Customer
3. Customer conduct payment in Convenience Store / Bank Channel (ATM, Internet Banking, Mobile
Banking, Teller), then Store / Bank will request inquiry Payment Code to DOKU
4. DOKU will send Payment Code inquiry request to Merchant
5. Merchant respond Payment Code inquiry to DOKU
6. DOKU respond Payment Code inquiry to Store / Bank
7. Store / Bank notify Payment result to DOKU
8. DOKU notifies the transaction result to the merchant
9. Merchant gives response for transaction process (CONTINUE)
10. If merchant does not receive notify status from DOKU, please run/do Check Status function
11. DOKU will respond with transaction status info to Merchant
14
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
Request Response
Communicati
API Names Sender Data Data Descriptions
on Method
Format Format
Payment HTTP POST Merchant HTTP POST - Merchant submit payment request using HTML Post
Request** Redirect (Customer Parameters from Customer browser to DOKU Hosted Payment
Browser) Pages. Then Customer chooses which payment
channel to use.
Other HTTP POST Merchant HTTP POST XML To do payment request for specific payment channel
Payment Direct to Parameters such as klikBCA and BNI Yap
Request Server
Identify HTTP POST DOKU HTTP POST - Optionally, DOKU server send a message to Merchant
Direct to Parameters server when Customer already selects payment
Server channel and click Submit. The message contains
chosen payment channel.
Notify** HTTP POST DOKU HTTP POST HTML DOKU server sends a payment notification status to
Direct to Parameters Merchant server when Acquirer has processed the
Server payment.
Redirect** HTTP POST DOKU HTTP POST - DOKU redirect Customer browser back to Merchant
Redirect (Customer Parameters Website. This is the last step of payment process from
Browser) Customer perspective.
Capture HTTP POST Merchant HTTP POST XML To capture authorized credit card transaction
Direct to Parameters
Server
Check Status HTTP POST Merchant HTTP POST XML To check the status of a Transaction, Merchant server
Direct to Parameters send request to DOKU server where DOKU server will
Server response with Transaction Status in XML format.
Void HTTP POST Merchant HTTP POST HTML To Void a Sale Transaction, Merchant server send
Direct to Parameters request to DOKU server where DOKU server will
Server response in HTML format. A transaction cannot be
voided if it has been settled.
Inquiry HTTP POST DOKU HTTP POST XML DOKU server send a message to Merchant Server to
Direct to Parameters check Payment Code generated by Merchant
Server
Refund HTTP POST Merchant HTTP POST XML To Refund Sale success transaction that has been
Direct to Parameters settled
Server
Cancellation HTTP POST Merchant HTTP POST XML To Void or Refund Sale success transaction depends
Direct to Parameters on settlement status
Server
** Main API
Payment Request, Identify (optional), Notify and Redirect will be in one flow of transaction. Check Status, Void,
and Cancellation are the API calls that you do if necessary after the transaction is done. So there are 3 main
API, which is Payment Request, Notify and Redirect.
15
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
4 options hash methods that Merchant can choose are: SHA1, SHA256, HMAC-SHA1, HMAC-SHA256.
All these parameters are being combined without any spaces. The position of the parameters is in FIXED order.
You SHOULD NOT swaps the order.
$WORDS=sha1(40000.00123map_aztec977872);
$WORDS=sha1(40000.00123map_aztec977872840);
The Shared Key MUST NOT BE REVEALED to public. As it is your merchant’s secure credential.
And this Shared Key may/may not be changed accordingly. And will be inform beforehand.
Y = Mandatory
O = Optional
3.2.3.1 Airlines
Airlines merchant is required to send some additional specific parameters on payment request. Below are the parameters:
No Name Type Length Comments Mandatory
1 FLIGHT N 2 01 : for Domestic, 02 : for International Y
2 FLIGHTTYPE N 1 0 : One Way, 1 : Return, 2 : Transit, 3 : Transit & Y
Return, 4 : Multi City
3 BOOKINGCODE AN ..20 Booking code generated by Airline Y
4 ROUTE Array ..50 List of route using format XXX-YYY (from XXX to Y
[AN] YYY). Eg : CGK-DPS
5 FLIGHTDATE Array 8 List of flight date using format YYYYMMDD. Y
[AN]
6 FLIGHTTIME Array 6 List of flight time using format HHMMSS. Y
[AN]
17
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
3.2.3.3 Tokenization
In the DOKU-Hosted API, Credit Card Tokenization is treated as a separate payment method from the un-tokenized Credit
Card. Please send PAYMENTCHANNEL parameter in Payment Request with value 16.
If merchant send Payment Channel 16 but didn’t send CUSTOMERID, DOKU will use EMAIL value as
CUSTOMERID value.
18
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
3.2.3.4 Recurring
In the DOKU-Hosted API, Credit Card Recurring is treated as a separate payment method. Please send
PAYMENTCHANNEL parameter in Payment Request with value 17.
3.3.3 Response
20
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
This IDENTIFY Process is not a mandatory process. But strongly recommended if Merchant accept the
ATM/VA Channel. This IDENTIFY Process also does not require Merchant’s response. Feel free to use or not
use this process based on your business process and requirement.
3.4.1 Method
Method
HTTP POST Direct to Server
3.5 Notify
Allow Merchant to have a real-time payment status notification. Merchant should inform the URL where DOKU
server will send the notification message. Example: http://www.yourwebsite.com/directory/DOKU_notify.php
By default DOKU will IGNORE merchant’s response but merchant have an option for DOKU to reverse the
payment if merchant’s response is not appropriate or time out occurs.
3.5.1 Method
Method
HTTP POST Direct to Server
3.6 Redirect
Redirecting back to Merchant’s domain. Merchant should inform the URL where DOKU will redirect. Example:
http://www.yourwebsite.com/directory/DOKU_redirect.php
3.6.1 Method
Method
HTTP POST
3.7 Capture
Capture can be executed after Authorization process is success
23
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
24
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
25
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
3.9 Void
Allow Merchant to Void Sale and Authorization Transaction.
3.10 Inquiry
Inquiry is used only for Direct Virtual Account flow. Merchant should inform the URL where DOKU server will
send inquiry request. Example: http://www.yourwebsite.com/directory/DOKU_redirect.php
3.10.1 Method
Method
HTTP POST Direct to Server
27
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
<RESPONSECODE>0000</RESPONSECODE>
</INQUIRY_RESPONSE>
3.11 Refund
Allow Merchant to Refund Sale & Installment on-us Transaction.
Method
HTTP POST
HTTPS Form Action for STAGING ENVIRONMENT
https://staging.doku.com/Suite/DoRefundRequest
HTTPS Form Action for PRODUCTION ENVIRONMENT
https://pay.doku.com/Suite/DoRefundRequest
3.11.3 Response
No Parameter Comment
1
RESPONSECODE Refund response code
2
RESPONSEMSG Refund status
28
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
3
TRANSIDMERCHANT Transaction ID from Merchant
4
REFNUM Reference number
5
SESSIONID Refund session ID
3.12 Cancellation
Allow Merchant to Cancel Sale Transaction.
29
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
<?xml version="1.0"?>
<CANCEL_RESPONSE>
<RESPONSECODE>0000</RESPONSECODE>
<RESPONSEMSG>SUCCESS</RESPONSEMSG>
<TRANSIDMERCHANT>TRX123456789</TRANSIDMERCHANT>
<REFNUM>123456</REFNUM>
<SESSIONID>9999999999999</SESSIONID>
<REFIDMERCHANT>REFTRX123456789</>
</CANCEL_RESPONSE>
30
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
Appendix
A. Payment Channel Code
CODE DESCRIPTION
02 Mandiri ClickPay
03 KlikBCA
04 DOKU Wallet
06 BRI e-Pay
15 Credit Card Visa/Master/JCB
16 Credit Card Tokenization
17 Recurring Payment
18 BCA KlikPay
19 CIMB Clicks
22 Sinarmas VA
23 MOTO
25 Muamalat Internet Banking
26 Danamon Internet Banking
28 Permata Internet Banking
29 BCA VA
31 Indomaret
33 Danamon VA
34 BRI VA
35 Alfagroup
36 Permata VA
37 Kredivo
41 Mandiri VA
42 QNB VA
45 BNI Yap
31
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
B. DOKU IP Address
DOKU has only 3 IP public that can be detected when DOKU call to your application (Identify, Notify & Redirect functions). So to
make those applications process ONLY from DOKU is by using DOKU IP Address. Although, High Anonymous Proxy or IP
Masking/Hide/Change tools on most current network application can still penetrate this feature, this will reduce most of injection
false information to the applications to create genuine transactions.
@$REMOTE_ADDR;
or
$_SERVER[‘REMOTE_ADDR’];
32
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
Terima kasih atas pemesanan Anda di MERCHANTNAME. Pesanan akan segera kami proses setelah Anda melakukan
pembayaran di ATM atau fasilitas Internet Banking yang terhubung dengan jaringan ATM Bersama, Prima, atau ALTO.
ORDER TOTAL:
10,000.00
Kami menyarankan agar pembayaran dilakukan secepatnya. Masa berlaku kode pembayaran akan berakhir dalam waktu 5 jam,
dimana pembelian akan batal apabila melewati jangka waktu.
Note:
Pembayaran tidak bisa dilakukan melalui BCA Internet Banking
Transfer hanya dapat dilakukan dengan Real Time Transfer tidak dapat di process dengan LLG (Lalu Lintas giro) dan
RTGS.
Terima Kasih
DOKU, The Better Way To Pay
33
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
34
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
E. Special Characters
Due to security purpose, not all special characters are allowed. Special Characters allowed
by DOKU are:
,.&;+:/=
35
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
F. Response Code
This response codes are not meant for customer. It’s for merchant’s benefits. Merchant must be always
treated declined transactions as the customer required to contact their Bank Issuer for the declined credit
card. This data is very confidential. Do not reproduce in any kind to public view. Fail to do so will void
merchant’s account.
37
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
0013 Invalid amount (currency Invalid Amount VISA/MASTER Contact DOKU or BNI
conversion field overflow.
Visa Cash - Invalid load
mount)
0014 Invalid account number (no Invalid Card Number VISA/MASTER Contact DOKU or BNI
such number)
0015 No such issuer Invalid issuer VISA/MASTER Contact DOKU or BNI
38
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
0041 Pickup card {lost card) Lost Card VISA/MASTER Should consider
blocking the card
temporarily or Block
login ID
0043 Pickup card [stolen card) Stolen Card VISA/MASTER Should consider
blocking the card
temporarily or Block
login ID
0051 Insufficient funds Insufficient Funds/Over VISA/MASTER Tell Customer to contact
Credit limit the Bank Issuer of the
card used.
0052 No checking account - VISA/MASTER Tell Customer to contact
the Bank Issuer of the
card used.
0053 non savings account - VISA/MASTER Tell Customer to contact
the Bank Issuer of the
card used.
0054 Expired card Expired Card VISA/MASTER Tell Customer to contact
the Bank Issuer of the
card used.
0055 Incorrect PIN (Visa cash - Invalid PIN VISA/MASTER Tell Customer to contact
invalid or missing SI the Bank Issuer of the
signature) card used.
0057 Transaction not permitted to Transaction not permitted VISA/MASTER Tell Customer to contact
cardholder [Visa cash - to issuer/cardholder the Bank Issuer of the
incorrect routing, not a load card used.
request)
0058 Transaction not allowed at Transaction not permitted VISA/MASTER Tell Customer to contact
terminal to acquirer/terminal the Bank Issuer of the
card used.
0061 Activity amount limit Exceeds withdrawal VISA/MASTER Tell Customer to contact
exceeded amount limit the Bank Issuer of the
card used.
0062 Restricted card (for Restricted Card VISA/MASTER Tell Customer to contact
example in country the Bank Issuer of the
exclusion table) card used.
0063 Security violation Security Violation VISA/MASTER Contact DOKU or BNI
0065 Activity count limit exceeded Exceeds withdrawal count VISA/MASTER Tell Customer to contact
limit the Bank Issuer of the
card used.
0075 Allowable number of PIN- Allowable number of PIN VISA/MASTER Tell Customer to contact
entry tries exceeded tries exceeded the Bank Issuer of the
card used.
0076 Unable to locate previous Invalid/nonexistent "To VISA/MASTER Contact DOKU or BNI
message (no match on Account" specified
Retrieval Reference
number)
0077 Previous message located Invalid/nonexistent "From VISA/MASTER Contact DOKU or BNI
for a repeat or reversal, but account" specified
repeat or reversal data are
inconsistent with original
message
0078 - Invalid/nonexistent account VISA/MASTER Contact DOKU or BNI
specified (general)
39
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
40
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
42
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
43
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
44
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
v. BRI e-Pay
Error
Description
Code
0001 Failed to notify Merchant
0020 General error
0021 Wrong password
0022 Wrong paycode
0023 Transaction cancelled
0024 User ID is being used
0025 User has not registered M-Token
0026 Timeout
0027 Invalid parameter
0028 User ID is being blocked
0029 User ID not found
0030 Transaction limit exceeded
0031 User not found
0032 Failed to show BRI pop up (deprecated)
0033 Pop up page being closed by customer (deprecated)
0048 Failed to redirect to BRI e-Pay
0066 Page already redirected back to DOKU but not getting any payment result from
BRI (not getting notify and not getting response from 3 times check status)
45
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
vi. Alfamart/Indomaret/Permata/Mandiri/Sinarmas VA
Error
Description
Code
0001 Decline (internal error)
0013 Invalid amount
0014 Bill not found
0066 Decline
0088 Bill already paid
46
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
47
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
Merchant Logo
48
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
Merchant Logo
49
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
Merchant Logo
After this page, DOKU will redirect to DOKU Wallet Payment Page.
At DOKU Wallet Payment Page, Customer can choose to pay using Cash or Credit Card
50
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
After this page, DOKU will redirect to payment code generate page.
Payment code can be used to pay in ATM or Internet Banking
51
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
52
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
After this page, DOKU will redirect to payment code generate page.
Payment code can be used to pay in Alfa Group
53
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
54
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
55
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
i. Transaction processing
56
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
57
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia
Integration Guide – API for DOKU Hosted Payment Pages
- End of Document -
58
www.doku.com
PT Nusa Satu Inti Artha
Plaza Asia Office Park Unit 3
Jl. Jenderal Sudirman Kav. 59
Jakarta 12190 Indonesia