The Billing Black Box: What Happened When I Became the Patient

*This is a true story. It happened to me. Two months ago.*
I got a bill I didn’t understand. That’s not unusual in American healthcare. What is unusual is that I’m a physician — one who spent years working inside the very system that sent it. I know what CPT codes are. I know what revenue codes are. I know what facility fees are. I know the law.
I still couldn’t get a straight answer.
Here’s what happened.
—–
The Bill
In February, I was seen as an outpatient at a regional health system’s family medicine clinic. Established patient. OMT visit. Routine. I paid at checkout, received a point-of-service discount, and left. Transaction complete — or so I thought.
Three weeks later, a statement arrived marked **PAST DUE**. An additional $60.06 was owed, apparently, on top of what I’d already paid. No explanation. No CPT codes. No itemization. Just a number and a demand.
I did what any patient would do. I asked why.
—–
Enter Chad
Chad from Patient Financial Services was, I want to be clear, excellent. Patient, responsive, genuinely trying to help. What follows is not about Chad. Chad was the messenger for a system that had no good message to deliver.
Chad explained that the amount I paid at checkout was an *estimate* — and that the estimate didn’t match the final charges. The actual total came out to $473. After the self-pay adjustment and my checkout payment, $60.06 remained.
Estimate. That word stopped me.
I asked the obvious question: what CPT codes were billed?
Chad’s answer: *billing doesn’t receive the CPT codes.*
The billing department, it turned out, works from CDM line items — the hospital’s internal Charge Description Master, essentially a price list that exists independently of CPT codes. Patient-facing billing staff operate from this internal list. The CPT codes that actually drove the charges live in a separate silo, apparently invisible to the people answering patient questions.
—–
The Estimate That Was Never an Estimate
Let me explain why that word — *estimate* — is so revealing, and so wrong.
The system knew, before I walked through the door, that I was an established patient making an OMT appointment at a hospital-based clinic. That’s not an estimate. That’s a fact, documented at the time of scheduling. It narrows the billing universe to a handful of known codes:
– Three possible E&M codes: 99213, 99214, or 99215
– Five possible OMT codes: 98925 through 98929
Every single one of those codes has a published self-pay rate. The E&M complexity level? Determined and documented during the visit, before I reached the checkout desk. The number of OMT body regions treated? Same — documented before I left the room.
By the time I handed over my payment, every variable needed to generate an exact charge was already known. There was no remaining uncertainty. What they called an estimate was, in reality, a failure to complete the billing process before collecting payment.
That’s not a minor distinction. That’s the whole problem.
—–
The Double Standard
Here’s the part that should make every self-pay patient in America furious.
If this regional health system had submitted my bill to an insurance company — any insurance company — they would have been required to include the CPT codes. No CPT codes, no payment. That’s how the system works. Insurers contractually demand the coding transparency that I, as a self-pay patient, was told was simply unavailable.
So the uninsured patient standing at the checkout desk gets *less* information than a faceless corporate payer processing claims in a server room somewhere.
After three requests, I still never received the CPT codes.
Let that land.
—–
The Facility Fee Nobody Mentioned
When the itemized bill finally arrived, it confirmed exactly what I suspected. The $473 total broke down like this:
– **Revenue Code 510 — CLINIC: $164.00** — hospital facility fee, office visit
– **Revenue Code 530 — OSTEOPATHIC SERVICES: $69.00** — hospital facility fee, OMT
– **Revenue Code 960 — PROFESSIONAL FEES: $240.00** — physician fee
Nearly half the bill — $233 — was hospital facility fees. Fees I was never told about.
These fees exist because this clinic is hospital-owned. The building may look like a doctor’s office. The white coat looks the same. The exam table, the blood pressure cuff, the waiting room magazines — identical. But the moment a health system acquires a physician practice and designates it a hospital-based outpatient clinic, a facility fee attaches to every visit. Patients choosing between an independent physician’s office and a hospital-owned clinic are making a financial decision they don’t know they’re making.
The CMS Hospital Price Transparency Rule requires hospitals to publish all standard charges, including facility fees. The No Surprises Act requires self-pay patients to receive a good-faith estimate with applicable billing codes *before* services are rendered. Neither was met.
When I raised this, leadership’s response was boilerplate about estimates not being guarantees and charges varying based on insurance coverage. I don’t have insurance. That language was written for a different patient entirely.
—–
What a Regular Patient Is Supposed to Do
I am a physician. I have spent years practicing medicine, I understand billing and coding, and I know the relevant federal statutes by citation. I pushed — politely, precisely, and persistently — across multiple written exchanges.
After three requests, I still never received the CPT codes.
So I have to ask: what is an ordinary patient supposed to do with this? Someone without a medical background. Without knowledge of revenue codes, CDM line items, or the No Surprises Act. Someone who gets a PAST DUE notice and assumes they simply owe the money.
The answer, based on my experience, is nothing. They pay. Or they don’t, and it goes to collections. Either way, the system never has to explain itself.
—–
Was It Deliberate?
I want to be fair here — and precise, because this matters.
There are two possible explanations for what I experienced, and both are worth naming.
The first is that the opacity is intentional. Estimates instead of prices. CDM line items instead of CPT codes. Facility fees buried in the total. Insurance boilerplate applied to self-pay patients. None of this happens by accident in a system with compliance attorneys and billing consultants. If you wanted to design a process that discourages patients from asking questions, this is what it would look like.
The second explanation is systemic negligence — that nobody sat in a room and decided to deceive self-pay patients. It’s worse than that. Nobody thought about self-pay patients at all. The entire infrastructure was built around insurance adjudication. Self-pay patients are an afterthought, bolted on without the transparency scaffolding that insurers contractually demand.
Whether deliberate or negligent — the patient loses either way. And the patient still doesn’t know what they’re paying for.
—–
What DPC Actually Fixes
I want to be careful here, because I’ve written before about what DPC is and isn’t. DPC is a billing and access model. It doesn’t cure systemic healthcare dysfunction. It was never designed to.
But in my practice, when a patient walks in — established or new, OMT or office visit — they know what they’re paying before they arrive. There is no facility fee. There is no estimate. There is no Chad from billing trying to explain why the number changed after they left.
There is a monthly membership and a physician who picks up the phone. That’s it.
I didn’t build my practice because I had a grand vision for disrupting healthcare. I built it because I couldn’t tolerate the alternative. What happened to me as a patient this February reminded me, in the most personal possible way, why.
—–
A Final Note
Shortly after I sent my final letter to this health system — a letter that cited the No Surprises Act, HIPAA’s Right of Access provision, and the CMS Price Transparency Rule — a detailed investigative piece was published documenting the same health system’s ongoing financial crisis. Years of operating losses. A credit rating in freefall. Difficult questions about its future.
I don’t say that to pile on. I say it because the connection is worth sitting with.
A system that cannot tell a self-pay patient — in the simplest possible billing scenario — what CPT code was used for their visit, is a system with deeper problems than its balance sheet reflects. Billing opacity is not a side effect of financial distress. In some cases, it may be a cause.
Fix the black box. Start there.
Addendum: What the Black Box Finally Revealed
This addendum was added after the original piece was submitted to DPC News. The dispute has since been resolved. The findings are worth documenting.
Two months. Three formal requests for CPT codes. Multiple written exchanges with a billing representative who was, throughout, genuinely professional and persistent on my behalf. Multiple non-answers from leadership retreating to boilerplate about estimates and insurance variability.
And then, finally, an answer.
Here is what was in the black box.
The System Error Nobody Caught
The original estimate — the one that generated my checkout payment of $31.42 — was built on defective data.
The estimate included CPT 99214 (established patient office visit, moderate complexity) at a total charge of $459.00. The self-pay patient responsibility generated by the system for that line item: $0.00.
Not a reduced rate. Not a discount. Zero. The system simply failed to apply the standard self-pay/uninsured rate to the office visit component of my estimate. Nobody caught it. The estimate went out, I paid based on it, and weeks later a PAST DUE notice arrived for the difference — with no explanation of why.
That is not an estimate that varied due to clinical complexity or documentation nuance. That is a system error that resulted in a patient being under-collected at checkout, then balance-billed afterward, with no transparency about what had gone wrong or why.
The Downcode Nobody Mentioned
The visit was ultimately coded as CPT 99213 — one complexity level below the 99214 used to generate the estimate. The OMT was coded as CPT 98925 (1-2 body regions) rather than the 98926 (3-4 regions) on the estimate.
Both downcodes are, in isolation, unremarkable. Documentation drives coding, and coding drives complexity level. That’s how it works.
What is remarkable is that neither downcode was communicated to me at any point — not at checkout, not in the statement, not in the initial billing response, not in the leadership response. I learned about both for the first time in the final response that closed the account.
If the estimate was built on 99214 and the visit was ultimately coded as 99213, there is a straightforward question that follows: was the self-pay rate for 99213 applied to my checkout payment? The answer, based on the documented system error, is that no self-pay rate was applied to the office visit at all. I paid based on a number the system generated incorrectly, for a code that wasn’t the one ultimately used.
What the CPT Codes Finally Confirmed
Here is what was actually billed, provided for the first time after three requests and two months:
- CPT 99213 — Office Visit, Established, Level 3 — Facility Fee: $164.00
- CPT 99213 — Office Visit, Established, Level 3 — Professional Fee: $173.00
- CPT 98925 — OMT, 1-2 Body Regions — Professional Fee: $67.00
- CPT 98925 — OMT, 1-2 Body Regions — Facility Fee: $69.00
- Total: $473.00
Four line items. Two CPT codes. Every one of them with a published self-pay rate. Every one of them knowable — and known — before I left the building.
The facility fees — $164.00 and $69.00, totaling $233.00 — appear here for what they are: separate charges that existed from the moment I walked into a hospital-owned clinic, never disclosed at checkout, never mentioned in the initial statement, and identified only because I read the itemized bill carefully and knew what revenue codes 510 and 530 meant.
The Question That Still Stands
The financial matter is closed. The account balance is $0.00.
What is not closed is the question I asked in the original piece: what is an ordinary patient supposed to do with this?
A patient without a medical background would not have known to ask for CPT codes. Would not have known the difference between a CDM line item and a billing code. Would not have recognized revenue code 510 as a facility fee. Would not have known that the No Surprises Act entitled them to a good-faith cost estimate with billing codes before the visit. Would not have known that HIPAA gave them the right to their complete billing record within 30 days.
That patient would have paid the $60.06 when the PAST DUE notice arrived. Or they wouldn’t have, and it would have gone to collections.
Either way, the system never would have had to explain itself.
The black box, it turns out, contained a system error, two downcodes, $233 in undisclosed facility fees, and CPT codes that were available all along.
It just took a physician two months and three formal requests to get them.




