Wallet Transaction Summary

Overview

This API endpoint retrieves a summary of transactions for wallets associated with an operator, filtered by account number, date type, and date. It requires authentication via an API key and returns transaction counts and amounts grouped by status.

Endpoint

POST {baseURL}/bot/api_v2/account_deposit.php (Replace with actual baseURL)

Content-Type : application/json

Authentication

Header: Api-Key (Required)

  • Description: A valid API key associated with an operator.

  • Example: Api-Key: your-api-key-here

  • Error: If missing or invalid, returns 401 Unauthorized with:

{
  "status": "error",
  "message": "Api-Key header missing"
}

Request Body

Field
Type
Required
Decription

account_number

String

Yes

The account number to filter wallets.

filter_date_type

String

Yes

The date field to filter transactions(action_date or c_date)

filter_date

String

Yes

The date to filter transactions in DD-MM-YYYY format (e.g., 31-12-2023)

{
  "account_number": "1234567890",
  "filter_date_type": "action_date",
  "filter_date": "31-12-2023"
}

Request Validation

Missing Fields

  1. If account_number is missing

{
  "account_number": "1234567890",
  "filter_date_type": "action_date",
  "filter_date": "31-12-2023"
}
  1. If filter_date_type is missing

{
  "status": "error",
  "message": "Filter Date Type is missing"
}
  1. If filter_date is missing

{
  "status": "error",
  "message": "Filter Date is missing"
}

Invalid filter_date_type:

  1. Must be either action_date or c_date. Otherwise:

{
  "status": "error",
  "message": "Un Supported Filter Type"
}

Invalid filter_date format

  1. Must be in DD-MM-YYYY format and a valid date. Otherwise:

{
  "status": "error",
  "message": "Invalid Filter Date Format"
}

Response

The response is a JSON object with the following structure:

Field
Type
Description

status

String

Indicates success or error (success or error).

data

Object

Transaction summary grouped by status.

message

String

Optional message (e.g., if no wallets are found).

Data Object

The data object contains transaction summaries grouped by status (e.g., success, pending, etc.). Each status key contains:

Field
Type
Description

transaction_count

Number

Total number of transactions.

received_amount

Number

Sum of received amounts.

request_amount

Number

Sum of requested amounts.

status

String

Transaction status.

Example Success Response

{
  "status": "success",
  "data": {
    "Approved": {
      "transaction_count": 990,
      "received_amount": 3308694,
      "request_amount": 3305594,
      "status": "Approved"
    },
    "Late Approved": {
      "transaction_count": 8,
      "received_amount": 14660,
      "request_amount": 14660,
      "status": "Late Approved"
    },
    "Pending": {
      "transaction_count": 127,
      "received_amount": 0,
      "request_amount": 576448,
      "status": "Pending"
    },
    "User Timed Out": {
      "transaction_count": 1345,
      "received_amount": 0,
      "request_amount": 5398089,
      "status": "User Timed Out"
    },
    "Cancelled": {
      "transaction_count": 42,
      "received_amount": "0",
      "request_amount": 91689,
      "status": "Cancelled"
    }
  }
}

Example No Wallets Response

{
  "status": "success",
  "data": [],
  "message": "No wallets found for the operator"
}

Error Responses

All errors return a 401 Unauthorized status code with a JSON body containing:

  • status: "error"

  • message: Description of the error (see validation errors above).

Example Usage

cURL Request

curl -X POST http://your-api-endpoint \
-H "Api-Key: your-api-key-here" \
-H "Content-Type: application/json" \
-d '{
  "account_number": "1234567890",
  "filter_date_type": "action_date",
  "filter_date": "31-12-2023"
}'

Expected Response

{
  "status": "success",
  "data": {
    "Approved": {
      "transaction_count": 990,
      "received_amount": 3308694,
      "request_amount": 3305594,
      "status": "Approved"
    },
    "Late Approved": {
      "transaction_count": 8,
      "received_amount": 14660,
      "request_amount": 14660,
      "status": "Late Approved"
    },
    "Pending": {
      "transaction_count": 127,
      "received_amount": 0,
      "request_amount": 576448,
      "status": "Pending"
    },
    "User Timed Out": {
      "transaction_count": 1345,
      "received_amount": 0,
      "request_amount": 5398089,
      "status": "User Timed Out"
    },
    "Cancelled": {
      "transaction_count": 42,
      "received_amount": "0",
      "request_amount": 91689,
      "status": "Cancelled"
    }
  }
}

Last updated