For the complete documentation index, see llms.txt. This page is also available as Markdown.

Bulk Registration Bank

This feature will enable merchant to manage settlement bank account via host to host protocol

The feature needs to be activated before merchants can start to use the feature. Please see steps listed below :

Activate Bulk Registration Bank Features

This feature will enable merchant to create, edit, and get settlement bank account in bulk via H2H API. Due to safety consideration, merchant have to enabling manually after finished onboarding.

Steps to enable the feature as follows :

  1. Login to DOKU dashboard

  2. Go to menu Setting > Service

  1. Click "Add Service" button

  2. Under menu of "Financial Service", choose Others

  3. Check "Bulk Registration Bank" option

  4. Saved by click button Activate

  5. Click document icon to download "Surat Instruksi Pelimpahan Dana" template document to be filled in

  6. Upload "Surat Instruksi Pelimpahan Dana" in PDF format

  7. After document successfully uploaded, click "Activate" button.

  8. The service will be successfully send. You can click "OK" button

API for Settlement Bank Account

This is a documentation for host-to-host API Bank Account.

1. Create Settlement Bank Account

To create settlement bank account, you will need to hit this API through your Backend :

create settlement bank account

post

Creating a new settlement bank account.

Header parameters
Client-IdstringRequired

Client ID retrieved from DOKU Dashboard.

Example: MCH-0001-10791114622547
Request-IdstringRequired

Unique random string. max 128 characters.

Example: b6a465ea-bb65-48b2-a22b-3e8fb51cf22e
Request-TimestampstringRequired

Timestamp request UTC ISO8601

Example: 2020-08-11T08:45:42Z
SignaturestringRequired

HMAC signature.

Example: HMACSHA256=vl9DBTX5KhEiXmnpOD0TSm8PYQknuHPdyHSTSc3W6Ps=
Body
Responses
200

settlement bank account created

application/json
codestringRequired

The bank code is used to automatically find the bank name and make sure the account number has the correct number of digits.

Example: 008
numberstringRequired

Settlement Bank Account number. Numbers only, no letters or special characters.

Example: 1081214141456Pattern: ^[0-9]*$
namestring · min: 2Required

Account Holder Name

Example: Test edwin
currencystringRequired

Currency code in ISO 4217 standards

Example: IDR
countrystringRequired

Country Code in ISO 3166-1 alpha-2 standards

Example: ID
statusstring · enumOptionalPossible values:
bank_account_settlement_idstringOptionalExample: SBA-0101023-11
post/v2/settlement-bank-account
POST /production.doku.com}.com/fc-h2h-api/v2/settlement-bank-account HTTP/1.1
Host: {sandbox/production.doku.com}.com/fc-h2h-api
Client-Id: text
Request-Id: text
Request-Timestamp: text
Signature: text
Content-Type: application/json
Accept: */*
Content-Length: 108

{
  "bank_account": {
    "code": "008",
    "number": "1081214141456",
    "name": "Test edwin",
    "currency": "IDR",
    "country": "ID"
  }
}
{
  "code": "008",
  "number": "1081214141456",
  "name": "Test edwin",
  "currency": "IDR",
  "country": "ID",
  "status": "VERIFIED",
  "bank_account_settlement_id": "SBA-0101023-11"
}

2. Update Settlement Bank Account

Update settlement bank account only able for data in “verified” state. To update settlement bank account, you will need to hit this API through your Backend:

update settlement bank account

put

For this action, you MUST provide the specific bank account ID so the system knows which existing account to be updated. This is different from creating a new settlement bank account (POST API), where an bank account ID isn't needed yet.

Header parameters
Client-IdstringRequired

Client ID retrieved from DOKU Dashboard.

Example: MCH-0001-10791114622547
Request-IdstringRequired

Unique random string. max 128 characters.

Example: b6a465ea-bb65-48b2-a22b-3e8fb51cf22e
Request-TimestampstringRequired

Timestamp request UTC ISO8601

Example: 2020-08-11T08:45:42Z
SignaturestringRequired

HMAC signature.

Example: HMACSHA256=vl9DBTX5KhEiXmnpOD0TSm8PYQknuHPdyHSTSc3W6Ps=
Body
Responses
200

settlement bank account updated

application/json
codestringRequired

The bank code is used to automatically find the bank name and make sure the account number has the correct number of digits.

Example: 008
numberstringRequired

Settlement Bank Account number. Numbers only, no letters or special characters.

Example: 1081214141456Pattern: ^[0-9]*$
namestring · min: 2Required

Account Holder Name

Example: Test edwin
currencystringRequired

Currency code in ISO 4217 standards

Example: IDR
countrystringRequired

Country Code in ISO 3166-1 alpha-2 standards

Example: ID
statusstring · enumOptionalPossible values:
bank_account_settlement_idstringOptionalExample: SBA-0101023-11
put/v2/settlement-bank-account
PUT /production.doku.com}.com/fc-h2h-api/v2/settlement-bank-account HTTP/1.1
Host: {sandbox/production.doku.com}.com/fc-h2h-api
Client-Id: text
Request-Id: text
Request-Timestamp: text
Signature: text
Content-Type: application/json
Accept: */*
Content-Length: 154

{
  "bank_account": {
    "code": "008",
    "number": "1081214141456",
    "name": "Test edwin",
    "currency": "IDR",
    "country": "ID",
    "bank_account_settlement_id": "SBA-0101023-11"
  }
}
{
  "code": "008",
  "number": "1081214141456",
  "name": "Test edwin",
  "currency": "IDR",
  "country": "ID",
  "status": "VERIFIED",
  "bank_account_settlement_id": "SBA-0101023-11"
}

3. Get Settlement Bank Account

To get settlement bank account, you will need to hit this API through your Backend :

check status settlement bank account

get

The system identifies each bank account using its bank transfer code and account number together, rather than using a unique bank account ID.

Path parameters
bankCodestringRequired

Bank Transfer Code or Swift Code

Example: 008
accountNumberstringRequired

Settlement Bank Account Number

Example: 1081214141456
Header parameters
Client-IdstringRequired

Client ID retrieved from DOKU Dashboard.

Example: MCH-0001-10791114622547
Request-IdstringRequired

Unique random string. max 128 characters.

Example: b6a465ea-bb65-48b2-a22b-3e8fb51cf22e
Request-TimestampstringRequired

Timestamp request UTC ISO8601

Example: 2020-08-11T08:45:42Z
SignaturestringRequired

HMAC signature.

Example: HMACSHA256=vl9DBTX5KhEiXmnpOD0TSm8PYQknuHPdyHSTSc3W6Ps=
Responses
200

check status settlement bank account

application/json
get/v2/settlement-bank-account/{bankCode}/{accountNumber}
GET /production.doku.com}.com/fc-h2h-api/v2/settlement-bank-account/{bankCode}/{accountNumber} HTTP/1.1
Host: {sandbox/production.doku.com}.com/fc-h2h-api
Client-Id: text
Request-Id: text
Request-Timestamp: text
Signature: text
Accept: */*
{
  "bank_account": {
    "code": "008",
    "number": "1081214141456",
    "name": "Test edwin",
    "currency": "IDR",
    "country": "ID",
    "status": "VERIFIED",
    "bank_account_settlement_id": "SBA-0101023-11"
  }
}

Last updated