Finance Drawer Adjustment - hmislk/hmis GitHub Wiki
Drawer Adjustment Requests and Approvals
Introduction
A drawer adjustment corrects the cashier's drawer balance when there is a discrepancy that cannot be explained by shortage or excess. Unlike shortage/excess recording (which documents a discrepancy), a drawer adjustment directly modifies the drawer balance after supervisory approval, creating a controlled correction path with an audit trail.
Navigation
Main Menu → Financial Transaction Manager → Drawer tab
Requesting a Drawer Adjustment (Cashier)
- In the Drawer tab, click Request Drawer Adjustment.
- The system opens
cashier/drawer_adjustment_request.xhtml. - Fill in:
- Adjustment amount (positive to increase, negative to decrease)
- Payment method affected
- Reason for the adjustment
- Click Submit. The request is queued for supervisor approval.
Approving a Drawer Adjustment (Supervisor)
Privilege required: DrawerAdjustmentDirect
- Navigate via the Admin tab → Adjust Drawer Balance →
cashier/drawer_adjustment_admin.xhtml. - Review pending adjustment requests: cashier name, amount, reason, date.
- Click Approve →
cashier/drawer_adjustment_approve.xhtml. Confirm. - The cashier's drawer balance is updated immediately.
- Or click Reject with a reason.
Audit Trail
All drawer adjustment requests and decisions are logged with requesting cashier, requested amount and reason, approver, timestamp, and before/after drawer balance.
Technical Reference
| Item | Detail |
|---|---|
| Controller | DrawerAdjustmentController |
| Request | navigateToRequestAdjustment() → cashier/drawer_adjustment_request.xhtml |
| Admin approve | navigateToAdminAdjustment() → cashier/drawer_adjustment_admin.xhtml |
| Approve page | cashier/drawer_adjustment_approve.xhtml |
| Privilege | DrawerAdjustmentDirect |