Skip to main content

Get Teller Till Transaction List

Overview

Retrieves the transaction history for a specific teller till.

Command

GetTellerTillTransactionListQuery

Endpoint

POST /api/bpm/cmd

Request Headers

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

Request Body

{
"cmd": "GetTellerTillTransactionListQuery",
"data": {
"tillId": "TILL-T001",
"transactionType": "Deposit",
"startDate": "2024-01-01T00:00:00Z",
"endDate": "2024-12-31T23:59:59Z",
"pageNumber": 1,
"pageSize": 20
}
}

Request Parameters

ParameterTypeRequiredDescription
cmdstringYesMust be "GetTellerTillTransactionListQuery"
dataobjectYesQuery filters
↳ tillIdstringYesUnique identifier of the till
↳ transactionTypestringNoFilter by transaction type (Deposit, Withdrawal, Transfer, CashIn, CashOut)
↳ startDatedatetimeNoStart date for transaction history
↳ endDatedatetimeNoEnd date for transaction history
↳ pageNumberintegerNoPage number for pagination (default: 1)
↳ pageSizeintegerNoNumber of records per page (default: 20)

Response

Success Response (200 OK)

{
"success": true,
"message": "Transaction list retrieved successfully",
"data": {
"transactions": [
{
"transactionId": "string",
"transactionType": "string",
"amount": "decimal",
"transactionDate": "datetime",
"accountNumber": "string",
"customerName": "string",
"narration": "string",
"status": "string",
"tellerName": "string"
}
],
"summary": {
"totalDeposits": "decimal",
"totalWithdrawals": "decimal",
"transactionCount": "integer"
},
"pagination": {
"currentPage": 1,
"pageSize": 20,
"totalRecords": 200,
"totalPages": 10
}
}
}

Error Responses

400 Bad Request

{
"success": false,
"message": "Validation failed",
"errors": ["Till ID is required"]
}

404 Not Found

{
"success": false,
"message": "Till not found"
}

Business Rules

  1. Users can only view transactions for authorized tills
  2. Results sorted by transaction date (newest first)
  3. Transaction summary includes totals by type
  4. Maximum date range is 90 days

Code Example

async function getTillTransactions(tillId, startDate, endDate) {
const response = await fetch('/api/bpm/cmd', {
method: 'POST',
headers: {
'Authorization': `Bearer ${accessToken}`,
'Content-Type': 'application/json',
'X-Tenant-Id': tenantId
},
body: JSON.stringify({
commandType: 'GetTellerTillTransactionListQuery',
data: {
tillId: tillId,
startDate: startDate,
endDate: endDate,
pageNumber: 1,
pageSize: 50
}
})
});

return await response.json();
}

Notes

  • Use for till reconciliation at end of shift
  • Export transactions for audit and reporting
  • Review large transactions for accuracy
  • Monitor transaction patterns for fraud detection