I’ve been doing some deep diving on the way payments are tracked versus the way they need to be used and reported on. I find the following to be the current state of this.
COPAYs are recorded as negative charges/fee in billing table (as code=COPAY)
Issues:
1 - If you use Fee-Sheet (Add COPAY Button) to add COPAY you can’t print a receipt for the patient
2 - ANY payment posted using payment popup is recorded as a code=COPAY regardless of what kind of payment
3 - Payment Popup assumes COPAY amount for ‘Today’ (if one is recorded) this can result in double posting if #1 was used or if they paid COPAY when the came in and paid for other things on the way out. You can of course blank it before print to prevent that, but potential for error is high.
4 -Payments posted via Fees->payments are recorded in ar_activity with other payments with account_code ‘PP’ (Patient Payment), This is way better from an accounting perspective, but you can’t print a receipt and it takes a lot of extra keystrokes to record the payment. Fine for payments received in the mail, but not front desk.
I’m thinking two things here.
1) ALL payments should be posted to ar_activity, not as negative charges in the billing table
2) We need a payment type for use in ar_activity for COPAY, maybe PC (patient copay)
On the surface moving the COPAY payment to ar_activity would seem easy, and even backwards compatible as the current accounting activities sum the fees from billing (picking up the neg COPAY “charges”) and the subtract the payments and adjustments from the ar_activity pages. However I worry that there might be special handling logic to deal with the COPAY posts in several reports.
There are over 74 files with the string “COPAY” or ‘COPAY’. Claim.class.php and some of the reports that list copay’s separately would need to be updated to find copay in the old and the new location
Another option is to leave COPAY where it is, but update payment popup to write the other payment amount to ar_activity as account_code ‘PP’. That would be easier but leaves the really bad accounting practice of having a payment recorded as a negative charge in the billing table.
Addendum: ar_activitity records require an encounter id to post against. This may be barrier unless an encounter has already been created for that day to post against. I suspect that posting a payment for a previous encounter should be left to the batch payment posting (fees->payment).
I haven’t thought this out, but maybe an encounter id = 0 could be used for ‘on account’ payments?
A fee is a fee, it does not change unless a mistake has been made in coding, posting to the wrong patient, etc. otherwise it is a set amount. That fee should be associated with a specific encounter ( or can be more than one encounter in the case of global fees as in a bundled surgical fee that includes all followup visits.)
There are payments and adjustments that must be associated with a distinct fee entry. Payments can be at the time of the visit, before the visit (prepay), or after the visit, so the encounter creation must allow that degree of flexibility.
Payments may come from patients or their responsible parties. Payments may come from a third party (insurance). One form of a patient payment is called a COPAY and can occur before, during, or after the visit. Like any patient payment, it reduces the amount owed, not the amount charged. It should be handled like any other patient payment; it is an insurance company creation and simply sets the amount of the patient’s obligation for that visit. What do you do if the copay obligation is $25 and they pay you $10?
Adjustments happen in 3 ways. 1) The amount owed is reduced because of a contract with an insurance company, 2) The amount owed is reduced in a direct contract with the patient ( such as a 50% discount for payment in advance), or 3) through a “write-off” after collection attempts are exhausted. Some practices track write-offs separately from other adjustments.
This is pretty basic accounting for USA medical practices using fee for service billing. I don’t know about other systems in other countries. OpenEMR will also need the ability to track capitated reimbursement where payments are made at intervals to cover certain populations, usually as a per member per month fee. This will likely become more common in our future.
This is the stuff databases are “good” at. It is surprising and disappointing that through the transition from FreeB, and SQL-ledger bookkeeping, that this is still kludgy. I believe that one or two vendors have made some changes to billing. Would those folks like to comment? Can it be fixed or is a rewrite in our future?
A fee is a fee. However, in the clinic I am working for the patient is often seen 2-3+ times per week and may run behind on payments of the copay. Some also pay in advance. The billing system does not have time to keep up with the balances so that the patient can find out at checkout how much they personally owe because the patient comes back often before billing and insurance payment has been completed for their last visit(s). Therefore I need to have a copay balance calculated separately from the insurance balance. Thanks
We have made some modifications that we were going to contribute shortly: hopefully this will alleviate a lot of the issues raised here.
The modifications that we are contributing are as follows:
• Front office receiving payments towards, current, previous or future(prepays) encounters.
• All copays will be moved to the ar_activity table moving forward without affecting the previous copays entered in the billing table.
• Change the code in the fee sheet for the copay to be posted to the ar_activity table.
Apart from the above there have been lots of request in the forums for allowing multiple primary insurances as opposed to having only one primary insurance. This code too is written and will be contributed shortly: hopefully before the year end.
I am attaching a video link for you to see how the payment at front office works. http://youtu.be/sKfdVlI44Bg
Ahoy Shameem,
I was watching the fine tutorial on posting payments and it looked to me like this: You entered an amount from the insurance check to be allocated to a specific invoice and the adjustment was automatically calculated. Then it appears that you went into the entry again and manually adjusted for the amount of the paid copay. Did I see that correctly? Should this also happen automatically?
Jack