Skip to main content

Retrieve Book Register List

Overview

The RetrieveBookRegistersListQuery retrieves a paginated list of book registers (cheque books, deposit slips, withdrawal slips) with comprehensive filtering options.

API Endpoint

POST /api/bpm/cmd

Headers

Content-Type: application/json
Authorization: Bearer {access_token}
X-Tenant-ID: {tenant_id}

Request Structure

{
"cmd": "RetrieveBookRegistersListQuery",
"data": {
"depositAccountId": 12345,
"bookType": 1,
"status": 1,
"searchText": "string",
"pageNumber": 1,
"pageSize": 20,
"startDate": "2024-01-01",
"endDate": "2024-12-31",
"isExport": false
}
}

Request Fields

FieldTypeRequiredDescriptionDefault
depositAccountIdlongNoFilter by specific deposit account ID-
bookTypeintegerNoFilter by book type (1=Cheque, 2=DepositSlip, 3=WithdrawalSlip)-
statusintegerNoFilter by status (1=ACTIVE, 2=INACTIVE, 3=BLOCKED)-
searchTextstringNoSearch in account number, book reference, serial numbers-
pageNumberintegerNoPage number to retrieve1
pageSizeintegerNoNumber of records per page20
startDatestringNoFilter by issued date start (YYYY-MM-DD)-
endDatestringNoFilter by issued date end (YYYY-MM-DD)-
isExportbooleanNoExport to Excel (ignores pagination)false

Book Type Values

  • 1 - Cheque (for making payments)
  • 2 - DepositSlip (for cash/cheque deposits)
  • 3 - WithdrawalSlip (for cash withdrawals)

Status Values

  • 1 - ACTIVE (book is currently usable)
  • 2 - INACTIVE (book is deactivated)
  • 3 - BLOCKED (book is blocked for security reasons)

Sample Request

{
"cmd": "RetrieveBookRegistersListQuery",
"data": {
"depositAccountId": 12345,
"bookType": 1,
"status": 1,
"pageNumber": 1,
"pageSize": 20
}
}

Response Structure

Success Response

{
"isSuccessful": true,
"message": "20/45 book registers retrieved successfully.",
"statusCode": "00",
"data": {
"items": [
{
"id": 789,
"bookType": 1,
"bookTypeDescription": "Cheque",
"bookReference": "CHQ-2024-001",
"depositAccountId": 12345,
"accountNumber": "1234567890",
"clientId": 67890,
"clientName": "John Doe",
"issuingBranchId": 5,
"branchName": "Main Branch",
"branchKey": "MB001",
"currencyCode": "NGN",
"currencyName": "Nigerian Naira",
"startSerialNumber": "0001001",
"endSerialNumber": "0001050",
"numberOfLeaves": 50,
"issuedDate": "2024-12-01T00:00:00Z",
"status": 1,
"statusDescription": "ACTIVE",
"isActive": true,
"remarks": "Initial cheque book issuance",
"createdAt": "2024-12-01T10:30:00Z",
"createdBy": "admin@bank.com",
"updatedAt": "2024-12-01T10:30:00Z",
"updatedBy": "admin@bank.com"
}
],
"pageNumber": 1,
"pageSize": 20,
"totalPages": 3,
"totalRecords": 45
},
"size": 20,
"count": 45,
"pages": 3,
"hasNext": true,
"hasPrevious": false
}

Error Response

{
"isSuccessful": false,
"message": "Error description",
"statusCode": "99",
"data": null
}

Use Cases

1. Get All Active Cheque Books for Account

{
"cmd": "RetrieveBookRegistersListQuery",
"data": {
"depositAccountId": 12345,
"bookType": 1,
"status": 1
}
}

2. Search by Serial Number

{
"cmd": "RetrieveBookRegistersListQuery",
"data": {
"searchText": "0001050"
}
}

3. Get Books Issued in Date Range

{
"cmd": "RetrieveBookRegistersListQuery",
"data": {
"startDate": "2024-01-01",
"endDate": "2024-12-31",
"pageSize": 50
}
}

4. Export All Blocked Books

{
"cmd": "RetrieveBookRegistersListQuery",
"data": {
"status": 3,
"isExport": true
}
}

5. Get Withdrawal Slips for Branch

{
"cmd": "RetrieveBookRegistersListQuery",
"data": {
"bookType": 3,
"searchText": "MB001"
}
}

Notes

  • When isExport is set to true, pagination is ignored and all matching records are returned in Excel format
  • Date filters apply to the IssuedDate field
  • The startDate filter includes books from the beginning of that day (00:00:00)
  • The endDate filter includes books up to the end of that day (23:59:59)
  • Search text filters across account number, book reference, start serial number, and end serial number
  • Results are cached for improved performance (configurable timeout)
  • Client names are automatically resolved based on client classification (individual/group)
  • Results include full deposit account, client, branch, and currency details

Response Fields

FieldDescription
idUnique identifier of the book register
bookTypeNumeric book type (1=Cheque, 2=DepositSlip, 3=WithdrawalSlip)
bookTypeDescriptionHuman-readable book type
bookReferenceOptional reference number for the book
depositAccountIdID of the deposit account
accountNumberAccount number
clientIdID of the account holder
clientNameFull name of the account holder
issuingBranchIdID of the branch that issued the book
branchNameName of the issuing branch
branchKeyBranch code/key
currencyCodeISO currency code (e.g., NGN, USD)
currencyNameFull currency name
startSerialNumberFirst serial number in the book
endSerialNumberLast serial number in the book
numberOfLeavesTotal number of leaves/pages
issuedDateDate the book was issued
statusNumeric status (1=ACTIVE, 2=INACTIVE, 3=BLOCKED)
statusDescriptionHuman-readable status
isActiveBoolean indicating if status is ACTIVE
remarksNotes about the book register
createdAtTimestamp when record was created
createdByUser who created the record
updatedAtTimestamp of last update
updatedByUser who last updated the record