APIs for Businesses
Home
APIs
  • Checkout/ Deeplink
  • Merchant Proxy
  • Bill24 Hosted
  • Auto Direct Debit
  • KHQR Integration Specification for API
  • Notification API
  • On Boarding Sub Biller API
Home
APIs
  • Checkout/ Deeplink
  • Merchant Proxy
  • Bill24 Hosted
  • Auto Direct Debit
  • KHQR Integration Specification for API
  • Notification API
  • On Boarding Sub Biller API
CHECKOUT/ DEEPLINKMerchant ProxyBill24 HostedAuto Direct DebitKHQR Integration Specification for APINotification APIPayment Method
CHECKOUT/ DEEPLINKMerchant ProxyBill24 HostedAuto Direct DebitKHQR Integration Specification for APINotification APIPayment Method
  1. Payment Method API
  • Payment Method API
    • Overview
    • Response Code
    • MOBILE SDKS
      • iOS SDK
      • Android SDK
    • Authorization
      POST
    • Create Customer
      POST
    • Get Payment Methods
      GET
    • Settle Payment
      POST
    • Get List bills
      GET
    • Get Wallet Balance
      POST
    • Get Transaction Detail
      POST
  • Activate Sub Biller API
    • Overview
    • Response Code
    • Authorization
      POST
    • Onboarding
      POST
    • Get Available Banks
      GET
    • Add Link Account
      POST
    • Verify Linked Bank Account
      POST
  1. Payment Method API

Settle Payment

POST
https://merchantapi-demo.bill24.io/bill_payment/push_bill_with_payment
This endpoint use for settle money from Main account to Sub biller account.

Request

Header Params
 Content-Type
string 
required
Example:
application/json
Authorization
string 
required
Example:
Bearer {token get from endpoint (Authorization)}
Body Params application/json
ref_id
string 
required
Reference ID of bill
date
string 
required
Bill date
due_date
string 
required
Bill due date
currency
string 
required
Currency code ex: KHR
total_amount
integer 
required
Total amount of Bill that already included tax
customer_sync_code
string 
required
Sync code of customer
total_tax
integer 
optional
Total tax in that invoice
payment_method_token
string 
optional
Specific payment method that want to payment from.
If not specify it's will payment from default payment method.
settlement_to
string 
required
Linked biller sync code that want to settle to
description
string 
optional
Description
exchange_rate_khr
string 
optional
Exchange rate from base currency to KHR currency ( example : $1 = 4100 )
total_amount_khr
string 
required
Total amount in KHR currency ( base currency x exchange rate )
hash
string 
required
Hash calculation
Base64(HMAC_SHA-512(
ref_id + date(yyyyMMddHHmmss) + currency + total_amount+ customer_sync_code + settlement_to , hash_token ))
Bill24 will provide hash_token
details
array [object {7}] 
optional
Detail for this bill
item_name
string 
optional
The name of the item.
description
string 
optional
Description of the item.
quantity
integer 
optional
The number of items.
price
number 
optional
The price per unit.
amount
number 
optional
The total amount for the item.
tax_amount
number 
optional
The tax applied to the item.
tax_name
string 
optional
The name of the tax (e.g., "VAT").
Example
{
  "ref_id": "101",
  "date": "2024-06-22T02:41:55.350Z",
  "due_date": "2024-06-30T06:50:55.350Z",
  "currency": "KHR",
  "total_amount": 100,
  "customer_sync_code": "xxxxxxxxx",
  "total_tax": 0,
  "payment_method_token": "",
  "settlement_to": "xxxxxxxxxxxxxxx",
  "description": "upload bills",
  "exchange_rate_khr": "",
  "total_amount_khr": "",
  "hash": "xxxxxxxxxxxxxxx",
  "details": [
    {
      "item_mame": "A001",
      "description": "Hello",
      "quantity": 2,
      "price": 5,
      "amount": 10,
      "tax_amount": 0,
      "tax_name": "Charge tax"
    }
  ]
}

Request samples

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://merchantapi-demo.bill24.io/bill_payment/push_bill_with_payment' \
--header 'Content-Type:  application/json' \
--header 'Authorization:  Bearer {token get from endpoint (Authorization)}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "ref_id": "101",
    "date": "2024-06-22T02:41:55.350Z",
    "due_date": "2024-06-30T06:50:55.350Z",
    "currency": "KHR",
    "total_amount": 100,
    "customer_sync_code": "xxxxxxxxx",
    "total_tax": 0,
    "payment_method_token": "",
    "settlement_to": "xxxxxxxxxxxxxxx",
    "description": "upload bills",
    "exchange_rate_khr": "",
    "total_amount_khr": "",
    "hash": "xxxxxxxxxxxxxxx",
    "details": [
        {
            "item_mame": "A001",
            "description": "Hello",
            "quantity": 2,
            "price": 5,
            "amount": 10,
            "tax_amount": 0,
            "tax_name": "Charge tax"
        }
    ]
}'

Responses

🟢200Success
application/json
Body
code
string 
optional
Status code
message
string 
optional
message in English.
message_kh
string 
optional
message in Khmer.
data
object 
optional
bill
object 
optional
Bill status
payment
object 
optional
Payment status
Example
{
  "code": "000",
  "message": "Push bill and capture payment successfully !",
  "message_kh": "បញ្ជូនវិក័យ្យបត្រនិងធ្វើការទូទាត់រួចរាល់​​ !",
  "data": {
    "bill": {
      "status": "success"
    },
    "payment": {
      "status": "success"
    }
  }
}
Previous
Get Payment Methods
Next
Get List bills