MDClarity · Pricing engine inventory

What the pricing rules actually are

The legacy engine prices a charge by running an ordered program of typed calculations. There are 45 types, a gating layer with two competing mechanisms, and an escape hatch into raw T-SQL that a third of all fee logics reach for. This is what is in there, and where the weight sits.

45
calculation types
1,612
fee logics
30,052
calculations
268
distinct SQL bodies
33
customers

Foundations · 01

The shape of a rule

A FeeLogic is the unit of configuration: an ordered program that turns charges into an allowed amount. Everything else is a layer inside it.

1 · Resolution

Contract maps bind the fee logic to a facility × insurance × bill type × date rangetuple. At most one fee logic may match.

2 · Base calculations

Ordered. First match wins per charge — they do not sum. A fee logic with eleven base calcs is a waterfall with a fallback, not an accumulation.

3 · Adjustments

Ordered, and these do compose — each reads the running amount left by the one before it.

4 · Sequestration

Never appears in the config. Triggered by a boolean on the fee logic, applied after benefits aggregation — and it loops back.

Where it loops

Sequestration is not a downstream step. The benefits aggregator computes each charge's patient/insurance split; sequestration reads that split to derive a patient ratio, shrinks the allowed amount, then re-runs the aggregator over the shrunk numbers. Anything that prices in one shot will not match legacy on Medicare-based charges.

Inventory · 02

Which types each customer uses

Every customer against every calculation type that appears in production. Cell shading is log-scaled; blank means the customer does not use that type at all. Rows link to the customer's contracts, columns to the type.

CustomerModifierAdjPctOfFeesLesserOfAdjMedMultProcedureAdjMedMultRadiologyAdjMidLevelProviderAdjMedMultEndoscopyAdjMedRVUFlatPctOfChgsFlatFeeChgLevelSqlAdjMedDrugSqlExpressionMedBilateralSurgeryAdjMedLabMedDMEMultProcedureAdjMedMultTherapyAdjCalcBuilderMedAnesthesiaMedASCMultEndoscopyAdjPctageAdjMultSurgeryAdjCaseRateFlatPctageAdjMedMultOphthalmologyAdjMedMultSurgeryAdjPctOfChgsExcludedChgAdjMultRadiologyAdjBilateralSurgeryV2AdjMedOPPSCapAdjMultPhysiotherapyAdjNotToExceedAmountAdjBCBSMultTherapyAdjBilateralSurgeryAdj
ECP24831791881861881881881081122351881233184716916353184951
OneGI1755293150152149145883751611324014145373716681012
SGP196415614014014013714011833152731063545834512
MNEye8032331274119141659296715199141427181835374426
OrthoAlliance1191211979244279317410755273151727721991854254241
RIA134523010410396103126404173166870155371510
Commonwealth1005155777777597716121524840211613264626
EyeSouth15412951555515183515281515602051117
ARSA296434141412219421924119194121
Femwell8613820411416220022657561
EugeneGI4130139
PAA439
StrideCare4853536373733376336262366231
HeatonEye486413728352828171611318131391099159
USDH49564383738373858243817171519
PrecisionHealth330303130303030331030302913030292
TFOC32512529241032928184
JewishBoard22014162716111633163121633
MiddletownMedical576028332268436212022528231911216
SeaRad102721461362143833
ISpine245422529224117131622621106191352
TheOregonClinic3462424242431423112411833112
USHP2631323232323238272216623888111
MannEye2081716161616161
SouthSoundRadiology160251381311236321713116131
CCP6161313671
NWDerm10461278988581886
HillsboroEye1326121212111232111212101211911
Monarch1431111111111111111
SWOrofacial10420888811114118
SunLife10411
PPRM21
Wildflower2

Reading a row gives a customer's whole methodology mix; reading a column shows how widely a methodology is adopted. The customer table adds the blockers.

Caveats · 03

Dead config — filter it out before you count anything

Three classes of configuration exist in the data but can never take effect. All three are invisible in the source XML; a dead entry and a live one look identical.

MeasureCountNote
fee logics1,612
unreachable (no contract map)259excluded from analysis by is_reachable
of those, map exists but selects nothing76empty insurance/billtype/facility
of those, scenario models28expected to be unreachable
SupersededBy edges1,733
forward refs (never fire)233dead config
dangling (no such calc)0dead config
contract map overlaps (facility-expanded)1,961onboarding blockers
distinct fee-logic pairs30
customers affected9