The ERA Reconciliation page (Documentation Index
Fetch the complete documentation index at: https://docs.encoreos.io/llms.txt
Use this file to discover all available pages before exploring further.
/pm/era-reconciliation) is the underpayment work queue where billing staff compare electronic remittance advice payments against contracted rates and take action on variances.
Overview
The ERA Reconciliation page reads paginated records frompm_era_reconciliation_results (25 rows per page, server-side), scoped to the current organization and excluding soft-deleted records. A filter bar is visible by default and supports filtering by payer, reconciliation status, date of service range, CPT code, and variance amount range. The data table columns are: Select (checkbox), Claim ID (clickable link to detail sheet), CPT, Payer, Variance (color-coded by severity), DOS, Status, and Actions.
Variance amounts are color-coded: destructive for high-severity variances, warning for moderate, and unstyled for low. A detail sheet (ReconciliationDetailSheet) opens from the Claim ID link. An appeal confirmation dialog (AppealConfirmationDialog) supports both single and bulk appeal creation with an optional note.
Users with pm.era_recon.manage can bulk-mark rows as reviewed or accepted. Users with pm.era_recon.appeal can initiate appeals on underpaid rows.
Who it’s for
Requires permission:PM_PERMISSIONS.ERA_RECON_VIEW (pm.era_recon.view).
Bulk status management requires PM_PERMISSIONS.ERA_RECON_MANAGE. Creating appeals requires PM_PERMISSIONS.ERA_RECON_APPEAL.
Before you start
- Ensure you have the
pm.era_recon.viewpermission. - Reconciliation results are populated upstream by the ERA processing pipeline; no manual creation is available on this page.
Steps
Open ERA Reconciliation
Navigate to
/pm/era-reconciliation. The filter bar is visible by default and the first page of results loads automatically.Apply filters
Use the
ReconciliationFilterBar to filter by payer (populated from the active payer list), status, date of service range, CPT code, or variance amount range. Changing any filter resets the page to 0.Review a reconciliation record
Click the linked Claim ID in a table row to open the
ReconciliationDetailSheet on the right with full record details.Appeal an underpaid result (single)
In the Actions column, click the appeal icon (gavel) on a row with status
underpaid (requires pm.era_recon.appeal). Enter an optional note in the AppealConfirmationDialog and confirm.Bulk appeal selected results
Check one or more rows using the row checkboxes. The bulk actions toolbar appears. Click Appeal Selected (requires
pm.era_recon.appeal), add an optional note, and confirm to create appeals for all selected rows.Bulk mark as reviewed or accepted
With rows selected, click Mark Reviewed or Mark Accepted (requires
pm.era_recon.manage) to bulk-update the reconciliation_status for all selected records.Key concepts
Reconciliation statuses:pending, matched, underpaid, overpaid, no_contract, reviewed, appealed, accepted.
Variance: The difference between the contracted expected payment and the actual payment. High variance severity is shown in a destructive color; moderate in a warning color.
CPT code filter: Uses a case-insensitive partial match (ilike) on the cpt_code field.
Empty state
Empty state
When no records match the current filters: “No underpayments detected — All ERA payments match contracted rates.”
Error state
Error state
If the data query fails: “Unable to load reconciliation data. Please try again.”
Related
Practice Management
Overview of the Practice Management core.
Governance & parity
Documentation coverage and governance.
This page documents shipped product behavior. It is not medical, legal, or
billing advice. Verify against your organization’s policies and applicable
regulations before using it for clinical, compliance, or billing decisions.
Protected health information (PHI) shown in the product is governed by your
tenant’s access controls and is never exposed in this documentation.
Documentation sources
Documentation sources
- src/routes/pm.tsx
- src/cores/pm/pages/EraReconciliationPage.tsx
- src/cores/pm/hooks/useReconciliationResults.ts
- src/cores/pm/hooks/usePayerList.ts