Skip to content

Payer contracts & underpayments

Payer contracts & underpayments

Track what payers should pay, alert when they don’t. Lives at /admin/contracts and /admin/underpayments.

Payer contracts

/admin/contracts — one row per payer × contract version. Holds the contract’s fee schedule (CPT → expected payment) plus the effective date range and the contract document reference.

Upload a fee schedule CSV or paste the table; Pollen8 stores it as fee_schedules rows keyed on (contract_id, cpt_code, modifier).

Underpayment detection

When an ERA is ingested, every adjudicated service line is checked against the active fee schedule for the rendering payer + service date.

expected_paid = fee_schedule.lookup(payer, cpt, modifier)
actual_paid = era.line.paid_amount
if actual_paid < expected_paid - tolerance:
underpayment_alert.create(...)

Tolerance is configurable per tenant (default 1 cent — i.e., strict).

Alert worklist

/admin/underpayments — sorted by expected − actual descending so the biggest dollars surface first. Per-row actions:

  • Appeal: drafts a recoupment letter citing the contract clause + fee schedule line + payment discrepancy.
  • Accept variance: writes off the difference + logs the rationale for audit (e.g., “patient hit deductible”).
  • Mark contract stale: flags the fee schedule for re-upload.

Recoupment letter (AI)

Drafter pulls:

  • Contract + clause that establishes the rate.
  • Fee schedule row for the CPT.
  • ERA line items.
  • Service date + patient + claim id.

Letter ships to a configurable payer contact email or downloadable PDF. Persisted to the matter-equivalent for the underpayment campaign.

Why this works

Payers underpay through a combination of contract drift (your fee schedule changed but the payer hasn’t updated theirs), edit overreach (bundling rules applied where they shouldn’t), and bulk denials. Pollen8 surfaces the dollar amount Pollen8 is leaving on the table — typically 1-4% of total revenue for outpatient practices — and gives the biller a one-click appeal path.