Skip to main content

Transaction history

Use this API to query the transaction history (credit and debit) of a Merchant or shop. You can filter by virtual account (VA) number, bank code or a specific time range for reconciliation.

POST
URLhttps://open-api.tingee.vn/v1/transaction/get-paging

Query the detailed transaction history. The result includes the amount, transaction type, time and transfer description.

Header Request​

HeaderRequiredDescription
Content-Type✓application/json
x-client-id✓Partner identifier issued by TINGEE.
x-signature✓HMAC SHA512 authentication signature. See How to generate the signature.
x-request-timestamp✓Time the request is sent (format: yyyyMMddHHmmssSSS, UTC+7)

Body Parameter​

FieldTypeRequiredDescription
skipCountnumber✕Number of records to skip (pagination).
maxResultCountnumber✕Maximum number of records per page (up to 200).
merchantIdnumber✕Merchant ID
(required if you connect with a Master Merchant account).
shopIdsarray✕List of shop IDs to filter by.
vaAccountNumbersarray✕List of virtual account numbers to filter by.
bankBinstring✕Bank BIN. See Supported banks.
billIdstring✕Filter payment transactions for a dynamic QR code (the billId returned by the create dynamic QR API).
startTimestring✓Start time (format: yyyyMMddHHmmss, UTC+7).
endTimestring✓End time (format: yyyyMMddHHmmss, UTC+7).
Query time range limit

Each request can query a range of up to 10 days. The gap between startTime and endTime must not exceed 10 days. To get data for a longer period, split it into several smaller requests.

Code samples​

curl --location --request POST 'https://open-api.tingee.vn/v1/transaction/get-paging' \
--header 'accept: application/json' \
--header 'x-client-id: YOUR_CLIENT_ID' \
--header 'x-request-timestamp: 20240509154004003' \
--header 'x-signature: YOUR_SIGNATURE' \
--header 'Content-Type: application/json' \
--data '{
"skipCount": 0,
"maxResultCount": 50,
"vaAccountNumbers": [
"88880935926988"
],
"bankBin": "970418",
"startTime": "20251001000000",
"endTime": "20251010235959"
}'

Sample Response​

{
"code": "00",
"message": "Success",
"data": {
"totalCount": 1,
"items": [
{
"transactionId": "3f1c2a9e-8b4d-4e57-9a61-2c7d5b0e8f14",
"merchantId": 1001,
"shopId": 1024,
"bankBin": "970418",
"cashFlowSource": "bank-transfer",
"code": "FT25283123456",
"amount": 100000,
"type": "credit",
"content": "Thanh toan don hang 123",
"currency": "VND",
"accountNumber": "0935926988",
"vaAccountNumber": "88880935926988",
"transactionDate": "20251010103000",
"billId": null
}
]
}
}
FieldTypeDescription
codestringResult code (00 = success).
messagestringResponse message.
data.totalCountnumberTotal number of transactions found.
data.items[].transactionIdstringTransaction ID on the TINGEE system (UUID).
data.items[].merchantIdnumberMerchant ID.
data.items[].shopIdnumberShop ID.
data.items[].bankBinstringBank BIN.
data.items[].cashFlowSourcestringSource of funds: bank-transfer (bank transfer) or card (card).
data.items[].codestringBank-side transaction code.
data.items[].amountnumberTransaction amount.
data.items[].typestringTransaction type: credit or debit.
data.items[].contentstringTransfer description.
data.items[].currencystringCurrency.
data.items[].accountNumberstringOriginal account number.
data.items[].vaAccountNumberstringVirtual account number that received the money.
data.items[].transactionDatestringTransaction time (format: yyyyMMddHHmmss, UTC+7).
data.items[].billIdstringRelated dynamic QR ID (if the transaction is a payment for a dynamic QR code).

Common error codes​

CodeDescriptionHow to handle
1107Time range exceeds the limitendTime must not be more than 10 days after startTime. Split into several smaller requests.
1108Page size too largemaxResultCount is at most 200.
90, 91, 92, 97Request authentication error (timestamp, client-id, signature)See System error codes.
OthersOther errorsSee Error codes.