-
Notifications
You must be signed in to change notification settings - Fork 135
Finance Day End Report
The Day End Report is a management-level financial closure view that a finance supervisor runs at the end of each business day. It brings together all billing activity (by service type) and all payment activity (by tender method) into a single screen, giving a clear picture of what was collected versus what was billed and where any discrepancy lies. Because the report is sourced from both the bill table and the payment table, it is the primary tool for confirming that every bill has a matching payment record before the day is officially closed.
Cashier (main menu) -> Reports tab -> Day End Report
This opens cashier/day_end_report.xhtml.
- Go to Cashier in the main navigation menu.
- Select the Reports tab.
- Click Day End Report.
- Set the From date-time to the start of the business day (or the start of the reporting period).
- Set the To date-time to the end of the business day.
- Click Process Day End.
- Two result sections appear:
- Service Summary table — billing totals by service type
- Payment Method table — payment totals by tender type
| Field | Purpose |
|---|---|
| From | Start of the reporting period (date and time) |
| To | End of the reporting period (date and time) |
The date range is applied using financialTransactionController.fromDate and financialTransactionController.toDate.
This section counts bills from the bill table, grouped by service type. Each row shows:
| Column | Description |
|---|---|
| Service | The service category (e.g., Channelling on site, Channelling by agent, Channelling by online, OPD) |
| Collected | Total net value of cash-in bills for this service type |
| Refunds | Total net value of cash-out (return/refund) bills |
| Payments | Total net value of professional fee payment bills |
| Net | Collected + Refunds + Payments combined |
Service rows included:
- Channelling on site
- Channelling by agent
- Channelling by online
- OPD (with a sub-breakdown by OPD department)
Each OPD department appears as a sub-row under the OPD total, showing the collected amount for that department.
The OPD row is a clickable link that navigates to the OPD cashier report for deeper drill-down.
This section counts payments from the payment table, grouped by tender type. Each row shows:
| Column | Description |
|---|---|
| Category | Payment tender type |
| In | Total collected (positive payments) |
| Out | Total refunded (negative payments) |
| Net Total | In minus Out |
| Net Cash Total | Appears as a combined cell showing the net cash figure (visible on the Cash row) |
Payment method rows:
| Row | Description |
|---|---|
| Cash | Physical cash collected and refunded |
| Card | Credit/debit card transactions |
| Voucher | Voucher payments |
| Other | All other non-credit, non-cash, non-card, non-voucher methods |
Each amount is a clickable link. Clicking on it navigates to the corresponding payment detail list, allowing the supervisor to inspect individual transactions that make up the total.
The Day End Report and the Daily Return report serve different purposes and count different things:
| Aspect | Day End Report | Daily Return |
|---|---|---|
| Data source | Bill table (billing side) + Payment table (payment side) | Bill table only |
| Primary use | End-of-day financial closure and reconciliation | Billing-side count of bills processed |
| Who runs it | Finance supervisor | Cashier or billing manager |
| Discrepancy meaning | A gap between the billing section and the payment section means orphan bills exist (bills with no associated payment record) -- this is a data integrity issue, not a report error |
If the Service Summary total (bills) and the Payment Method total (payments) do not match, the likely cause is one or more bills that were created but for which no payment was recorded. These should be investigated using a direct cashbook or payment query.
The Day End Report is intended for:
- Finance supervisors -- to confirm daily closure is complete before handing over to the next shift
- Hospital administrators -- to verify that all service lines are balanced
- Auditors -- to spot unexplained gaps between billing and collection figures
Cashiers do not typically run this report; they use the Shift End Summary Report for their personal shift reconciliation.
| Item | Value |
|---|---|
| Page | cashier/day_end_report.xhtml |
| Navigation method | financialTransactionController.navigateToDayEndReport() |
| Process action | financialTransactionController.processDayEndReport() |
| Controller | com.divudi.bean.cashTransaction.FinancialTransactionController |
| Report template engine | ReportTemplateController.generateReport(ReportTemplateType, ...) |
| Service type enum | com.divudi.core.data.ServiceType |
| Finance type enum |
com.divudi.core.data.BillFinanceType (CASH_IN for collections, CASH_OUT for refunds) |
| Bill category enum |
com.divudi.core.data.BillCategory (PAYMENTS for professional fee bills) |
| Payment aggregation class | financialTransactionController.financialReportByPayments |
| Key report bundles |
opdBilled, opdReturns, opdDocPayment, channellingBilled, channellingReturns, channellingOnsite, channellingAgent, channellingOnline, opdByDepartment
|
| Privilege required |
Admin (for cashier index config access); standard cashier access to reach the Reports tab |