List Transactions
curl --request GET \
--url https://api.oneclickdz.com/v3/account/transactions \
--header 'X-Access-Token: <api-key>'import requests
url = "https://api.oneclickdz.com/v3/account/transactions"
headers = {"X-Access-Token": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Access-Token': '<api-key>'}};
fetch('https://api.oneclickdz.com/v3/account/transactions', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.oneclickdz.com/v3/account/transactions",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Access-Token: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.oneclickdz.com/v3/account/transactions"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Access-Token", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.oneclickdz.com/v3/account/transactions")
.header("X-Access-Token", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.oneclickdz.com/v3/account/transactions")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Access-Token"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"items": [
{
"_id": "<string>",
"type": "<string>",
"operation": "<string>",
"amount": 123,
"oldBalance": 123,
"newBalance": 123,
"objid": "<string>",
"note": "<string>",
"time": "<string>"
}
],
"pagination": {
"page": 123,
"pageSize": 123,
"totalPages": 123,
"totalResults": 123
}
},
"meta": {
"timestamp": "<string>"
}
}Account
List Transactions
Get paginated list of account transactions with optional date filtering
GET
/
v3
/
account
/
transactions
List Transactions
curl --request GET \
--url https://api.oneclickdz.com/v3/account/transactions \
--header 'X-Access-Token: <api-key>'import requests
url = "https://api.oneclickdz.com/v3/account/transactions"
headers = {"X-Access-Token": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Access-Token': '<api-key>'}};
fetch('https://api.oneclickdz.com/v3/account/transactions', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.oneclickdz.com/v3/account/transactions",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Access-Token: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.oneclickdz.com/v3/account/transactions"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Access-Token", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.oneclickdz.com/v3/account/transactions")
.header("X-Access-Token", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.oneclickdz.com/v3/account/transactions")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Access-Token"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"items": [
{
"_id": "<string>",
"type": "<string>",
"operation": "<string>",
"amount": 123,
"oldBalance": 123,
"newBalance": 123,
"objid": "<string>",
"note": "<string>",
"time": "<string>"
}
],
"pagination": {
"page": 123,
"pageSize": 123,
"totalPages": 123,
"totalResults": 123
}
},
"meta": {
"timestamp": "<string>"
}
}Overview
Returns a paginated list of all transactions on your account, including deposits, withdrawals, top-ups, refunds, and transfers.Query Parameters
integer
default:1
Page number (minimum: 1)
integer
default:20
Items per page (minimum: 1, maximum: 100)
string
Start date for filtering (ISO 8601 format:
2025-10-01T00:00:00Z)string
End date for filtering (ISO 8601 format:
2025-10-31T23:59:59Z)When filtering by date, both
from and to parameters must be provided
together.Transaction Types
Money In (Increment)
| Type | Description |
|---|---|
DEPOSIT | Money deposited to your account |
REFUND-FLEXY | Refund from failed mobile top-up |
REFUND-ADSL | Refund from failed internet top-up |
REFUND-ORDER | Refund from cancelled gift card order |
RECEIVE | Money received from another user |
POINT-EXCHANGE | Points converted to balance |
Money Out (Decrement)
| Type | Description |
|---|---|
FLEXY | Mobile top-up transaction |
ADSL | Internet top-up transaction |
ORDER | Gift card or product order |
WITHDRAW | Money withdrawn from account |
SEND | Money sent to another user |
SERVICE | Service payment or fee |
Response
boolean
required
Indicates if the request was successful
object
required
Show properties
Show properties
array
required
Array of transaction objects
Show transaction object
Show transaction object
string
Unique transaction identifier
string
Transaction type (see types above)
string
Operation direction:
increment or decrementnumber
Transaction amount in DZD
number
Balance before transaction
number
Balance after transaction
string
Related object ID (top-up ID, order ID, etc.)
string
Optional transaction note
string
Transaction timestamp (ISO 8601)
Examples
curl https://api.oneclickdz.com/v3/account/transactions?page=1&pageSize=20 \
-H "X-Access-Token: YOUR_API_KEY"
const response = await fetch(
"https://api.oneclickdz.com/v3/account/transactions?page=1&pageSize=20",
{
headers: { "X-Access-Token": "YOUR_API_KEY" },
}
);
const { data } = await response.json();
const transactions = data.items;
const pagination = data.pagination;
import requests
response = requests.get(
'https://api.oneclickdz.com/v3/account/transactions',
headers={'X-Access-Token': 'YOUR_API_KEY'},
params={'page': 1, 'pageSize': 20}
)
data = response.json()['data']
transactions = data['items']
pagination = data['pagination']
<?php
$ch = curl_init();
$url = 'https://api.oneclickdz.com/v3/account/transactions?page=1&pageSize=20';
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['X-Access-Token: YOUR_API_KEY']);
$response = curl_exec($ch);
$data = json_decode($response, true);
$transactions = $data['data']['items'];
?>
With Date Filtering
curl "https://api.oneclickdz.com/v3/account/transactions?from=2025-10-01T00:00:00Z&to=2025-10-31T23:59:59Z" \
-H "X-Access-Token: YOUR_API_KEY"
const from = "2025-10-01T00:00:00Z";
const to = "2025-10-31T23:59:59Z";
const response = await fetch(
`https://api.oneclickdz.com/v3/account/transactions?from=${from}&to=${to}`,
{ headers: { "X-Access-Token": "YOUR_API_KEY" } }
);
response = requests.get(
'https://api.oneclickdz.com/v3/account/transactions',
headers={'X-Access-Token': 'YOUR_API_KEY'},
params={
'from': '2025-10-01T00:00:00Z',
'to': '2025-10-31T23:59:59Z'
}
)
Response Example
{
"success": true,
"data": {
"items": [
{
"type": "FLEXY",
"operation": "decrement",
"oldBalance": 2316.129999998957,
"amount": 990,
"newBalance": 1326.129999998957,
"objid": "68fe2cdd51bc170608683e3a",
"note": "MIX1000_OOREDOO - 0554926570",
"time": "2025-10-26T14:14:53.074Z",
"_id": "68fe2cdd51bc170608683e40"
},
{
"type": "REFUND-ORDER",
"operation": "increment",
"oldBalance": 316.1299999989569,
"amount": 2000,
"newBalance": 2316.129999998957,
"objid": "68fcdd7cd712569c624e05ee",
"note": "Refunded - 1 - 68fcdd7cd712569c624e05ee",
"time": "2025-10-25T14:24:00.338Z",
"_id": "68fcdd80d712569c624e069d"
},
{
"type": "ORDER",
"operation": "decrement",
"oldBalance": 2316.129999998957,
"amount": 2000,
"newBalance": 316.1299999989569,
"objid": "68fcdd7cd712569c624e05ee",
"note": "Order - PSN Germany - 5€ - 1",
"time": "2025-10-25T14:23:56.532Z",
"_id": "68fcdd7cd712569c624e05f1"
}
],
"pagination": {
"page": 1,
"pageSize": 5,
"totalPages": 105,
"totalResults": 521
}
},
"meta": {
"timestamp": "2025-10-29T00:35:58.852Z"
}
}
Use Cases
Transaction History
Display transaction history to users in your app
Accounting & Reports
Generate financial reports and statements
Balance Reconciliation
Verify balance changes and audit transactions
User Activity
Track user spending patterns and behavior
Best Practices
Pagination
Pagination
- Start with reasonable page sizes (20-50 items)
- Implement infinite scroll or page navigation
- Cache results to reduce API calls
- Use
pagination.totalPagesto determine if more data exists
Date Filtering
Date Filtering
- Always provide both
fromandtoparameters - Use ISO 8601 format for dates - Set appropriate time ranges for reports - Consider timezone differences when filtering
Performance
Performance
- Cache transaction data locally when possible - Use date filters to limit result sets - Implement proper pagination UI - Consider webhook notifications for real-time updates
Display
Display
- Show transaction type in user-friendly language
- Display amounts with proper currency formatting
- Include timestamps in local timezone
- Link transactions to related objects (top-ups, orders)
Related Endpoints
Get Balance
Check current account balance

