OPD Doctor Payments All Due - hmislk/hmis GitHub Wiki
OPD Doctor Payments β All Due
This article covers paying an OPD doctor for every unpaid OPD fee in a chosen date range, regardless of which shift each fee came from. Use it for end-of-month settlements, for doctors who work multiple shifts before being paid, or for clearing miscellaneous staff fees.
For paying one specific shift, see OPD Doctor Payments β Per Shift.
Prerequisites
- The doctor has an existing record in HMIS.
- The user has the
PaymentBillingprivilege (for initiating the payment) andPaymentBillSearch(for the searches and reports). WithoutOpdBillingon Manage Staff the wrapping index page is also hidden. - The configuration option "OPD Doctor Payments can be given without closing the shift." is enabled (this is the gate that makes the All-Due workflow available).
Navigation
There are two equivalent entry points.
| From⦠| Open⦠|
|---|---|
| The new OPD doctor payments hub | Top menu β OPD β Doctor Payments, then Actions β Initiate Professional Payments. |
| The classic Pay Doctor screen | Top menu β OPD β Pay Doctor, then Process All Due Payments. |
Both take you to /opd/professional_payments/payment_staff_bill.xhtml.
The OPD Doctor Payments index path is /opd/opd_doctor_payment_index.xhtml. From its sidebar you can also reach:
- Add Miscellaneous Staff Fee β see OPD Doctor Misc Fees and Reports.
- Miscellaneous Fee / Bill Reports β see the same article.
- Search Outstanding Professional Payments β listing of every unpaid bill fee, filterable by staff and date.
- List Completed Professional Payments β listing of paid professional payment bills.
Step 1 β Find due fees
At the top of the screen, set the filters:
| Filter | What it does |
|---|---|
| From / To | Date range. Only bill fees created within this window are considered. The calendar uses the long date-time format from the application preference. |
| MRN | Optional. Limits the result to bills issued to one patient's medical record number. |
| Speciality | Optional. Limits to staff whose speciality matches. |
| Professional | Optional. Limits to one doctor / staff member. If you leave it blank, fees for all doctors with unpaid amounts in the range are returned. |
Click Find Due Payments (orange). The grid below populates with one row per unpaid fee:
| Column | Content |
|---|---|
| Selection box | Tick to include this fee in this payment run. |
| Bill No | Department bill number of the source OPD bill. |
| Bill Time | Time the source bill was issued. |
| Patient | Patient name. |
| Item | Service or investigation line. |
| Description | Bill comment. |
| Charge Type | The fee type (Professional, Hospital, Misc, etc.). |
| Charge | The unpaid value for the fee line. |
The fees included come from these atomic bill types: OPD_BILL_WITH_PAYMENT, OPD_BILL_PAYMENT_COLLECTION_AT_CASHIER, PACKAGE_OPD_BILL_WITH_PAYMENT, CC_BILL, and MISCELLANEOUS_STAFF_FEE_BILL. Cancelled and refunded bills are excluded. If the configuration option "Remove Refunded Bill From OPD Staff Payment" is on, bill fees attached to a bill item that was later refunded are also excluded.
Click Download as Excel at any time to export the current grid to
Staff_Payment_Due_OPD.xlsx.
Step 2 β Select what to pay
Tick the checkbox at the start of each row you want to include in this payment run. The header checkbox toggles all visible rows. You can pay every fee for one doctor, or only the fees relevant to one patient, or any combination.
After selecting, scroll to the Payment Details panel below the grid. The right-hand sub-panel updates as you tick or untick.
Step 3 β Choose payment method and review the WHT
The Payment Details panel has two sides.
Left side β settings:
| Field | Notes |
|---|---|
| WHT Calculation | If the option "Allow User To Select Whether To Pay Withholding Tax During Professional Payments" is enabled, this is a dropdown with three modes: Depending On Payments, Include Withholding Tax, Exclude Withholding Tax. Otherwise it is a fixed badge showing the system-configured mode. See Withholding Tax on Professional Payments. |
| Payment Method | Cash, Cheque, Bank Transfer, etc. Credit methods are not offered for professional payments. |
| Total Payment Completed for this month | Read-only. Shows how much this professional has been paid this month at the current institute. The "Depending On Payments" WHT mode uses this number to decide whether WHT kicks in. |
| Withholding Cutoff | Read-only. The threshold above which WHT applies (default 100 000). |
| Withholding Percentage | Read-only. The percentage that will be withheld. |
Right side β totals (updates live as you change WHT Calculation):
| Field | Notes |
|---|---|
| Total Due | Total of every selected line. |
| Paying This time | What you will pay this run. Equals Total Due in the normal case. |
| Withholding Tax | Tax amount to be withheld. Zero if the WHT mode is Exclude or if you are below the cutoff in Depending-on-Payments mode. |
| Paying This time without WHT | The amount that will actually leave the cash drawer = Paying β WHT. |
Changing the WHT Calculation dropdown recalculates the totals instantly.
Step 4 β Settle
Click Settle Professional Payment in the panel header. A confirmation pops up ("Do you want to process this payment?"). On OK:
- A
PaymentBillof type Professional Payment for Staff for OPD Services is created with aPROPAYprefix. - The selected bill fees are linked to the payment bill and their
paidValueis updated. - The WHT amount, if any, is captured against the bill.
- The screen switches to print-preview mode (the Doctor/Staff Payment Voucher).
Step 5 β Print and continue
In print-preview:
- Print (blue) renders the voucher.
- New Payment (green) clears the screen and reloads the page so you can settle the next professional.
Searching past and outstanding payments
From the index sidebar:
- Search Outstanding Professional Payments β list bill fees still unpaid (filterable by staff and date). Useful for end-of-month reconciliation before opening the Pay screen.
- List Completed Professional Payments β list every payment bill already issued, with cancel and reprint actions on each row.
Limitations
- The grid lists every matching unpaid fee in the range. For doctors with many fees, the page can be slow to render; narrow the date range or pick a single Professional first.
- A payment bill cannot be partially cancelled β to back out an error, cancel the whole bill and rerun the payment.
- The MRN filter matches with
like '%mrn%', so a short MRN value can match more than one patient. Use the full MRN. - The total-paid-this-month value is computed at the current institute only; if a doctor works at multiple institutes, each location tracks its own running total independently for WHT purposes.