Text Link
Bank Account Inquiry
Text Link
Create Disbursement
Text Link
Get Disbursement Status
Text Link
Disbursement Callback
Text Link
Disbursement Bank Codes

Bank Account Inquiry

Bank Account Inquiry is an API that allows you to verify the destination bank account information before initiating a disbursement transfer.

Method URL
POST https://partner-b2x.dipay.id/snap/v2.1/emoney/bank-account-inquiry

Header Parameters

Header Data Type Length Required Description
Content-Type String - Mandatory Content type, value always application/json
Authorization String 2048 Mandatory Access token obtained from the Get Access Token API
Value: Bearer {{accessToken}}
X-TIMESTAMP YYYY-MM-DDTHH:mm:ss+07:00 25 Mandatory Request timestamp in ISO 8601 format.
X-SIGNATURE String 256 Mandatory Symmetric signature generated using HMAC-SHA512.
X-PARTNER-ID String 36 Mandatory Unique identifier generated by Dipay for the partner. Equal to Client Key.
X-EXTERNAL-ID Alphanumeric 36 Mandatory Unique reference identifier generated by partner and should be unique within the same day.
CHANNEL-ID String 5 Mandatory Channel ID, value always: DPAPI

Request Body

Field Type Length Required Description
partnerReferenceNo string 32 Mandatory Unique transaction identifier on the partner system for each request.
customerNumber string 36 Mandatory Unique identifier of the partner. Must match the partner's Client ID.
amount object - Mandatory Amount object
amount.value string 16,2 Mandatory Transaction amount, with format .00
amount.currency string 3 Mandatory Currency. Use IDR
beneficiaryAccountNumber string 32 Mandatory Beneficiary bank account number, numeric only.
additionalInfo object - Mandatory Additional information
additionalInfo.beneficiaryBankCode string 11 Mandatory Beneficiary bank code. Please refer to Disbursement Bank Codes .
additionalInfo.deviceId string 32 Optional Unique identifier of the end-user's device.
additionalInfo.channel string 255 Optional The origin channel or interface (web, mobile, or API).

Response Body

Field Type Length Description
responseCode string 7 Response code (refer to response code list)
responseMessage string 150 Response message (refer to response code list)
referenceNo string 36 Unique disbursement identifier from Dipay.
partnerReferenceNo string 32 Unique disbursement identifier from Partner.
beneficiaryAccountNumber string 32 Beneficiary bank account number.
beneficiaryAccountName string 64 Beneficiary bank account name.
beneficiaryBankCode string 11 Beneficiary bank code.
beneficiaryBankName string 25 Beneficiary bank name.
amount object - Amount object
amount.value string 16,2 Transaction amount
amount.currency string 3 Currency
additionalInfo object - Additional information
additionalInfo.beneficiaryBankCode string 11 Beneficiary bank code.
additionalInfo.deviceId string 32 Device ID
additionalInfo.channel string 255 Channel

Response Codes List

Service Code : 42
Response Code Response Message Description
2004200 Successful Inquiry request successfully processed.
4004201 Invalid Field Format {field name} Invalid field format.
4004202 Invalid Mandatory Field {field name} Missing mandatory field.
4014200 Unauthorized. [reason] General unauthorized error.
4014201 Invalid Token (B2B) Token found in request is invalid (Access Token Not Exist or Access Token Expiry).
4014203 Token Not Found (B2B) Token not found in the system. This occurs on any API that requires a token as input parameter.
4034201 Feature Not Allowed. [reason] The partner is not allowed to call the Account Inquiry API.
4034206 Feature Not Allowed At This Time. [reason] Feature Not Allowed At This Time.
4034215 Transaction Not Permitted. [reason] Transaction Not Permitted.
4044203 Bank Not Supported By Switch Beneficiary Bank Code is Not Supported
4044211 Invalid Card/Account/Customer [info]/Virtual Account Bank account not found.
4054200 Requested Function Is Not Supported Request is sent using an unsupported HTTP Method (e.g., DELETE instead of POST)
4094200 Conflict Cannot use the same X-EXTERNAL-ID on the same day.
4094201 Duplicate partnerReferenceNo Duplicate partnerReferenceNo
4294200 Too Many Requests Maximum transaction limit exceeded.
5004201 Internal Server Error Unknown Internal Server Failure, Please retry the process again.
5044200 Timeout Timeout
{
    "partnerReferenceNo": "partner_ref_7181897399",
    "customerNumber": "cust-123",
    "amount": {
        "value": "10000.00",
        "currency": "IDR"
    },
    "beneficiaryAccountNumber": "1234567890",
    "additionalInfo": {
        "beneficiaryBankCode": "002",
        "deviceId": "device-123",
        "channel": "mobile"
    }
}
curl --request POST \
  --url 'https://partner-b2x.dipay.id/snap/v2.1/emoney/bank-account-inquiry' \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiI4MzE0ZDRkMCIsImlhdCI6MTc4NzIyMzEwNSwic3ViIjoiNWFiOGFmNzM5NDA5NzYwMmQxM2FiOGJmMjczZTdkNTE3YjQyNTRhYmNkYTFhMmY2MWM0ZWIxNWY2ZWM5NWY2NSIsImlzcyI6ImNlcml0YW95b24iLCJleHAiOjE3ODcyMjQwMDV9.yNLyfo8x9NPfabpiMjLtNlEqyfnGgteu6X58Hg1T15s' \
  --header 'X-TIMESTAMP: 2026-07-20T17:51:45+07:00' \
  --header 'X-SIGNATURE: GOMDlSYXPUwZoKRkmiaZ1H5NWxJ4nlvX7dfqhGykm+IVt0Ja3xPW41GvpgEbN8RJUNtxUc08+Pca7HnXNqDQUQ==' \
  --header 'X-PARTNER-ID: d7c03ddb-ce99-41e5-90b2-0a3e36291ddb' \
  --header 'X-EXTERNAL-ID: 095520064394252310725507438648773926' \
  --header 'CHANNEL-ID: DPAPI' \
  --data '{
    "partnerReferenceNo": "partner_ref_7181897399",
    "customerNumber": "cust-123",
    "amount": {
        "value": "10000.00",
        "currency": "IDR"
    },
    "beneficiaryAccountNumber": "1234567890",
    "additionalInfo": {
        "beneficiaryBankCode": "002",
        "deviceId": "device-123",
        "channel": "mobile"
    }
}'
Request Samples
2004200
{
    "responseCode": "2004200",
    "responseMessage": "Successful",
    "referenceNo": "8f415a7f-0a8c-4351-b8e4-d4279267950f",
    "partnerReferenceNo": "partner_ref_7181897399",
    "beneficiaryAccountName": "Malcom Waters",
    "beneficiaryAccountNumber": "1234567890",
    "beneficiaryBankCode": "002",
    "beneficiaryBankName": "BRI",
    "amount": {
        "value": "10000.00",
        "currency": "IDR"
    },
    "additionalInfo": {
        "beneficiaryBankCode": "002",
        "deviceId": "device-123",
        "channel": "mobile"
    }
}
4094200
{
  "responseCode": "4094200",
  "responseMessage": "Conflict"
}
4004202
{
    "responseCode": "4004202",
    "responseMessage": "Invalid Mandatory Field partnerReferenceNo"
}
Response Samples

Create Disbursement

Create Disbursement is an API to transfer funds to the destination bank account via disbursement service.

Method URL
POST https://partner-b2x.dipay.id/snap/v2.1/emoney/transfer-bank

Header Parameters

Header Data Type Length Required Description
Content-Type String - Mandatory Content type, value always application/json
Authorization String 2048 Mandatory Access token obtained from the Get Access Token API
Value: Bearer {{accessToken}}
X-TIMESTAMP YYYY-MM-DDTHH:mm:ss+07:00 25 Mandatory Request timestamp in ISO 8601 format.
X-SIGNATURE String 256 Mandatory Symmetric signature generated using HMAC-SHA512.
X-PARTNER-ID String 36 Mandatory Unique identifier generated by Dipay for the partner. Equal to Client Key.
X-EXTERNAL-ID Alphanumeric 36 Mandatory Unique reference identifier generated by partner and should be unique within the same day.
CHANNEL-ID String 5 Mandatory Channel ID, value always: DPAPI

Request Body

Field Type Length Required Description
partnerReferenceNo string 32 Mandatory Unique transaction identifier on the partner system for each request.
customerNumber string 36 Mandatory Unique identifier of the partner. Must match the partner's Client ID.
amount object - Mandatory Amount object
amount.value string 16,2 Mandatory Transaction amount, with format .00
amount.currency string 3 Mandatory Currency. Use IDR
beneficiaryAccountNumber string 32 Mandatory Beneficiary bank account number, numeric only.
beneficiaryBankCode string 11 Mandatory Beneficiary bank code. Please refer to Disbursement Bank Codes .
additionalInfo object - Conditional Additional information.
This object is mandatory for aggregator partners that manage multiple merchants under a single account.
additionalInfo.deviceId string 32 Optional Unique identifier of the end-user's device.
additionalInfo.channel string 255 Optional The origin channel or interface (web, mobile, or API).
additionalInfo.beneficiaryEmail string 255 Optional Email address(es) to receive the transaction success receipt. Max 5 email, separated by spaces.
additionalInfo.customerReference string 30 Optional Transaction remark that may appear on the beneficiary's account statement, depending on bank capabilities. Supports alphanumeric characters and common symbols (e.g. -, *, . )
additionalInfo.partnerMerchantId string 64 Optional Unique ID for each partner's merchant.
additionalInfo.originatorInfos object - Conditional Object related to originator information.
This object is mandatory for aggregator partners that manage multiple merchants under a single account.
additionalInfo.originatorInfos.
originatorCustomerNo
string 32 Conditional Originator's bank account number
additionalInfo.originatorInfos.
originatorCustomerName
string 100 Conditional Name of the originator's
additionalInfo.originatorInfos.
originatorBankCode
string 11 Conditional Bank code of the originator's account. Please refer to Disbursement Bank Codes .

Response Body

Field Type Length Description
responseCode string 7 Response code (refer to response code list)
responseMessage string 150 Response message (refer to response code list)
referenceNo string 36 Unique disbursement identifier from Dipay.
partnerReferenceNo string 32 Unique disbursement identifier from Partner.
referenceNumber string 36 Reference number
additionalInfo object - Additional information
additionalInfo.deviceId string 32 Device ID
additionalInfo.channel string 255 Channel

Response Code List

Service Code : 43
Response Code Response Message Description
2004300 Successful Transaction request successfully processed.
4004301 Invalid Field Format {field name} Invalid field format.
4004302 Invalid Mandatory Field {field name} Missing mandatory field
4014300 Unauthorized. [reason] General unauthorized error.
4014301 Invalid Token (B2B) Token found in request is invalid (Access Token Not Exist or Access Token Expiry).
4014303 Token Not Found (B2B) Token not found in the system. This occurs on any API that requires a token as input parameter.
4034301 Feature Not Allowed. [reason] The partner is not allowed to call the Create Disbursement API.
4034302 Exceeds Transaction Amount Limit The requested amount is greater than the amount that is allowed.
4034303 Suspected Fraud Suspected Fraud.
4034306 Feature Not Allowed At This Time. [reason] Feature Not Allowed At This Time.
4044303 Bank Not Supported By Switch Beneficiary Bank Code is Not Supported
4034315 Transaction Not Permitted. [reason] Transaction Not Permitted.
4044311 Invalid Card/Account/Customer [info]/Virtual Account Bank account not found.
4054300 Requested Function Is Not Supported Request is sent using an unsupported HTTP Method (e.g., DELETE instead of POST)
4094300 Conflict Cannot use the same X-EXTERNAL-ID on the same day.
4094301 Duplicate partnerReferenceNo Duplicate partnerReferenceNo
4294300 Too Many Requests Maximum transaction limit exceeded.
5004301 Internal Server Error Unknown Internal Server Failure, Please retry the process again.
5044300 Timeout Timeout
{
    "partnerReferenceNo": "partner_ref_2746903221",
    "customerNumber": "d7c03ddb-ce99-41e5-90b2-0a3e36291ddb",
    "amount": {
        "value": "10000.00",
        "currency": "IDR"
    },
    "beneficiaryAccountNumber": "12341234",
    "beneficiaryBankCode": "008",
    "additionalInfo": {
        "deviceId": "3306021027",
        "channel": "mobile",
        "beneficiaryEmail": "john.doe1@mail.com john.doe2@mail.com",
        "customerReference": "SNAP Transaction",
        "originatorInfos": {
            "originatorCustomerNo": "12341234",
            "originatorCustomerName": "John Doe",
            "originatorBankCode": "008"
        }
    }
}
curl --request POST \
  --url 'https://partner-b2x.dipay.id/snap/v2.1/emoney/transfer-bank' \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiJlNjdjMTI0NiIsImlhdCI6MTc4NzQ4OTI4Mywic3ViIjoiYzlmNzc2MjJjMDllN2VjZmRiNDc0NDI3OWRlNGE5N2YwM2VhNjM3YTAwN2M0MWY1M2ZlZDQwYzNlZmJmMDI2NyIsImlzcyI6ImNlcml0YW95b24iLCJleHAiOjE3ODc0OTAxODN9.7VMRcqW1kzGgd2vBpvgNrHNw3bJLHr1XKUT9MFZ6TGo' \
  --header 'X-TIMESTAMP: 2026-08-23T19:48:03+07:00' \
  --header 'X-SIGNATURE: Q9d1y9z5mihChalNLYalz2IAXuRlhBQcPdWWmYvZfF8ZZDmq9amEaoRR/+H3F7IGkIhZGeP7OR2WBZXhAihByA==' \
  --header 'X-PARTNER-ID: d7c03ddb-ce99-41e5-90b2-0a3e36291ddb' \
  --header 'X-EXTERNAL-ID: 403233833804061475166310412252282166' \
  --header 'CHANNEL-ID: DPAPI' \
  --data '{
    "partnerReferenceNo": "partner_ref_2746903221",
    "customerNumber": "d7c03ddb-ce99-41e5-90b2-0a3e36291ddb",
    "amount": {
      "value": "10000.00",
      "currency": "IDR"
    },
    "beneficiaryAccountNumber": "12341234",
    "beneficiaryBankCode": "008",
    "additionalInfo": {
      "deviceId": "3306021027",
      "channel": "mobile",
      "beneficiaryEmail": "john.doe1@mail.com john.doe2@mail.com",
      "customerReference": "SNAP Transaction",
      "originatorInfos": {
        "originatorCustomerNo": "12341234",
        "originatorCustomerName": "John Doe",
        "originatorBankCode": "008"
      }
    }
  }'
Request Samples
2004300
{
    "responseCode": "2004300",
    "responseMessage": "Successful",
    "referenceNo": "e1b2638c-9ef0-11f1-bf1b-e944b4b404f8",
    "partnerReferenceNo": "partner_ref_2746903221",
    "referenceNumber": "e1b2638c-9ef0-11f1-bf1b-e944b4b404f8",
    "additionalInfo": {
        "deviceId": "3306021027",
        "channel": "mobile"
    }
}
4044311
{
  "responseCode": "4044311",
  "responseMessage": "Invalid Card/Account/Customer [info]/Virtual Account"
}
4094300
{
  "responseCode": "4094300",
  "responseMessage": "Conflict"
}
4004302
{
  "responseCode": "4004302",
  "responseMessage": "Invalid Mandatory Field beneficiaryAccountNumber"
}
Response Samples

Get Disbursement Status

Disbursement Check Status is an API to get transfer transaction status. You may need to call this API few times until getting a final status (success/failed). We suggest to check the status 60 seconds after the disbursement requested.

Method URL
POST https://partner-b2x.dipay.id/snap/v2.1/transfer/status

Header Parameters

Header Data Type Length Required Description
Content-Type String - Mandatory Content type, value always application/json
Authorization String 2048 Mandatory Access token obtained from the Get Access Token API
Value: Bearer {{accessToken}}
X-TIMESTAMP YYYY-MM-DDTHH:mm:ss+07:00 25 Mandatory Request timestamp in ISO 8601 format.
X-SIGNATURE String 256 Mandatory Symmetric signature generated using HMAC-SHA512.
X-PARTNER-ID String 36 Mandatory Unique identifier generated by Dipay for the partner. Equal to Client Key.
X-EXTERNAL-ID Alphanumeric 36 Mandatory Unique reference identifier generated by partner and should be unique within the same day.
CHANNEL-ID String 5 Mandatory Channel ID, value always: DPAPI

Request Body

Field Type Length Required Description
originalPartnerReferenceNo string 32 Mandatory Unique transaction identifier on the partner system for each request.
serviceCode string 2 Mandatory Transaction type indicator of the disbursement transaction that needs to be checked (original transaction). Use 43
additionalInfo object - Optional Additional information
additionalInfo.sendCallback boolean - Optional A flag to indicate if the status of the disbursement request needs to be re-sent as a callback or not. Value: true or false

Response Body

Field Type Length Description
responseCode string 7 Response code (refer to response code list)
responseMessage string 150 Response message (refer to response code list)
originalReferenceNo string 36 Original unique disbursement identifier from Dipay.
originalPartnerReferenceNo string 32 Original unique disbursement identifier from Partner.
originalExternalId string 36 External-ID from the given originalPartnerReferenceNo.
serviceCode string 2 Service code of the Create Disbursement API.
transactionDate string 25 Request timestamp in ISO 8601 format (YYYY-MM-DDTHH:mm:ss+07:00)
amount object - Amount object
amount.value string 16,2 Transaction amount
amount.currency string 3 Currency
beneficiaryAccountNo string 32 Beneficiary bank account number.
beneficiaryBankCode string 11 Beneficiary bank code.
currency string 3 Currency
referenceNumber string 36 Reference number
sourceAccountNo string 19 Source account
latestTransactionStatus string 2 Latest transaction status code
transactionStatusDesc string 50 Transaction status description
additionalInfo object - Additional information
additionalInfo.receiptUrl string 255 URL to download the transaction success receipt.
additionalInfo.failedReason string 255 Details explaining why the transaction failed.

Status Code Mapping

latestTransactionStatus transactionStatusDesc Description
00 Success Transaction has been successfully completed, and the funds have been credited to the beneficiary's account.
01 Initiated Transaction has been initiated and is waiting to be processed.
02 Paying Transaction is currently being processed.
03 Pending Transaction status is still awaiting confirmation from the bank.
06 Failed Transaction has failed.

Response Code List

Service Code : 36
Response Code Response Message Description
2003600 Successful Check status request successfully processed.
4003600 Bad Request General request failed error, including message parsing failed.
4003601 Invalid Field Format {field name} Invalid field format.
4003602 Invalid Mandatory Field {field name} Missing mandatory field
4013600 Unauthorized. [reason] General unauthorized error.
4013601 Invalid Token (B2B) Token found in request is invalid (Access Token Not Exist or Access Token Expiry).
4013603 Token Not Found (B2B) Token not found in the system. This occurs on any API that requires a token as input parameter.
4033601 Feature Not Allowed. [reason] The partner is not allowed to call the Check Status API.
4043601 Transaction Not Found Transaction not found on Dipay system.
4053600 Requested Function Is Not Supported Request is sent using an unsupported HTTP Method (e.g., DELETE instead of POST)
4093600 Conflict Cannot use the same X-EXTERNAL-ID on the same day.
4293600 Too Many Requests Maximum transaction limit exceeded.
5003601 Internal Server Error Unknown Internal Server Failure, Please retry the process again.
5043600 Timeout Timeout
{
    "originalPartnerReferenceNo": "TRX-20260629-002",
    "serviceCode": "43",
    "additionalInfo": {
        "sendCallback": true
    }
}
curl --request POST \
  --url 'https://partner-b2x.dipay.id/snap/v2.1/transfer/status' \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiI2OGViOTZjZCIsImlhdCI6MTc4NzQ4OTA1MCwic3ViIjoiYzlmNzc2MjJjMDllN2VjZmRiNDc0NDI3OWRlNGE5N2YwM2VhNjM3YTAwN2M0MWY1M2ZlZDQwYzNlZmJmMDI2NyIsImlzcyI6ImNlcml0YW95b24iLCJleHAiOjE3ODc0ODk5NTB9.in1HDk_iN3A_wjKT9mRKV7pzjqrvNemhdjv5JsPJ7sM' \
  --header 'X-TIMESTAMP: 2026-08-23T19:44:10+07:00' \
  --header 'X-SIGNATURE: vlW8sGcs6WrI+nSPE/p1EOVgSdG1d2IvQQDHQL35MCKT3FB77XKo4dG4d059EPh5kdXSmGiRyJ2aRJkgqDYP8Q==' \
  --header 'X-PARTNER-ID: d7c03ddb-ce99-41e5-90b2-0a3e36291ddb' \
  --header 'X-EXTERNAL-ID: 175721826805344434795918982984024840' \
  --header 'CHANNEL-ID: DPAPI' \
  --data '{
    "originalPartnerReferenceNo": "TRX-20260629-002",
    "serviceCode": "43",
    "additionalInfo": {
      "sendCallback": true
    }
}'

Request Samples
2003600 (Success)
{
    "responseCode": "2003600",
    "responseMessage": "Successful",
    "originalReferenceNo": "b2c5dab8-738d-11f1-acfb-9573cbed5e31",
    "originalPartnerReferenceNo": "TRX-20260629-002",
    "originalExternalId": "175721826805344434795918982984024840",
    "serviceCode": "43",
    "transactionDate": "2026-06-29T14:39:45+07:00",
    "amount": {
        "value": "10000.00",
        "currency": "IDR"
    },
    "beneficiaryAccountNo": "123412345",
    "beneficiaryBankCode": "008",
    "currency": "IDR",
    "referenceNumber": "b2c5dab8-738d-11f1-acfb-9573cbed5e31",
    "sourceAccountNo": "DIPAY",
    "latestTransactionStatus": "00",
    "transactionStatusDesc": "Success",
    "additionalInfo": {
        "receiptUrl": "https://partner-b2x.dipay.id/api/receipt?partner_trx_id=TRX-20260629-002&trx_id=b2c5dab8-738d-11f1-acfb-9573cbed5e31"
    }
}
2003600 (Failed)
{
    "responseCode": "2003600",
    "responseMessage": "Successful",
    "originalReferenceNo": "b2c5dab8-738d-11f1-acfb-9573cbed5e31",
    "originalPartnerReferenceNo": "TRX-20260629-002",
    "originalExternalId": "175721826805344434795918982984024840",
    "serviceCode": "43",
    "transactionDate": "2026-06-29T14:39:45+07:00",
    "amount": {
        "value": "10000.00",
        "currency": "IDR"
    },
    "beneficiaryAccountNo": "123412345",
    "beneficiaryBankCode": "008",
    "currency": "IDR",
    "referenceNumber": "b2c5dab8-738d-11f1-acfb-9573cbed5e31",
    "sourceAccountNo": "DIPAY",
    "latestTransactionStatus": "06",
    "transactionStatusDesc": "Failed",
    "additionalInfo": {
        "failedReason": "Not enough balance to disburse the money, please top up your balance."
    }
}
4003602
{
    "responseCode": "4003602",
    "responseMessage": "Invalid Mandatory Field originalPartnerReferenceNo"
}
4093600
{
  "responseCode": "4093600",
  "responseMessage": "Conflict"
}
Response Samples

Disbursement Callback

Once a disbursement request is completed, our system will send a status callback to your system.

You can configure your Callback URL in the Business Dashboard:

  1. Open the Settings tab.
  2. Select Developer Options.
  3. Select Callback Configuration.
  4. Enter your Callback URL in the API Disbursement field.

Callback Parameters

Field Type Length Description
originalReferenceNo string 36 Original unique disbursement identifier from Dipay.
originalPartnerReferenceNo string 32 Original unique disbursement identifier from Partner.
originalExternalId string 36 External-ID from the given originalPartnerReferenceNo.
serviceCode string 2 Service code of the create disbursement API.
transactionDate string 25 Request timestamp in ISO 8601 format (YYYY-MM-DDTHH:mm:ss+07:00)
amount object - Amount object
amount.value string 16,2 Transaction amount
amount.currency string 3 Currency
beneficiaryAccountNo string 32 Beneficiary bank account number.
beneficiaryBankCode string 11 Beneficiary bank code.
currency string 3 Currency
referenceNumber string 36 Reference number
sourceAccountNo string 19 Source account
latestTransactionStatus string 2 Latest transaction status code
transactionStatusDesc string 50 Transaction status description
additionalInfo object - Additional information
additionalInfo.receiptUrl string 255 URL to download the transaction success receipt.
additionalInfo.failedReason string 255 Details explaining why the transaction failed.

Status Code Mapping

latestTransactionStatus transactionStatusDesc Description
00 Success Transaction has been successfully completed, and the funds have been credited to the beneficiary's account.
01 Initiated Transaction has been initiated and is waiting to be processed.
02 Paying Transaction is currently being processed.
03 Pending Transaction status is still awaiting confirmation from the bank.
06 Failed Transaction has failed.

Request Samples
Callback Success
{
    "originalReferenceNo": "b2c5dab8-738d-11f1-acfb-9573cbed5e31",
    "originalPartnerReferenceNo": "TRX-20260629-002",
    "originalExternalId": "175721826805344434795918982984024840",
    "serviceCode": "43",
    "transactionDate": "2026-06-29T14:39:45+07:00",
    "amount": {
        "value": "10000.00",
        "currency": "IDR"
    },
    "beneficiaryAccountNo": "123412345",
    "beneficiaryBankCode": "008",
    "currency": "IDR",
    "referenceNumber": "b2c5dab8-738d-11f1-acfb-9573cbed5e31",
    "sourceAccountNo": "DIPAY",
    "latestTransactionStatus": "00",
    "transactionStatusDesc": "Success",
    "additionalInfo": {
        "receiptUrl": "https://partner-b2x.dipay.id/api/receipt?partner_trx_id=TRX-20260629-002&trx_id=b2c5dab8-738d-11f1-acfb-9573cbed5e31"
    }
}
Callback Failed
{
    "originalReferenceNo": "b2c5dab8-738d-11f1-acfb-9573cbed5e31",
    "originalPartnerReferenceNo": "TRX-20260629-002",
    "originalExternalId": "175721826805344434795918982984024840",
    "serviceCode": "43",
    "transactionDate": "2026-06-29T14:39:45+07:00",
    "amount": {
        "value": "10000.00",
        "currency": "IDR"
    },
    "beneficiaryAccountNo": "123412345",
    "beneficiaryBankCode": "008",
    "currency": "IDR",
    "referenceNumber": "b2c5dab8-738d-11f1-acfb-9573cbed5e31",
    "sourceAccountNo": "DIPAY",
    "latestTransactionStatus": "06",
    "transactionStatusDesc": "Failed",
    "additionalInfo": {
        "failedReason": "Not enough balance to disburse the money, please top up your balance."
    }
}
Response Samples

Disbursement Bank Codes

Supported Bank Codes to be used in the Disbursement Request:

No DIPAY Bank Code Bank Name
1002BRI
2008Bank Mandiri
3009Bank Negara Indonesia
4011Bank Danamon
5013Bank Permata
6014BCA
7016BII Maybank
8019Bank Panin
9022CIMB Niaga
10023Bank UOB Indonesia
11028OCBC
12031CITIBANK
13032JPMORGAN CHASE BANK
14033BANK OF AMERICA
15036Bank China Construction Bank Indonesia
16037Bank Artha Graha Internasional
17042MUFG Bank
18046Bank DBS Indonesia
19047BANK RESONA PERDANIA
20048BANK MIZUHO INDONESIA
21050Standard Chartered
22054Bank Capital Indonesia
23057BANK BNP PARIBAS INDONESIA
24061ANZ Indonesia
25067Deutsche Bank AG
26069BANK OF CHINA
27076BANK BUMI ARTA
28087Bank HSBC Indonesia
29095Bank JTRUST INDONESIA
30097BANK MAYAPADA INTERNATIONAL
31110BJB
32111BANK DKI
33112Bank DIY
34112SBank DIY Syariah
35113Bank Jateng
36114Bank Jatim
37114SBank Jatim Syariah
38115BANK JAMBI
39115SBank Jambi Syariah
40116BANK ACEH
41117BANK SUMUT
42117SBank Sumut Syariah
43118Bank Nagari
44118SBank Nagari Syariah
45119Bank Riau
46120BANK SUMSEL BABEL
47120SBank Sumsel Babel Syariah
48121BANK LAMPUNG
49122Bank Kalsel
50122SBank Kalsel Syariah
51123Bank Kalbar
52123SBank Kalbar Syariah
53124Bank Kaltim
54124SBank Kaltim Syariah
55125Bank Kalteng
56126BANK SULSELBAR
57126SBank Sulselbar Syariah
58127BANK SULUT
59128BANK NTB
60129Bank Bali
61130BANK NTT
62131BANK MALUKU
63132Bank Papua
64133Bank Bengkulu
65134BANK SULTENG
66135Bank Sultra
67137BANK BANTEN
68146BANK OF INDIA INDONESIA
69147BANK MUAMALAT INDONESIA
70151BANK MESTIKA
71152BANK SHINHAN
72153BANK SINARMAS
73157BANK MASPION INDONESIA
74161BANK GANESHA
75164Bank ICBC Indonesia
76167BANK QNB INDONESIA
77200BTN
78200SBTN Syariah
79212BANK WOORI SAUDARA
80213Bank SMBC Indonesia
81253BANK NANO SYARIAH
82405BANK VICTORIA SYARIAH
83425BJB Syariah
84426BANK MEGA
85441BANK BUKOPIN
86451BANK SYARIAH INDONESIA
87459Krom Bank Indonesia
88472BANK JASA JAKARTA
89484BANK KEB HANA
90485Bank MNC
91490Bank Neo Commerce
92494Bank Raya Indonesia
93498Bank SBI Indonesia
94501BCA Digital
95503Bank National Nobu
96506BANK MEGA SYARIAH
97513BANK INA
98517BANK PANIN SYARIAH
99521BANK SYARIAH BUKOPIN
100523BANK SAHABAT SAMPOERNA
101526Bank Oke Indonesia
102531BANK AMAR INDONESIA
103535BANK SEABANK INDONESIA
104536BANK BCA SYARIAH
105542Bank Jago
106542SBank Jago Syariah
107547BANK BTPN SYARIAH
108548BANK MULTIARTA SENTOSA
109553Bank Hibank Indonesia
110555BANK INDEX
111562Superbank
112564Bank Mandiri Taspen
113567Allo Bank
114724Bank DKI Syariah
115725Bank Jateng Syariah
116734BANK SINARMAS UUS
117945BANK IBK INDONESIA
118947BANK ALADIN SYARIAH
119949Bank CTBC Indonesia
Request Samples
Response Samples