> ## 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.

# Practice Management Credentialing

> Track provider enrollment status with payers and monitor upcoming re-credentialing deadlines.

The Credentialing page (`/pm/credentialing`) manages provider enrollments with payers and surfaces upcoming re-credentialing deadlines in a tabbed list view.

## Overview

The Credentialing page renders two tabs: **Enrollments** and **Deadlines**. The **Enrollments** tab lists all non-deleted provider enrollment records from `pm_provider_enrollments`, joined to `pm_payers` for the payer name, ordered by `created_at` descending. Each row shows payer name, enrollment status badge (Pending, Enrolled, Denied, Inactive), NPI, taxonomy code, and effective date. Clicking a row navigates to the enrollment detail page at `/pm/credentialing/enrollments/:enrollmentId`. The **Deadlines** tab lists enrolled providers whose `recert_due_on` date falls within the configured lead-days window (default 90 days), ordered ascending by deadline. Deadlines within 14 days display a destructive (red) badge; others display an outline badge with days remaining.

## Who it's for

Requires permission `pm.admin` (`PM_PERMISSIONS.ADMIN`).

The `PermissionGate` around the page content uses `pm.credentialing.view`, and the create/delete actions gate on `pm.credentialing.manage`.

## Before you start

* You must hold `pm.admin` (route guard) and `pm.credentialing.view` (page-level gate).
* At least one payer must be configured before an enrollment can be associated.

## Steps

<Steps>
  <Step title="Open Credentialing">
    Navigate to `/pm/credentialing`. The **Enrollments** tab loads by default.
  </Step>

  <Step title="Search and filter enrollments">
    Type an NPI, billing NPI, or taxonomy code in the search box to filter the list. Use the **All Statuses** dropdown to narrow by enrollment status (`Pending`, `Enrolled`, `Denied`, `Inactive`).
  </Step>

  <Step title="Open an enrollment record">
    Click any enrollment card to navigate to `/pm/credentialing/enrollments/:enrollmentId` for the full detail view.
  </Step>

  <Step title="Add an enrollment (manage permission required)">
    Click **Add Enrollment** in the page header. The `ProviderEnrollmentFormDialog` opens. Complete the form and save.
  </Step>

  <Step title="Archive an enrollment (manage permission required)">
    Click the trash icon on an enrollment card. A confirmation dialog appears: "Archive Enrollment — This enrollment will be soft-deleted. Existing claims are not affected." Confirm to soft-delete.
  </Step>

  <Step title="Review deadlines">
    Click the **Deadlines** tab. The badge on the tab shows the count of upcoming deadline records. Each card shows the payer name and the `recert_due_on` date. Records due within 14 days show a red "Xd remaining" badge; overdue records show "Overdue."
  </Step>
</Steps>

## Key concepts

<AccordionGroup>
  <Accordion title="Enrollment statuses">
    Four statuses exist: `enrolled` (default/filled badge), `pending` (outline badge), `inactive` (secondary/muted badge), `denied` (destructive/red badge).
  </Accordion>

  <Accordion title="Re-credentialing deadline window">
    The deadline alert lead time is controlled by `recred_alert_lead_days` from PM module settings (default: 90 days). Only `enrolled` providers with a non-null `recert_due_on` within that window appear on the Deadlines tab.
  </Accordion>

  <Accordion title="Empty states">
    Enrollments tab (no records): "No provider enrollments — Add provider enrollments to track credentialing status with payers." Enrollments tab (no filter match): "No enrollments match the current filters." Deadlines tab (none due): "No upcoming deadlines — All enrolled providers are current on their re-credentialing."
  </Accordion>
</AccordionGroup>

## Related

<Columns cols={2}>
  <Card title="Practice Management" icon="briefcase" href="/pm/overview">
    Overview of the Practice Management core.
  </Card>

  <Card title="Governance & parity" icon="scale-balanced" href="/governance/index">
    Documentation coverage and governance.
  </Card>
</Columns>

<Note>
  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.
</Note>

<Accordion title="Documentation sources">
  * src/routes/pm.tsx
  * src/cores/pm/pages/ProviderEnrollmentListPage.tsx
  * src/cores/pm/hooks/useProviderEnrollmentList.ts
  * src/cores/pm/hooks/useRecredentialingDeadlines.ts
  * src/platform/permissions/constants.ts
</Accordion>
