Skip to main content

Overview

The Claims Management module (PM-08) enables billing staff to generate CMS-1500 (837P) and UB-04 (837I) claims from approved charges, validate them through pre-submission scrubbing, manage the claim lifecycle, and track denials with CARC/RARC codes. Access: Navigate to Practice Management → Claims in the sidebar.
Permission: pm.claims.view (view), pm.claims.create (generate), pm.claims.submit (submit to payer).

Generating Claims from Charges

  1. Navigate to /pm/claims and click Generate Claims.
  2. The dialog displays all approved charges that are not yet linked to a claim.
  3. Select charges to include — they are automatically grouped by patient.
  4. Provide the Billing Provider NPI and select the Payer.
  5. Click Generate to create draft claims with linked claim lines.
Each charge maps to one claim line. The charge status transitions to billed and the claim_id foreign key is set.

Claim Scrubbing

Before submission, claims go through pre-submission validation: Click Run Scrub on the claim detail page to validate. Claims with errors cannot be submitted.

Claim Lifecycle

Use the Status Menu on the claim detail page to transition between valid states.

Filing Deadline Tracking

AHCCCS requires claims within 365 days of the date of service. The filing deadline is automatically calculated from the earliest service date on the claim. Visual indicators on the claim list:
  • 🟡 Amber — fewer than 30 days remaining
  • 🔴 Red — deadline expired
Expired claims are flagged during scrubbing and cannot be submitted without override.

Managing Denials (CARC/RARC)

When a claim is denied, denial codes are stored using industry-standard CARC (Claim Adjustment Reason Codes) and RARC (Remittance Advice Remark Codes). Group codes: Denial codes are visible on the claim detail page. Add notes with type “Denial” or “Appeal” to document follow-up actions.

Secondary/Tertiary Claims

After the primary payer adjudicates, create a secondary claim:
  1. From the paid/denied claim, use Generate Secondary (frequency code 1).
  2. The secondary claim references the original via original_claim_id.
  3. Submit to the secondary payer with the primary’s EOB data.
AHCCCS (Medicaid) is always the payer of last resort.

Void/Replacement Claims

To void a submitted claim, transition status to void and set frequency code 8. For replacement, create a new claim with frequency code 7 referencing the original.

Claim Detail Page

The claim detail page (/pm/claims/:claimId) provides:
  • Header: Claim number, status badge, patient, payer, dates, total charge
  • Lines Tab: CPT codes, modifiers, units, amounts, charge links
  • Scrub Results Tab: Run on-demand scrubbing, view errors/warnings
  • Notes Tab: Chronological notes (scrub errors, denials, appeals, corrections)

Permissions


Integration with PM-07 (Charges)

  • Claims are generated from approved charges (status = 'approved', claim_id IS NULL)
  • Each claim line stores charge_id linking back to the source charge
  • When a claim is generated, linked charges transition to billed status
  • Charges linked to a claim cannot be voided without first voiding the claim

Future: PM-15 Clearinghouse Integration

Currently, “Submit” transitions the claim status but does not transmit to a clearinghouse. When PM-15 is implemented:
  • Submission will generate 837P/837I X12 transactions
  • The clearinghouse_trace_id will be populated
  • Status polling will auto-update claims based on 277CA responses
  • ERA (835) processing will auto-post payments via PM-09