Skip to main content

Remove Cash From Teller Till

Overview

Removes cash from a teller till for deposit to vault or other purposes.

Command

RemoveCashFromTellerTillCommand

Endpoint

POST /api/bpm/cmd

Request Headers

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

Request Body

{
"cmd": "RemoveCashFromTellerTillCommand",
"data": {
"tillId": "TILL-T001",
"amount": 50000.00,
"destinationType": "Vault",
"destinationId": "VLT-001",
"narration": "End of day till deposit to vault"
}
}

Request Parameters

ParameterTypeRequiredDescription
cmdstringYesMust be "RemoveCashFromTellerTillCommand"
dataobjectYesCash removal data
↳ tillIdstringYesUnique identifier of the till
↳ amountdecimalYesAmount to remove (must be positive)
↳ destinationTypestringYesDestination for cash (Vault, BankTransfer, CashOut)
↳ destinationIdstringNoIdentifier of destination (vault ID, etc.)
↳ narrationstringYesDescription of the cash removal
  • Description: Transaction description

Response

Success Response (200 OK)

{
"success": true,
"message": "Cash removed from till successfully",
"data": {
"transactionId": "string",
"tillId": "string",
"amount": "decimal",
"previousBalance": "decimal",
"newBalance": "decimal",
"transactionDate": "datetime"
}
}

Error Responses

400 Bad Request

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

409 Conflict

{
"success": false,
"message": "Insufficient till balance"
}

Business Rules

  1. Till must be in "Open" status
  2. Till must have sufficient balance
  3. Amount must be positive
  4. Creates audit trail entry

Code Example

async function removeCashFromTellerTill(tillId, amount, narration) {
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: 'RemoveCashFromTellerTillCommand',
data: {
tillId: tillId,
amount: amount,
destinationType: 'Vault',
narration: narration
}
})
});

return await response.json();
}

Notes

  • Verify till balance before removal
  • Document denomination details
  • Use for excess cash management during shift