Transaction Report API
Transaction Report API
This documentation outlines how to retrieve all transactions processed through Paydirect and other channels for a specific bank. Access is secured using Bearer Token authentication and scoped to your bank profile.
1 Base URL
All API requests should be made to the following base URL:
2 Endpoint
Retrieves paginated transaction records based on the supplied filters. Results are restricted to transactions belonging to the authenticated bank.
3 Authentication
This API uses Bearer Token Authentication. Obtain an access token using your client credentials, then include it in the Authorization header of all subsequent requests.
Get Access Token
Using the Token
Include the access token in the Authorization header of all API requests:
4 Request Parameters
Pass the following query parameters to filter and paginate your transaction report:
| Parameter | Type | Required | Description |
|---|---|---|---|
| StartDate | string | Required | Start date for transaction search (format: YYYY-MM-DD) |
| EndDate | string | Required | End date for transaction search (format: YYYY-MM-DD) |
| PageNumber | integer | Required | Page number for paginated response (starts at 1) |
| PageSize | integer | Required | Number of records per page |
| ProductId | integer | Optional | Unique identifier for the product |
| PaymentChannelId | integer | Optional | Payment channel identifier |
| CustomerId | string | Optional | Customer unique identifier |
| PaymentReference | string | Optional | Transaction payment reference |
5 Sample Request
Retrieve transactions for a specific product within a date range:
6 Responses
Successful Response
200 OKNo Transactions Found
200 OKUnauthorized Access
401 UnauthorizedReturned when the access token is missing, invalid, or expired. Obtain a new token and retry the request.
7 Response Fields
Each transaction record in the response contains the following fields:
| Field | Type | Description |
|---|---|---|
| paymentReference | string | Unique transaction reference |
| paymentDate | datetime | Date and time payment was processed (ISO 8601 format) |
| customerId | string | Customer unique identifier |
| receiptNo | string | Generated receipt number |
| customerName | string | Name of customer |
| amount | decimal | Transaction amount |
| paymentMethod | string | Payment method used (e.g., "Debit Card") |
| bank | string | Bank processing the transaction |
| bankCode | string | CBN bank code |
8 Business Rules
- Only authenticated banks with valid access tokens can access the API
- Transactions returned are restricted to the authenticated bank only — cross-bank access is prohibited
- Access tokens are bank-scoped and cannot retrieve records belonging to another bank
- The API returns only transactions matching the supplied filters
-
Pagination metadata (
totalCount,totalPages) is included in all responses -
If no transactions match the criteria, a
"No transaction found"message is returned
9 Security
- All requests must be made over HTTPS
- Access tokens must be kept secure and confidential — never expose in client-side code
- Tokens are restricted to the bank resource associated with the authenticated client
- Implement token refresh logic before expiration to maintain uninterrupted access
10 Pagination
The API supports pagination using PageNumber and PageSize parameters. Use the response metadata to navigate through results:
?PageNumber=2&PageSize=30
| Response Field | Description |
|---|---|
| pageNumber | Current page number |
| pageSize | Number of records per page |
| totalCount | Total number of records matching the criteria |
| totalPages | Total number of pages available |
Updated about 21 hours ago