← Back to Insights

Operations

How Do You Reconcile Medical Billing When Practice Software and Books Disagree?

Written by:Better SoftwareBetter Software TeamUpdated 16 min read
Three records of the same month side by side, the practice system flowing to the bank flowing to the general ledger, with one line missing in the ledger.

Quick Answer

Medical billing reconciliation takes three monthly tie-outs, postings in medical practice management software to each 835 remittance, each insurance electronic funds transfer (EFT) to its bank deposit by trace number, and system totals to the general ledger. The five systems reviewed offer at most a summary export, so adjustments, recoupments, card fees and patient credits drift. A one-page monthly bridge catches the gaps, and a custom layer pays off across locations.

Reconciliation means showing that two records of the same money say the same thing, and a medical practice has three records to square each month. At month end, your medical practice management software shows one collections number, the bank shows another, and QuickBooks shows a third.

We think most owners blame the billing team for this. In our view the gap usually sits between systems that were never tied together, not inside any one of them.

So we treat the month-end close as a data problem first.

In this blog we'll walk through the three tie-outs and why the numbers drift. Then we cover what your software already handles, the monthly bridge we build first, the chart of accounts it needs, and when a custom layer earns its cost.

This is an operations guide, not legal or accounting advice.

Medical Billing Reconciliation Is Three Tie-Outs, Not One Bank Match

Reconciliation for a medical practice means proving three matches every month. Posted payments must tie to remittances, remittances must tie to bank deposits, and the practice system's totals must tie to the general ledger. We run them in that order, because each one depends on the one before it.

The tempting shortcut is to compare total deposits to total charges. That comparison can never balance, because charges and cash differ by contractual adjustments, patient balances still open and payments that arrive next month.

1. Posted Payments to the 835 Remittance

The first tie-out checks that what your team posted equals what the payer said it paid. The payer's electronic remittance advice (ERA), the X12 835 file, lists every claim and adjustment behind one payment.

The Centers for Medicare & Medicaid Services (CMS) notes that one check or EFT covers all the claims on that remittance.

If the posted total for a remittance differs from the 835 total, the error is inside payment posting in medical billing, not at the bank. We fix it there before touching anything else.

2. The 835 Remittance to the Bank Deposit

The second tie-out matches each insurance EFT to its remittance. Nacha names the CCD+ entry as the healthcare EFT standard, an Automated Clearing House (ACH) credit with one addenda record.

The CAQH CORE rule expects the 835's reassociation trace number to travel in the CCD+ addenda so the two can be joined.

When that trace number arrives in your bank detail, matching is mechanical. When it is missing, someone matches by amount and date, which breaks the moment two payments share a total.

3. Practice System Totals to the General Ledger

The third tie-out proves that the month your practice system closed is the month your accountant booked. Payments, contractual adjustments, refunds and write-offs in the practice system should each land in a named general ledger account for the same period.

In our view this is the tie-out most likely to be skipped, because no single system owns it. It is also the one that surfaces in a practice sale, a partner buy-in or a line-of-credit renewal.

Pro tip: We always lock the practice system's period before exporting anything. Reconciling against a month that staff can still post into means chasing a number that moves while you check it.

Why Your Practice System, Bank and Books Drift Apart Every Month

The numbers drift because each record captures a different moment and a different level of detail. None of the three is wrong; each one is incomplete in a way the other two cannot see.

Rachel Barksdale, a healthcare finance writer, describes a surgical group whose revenue swung from $320,000 one month to $780,000 the next. Its billing software showed a 58% contractual write-off rate, and its general ledger had zero contra-revenue accounts to hold that number.

We plan for five drift sources. Each one needs its own line on the monthly reconciliation bridge.

• Timing Between the Remittance and the Deposit

The CAQH CORE EFT and ERA Reassociation rule lets a health plan release the 835 up to three business days before or after the EFT's effective entry date. The Department of Health and Human Services (HHS) adopted these operating rules with a compliance date of January 1, 2014.

So a remittance your team posts on the 30th can settle in the bank on the 2nd. That is not an error. It is a timing item, and it belongs on a list, not in a suspense account nobody reviews.

• Recoupments Netted Out of the Payment

A payer can take back an earlier overpayment by reducing today's payment. CMS explains that provider-level adjustments, such as interest and overpayment offsets, are reported separately from claim-level detail on the remittance.

Claim-level posting then shows more cash than the deposit holds. We give recoupments their own column so they never hide inside a "difference" line.

• Card Processor Fees on Patient Payments

Card processors can settle patient payments net of fees. Tebra's Payouts report, for example, shows gross amount, fees and net payout for each deposit.

If the practice system posts the gross payment and the bank receives the net, the fee is the difference. It belongs in an expense account, not in patient collections.

• Contractual Adjustments That Never Reach the Books

A contractual adjustment in medical billing is the gap between the billed charge and what the payer contract allows. The practice system records it on every claim, yet a ledger built on a small-business template may have no account for it at all, as in Barksdale's example.

When that happens, the profit and loss statement shows net cash as if it were revenue, and the adjustment rate by payer disappears from the books.

If you suspect a payer paid below contract, that is a separate question from reconciliation, and we cover it in what a payer actually pays you.

• Refunds and Patient Credits Booked Against Income

Refunds reduce revenue in the month they are paid if they are coded against income. Barksdale's piece argues that patient overpayments belong in a liability account until they are applied or refunded.

We agree with that treatment. It keeps credit balances visible on the balance sheet, where someone can see how long they have been open.

What Medical Practice Management Software Does for Reconciliation, and Where It Stops

In the medical practice management software we checked, the first tie-out is handled well and the third one poorly. Posting from 835 files is mature; producing journal entries your general ledger can accept by payer class and account is not.

We read the documentation of five common systems in September 2026. Here is what each one says it does, in the vendor's own terms.

System What its documentation says it does Where it stops for reconciliation
Tebra Auto-posts ERA payments, including denials, reversals, underpayments and overpayments, and recommends confirming the check or bank deposit before applying ERA payments We found no general ledger or QuickBooks integration in its help center
AdvancedMD A partner post on AdvancedMD's blog walks through running End of Day, exporting reports to Excel and entering them in QuickBooks by hand The same post says the standard Deposit Summary report is not enough and a custom deposits report costs extra
athenaOne Its service description describes automatic matching of card payments to deposits in the athenaMailbox account; cash and checks are deposited locally and recorded through Submit Remittance We found no general ledger export described in that document
eClinicalWorks Its financial integrations page describes mapping general ledger account codes and a general ledger extract for third-party financial systems The extract is a file; someone still imports and ties it out
NextGen Practice Management A third-party General Ledger Utility exports charge and transaction data to a text file for import into an accounting package It is an add-on file export, licensed separately

We want to be fair to these vendors. Each one does its core job, which is running the patient account and the claim. The accounting bridge was never their core job, and it shows.

In our view, month-end numbers are where systems that do not talk to each other show the damage first.

The industry data points the same way. A March 2026 Healthcare Financial Management Association (HFMA) survey sponsored by Wells Fargo of 241 respondents found only 3.5% had fully automated payment reconciliation. Payment posting and reconciliation to an electronic health record (EHR) ranked as the top challenge, named by 44.4%.

The Monthly Reconciliation Bridge We Build Before Anything Else

The bridge is one worksheet that starts from the practice system's month totals and explains, line by line, every dollar that does not match the bank or the general ledger. We build it before we recommend any software, because it shows where the real gaps sit.

It follows the same medical billing reconciliation process every month, in five steps. The whole thing should fit on one page.

1. Close the Month in the Practice System

Lock the posting period, then export four reports. Pull charges, payments by payer class, adjustments by type, and the accounts receivable aging at month end. Export them by posting date, not date of service, so they match what the bank and the books recorded.

If your system cannot lock a period, write down the export time. Any later posting becomes next month's reconciling item.

2. Roll Accounts Receivable Forward

Beginning accounts receivable, plus charges, minus payments, minus adjustments, should equal ending accounts receivable. We check this before anything leaves the practice system.

Say you run a hypothetical four-physician orthopedic practice. March opens with $412,000 in accounts receivable and adds $610,000 in charges. The system posts $236,500 in insurance payments, $41,200 in patient payments, $318,700 in contractual adjustments and $6,100 in other adjustments.

Ending accounts receivable should then be $419,500. If the aging report shows anything else, the practice system disagrees with itself, and no bank match will fix that.

3. Match Every EFT to Its Remittance by Trace Number

Pull the bank's detail for the month, including CCD+ addenda where your bank provides them. Join each deposit to its 835 by the reassociation trace number, then list anything unmatched.

In our hypothetical month, insurance deposits total $231,900 against $236,500 posted. The $4,600 gap breaks into a $3,100 EFT that settled on April 1 for a remittance posted March 30, and a $1,500 recoupment netted from a payment.

4. Tie Each Practice System Total to a General Ledger Account

Each total from step 1 should land in one named account. This is where the bridge earns its keep.

Bridge line Practice system Bank General ledger Difference Explained by
Insurance payments $236,500 $231,900 $231,900 $4,600 $3,100 timing (settled April 1), $1,500 recoupment
Patient payments $41,200 $39,950 $39,950 $1,250 Card processor fees netted from payouts
Contractual adjustments $318,700 Not applicable $0 $318,700 No contra-revenue account in the ledger
Patient credits Credit balances in the aging report Not applicable Booked against income Unknown No liability account for unapplied credits

The first two lines are explained differences; they close once each item is named. The last two are structural, and only a chart of accounts change fixes them.

5. Clear Every Difference Into a Named Exception

Every unexplained dollar goes onto an exception list with an owner and a due date. We use a short, fixed set of exception types so the list stays readable.

  • Timing. A remittance was posted in one month, and the deposit settled in the next.
  • Recoupment. A payment was reduced by an offset for an earlier claim.
  • Missing remittance. A deposit is in the bank with no 835 behind it.
  • Missing deposit. An 835 was posted with no matching deposit after three business days.
  • Fee. Processor fees were netted from patient payouts.
  • Mispost. An amount was posted to the wrong patient, payer or period.

We review that list every week, not only at month end. A missing deposit found on day five is a phone call; found in the next quarter, it becomes a write-off.

If you collect patient payment plans by ACH debit, returns can reopen a closed month too. We explain those windows in how Nacha's ACH return rules reopen a month.

Pro tip: Keep the "missing deposit" line separate from "timing." Once a deposit is more than three business days late against its remittance, it is no longer timing under the CAQH CORE window, and it needs a person.

Chart of Accounts Changes That Make Reconciliation Possible in QuickBooks

Reconciliation to the general ledger only works if the chart of accounts has a place for each number the practice system produces. The medical practice accounting failure Barksdale describes starts with a single income account holding everything.

A QuickBooks chart of accounts for a medical practice does not need to be complicated. In our view it needs three groups of accounts, each with a clear job in the monthly tie-out.

• Revenue and Contra-Revenue Accounts

Gross patient service revenue goes first, split by payer class if you want payer mix on the income statement. Contractual adjustment accounts sit directly below it as contra-revenue, so the contractual adjustment rate by payer class reads straight off the ledger.

Bad debt and administrative write-offs get their own accounts. We never let them share an account with the contractual adjustment, because they answer different questions.

• Clearing and Liability Accounts

An insurance clearing account holds remittances that are posted but not yet deposited. It should empty out within a few business days; anything that lingers is an exception.

A patient credits liability account holds overpayments waiting to be applied or refunded. That keeps refunds out of income and keeps old credit balances visible.

• Expense Accounts for Fees

Merchant fee expense takes the card processor fees netted from patient payouts. Without it, fees quietly shrink patient collections and the bridge never closes.

With those in place, the month-end journal entry is one summary entry per payer class. You do not duplicate patient-level detail in the books; the practice system stays the system of record for the account, and the ledger holds the totals.

We would rather set this up once, with the practice's accountant, than rebuild the ledger during diligence. Barksdale puts a rebuild at two to four weeks for most independent practices.

When a Spreadsheet Is Enough and When to Build a Reconciliation Layer

A spreadsheet is enough for reconciliation when one location runs one practice system into one bank account. A custom layer earns its cost once you have several locations, several systems or enough EFT volume that matching by hand eats days every month.

The cost of doing it by hand is real. The 2024 CAQH Index puts a medical provider's average labor cost at $5.67 per manual remittance advice against $2.95 electronic, with 89% of medical remittances already electronic.

Signal Spreadsheet bridge Practice system add-on or ledger import Custom reconciliation layer
Locations One Two to four, same system Five or more, or mixed systems after acquisitions
Practice systems One One, with a vendor ledger extract Two or more, or one without a usable export
Bank accounts One operating account A few, one per entity Several entities, lockbox and card processors
Time spent on month end A few hours One to two days Several days, with exceptions carried forward
What breaks first Nothing, if someone owns it Payer class mapping drift Trace-number matching and exception follow-up

We treat those thresholds as a starting point, not a rule. A single-location practice with three card processors and a lockbox can need the layer sooner than a five-location group on one clean system.

We built a custom application for Apex Dental Partners, covering reporting, payroll, time management and business operations across a group that has grown past 45 practices. Before it, reporting across locations was assembled by exporting from each practice.

In our view, that is the pattern to plan for in any multi-location group. Medical practice accounting software handles the ledger well; the layer that joins the practice system, the bank and the books is the part nobody sells.

Run One Month of the Reconciliation Bridge Before You Buy Anything

We would start with last month. Lock the period in your medical practice management software, roll accounts receivable forward, match each EFT to its 835 by trace number, and tie each total to a general ledger account.

Whatever will not tie tells you which fix comes next, posting, the chart of accounts, or the connection between systems. If it is the connection, Better Software builds that reconciliation layer with practice owners, on top of the systems they already run.

Frequently Asked Questions

What is another term for a contractual adjustment?

You will also see it called a contractual allowance or a contractual write-off, and we treat the three as one thing. All three names describe the gap between a practice's billed charge and the amount its payer contract allows. For reconciliation, we care less about the name than about booking it to its own account.

What is a contractual adjustment in Medicare billing?

On a Medicare remittance, we look for contractual adjustments under group code CO, Contractual Obligation, which CMS says assigns responsibility to the provider. CMS allows billing the beneficiary only for amounts under group code PR, so during reconciliation a CO amount never belongs on a patient statement.

What are the two main methods of accounting?

We'd name cash basis and accrual basis. Cash basis records revenue when money arrives, and accrual basis records it when the service is performed. A practice on cash-basis books holds no accounts receivable in its ledger, so reconciliation against the practice system has to bridge that difference.

What are the different types of payment posting?

We group payment posting into manual posting, where staff key payments from paper explanation of benefits (EOB) forms, checks and payer portals, and electronic posting, where the system reads 835 files. Front desk, portal and lockbox payments are posted too. We tag each batch by type, because each feeds reconciliation differently.

What is the payment posting process in medical billing?

As we describe it, the process runs in five moves. Receive the remittance, match it to the claim, apply payments and adjustments to each service line, move any remaining balance to the patient or a secondary payer, and route denials to follow-up. Reconciliation then checks those posted totals against the bank.

About the author

Better Software

Better Software Team

Product and engineering team

Better Software Team is the product and engineering team at Better Software. We build custom software for established businesses in healthcare, energy and finance.