Developer Suite
Register Sandbox
Register Sandbox
  1. Ecommerce Checkout
  • Overview
  • API Endpoints
  • Ecommerce Checkout
    • Purchase
      POST
    • Get a transaction details
      POST
    • Close transaction
      POST
    • Check transaction
      POST
    • Refund API
      POST
    • Get transaction list
      POST
    • Exchange rate
      POST
  • Checkout Plugins
    • Prestashop
    • Woocommerce
  • Credentials on File
    • Link Account
      POST
    • Link Card
      POST
    • Purchase using token
      POST
    • Remove account token
      POST
    • Remove card token
      POST
    • Get linked account details
      POST
  • ABA QR API
    • QR API
      POST
  • Payment Link
    • Create payment link
      POST
    • Get payment link details
      POST
  • Pre-auth
    • Complete pre-auth transactions
      POST
    • Complete pre-auh transaction with payout
      POST
    • Cancel pre-purchase transaction
      POST
  • Payout
    • Payout
    • Update a beneficiary status
    • Add a beneficiary to whitelist
  • KHQR Guideline
  • Resources
  1. Ecommerce Checkout

Get transaction list

POST
/api/payment-gateway/v1/payments/transaction-list-2
This API allows merchants to retrieve a list of transactions filtered by specific criteria, such as transaction date, amount, payment type, and more. It supports pagination and is designed for both in-store and online profiles, providing secure and efficient access to recent transaction records.
Criteria
Both instore and online profile
Allow only by outlet, cannot get all transaction from all outlet which is under one business profile
Can filter from any date range in the past to current day with maximum 3 days (included today)
All parameters used in the hash string must follow the exact sequence defined in the API documentation
Maximum request per minute: 50 requests

Request

Header Params
Content-Type
string 
required
Example:
application/json
Body Params application/json
req_time
string 
required
Request date and time in UTC format as YYYYMMDDHHmmss.
merchant_id
string 
required
A unique merchant key which provided by ABA Bank.
from_date
string 
optional
Start date for filtering transactions, in the format YYYY-MM-DD HH:mm:ss. Default value is today at 00:00:00.
to_date
string 
optional
End date for filtering transactions, in the format YYYY-MM-DD HH:mm:ss. Default value is today at 23:59:59.
from_amount
number <double>
optional
Search transactiion that has purchased amount from
to_amount
number <double>
optional
Search transactiion that has purchased amount to
status
string 
optional
Possible values: APPROVED, PRE-AUTH, REFUNDED, PENDING, DECLINDED, CANCELLED. No case sensitive , if you want to query multiple values please separate value by comma.
page
string 
optional
Current page index. Default value: 1
pagination
string 
optional
Total number of recorde per page. Default value 40, maximum value is 1000.
hash
string 
required
Base64 encode of hash hmac sha512 encryption of concatenates values req_time, merchant_id, from_date, to_date, from_amount, to_amount,status, page , and pagination with public_key.
PHP Sample Code
Example
{
    "req_time": "20250213081756",
    "merchant_id": "ec000002",
    "from_date": null,
    "to_date": null,
    "from_amount": "0.01",
    "to_amount": "1000",
    "status": null,
    "page": "1",
    "pagination": "40",
    "hash": "o1mDvIjTyzoFcN7zvm7...aUYAGXjsx4Ej0E6P2CoxtOQ=="
}

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 '/api/payment-gateway/v1/payments/transaction-list-2' \
--header 'Content-Type: application/json' \
--data-raw '{
    "req_time": "20250213081756",
    "merchant_id": "ec000002",
    "from_date": null,
    "to_date": null,
    "from_amount": "0.01",
    "to_amount": "1000",
    "status": null,
    "page": "1",
    "pagination": "40",
    "hash": "o1mDvIjTyzoFcN7zvm7...aUYAGXjsx4Ej0E6P2CoxtOQ=="
}'

Responses

🟢200OK
application/json
Body
data
array [object {21}] 
optional
transaction_id
string 
optional
Transaction id
transaction_date
string 
optional
Created date & time of the transaction.
apv
string 
optional
Transaction approval code
payment_status
string 
optional
Possible values:
APPROVED : Transaction successfully completed with the full purchase amount.
PRE-AUTH : Transaction successfully processed with a pre-authorization hold on funds pending final capture.
REFUNDED : Transaction has been fully or partially refunded.
PENDING : Transaction is awaiting payment completion by the payer.
DECLINED : Transaction has been declined.
CANCELLED : Merchant canceled the pre-authorization or closed the transaction.
payment_status_code
integer 
optional
0 : APPROVED, PRE-AUTH
2 : PENDING
3 : DECLINDED
4 : REFUNDED
7 : CANCELLED
original_amount
number <double>
optional
Original amount of the transaction (before discount)
original_currency
string 
optional
Original transaction currency.
KHR : For Khmer Riel transaction
USD : For US Dollar transaction
total_amount
number <double>
optional
Amount to pay after discount. Its currency follow original currency.
discount_amount
number <double>
optional
Discounted amount. Its currency follow original currency.
refund_amount
number <double>
optional
Total refunded amount.
payment_amount
number <double>
optional
The amount that the customer has paid. Example: Customer supposed to pay 1$, but customer paid from his KHR account then this payment amount will be 4,000.00.
payment_currency
string 
optional
Payment currency. Example: Customer supposed to pay 1$, but customer paid from his KHR account then this payment currency will be KHR.
first_name
string 
optional
Payer first name. This value only exist in the API response if configure on profile.
last_name
string 
optional
Payer last name. This value only exist in the API response if configure on profile.
email
string 
optional
Payer email. This value only exist in the API response if configure on profile.
phone
string 
optional
Payer phone. This value only exist in the API response if configure on profile.
bank_ref
string 
optional
Unique booking entry id from ABA core banking. This value only exist in the API response if configure on profile.
payment_type
string 
optional
Payment method that the customer use to make payment. This value only exist in the API response if configure on profile. Possible values:
N/A: Those pending for payment.
ABA Pay : Transaction made with ABA Account (ABA Mobile)
Alipay : Transaction made with Alipay.
Wechat : Transaction made with WeChat pay.
KHQR : Trnasaction made with KHQR.
VISA : Transaction made with Visa card.
MC : Transacion made with Mastercard.
JCB : Transaction made with JCB card
CUP : Transaction made with UPI card.
payer_account
string 
optional
Masked ABA Account Number or Masked Card PAN. For other payment options, it will be blank.
bank_name
string 
optional
If payment is made with ABA Pay, it will show ABA Bank or If payment made using KHQR it will show issuer bank name.
card_source
string 
optional
Only for payment with card:
ONUS : Transaction made with ABA Card
OFFUS_DOMESTIC : Transaction made with local card issue by other banks
OFFUS_INTERNATIONAL : Transaction made with internal card.
page
string 
optional
Current page index.
pagination
string 
optional
Total number of records per page. Default: 40 and maximum of 1000.
status
object 
optional
code
optional
00 : Success!
1 : Wrong hash
8 : Invalid merchant profile
11 : Internal server error
429 : Rate limit exceeded.
message
string 
optional
Please see the property reponse code for the details.
tran_id
string 
optional
Request reference generated by payment gateway.
Examples
{
    "data": [
        {
            "transaction_id": "17394307767",
            "transaction_date": "2025-02-13 14:13:00",
            "apv": "N/A",
            "payment_status": "PENDING",
            "payment_status_code": 2,
            "payment_type": "N/A",
            "original_amount": 0.2,
            "original_currency": "USD",
            "total_amount": 0.2,
            "discount_amount": 0,
            "refund_amount": 0,
            "payment_amount": 0,
            "payment_currency": ""
        },
        {
            "transaction_id": "17394277693",
            "transaction_date": "2025-02-13 13:55:25",
            "apv": "753786",
            "payment_status": "APPROVED",
            "payment_status_code": 0,
            "payment_type": "ABA Pay",
            "original_amount": 0.1,
            "original_currency": "USD",
            "total_amount": 0.1,
            "discount_amount": 0,
            "refund_amount": 0,
            "payment_amount": 0.1,
            "payment_currency": "USD"
        },
        {
            "transaction_id": "17394277224",
            "transaction_date": "2025-02-13 13:22:47",
            "apv": "N/A",
            "payment_status": "PENDING",
            "payment_status_code": 2,
            "payment_type": "N/A",
            "original_amount": 0.1,
            "original_currency": "USD",
            "total_amount": 0.1,
            "discount_amount": 0,
            "refund_amount": 0,
            "payment_amount": 0,
            "payment_currency": ""
        }
    ],
    "page": "1",
    "pagination": "40",
    "status": {
        "code": "00",
        "message": "Success!",
        "tran_id": "244935541251140"
    }
}
Previous
Refund API
Next
Exchange rate