Skip to main content
Home Docs Fee Schedule Engine

Fee Schedule Engine

Ingest any fee schedule. Price any claim line. Audit every decision.

CHO’s fee schedule pipeline separates the update path from the claim-time pricing path. Fee schedules are loaded, validated, versioned, and stored independently. At claim time, the pricing engine resolves the correct schedule, applies modifier logic, and returns an allowed amount with full audit trail — in sub-millisecond time from Redis hot cache.

Fee Schedule Engine flow diagram showing the update pipeline from ingestion through versioning to the fee schedule repository, and the claim-time pricing path from 837 claim line through resolution, modifier logic, and allowed amount output
Fee schedule pipeline — update path (ingestion, validation, versioning) and claim-time pricing path (resolution, modifier logic, allowed amount)

Fee Schedule Sources

The platform supports five source types, each with its own ingestion format and update cadence.

CMS MPFS (Medicare Physician Fee Schedule)

  • Annual release (January) with quarterly updates
  • RBRVS-based: Work RVU + Practice Expense RVU + Malpractice RVU × Conversion Factor
  • Geographic Practice Cost Index (GPCI) adjustments per locality
  • CHO auto-ingests CMS flat files on release

CMS OPPS / ASC (Outpatient Prospective Payment)

  • APC-based rates with status indicators
  • Annual update with mid-year corrections
  • Facility vs non-facility differential

TX Medicaid Fee Schedules

  • HHSC / TMHP published rates
  • STAR, STAR+PLUS, CHIP program-specific schedules
  • Rate notices and mid-cycle adjustments
  • Critical for any Texas managed care organization

Contracted Provider Rates

  • Per-diem, case rate, percentage of Medicare, UCR
  • Loaded per provider agreement with effective/term dates
  • Network tier awareness (in-network, out-of-network, tier 1/2/3)

Portal Manual Upload

  • Blazor portal interface for CSV/Excel upload
  • Custom plan-specific schedules
  • Validation and preview before activation

Update Pipeline

The update pipeline moves fee schedule data through three stages before it is available for claim-time pricing.

1. Ingestion & Validation (FeeScheduleLoaderService)

  • Format auto-detection (CMS flat file, CSV, Excel, FHIR)
  • Schema validation against expected structure
  • CPT/HCPCS code verification against TerminologyService
  • Duplicate detection — prevent double-loading
  • Rejected loads generate detailed error reports

2. Versioning & Effective Dating (FeeScheduleVersionStore)

  • Every load creates an immutable version (e.g., v2026.Q1 → v2026.Q2)
  • Future-dated schedules auto-activate on effective date
  • No destructive updates — old versions retained indefinitely
  • Rollback to any prior version without data loss
  • Full audit trail: who loaded, when, what changed

3. Fee Schedule Repository

Index DimensionPurpose
Line of BusinessIsolate Medicare, Medicaid, Commercial schedules
Provider TypeFacility vs professional rate differentiation
Place of ServiceOffice, outpatient hospital, ASC, etc.
ModifierComponent-specific rates (26, TC, etc.)
Procedure CodeCPT/HCPCS code lookup
NetworkIn-network, out-of-network, tiered
ContractProvider-specific negotiated rates
Geographic RegionGPCI locality, state, ZIP-based

MongoDB serves as the primary store with Redis hot cache. Cache warming occurs on version activation. Multi-tenant isolation ensures each health plan has its own schedule sets.

Claim-Time Pricing

When an 837 claim line arrives for adjudication, the pricing engine resolves the allowed amount through a defined resolution order, applies modifier and reduction logic, and returns a fully auditable result.

Resolution Order

  1. Contracted rate — Exact match on provider + procedure + network
  2. LOB-specific fee schedule — e.g., TX Medicaid STAR rate
  3. Medicare MPFS fallback — Default floor

Pricing Logic

RuleDescription
Modifier application–26 (professional), –TC (technical), –59 (distinct procedure), etc.
Multiple procedure reduction (MPPR)Per CMS rules — highest-valued at 100%, subsequent at 50%/25%
Geographic GPCI adjustmentWork, PE, and MP GPCI components per provider locality
Bilateral procedure rules150% of single rate for modifier 50
Assistant surgeon reduction16% of primary surgeon allowed amount (modifiers 80, 81, 82)
Anesthesia pricingBase units + time units × conversion factor

Output

Each pricing call returns:

  • Allowed amount per claim line
  • Fee schedule ID + version used for the determination
  • Pricing methodology applied (contracted, LOB schedule, Medicare fallback)
  • Full audit reference for downstream review
  • Sub-millisecond response from Redis hot cache

Engine Interactions

The fee schedule engine is one step in the claims adjudication pipeline. Each engine is a separate class library invoked by the claims-service orchestrator in this sequence:

OrderEngineRole
1Claims ScrubEdit checks, clean claim validation
2NCCI EngineUnbundling — must run before pricing
3Fee Schedule EnginePrice the claim line
4COB EnginePrimary/secondary payer split
5Benefit EngineCopay, coinsurance, covered amount
6AccumulatorsDeductible application, OOP tracking
NCCI before pricing

The NCCI Engine must run before the Fee Schedule Engine because unbundling edits can remove or modify claim lines. Pricing a line that will be denied by NCCI wastes compute and produces misleading audit data. The orchestrator enforces this ordering.

Operating Mode Behavior

The fee schedule engine operates differently depending on the platform’s configured operating mode for the line of business.

Augment Mode

CHO prices the claim independently and passes the allowed amount to QNXT. Can be used as a validation/override check against QNXT’s native pricing, or as the authoritative price if QNXT pricing is disabled for the line of business.

Replace Mode

CHO pricing IS the adjudication price. The allowed amount flows directly into CHO’s claim record as the system-of-record determination.

Per-engine mode toggle

Operating mode is configurable per engine, per line of business. A health plan can run fee schedule pricing in Replace mode while keeping other engines (e.g., eligibility) in Augment mode. See the Architecture page for the full platform operating mode design.