# Review your Reports
Source: https://docs.athelas.com/air_admin/analyze_your_reports/all_reports
Run reports on your practice in one comprehensive bundle. Each report can be easily downloaded as a CSV and edited in a spreadsheet at any time.
For a concise overview of the My Reports page (tabs, report history, and emailed exports), see [My Reports](/air_admin/analyze_your_reports/my_reports).
### **Ask Athelas AI for quick statistics and reports**
✨**Smart Tip:** Use Athelas AI to generate quick reports and surface key statistics instantly. You can also use Voice Mode.
### **Download detailed reports**
Access reports by clickin on the Reports Tab within Insights on the left navigation bar. EHR focused reports can be found in the bottom-right section of the Reports page.
**Detailed Information:** Click the **?** icon next to any report to see more details about that specific report.
**Download a Report:**
1. Click the **download** icon to the right of a report.
2. Choose the **Start** and **End Dates** (e.g., the past two weeks).
3. Filter by **Facility** or **Provider** if required.
4. Click **Download** to export the report as a CSV.
Looking at this from the **Insights** tab instead? See [Building and Running Reports](/insights_biller/reports/building_and_running_reports) for the full report catalog (Claims, Revenue, Miscellaneous, and Performance Management categories) and a worked download example.
# AIR Audit Dashboard
Source: https://docs.athelas.com/air_admin/analyze_your_reports/audit_dashboard
The Audit Dashboard is a centralized, AI-powered compliance and documentation quality system designed to support Medicare audits and broader payer requirements across specialties.
It supports both pre-submission and post-submission audits, so your team can catch issues before notes are signed and continuously monitor quality after submission.
This feature is enabled in OPS with the `scribe_audit` feature flag and is included for all AIR users.
## Overview
The Audit Dashboard is built to:
* Standardize compliance across providers and locations
* Support audit readiness for Medicare and commercial payers
* Provide objective, consistent scoring of documentation
* Enable continuous improvement through actionable feedback
As additional specialties are supported, the system expands with auditor-designed templates tailored to each specialty's compliance requirements.
## Why Use the Audit Dashboard?
Documentation is directly tied to:
* Revenue
* Compliance
* Audit defensibility
* Operational performance
Without a standardized system, organizations often rely on manual audits, subjective feedback, and inconsistent enforcement of requirements.
The Audit Dashboard addresses this with consistent, AI-driven evaluation across all notes, helping documentation reflect care accurately and meet required standards at scale.
* **Medicare Compliance Support**: Built-in compliance logic aligned with Medicare requirements, with flexibility for site-specific customization
* **Pre- and Post-Submission Audits**: Catch issues before signing and analyze performance after submission
* **Objective, Standardized Scoring**: Remove subjectivity and improve consistency across providers
* **Full Visibility Across the Organization**: Track performance at system, provider, and note level
* **Actionable Feedback for Improvement**: Identify strengths, gaps, and specific areas for correction
* **Customizable Compliance Framework**: Add organization-specific rules and requirements
* **Scalable Across Specialties**: Supports physical therapy today and expands with tailored templates
* **Reduced Manual Audit Burden**: Replace periodic manual reviews with continuous monitoring
## How to Access the Audit Dashboard
Access depends on your site's AIR and OPS configuration:
1. Confirm the `scribe_audit` feature flag is enabled in OPS.
2. Open the AIR Audit Dashboard in your AIR environment.
3. Use date-range and provider-level views to begin reviewing compliance performance.
If access is not visible, contact your internal AIR administrator.
## Adding Custom Questions
The dashboard includes pre-configured Medicare compliance questions, and you can define additional organization-specific requirements.
### How to add a custom question
1. Go to **Audit Questions** in the Admin Panel.
2. Select a note type (for example, Initial Evaluation or Progress Note).
3. Click the pencil icon.
4. Select **Add Question**.
5. Enter the requirement (for example, "Ensure height and weight are recorded").
6. Assign an importance level.
7. Define where the AI should evaluate it (Subjective, Objective, Assessment, or Plan).
8. Optionally link the question to other appointment types via the three-dot menu and **Link to Other Appointments**.
### Video walkthrough (Custom Questions)
[Compressed walkthrough video (under 4 MB)](/images/air_admin/analyze_your_reports/audit_dashboard/custom_questions_video_under_4mb.mp4)
### Why custom questions matter
Custom questions help organizations:
* Enforce internal documentation standards
* Meet contractual or payer-specific requirements
* Align documentation with clinical workflows
* Support strategic initiatives and quality programs
Each question is weighted by importance and directly impacts scoring and compliance. `Must Pass` rules act as hard stops to ensure critical documentation elements are not missed.
## How to Use the Audit Dashboard
The dashboard provides a system-wide view of documentation performance, enabling real-time tracking of compliance and quality across your organization.
### Key metrics and views
* Total audited notes
* Average score and grade
* Fail rate
* Performance trends over time
* Time views: Daily, 7-day, 30-day, and 90-day (episode-of-care level)
Trend visualizations help teams identify improvements, declines in quality, and the impact of coaching or operational changes.
### Common use cases
* **Quarterly compliance reviews**: Replace manual audit cycles with continuous, real-time data
* **Operational oversight**: Monitor documentation quality across the organization
* **Performance tracking**: Evaluate trends over time and by provider
* **Compliance readiness**: Ensure documentation supports billing, audits, and payer requirements
### Provider-level review
You can break down performance by provider and review:
* Number of audited notes
* Average score and grade
* Failed reviews
* Failure rate
Typical workflow:
1. Select a provider.
2. Review performance metrics.
3. Identify trends and gaps.
This supports targeted coaching, performance management, and structured improvement plans.
### Note-level review
Each audit can be reviewed at the note level, including:
* Full documentation
* Audit score and grade
* Strengths
* Areas for improvement
* Failure reasons (if applicable)
* Evaluation timestamp
For failed reviews, the dashboard highlights why the note failed and which requirements were missed, making it easier to identify systemic issues and provide direct feedback.
## AI Chart Review Perspectives
### Medicare Auditor Perspective
From a Medicare audit standpoint, documentation must clearly support medical necessity, skilled services, and regulatory compliance.
AI Chart Review ensures each note is evaluated against standardized Medicare criteria to reduce variability and risk.
**What this provides:**
* Consistent application of Medicare compliance rules
* Verification that documentation supports billed services
* Identification of missing audit-required elements
* Clear pass/fail signals aligned with audit expectations
### Practice Owner Perspective
From a practice owner's perspective, documentation quality affects revenue, compliance risk, and performance.
AI Chart Review provides visibility into documentation quality and improvement opportunities.
**What this provides:**
* System-wide visibility into compliance and quality
* Insight into revenue risk from poor documentation
* Provider-level performance tracking and trends
* Reduced manual audit burden
* Tools for targeted coaching and improvement
### Provider Perspective
From a provider's perspective, documentation can be complex and inconsistent.
AI Chart Review provides real-time feedback to improve accuracy and compliance.
**What this provides:**
* Immediate feedback on strengths and gaps
* Clear expectations for compliant documentation
* Reduced guesswork and subjective feedback
* Ability to correct issues pre- or post-submission
* Ongoing support for improvement
## Workflow Integration and Summary
The Audit Dashboard integrates with existing workflows by enhancing visibility across documentation and providing continuous, automated audit coverage without replacing current systems.
Instead of periodic manual reviews, teams gain ongoing, data-driven control over documentation quality.
**What this enables:**
* Real-time visibility into documentation performance
* Standardized, objective evaluation across providers
* Actionable insights for training and improvement
* Scalable compliance support across specialties
Overall, the Audit Dashboard helps transform compliance from a reactive process into a proactive system.
# Building a Report
Source: https://docs.athelas.com/air_admin/analyze_your_reports/building_a_report
Every report in [**EHR Reports**](/air_admin/analyze_your_reports/ehr_reports) is built the same way: pick a report category, choose the metrics you want as columns, decide how rows are grouped, narrow the data with filters, set a date range, and run it. This page covers that workflow, plus saving, drilling down, and exporting.
## Build and run a report
**To configure and run a report:**
1. **Select a report category.** In the configuration panel on the right, open the **Report Categories** dropdown and choose a category, such as **Growth Engine**, **Retention Engine**, or **Efficiency Engine**.
2. **Choose your key metrics.** The **Key Metrics** dropdown stays disabled and reads **Select categories first** until a category is selected. Once it is active, open it and check one or more metrics. You can type in the search box to find a metric by name.
3. **Set data grouping.** Optional. Use **Group By** to choose how rows are organized, such as one row per facility or one row per provider.
4. **Apply filters.** Optional. Narrow the results using **Facility**, **Provider**, **Appointment Type**, and any other filters your selected metrics support. By default, reports include all available data.
5. **Set the time slice.** Optional. Use **Time Slice** to break results into day, week, biweekly, month, quarter, or year intervals.
6. **Set the timeframe.** Use the quick-select buttons (**D**, **W**, **Bi**, **M**, **Q**, **Y**) for common ranges, or click **Custom** to enter specific **Start** and **End** dates.
7. **Click Run Report.** Results appear in the main area on the left as a data table.
✨**Smart Tip:** Nothing is calculated while you change controls. If your results look stale after adjusting a filter or date range, click **Run Report** again.
## Report controls
The controls below appear in the **Controls** tab of the configuration panel, in the order listed here. Each one has a **?** icon in the product that links to its section on this page. Which controls appear depends on the metrics you have selected. EHR Reports only shows the controls that apply to your current report.
### Timeframe
Sets the overall date range for the report. Use the quick-select buttons (**D**, **W**, **Bi**, **M**, **Q**, **Y**) for common ranges, or click **Custom** and enter **Start** and **End** dates.
Most metrics count only data inside this range, but some deliberately look outside it for context, such as the first appointment on a case, checks for future appointments, or a case's full functional outcome history.
Some metrics also behave differently depending on whether the range is historical, current, or future-looking. Growth Engine new-patient metrics combine past arrived first appointments with future **Scheduled** first appointments, and Retention Engine lost-patient logic changes depending on whether the range is fully historical or includes today. Each engine page calls these out under **Behavior notes**.
### Time Slice
Groups results into time intervals (**day**, **week**, **biweekly**, **month**, **quarter**, or **year**), which is useful for trends such as week-over-week visit counts or month-over-month referral volume.
If you leave **Time Slice** unset, data is aggregated across the entire timeframe. Not every report supports time slicing; some are designed as range-wide operational summaries.
### Report Categories
Selects the reporting engine, and therefore which metrics are available:
* [**Growth Engine**](/air_admin/analyze_your_reports/growth_engine): patient acquisition, patient flow, referrals, leads, schedule fill, and caseload growth.
* [**Retention Engine**](/air_admin/analyze_your_reports/retention_engine): patient experience, outcomes, discharge quality, lost-patient risk, and plan-of-care adherence.
* [**Efficiency Engine**](/air_admin/analyze_your_reports/efficiency_engine): productivity, schedule utilization, billing quality, code mix, and documentation.
Five further categories sit alongside the engines: **Executive Org Overview**, **Clinic Provider**, **Referral Management**, **Scheduling Forecasting**, and **Patient Experiences NPS**. See [**Report Categories**](/air_admin/analyze_your_reports/report_categories) for every category and the reports each one contains.
You must select a category before **Key Metrics** becomes available.
### Key Metrics
Selects the specific report within your chosen category, such as **Scorecard**, **Outcomes**, or **Billing Quality**. Each selection adds its full set of columns to the results table, and you can select more than one.
Type in the search box to filter the list by name. The available options depend on the category you selected. See the engine pages linked above for the complete metric list and definitions.
**Note:** When you select multiple key metrics, only the grouping and time slice options supported by **all** of them are shown. If an option disappears, one of your selections does not support it.
### Data Grouping
**Group By** determines how results are broken into rows. Grouping by **Facility** shows one row per facility; grouping by **Provider** shows one row per provider. You can select multiple groupings where supported.
Some reports offer additional groupings: **Measure** on the Retention Engine Outcomes report, **Referring Provider**, **Referral Source Type**, or **Insurance** on the Growth Engine Referral Volume Conversion report, and **Employer** or **Employer Service Type** on Growth Engine Employer Services.
If you select no grouping, the report returns a single aggregated row for your timeframe and filters.
**Note:** Grouping the Outcomes report by **Measure** changes which columns you get, switching it to score-change and MCID metrics. See [**Retention Engine**](/air_admin/analyze_your_reports/retention_engine) for details.
### Facility
Restricts the report to the selected clinics or facilities. It defaults to **All facility**, meaning no facility restriction. Use **Select All** to add every facility at once, or **Remove All** to clear your selections.
### Provider
Restricts the report to the selected providers. It defaults to **All provider**, meaning no provider restriction. Use **Select All** to add every provider at once.
### Appointment Type
Restricts the report to specific appointment types, such as initial evaluations or follow-ups. This filter appears for appointment-based reports.
### Facility Group
Restricts the report to the selected facility groups. Selecting a group includes every facility beneath it, so you do not have to pick the facilities individually. This filter appears only where your site has facility groups enabled.
### Appointment Status
Restricts the report to specific appointment statuses, such as **Completed**, **Cancelled**, **No-show**, or **Scheduled**. This filter appears for appointment-based reports.
**Note:** Many metrics already restrict themselves by status as part of their definition. **Visits**, for example, counts only arrived appointments whatever you set here. Use this filter to narrow an already-broad count rather than to change how a rate is calculated.
### Credential
Restricts the report to providers holding the selected credentials, such as PT, OT, or SLP. This filter appears for provider-based reports.
### Insurance Type
Restricts the report to appointments under the selected insurance types, such as Medicaid, Medicare, or Commercial. This filters on the type of plan rather than on individual insurance companies. To break results out by named company, use the **Insurance** grouping instead.
### Measure
Restricts the report to the selected functional outcome measures. This filter appears on the Retention Engine **Outcomes** report.
### Employer
Restricts the report to the selected employers. This filter appears on the Growth Engine **Employer Services** report.
### Employer Service Type
Restricts the report to **Workers Comp** or **Direct to Employer** appointments. This filter appears on the Growth Engine **Employer Services** report.
## Saving a report
After running a report you can save the configuration (category, metrics, filters, groupings, time slice, and timeframe) and re-run it later.
**To save a report:**
1. Click **Save** (the star icon) in the top-right corner of the report results area.
2. In the **Save Report** dialog, enter a descriptive **Saved Report Name**, such as "Weekly Growth Scorecard by Facility".
3. Click **Save Report**.
## Accessing saved reports
**To re-run a report you saved earlier:**
1. Navigate to **EHR Reports**.
2. Click the **Saved Reports** tab at the top of the page.
3. Find your report in the **Saved Report Queries** list. Each card shows the date it was created, its name, its description, the **Categories** it uses, and when it was last updated.
4. Click the arrow icon on the card to load and run it.
## Drilling down into a metric
A drill-down shows the raw records behind an aggregated value, taking you from a high-level summary to patient, appointment, case, lead, referral, chart note, or encounter-level detail.
**To drill down:**
1. Run a report with at least one metric and, where useful, a grouping such as **Facility** or **Provider**.
2. In the results table, click a clickable value. These are underlined when you hover over them. For example, click the **New Patients (NP)** value for a specific facility.
3. The drill-down opens, listing the individual records that make up that number.
Depending on the metric, drill-down columns may include patient and appointment identifiers, case details, lead or referral details, appointment dates, provider, facility, and status.
**Navigating back.** A breadcrumb appears above the report showing your path as **Report Category / Key Metric / Column**, such as **Growth Engine / Scorecard / New Patients (NP)**. Click an earlier segment to return to that level.
**Sorting.** Click any column header to sort by that column. Click it again to reverse the direction.
## Downloading a report as CSV
Any report can be downloaded as a CSV for analysis in Excel or another spreadsheet tool. This works for both summary tables and drill-downs, which makes it a practical way to hand staff an action list: no-shows to call, stalled referrals to chase, lost patients to re-engage, missing plans of care, or incomplete notes.
**To download a report:**
1. Run the report, or open the drill-down you want to export.
2. Click **CSV** (the download icon) in the top-right corner of the report results area.
3. The file downloads to your computer as a `.csv` file.
# Efficiency Engine
Source: https://docs.athelas.com/air_admin/analyze_your_reports/efficiency_engine
The **Efficiency Engine** helps you evaluate how effectively providers, schedules, documentation workflows, and billing processes are being used. Select it from the **Report Categories** dropdown in [**EHR Reports**](/air_admin/analyze_your_reports/ehr_reports).
It is built for executives, clinic managers, billing teams, and operations leaders who need to assess productivity, schedule utilization, code mix, documentation speed, scribe adoption, and overall provider performance.
The engine contains three reports, each selected from the **Key Metrics** dropdown:
* **Productivity**: provider working hours, visit counts, visits per hour, schedule utilization, and FTE-normalized productivity.
* **Billing Quality**: procedure unit mix, evaluation complexity mix, non-billable leakage, and average codes and units per visit and per encounter.
* **Performance Pdo**: composite provider performance combining patient experience, productivity, arrival, documentation, and discharged episode metrics.
## Productivity
Productivity metrics combine provider working calendars, regular schedule blocks, booked appointment hours, and arrived visit counts.
| **Metric** | **Definition** |
| :------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Clinical Hours** | Total provider working hours in the selected date range, minus the calendar overlap of regular schedule blocks with the date range. **Formula: Working hours − regular block hours**. |
| **Visits** | Number of appointments starting in the selected date range with an arrived status: Checked In, Completed, or Ongoing. |
| **Visits / Hour** | Number of arrived visits per clinical hour. **Formula: Visits ÷ Clinical Hours**. |
| **Volume Evals** | Number of arrived visits whose chart note type is Initial Evaluation. |
| **Volume Follow Ups** | Number of arrived visits whose chart note type is Daily Note. |
| **Volume Discharges** | Number of arrived visits whose chart note type is Discharge Note. |
| **Volume Re Evals** | Number of arrived visits whose chart note type is Re-Certification Note. |
| **Schedule Utilization %** | Percentage of clinical hours booked by non-excluded appointments that start and end inside the selected date range. Archived, Cancelled, and No-show appointments are excluded from booked hours. **Formula: 100 × Booked hours ÷ Clinical hours**. |
| **Clinical %** | Percentage of total configured working hours that remained clinical after subtracting regular schedule blocks. **Formula: 100 × Clinical hours ÷ Total working hours**. |
| **Visits / FTE** | Visit volume normalized to an 8-hour FTE day. **Formula: Visits ÷ (Clinical hours ÷ 8)**. |
### How Visits / FTE is calculated
**Visits / FTE = Total Visits ÷ (Clinical Hours ÷ 8)**
Where:
* **Total Visits**: count of appointments starting in the selected date range with a status of Checked In, Completed, or Ongoing.
* **Clinical Hours**: provider working hours in the date range, minus the calendar overlap of regular schedule blocks (such as a recurring lunch or admin block) with the date range.
* **÷ 8**: normalizes clinical hours to an 8-hour FTE day. A provider with 40 clinical hours in a week has 5 FTE-days.
**Worked example:**
* Total visits in the period: 460
* Clinical hours in the period: 184
* FTE-days: 184 ÷ 8 = 23
**Visits / FTE = 460 ÷ 23 ≈ 20.0**, so each FTE-day saw about 20 arrived visits in that period.
## Billing Quality
Billing Quality metrics are calculated from arrived appointments in the selected date range that are linked to encounters with included procedure lines. Procedure lines marked as excluded from claims are not counted, so per-visit denominators include only arrived appointments with at least one included procedure line.
| **Metric** | **Definition** |
| :------------------------------ | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **High Value Codes per Visit** | Average high-value procedure units per arrived appointment with included procedure lines. High-value codes include timed therapeutic codes, evaluation and re-evaluation codes, speech therapy codes, orthotic and prosthetic management codes, and physical performance testing. |
| **Total Procedures** | Total number of included procedure line items. |
| **Total Procedures per Visit** | Average included procedure units per arrived appointment with included procedure lines. Despite the name, the numerator is procedure units, not line-item count. **Formula: Procedure units ÷ Arrived appointments with included procedure lines**. |
| **Non Billable Leakage** | Percentage of included procedure units that did not appear as billable units on the latest claim submission for the encounter. Billable units are counted only when the billed amount is greater than zero. **Formula: 100 × (Procedure units − Billable units) ÷ Procedure units**. |
| **Timed / Untimed Ratio** | Percentage of included procedure units that are timed CPT code units. **Formula: 100 × Timed units ÷ Procedure units**. |
| **Therapeutic Exercise %** | Share of the core active-code mix represented by CPT 97110 units. The core mix denominator is 97110, 97112, 97140, and 97530 units. |
| **Neuromuscular Reeducation %** | Share of the core active-code mix represented by CPT 97112 units. |
| **Manual Therapy %** | Share of the core active-code mix represented by CPT 97140 units. |
| **Therapeutic Activities %** | Share of the core active-code mix represented by CPT 97530 units. |
| **Active Code %** | Percentage of the core active-code mix represented by Therapeutic Exercise and Neuromuscular Reeducation units. **Formula: 100 × (97110 + 97112 units) ÷ (97110 + 97112 + 97140 + 97530 units)**. |
| **Avg Codes per Visit** | Average number of included CPT line items per arrived appointment with included procedure lines. |
| **PT Eval Low / Mod / High %** | Percentage of PT evaluation units that were low-complexity (97161), moderate-complexity (97162), or high-complexity (97163) evaluation units. |
| **OT Eval Low / Mod / High %** | Percentage of OT evaluation units that were low-complexity (97165), moderate-complexity (97166), or high-complexity (97167) evaluation units. |
| **Avg Units per Encounter** | Average included procedure units per distinct encounter. |
## Performance Pdo
Listed in **Key Metrics** as **Performance Pdo**, and referred to as the Performance report throughout this documentation. It combines patient experience, productivity, arrival outcomes, documentation, scribe adoption, and discharged episode visit counts into a single per-provider view.
| **Metric** | **Definition** |
| :-------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **NPS Score** | Net Promoter Score from valid NPS survey responses created in the selected date range. **Formula: 100 × (Promoters − Detractors) ÷ Valid NPS responses**. When grouped by provider or facility, this is averaged across group rows rather than recomputed across pooled responses. |
| **Productivity** | Arrived visits per clinical hour, using the same visit and clinical-hour definitions as the **Productivity** report. **Formula: Visits ÷ Clinical Hours**. Performance Productivity does not apply credential filters, so it can differ from a credential-filtered Productivity number for the same provider. |
| **Arrival Rate** | Of appointments with an attendance outcome, the percentage that arrived. Scheduled, Confirmed, and Archived appointments are excluded. **Formula: 100 × Arrived ÷ (Arrived + Cancelled + No-show)**. |
| **Days to Note Completion** | Average days from appointment start time to chart note signature time. Signatures before appointment start time and deleted signatures are excluded. Averaged across group rows when grouped. |
| **Incomplete Notes** | Number of chart notes for Checked In or Completed appointments where the rendering provider has not signed the note. Ongoing appointments are not counted. |
| **Scribe Adoption %** | Percentage of eligible, non-documentation-only notes on Checked In or Completed appointments that have an **Air Scribe** record. **Formula: 100 × Notes with scribe ÷ Eligible notes**. Averaged across group rows when grouped. |
| **Avg Visits per Episode** | Average number of arrived visits in the selected date range per case discharged in the selected date range. The discharge boundary is the case's first archive timestamp; cases archived and later un-archived within the range are still counted once. |
## Available groupings
* **Facility**: breaks results down by individual clinic or facility.
* **Provider**: breaks results down by individual provider.
## Example use cases
* A regional manager comparing visits per hour and schedule utilization across providers and facilities to assess productivity.
* A clinic manager reviewing visit mix across evaluations, follow-ups, discharges, and re-evaluations.
* A billing lead monitoring code mix and non-billable leakage to identify documentation or coding issues.
* A clinic manager tracking note completion time, incomplete notes, and scribe adoption to speed up billing.
* An executive evaluating high-level provider performance using productivity, NPS, arrival rate, and episode visit metrics on the **Performance Pdo** report.
## Behavior notes
**Booked hours are not deduplicated, so Schedule Utilization % can exceed 100%.** Overlapping appointments on the same provider are summed at face value: two appointments that overlap by 15 minutes each contribute their full duration. A double-booked schedule will report utilization above 100%.
* **Productivity Visits** count appointments whose start time is in range, but **Schedule Utilization %** booked hours require appointments to start *and* end in range.
* **Clinical Hours subtracts the full calendar overlap of regular schedule blocks** with the date range, regardless of whether the block falls inside the provider's working hours. A 7am block on a non-working day still reduces Clinical Hours.
* **Billing Quality per-visit denominators** include only arrived appointments that have at least one included procedure line connected to an encounter.
* **High Value Codes per Visit** uses a code list covering the categories named in the table plus additional codes within those categories, such as 97164, 97168, 97113, and 97116. Contact [**support@getathelas.com**](mailto:support@getathelas.com) if you need the full list.
* **Non Billable Leakage** compares included procedure units to billable units on the latest claim submission for the encounter. It is not payer-cap-specific.
* **Performance NPS** does not require the survey response to be linked to an appointment. Standalone NPS responses created in the range are included, matching the **Patient Experience** report.
* **Performance rolled-up metrics** (NPS Score, Days to Note Completion, Scribe Adoption %, and Avg Visits per Episode) are averaged across grouped rows rather than recomputed across pooled data. Pooled and averaged values can differ when group sizes are uneven.
* **Performance rows may appear for provider and facility combinations known to the site** even when a specific metric has no activity in the selected date range. Those cells will be empty or zero.
# EHR Reports
Source: https://docs.athelas.com/air_admin/analyze_your_reports/ehr_reports
**EHR Reports** is the reporting and analytics workspace for your **Air** data, reached from the **Insights** section of the sidebar. It lets executives, clinic managers, growth teams, billing teams, outcomes leaders, and operational staff monitor performance, spot problems, and act on them across every facility.
## What you can do
* Track performance across patient acquisition, retention, outcomes, productivity, billing quality, and operational efficiency.
* Drill down from a high-level summary into facility, provider, patient, case, referral, lead, appointment, chart note, and encounter-level records to investigate a specific number.
* Filter and group by provider, facility, time period, credential, measure, referral source, payer, and other available dimensions.
* Save frequently used report configurations for quick access.
* Export any report or drill-down as a CSV for offline analysis, patient follow-up, or executive review.
## The three report engines
Most reporting is organized into three engines. Each engine focuses on a different operational objective and carries its own metrics, groupings, filters, and date behavior. You select an engine from the **Report Categories** dropdown.
| **Engine** | **What it covers** |
| :------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------- |
| **[Growth Engine](/air_admin/analyze_your_reports/growth_engine)** | Patient acquisition, patient flow, referrals, leads, schedule fill, caseload growth, and employer services. |
| **[Retention Engine](/air_admin/analyze_your_reports/retention_engine)** | Patient experience, functional outcomes, discharge quality, lost-patient risk, plan-of-care adherence, and authorization follow-up. |
| **[Efficiency Engine](/air_admin/analyze_your_reports/efficiency_engine)** | Provider productivity, schedule utilization, billing quality, code mix, documentation completion, and scribe adoption. |
The **Report Categories** dropdown also offers five further categories alongside the engines: **Executive Org Overview**, **Clinic Provider**, **Referral Management**, **Scheduling Forecasting**, and **Patient Experiences NPS**. They are documented on [**Report Categories**](/air_admin/analyze_your_reports/report_categories), which also lists every category in one table.
To learn how to configure and run a report, see [**Building a Report**](/air_admin/analyze_your_reports/building_a_report).
**Note:** The metrics available to you may vary based on your organization's configuration and enabled features.
## Accessing EHR Reports
**To open EHR Reports:**
1. Sign in to **Insights**.
2. In the left sidebar, expand the **Insights** section.
3. Click **EHR Reports**.
The page opens on the **Report Builder** tab, which is the primary workspace for creating and running reports.
## Understanding the interface
The **Report Builder** tab is divided into two areas:
* **The report results area** on the left, which is empty until you run a report. Once a report runs, results appear here as a data table with **CSV** and **Save** actions in the top-right corner.
* **The configuration panel** on the right, where you set up your report parameters. The panel has a **Controls** tab holding the report parameters and a **Definitions** tab describing your report's columns. Each control has a **?** icon that links to the documentation for that control.
The **Definitions** tab stays disabled until you click **Run Report**, and it describes the columns your report actually returned rather than everything you could select. To read a metric's definition before you run anything, use [**All reports**](#all-reports) below or the engine pages. The tab is always empty for the five categories on [**Report Categories**](/air_admin/analyze_your_reports/report_categories), which do not supply definitions.
A **Saved Reports** tab sits alongside **Report Builder** and lists the report configurations you have saved.
Reports do not update as you change controls. Nothing is calculated until you click **Run Report**.
## All reports
Every report you can pick in **Key Metrics**, grouped by the category that contains it. Follow a link for that report's full column list and definitions. The **?** icon next to **Key Metrics** in the product brings you to this list.
### Scorecard
High-level patient acquisition and caseload movement. See [**Growth Engine**](/air_admin/analyze_your_reports/growth_engine#scorecard).
### Patient Flow
Evaluation timeliness, new-patient arrival outcomes, schedule fill, and lost-patient risk. See [**Growth Engine**](/air_admin/analyze_your_reports/growth_engine#patient-flow).
### Referral Volume Conversion
The referral pipeline for leads that have a referring provider. See [**Growth Engine**](/air_admin/analyze_your_reports/growth_engine#referral-volume-conversion).
### Leads
All leads, both referred and self-generated. See [**Growth Engine**](/air_admin/analyze_your_reports/growth_engine#leads).
### Employer Services
Workers' compensation and direct-to-employer patients and visits. See [**Growth Engine**](/air_admin/analyze_your_reports/growth_engine#employer-services).
### Patient Experience
NPS survey results and kiosk check-in adoption. See [**Retention Engine**](/air_admin/analyze_your_reports/retention_engine#patient-experience).
### Outcomes
Functional outcome coverage at evaluation, progress note, and discharge, plus score change and MCID when grouped by measure. See [**Retention Engine**](/air_admin/analyze_your_reports/retention_engine#outcomes).
### Retention
Discharge quality, lost patients, and authorization, plan-of-care, and script follow-up. See [**Retention Engine**](/air_admin/analyze_your_reports/retention_engine#retention).
### Productivity
Clinical hours, visit counts, visits per hour, schedule utilization, and FTE-normalized productivity. See [**Efficiency Engine**](/air_admin/analyze_your_reports/efficiency_engine#productivity).
### Billing Quality
Procedure unit mix, evaluation complexity, non-billable leakage, and codes per visit. See [**Efficiency Engine**](/air_admin/analyze_your_reports/efficiency_engine#billing-quality).
### Performance Pdo
Composite per-provider performance across experience, productivity, arrival, and documentation. See [**Efficiency Engine**](/air_admin/analyze_your_reports/efficiency_engine#performance-pdo).
### Visits Summary
Total visits, active patients, new patients, and discharged patients. See [**Report Categories**](/air_admin/analyze_your_reports/report_categories#visits-summary).
### Visits Per Fte Per Day
Visit volume against provider FTE and calendar days. See [**Report Categories**](/air_admin/analyze_your_reports/report_categories#visits-per-fte-per-day).
### Chart Note Time To Completion
Average, minimum, and maximum hours from appointment start to a signed chart note. See [**Report Categories**](/air_admin/analyze_your_reports/report_categories#chart-note-time-to-completion).
### Scribe Notes
Total notes, scribe-assisted notes, and the resulting adoption rate. See [**Report Categories**](/air_admin/analyze_your_reports/report_categories#scribe-notes).
### Referrals Over Time
Total, refused, and accepted referrals as a time series. See [**Report Categories**](/air_admin/analyze_your_reports/report_categories#referrals-over-time).
### Referral Scheduled Rate
How many referrals convert into scheduled appointments. See [**Report Categories**](/air_admin/analyze_your_reports/report_categories#referral-scheduled-rate).
### Referrals By Source
Referral counts by source type, referring provider, or insurance company. See [**Report Categories**](/air_admin/analyze_your_reports/report_categories#referrals-by-source).
### Leads By Stage
Leads broken out one row per configured lead stage. See [**Report Categories**](/air_admin/analyze_your_reports/report_categories#leads-by-stage).
### Capacity
Booked time against available working time, as a filled-capacity ratio. See [**Report Categories**](/air_admin/analyze_your_reports/report_categories#capacity).
### Scheduling Metrics
Raw appointment counts by status. See [**Report Categories**](/air_admin/analyze_your_reports/report_categories#scheduling-metrics).
### NPS Summary
Promoters, passives, detractors, NPS score, and average rating. See [**Report Categories**](/air_admin/analyze_your_reports/report_categories#nps-summary).
### NPS Response Rate
What share of completed visits produced a survey response. See [**Report Categories**](/air_admin/analyze_your_reports/report_categories#nps-response-rate).
## Key terminology
| **Term** | **Definition** |
| :------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Report Category** | A reporting area focused on a specific operational objective, selected in the **Report Categories** dropdown. EHR Reports currently supports Growth Engine, Retention Engine, and Efficiency Engine. |
| **Key Metric** | A focused report within a category, selected in the **Key Metrics** dropdown (for example Scorecard, Outcomes, or Billing Quality). Each one adds its full set of columns to the results table. |
| **Data Grouping** | Determines how rows are organized. Grouping by **Facility** creates one row per facility; grouping by **Provider** creates one row per provider. Some reports support additional groupings such as Measure, Referring Provider, Referral Source Type, or Insurance. |
| **Time Slice** | Groups data by time interval: day, week, biweekly, month, quarter, or year, where supported. Selecting **Week**, for example, shows one row per week. |
| **Timeframe** | The overall date range for the report. Most metrics include only data within this range, but some look outside it for context, such as the first appointment on a case, future appointment checks, or a case's full outcome history. |
| **Arrived appointment** | An appointment treated as attended. Depending on the report this usually includes **Checked In** and **Completed**; Growth and Efficiency visit counts may also include **Ongoing**. |
| **Case** | A clinical episode of care for a patient. Cases remain open until archived or discharged. |
| **Discharged case** | A case that has been closed or archived. Reporting uses the first timestamp at which the case was marked discharged. |
| **First appointment on a case** | The earliest non-Cancelled, non-No-show, non-Archived, non-Deleted appointment on a case. Used by Growth Engine new-patient metrics. |
| **Functional Outcome (FO)** | A non-deleted functional outcome measurement response attached to an appointment. Used by Retention Engine Outcomes metrics. |
| **MCID** | Minimal Clinically Important Difference. Indicates whether a functional outcome score changed enough to be clinically meaningful. |
| **Clinical hours** | Provider working hours in the selected date range after subtracting regular schedule blocks. Used by Efficiency Engine productivity and utilization metrics, and by Growth Engine Schedule Fill Rate. |
| **Booked hours** | Appointment-duration hours for booked appointments, excluding statuses such as Archived, Cancelled, and No-show. |
| **FTE** | Full Time Equivalent. In the Efficiency Engine, **Visits / FTE** normalizes visit volume using an 8-hour FTE day. |
| **Drill-down** | Clicking an aggregated value to see the underlying raw data records. |
| **Breadcrumb** | The navigation path shown above a report (for example **Growth Engine / Scorecard / New Patients (NP)**) that lets you return to a parent view. |
| **CSV export** | A downloadable spreadsheet file containing the current report or drill-down data. |
Some EHR Reports metrics share a name with a card on the **Performance Analysis** KPI dashboard, such as **Arrival Rate**, **Scheduled Patients**, and **Underscheduled Patients**. They are separate surfaces with their own calculations. The definitions in this section describe EHR Reports metrics only; see [**Review your KPI Dashboard**](/air_admin/analyze_your_reports/kpi_dashboard) for the dashboard's versions.
# Growth Engine
Source: https://docs.athelas.com/air_admin/analyze_your_reports/growth_engine
The **Growth Engine** helps you understand demand generation, referral performance, new patient acquisition, patient flow, caseload growth, and employer services volume. Select it from the **Report Categories** dropdown in [**EHR Reports**](/air_admin/analyze_your_reports/ehr_reports).
It is built for executives, growth teams, referral coordinators, front-office leaders, and clinic managers who need to know where patients are coming from, how quickly they get scheduled, and whether new patients are replacing discharged cases.
The engine contains five reports, each selected from the **Key Metrics** dropdown:
* **Scorecard**: high-level acquisition and caseload movement.
* **Patient Flow**: evaluation timeliness, new-patient outcomes, schedule fill, and lost-patient risk.
* **Referral Volume Conversion**: referral pipeline metrics for leads with a referring provider.
* **Leads**: all leads, both referred and self-generated.
* **Employer Services**: workers' compensation and direct-to-employer volume.
## Scorecard
| **Metric** | **Definition** |
| :------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Scheduled Patients** | Number of distinct patients with at least one appointment whose start date falls inside the selected date range, excluding Cancelled, No-show, Archived, or Deleted appointments. This is a patient count, not an appointment count. |
| **Appointments Scheduled** | Count of non-archived appointments that fall entirely within the selected date range. Includes both past appointments (Completed, Checked In, Ongoing, Cancelled, No-show) and future appointments (Scheduled, Confirmed). |
| **Visits** | Count of appointments that fall entirely within the selected date range, are on or before today, and have a status of Checked In, Completed, or Ongoing. Future appointments are not counted. |
| **Arrival Rate** | Of past appointments with a final outcome, the percentage that arrived. Scheduled, Confirmed, and Archived appointments are excluded. **Formula: 100 × Arrived ÷ (Arrived + Cancelled + No-show)**. |
| **New Patients (NP)** | Count of first appointments on a case in the selected date range. Past first appointments must be Checked In, Completed, or Ongoing. Future first appointments must be Scheduled. Future Confirmed first appointments are not counted as NP. The first appointment on a case is the earliest non-Cancelled, non-No-show, non-Archived, non-Deleted appointment on the case. |
| **New Patient Volume** | Of arrived appointments whose start date is in the past portion of the range, the percentage that were a patient's first appointment on a case. **Formula: 100 × Arrived first-on-case appointments ÷ All arrived appointments**. This uses appointment start in range, not the fully contained rule used by the **Visits** column, so edge appointments may differ between the two. |
| **Active Cases** | Number of open, non-archived cases with at least one Checked In, Completed, or Ongoing appointment in the selected date range. |
| **Discharged Cases** | Number of distinct cases closed during the selected date range. Discharge date is the first time the case was marked discharged, in the site's local timezone. Re-opening and re-archiving a case later does not double-count it. |
| **Net Patient Flow** | Difference between new patients acquired and cases discharged during the date range. Positive values indicate caseload growth; negative values indicate contraction. **Formula: New Patients (NP) − Discharged Cases**. |
| **Replacement Rate** | How fully new patients are replacing discharged cases. Empty when there are no discharges. **Formula: 100 × New Patients (NP) ÷ Discharged Cases**. |
## Patient Flow
| **Metric** | **Definition** |
| :-------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Timely Evals** | Of cases created within the date range that have at least one appointment, the percentage whose first qualifying appointment (any non-Cancelled, non-No-show, non-Archived, non-Deleted appointment) occurred within 2 calendar days of case creation. **Formula: 100 × Cases seen ≤ 2 days from creation ÷ Cases created with any appointment on the case**. |
| **Delayed Evals** | Same denominator as **Timely Evals**. The percentage whose first qualifying appointment occurred more than 2 calendar days after case creation. |
| **Delayed Eval Count** | Raw count behind **Delayed Evals**: distinct cases created in the range, present in the metric's denominator, with a delayed first qualifying appointment. |
| **Eval Not Scheduled** | Same denominator as **Timely Evals**. The percentage with **no** qualifying appointment on the case, meaning every appointment on it is Cancelled, No-show, Archived, or Deleted. Cases created in the range with no appointment rows at all are not part of this denominator. |
| **Eval Not Scheduled Count** | Raw count behind **Eval Not Scheduled**. |
| **Avg Days to Eval** | Average calendar days from case creation to the first qualifying appointment. Cases without a qualifying appointment are excluded. |
| **NP Arrival Rate** | Of first-on-case appointment slots in the past portion of the range with a final outcome, the percentage that arrived. **Formula: 100 × Arrived NP ÷ (Arrived NP + Cancelled NP + No-show NP)**. |
| **NP Cancel Rate** | Of the same new-patient denominator, the percentage that were Cancelled. |
| **NP No-show Rate** | Of the same new-patient denominator, the percentage that were No-shows. |
| **Arrival Rate** | All-visit arrival rate across the past portion of the date range. Same definition as **Scorecard → Arrival Rate**. |
| **Cancel Rate** | Of past appointments with a final outcome, the percentage that were Cancelled. |
| **No-show Rate** | Of past appointments with a final outcome, the percentage that were No-shows. |
| **Direct Access Rate** | Of first-on-case visits in the range with a linked clinical encounter, the percentage where no referring provider is recorded on the encounter. Eligible appointments exclude Cancelled, No-show, Archived, and Deleted statuses. **Formula: 100 × First-on-case visits with no referring provider ÷ First-on-case visits with a linked encounter**. |
| **Schedule Fill Rate** | Share of clinical hours that have been booked. **Formula: 100 × Booked hours ÷ Clinical hours**. Clinical hours are provider working hours minus regular schedule blocks; booked hours are appointment time booked within the clinical schedule, excluding Cancelled, No-show, and Archived appointments. |
| **Lead-to-Appointment Conversion Rate** | Of leads created in the date range, the percentage whose initial appointment was Completed or Checked In. **Formula: 100 × Leads with arrived initial appointment ÷ Leads created**. |
| **Lost Patients** | Number of distinct active-plan-of-care patients considered lost. **Past range:** the patient is lost if there is no future Scheduled or Confirmed appointment on the same case after the range ends. **Current or future range:** the patient is lost if there is a 21-day gap without a qualifying appointment that overlaps the selected range. Patients with no qualifying appointments at all are also counted as lost. |
## Referral Volume Conversion
Listed in **Key Metrics** as **Referral Volume Conversion**, and referred to as the Referrals report throughout this documentation.
Referral metrics include only leads that have a referring provider attached. Self-generated and internal leads are excluded from all numerators and denominators. Leads are anchored to their created date.
| **Metric** | **Definition** |
| :--------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Total Referrals** | Count of leads created in the selected date range with a referring provider on file. |
| **Referral-to-NP Appointment Conversion Rate** | Of all referrals created in the range, the percentage whose initial appointment was Completed or Checked In. **Formula: 100 × Referrals with arrived initial appointment ÷ Total referrals**. |
| **Referral Schedule Rate** | Of all referrals created in the range, the percentage with any initial appointment booked, regardless of status. **Formula: 100 × Referrals with initial appointment booked ÷ Total referrals**. |
| **Scheduled Referrals** | Raw count of referrals with an initial appointment booked. |
| **Refused Rate** | Of all referrals created in the range, the percentage explicitly marked as Refused Therapy. |
| **Refused Referrals** | Raw count of referrals explicitly marked as Refused Therapy. |
| **In-Progress Rate** | Of all referrals created in the range, the percentage with no initial appointment booked and not explicitly marked as Refused Therapy. Referrals where the Refused Therapy flag is unset count as in-progress. |
| **In-Progress Referrals** | Raw count of in-progress referrals. |
| **Avg Days to Schedule** | Average calendar days from referral creation to the initial appointment start date. Unscheduled referrals are excluded. |
| **New Patients Created** | Count of referrals linked to a patient record, regardless of whether the patient has arrived for an appointment yet. |
## Leads
Lead metrics include all leads created in the selected date range, both referred and self-generated. Lead status categorization comes from the configured Lead Tracker statuses on the site.
| **Metric** | **Definition** |
| :-------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Total Leads** | Count of all leads created within the selected date range. |
| **Lead-to-Appointment Conversion Rate** | Of all leads created in the range, the percentage whose initial appointment was Completed or Checked In. |
| **Lead Response Days** | Average calendar days from lead creation to the initial contact date. Same-day contact counts as 0. Contact dates before lead creation are excluded as data-entry artifacts. |
| **Leads in Progress** | Count of leads whose current status maps to the In Progress reporting category in the site's Lead Tracker configuration. |
| **Leads Converted** | Count of leads whose current status maps to the Converted reporting category. This is status-based and may differ from **Lead-to-Appointment Conversion Rate**, which is appointment-based. |
| **Leads Refused** | Count of leads marked as Refused Therapy. |
## Employer Services
Volume from employer-funded care. An appointment counts as an employer-services appointment when the patient's **primary** insurance is a workers' compensation or employer group plan. Everything else is excluded, so this report is a clean view of that book of business on its own.
The two service types are **Workers Comp** (workers' compensation plans) and **Direct to Employer** (employer group plans).
| **Metric** | **Definition** |
| :--------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Employer Services New Patients** | Number of distinct patients whose first-ever employer-services appointment (Workers Comp or Direct-to-Employer insurance) at the site falls within the date range. |
| **Employer Services Visits** | Number of employer-services appointments within the date range with an arrived status (Checked In, Completed, or Ongoing). |
**Available groupings.** **Facility**, **Provider**, **Employer**, **Insurance**, **Appointment Type**, and **Employer Service Type**. **Employer** uses the employer name recorded on the workers' compensation details, falling back to the insurance company name, and showing **Not Specified** when neither is set.
**Available filters.** **Employer** and **Employer Service Type**, in addition to the usual **Facility** and **Provider**.
**Note:** This report does not support **Time Slice**. It returns range-wide totals rather than a time series.
**New Patients and Visits count different appointments.** **Employer Services Visits** counts only arrived appointments, but **Employer Services New Patients** does not filter the in-range appointment by status. A patient whose only employer-services appointment in the range was cancelled still counts as a new patient. This is intentional, so do not read the two columns as though they describe the same set of appointments.
## Available groupings
* **Facility**: breaks results down by individual clinic or facility (all reports).
* **Provider**: breaks results down by individual provider (all reports).
* **Referring Provider**: breaks **Referral Volume Conversion** down by the referring provider on the lead.
* **Referral Source Type**: breaks **Referral Volume Conversion** down by source type configured in Lead Tracker.
* **Insurance**: breaks **Referral Volume Conversion** and **Employer Services** down by insurance.
* **Appointment Type**: breaks **Employer Services** down by appointment type.
* **Employer**: breaks **Employer Services** down by employer.
* **Employer Service Type**: breaks **Employer Services** into Workers Comp and Direct to Employer.
* **Facility Group**: breaks results down by facility group, where your site has facility groups enabled.
Available groupings depend on which Growth Engine report you selected.
## Example use cases
* A growth lead monitoring whether new patient volume is replacing discharged cases at each facility.
* An operations manager identifying facilities with low arrival rates or high new-patient cancellation and no-show rates.
* A referral coordinator comparing referral schedule rate and conversion by source or referring provider.
* A front-office manager finding leads still in progress that need follow-up to convert into attended appointments.
* A business development lead tracking workers' compensation and direct-to-employer volume by employer to see which contracts are producing patients.
## Behavior notes
**Date-range containment differs by metric.** **Visits**, **Appointments Scheduled**, and **Arrival Rate** use *fully contained* appointments, where both start and end fall inside the range. **Scheduled Patients**, **New Patients (NP)**, and **New Patient Volume** use *appointment start in range* only. An appointment that starts inside the range but ends after it may be counted by some of these metrics and not others, so two columns that both look like visit counts can legitimately disagree.
* **New-patient rates are appointment-grain, not case-grain.** **NP Arrival Rate**, **NP Cancel Rate**, and **NP No-show Rate** count first-on-case appointment *slots*. If a case's earliest slot was Cancelled and a later slot becomes the next non-excluded appointment, both can satisfy the first-on-case condition and contribute to the denominator, so a single case can appear more than once.
* **Case-timing denominators require an appointment row.** For **Timely Evals**, **Delayed Evals**, and **Eval Not Scheduled**, a case is included only if it has at least one appointment row of any status. Cases created in the range with zero appointment rows are dropped from the denominator entirely.
* **New Patients (NP)** combines past arrivals (Checked In, Completed, Ongoing) with future first-on-case appointments still in **Scheduled** status. Future **Confirmed** first appointments are intentionally excluded so the metric stays a conservative pipeline view.
* **Visits**, **Arrival Rate**, **Cancel Rate**, and **No-show Rate** look only at the past portion of the date range. A fully future range returns empty values for these metrics.
* **Lost Patients** uses two different rules depending on whether the range is fully historical or current and future. The past-range query also looks for future appointments only on cases that have appointments on or after the range start, so a patient with no activity from the range start onward is counted as lost.
# Review your KPI Dashboard
Source: https://docs.athelas.com/air_admin/analyze_your_reports/kpi_dashboard
Analyze key statistics to monitor and evaluate your practice’s operational efficiency, patient outcomes, and financial performance.
### **Ask Athelas AI for quick statistics**
✨**Smart Tip:** Use Athelas AI to generate quick reports and surface key statistics instantly. You can also use Voice Mode.
### **Review detailed reports**
Access a full overview of KPIs in **Insights → Performance Analysis** on the left navigation bar.
* **Definitions:** Hover over the info icon on any card to see a definition of the metric.
* **Filters:** Apply filters by Date Range, Facility, and Provider. Most cards, tables, and downloads respect these filters
* Exceptions include Active, Scheduled, and Dropped Patients (which are based on case status rather than date).
* Appointment Total cards include their own dropdown filters, allowing you to quickly view appointment metrics by status.
* **Trends:** Each card highlights current values with a “last period” comparison to indicate positive or negative changes. *“Last Period”* refers to the previous interval equal to the selected date range (e.g., if you select 7 days, “last period” means 8–14 days ago).
* **Export:** Each card includes a download option for CSV export. Reports include detailed fields such as appointment IDs and patient contact information to enable effective follow-up.
**Note:** Clicking on a card opens a detailed table. For example, the **Underscheduled Patients** card displays patient IDs, names, Plan of Care details, and progress percentages. Each patient ID links directly to the patient’s EHR profile for quick action.
| **Card** | **Description** |
| :---------------------------------- | :----------------------------------------------------------------------------------------------------------- |
| **Active Patients** | Number of patients with an open case (not archived or discharged). |
| **Scheduled Patients** | Patients with an open case and at least one future appointment scheduled. |
| **Dropped Patients** | Patients with an open case but no future appointments scheduled. |
| **Underscheduled Patients** | Patients with fewer completed/checked-in visits than expected in their Plan of Care (scheduling ratio \< 1). |
| **Average POC Allocation** | The average scheduling ratio across all patients with a valid Plan of Care. |
| **Discharges** | Patients discharged with their case closed during the selected timeframe. |
| **Visits per Discharge** | Average number of visits completed before discharge per case. |
| **Unsigned Notes** | Total number of unsigned notes, plus count of notes signed during the selected period. |
| **Arrival Rate** | Percentage of past appointments that were completed, checked in, confirmed, or ongoing. |
| **No Show Rate** | Percentage of past appointments marked as “No Show.” |
| **Cancellation Rate** | Percentage of past appointments that were cancelled. |
| **Patient Buy-In** | Measures patient engagement as the inverse of no-show rate (higher is better). |
| **Provider Efficiency** | Completed/checked-in appointments compared to a benchmark (80 per week per provider, configurable). |
| **Appointment Count** | Total number of appointments, filterable by status (default = Scheduled). |
| **Average Frequency of Visit** | Average visits per patient per week, using a 4-week rolling average of active patients. |
| **Initial Evaluations Scheduled** | Number of scheduled or completed appointments of the “Initial Evaluation” type. |
| **Average Initial Evals Scheduled** | Average weekly initial evaluation count over the selected date range. |
| **Average Appointment Count** | Average weekly appointment count over the selected date range. |
| **Average Units per Encounter** | Average number of billable units per encounter, based on the latest submitted claims. |
### **Understanding KPI Calculations**
**How it's calculated:**
* Counts distinct patients who have at least one non-archived case
* A case is considered "open" when **is\_archived = FALSE**
* The query joins **Appointments → Patient → AppointmentsCase**
* Filters by site, provider, and facility if specified
**When calculating 4-week average:**
* Groups patients by week
* Averages the patient counts across the 4-week period
**Note:** This metric is based on case status rather than date range, so it may not respect date filters.
**How it's calculated:**
* Identifies patients with open cases who have at least one future scheduled appointment
* Only counts appointments with status **'SCHEDULED'** or **'CONFIRMED'**
* Uses a CTE (Common Table Expression) to find the next appointment date for each patient
* Appointment must be in the future (after current timestamp in site timezone)
**Details included:**
* Patient count
* Next appointment date for each patient
**Note:** This metric is based on case status rather than date range, so it may not respect date filters.
**How it's calculated:**
* Identifies patients with open cases but **NO** future scheduled appointments
* Joins with latest evaluation chart note to pull Plan of Care (POC) information
* Calculates scheduling ratio based on POC parameters
**Details included:**
* Patient count
* Last completed appointment date for context
* Average POC allocation percentage as secondary statistic
**Note:** This helps you identify patients at risk of dropping out of treatment who need follow-up scheduling.
**How it's calculated:**
* Counts patients with scheduling ratio \< 1.0 (not fully scheduled according to POC)
* **Scheduling ratio** = (completed + upcoming appointments) / total POC visits
* Uses the latest evaluation or recertification note for POC data
* Only counts appointments within the POC date range
**POC visits calculation:**
* Calculated from frequency, duration, and visit count fields in the chart note
* Example: 3 visits/week × 4 weeks = 12 total POC visits
**Secondary statistics:**
* Shows average scheduling ratio across all patients as tertiary statistic
**Note:** This helps you identify patients who need more appointments scheduled to meet their treatment plan.
**How it's calculated:**
* Counts patients whose cases were archived (discharged) within the date range
* Uses **appointment\_case\_records** to find the exact discharge timestamp
* Adjusts timestamp to site timezone for accurate date filtering
* Only includes cases with discharge records (**is\_archived = TRUE**)
**Comparison:**
* Compares current period vs previous period for trend analysis
* Previous period duration matches current period duration
**Note:** This metric respects the date range filter.
**How it's calculated:**
* Calculates the average number of visits before discharge per case
* Only counts visits from appointments with valid statuses (excludes cancelled, archived)
* Filters visits to those occurring within the specified date range
* Groups by provider to show per-provider breakdown
**Calculation formula:**
* **Visits per Discharge** = Total visits / Total discharges
* Overall average calculated across all providers and discharges
**Note:** Higher numbers indicate longer treatment episodes before discharge.
**How it's calculated:**
* Counts currently unsigned chart notes (any date)
* Counts signed notes in the current period for context
* Excludes documentation-only notes
**Comparison:**
* Compares with previous period signed count
* Previous period duration matches current period duration
**Note:** The unsigned notes count is not filtered by date range - it shows all unsigned notes across all time periods.
**How they're calculated:**
* **Arrival Rate:** % of past appointments that were completed/checked-in/confirmed/ongoing
* **No Show Rate:** % of past appointments marked as no-show
* **Cancellation Rate:** % of past appointments cancelled
**Key details:**
* Only includes **past** appointments (excludes future scheduled and archived)
* All three rates sum to 100% of past appointments
* Compares current period vs previous period for trends
**Formula:**
* Each rate = (Count of appointments with specific status / Total past appointments) × 100
**How it's calculated:**
* Measures patient engagement as the inverse of no-show rate
* **Buy-in appointments:** scheduled, confirmed, completed, checked-in, ongoing, cancelled
* **Non-buy-in:** no-shows only
* Excludes archived appointments
**Interpretation:**
* Higher is better (indicates more patient engagement)
* Essentially shows what percentage of patients are engaged vs no-showing
**Comparison:**
* Compares current period vs previous period
**How it's calculated:**
* Measures provider productivity against a benchmark (default: 80 appointments/week)
* **Efficiency** = (completed+checked-in+ongoing+confirmed appts / benchmark) × 100
* Benchmark is adjusted for the actual number of weekdays in the date range
* Only counts appointments with completion statuses
**Configuration:**
* Configurable benchmark per site via **kpi\_config** table
* Default benchmark: 80 appointments per week per provider
**Display:**
* Shows per-provider breakdown with overall average
**How it's calculated:**
* Counts total appointments matching filter criteria
* Filterable by appointment status (scheduled, confirmed, completed, etc.)
* Excludes archived appointments
**Weekly average option:**
* Supports weekly average calculation when requested
* Total appointments divided by number of weeks in date range
**Note:** The appointment status filter is available directly on the card.
**How it's calculated:**
* Calculates average weekly appointment count over the date range
* Uses same filters as Appointment Count (status, category)
* **Formula:** Total appointments / Number of weeks in date range
**Purpose:**
* Helps normalize comparison across different time periods
* Useful for understanding typical weekly volume
**How it's calculated:**
* Measures average visits per patient per week
* **Numerator:** Total appointments in the selected week
* **Denominator:** 4-week rolling average of active patients
* Uses active patients (open cases) to normalize
**Purpose:**
* Helps understand patient visit cadence
* Shows how often active patients are being seen
**Comparison:**
* Compares with previous week
**How it's calculated:**
* Counts appointments of type **"Initial Evaluation"**
* Excludes archived, cancelled, and no-show appointments
* Uses **ehr\_appointment\_types** to identify initial eval appointments
* Supports weekly average calculation
**Comparison:**
* Compares current period vs previous period
**Note:** This helps track new patient intake rate.
**How it's calculated:**
* Calculates average weekly initial evaluation count
* Same filters and logic as Initial Evals Scheduled
* **Formula:** Total count / Number of weeks in date range
**Purpose:**
* Helps track new patient intake rate over time
* Normalizes comparison across different time periods
**How it's calculated:**
* Calculates average number of billable units per encounter
* Uses service unit count from the latest submitted claim (not ghost claims)
* Falls back to procedure's **service\_unit\_count** if no claim exists
* Only counts submitted claims (not pending or rejected)
**Data source priority:**
* Prioritizes lowest destination claim (PRIMARY over SECONDARY)
* Groups by encounter to get total units
* Averages across all encounters
**Comparison:**
* Compares current period vs previous period
**Note:** This helps track billing efficiency and documentation completeness.
**How it's calculated:**
* The average scheduling ratio across all patients with a valid Plan of Care
* **Scheduling ratio** = (completed + upcoming appointments) / total POC visits
* Uses the latest evaluation or recertification note for POC data
* Only includes patients with active cases and valid POC information
**Purpose:**
* Shows overall scheduling compliance across your practice
* Values closer to 1.0 indicate better adherence to treatment plans
### **Review the status of Active Patients**
Access the Active Patient Breakdown in **Insights → Performance Analysis** on the left navigation bar.
* **Definition:** An Active patient is any patient with an open case during the defined data range. You can see the % of patients with 0, 1, 2 and 3+ scheduled visits in the future.
* **Filters:** Apply filters by Date Range, Facility, and Provider.
* **Export:** You can download the top 4 cards for a CSV export. Reports include detailed fields from the table below including Patient name, Case, Provider, Insurance, # visits, Drop Offs, % Arrival, Last Appt., Appts Next week, Appts Following week and Notes.
### FAQ
**"Last period"** refers to the previous interval equal to your selected date range. For example:
* If you select **7 days** (today through 7 days ago), "last period" means **8-14 days ago**
* If you select **30 days**, "last period" means the **previous 30 days** before that
* If you select a custom range like **January 1-15**, "last period" means **December 17-31** (the same number of days)
This allows you to compare performance trends over equivalent time periods and identify improvements or areas needing attention.
Some metrics are based on **current case status** rather than date ranges:
* **Active Patients:** Shows patients with currently open cases (not archived), regardless of date
* **Scheduled Patients:** Shows patients with future appointments, regardless of date
* **Dropped Patients:** Shows patients without future appointments, regardless of date
These metrics give you a real-time snapshot of your current patient population. Most other cards, including **Discharges**, **Arrival Rate**, **Provider Efficiency**, and **Appointment Count**, do respect the date range filter.
**Note:** The **Unsigned Notes** card shows all unsigned notes (any date) but also displays how many notes were signed during the selected period for context.
The **scheduling ratio** helps you understand if patients are scheduled according to their Plan of Care (POC):
**Formula:**
* Scheduling Ratio = (Completed appointments + Upcoming appointments) / Total POC visits
**Example:**
* A patient's POC prescribes **3 visits per week for 4 weeks** = 12 total visits
* They've completed **5 visits** and have **4 more scheduled** = 9 total
* Scheduling ratio = 9 / 12 = **0.75 (or 75%)**
**Underscheduled patients** have a ratio **\< 1.0**, meaning they need more appointments to meet their treatment plan. This helps you proactively schedule patients before they fall behind.
**Provider Efficiency** measures productivity against a specific benchmark:
* **Default benchmark:** 80 completed appointments per week per provider (configurable by site)
* **Calculation:** (Completed + checked-in + ongoing + confirmed appointments / benchmark) × 100
* **Adjustment:** The benchmark is adjusted for the actual number of weekdays in your selected date range
**Other appointment metrics:**
* **Appointment Count:** Simply counts total appointments (filterable by status)
* **Average Appointment Count:** Weekly average across the date range
* **Average Frequency of Visit:** Visits per patient per week
Provider Efficiency is specifically designed to help you understand if providers are meeting productivity targets, while other metrics focus on volume or patient visit patterns.
Here are some practical ways to use these metrics:
**Reduce patient dropout:**
* Monitor **Dropped Patients** and **Underscheduled Patients** to proactively reach out and schedule appointments
* Track **Patient Buy-In** to identify engagement trends
**Optimize scheduling:**
* Use **Scheduling Ratio** and **Average POC Allocation** to ensure patients meet their treatment plans
* Review **Average Frequency of Visit** to understand typical visit patterns
**Improve attendance:**
* Monitor **Arrival Rate** and **No Show Rate** to identify trends
* Follow up with patients who have low arrival rates
**Track documentation:**
* Review **Unsigned Notes** daily to ensure timely chart completion
* Monitor **Average Units per Encounter** to track billing documentation
**Manage provider productivity:**
* Use **Provider Efficiency** to identify providers who may need support or are exceeding targets
* Compare **Visits per Discharge** across providers to understand treatment episode lengths
# My Reports
Source: https://docs.athelas.com/air_admin/analyze_your_reports/my_reports
**My Reports** is the central place to download operational and clinical exports from Insights. Open it from the left navigation (**Reports**) or go directly to [insights.athelas.com/v2/my-report](https://insights.athelas.com/v2/my-report).
Reports are grouped into tabs. Which tabs and cards you see depends on your role and site configuration.
| Tab | Examples |
| :------------------------- | :------------------------------------------------------------------------------- |
| **Claims** | Claim Details, A/R, Submitted Claims, Detailed Charges |
| **Revenue** | Posting Log, Collections, Site Transaction, Revenue Activity |
| **EHR Reports** | Daily Stat, Open Cases, Provider Productivity, Audit Log Export *(when enabled)* |
| **Miscellaneous** | Patient Balances, Patient Charges, Patient Eligibility |
| **Performance Management** | Payroll Bonus |
This is not the same as **[EHR Reports](/air_admin/analyze_your_reports/ehr_reports)** (the custom report builder at `/ehr/reports`). My Reports uses pre-built report cards with download dialogs.
## Download a report
1. Find the report card and click the **download** icon.
2. Set filters in the dialog (date range, facility, provider, etc. — varies by report).
3. Click **Download**.
Most reports download immediately as CSV or Excel. Some exports (including **Audit Log Export**) run in the background and email you when the file is ready.
Click the **?** icon on a report card for report-specific help. Individual billing reports are also documented under [Building and Running Reports](/insights_biller/reports/building_and_running_reports).
## Report history
When enabled for your site, a **Report History** section below the report cards lists past runs — including status, who requested them, and filters used. Use it to re-download completed reports or spot failures.
Download links expire after **24 hours**. Re-run the report or use Report History to generate a fresh link.
## Audit Log Export
*(Beta — contact your account manager for access.)*
Workspace admins can export **patient access**, **user access**, or **both** audit logs from **EHR Reports → Audit Log Export**. Choose an export type, optional date range, and (for patient-access exports) an optional patient filter. The CSV is delivered by email when processing finishes.
# Report Categories
Source: https://docs.athelas.com/air_admin/analyze_your_reports/report_categories
Every report in [**EHR Reports**](/air_admin/analyze_your_reports/ehr_reports) starts with a **Report Category**. The category you pick decides which reports appear in the **Key Metrics** dropdown, and therefore which columns you can put in your results table.
There are eight categories. Three of them are the report engines, which have their own pages. The other five are documented in full below.
| **Category** | **Reports it contains** |
| :------------------------------------------------------------------------- | :-------------------------------------------------------------------------------- |
| **[Growth Engine](/air_admin/analyze_your_reports/growth_engine)** | Scorecard, Patient Flow, Referral Volume Conversion, Leads, Employer Services |
| **[Retention Engine](/air_admin/analyze_your_reports/retention_engine)** | Patient Experience, Outcomes, Retention |
| **[Efficiency Engine](/air_admin/analyze_your_reports/efficiency_engine)** | Productivity, Billing Quality, Performance Pdo |
| **Executive Org Overview** | Visits Summary, Visits Per Fte Per Day |
| **Clinic Provider** | Chart Note Time To Completion, Scribe Notes |
| **Referral Management** | Referrals Over Time, Referral Scheduled Rate, Referrals By Source, Leads By Stage |
| **Scheduling Forecasting** | Capacity, Scheduling Metrics |
| **Patient Experiences NPS** | NPS Summary, NPS Response Rate |
All eight are available to every site. The category names above are exactly as they appear in the dropdown.
The five categories on this page do not supply metric definitions. The **Definitions** tab in the configuration panel stays empty for their reports and reads "No definitions available for the current report columns." Use this page as their reference instead. The three engines do supply definitions, which you can read on their pages or in the **Definitions** tab after running a report.
## Executive Org Overview
High-level visit volume and provider capacity for the organization.
### Visits Summary
A high-level view of visit volume and patient counts for your selected date range.
* **Total visits**: appointments with a status of **Checked in**, **Completed**, or **Ongoing** whose start and end dates both fall within the range.
* **Active patients**: distinct patients with at least one qualifying visit. Each patient is counted once.
* **New patients**: patients whose first countable visit falls within the range, meaning no prior non-cancelled, non-archived, non-no-show appointment before the range start.
* **Discharged patients**: patients who had visits in the range but currently have no open case at the site.
Grouping by **Facility** or **Provider** breaks these totals into one row per dimension. The **Appointment Status** and **Appointment Type** filters further restrict which appointments count.
For a case-based view of the same territory, with new-patient and discharge metrics that account for future scheduled appointments, see [**Growth Engine → Scorecard**](/air_admin/analyze_your_reports/growth_engine#scorecard).
### Visits Per Fte Per Day
Visit volume relative to provider capacity. Shown in the dropdown as **Visits Per Fte Per Day**.
* **Visits per FTE per day**: total qualifying appointments divided by **(FTE × number of days in the period)**. FTE defaults to 1.0 per provider if not configured.
When grouped by **Provider**, each row uses that provider's FTE and appointments. When grouped by **Facility**, FTEs and appointments are aggregated at the facility level.
**Note:** This is not the same calculation as **Visits / FTE** on [**Efficiency Engine → Productivity**](/air_admin/analyze_your_reports/efficiency_engine#productivity), which normalizes against clinical hours on an 8-hour FTE day rather than against calendar days. The two columns will not match.
## Clinic Provider
Documentation speed and scribe adoption across your providers.
### Chart Note Time To Completion
The time from **appointment start** to **chart note signed**, in hours. Only non-documentation-only, signed chart notes are included.
* **Average time to completion**: average hours across all qualifying chart notes.
* **Minimum / Maximum**: shortest and longest completion times.
* **Total chart notes**: count of notes that met the criteria.
Break down by **Provider** and **Facility** to compare documentation speed.
### Scribe Notes
Air Scribe adoption across your practice.
* **Total chart notes**: non-documentation-only chart notes in the date range.
* **Total scribe notes**: chart notes created with scribe-assisted documentation.
* **Scribe adoption rate**: (Total scribe notes ÷ Total chart notes) × 100%.
Break down by **Provider** and **Facility**.
**Note:** [**Efficiency Engine → Performance Pdo**](/air_admin/analyze_your_reports/efficiency_engine#performance-pdo) reports **Scribe Adoption %** and **Days to Note Completion** as single columns alongside other provider metrics. Use **Chart Note Time To Completion** and **Scribe Notes** when you want the underlying counts and the minimum and maximum, which the engine reports do not return.
## Referral Management
The referral and lead pipeline, anchored to when each referral or lead was created.
### Referrals Over Time
Referral volume as a time series based on referral creation date.
* **Total referrals**: all referrals created in each time bucket.
* **Refused referrals**: referrals marked as refused therapy.
* **Accepted referrals**: referrals not refused.
Use **Time Slice** to set the bucket size.
### Referral Scheduled Rate
How many referrals convert to scheduled appointments.
* **Scheduled referrals**: referrals that have an appointment created for them.
* **Schedule rate**: (Scheduled referrals ÷ Total referrals) × 100%.
### Referrals By Source
Referral counts broken down by **source type**, **referring provider**, and/or **insurance company**.
* **Referral count**: total referrals in each group.
* **Scheduled count**: referrals with an appointment created.
* **Refused count**: referrals marked as refused therapy.
### Leads By Stage
Leads and referrals broken down by **lead status** (stage).
* **Lead count**: number of leads in each stage.
* **Scheduled count**: leads with an appointment created.
* **Patient-created count**: leads linked to a new patient record.
* **Refused count**: leads marked as refused therapy.
* **Scheduling rate**: (Scheduled count ÷ Lead count) × 100%.
**Note:** [**Growth Engine → Referral Volume Conversion**](/air_admin/analyze_your_reports/growth_engine#referral-volume-conversion) and [**Leads**](/air_admin/analyze_your_reports/growth_engine#leads) cover the same pipeline with conversion, refusal, and in-progress rates plus average days to schedule. **Leads By Stage** remains the only report that breaks results out one row per configured lead stage.
## Scheduling Forecasting
Capacity and appointment status counts. Shown in the dropdown as **Scheduling Forecasting**.
### Capacity
Booked appointment time compared to available working time.
* **Available working time**: derived from provider schedules, as configured working hours per weekday × number of weekdays in the range.
* **Booked time**: sum of appointment durations in the range.
* **Filled capacity**: Booked hours ÷ Available working hours. A value of 0.80 means 80% of available time was filled.
View this by **Provider** or **Facility**.
**Note:** **Filled capacity** is reported as a ratio between 0 and 1, while **Schedule Utilization %** on [**Efficiency Engine → Productivity**](/air_admin/analyze_your_reports/efficiency_engine#productivity) is a percentage and subtracts regular schedule blocks from the denominator. Expect different numbers.
### Scheduling Metrics
Appointment counts by status for the selected date range. Only appointments whose start and end dates both fall within the range are included.
* **Total appointments**, **Scheduled**, **Cancelled**, **No-show**, **Completed**, **In progress**
Each value is a simple count of appointments matching that status. Filters and data grouping apply as expected. This is the only report that returns raw per-status appointment counts; the engines express the same information as rates.
## Patient Experiences NPS
Net Promoter Score results from patient surveys. Shown in the dropdown as **Patient Experiences NPS**.
### NPS Summary
Based on NPS survey responses submitted within the date range. Only valid numeric responses, scores 0 through 10, are included.
* **Promoters**: responses scoring 9 or 10.
* **Detractors**: responses scoring 0 through 6.
* **Passives**: responses scoring 7 or 8.
* **NPS score**: ((Promoters − Detractors) ÷ Total valid responses) × 100. The result ranges from −100 to +100. Passives are excluded from the formula but counted in the total.
* **Average rating**: average numeric score across all valid responses.
Group by **Facility** or **Provider**.
[**Retention Engine → Patient Experience**](/air_admin/analyze_your_reports/retention_engine#patient-experience) returns the same measures plus promoter, passive, and detractor rates and kiosk check-in adoption.
### NPS Response Rate
What share of visits produced an NPS survey response. This is a site-level report.
* **NPS responses**: valid NPS survey responses in the period.
* **Completed visits**: appointments in the period with a status of **Completed**. **Checked in** and **Ongoing** appointments are excluded, because surveys go out after a visit ends.
* **Response rate**: (NPS responses ÷ Completed visits) × 100.
**Read the response rate as an opt-in rate, not a satisfaction signal.** The denominator counts completed visits, which is a proxy: the true denominator would be patients who were actually sent a survey, and that is not currently tracked. Rates below 5% are normal and reflect how many patients choose to respond.
**Note:** This report does not support **Data Grouping**. The completed-visits denominator is calculated once across the whole site, so grouping by facility or provider would repeat that same total on every row and make each group's rate look artificially low.
## Report controls
These categories use the same controls as every other report. See [**Building a Report**](/air_admin/analyze_your_reports/building_a_report) for the full reference on **Timeframe**, **Time Slice**, **Data Grouping**, and each filter.
Two points specific to the reports on this page:
* **What counts as a visit.** A visit is an appointment with a status of **Checked in**, **Completed**, or **Ongoing** whose start and end dates both fall within the selected date range. Cancelled, Archived, and No-show appointments are not counted as visits. **NPS Response Rate** is the exception and counts only **Completed** appointments.
* **Which filters appear.** **Facility** and **Provider** are available for most of these reports. **Appointment Status** and **Appointment Type** appear only for appointment-based reports such as **Visits Summary** and **Scheduling Metrics**. EHR Reports only shows the filters that apply to your current selection, so the list changes as you change **Key Metrics**.
# Retention Engine
Source: https://docs.athelas.com/air_admin/analyze_your_reports/retention_engine
The **Retention Engine** helps you understand patient experience, outcomes completion, discharge quality, lost-patient risk, plan-of-care adherence, and operational follow-up needs. Select it from the **Report Categories** dropdown in [**EHR Reports**](/air_admin/analyze_your_reports/ehr_reports).
It is built for executives, clinic managers, outcomes leaders, and operations teams who need to identify patient drop-off, missing functional outcomes, self-discharge patterns, and patients who require authorization, plan-of-care, or script follow-up.
The engine contains three reports, each selected from the **Key Metrics** dropdown:
* **Patient Experience**: NPS survey metrics and [kiosk](/air_provider/check_in_a_patient/kiosk_user_guide) check-in adoption.
* **Outcomes**: functional outcome coverage at evaluation, progress note, and discharge, plus score-change and MCID metrics when grouped by **Measure**.
* **Retention**: discharge quality, lost-patient detection, and authorization, plan-of-care, and script tracking against active plans of care.
## Patient Experience
NPS metrics are anchored to the survey response creation date. Only valid numeric NPS scores from 0 through 10 are included.
| **Metric** | **Definition** |
| :------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Total Responses** | Number of valid NPS survey responses created within the selected date range. Blank, invalid, deleted, and draft responses are excluded. |
| **Avg Rating** | Average NPS rating across valid survey responses. |
| **Promoters** | Number of valid NPS responses with a score of 9 or 10. |
| **Passives** | Number of valid NPS responses with a score of 7 or 8. |
| **Detractors** | Number of valid NPS responses with a score from 0 through 6. |
| **Promoters Rate** | Percentage of valid NPS responses that were promoters. **Formula: 100 × Promoters ÷ Total valid responses**. |
| **Passives Rate** | Percentage of valid NPS responses that were passives. |
| **Detractors Rate** | Percentage of valid NPS responses that were detractors. |
| **NPS Score** | Net Promoter Score for valid responses. Positive scores mean promoters outnumber detractors. **Formula: 100 × (Promoters − Detractors) ÷ Total valid responses**. |
| **Kiosk Completion Rate** | Of Checked In appointments with a recorded check-in actor, the percentage that were checked in by a kiosk user account. **Formula: 100 × Kiosk check-ins ÷ Checked In appointments with a recorded check-in actor**. |
## Outcomes
The standard **Outcomes** view includes cases with at least one Checked In or Completed appointment in the selected date range. Coverage checks, such as whether a case has an evaluation functional outcome (FO) or a discharge FO, may look across the case's full functional outcome history, not just the selected range.
| **Metric** | **Definition** |
| :---------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **FO Completion Rate** | Of cases with a discharge note visit in the range, the percentage with both an initial evaluation FO and a discharge FO recorded anywhere in the case's history. **Formula: 100 × Cases with both eval FO and discharge FO ÷ Cases with discharge note visits in range**. |
| **FO at Initial Eval Rate** | Of cases with an initial evaluation visit in the range, the percentage with an FO recorded at an initial evaluation in the range. |
| **FO at Discharge Rate** | Of cases discharged in the range, the percentage with an FO recorded on a discharge note. |
| **FO at Progress Note Rate** | Of cases with at least one progress note visit in the range, the percentage where every in-range progress note had an FO recorded. |
| **Cases Missing Discharge FO** | Number of discharged cases without an FO recorded on a discharge note. |
| **FO Episodes** | Number of cases with at least one FO visit. |
| **Avg Scored Visits per Case** | Average number of FO-scored visits per case, among cases with at least one scored visit. |
| **Avg Case Duration Days** | Average calendar days between the first and last FO visit, for cases with at least two FO visits. |
| **Avg Case Visits** | Average number of Checked In or Completed visits per included case across the case's full history, not limited to the selected date range. The case is included if it has any Checked In or Completed visit in range, but the count itself is lifetime. |
| **Discharge Type Completed Rate** | Of discharged cases, the percentage with a signed discharge note. |
| **Discharge Type Self Discharged Rate** | Of discharged cases, the percentage without a signed discharge note. |
| **Discharge Type Non Participation Rate** | Of discharged cases, the percentage without a signed discharge note and with one or fewer FO visits. |
## Outcomes grouped by Measure
When you group the **Outcomes** report by **Measure**, it switches to score-change and MCID (Minimal Clinically Important Difference) metrics per functional outcome measure. Cases that have FO visits but no computed score rows for a given measure are excluded from this view.
| **Metric** | **Definition** |
| :------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Avg Score Change Complete** | Average cumulative score change at discharge, for discharged cases with a discharge score change available. |
| **Avg Score Change In Progress** | Average latest cumulative score change for cases with at least two scored visits. Not limited to discharged cases. |
| **Score Improvement Rate** | Percentage of evaluable case-measure pairs whose latest score change moved in the clinically favorable direction. The favorable direction depends on the measure: for some, higher is better; for others, lower is better. |
| **Score Decline Rate** | Percentage of evaluable case-measure pairs whose latest score change moved in the clinically unfavorable direction. |
| **Score No Change Rate** | Percentage of evaluable case-measure pairs whose latest score change was exactly zero. |
| **MCID Achievement In Progress Rate** | Of MCID-evaluable, non-discharged case-measure pairs, the percentage whose latest score achieved MCID. |
| **MCID Achievement Completed Rate** | Of MCID-evaluable, discharged case-measure pairs, the percentage whose latest score achieved MCID. |
| **MCID Achievement at Discharge Rate** | Of discharged case-measure pairs with both evaluation and discharge scores, the percentage that achieved MCID. |
| **Avg Visits to MCID** | Average visit sequence number at which MCID was first achieved, among case-measure pairs that achieved MCID. |
## Retention
| **Metric** | **Definition** |
| :--------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Completed Rate** | Of cases discharged in the range, the percentage with a signed discharge note. **Formula: 100 × Completed discharges ÷ Discharged cases**. |
| **Self Discharge Rate** | Of cases discharged in the range, the percentage without a signed discharge note. |
| **Lost Patients** | Number of distinct active-plan-of-care patients considered lost. **Past range:** the patient is lost if there is no future Scheduled or Confirmed appointment on the same case after the range ends. **Current or future range:** the patient is lost if there is a 21-day gap without a qualifying appointment overlapping the range. Patients with no qualifying appointments are counted as lost. |
| **Auth Tracking** | Number of distinct patients requiring authorization attention. **Past range:** patients on cases with at least one authorization on file, with a Checked In or Completed visit in the range where no active authorization covered the visit date, or where the authorization had two or fewer visits remaining. Cases with zero authorizations on file are not counted. **Current or future range:** patients on open cases with an authorization expiring within the range or with two or fewer visits remaining. |
| **POC Tracking** | Number of distinct patients requiring plan-of-care attention. **Past range:** patients with Checked In or Completed visits in the range where no active plan of care covered the visit date. **Current or future range:** patients with an open, non-deleted plan of care ending within the selected range. |
| **Script Tracking** | Number of distinct patients requiring referral-script attention. **Past range:** patients with Checked In or Completed visits in the range where the referral script did not cover the visit date. **Current or future range:** patients on open cases whose referral script expires within the range. |
| **Underscheduled Patients** | Number of distinct active-plan-of-care patients whose visit count is below the expected visits from their prescribed frequency. **Past range** uses Checked In and Completed visits; **current or future range** uses Scheduled and Confirmed appointments. |
| **POC Visit Adherence Rate** | Percentage of expected plan-of-care visits represented by actual or scheduled visits, summed across overlapping plan-of-care records. **Formula: 100 × Σ(visit count) ÷ Σ(expected visits)**. Expected visits per plan of care are calculated as `prescribed visits per week × max(1, ⌊(POC days in range) / 7⌋)`. **Past range** uses Checked In and Completed visits; **current or future range** uses Scheduled and Confirmed appointments. |
## Available groupings
* **Facility**: breaks results down by individual clinic or facility.
* **Provider**: breaks results down by individual provider.
* **Measure**: available on the **Outcomes** report. Switches it to score-change and MCID metrics per functional outcome measure.
## Example use cases
* An outcomes leader tracking NPS and kiosk check-in adoption across all clinics to identify patient experience gaps.
* A clinic manager finding cases missing functional outcomes at initial evaluation, progress notes, or discharge to drive documentation compliance.
* An executive comparing completed-discharge versus self-discharge patterns by facility to monitor discharge quality.
* An operations team identifying lost, underscheduled, or plan-of-care-adherence-risk patients for outreach.
* A front-office team tracking patients who need authorization, plan-of-care, or script follow-up before their next visit.
## Behavior notes
**Six metrics change their logic based on your date range.** **Lost Patients**, **Auth Tracking**, **POC Tracking**, **Script Tracking**, **Underscheduled Patients**, and **POC Visit Adherence Rate** intentionally use different rules depending on whether the selected range is fully historical or includes today and future dates. Historical ranges look at what was already uncovered; current and future ranges look at what is about to expire. Comparing the same metric across a past range and a forward-looking range is not comparing like with like.
* **Patient Experience** NPS metrics use the survey response date, while **Kiosk Completion Rate** uses the appointment date.
* **The standard Outcomes view is case-based.** Cases must have at least one Checked In or Completed appointment in the range, but coverage checks (evaluation FO, discharge FO) and **Avg Case Visits** look across the case's full history, not just the selected range.
* **Grouping Outcomes by Measure changes the columns.** It returns score-change and MCID columns instead of the standard coverage and discharge-type columns. Cases without computed score rows for a given measure are excluded.
* **Auth Tracking's past-range path requires an authorization on file.** Cases with no authorizations are not flagged as needing attention, even when their visits are uncovered.
* **Lost Patients' past-range path considers only appointments on or after the range start** when looking for future activity. A patient with appointments before the range start but none from the range start onward is counted as lost.
# Appointment Types
Source: https://docs.athelas.com/air_admin/manage_your_practice/appointment_types
Configure appointment types, chart note sections, Scribe defaults, CPT codes, and patient-facing mappings.
### **Definitions: Chart Note Templates**
Templates are the **building blocks** of your clinical notes. Each template is a \*\*section \*\*within your Chart Note (e.g., Plan of Care, Goals, Measurements, Treatments, Medications).
You can also create **custom sections** for your own questions under Subjective, Objective, Assessment, or Plan. Templates are designed to be **general** so they can be reused across many appointment types.
### **Definitions: Appointment Types**
Appointment types are the **frameworks for your visits**. You can **mix and match templates** and their order to create the exact chart note you want for each type of appointment.
We recommend creating general Appointment Types that can be used across use-cases. E.g. A general Initial Eval note can be customized for a Hip Injury case by creating custom groups for Hip injuries within Measurements, Treatments, Interventions or Text Snippets.
### **Appointment Type Management**
You can create and manage custom appointment types, each with its own settings, clinical note structure, and optional CPT codes.
We have 16 consistent colors, making it easier for users to differentiate appointment type colors:
### **Custom Appointment Types**
* Navigate to the **Preferences** tab in the left navigation pane and open **Appointment Types**.
* Click **+ Appointment Type** in the top-right corner or click on the pencil icon to edit an existing appointment
* Enter the **Name**, **Duration**, and **Color** for the appointment type.
* Select the **sections** to include (and their order).
* You can choose to make them available for the Scribe to write into.
* For **Flowsheet**, **Services**, or **Treatments**, turn on **Is Checked for Scribe** to preselect all available service codes when a provider reviews the completed Scribe. Leave it off to start with no service codes selected.
* If you include **Measurements**, you can set default measurements to auto-populate whenever this Appointment Type is scheduled.
* (Optional) Sync duration with in-clinic time (the time spent with the patient in-clinic will be reflected on the Calendar)
* (Optional) Assign **CPT codes** that will auto-populate for this appointment type.
* Select a **default clinical note type**, then click **Create**.
* You can edit or delete appointment types from the same tab at any time.
**Note:** Sections can be either **Default** (pre-built by Athelas) or **Custom** (templates created by your practice).
**Note:** For **Clinical Note Types** beyond the Initial Evaluation, you can configure which Sections should carry over. For example, Measurements may be excluded in follow-up visits if not needed.
### **External & Internal Appointment Types**
External appointment types are what **patients** see when booking through the Patient Portal. Internal appointment types are what your **team** sees in Air. Mapping internal types to an external type lets you simplify online booking without losing the internal detail your staff relies on.
**To create or edit mappings:**
* Navigate to **Calendar Preferences**.
* Open the **Appointment Types** tab.
* Create an **External Appointment Type**, then select the **Internal Appointment Types** that map to it.
* (Optional) Choose a **default internal mapping**. This determines which internal appointment type is selected when automatic scheduling is on.
**Note:** Each internal appointment type can map to only one external appointment type.
**Example:** Map `IE Knee`, `IE Lumbar`, and `IE Lower Extremity` to a single external appointment type called `Initial Evaluation`.
See [Reserve Blocks](/air_front_desk/portal_and_online_scheduling/reserve_blocks) for how external appointment types interact with reserve-block scheduling rules.
### FAQ
**External** appointment types are shown to patients in the Patient Portal. **Internal** appointment types are shown to your staff in Air. You can map multiple internal types to one external type to simplify what patients need to choose.
No. Each internal appointment type can map to only one external appointment type.
Patients see external appointment types when booking through the Patient Portal online scheduling flow.
# Automatic Lead Creation from Faxes
Source: https://docs.athelas.com/air_admin/manage_your_practice/automatic_lead_creation_from_faxes
## Overview
Automatic lead creation turns inbound referral faxes into Lead Tracker leads without any manual data entry. When a referral fax arrives, Air scans it, pulls out the patient's details (name, date of birth, and contact information), and creates a lead linked back to the original fax.
## Getting started
Automatic lead creation is controlled per site from your faxing preferences.
1. Go to **Preferences → Administrative → Faxing**.
2. Under **Patient Lead Fax Configuration**, turn on **Enable auto lead generation from faxes**.
3. Set **Default Lead Type & Stage** to the lead type you want applied to leads created this way (for example `Fax`).
Save your changes.
Once it is enabled, no further action is needed — new referral faxes start generating leads automatically.
## Lead generation logic
To generate a lead, the automated system works through these steps:
1. **Initial scan** — every inbound fax is scanned to determine what kind of document it is.
2. **Referral identification** — if the fax contains a referral section, Air extracts the patient's **first name**, **last name**, and **date of birth**, plus **phone number** where one is available.
3. **Lead creation** — if the required fields (first name, last name, and date of birth) are all found, Air creates a lead in the Lead Tracker with:
* The Lead Type set to your **Default Lead Type**
* The lead placed in your first referral stage, ready for review
* A note recording that it was imported automatically from an inbound fax
* A link back to the original fax, so you can always trace a lead to its source document
4. **Duplicate protection** — if a referral matches the name and date of birth of a patient who already has an open case, or if a lead was recently created from another fax for the same person, Air skips creating a second lead.
Because these details come from an AI reading a scanned document, review a new lead before reaching out to the patient.
## Creating a lead manually from a fax
If the system misses a referral, or you would rather not turn the automation on, you can still create and link leads yourself:
1. Open the fax from your **Faxing** tab.
2. Use the **Create Lead** action.
3. Choose to create a new lead, or link the fax to a lead that is already in the Lead Tracker.
Leads that came from a fax show a **View Fax** action on their row in the tracker, which opens the source document.
### FAQ
No. Only faxes that Air identifies as referrals, and that carry at least a first name, last name, and date of birth, generate a lead.
Open the lead in the Lead Tracker and edit it, the same as any lead you created by hand. Check new fax-generated leads before contacting the patient.
Yes. Go to **Preferences → Administrative → Faxing** and turn off **Enable auto lead generation from faxes** at any time.
Nothing about how faxes are stored or displayed changes. This feature only adds a lead, and a link between that lead and the fax it came from.
# Billing Addendums + Retro Billing User Guide
Source: https://docs.athelas.com/air_admin/manage_your_practice/billing_addendums_and_retro_billing
This guide explains how AIR keeps your patient records, appointments, and billing encounters synchronized. These automated processes reduce manual data entry and ensure that administrative changes are reflected in your billing records (and vice versa).
This guide covers three synchronization flows that maintain data accuracy between AIR and your encounter records.
## Overview
Three automated synchronization flows keep your data consistent across AIR and your billing system:
* **Flow 1: Administrative Updates** - Changes in AIR automatically update billing encounters
* **Flow 2: Billing Addendums** - Compliant way to edit chart notes after submission
* **Flow 3: Billing Corrections** - Changes in billing flow back to AIR to keep records accurate
***
## Flow 1: Administrative Updates (AIR ➔ Encounter)
**Purpose:** Automatically updates billing encounters when you change administrative details in AIR.
**When it happens:** When you update an appointment or case (e.g., changing a provider, updating insurance, or adding a prior authorization) after a chart note has already been submitted.
**The benefit:** Your billing records stay current even if insurance information is discovered or corrected *after* the visit.
### How It Works
1. You make changes to an appointment or case in AIR.
2. If the chart note(s) are already submitted, the system:
* Checks for any active addendums (see Flow 2).
* Automatically updates the linked encounter.
### What Data Syncs
**From Appointments:**
* Provider, patient, site, facility
* Appointment dates and time spent
* Accident dates
* Workers comp information
* Prior authorizations
**From Cases:**
* Insurance information (primary/secondary/tertiary)
* Referring provider
* Supervising provider
Administrative updates will not overwrite any clinical data (notes, diagnoses, etc.) entered by a provider in the chart note.
***
## Flow 2: Post-Submission Corrections (Billing Addendums)
**Purpose:** Provides a compliant way to edit chart notes after they have been signed and submitted for billing.
**When to use:** Use this when a provider needs to correct clinical documentation or when billing needs to update coding on a finalized note.
### How It Works
**To create and finalize an addendum:**
1. **Create an Addendum:** After submission, you can create an **Addendum** and specify a **Reason**.
2. **Make Changes:** While an addendum is active (not finalized), the chart note is fully editable.
3. **Finalize (Provider Only):** To maintain compliance, only providers can finalize an addendum. This:
* Validates all clinical documentation
* Updates the encounter with all relevant changes
* Re-locks the chart note
**Note:** You can create as many addendums as needed for a single note, but only one addendum can be active at a time per chart note.
### User Impact
* **Audit Trail:** Enables corrections after submission without losing the legal record
* **One-at-a-Time:** Only one addendum can be active at a time per chart note
* **Provider Signature Required:** The provider must sign/finalize the addendum to trigger the resubmission to billing
Once an addendum is created, there is currently no "cancel" action. Ensure you are ready to make a correction before initiating an addendum to avoid leaving a chart note in an "unlocked" state.
If you only need to view data in a submitted note, use the **Open All Sections** view rather than creating an addendum just to read the contents.
***
## Flow 3: Billing Corrections (Encounter ➔ AIR)
**Purpose:** Ensures that changes made by the billing team flow backward to keep AIR records accurate.
**When it happens:** When you update encounter information from the Encounter Details page (manually or via bulk updates).
### How It Works
1. You update encounter information in the EHR system.
* **IMPORTANT:** You must filter for an individual patient to perform bulk actions.
2. The system detects if the encounter is linked to an AIR appointment.
3. If yes, the system:
* Identifies which fields changed and determines if they are "significant"
* Queues asynchronous updates to **both** the appointment and its associated case in AIR
### What Data Syncs
* Insurance information (primary/secondary/tertiary)
* Prior Authorizations (primary/secondary/tertiary)
* Referring provider
* Supervising provider
### Bulk Updates
When updating multiple encounters at once (e.g., changing billing type for 10 encounters), the system processes them in a batch and queues updates to AIR to maintain a single source of truth across the patient's history.
Because Flow 3 updates the "Source of Truth" in AIR based on EHR changes, ensure encounter edits are accurate before saving.
***
## Key Points for Users
### For Providers
* **Flow 2 (Addendums)** is your main tool for fixing submitted chart notes
* Clinical changes sync to billing automatically once you finalize the addendum
* Only providers can finalize addendums to maintain compliance
### For Billing Staff
* **Flow 1** keeps billing records current when admin data changes
* **Flow 3** ensures AIR stays accurate when you make billing corrections
* **Administrative Changes:** You may initiate addendums for administrative fixes, but a provider must sign to finalize clinical documents
***
## Best Practices
* **Addendum Safety:** Ensure you are ready to make a correction before initiating an addendum, as there is currently no "cancel" action
* **Reading Locked Notes:** Use the **Open All Sections** view to view data in submitted notes rather than creating an addendum
* **Claim Resubmission:** While the system updates the encounter data automatically, follow your standard protocol for resubmitting claims to the payer after the data has synced
* **Data Accuracy:** Double-check encounter edits before saving, as Flow 3 updates AIR based on EHR changes
### FAQ
Currently, there is no "cancel" action for addendums once they are created. To avoid leaving a chart note in an unlocked state, ensure you are ready to make a correction before initiating an addendum. If you only need to view data in a submitted note, use the **Open All Sections** view instead.
Yes, you can create as many addendums as needed for a single note. However, only one addendum can be active at a time per chart note.
Only providers can finalize an addendum to maintain compliance. This ensures that clinical documentation is properly validated before the encounter is updated and the chart note is re-locked.
From appointments: Provider, patient, site, facility, appointment dates, time spent, accident dates, workers comp info, and prior authorizations. From cases: Insurance information (primary/secondary/tertiary), referring provider, and supervising provider. **Note:** Administrative updates will not overwrite any clinical data entered by a provider.
Yes, while the system updates the encounter data automatically, you should follow your standard protocol for resubmitting claims to the payer after the data has synced.
Yes, you can update multiple encounters at once. However, you must filter for an individual patient to perform bulk actions. The system processes them in a batch and queues updates to AIR to maintain a single source of truth.
# Branding Engine
Source: https://docs.athelas.com/air_admin/manage_your_practice/branding_engine
The **Athelas Branding Engine** lets your practice set logos and preferred names for the practice and its facilities in a single central location. The engine surfaces these logos and names on all patient-facing and external surfaces so your practice maintains a consistent branding experience.
## Setting up branding
To access the Branding Engine settings, navigate to **My Practice** in the side panel, then to the **Marketing** tab.
From here, you're first directed to set up the **site-level branding**:
* **Display name** — The preferred name that appears in outbound messages, the *Sent by* field in emails, and on external-facing surfaces like the Lead Tracker landing page and the Patient Portal.
Billing PDFs and other legal documents will continue to use your **Billing Name**, set in **My Practice → Facilities**, not your display name.
* **Banner image** — A 4:1 ratio image that appears in places like the header of PDFs, the bottom of outbound emails, and above fields and forms patients fill out.
* **Hero image** — A large 1:1 ratio image that appears as the detail image on website surfaces like the Patient Portal and the Lead Tracker landing page.
* **Logo image** — A smaller 1:1 ratio image used as the icon in browser tabs and smaller logo locations.
When uploading logos, you can zoom in or out and adjust the positioning of the image to achieve the desired appearance.
As you update the fields and logos, the Marketing tab shows live examples of how your branding will appear in surfaces like the Patient Portal landing page and an example PDF.
## Facility-level branding
If specific facilities have their own branding or naming needs, you can adjust **facility-level branding** through the **Facility** tab. The Facility tab becomes accessible once the initial site-level branding has been saved.
To configure facility-level branding, select the desired facility in the dropdown and edit the facility-level settings.
Any unedited fields on a facility default to the site-level setting. For example, if you don't upload a hero image for a facility, it inherits the site-level hero image.
## Branding locations
The uploaded logos and preferred names appear across a variety of patient-facing surfaces.
### Billing PDFs
### HEP PDF
### Lead Tracker landing page
### Patient Portal
**Portal sidebar**
**Portal invitation link**
### Online scheduling
### Kiosk
Your logo and display name appear on the kiosk welcome screen and throughout the self-service flow. See [Check-in Patient with Kiosk](/air_provider/check_in_a_patient/kiosk_user_guide).
### Patient outreach
**Text**
**Email**
### FAQ
**Display Name** is the patient-facing preferred name used in outbound messages, email *Sent by* fields, the Patient Portal, and the Lead Tracker landing page. **Billing Name** is the legal name on billing PDFs and other legal documents — that one is set under **My Practice → Facilities** and is not affected by Branding Engine changes.
* **Banner image:** 4:1 (wide).
* **Hero image:** 1:1 (square, large).
* **Logo image:** 1:1 (square, smaller — used as a browser-tab icon).
When uploading, you can zoom and reposition the image to fit the target aspect ratio.
Yes. Once you save your site-level branding, the **Facility** tab becomes available. Select a facility from the dropdown to override individual fields. Any field you leave blank inherits the site-level value — so you can override only the pieces that differ (for example, just the display name) without re-uploading every image.
Across patient-facing surfaces: billing PDFs, HEP PDFs, the Lead Tracker landing page, the Patient Portal (sidebar and invitation link), online scheduling, the kiosk, and outbound text and email outreach. The live preview on the Marketing tab shows examples of the key surfaces as you make changes.
No — only the assets you have on hand. The Facility tab inherits unset fields from the site level, and any patient-facing surface without a configured asset falls back to the default Athelas branding. You can iterate and add the remaining images over time.
# Set your Calendar Settings
Source: https://docs.athelas.com/air_admin/manage_your_practice/calendar_settings
Configure appointment types, calendar preferences, and provider settings to customize how your schedule is displayed and managed.
### Calendar Timings
**Calendar Timings:** Set Calendar start and end times in **Preferences → Calendar → Start & End Times.**
By default, Calendars display **6:00 AM – 8:00 PM**. This applies at the site level, meaning all Facilities follow the same schedule unless otherwise configured.
**Unique timings for specific facilities:** To set different timings for select Facilities, select the "Facility" option.
On the table below, selecting a Facility displays its start & end time settings on the right. Multiple Facilities can be selected and updated at once. Changes are applied immediately to the Calendar.
### Calendar Intervals
\*\*Calendar Interval: \*\*Set the duration of each time block in the calendar(ranges from 5min - 30min)
### Calendar Refresh Mode
**Calendar Refresh Mode:** Choose how frequently your Calendar updates:
* **Standard Refresh Mode:** Updates only when the browser is refreshed.
* **Real-Time Refresh Mode:** Updates instantly. For example, if front desk staff create, cancel, edit, or check in appointments, the Calendar reflects the changes immediately.
### Calendar Settings
You can update the following from the **Preferences** Tab on the left navigation bar:
| **Use High Contrast Mode** | When enabled, calendar elements will use higher contrast for better accessibility and readability. |
| :--------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------- |
| **Open Calendar Tooltip on Hover** | When enabled, the calendar tooltip will open on hover. |
| **Show Supervising Provider in Tooltip** | When enabled, the calendar tooltip will display the supervising provider's name if available. |
| **Show Facility Name in Calendar Block** | When enabled, the facility name will be displayed on appointment blocks in the calendar when multiple facilities are selected. |
# Chart Note Templates
Source: https://docs.athelas.com/air_admin/manage_your_practice/chart_note_templates
### **Definitions: Chart Note Templates**
Templates are the **building blocks** of your clinical notes. Each template is a \*\*section \*\*within your Chart Note (e.g., Plan of Care, Goals, Measurements, Treatments, Medications).
You can also create **custom sections** for your own questions under Subjective, Objective, Assessment, or Plan. Templates are designed to be **general** so they can be reused across many appointment types.
### **Definitions: Appointment Types**
Appointment types are the **frameworks for your visits**. You can **mix and match templates** and their order to create the exact chart note you want for each type of appointment.
We recommend creating general Appointment Types that can be used across use-cases.
E.g. A general Initial Eval note can be customized for a Hip Injury case by creating custom groups for Hip injuries within Measurements, Treatments, Interventions or Text Snippets.
### Create custom chart note Templates
* From the left navigation menu, go to **Utilities → Templates**.
* On the Templates page, search or filter to find existing templates.
* To create a new template, click **+ Create New Template** in the top-right corner.
You will be taken to a configuration page where you can:
* Title your template at the top.
* Drag and drop components from the left-hand panel to the right to build your template.
* Once your form is complete, select the type of template (EHR Chart Note or Patient Intake Form) and click **Save**.
**Components available include:**
Ask a question with one selectable answer.
Accepts short, typed responses.
Ask a question with multiple selectable answers.
Accepts longer, free-text responses.
Provides a binary choice.
Accepts numeric input.
Collects a rating (e.g., 1–5 scale).
Displays responses in a table format, with columns added using the **+** button.
Accepts a date input.
Only available for patient intake forms (not EHR templates).
### Add Custom Compliance checkmarks
**How to create a Compliance Checkmark**
* Go to **Utilities → Templates** → open the template you want (or click **+ Create New Template**).
* Locate (or add) a question where you want the checkmark to apply. Compliance checkmarks can be configured for **Short Answer** and **Paragraph** type questions in templates.
* Click **+ Add Trait** → Name the checkmark
* Add a **Yes/No** prompt that states the requirement you want to verify, e.g.:\
“**Does the text list prior medications?**”
* Click **Save**
* As providers fill out notes, the system will automatically check off each compliance requirement when the information is detected.
**Examples of Compliance Traits**
You can create checkmarks for traits such as:
* **Symptoms** – Does the note list the patient’s symptoms?
* **Medications** – Does the note mention prior or current medications?
* **Date of Onset / Chronicity** – Does the note state when the condition began or whether it is chronic?
* **Mechanism of Injury** – Does the note describe the physical forces that caused the injury?
* **Prior Level of Function** – Does the note include details of the patient’s baseline (e.g., “walking 10,000 steps per day before injury”)?
* **Body Part Injured** – Is the affected body part identified?
* **Functional Limitations** – Does the note describe what the patient is unable to do (e.g., “unable to walk without assistance”)?
### Create Custom Preferences
**Measurement Preferences**
Organize measurements into intuitive collections of Categories (\_e.g. Range of Motion, Strength) \_and Groups (e.g., *Ankle ROM*).
* Add, edit, or delete measurements and groups.
* Assign measurements to groups.
* Nest groups up to 2 levels deep.
You can view, add, configure, and delete measurements individually.
* Open **Preferences** from the left navigation bar
* Click on the **Measurements** tab
* Click **Add New Measurement** to create a new measurement and configure its response fields.
**Measurements can be displayed in two formats:**
* **Text Type:** Fields appear as single-line entries (best for a few simple measurements).
* **Table Type:** Fields are displayed in a table format (best when comparing bilateral values, e.g., left vs. right knee).
**Measurement Groups:** Measurements can be grouped by intuitive groups.
Click the square icon next to Add Measurement to create a group of related measurements. Enter a group name, category and body part (optional). Assign the individual measurements.
**Note:** You can also create sub-groups to the group of measurements.
**Treatment Preferences**
* From the left navigation menu, go to **Settings → MyPractice**.
* Select **Treatments** from the top bar.
* Add new treatments or configure existing ones as needed.
### Add Custom Text Snippets
You can view, add, customize, and delete text snippets.
* Open **Preferences** from the left navigation bar
* Click on the **Text Snippets** tab
* Click **Add Text Snippet** to create a new snippet.
* You can also create custom group of text snippets.
# Conditional Forms
Source: https://docs.athelas.com/air_admin/manage_your_practice/conditional_forms
Conditional forms let practices dynamically show questions in intake and post-visit forms based on a patient's responses to other questions. This lets a single form serve multiple purposes, gather additional detail around specific areas, or gate information based on responses.
## Accessing conditional forms
Conditional forms are created in the **Templates** section under **Utilities**.
Click **+ Create New Template** to create a new form with conditional questions.
## Creating a conditional form
Conditional questions can be added after any supported trigger question. Any question that follows a supported question type shows a **Conditional Question** checkbox. Once checked, select the trigger question and the trigger response that should reveal the conditional question.
Currently, only **Single-Choice** and **Yes/No** question types are supported to trigger a conditional question.
Once a question is marked as conditional, it won't appear in the patient's form until the correct response is given to the trigger question.
## Filling out conditional forms
When patients receive a conditional form, they access it the same way as any other form. Conditional forms can be sent through **Outreach Flows**, **Patient Workflows**, or a specific appointment's intake forms.
After authenticating into the form, patients fill it out normally. Once they select a conditional response to a trigger question, the new conditional questions appear automatically. Changing their response to a non-conditional response — or to a different conditional branch — updates which questions appear.
## Reviewing conditional form responses
Conditional form responses appear in the patient's **Attachments** section like any other form response. The PDF of the patient's responses includes all questions, but only shows responses to the questions that were surfaced to the patient.
### FAQ
Only **Single-Choice** and **Yes/No** questions can act as trigger questions. A conditional question can be added after any question that follows one of these supported types.
Conditional forms are sent the same way as any other form — through **Outreach Flows**, **Patient Workflows**, or a specific appointment's intake forms.
The form updates as they answer. Selecting a non-conditional response, or a different conditional branch, changes which conditional questions appear.
The PDF includes every question in the form, but only shows responses to the questions that were actually surfaced to the patient.
# Custom Orders
Source: https://docs.athelas.com/air_admin/manage_your_practice/custom_orders
Custom Orders let you build reusable order-letter templates, then generate patient-specific orders quickly with prefilled clinical and demographic details.
## What are Custom Orders?
Custom Orders help your team standardize frequent order workflows.
* Build reusable templates for order letters.
* Add variables that auto-populate with live data.
* Generate finalized custom orders from those templates.
Variables can automatically pull data such as **Patient**, **Provider**, **Facility**, and other order details when the order is created.
## Create custom order templates
Use the template builder to design and save reusable formats your team can use repeatedly.
Arcade demo: Create and save a reusable custom order template.
**To create a template:**
1. Open the **Custom Orders** template area from your admin workflow.
2. Start a new template in the rich text editor.
3. Add your standard clinical language and structure.
4. Insert variables for fields you want auto-filled at order creation.
5. Save the template with a clear, searchable name.
## Create a custom order or letter
After templates are set up, create a patient-specific order from the Orders workflow.
Arcade demo: Create and complete a custom order or letter from the Orders page.
**To create a custom order:**
1. Open **Orders** and click **+Order**.
2. Select **Custom** under **Order Type**.
3. Choose the appropriate template.
4. Confirm order details, including patient and provider context.
5. Review the generated letter and send or finalize.
✨**Smart Tip:** Keep template names specific to the use case (for example, by specialty, referral purpose, or recipient type) so staff can find the right template quickly.
### FAQ
A **template** is the reusable format. A **custom order** is the patient-specific output generated from that template with auto-filled values.
Common variables can pull values like **Patient**, **Provider**, and **Facility** details. Available variables depend on the order context.
Yes. Templates accelerate drafting, but you should review and update the generated content before sending to ensure it matches the current patient scenario.
# EHR Alert Rules User Guide
Source: https://docs.athelas.com/air_admin/manage_your_practice/ehr_alert_rules
EHR Alert Rules help you show site-specific guidance directly in chart note sections when an appointment matches conditions that you define. You can use these rules for payer reminders, documentation prompts, and compliance notes without blocking provider workflows.
## Before You Start
* Alert Rules are **informational only** and do not block **Sign & Submit**.
* Each site can have up to **50 active** rules.
* Rules apply at the site level and can appear for any matching appointment.
## Access Alert Rules
To open Alert Rules:
1. Go to **EHR Preferences**.
2. Open the **Alert Rules** tab in **General Settings**.
## Understand the Alert Rules Table
The table shows all configured rules for your site. For each rule, you can review:
* **Title**: Rule name.
* **Conditions**: A **See Conditions** control to inspect matching filters.
* **Display Locations**: Chart note sections where the alert can appear.
* **Active Toggle**: Whether the rule is currently evaluated.
You can also use pagination and count indicators to track total rules.
## Create a New Alert Rule
To create a rule:
1. Click **Create Alert Rule**.
2. Enter a **Title** (required).
3. Enter **Content** (required). Multi-line text is supported.
4. Configure at least one **Condition** (required).
5. Choose one or more **Display Locations**.
6. Click **Create**.
### Available Condition Types
| **Condition** | **How It Filters** |
| :----------------------- | :-------------------------------------------------------------------------------------- |
| **Insurance Companies** | Matches appointments where the patient primary insurance is one of the selected payers. |
| **Clinical Note Types** | Matches only selected note types (for example, Initial Evaluation or Progress Note). |
| **Appointment Types** | Matches only selected appointment types. |
| **Facilities** | Matches appointments scheduled at selected facilities. |
| **Provider Credentials** | Matches appointments where the rendering provider credential is selected. |
### How Matching Logic Works
* **Within one condition type (OR):** Multiple selected values match if any one value matches.
* **Across condition types (AND):** Every populated condition type must match.
* **Empty condition type:** Treated as no filter for that dimension.
✨**Smart Tip:** Start with one high-impact payer or note-type rule first, then expand conditions after you confirm the behavior in live chart notes.
## Edit, Activate, or Delete Rules
### Edit a Rule
1. Click the **Edit** icon on a row.
2. Update title, content, conditions, or display locations.
3. Click **Save**.
Updates apply on the next chart note load for matching appointments.
### Activate or Deactivate a Rule
* **Active:** Rule is evaluated and can display alerts.
* **Inactive:** Rule is preserved but not evaluated.
The 50-rule cap applies to **active** rules only. If you already have 50 active rules, you must deactivate one before activating another.
### Delete a Rule
1. Click the **Delete** icon on the rule row.
2. Confirm deletion.
Deletion is permanent from the UI.
## How Alerts Appear in Chart Notes
When a provider opens a chart note, the system evaluates active rules against appointment context, including insurance, note type, appointment type, facility, and provider credential.
Matching alerts appear as banner callouts in configured chart note sections.
Each banner includes:
* An info icon
* Rule title
* Rule content
* A dismiss (**X**) action
### Alert Behavior
* Alerts are non-blocking and do not prevent **Sign & Submit**.
* Dismissing an alert hides it for the current session only.
* Dismissed alerts reappear on the next chart note load if conditions still match.
* If the alert service fails, chart note loading still succeeds.
## Display Locations and Feature Availability
Core locations are always available:
* **Subjective**
* **Objective**
* **Assessment**
* **Plan**
* **Other**
* **Notarize**
Additional locations depend on enabled features (for example **Vitals**, **Medications**, or **Clinical Results**).
## Common Use Cases
* **Payer-specific billing guidance:** Surface reminders for selected insurance companies in **Billing Details**.
* **Initial evaluation prompts:** Show required coding reminders only on **Initial Evaluation** notes.
* **Credential-specific compliance alerts:** Display supervision reminders based on provider credential.
* **Facility-specific workflows:** Add site-specific instructions for selected facilities.
### FAQ
Your site can have up to **50 active** rules. Inactive rules do not count toward the active limit.
No. Alert Rules are informational and do not block **Sign & Submit**.
Not currently. Rules are site-level and appear for any appointment that matches your configured conditions.
Dismissing an alert hides it for the current session. It can appear again the next time the chart note is opened if conditions still match.
Some locations are feature-dependent and only appear when the corresponding feature is enabled for your site configuration.
# Set your Fax Details
Source: https://docs.athelas.com/air_admin/manage_your_practice/fax_admin
You can update or manage fax numbers for your site
* Go to **Insights → Utilities → Faxing → Settings**.
* From here, sites can:
* **Add new fax numbers** by clicking on the + Add Number on the top right of the page. Add the fax number, description, facility, provider, status and fax method for each one.
* **Edit existing fax numbers** if they change.
For faxes sent to **external providers**, fax numbers are pulled from the **NPI registry**. If this information is incorrect, sites can **override the auto-pulled number** by entering the correct one manually.
**Note:** Always double-check the provider’s fax number before sending important documents to ensure accuracy.
# Inbound Lead and Referral Tracker
Source: https://docs.athelas.com/air_admin/manage_your_practice/lead_tracker
## Overview
The Lead Tracker gives you a structured way to handle inbound leads by breaking the process into stages and sub-stages. You can see where every lead sits in the pipeline and what has to happen to move it forward. Stages, sub-stages, and lead types are all configurable, so the tracker can follow the workflow your practice already runs.
## How the Lead Tracker helps
1. **Improved organization**: Sorting leads into stages and sub-stages keeps lead management systematic. Fewer leads fall through the cracks, and each one has an obvious next action.
2. **Full customization**: You configure your own stages, sub-stages, and lead types, so the tracker matches how your practice actually takes referrals.
3. **Increased efficiency**: Because you can move leads between stages and edit their details as you go, the pipeline stays current instead of drifting out of date.
4. **Data-driven insights**: Tracking leads and their outcomes produces conversion data you can act on — which sources convert, and where leads stall.
## Key concepts
| **Term** | **Meaning** |
| ------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Stage | A phase a lead moves through in your pipeline. Stages appear as the tabs across the top of the tracker. |
| Sub-stage | A step within a stage, for finer-grained tracking. Each stage defines its own sub-stages, each with a name and a color. On a lead itself this field is labeled **Status**. |
| Lead Type | Where a lead came from — the source or reason it entered the system. Configured per site (for example Friend / Family, Website, Fax, Online Scheduling). |
| Lead | One potential patient's record: their details, plus the metadata that tracks the lead — Lead Type, current stage, and status. |
| Reporting Category | Groups stages for KPI reporting. Each stage is tagged `Converted`, `In Progress`, or `No Category`. |
| Treatment Declined | Marks a lead that has declined treatment and moves it out of the active pipeline into its own bucket. |
## Configuring the Lead Tracker
### Lead stages
Open **Tracker Settings** to manage stages and sub-stages. Add a stage with the `+` button; drag to reorder, rename inline, or delete.
Click a stage to configure:
* **Columns** — show, hide, and reorder the table columns for that stage. The panel is titled after the stage you selected, for example **Outreach Columns**.
* **Sub-stages** — add as many as you need per stage, each with its own name and color; reorder as needed.
* **Reporting Category** — defaults to `No Category`; set it to feed the KPI metrics (see [Lead Tracker reporting](#lead-tracker-reporting)).
Click **Save Changes** to apply. Edits are not saved until you do.
### Lead Types
In **Tracker Settings → Lead Types**, use **+ Add New** to create a type, the pencil icon to rename one, and the delete icon to remove one. Click **Save Changes** to apply.
## Leads
**Beyond the basics:** leads also capture patient address and insurance. When a patient or appointment is created during an outbound call tied to a lead, the result is written back automatically, and patient linking works across every appointment-creation flow.
### Creating a lead
Click **+ New** to open the lead drawer, fill in the fields below, then click **Save**. The new lead appears in the table.
* **Patient info** — name, phone, date of birth, plus address and insurance.
* **Lead Type and facility** — pick from your configured lead types and the site's facilities.
* **Lead Stage and Status** — the status options depend on the stage you select.
* **Optional** — Referring Medical Provider, Initial Contact Date, Last Contact Date, and Staff Contact.
### Modifying a lead
Click the **pencil** icon on a row to edit that lead's referral details and progress, then click **Save**.
Changing the **Lead Stage** clears the **Status**, because each stage defines its own sub-stages. Reselect a status before saving.
### Linking a lead to a new patient
Edit the lead with the **pencil** icon, click **Create Patient**, confirm, then click **Save**. A linked-patient link appears on the row and opens that patient's demographics in a new tab.
### Linking a lead to an existing patient
As you fill in a lead's name and date of birth, the drawer checks your records. If it finds a likely match, it shows a **This patient might already be in your system** panel with the matching profile — select that profile to link the lead to that patient, then click **Save**.
You can also start from the lead itself: edit it, click **Link Patient**, search by name, select the patient, then click **Save**.
### Marking a lead as Treatment Declined
Edit the lead, click **Treatment Declined** at the bottom-right of the drawer, choose a reason (with optional details), and click **Submit**. Declined leads move to the **Declined Treatment** bucket. You can undo this.
### Filtering and searching leads
Use the filter and search controls at the top of the tracker to narrow the list. You can filter by:
* **Stage** — show only the leads currently in a selected stage.
* **Sub-stage** — drill into a specific sub-stage for finer granularity, for example to see how many leads sit at each step within a stage.
* **Responsible Staff Member** — show the leads assigned to a particular team member.
* **Referring Provider** — filter by the provider who referred the lead.
* **Patient name search** — type a name to locate one lead quickly.
## Lead Tracker reporting
Assigning Reporting Categories to your stages turns the tracker into a source of KPI metrics.
### Configuring a Reporting Category for a stage
In **Tracker Settings**, open a stage and set its **Reporting Category** to `Converted`, `In Progress`, or `No Category` (the default). Click **Save Changes**.
### KPI metrics and downloading the report
Go to **Performance Analysis → Lead Tracker**, set the date range (it defaults to the past week), and click the **Overall Conversion** card for the detailed breakdown. You can export the metrics as **CSV**.
The metrics shown, overall and per facility:
* Total leads created and total converted (leads in stages tagged `Converted`), with a conversion percentage.
* Therapy Refused count and percentage (leads marked Treatment Declined).
* In Progress count and percentage (leads in stages tagged `In Progress` or `No Category`).
For more on lead and referral reporting, see [EHR Reports](/air_admin/analyze_your_reports/ehr_reports).
## Custom landing page
You can also build a custom landing page to host on your website. Forms that potential patients submit there feed straight into the Lead Tracker.
### Configuration
Open **Lead Tracker → Tracker Settings → Landing Page**. Toggle **Landing Page Active Status** on, configure the required fields (default stage, lead type, logo, heading, and sub-heading), then click **Save Changes**.
### External website
The public form, hosted on the Athelas Leads site, shows the logo, header, and sub-header you configured. Patients fill in name, phone, email, and date of birth, pick a preferred facility, add an optional message, then **Submit**.
### Submission success page
After submitting, patients see a full thank-you page rather than a toast with the form still on screen, which also improves conversion tracking on the "Request an Appointment" flow.
## Automatic lead creation from faxes
Air can classify inbound faxes and, when one is a referral, create a lead automatically and link it back to the originating fax. You enable this per site.
For setup, the extraction logic, and the manual fallback, see [Automatic Lead Creation from Faxes](/air_admin/manage_your_practice/automatic_lead_creation_from_faxes).
### FAQ
It decides which KPI bucket a stage's leads land in on **Performance Analysis → Lead Tracker**. Leads in stages tagged `Converted` count toward the conversion percentage; leads in stages tagged `In Progress` or left at `No Category` both count as in progress.
Each stage defines its own sub-stages, so a status from the previous stage would not be a valid option on the new one. Reselect a status before you save.
Yes. Marking a lead Treatment Declined moves it into the **Declined Treatment** bucket, and the action can be undone.
No. A submitted form creates a lead directly, using the default stage and lead type you set on the **Landing Page** tab.
# Create Patient Workflows
Source: https://docs.athelas.com/air_admin/manage_your_practice/patient_workflows
Create patient intake forms, automate patient communications, and track workflow delivery in Air.
### Create a Patient Intake Form
Navigate to the **Templates** tab under **Utilities** in the left navigation pane.
View your forms, duplicate and edit them.
You can also duplicate a global Patient Intake form template. The copy can be edited, while the original global template remains read-only.
Select from the drop down on the top left to move between EHR (chart note templates) and Patient Intake form templates.
To create a new intake form:
1. Click **+ Create New Template** in the top-right corner.
2. Drag and drop **components** from the left panel to the right to add fields.
3. Each component can be marked as required, duplicated, or deleted. The type of component is displayed in the top-right corner of the field.
4. Once your form is built, give it a name on the top left and click **Save** on the top right. Be sure to select **Save as Patient Intake Template** so it’s stored as a patient intake form.
5. You can also choose to show the intake form within the chart note by clicking on the checkbox on the top right.
**Tip:** You can add text blocks to add headings or legal clauses to the form. Add Signature Blocks to require a signature / consent from the patient.
**Note**: Set options within the Preferences tab to allow providers to edit patient intake forms directly within the chart note. This will not replace the original form (in the patient attachments) but will allow modifications to be made in the chart note.
We have a **three pre-built forms with capabilities for patients to upload content** that will write back into Air.
* Patient Update: This will auto-fill information within the Patient's Profile page in the Demographics section
* Insurance Update: This will auto-fill information within the Patient's Profile page in the Demographics section. Patients can share a photo of their insurance card which will auto-create an attachment available in the patient profile.
* Paperwork upload: Patients can share any documents they would like (e.g. diagnostic tests, etc.) which will auto-create an attachment available in the patient profile.
* **Note:** These forms cannot be edited, even if an edit option appears.
**Components available include:**
Ask a question with one selectable answer.
Accepts short, typed responses.
Ask a question with multiple selectable answers.
Accepts longer, free-text responses.
Provides a binary choice.
Accepts numeric input.
Collects a rating (e.g., 1–5 scale).
Displays responses in a table format, with columns added using the **+** button.
Accepts a date input.
Only available for patient intake forms (not EHR templates).
### Create a Patient Flow
You can automate the patient intake process through **Patient Flow**.
**Create new patient flows:**
* Click **+ Add New Workflow.**
* On the Workflows page, name your workflow and configure the rules for when intake forms and reminders should be sent.
* At the top of the page: Name your workflow and configure specifications for when intake forms and reminders should be sent. **Specifications include:**
* Appointment Types – Define which appointment types trigger the workflow.
* Appointment Reasons – Specify applicable reasons.
* Patients – Choose which patients receive the workflow (useful for testing with a single test patient).
* Facilities – Choose which facilities are included.
* Providers – Restrict the workflow to certain providers.
* Appointment Insurances – Require specific insurance types.
* Minimum/Maximum Age – Set age limits for eligibility.
* To send intake forms immediately when an appointment is created, check **Send Immediately on Appointment Creation.**
* Select delivery methods: **Email** and/or **Text.** Both use the same customizable message.
* Use the **Message Preview** at the bottom to confirm formatting. Always test with a test patient to avoid errors.
**✨Smart Tip:** Hover over the “i” icon in the **Message Templates** section to see dynamic fields (e.g., `patient_name`) that auto-fill with patient-specific data.
### Create an Appointment Reminder
Appointment reminders can be configured to send up to **three times** (in addition to any immediate sends). You can set how many **days/hours before the appointment** reminders should be delivered.
**Note:** Reminders are queued at midnight each day.
* If you create an appointment for the next day, a reminder set for “1 day before” will not send.
* However, a reminder set for “1 hour before” will send successfully.
### Review Status of Appointment Reminders / Intake Forms
Once you create the workflows, you can track the status of messages sent to patients for reminders or patient intake forms
**1. Review from Patient Workflows Tab**
Navigate to Patient Workflows within the Automation section on the left navigation pane. Click on \*\*Upcoming Messages Today \*\*or \*\*Sent Messages Today \*\*to review the status.
You can view the patients, delivery status of the message, date & time message was scheduled, date & time of appointment and appointment type. You can also filter the table as required.
If a message is not delivered or failed to delivered the status and reason will be shown when you hover over the phone or email icon.
**2. Review from Calendar Appointments**
Review the status of Reminders / Forms from the specific appointment details on the Calendar.
### Send Text Blasts to All Patients
The **Text Blast** page allows you to create reusable templates and send one-off mass texts with dynamic information tags, so each patient sees details personalized specifically for them.
**Note**: Text blasts are one-way only, patients will not be able to reply back these messages.
* Navigate to the Text Blast page within Automation on the left navigation pane. Click **Create New Text Blast.**
* Enter a descriptive name for your blast.
* Choose recipients. Leaving a field blank means “all.”
* Compose your message. To add dynamic fields, enclose each variable in `{brackets}` and replace spaces with underscores. Example: `Hi {patient_name}!`
* Click **Preview Text Blast** to review: Message text, Number of recipients, Estimated cost
* Language translations: Patients receive texts in their preferred language; Default is English if none is listed.
* Once confirmed, click **Send.** Depending on the number of recipients, sending may take a few minutes. The blast will then appear in the main page log.
**Each logged blast displays: Delivered** (successful), **Sent** (in progress), **Failed** (undelivered). Hover over *Failure Reason* to see details (e.g., landline numbers cannot receive texts). You can also download a report for spreadsheet review.
Patients receive a personalized text with their details (e.g., name, facility). They may reply **Stop** to opt out of future texts, reply **Unstop** to opt back in.
\*\*Note: \*\*Blast messages are limited to 2000 patients only.
# PDMP Registration
Source: https://docs.athelas.com/air_admin/manage_your_practice/pdmp_registration
Prescription Drug Monitoring Program (PDMP) access lets your prescribers pull a patient's controlled-substance dispensing history from the state registry. Access is granted by each state's PDMP administrator through **Bamboo Health Customer Connect**, so you register on Bamboo Health's site rather than in Air. Once the state approves your organization, Bamboo Health issues the credentials that connect the PDMP to Air.
State approval takes an estimated **2–4 weeks**. Start this registration well before you need PDMP access to be live.
## Before You Start
Gather the following before you open the order form:
* Every **state** where your organization has facility locations. Multi-state organizations register for all of their states in a single application.
* The number of hospitals, pharmacies, provider offices, pharmacists, and qualified prescribers **your organization owns** — not the number you work with.
* Your organization's corporate address and website.
* Your software vendor name: **Commure Inc DBA Athelas**.
## Create a Customer Connect Account
**To create your account:**
1. Visit [**connect.bamboohealth.com**](https://connect.bamboohealth.com).
2. Click **Create an Account** in the top right.
3. Follow the prompts to set your login credentials.
## Complete the Order Form
The order form is an eight-step wizard: **Profile → Organization → Vendor → Product Options → Billing → Review → Agreements → Complete**. You can save your progress and return later, and required documents (such as the PMP Gateway Licensee Profile and the EULA) appear inside the workflow as you reach them.
### Profile
Enter the contact details for the person managing this registration. Your entries here do not change your Customer Connect login information.
### Organization
Enter your organization's name, type, corporate address, and website.
Under **General Information**, enter the number of hospitals, pharmacies, provider offices, pharmacists, and qualified prescribers **your organization owns**. Bamboo Health passes these counts to the state PDMP administrator as an estimate of how many people will use the PDMP.
In **Facility Locations**, select every state in which your organization has facilities. Customer Connect uses this list to decide which products, pricing, and state-specific questions to show you on the next steps.
### Vendor
Set **Primary Software Vendor** to **Commure Inc DBA Athelas**. Leave **Primary Software Version** blank, and answer **Do you wish to integrate with multiple vendors?** based on whether you use another prescribing system alongside Air.
### Product Options
Customer Connect lists the products and pricing available for each state you selected, then asks the state-specific questions those PDMPs require — for example, whether your organization participates in a state health information exchange. Choose how many prescriber and pharmacy licenses you want in each state.
**Note:** Product options and pricing differ by state, and access is still subject to approval on a per-state basis.
### Billing and Review
Check the order summary before you submit. States that fund their PDMP program cover the licensing fees, so those lines show no charge; non-funded states bill the per-prescriber fees to your practice.
## Non-Funded States
You can purchase PDMP services for non-funded states during registration unless a custom onboarding process prohibits it. In these states, providers pay the licensing fees.
| **State** | **Funding status** |
| :-------------------- | :------------------------------------------------------------------------------------------ |
| **California (CA)** | Non-funded — providers pay |
| **Colorado (CO)** | Non-funded — providers pay |
| **Hawaii (HI)** | Non-funded — providers pay |
| **Kentucky (KY)** | Non-funded — providers pay |
| **Maryland (MD)** | Non-funded — providers pay |
| **Mississippi (MS)** | Non-funded — providers pay |
| **Pennsylvania (PA)** | Non-funded — providers pay |
| **Rhode Island (RI)** | Non-funded — providers pay |
| **South Dakota (SD)** | Non-funded — providers pay |
| **Texas (TX)** | Historically non-funded, but state-funded access may now exist — confirm with Bamboo Health |
| **Utah (UT)** | Non-funded or limited — providers pay for PMP data |
| **Washington (WA)** | Non-funded — providers pay |
| **Wyoming (WY)** | Non-funded — providers pay |
**Note:** This list reflects funding as of 2026. Customer Connect shows the funding and products actually available for each state as you complete the order form, so treat the form as the source of truth.
## Credential Issuance
After you submit the order form, Bamboo Health sends a PDMP query request to each state's PDMP administrator. Your account stays **pending** until the state finishes its approval.
Once approved — an estimated 2–4 weeks — credentials are issued to your EHR integration partner (Air) or to the designated health-entity contact for your organization. Which one receives them depends on the integration agreements already in place.
### FAQ
Plan for **2–4 weeks** from submission. Approval is handled by each state's PDMP administrator, not by Bamboo Health or Athelas, so the timeline is outside Athelas's control. Submit the order form as early as you can.
No. Select every state on the **Facility Locations** field of the **Organization** step, and Customer Connect builds one application covering all of them. Each state still approves your organization separately, so states may go live at different times.
Enter **Commure Inc DBA Athelas** as the **Primary Software Vendor**. You can leave **Primary Software Version** blank.
It depends on the state. Most states fund their PDMP program and cover the licensing fees, which show as no charge on the order summary. In non-funded states, providers pay the per-prescriber fee. Customer Connect shows the exact cost for each state before you submit.
No. Enter only the hospitals, pharmacies, provider offices, pharmacists, and qualified prescribers **your organization owns**. Do not count organizations you refer to or partner with.
Yes. Customer Connect saves your progress, so you can leave the order form and return to it. Nothing is sent to the state PDMP administrator until you submit.
# Plan of Care Tracking
Source: https://docs.athelas.com/air_admin/manage_your_practice/plan_of_care_tracking
The Plan of Care Tracking feature helps your practice maintain Medicare Part B compliance by automatically tracking POC certifications and recertifications. The system ensures all Plans of Care are signed by the referring physician within required timeframes and alerts staff when action is needed.
### **Overview**
**Key benefits of POC Tracking:**
* **Automated Compliance Tracking:** Never miss a certification deadline.
* **Risk Mitigation:** Reduce claim denials due to missing or late POC signatures.
* **Real-time Visibility:** See all POC statuses at a glance from a single dashboard.
* **Audit Trail:** Complete documentation history for compliance audits.
* **Workflow Support:** Streamlined signature collection and follow-up.
### **Medicare Compliance Requirements**
**Initial Certification — 30-Day Rule**
The Plan of Care must be signed and dated by the referring or ordering physician within **30 days** of the initial evaluation appointment date (date of service).
> **Example:** If a patient's initial evaluation is on January 15th, the POC must be signed by February 14th.
**Recertification — 90-Day Rule**
POCs must be recertified every **90 days**. This timeline is calculated from the initial evaluation date of service or the date of the previous recertification.
> **Example:** If the initial evaluation was on January 15th, recertification is due on April 15th.
The 30-day clock starts from the **appointment date** of the initial evaluation (date of service), not when documentation is finalized or the claim is submitted.
### **Dashboard Overview**
The POC Tracking dashboard displays all Plans of Care grouped by status. Access it from the **Plan of Care Tracking** section in Air.
**Status Tabs**
| **Tab** | **Description** |
| :--------------------- | :-------------------------------------------------- |
| **All** | Every POC currently being tracked |
| **Not Sent** | POCs created but not yet sent to the physician |
| **Awaiting Signature** | POCs sent to the physician, waiting to be returned |
| **Due Soon** | POCs unsigned for 20–30 days (approaching deadline) |
| **Overdue** | POCs exceeding 30 days without a signature |
| **Certified** | POCs successfully signed by the physician |
**Filter Options**
* **Patient Filter:** Search for a specific patient's POC.
* **Phase Filter:** Toggle between **Initial Eval Certification** and **Recertification** phases.
* **Custom Filters:** Filter by referring provider, facility, payer, or patient.
**Table Columns**
Patient Name, Case, Status, Referring Provider, Payer, Exempt, Start Date, End Date, Frequency & Duration.
Hover the contact icon next to a **Referring Provider** name to see that physician's phone and fax number without opening the case.
At the end of each row, three icons give quick access to that case's **Notes**, the **edit** (pencil) view, and its status **history**.
A case that has been discharged/archived shows a small archive icon next to its name in the **Case** column, instead of a separate status badge.
### **POC Tracking Preferences**
Configure how the system handles faxing and tracking from your practice settings.
**Auto-Faxing Eval Notes**
Determines when an evaluative note is automatically faxed to the referring physician:
* **Always** — Fax every evaluative note automatically.
* **POC Updates** — Fax only when the POC is created or updated.
* **Never** — Do not auto-fax; staff sends manually.
**POC Tracking Options**
Determines when an evaluative note will be tracked in the POC tracker:
* **Always** — Track all evaluative notes.
* **POC Updates** — Track only when the POC is created or updated.
✨**Smart Tip:** Set **Auto-Faxing** to **Always** and **POC Tracking** to **Always** to ensure no certifications fall through the cracks after an initial evaluation is signed.
### **Certification Workflow**
**Initial Certification Process**
1. **Case creation (automatic):** When an Initial Eval note is signed, POC tracking begins automatically.
2. **Auto-fax:** The system faxes the visit notes to the referring physician based on your preferences. If the fax fails, the case is flagged; if not sent, it moves to **Not Sent** status.
3. **Awaiting Signature:** The system tracks the number of days elapsed since the date of service. At **20 days**, the status changes to **Due Soon**. At **30 days**, it changes to **Overdue**.
4. **Attach signed POC:** When the signed document is received, staff attaches it and marks the case as signed. Status updates to **Certified**.
5. **Signature tracking stops:** The system stops reminders and begins tracking toward the next recertification date.
***
**Recertification Process**
1. **Automatic trigger:** The system triggers a recertification when the recertification window approaches (near 90 days from the initial eval date of service or last evaluative note), or when a new evaluative note is submitted.
2. **Follow standard signature process:** The same workflow as initial certification applies. The status changes to **Due Soon** at 75 days and **Overdue** at 90 days.
**Note:** The Initial Script Exemption does **not** apply to recertifications. A signed POC is always required.
***
**Discharge Workflow**
When a patient is discharged, the system marks the case as closed. No further recertification alerts are generated, and all documentation is retained for audit purposes.
### **Status Types**
| **Status** | **Meaning** | **Action Required** | **Risk Level** |
| :--------------------- | :-------------------------------------------- | :--------------------------------------------------------------------- | :----------------------- |
| **Not Sent** | POC created but not yet sent to the physician | Send POC via fax | Moderate |
| **Awaiting Signature** | POC sent, waiting to be signed | Monitor; follow up if approaching 20 days | Low |
| **Due Soon** | Unsigned for 20–30 days | Follow up with physician, confirm receipt, request expedited signature | Moderate |
| **Overdue** | Not signed within 30 days | Priority follow-up, document all attempts, consider escalation | High — claim denial risk |
| **Certified** | Signed by physician, compliant | None — system alerts when recertification approaches | None |
### **Initial Script Exemption**
**What is the Initial Script Exemption?**
A Medicare allowance that permits providers to demonstrate a "good faith effort" in obtaining a POC signature for the **initial certification only**. When this exemption is applied, the system stops alerting for that case and a returned signed POC is not required.
**Requirements to Use the Exemption**
* A written referral (script) from the physician that is signed, dated, and attached to the patient's medical record.
* Documented proof that the POC was sent within 30 days of the initial evaluation date (fax confirmation or delivery record).
* One send attempt is sufficient — you do not need to receive the POC back signed.
**Standard Path vs. Script Exemption Path**
| | **Standard Path** | **Script Exemption Path** |
| :----- | :---------------------------- | :-------------------------------------------- |
| Step 1 | Initial Eval completed | Initial Eval completed |
| Step 2 | Send POC | Confirm signed script is on file |
| Step 3 | Wait for returned signed POC | Send POC once |
| Step 4 | Attach signed POC → Certified | Mark as Script Exempt → No signature required |
**System Behavior When Exemption is Applied**
* The system stops alerting for that certification.
* A returned signed POC is not required for compliance.
* The system still records that the POC was sent (for audit trail).
* Recertification will still require a signed POC.
The Script Exemption applies **only** to the initial POC certification. It **cannot** be used for any recertifications. You also cannot mark a case as Script Exempt without first successfully faxing the POC to the referring provider.
**Important Limitations**
* Requires both a signed script **and** proof that the POC was sent.
* Should only be used when the physician is unresponsive after a documented good faith effort.
* Does not apply to recertifications under any circumstances.
### **Tracking and Managing POCs**
**Viewing POC Details**
Click the **edit** (pencil) icon at the end of any row — next to the Notes and History icons — to view the full POC record, including referring provider details, case and appointment information, faxing status and history, the ability to attach proof of signature, and the option to resend the fax.
***
**Sending a POC to a Physician**
**To send or resend a POC:**
1. Navigate to the patient's case in the dashboard.
2. Click **Resend Fax** or the fax icon.
3. The system automatically sends the POC via fax, updates the status to **Awaiting Signature**, and begins tracking days elapsed.
***
**Marking a POC as Signed**
**To mark a POC as certified:**
1. Click the **edit** (pencil) icon at the end of the patient's row.
2. Click **Attach Signed POC**.
3. Upload the signed document.
The system attaches the document, updates the status to **Certified**, stops signature tracking alerts, and begins tracking toward the next recertification date.
✨**Smart Tip:** Enter the date the **physician signed** the document (as written on the POC), not the date you received it. This ensures your compliance timeline is accurate.
***
**Using the Script Exemption**
**To apply the Initial Script Exemption:**
1. Confirm you have a signed, dated referral script on file.
2. Confirm the POC was sent to the referring physician at least once.
3. Check **Script Exempt** on the case.
4. Attach the signed referral script.
**Note:** This applies only to initial certifications. The checkbox is not available for recertification cases.
***
**POC Alerts in the Appointment Details Modal**
The **Plan of Care** section within the Appointment Details modal reflects the current POC alert status at the individual appointment level. The alert badge changes color based on urgency.
**Not Sent** — The POC has been created but has not yet been sent to the referring physician. Send the POC via fax to move this case forward.
**Sent** — The POC has been sent to the referring physician and is awaiting signature. The system begins tracking days elapsed from the date of service.
**Due Soon** — The POC has been unsigned for 20–30 days. Follow up with the physician immediately to request an expedited signature.
**Overdue** — The POC has not been signed within the 30-day window. Claims are at risk of denial. Prioritize follow-up and document all contact attempts.
**Certified** — The POC has been signed by the referring provider. No further action is needed until the next recertification window approaches.
### **Best Practices**
**Front Desk / Care Coordination Staff**
* Send POCs within 1–2 days of the initial evaluation and confirm fax delivery.
* Check the **Due Soon** tab every morning and follow up on cases approaching 20 days.
* Call physician offices at 20 days if no response has been received.
* Only apply the Script Exemption when a valid signed script is on file; always document that the POC was sent.
***
**Therapists / Providers**
* Finalize initial evaluation documentation within 24–48 hours so the POC is clear and ready to send.
* Review your caseload 2 weeks before a POC expires and decide whether to discharge or recertify.
* Create new POCs in advance if a patient's condition changes significantly.
* Do not document visits without a valid POC — update or recertify before continuing treatment.
***
**Admins / Operations Managers**
* Review the dashboard regularly to identify patterns and problem areas (e.g., a specific referring provider with high overdue rates).
* Streamline the POC sending process and build relationships with high-volume physician offices.
* Train staff on Medicare requirements and the correct handling of Due Soon and Overdue alerts.
### FAQ
Medicare requires physician certification to confirm that therapy services are medically necessary and appropriate for the patient's condition. Without this signature, claims may be denied.
* **Initial Certification:** The first POC signed after the initial evaluation — must be signed within 30 days of the date of service.
* **Recertification:** Renewal of the POC every 90 days to continue therapy services.
The 30-day deadline starts from the **appointment date** of the initial evaluation (the date of service), not when you finish documentation or submit the claim.
Claims for dates of service after 30 days are at risk of denial. Document all follow-up attempts, continue pursuing the signature, and consider applying the **Initial Script Exemption** if you have a valid signed referral on file.
Use the Script Exemption when:
* You have a signed, dated referral script attached to the patient's medical record.
* The POC has been sent to the physician at least once within 30 days.
* The physician is unresponsive despite a good faith effort.
**Note:** The exemption applies only to the initial certification — recertifications always require a returned signed POC.
* Signed, dated referral script attached to the patient's medical record.
* Proof the POC was sent (fax confirmation or send record).
* The **Script Exempt** checkbox checked in the tracking system.
* Documentation of the attempt to obtain a signature.
Update the referring provider in the patient's chart, then resend the POC to the correct physician using the **Resend Fax** option and attach the corrected record.
The system maintains a complete historical record of all POC activity from the release date of the feature. Click the edit icon on any patient row to view the full send and status history for that case.
# Edit Your Practice Settings
Source: https://docs.athelas.com/air_admin/manage_your_practice/practice_settings
The My Practice page is your central hub in Insights to manage staff, facilities, providers, settings, and permissions for your practice.
Click on the My Practice tab within Settings on the left navigation bar.
### **Team Members**
View, add, edit, and remove users. **Default Role Permissions:**
* **Administrator** – Full access to all pages and features.
* **Billing Manager** – Access to all pages except team management.
* **Staff** – Limited access (Practice Overview + Advanced Insights). Best for front desk staff.
* **Single Provider** – Claim Details page only, filtered to their own claims.
You may also check or uncheck individual items for specific employees.
* The **Feature Permissions** options allow you to configure which features are available for your team member to utilize.
* The **Page Permissions** options allow you to configure which pages your team member can view.
**Note:** Unchecking “Miscellaneous Line Items” means a user cannot create or edit them, but can still view/apply them to balances.
### **Practice Details**
Enter and update your practice and corporate information.
Ensure the **corporate address** is your official billing address. This appears in Box 33 on the CMS-1500 form and is required for compliance and enrollments.
### **Main Contact**
Store contact information for the **practice owner** and **billing liaison**.
### **Facilities**
Add, edit, or deactivate your organization’s facilities.
You can also move facilities between the **Active** and **Inactive** tabs.
### **Providers**
Manage your practice’s healthcare providers.
* Add, edit, or deactivate providers in the **Active tab**.
* View deactivated providers in the **Inactive tab**, where you can reactivate or permanently delete them.
### **Taxonomy**
Manage your practice’s taxonomy codes.
[Provider Taxonomy Codes](https://www.nucc.org/index.php/code-sets-mainmenu-41/provider-taxonomy-mainmenu-40) are self-selected by each provider. They reflect **area of specialty** (based on education and licensure), not services rendered.
### **Treatments**
Create, update, or delete default treatment information, including **Service Type Codes**.
# Provider Credentials
Source: https://docs.athelas.com/air_admin/manage_your_practice/provider_credentials
## Overview
The Self-Serve Credentialing Matrix is a centralized tool designed to simplify and standardize how providers and insurance companies manage credentialing requirements. It provides an at-a-glance reference for the credentialing status of each provider–payer relationship, ensuring clarity, compliance, and faster decision-making.
Credentialing is a critical process that validates whether providers meet the requirements of insurance companies to deliver care under their plans. Traditionally, this information is fragmented, requiring manual lookups and repeated back-and-forth. The self-serve credentialing matrix eliminates that friction by giving all stakeholders immediate visibility into credentialing statuses.
## How would it help?
* **Efficiency** – Cuts down on time spent searching for or verifying credentialing requirements.
* **Transparency** – Provides providers and payers with a shared source of truth.
* **Scalability** – Supports onboarding, cross-coverage, and expanding provider networks with minimal administrative overhead.
## Key concepts
| **Term** | **Meaning** |
| -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Provider | A healthcare professional or organization (e.g., physician, nurse practitioner, clinic) delivering care to patients. |
| Insurance company | A payer organization that contracts with providers to cover healthcare services for its members. |
| Provider credentials | The qualifications, licenses, certifications, and verifications required for a provider to be approved by an insurance company. |
| Credentialing group | A set of providers managed together for credentialing purposes, often by specialty, practice, or organizational affiliation. |
| Credentialed | Indicates whether a provider is fully approved and recognized by the insurance company to deliver covered services. |
| Cosigner required | Shows whether the provider can deliver services only under supervision, requiring a credentialed provider's cosignature (e.g., trainees, newly licensed practitioners). |
| Credentialing type | Type of credentialing. Includes `GROUP`, `INDIVIDUAL`, `UNKNOWN`, `PENDING`, `NONE`. |
## Selecting credentialing type values
You can select any of the 3 allowed combinations (the 4th, shown below, is not allowed):
| **Is credentialed?** | **Cosigner required?** | **Allowed?** |
| -------------------- | ---------------------- | ------------ |
| ✅ | ❌ | ✅ |
| ❌ | ✅ | ✅ |
| ❌ | ❌ | ✅ |
| ✅ | ✅ | ❌ |
The credentialing type determines which values you can set:
| Credentialing type | Can select `Is Credentialed?` | Can select `Cosigner required` |
| ------------------ | ----------------------------- | ------------------------------ |
| Group | ✅ | ❌ |
| Individual | ✅ | ❌ |
| Unknown | ✅ | ✅ |
| Pending | ✅ | ✅ |
| None | ✅ | ✅ |
## Facility Specificity
If facilities are not specified for the Insurance Company or Credentialing Group, then the credentials will be applied site-wide. You are allowed to have different types of credential for different facilities, and it will impact the overall outcomes for Appointment Scheduling and Chart Note Signing.
For Insurance `Mercy Care`, we set `MAIN OFFICE` to a `Pending` state, and for the rest of the facilities this insurance was credentialed.
*📹 Video demonstration — a screen recording for this scenario is available in the source guide and needs to be uploaded (Loom/YouTube) and embedded here.*
You can still bypass a block and create the appointment by checking `Override Credentialing Matrix`.
*📹 Video demonstration — a screen recording for this scenario is available in the source guide and needs to be uploaded (Loom/YouTube) and embedded here.*
If an appointment is being set up for provider `Abhi Provider` and the patient insurance is `Mercy Care`:
1. If the appointment is being scheduled at `Main Office`, the facility-level credentialing entry would cause the appointment to be blocked on creation.
2. If the appointment is being scheduled at a facility not named `Main Office` or `Gary J Smith`, then the appointment would be created since the provider is credentialed under the group.
## Provider Licensing
Provider Licensing holds the licensing status of a provider. The three different types of provider licensing are:
| **Licensing type** | **Details** |
| ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Licensed | Holds a valid NPI. |
| Temporary | Typically meant for students who would not have an NPI number. For a temporary number, you would need to enter an expiration date (not more than 1 year). |
| Not Licensed | Does not have a temporary or a permanent number. Cannot schedule appointments at all. |
You will have 3 options: **Licensed**, **Temporary**, and **Not licensed**. In this example, we click on **Temporary**.
If the licensing status is temporary, you must add an expiration date.
## Provider credentials
This would be under the Utilities section.
We also show the individual NPIs. Select one provider.
Select one of the insurance companies. You can search by the insurance company's name as well.
You can select a credentialing type per entry. Supported entries include: Unknown, Group, Individual, Pending, and None.
For example, if the provider is already credentialed:
**Example video:**
You can select multiple rows across different providers, insurance companies, and credentialing groups.
You have the ability to change the `Credentialing type`, `Credentialed`, and `Cosigner Required` values.
You can either **keep the existing values** for these rows, or **apply the same selected settings** to all rows. In this case, we are setting all selected rows to `Yes` for Cosigner required.
**Example video:**
You can see we are showing 1–10 rows out of 18 total.
You can see the message **Selected 10 on this page**. This will only make edits to the 10 selected rows.
**Example video:**
## Credentialing Group
Credentialing group allows you to bundle multiple insurance companies under one group, so when you get credentialed for a group, you can apply the same configuration.
**Important Notes:**
* An insurance company can be part of multiple credentialing groups.
* Groups are mutually exclusive with individual insurance selection in the Add Credential modal.
* You can select multiple groups when adding credentials to credential a provider with all insurances across those groups.
### Creating Credentialing Groups
Go to [https://insights.athelas.com/provider-credentialing](https://insights.athelas.com/provider-credentialing).
* Enter a group name (e.g., "Optum Group", "Medicaid Plans").
* Add an optional description.
* Select insurance companies to include in the group.
### Editing Credentialing Groups
Modify the details as needed (name, description, insurance companies).
### Adding Credentials Using Groups
* **Individual**: Select a specific insurance company, **OR**
* **Group**: Select one or more credentialing groups.
Set the type, status, and cosigner requirements.
The system will automatically create individual credentials for each insurance in the selected groups.
### Viewing Group Information
* **Table column**: The "Credentialed Group" column shows which groups each provider belongs to.
* **Filtering**: Use the "Credentialing Group" filter to view only providers who qualify for specific groups.
* **Group qualification**: Providers only appear in a group if they have credentials for ALL insurance companies in that group.
### Deleting a credentialing group
You can also delete a credentialing group.
Click on the credentialing group → down arrow icon → `Edit Credentialing group`.
On the bottom of the drawer, you can see `Delete credentialing group`.
A confirmation modal appears. On click of `Delete Group`, the credentialing group would be permanently deleted.
**Example video:**
### Using credentialing group as filters
Click the `+ Filter` button above the table. This will show various filters. Select `Credentialing Group`.
On click, the table would load the filtered rows.
**Example video:**
### Using credentialing groups to add credentials
Based on the credentialing type, you would get the options to modify `Credentialed` and `Cosigner required`.
The provider credentialing entries for provider + insurance companies under the credentialing group would be created.
**Example video:**
## Scheduling and Signing logic blocks
Both the provider licensing and credentialing setup should be completed for a provider in order to have access.
Each scenario below is demonstrated by a screen recording in the source guide. Those recordings need to be uploaded (Loom/YouTube) and embedded under their respective headings.
### Enforce Direct Access
Here is the setup to allow/disallow direct access patients. This is on EHR > Preferences > Providers.
> Schedule a Direct Access visit with a provider who is not credentialed for Direct Access cases — the system should flag or restrict the action.
*📹 Video demonstration to be embedded.*
### Block Scheduling for Non-Credentialed, Non-Co-Signing Provider
> Try scheduling a visit with a provider who lacks payer credentialing and co-signing privileges — expect the system to block or warn accordingly.
*📹 Video demonstration to be embedded.*
### Enforce Co-Sign Requirements for Non-Credentialed Providers
**A) Attempt to schedule an appointment with a provider marked as *"Co-sign Required"* for the selected payer.**
> Expected behavior: the system should flag the need for a credentialed supervising provider before proceeding.
**B) Assign a supervising provider who is credentialed with the payer and complete scheduling successfully.**
> Expected behavior: the system validates the supervising provider and allows the appointment to be scheduled without error.
*📹 Video demonstration to be embedded.*
### Attempt to Schedule with Expired License
A provider previously held a temporary license, but it has since expired.
> Expected behavior: the system should prevent appointment scheduling and surface a clear message indicating the provider's license is no longer valid.
*📹 Video demonstration to be embedded.*
### When submitting a note
**Scenario 1:** A provider whose license is expired is trying to submit a chart note — they cannot submit it.
*📹 Video demonstration to be embedded.*
# Provider Settings
Source: https://docs.athelas.com/air_admin/manage_your_practice/provider_settings
### Provider Calendar Availability & Blocks
Navigate to the Preferences Tab on the left navigation pane > Providers Tab
Click on the pencil edit icon next to a Provider's name.
Within the Schedule, you can add for each day:
* Facility (Add facilities within the Facilities section to be able to add them for the daily schedule).
* Start Time
* End Time
You can add multiple locations per day and keep time for lunch / breaks on your calendar as well.
**Note:** If your practice uses **Scheduling Templates**, build and apply the provider's weekly schedule there instead — see [**Scheduling Templates**](/air_admin/manage_your_practice/scheduling_templates).
### Provider Signature Preferences
You can also update the following details from the Edit Provider Panel:
* **Provider Credentials**
* **Default Supervising Provider** (If a supervising provider is not needed you can remove it from here).
* **Facilities associated**
* **See Direct Access Patients**
* \*\*Custom Signature \*\*(if your practice has this turned on)
# Register Providers for Medications
Source: https://docs.athelas.com/air_admin/manage_your_practice/register_providers_rx
### Registration for Uncontrolled Meds
* Ensure the Provider Phone Number is set properly (no dashes, spaces, ext etc)
* Go to Preferences Tab → **Medications**
* **Nominate Provider** (Note: Only an admin/provider from the site can initiate this process; self-nomination is not permitted)
* Select Provider + Facility Combo → Nominate
* The provider + facility combo will appear in the table in dropdown. The **Approved** check under the Uncontrolled Substances column indicates the provider can now prescribe uncontrolled meds via Air.
### Registration for Controlled Meds
DEA registrations are state-specific and linked to both the provider’s state license and their practice location. We currently get DEA numbers from [ID.me](http://ID.me).
If a provider has multiple DEA numbers, we need a list of *all* of them to be able to validate against what we get from [ID.me](http://ID.me). Please notify Athelas Support Team in advance if this applies.
* Navigate to Preferences → Medications
* Click on Provider → + Icon → \*\*Begin Approval. \*\*Another user (anyone not the provider being nominated) with Admin level access from the site needs to Begin Approval
* Ask the **Provider** to go to Bell Icon → Medications → Register
* The provider will have to sign in with existing [ID.me](http://ID.me) account, or create a new account.
* A popup window will appear asking provider to complete the registration steps
* Once the Provider is set up with the [ID.me](http://ID.me) verification, navigate to Preferences → Medications. Then click on your facility and the + icon → **Approve**. The provider can approve this themselves, but they must do so separately for each facility they’ve been nominated for.
### Register to respond to Pharmacy Requests
Navigate to Preference → Medications → + icon → Register for pharmacy requests
### Pre-requisite for Provider Agents
**Providers can designate staff members as prescriber agents, granting them the ability to:**
* Draft prescriptions (for controlled medications)
* Prescribe medications (for non-controlled medications)
Providers can assign prescriber agents by facility and set permissions for whether they can only create draft prescriptions or also prescribe medications.
* Provider should be assigned to the relevant facilities they want to prescribe for (update within **Preferences Tab > Provider Section > Edit Provider Details**)
* Provider should be nominated to prescribe for the relevant facilities they want to prescribe for (update within **Preferences Tab > Medications Section > Nominate Provider**)
### Add Prescriber Agents to a Provider
* Go to the **Preferences Tab > Medications > Prescriber Agents**
* Click **+Add Prescriber Agent**.
* You will see yourself listed as the provider by default. This cannot be changed, since prescriber agents must be set up by the provider or admin.
* Select one or more agents, then add the facilities where you want them to create draft medications.
* **Can prescribe** → allows the prescriber agent to prescribe **uncontrolled substances** directly. If **Can prescribe** is checked, the agent can still create drafts, but will also have the option to prescribe.
* Click **Submit** when done. This creates the prescriber agent for the selected site and facilities.
# Scheduling Templates
Source: https://docs.athelas.com/air_admin/manage_your_practice/scheduling_templates
Scheduling Templates let you build a provider's whole week once — the hours they work, and what can be booked in each part of the day — save it under a name, and apply it to one or many providers across a date range. Instead of placing blocks on the calendar one at a time, a scheduling manager lays out the week in a visual editor and stamps it onto the calendar in a single step.
## Key concepts
Four pieces make up the feature:
| **Term** | **What it is** |
| :----------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Scheduling Template** | A reusable weekly pattern. It holds a title and optional description, the facilities it applies to, an optional list of providers, and a set of slots. |
| **My Availability** | The provider's working hours for each day of the week, per facility. This is the outer boundary of the schedule — every slot must sit inside it. |
| **Slots** | The individual blocks inside the week. A **bookable** slot renders on the calendar as an open slot and defines which appointment types can be booked in it. A **non-bookable** slot renders as a block and holds time for non-appointments such as lunch, admin time, or meetings. |
| **Template Application** | The step that turns a template into a real calendar. You pick the template, the providers, and a date range, and the system stamps that schedule onto the calendar. |
## Accessing Scheduling Templates
There are two entry points.
**Preferences → Calendar.** Open **Preferences** from the left navigation pane, select **Calendar**, and scroll to the **Scheduling Templates** section. This is the full management view — create, edit, duplicate, delete, and apply templates from here.
**The calendar toolbar.** Click the **Scheduling Templates** icon in the top-right of the calendar to open the drawer, where you can see what is currently in effect and apply a template without leaving the calendar.
## Creating a template
1. From **Preferences → Calendar → Scheduling Templates**, click **+ Provider Schedule**. The template editor opens with a Sunday–Saturday week grid and a configuration panel on the right.
2. Enter a **title** in place of **Add Title**, and optionally a description. Give it a name your team will recognize later — for example "Main Office - Summer Schedule," "PTA Standard Week," or "Holiday Coverage."
3. Under **Facility(s)**, choose **Single** or **Multiple** and select the facilities this template applies to.
4. Optionally set **Specific Provider(s)**. Providers named here are prefilled automatically when you apply the template.
5. Set **My Availability** by checking each day the provider works and entering start and end times. Grid intervals follow your site and facility calendar settings once availability is entered — see [**Calendar Settings**](/air_admin/manage_your_practice/calendar_settings) to change them.
6. Add slots by dragging on the week grid, then click any slot to configure it in the side panel:
* **Slot Title**
* **Bookable?** — **Yes** or **Not Bookable**
* **Appt Length** — the slot's start and end time
* **Days** — repeat the slot across other days of the week
* **Expire if vacant?** — **Yes** releases the slot's restrictions a set number of hours before the appointment time, so an unfilled protected slot can still be used. **Don't Expire** keeps the restrictions in place.
* **Required Appointment Types** — which appointment types can be booked in this slot
7. Refine the week with drag-and-drop, resize, and copy/paste. To delete a slot, select it and click **Remove Block**.
8. Click **Save** in the top-right. Use the back arrow next to the template title to return to the list.
✨**Smart Tip:** Click **Copy From An Existing Schedule** in the configuration panel to start from a template you have already built instead of an empty week.
Every slot must sit inside the availability you configured. If **Save** does not respond, check whether a slot falls outside **My Availability**.
## Building a template with the AI Builder
Rather than placing every slot by hand, you can describe the schedule in plain language and let the assistant build it.
1. In the template editor, switch the right panel from the **Manual** tab to the **AI Builder** tab.
2. Describe the schedule you want in the **Ask Athelas** box. For example: "Create a Monday–Friday schedule 9AM–5PM with a 30-minute lunch break and 40-minute appointment slots."
3. The assistant asks clarifying questions if it needs more detail, then proposes a set of changes and overlays a preview on the week grid.
4. Review the proposed changes. Accept or reject each one individually, or use **Accept All** or **Reject All**. Accepted changes are merged into your unsaved draft.
5. Click **Save** to persist the template.
The assistant can also start from an existing template — for example, "Start with the Summer Schedule but begin at 9AM" — and can build common patterns such as alternating single- and double-book cycles, or payer-differentiated slot lengths.
**Note:** AI proposals only edit your unsaved draft. Nothing takes effect until you save the template and then apply it.
## Applying a template to a provider's calendar
Saving a template does not change anyone's calendar. Only applying it updates what a provider sees.
1. Open the **Scheduling Templates** drawer from the calendar toolbar, or find the template in **Preferences → Calendar**.
2. Select the template and click **Apply**. The **Apply Schedule Template** modal opens.
3. Confirm the **Provider(s)**. Any providers set on the template are prefilled; add or remove them here.
4. Set the **Start Date**. To bound the schedule, turn on **Have schedule expire on specific date** and set an **End Date**. Leave it off for an open-ended schedule.
5. Review the preview of impacted slots, then click **Apply Schedule**.
Only one template can be in effect per provider on a given day. Applying a new template over a date range replaces whatever was there before.
## Managing templates
From **Preferences → Calendar → Scheduling Templates** you can:
* **Search and filter** the template list by provider and by facility.
* **Duplicate** a template as the starting point for a variation.
* **Edit** a template. Changes affect future applies only, not schedules that have already been applied.
* **Delete** a template using the trash icon in its row.
**Note:** Deleting a template does not remove blocks that have already been placed on a calendar.
## The Scheduling Templates drawer
Once a template is applied, it drives what the calendar shows. Open the drawer from the **Scheduling Templates** icon in the top-right of the calendar toolbar. It contains:
* **Visible on Calendar** — a toggle at the top that shows or hides template shading and blocks. Your preference is remembered.
* **Active** — templates currently in effect, grouped by template with the covered providers listed beneath. Shows **No templates active** when there are none.
* **Upcoming** — templates scheduled to start in the future, each with a **Sched. MM/DD/YY** badge. Hidden when empty.
* **All Templates** — a collapsible, searchable list of every template at the site.
## Booking appointments on available slots
To book into a bookable slot, click the **+** in the center of the slot.
1. The **New Appointment** modal opens with the **Appointment Type** dropdown suggesting the types the slot allows.
2. The appointment duration defaults to the appointment type's configured duration, not the full length of the slot. If the appointment runs into the next slot and that slot permits the same type, the next slot is consumed as well. Otherwise the remaining time stays open and bookable.
## Overlapping appointment logic
Each appointment type has an **allow overlapping bookings** setting, configured in the appointment type form — see [**Appointment Types**](/air_admin/manage_your_practice/appointment_types). When it is disabled, that appointment type cannot be booked more than once at the same time for a provider, even if multiple slots are open in that window.
Use this together with slot layout: side-by-side slots create the capacity, and the appointment type setting decides whether a given type is allowed to consume more than one of them.
### FAQ
No. A saved template is only configuration. Nothing appears on a calendar until you apply it to specific providers and dates.
The edit affects future applies only. Schedules already generated from the earlier version stay as they are. To push the change out, re-apply the template to the relevant providers and date range.
No. One template is in effect per provider at any point in time. A newly applied template replaces the coverage for the range you select.
Yes. Individual slots can still be created and edited directly on the calendar, and a single occurrence of a recurring slot can be changed or removed without affecting the rest of the series.
The Scheduling Templates interface is hidden and the calendar returns to legacy [**Reserve Blocks**](/air_front_desk/portal_and_online_scheduling/reserve_blocks) and schedule blocks, with provider hours managed again from [**Provider Settings**](/air_admin/manage_your_practice/provider_settings).
# Scribe Retention Policy
Source: https://docs.athelas.com/air_admin/manage_your_practice/scribe_retention_policy
The **Scribe Retention Policy** gives your practice control over how long [**AI Scribe**](/air_provider/fill_a_chart_note/scribe_faq) data is stored before it is automatically and permanently deleted. Configure a retention window to align AI Scribe data storage with your organization's privacy, security, and compliance requirements.
## How Scribe Retention Works
* **Site-level configuration.** Retention policies are set per site from your administrative settings.
* **What gets deleted.** Once a policy is active, AI Scribe **audio recordings**, **transcriptions**, and other associated context older than the configured window are removed.
* **Automatic, nightly cleanup.** Data that has aged past the retention window is deleted during the next nightly cleanup—no manual action is required.
* **Minimum window of 1 day.** The shortest retention window you can set is **1 day**.
* **Deletion is permanent.** Deleted AI Scribe data **cannot be recovered**.
* **Default is unchanged.** Sites without a configured retention policy continue to retain data as they do today—no deletion occurs.
Scribe data deletion is **permanent and cannot be undone**. Confirm your retention window meets your clinical, legal, and compliance needs before saving.
## Configure a Retention Policy
To open the setting, navigate to **EHR Preferences → Administrative → Scribe**.
Under **Data retention**, the **Retention window (in days)** field controls how long scribe data is kept. When the field is empty, it reads **Not configured — no deletion will occur**, and your site retains all scribe data.
### Set a Retention Window
1. In the **Retention window (in days)** field, enter the number of days to keep AI Scribe data (minimum **1**).
2. Review any on-screen guidance:
* A very short window shows a warning that it will delete nearly all scribe history.
* A standard window shows no warning.
3. Click **Save Changes**.
**Very short window (warning):**
**Standard window (no warning):**
### Confirm the Change
When you save, a confirmation dialog summarizes exactly what will be removed: all scribe data (audio, transcriptions, and additional context) older than your configured window will be permanently deleted during the next nightly cleanup.
Click **Confirm** to activate the policy, or **Cancel** to keep your current settings.
✨**Smart Tip:** Start with a longer retention window that comfortably covers your documentation and audit needs, then shorten it once you have confirmed the behavior on your site.
## Clear a Retention Policy
To stop automatic deletion, open **Data retention** and click **Clear**. The retention window returns to **Not configured — no deletion will occur**, and your site resumes retaining all scribe data going forward.
**Note:** Clearing the policy stops future deletions but does not restore data that was already deleted under a previous policy.
### FAQ
When a retention window is active, all AI Scribe data older than the configured number of days is removed. This includes **audio recordings**, **transcriptions**, and other associated context generated by AI Scribe.
Data that has aged past your retention window is deleted during the next **nightly cleanup**. You do not need to trigger deletion manually.
The minimum retention window is **1 day**. If you enter a very short window, the platform warns you that it will delete nearly all scribe history and asks you to confirm before the change takes effect.
No. Deletion is **permanent and cannot be undone**. Once data is removed during the nightly cleanup, it cannot be recovered.
Nothing changes. Sites without a configured retention policy continue to retain AI Scribe data exactly as they do today—no automatic deletion occurs.
# User Management
Source: https://docs.athelas.com/air_admin/manage_your_practice/user_management
This guide explains how to manage **who** uses your Athelas practice and **what** they can do. Three building blocks work together to give you precise control:
* **Users** are the individual team members who log in to the platform.
* **Roles** define what a user is allowed to do — which pages they can open and which actions they can perform.
* **Facilities, facility groups, and facility tags** define how your locations are organized, and **facility access** controls which of those facilities a user can see data for.
With these tools, an administrator can invite new team members and configure their access in a single flow, use predefined roles or create custom ones, scope each user to some or all facilities, and organize facilities into nested groups with tags for filtering and reporting.
**Roles** answer *"What can this user do?"* **Facility access** answers *"Whose data can this user see?"* Every user has both — together they form the full picture of what the user experiences in the app.
## Key concepts
### Users (team members)
A **team member** is anyone with a login to your practice. Every team member has:
| **Attribute** | **Description** |
| :----------------------- | :---------------------------------------------------------------------------------------------------------------------------------------- |
| **Full Name** | The user's display name. |
| **Email** | Used to sign in and receive invitations. Cannot be changed after the team member is created. |
| **Phone Number** | For contact purposes only. Not used for two-factor authentication. |
| **Location** | Optional free-text location. |
| **Roles** | One or more roles that determine what the user can do. A team member can hold multiple roles at once. |
| **Facility Access** | Which facilities, groups, or sites the user can see data for. |
| **Provider Credentials** | Optional. Links the team member to a clinical provider record (NPI, license, DOB, Tax ID, Medicare PTAN). |
| **Preferences** | Default Facility, Default Provider, and Default Card Reader. These are convenience defaults for filters — they do **not** control access. |
Team members are managed from **Settings → My Practice → Team Members**.
### Roles
A **role** is a named bundle of permissions, managed in the **Roles** sidebar of the Team Members page. There are two kinds:
* **Managed roles** are built-in roles provided by Athelas. They show a view icon (not an edit icon) and the message *"This role is managed by Athelas. It cannot be edited."* You can assign them and view exactly what they grant, but you cannot edit, rename, duplicate, or delete them.
* **Custom roles** are roles your administrators create. You can rename them, change their permissions, duplicate them, and delete them.
The standard managed roles are:
| **Role** | **Typical use** |
| :------------------ | :----------------------------------------------------------------------------------------------------------------------------------------- |
| **Administrator** | Full access to every feature of the platform, including team and practice administration. |
| **Billing Manager** | Access to billing, claims, denials, revenue reporting, and most operational pages. Cannot manage team members. |
| **Staff** | Day-to-day clinical and front-office work: calendar, patients, appointments, encounters, patient responsibility, virtual cards, templates. |
| **Single Provider** | Limited access for individual providers — primarily claim details, call center, and waitlist. |
When you create a custom role, you start from a **role template** that provides a sensible starting set of permissions. If a user has more than one role, their effective permissions are the **union** of all their roles:
* If **any** of their roles grants access to a page or feature, they have it.
* Removing one role only removes the permissions unique to that role; permissions granted by their other roles remain.
### Permissions
Permissions are organized into a tree, from broad to specific:
```text theme={null}
Permission package
└─ Page permission (a navigable screen, e.g. "Calendar", "Claims")
└─ Feature permission (a control within a page, e.g. "Modify Claim")
```
When you edit a role, the permission tree shows the top two levels in a checklist (left panel). Clicking a page reveals its sub-permissions (right panel), where you can fine-tune individual features.
* Use **Select all** / **Deselect all** at any level to quickly enable or disable an entire branch.
* A partially selected branch shows an indeterminate state — handy for spotting roles that "mostly" cover a section.
* Save your changes when done. The user's view updates after they refresh or log in again.
### Facilities
A **facility** is a physical location that belongs to your site, carrying identifying and billing information used across scheduling, claims, and reporting. Editable fields include **Facility Name**, **Facility NPI**, **Billing Name**, **Group**, **Phone**, **Default POS Code**, **Tax ID**, **Taxonomy Code**, **CLIA License**, and **Address**.
Facilities can be **archived** (reversible) instead of permanently deleted. An archived facility is removed from its group, loses its tags, continues to exist but is hidden from active pickers, and appears in a dedicated **Archived** section where it can be unarchived later.
### Facility groups
A **facility group** is a collection that holds facilities and/or other facility groups — how you express the structure of your practice (regions, divisions, service lines, etc.).
* Groups can be **nested**: a group can have child groups, which can have their own children.
* A facility belongs to **at most one** group. Moving it into a new group removes it from its previous one.
* Group names must be **unique within your site**.
* Granting a user access to a group automatically grants access to every active facility inside that group **and inside any of its descendant groups**.
### Facility tags
A **facility tag** is a label you apply to facilities to **categorize** and **filter** — for example "Pelvic Health", "Self-Scheduling Enabled", or "Pilot Site". A facility can have many tags, and a tag can apply to many facilities. Tag names must be unique within your site.
**Tags do not grant access.** Tags are purely organizational metadata and are never used to determine which facilities a user can see. Access is controlled exclusively by **facility access** assignments on the user. Filtering a page by tag narrows what is visible — it never expands a user's access beyond what their facility access already permits.
### Facility access
**Facility access** is the per-user setting that determines which facility data the user can see across the platform. It is set when you create or edit a team member, as either **All Facilities** or **Specific Facilities**. If you select a group and also select an individual facility already inside that group, the system automatically deduplicates.
### Roles vs. facility access: an example
Imagine your practice has 8 facilities organized into two groups — **North Region** (4) and **South Region** (4) — and a team member, Jordan, who is a regional billing manager for the South Region only. To give Jordan the right access, an administrator would:
1. Create Jordan as a team member.
2. Assign the **Billing Manager** role (this defines *what* Jordan can do — Claims, Denials, Revenue Analysis, etc.).
3. Set facility access to **Specific Facilities** and select the **South Region** group (this defines *which* facilities' data Jordan can see).
Now Jordan can open the Claims page (because of the role), and every page that supports facility filtering shows only the four South Region facilities (because of the facility access). If a fifth facility is later added to the South Region group, Jordan gains access automatically — no edit required.
## Manage team members
Navigate to **Settings → My Practice → Team Members**.
The page has two panels:
* The **Roles sidebar** on the left lists every role on your site, plus an **All Members** entry at the top. Clicking a role filters the table to members who hold it; clicking **All Members** returns to the full list.
* The **main panel** shows the members table with **Search by name or email…**, a **New Member** button, and three columns: **Name / Email**, **Facility**, and **Roles**.
### Add a team member
1. Click **New Member**.
2. Fill out **Basic Info**: **Full Name** (required), **Email** (required, cannot be changed later), **Location** (optional), and **Phone Number** (optional).
3. In **Permission Roles**, select one or more roles from the **Roles** picker. You can search by name and select multiple.
4. *(Optional)* Fill out **Provider Credentials** if the team member is also a clinical provider — choose **Create new provider** (supply NPI, DOB, license, Tax ID, and Medicare PTAN) or **Link to existing provider**. Provider records can also be created on their own, ahead of the invitation: see [Provider Records](/insights_admin/my_practice/provider_records).
5. *(Optional)* Set **Preferences** — Default Facility, Default Card Reader, and Default Provider. These are convenience defaults and do not affect what data the user can see.
6. In **Facility Access**, choose **All Facilities** or **Specific Facilities** (pick particular groups and/or facilities from the tree, using **Select all** / **Deselect all** and search to navigate quickly).
7. Click **Create**.
You will see a confirmation toast, and the new user receives an invitation email at the address you provided.
### Edit a team member
1. Locate the user in the table (use search if needed).
2. Click the **Edit** icon at the end of the row.
3. Change any field (the email is locked). You can add or remove roles, change facility access, link or unlink a provider, and update preferences.
4. Click **Save**.
The change typically takes effect on the user's next page refresh or login. Role changes propagate through the authorization service with a brief synchronization window of a few seconds.
### Remove a team member
1. Click the **Delete** icon at the end of the row.
2. Confirm the deletion in the dialog. This action cannot be undone.
The user is removed from your site immediately.
### Search and filter
* Type a name or email in the **Search by name or email…** box to narrow the table.
* Click any role in the left sidebar to filter to members with that role.
* Combine both to find, for example, all Billing Managers named Smith.
## Manage roles
The **Roles sidebar** is the home for role administration — see every role, search, create new ones, and edit any role not managed by Athelas.
### Create a custom role
1. In the Roles sidebar, click **Create Role**.
2. From **Start from a template**, pick a role template that closely matches the access this role should have.
3. In the **Role Configuration** panel, enter a **Role Name** (e.g., "Front Desk Lead", "Claims Specialist") and confirm or change the **Role Template**.
4. Adjust the permission tree: use the left panel to enable/disable entire packages or pages, click any page with sub-permissions to fine-tune individual features in the right panel, and use **Select all** / **Deselect all** where helpful.
5. Click **Create**. The role is now available in the picker when you create or edit team members.
Changing the **Role Template** of a role discards any custom permission selections you have made. The app asks you to confirm before proceeding.
### Edit or rename a role
1. Hover over the role in the sidebar and click the **Edit** (pencil) icon.
2. Change the name, template, or permissions.
3. Click **Save**.
Every user assigned to the role receives the updated permissions after their next page refresh or login.
### Duplicate a role
Duplicating is the recommended way to create a new role that closely resembles an existing custom role.
1. Hover over the role, open its menu, and click **Duplicate**.
2. The system creates a copy named *"\[Original Name] (Copy)"* with identical permissions.
3. Edit the copy to give it a new name and adjust its permissions.
Athelas-managed roles cannot be duplicated. To build a role similar to a managed one, use **Create Role** and start from the corresponding template instead.
### Delete a role
1. Hover over the role, open its menu, and click **Delete**.
2. Confirm in the **Delete Role** dialog. It shows how many members currently hold the role and warns you if any member would be left with no role.
Deleting a role removes it from every user it was assigned to but does **not** delete the users themselves. Each affected user keeps their other roles; a user who held only this role loses its permissions until you assign them another.
### View Athelas-managed roles
Click any managed role in the sidebar to open it in **view-only** mode. The name field is disabled, the permission tree is read-only, and a banner explains the role is managed by Athelas. You can still see exactly what each managed role grants — useful when deciding which role to assign.
## Manage facilities
Navigate to **Settings → My Practice → Facilities**. The Facilities Manager shows a tree of every facility group and facility on your site: your **facility groups** at the top (with nested child groups and facilities), an **Ungrouped** section, and an **Archived** section at the bottom. The toolbar offers **Search**, a **Tags** button, and an **Add** button.
### Add a facility
1. Click **Add → Facility**.
2. Fill in the **Create Facility** form: **Facility Name** (required), **Facility NPI** (required), **Billing Name** (required; check **Same as facility name** to copy it), **Group** (optional), **Phone** (required), **Default POS Code**, **Tax ID** (9 digits), **Taxonomy Code** (10 characters), **CLIA License** (10 characters if provided), and **Address** (Line 1, City, State, Zip required).
3. Click **Create**.
### Edit a facility
1. Click the **Edit** icon on the facility row, or click the facility name.
2. Change any editable field. The form won't save invalid values (missing required fields, malformed CLIA, etc.).
3. Click **Save**.
To move a facility into a different group, change the **Group** field — the facility automatically leaves its previous group, since a facility can belong to only one group at a time.
### Archive and unarchive facilities
1. Open the facility in the edit drawer and click **Archive**.
2. Confirm in the **Deactivate Facility** dialog. This action can be reversed later.
When archived, the facility is removed from its group, loses all tags, and moves to the **Archived** section. To bring it back, find it in **Archived** and use **Unarchive**.
The Facilities Manager favors **archiving** over permanent deletion. Archiving is reversible and preserves history; permanent deletion is reserved for administrative cleanup and is blocked if the facility has clinical or billing data attached. In normal day-to-day administration, archive is the right choice.
## Manage facility groups
### Create a group
1. Click **Add → Group**.
2. Fill in the **Create Group** form: **Group Name** (required, unique within your site), **Phone Number** (optional), **Parent Group** (optional — pick an existing group to nest under, or leave empty for a top-level group), and **Select child entities** (the facilities and/or top-level groups that should belong to this group).
3. Click **Create**.
**Note:** Child entities must share the same parent to be selected — this prevents accidentally pulling members away from unrelated parents.
### Edit a group
1. Click the **Edit Group** icon on the group row.
2. Rename the group, change its parent, or add/remove member facilities and child groups.
3. Click **Save**.
The system blocks moves that would create a cycle in the hierarchy, and rejects a name that already exists on your site (case-insensitive, ignoring spaces).
### Move facilities between groups
You can move facilities three ways, and in every case the facility leaves its previous group automatically:
* Edit the **facility** and change its **Group** field.
* Edit the **destination group** and add the facility to **Select child entities**.
* From the destination group's row, use **Add to group** to open facility creation with the group preselected.
### Delete a group
1. Open the group in edit mode and click **Archive**.
2. Confirm in the dialog. Facilities in the group become ungrouped.
When a group is deleted, its child groups are reparented to its own parent (or become top-level), and its facilities are reassigned to its parent group or become **ungrouped**. Facilities themselves are **never deleted** as part of group deletion.
### Group hierarchy rules
* **No cycles.** A group cannot be its own ancestor.
* **Unique names per site.** No two active groups can share a name.
* **One group per facility.** Adding a facility to a new group removes it from any prior group.
## Manage facility tags
Tags are managed in a dedicated **Tags** drawer, separate from the main facility tree. Click the **Tags** button in the Facilities toolbar to open **Manage Tags**, which shows each tag and the number of facilities it applies to.
### Create a tag
1. Click **Add → Tag**.
2. Fill in the **Create Tag** form: **Tag Name** (required), **Description** (optional), and **Select entities to tag**.
3. Click **Create**.
The new tag appears in **Manage Tags** and as a pill on each tagged facility's row.
### Edit a tag
1. Open the **Manage Tags** drawer and click the tag.
2. Change its name, description, or which facilities it applies to.
3. Click **Save**.
Renaming a tag updates the label everywhere; the set of tagged facilities is unchanged.
### Remove a tag or delete it
* **Remove from a facility:** open the tag in **Edit Tag**, deselect the facility in **Select entities to tag**, and **Save**. Other tagged facilities are unaffected.
* **Delete the tag entirely:** open the tag in **Edit Tag** and click **Delete**, then confirm. The label is removed everywhere; the facilities themselves are unchanged.
## Common scenarios
* **New front-desk user at a single clinic** — New Member → enter name and email → assign the **Staff** (or appropriate) role → **Facility Access → Specific Facilities**, select the single facility → **Create**.
* **Regional billing manager** — New Member → assign the **Billing Manager** role → **Facility Access → Specific Facilities**, select the regional group → **Create**. When facilities are added to or removed from the region later, access updates automatically.
* **A "Claims Only" custom role** — Roles sidebar → **Create Role** → start from a billing/claims template → name it "Claims Only" → **Deselect all**, then enable only the **Claims** page and its needed sub-features → **Create** → assign to the relevant users.
* **Give a user multiple roles** — open the user, add an additional role in the **Roles** picker (e.g., *Staff* + *Claims Only*), and **Save**. The user gets the union of both roles' permissions.
* **Reorganize facilities into regions** — Facilities → **Add → Group** to create parent groups, optionally add nested sub-regions, then set each facility's **Group**. Review the facility access of anyone tied to the old structure.
* **Tag facilities offering a specialty service** — Facilities → **Tags → Add → Tag** → name it (e.g., "Pelvic Health") → select the facilities → **Create**. The tag becomes available as a filter wherever facility filtering is supported.
## Glossary
| **Term** | **Meaning** |
| :--------------------- | :---------------------------------------------------------------------------------------------------------------------------- |
| **Team Member / User** | An individual with a login to your practice. |
| **Role** | A named bundle of permissions assigned to one or more users. |
| **Managed Role** | A built-in role provided by Athelas. Read-only — can be viewed and assigned, but not edited, renamed, duplicated, or deleted. |
| **Custom Role** | A role created by your administrators. Fully editable and removable. |
| **Role Template** | A pre-built starting point for a custom role. |
| **Permission** | A single allowed action — to access a page or use a feature within a page. |
| **Page Permission** | Controls whether a user can navigate to and view a page. |
| **Feature Permission** | Controls whether a user can use a specific button, tab, or control inside a page. |
| **Facility** | A physical location belonging to your site. |
| **Facility Group** | A hierarchical container holding facilities and/or other groups. A facility belongs to at most one group. |
| **Facility Tag** | A flat, many-to-many label used to categorize facilities. Does not grant access. |
| **Facility Access** | The per-user setting that determines which facilities' data the user can see (*All Facilities* or *Specific Facilities*). |
| **Site** | The top-level container for a practice. Users, facilities, groups, tags, and roles all belong to a single site. |
| **Ungrouped** | Facilities not assigned to any group. |
| **Archived** | A facility or group that has been deactivated. Reversible, preserves history, hidden from active pickers. |
### FAQ
Yes. A user can hold any number of roles at once. Their effective permissions are the **union** of all their roles — if any role grants access to a page or feature, they have it.
Yes. Permissions and facility access are configured independently. Assign the **Administrator** role (or any role you like) and set **Facility Access** to **Specific Facilities** with only the facilities they should see.
Yes. Granting access to a group grants access to every active facility inside that group and inside all of its descendant groups. If a facility is later added to the group, the user gains access automatically.
Administrator and the other Athelas-managed roles are maintained by Athelas so they stay correct as new features ship. To customize, use **Create Role**, start from the matching template, and edit that new custom role instead.
The role is removed from those users, but the users themselves are not deleted. Each keeps any other roles they had; a user who held only the deleted role loses its permissions until you assign them another.
Most changes apply on the user's next page refresh or login. Role changes propagate through the authorization service, which can take a few seconds. If a user doesn't see the change, ask them to refresh or sign out and back in.
# Commure EHR FHIR API
Source: https://docs.athelas.com/air_developer/fhir_api/commure_ehr_fhir_api
ONC (g)(10) certified, US Core 6.1.0 compliant FHIR R4B API for third-party app integrations with Air.
The **Commure EHR FHIR API** is a FHIR R4B server that exposes patient health data from Air to authorized third-party applications. It is compliant with **US Core 6.1.0** profiles and the **ONC (g)(10) Standardized API** certification criteria (§170.315(g)(10)). All responses are returned in `application/fhir+json` format.
**Service Base URL:** `https://api.commure.com/fhir`
**FHIR Version:** R4B (`4.0.1`) · **US Core Version:** 6.1.0 · **Content Type:** `application/fhir+json`
## SMART on FHIR Configuration
The server publishes its **SMART App Launch v2.0** discovery document at the well-known path below. This is an unauthenticated `GET` — no token required.
```
GET https://api.commure.com/fhir/.well-known/smart-configuration
```
The document advertises every authorization/token endpoint, the supported scopes, grant types, client-authentication methods, PKCE methods, and SMART capabilities.
#### Example `.well-known/smart-configuration` output
```json theme={null}
{
"authorization_endpoint": "https://api.commure.com/fhir/authorize",
"token_endpoint": "https://api.commure.com/fhir/token",
"introspection_endpoint": "https://api.commure.com/fhir/introspect",
"revocation_endpoint": "https://api.commure.com/fhir/revoke",
"issuer": "https://cognito-idp.us-east-2.amazonaws.com/us-east-2_F9FdU4NGh",
"jwks_uri": "https://cognito-idp.us-east-2.amazonaws.com/us-east-2_F9FdU4NGh/.well-known/jwks.json",
"grant_types_supported": [
"authorization_code",
"implicit",
"client_credentials",
"refresh_token"
],
"scopes_supported": [
"openid",
"profile",
"email",
"fhirUser",
"launch",
"offline_access",
"patient/Medication.rs",
"patient/AllergyIntolerance.rs",
"patient/CarePlan.rs",
"patient/CareTeam.rs",
"patient/Condition.rs",
"patient/Device.rs",
"patient/DiagnosticReport.rs",
"patient/DocumentReference.rs",
"patient/Encounter.rs",
"patient/Goal.rs",
"patient/Immunization.rs",
"patient/Location.rs",
"patient/MedicationRequest.rs",
"patient/Observation.rs",
"patient/Organization.rs",
"patient/Patient.rs",
"patient/Practitioner.rs",
"patient/Procedure.rs",
"patient/Provenance.rs",
"patient/PractitionerRole.rs",
"patient/ServiceRequest.rs",
"patient/Coverage.rs",
"patient/Specimen.rs",
"patient/MedicationDispense.rs",
"patient/RelatedPerson.rs"
],
"capabilities": [
"launch-standalone",
"launch-ehr",
"client-confidential-symmetric",
"permission-patient",
"permission-user",
"permission-offline",
"sso-openid-connect",
"context-passthrough",
"context-banner",
"context-style",
"context-ehr-patient",
"context-ehr-encounter",
"client-public",
"client-confidential-asymmetric",
"context-standalone-patient",
"authorize-post",
"permission-v2",
"permission-v1"
],
"response_types_supported": [
"code"
],
"token_endpoint_auth_methods_supported": [
"none",
"client_secret_post",
"client_secret_basic",
"private_key_jwt"
],
"introspection_endpoint_auth_methods_supported": [
"client_secret_post",
"client_secret_basic"
],
"revocation_endpoint_auth_methods_supported": [
"client_secret_post",
"client_secret_basic"
],
"code_challenge_methods_supported": [
"S256"
]
}
```
The `implicit` entry in `grant_types_supported` is advertised for legacy compatibility only. SMART App Launch v2.0 clients should use `authorization_code` (with PKCE) or `client_credentials` — see [Supported Grant Types](#authorization).
### SMART Endpoint Reference
| **Endpoint** | **URL** |
| :---------------- | :-------------------------------------------------------------------------------------- |
| **Authorization** | `https://api.commure.com/fhir/authorize` |
| **Token** | `https://api.commure.com/fhir/token` |
| **Introspection** | `https://api.commure.com/fhir/introspect` |
| **Revocation** | `https://api.commure.com/fhir/revoke` |
| **JWKS URI** | `https://cognito-idp.us-east-2.amazonaws.com/us-east-2_F9FdU4NGh/.well-known/jwks.json` |
| **Issuer** | `https://cognito-idp.us-east-2.amazonaws.com/us-east-2_F9FdU4NGh` |
| **SMART Style** | `https://api.commure.com/fhir/smart-style.json` |
## CapabilityStatement
The server's FHIR `CapabilityStatement` (the "conformance statement") lists every supported resource, interaction, search parameter, supported US Core profile, and the SMART security configuration. It is available as an unauthenticated `GET` and can be exported directly:
```
GET https://api.commure.com/fhir/metadata
Accept: application/fhir+json
```
The statement declares `fhirVersion: 4.0.1`, the `application/fhir+json` format, the SMART OAuth URIs (via the `oauth-uris` security extension), and one `rest.resource` entry per supported resource with its `supportedProfile`, interactions, and `searchParam` list.
#### Example `CapabilityStatement` (abridged)
```json theme={null}
{
"resourceType": "CapabilityStatement",
"status": "active",
"kind": "instance",
"fhirVersion": "4.0.1",
"format": ["application/fhir+json"],
"implementationGuide": [
"http://hl7.org/fhir/us/core/ImplementationGuide/hl7.fhir.us.core|6.1.0"
],
"rest": [
{
"mode": "server",
"security": {
"extension": [
{
"url": "http://fhir-registry.smarthealthit.org/StructureDefinition/oauth-uris",
"extension": [
{ "url": "authorize", "valueUri": "https://api.commure.com/fhir/authorize" },
{ "url": "token", "valueUri": "https://api.commure.com/fhir/token" },
{ "url": "introspect","valueUri": "https://api.commure.com/fhir/introspect" },
{ "url": "revoke", "valueUri": "https://api.commure.com/fhir/revoke" }
]
}
],
"service": [
{
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/restful-security-service",
"code": "SMART-on-FHIR"
}
]
}
]
},
"resource": [
{
"type": "Patient",
"supportedProfile": [
"http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient"
],
"interaction": [{ "code": "read" }, { "code": "search-type" }],
"searchParam": [
{ "name": "_id", "type": "token" },
{ "name": "identifier","type": "token" },
{ "name": "name", "type": "string" },
{ "name": "birthdate", "type": "date" },
{ "name": "gender", "type": "token" }
]
}
/* ...one entry per supported resource (see Resource Endpoints below)... */
]
}
]
}
```
## Application Registration & Onboarding Guide
Follow these steps to onboard a new application against the Commure EHR FHIR API.
Read this reference and the [API Terms of Use](#api-terms-of-use). Confirm the FHIR resources and SMART scopes your application requires (see [Scopes](#scopes) and the [Resource-to-USCDI Mapping Matrix](#resource-to-uscdi-mapping-matrix)).
Applications are registered in **AWS Cognito**. Self-serve registration is planned for a future release; today, **contact Commure (d/b/a Athelas)** to register.
**Provide the following:**
* Organization name and technical contact
* Description of the application and the FHIR resources / scopes needed
* Whether the app is patient-facing, provider-facing, or a backend service
* **Client type:** *public* (no secret, uses PKCE), *confidential* (has secret), or *backend service* (`private_key_jwt`)
* Redirect URI(s)
* SMART Launch URI (for EHR launch apps)
* JWKS URL (for backend-service / asymmetric clients)
Upon approval you will receive:
* `client_id` — used in all OAuth flows
* `client_secret` — for confidential clients only
Store secrets and private keys securely; never embed them in distributable public clients.
Point your client at the [`.well-known/smart-configuration`](#smart-on-fhir-configuration) document to discover the authorization and token endpoints, then implement the [Authorization](#authorization) flow that matches your client type.
Use the production **Service Base URL** (`https://api.commure.com/fhir`) to exercise the authorization flows, scope enforcement, resource reads/searches, and bulk export. No separate sandbox environment is required — no registration or production fees apply.
Validate your integration with the [ONC Inferno (g)(10) Standardized API test kit](https://inferno.healthit.gov/) against the [US Core Conformance Statement](#us-core-conformance-statement) and SMART App Launch v2.0 / Bulk Data v2.0 suites.
Once validated, request production access from Commure (d/b/a Athelas). Production access to the certified API capabilities is granted on non-discriminatory terms (see [API Terms of Use](#api-terms-of-use)).
## Authorization
The server implements **SMART on FHIR v2** (§170.215(a)(3)) using AWS Cognito as the identity provider.
### Supported Grant Types
* **`authorization_code`** — Standalone and EHR launch (patient and provider apps)
* **`client_credentials`** — Backend Services Authorization (bulk data, system-level access)
* **`refresh_token`** — Token refresh for offline access
### Token Authentication Methods
| **Method** | **Use for** |
| :------------------------ | :-------------------------------------------------- |
| **`none`** | Public apps (PKCE required) |
| **`client_secret_post`** | Confidential apps, secret in `POST` body |
| **`client_secret_basic`** | Confidential apps, secret in `Authorization` header |
| **`private_key_jwt`** | Asymmetric client auth for Backend Services |
### SMART Standalone Launch Flow
1. App redirects the user to `GET /authorize` with `response_type=code`, `client_id`, `redirect_uri`, `scope`, `state`, `aud`, and PKCE `code_challenge`.
2. The server presents a **consent page** where the user selects which scopes to grant.
3. After consent, the server redirects to the app's `redirect_uri` with an authorization `code`.
4. App exchanges the code via `POST /token` to receive `access_token`, `id_token`, and optionally `refresh_token`.
5. App includes the access token as `Authorization: Bearer ` on all FHIR API requests.
### EHR Launch Flow
1. EHR initiates launch via `GET /launch/{patient_id}?app_launch_url=` (optionally with `encounter_id`). This redirects to the app's launch URL with a `launch` parameter.
2. App redirects to `GET /authorize` including the `launch` parameter in addition to the standard OAuth params.
3. The rest of the flow follows the standalone flow. The resulting token includes `patient` and optionally `encounter` launch context claims.
### Backend Services Authorization (Bulk Data)
For system-level access (e.g., bulk export):
1. App generates a signed JWT (`client_assertion`) using its **private key** registered with Cognito.
2. App calls `POST /token` with:
* `grant_type=client_credentials`
* `client_assertion=`
* `client_assertion_type=urn:ietf:params:oauth:client-assertion-type:jwt-bearer`
* `scope=system/*.*`
3. The server returns a bearer access token valid for system-level operations.
### Token Introspection
```
POST /introspect
```
Validates an access token and returns its claims.
**Request body (form-encoded):** `token=`
### Token Revocation
```
POST /revoke
```
Revokes an access or refresh token.
**Request body (form-encoded):** `token=`, `client_id=`, optionally `client_secret`, `token_type_hint`.
### Token Refresh
Include `grant_type=refresh_token` and `refresh_token=` in the `POST /token` body.
**Note:** Refresh tokens are issued only when the `offline_access` scope is granted. Tokens issued to confidential clients are valid for a minimum of **3 months**.
## Scopes
The server supports **SMART v2 granular scopes**. All resource scopes use the `.rs` (read-search) action.
### Context Scopes
| **Scope** | **Purpose** |
| :------------------- | :------------------------------------------- |
| **`openid`** | OpenID Connect |
| **`profile`** | User profile |
| **`email`** | User email address |
| **`fhirUser`** | Resolves the current user as a FHIR resource |
| **`offline_access`** | Issue a refresh token |
| **`launch`** | EHR launch context |
### Patient-Level Resource Scopes
| **Scope** | **Resource Access Granted** |
| :---------------------------------- | :---------------------------------------------------- |
| **`patient/AllergyIntolerance.rs`** | Allergy and intolerance records |
| **`patient/CarePlan.rs`** | Care plans |
| **`patient/CareTeam.rs`** | Care team members |
| **`patient/Condition.rs`** | All conditions (problems, diagnoses, health concerns) |
| **`patient/Coverage.rs`** | Insurance coverage |
| **`patient/Device.rs`** | Implantable devices |
| **`patient/DiagnosticReport.rs`** | Diagnostic reports (lab, notes) |
| **`patient/DocumentReference.rs`** | Clinical documents and chart notes |
| **`patient/Encounter.rs`** | Encounters and visits |
| **`patient/Goal.rs`** | Health goals |
| **`patient/Immunization.rs`** | Immunization records |
| **`patient/Location.rs`** | Practice locations |
| **`patient/MedicationDispense.rs`** | Medication dispense records |
| **`patient/MedicationRequest.rs`** | Medication requests and prescriptions |
| **`patient/Observation.rs`** | All observations (vitals, labs, surveys, SDOH) |
| **`patient/Organization.rs`** | Organizations |
| **`patient/Patient.rs`** | Patient demographics |
| **`patient/Practitioner.rs`** | Practitioners |
| **`patient/PractitionerRole.rs`** | Practitioner roles |
| **`patient/Procedure.rs`** | Procedures |
| **`patient/Provenance.rs`** | Provenance records |
| **`patient/RelatedPerson.rs`** | Related persons (family, guardians) |
| **`patient/ServiceRequest.rs`** | Service and referral requests |
| **`patient/Specimen.rs`** | Specimens |
### Granular Scopes
For **Condition** and **Observation**, category-level granular scopes are supported:
```
patient/Condition.rs?category=http://terminology.hl7.org/CodeSystem/condition-category|encounter-diagnosis
patient/Condition.rs?category=http://terminology.hl7.org/CodeSystem/condition-category|problem-list-item
patient/Condition.rs?category=http://hl7.org/fhir/us/core/CodeSystem/condition-category|health-concern
patient/Observation.rs?category=http://terminology.hl7.org/CodeSystem/observation-category|vital-signs
patient/Observation.rs?category=http://terminology.hl7.org/CodeSystem/observation-category|laboratory
patient/Observation.rs?category=http://terminology.hl7.org/CodeSystem/observation-category|social-history
patient/Observation.rs?category=http://terminology.hl7.org/CodeSystem/observation-category|survey
patient/Observation.rs?category=http://hl7.org/fhir/us/core/CodeSystem/us-core-category|sdoh
```
If a granular scope is granted, the server **restricts search results to only that category**. For example, a token with `patient/Condition.rs?category=encounter-diagnosis` cannot read problem-list or health-concern conditions.
## US Core Conformance Statement
The Commure EHR FHIR API conforms to the **HL7 US Core Implementation Guide STU 6.1.0** on **FHIR R4 (4.0.1)**, supporting the **USCDI v3** data set, as required by the ONC §170.315(g)(10) Standardized API certification criterion.
| **Conformance area** | **Statement** |
| :----------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Implementation Guide** | [US Core 6.1.0](http://hl7.org/fhir/us/core/STU6.1/) — `http://hl7.org/fhir/us/core/ImplementationGuide/hl7.fhir.us.core` (version `6.1.0`) |
| **FHIR version** | R4B (`4.0.1`) |
| **Data set** | USCDI v3 |
| **SMART App Launch** | [SMART App Launch v2.0.0](http://hl7.org/fhir/smart-app-launch/STU2/) — `§170.215(b)` |
| **Bulk Data Access** | [HL7 FHIR Bulk Data Access (Flat FHIR) v2.0.0](https://hl7.org/fhir/uv/bulkdata/STU2/) — `§170.215(a)(4)` |
| **Supported profiles** | All US Core 6.1.0 profiles listed in the [Resource-to-USCDI Mapping Matrix](#resource-to-uscdi-mapping-matrix); asserted in the [CapabilityStatement](#capabilitystatement) via `supportedProfile`. |
| **Must Support** | US Core "Must Support" elements are populated when present in the source record; absent data is represented per US Core (omission or a US Core data-absent reason). |
| **Required search parameters** | The required US Core search parameters and combination searches are implemented per profile (see [Resource Endpoints](#resource-endpoints)). |
| **Provenance** | US Core Provenance is supported and returned via `_revinclude=Provenance:target` on any resource search. |
| **Profile declaration** | Each returned resource declares its US Core profile in `meta.profile`. |
**Terminology / vocabulary standards** used to satisfy US Core bindings: **LOINC**, **SNOMED CT**, **RxNorm**, **CVX** (immunizations), **ICD-10-CM**, **CPT/HCPCS**, **UCUM** (units), and **HL7 / FHIR** code systems.
**How to verify conformance:** retrieve the live [`/metadata`](#capabilitystatement) CapabilityStatement, and run the [ONC Inferno (g)(10) test kit](https://inferno.healthit.gov/) against the Service Base URL.
## Resource-to-USCDI Mapping Matrix
This matrix shows where each **USCDI v3** data class (the data set supported by US Core 6.1.0) is available **through the API** — the conformant US Core profile, the FHIR resource, and the endpoint a client calls to retrieve it. See [Resource Endpoints](#resource-endpoints) for the full search parameters of each endpoint.
| **USCDI v3 Data Class** | **US Core 6.1.0 Profile** | **FHIR Resource** | **API Endpoint(s)** |
| :----------------------------------------------------- | :----------------------------------------------------------------------- | :------------------------------------ | :--------------------------------------------------------------- |
| **Patient Demographics** | US Core Patient Profile | Patient | `GET /Patient` · `GET /Patient/{id}` |
| **Assessment and Plan of Treatment** | US Core CarePlan Profile | CarePlan | `GET /CarePlan?category=assess-plan` |
| **Care Team Members** | US Core CareTeam Profile | CareTeam | `GET /CareTeam` |
| **Clinical Notes** (Consultation, Discharge, Progress) | US Core DocumentReference Profile | DocumentReference | `GET /DocumentReference` · `GET /DiagnosticReport` |
| **Goals: Patient Goals** | US Core Goal Profile | Goal | `GET /Goal` |
| **Health Concerns** | US Core Condition Profile | Condition | `GET /Condition?category=health-concern` |
| **Immunizations** | US Core Immunization Profile | Immunization | `GET /Immunization` |
| **Lab Tests and Results** | US Core Lab Result Observation Profile, US Core DiagnosticReport for Lab | Observation, DiagnosticReport | `GET /Observation?category=laboratory` · `GET /DiagnosticReport` |
| **Medications** | US Core MedicationRequest Profile | MedicationRequest, MedicationDispense | `GET /MedicationRequest` · `GET /MedicationDispense` |
| **Medication Allergies** | US Core AllergyIntolerance Profile | AllergyIntolerance | `GET /AllergyIntolerance` |
| **Problems** | US Core Condition Profile | Condition | `GET /Condition?category=problem-list-item` |
| **Procedures** | US Core Procedure Profile | Procedure | `GET /Procedure` |
| **Provenance** | US Core Provenance Profile | Provenance | `_revinclude=Provenance:target` · `GET /Provenance/{id}` |
| **Smoking Status** | US Core Smoking Status Observation Profile | Observation | `GET /Observation?category=social-history` |
| **Unique Device Identifiers** (Implantable) | US Core Implantable Device Profile | Device | `GET /Device` |
| **Vital Signs** | US Core Vital Signs Profiles, US Core Pulse Oximetry | Observation | `GET /Observation?category=vital-signs` |
| **Encounters** | US Core Encounter Profile | Encounter | `GET /Encounter` |
| **Insurance Coverage** | US Core Coverage Profile | Coverage | `GET /Coverage` |
| **Service Requests / Referrals** | US Core ServiceRequest Profile | ServiceRequest | `GET /ServiceRequest` |
| **Specimens** | US Core Specimen Profile | Specimen | `GET /Specimen` |
| **Related Persons** | US Core RelatedPerson Profile | RelatedPerson | `GET /RelatedPerson` |
## Resource Endpoints
All resource endpoints require a valid Bearer token with the appropriate scope. Searches return a FHIR `Bundle` of type `searchset`; single-resource reads return the resource directly.
**Date parameters** support FHIR comparator prefixes: `eq`, `ne`, `gt`, `lt`, `ge`, `le`.
**All search endpoints** support both `GET` (query parameters) and `POST /_search` (form-encoded body) forms.
### Patient
**Required scope:** `patient/Patient.rs`
| **Interaction** | **Endpoint** |
| :-------------- | :---------------------- |
| Read | `GET /Patient/{id}` |
| Search (GET) | `GET /Patient` |
| Search (POST) | `POST /Patient/_search` |
**Search Parameters:** `_id`, `identifier`, `name`, `birthdate`, `gender`, `_count` (default 50, max 200), `_revinclude`
**Supported combination searches:** `birthdate + name`, `gender + name`
### AllergyIntolerance
**Required scope:** `patient/AllergyIntolerance.rs`
| **Interaction** | **Endpoint** |
| :-------------- | :--------------------------------- |
| Read | `GET /AllergyIntolerance/{id}` |
| Search (GET) | `GET /AllergyIntolerance` |
| Search (POST) | `POST /AllergyIntolerance/_search` |
**Search Parameters:** `_id`, `patient`, `clinical-status`, `_count`, `_revinclude`
### CarePlan
**Required scope:** `patient/CarePlan.rs`
| **Interaction** | **Endpoint** |
| :-------------- | :----------------------- |
| Read | `GET /CarePlan/{id}` |
| Search (GET) | `GET /CarePlan` |
| Search (POST) | `POST /CarePlan/_search` |
**Search Parameters:** `_id`, `patient`, `category`, `identifier`, `_count`, `_revinclude`
### CareTeam
**Required scope:** `patient/CareTeam.rs`
| **Interaction** | **Endpoint** |
| :-------------- | :----------------------- |
| Read | `GET /CareTeam/{id}` |
| Search (GET) | `GET /CareTeam` |
| Search (POST) | `POST /CareTeam/_search` |
**Search Parameters:** `patient`, `status`, `_include`, `_revinclude`
### Condition
**Required scope:** `patient/Condition.rs` (or a granular category scope)
**Granular scopes are enforced.** If the token only has `patient/Condition.rs?category=encounter-diagnosis`, results are restricted to that category.
| **Interaction** | **Endpoint** |
| :-------------- | :------------------------ |
| Read | `GET /Condition/{id}` |
| Search (GET) | `GET /Condition` |
| Search (POST) | `POST /Condition/_search` |
**Search Parameters:** `_id`, `patient`, `category`, `clinical-status`, `code`, `identifier`, `_count`, `_revinclude`
### Coverage
**Required scope:** `patient/Coverage.rs`
| **Interaction** | **Endpoint** |
| :-------------- | :----------------------- |
| Read | `GET /Coverage/{id}` |
| Search (GET) | `GET /Coverage` |
| Search (POST) | `POST /Coverage/_search` |
**Search Parameters:** `_id`, `patient`, `identifier`, `_count`, `_revinclude`
### Device
**Required scope:** `patient/Device.rs`
| **Interaction** | **Endpoint** |
| :-------------- | :--------------------- |
| Read | `GET /Device/{id}` |
| Search (GET) | `GET /Device` |
| Search (POST) | `POST /Device/_search` |
**Search Parameters:** `_id`, `patient`, `type`, `_count`, `_revinclude`
### DiagnosticReport
**Required scope:** `patient/DiagnosticReport.rs`
| **Interaction** | **Endpoint** |
| :-------------- | :------------------------------- |
| Read | `GET /DiagnosticReport/{id}` |
| Search (GET) | `GET /DiagnosticReport` |
| Search (POST) | `POST /DiagnosticReport/_search` |
**Search Parameters:** `_id`, `patient`, `category`, `type`, `code`, `status`, `date`, `_count`, `_revinclude`
### DocumentReference
**Required scope:** `patient/DocumentReference.rs`
Covers clinical documents and chart notes (consultation notes, progress notes, discharge summaries, etc.).
| **Interaction** | **Endpoint** |
| :-------------- | :-------------------------------- |
| Read | `GET /DocumentReference/{id}` |
| Search (GET) | `GET /DocumentReference` |
| Search (POST) | `POST /DocumentReference/_search` |
**Search Parameters:** `_id`, `patient`, `category`, `type`, `status`, `date`, `_count`, `_revinclude`
### Encounter
**Required scope:** `patient/Encounter.rs`
| **Interaction** | **Endpoint** |
| :-------------- | :------------------------ |
| Read | `GET /Encounter/{id}` |
| Search (GET) | `GET /Encounter` |
| Search (POST) | `POST /Encounter/_search` |
**Search Parameters:** `_id`, `patient`, `date`, `identifier`, `_count`, `_revinclude`
### Goal
**Required scope:** `patient/Goal.rs`
| **Interaction** | **Endpoint** |
| :-------------- | :------------------- |
| Read | `GET /Goal/{id}` |
| Search (GET) | `GET /Goal` |
| Search (POST) | `POST /Goal/_search` |
**Search Parameters:** `_id`, `patient`, `lifecycle-status`, `target-date`, `_count`, `_revinclude`
### Immunization
**Required scope:** `patient/Immunization.rs`
| **Interaction** | **Endpoint** |
| :-------------- | :--------------------------- |
| Read | `GET /Immunization/{id}` |
| Search (GET) | `GET /Immunization` |
| Search (POST) | `POST /Immunization/_search` |
**Search Parameters:** `_id`, `patient`, `date`, `status`, `vaccine-code`, `lot-number`, `manufacturer`, `identifier`, `_count`, `_revinclude`
### Location
**Required scope:** `patient/Location.rs`
| **Interaction** | **Endpoint** |
| :-------------- | :-------------- |
| Search (GET) | `GET /Location` |
### MedicationDispense
**Required scope:** `patient/MedicationDispense.rs`
| **Interaction** | **Endpoint** |
| :-------------- | :--------------------------------- |
| Read | `GET /MedicationDispense/{id}` |
| Search (GET) | `GET /MedicationDispense` |
| Search (POST) | `POST /MedicationDispense/_search` |
**Search Parameters:** `_id`, `patient`, `whenhandedover`, `status`, `medication`, `identifier`, `_count`, `_revinclude`
### MedicationRequest
**Required scope:** `patient/MedicationRequest.rs`
| **Interaction** | **Endpoint** |
| :-------------- | :-------------------------------- |
| Read | `GET /MedicationRequest/{id}` |
| Search (GET) | `GET /MedicationRequest` |
| Search (POST) | `POST /MedicationRequest/_search` |
**Search Parameters:** `_id`, `patient`, `authoredon`, `status`, `intent`, `encounter`, `medication`, `identifier`, `_count`, `_revinclude`
### Observation
**Required scope:** `patient/Observation.rs` (or a granular category scope)
**Granular scopes are enforced.** If the token only has `patient/Observation.rs?category=vital-signs`, results are filtered to vital-signs observations only.
| **Interaction** | **Endpoint** |
| :-------------- | :-------------------------- |
| Read | `GET /Observation/{id}` |
| Search (GET) | `GET /Observation` |
| Search (POST) | `POST /Observation/_search` |
**Search Parameters:** `_id`, `patient`, `category`, `code`, `date`, `_count`, `_revinclude`
**Supported category values:**
```
http://terminology.hl7.org/CodeSystem/observation-category|vital-signs
http://terminology.hl7.org/CodeSystem/observation-category|laboratory
http://terminology.hl7.org/CodeSystem/observation-category|social-history
http://terminology.hl7.org/CodeSystem/observation-category|survey
http://hl7.org/fhir/us/core/CodeSystem/us-core-category|sdoh
```
### Organization
**Required scope:** `patient/Organization.rs`
| **Interaction** | **Endpoint** |
| :-------------- | :----------------------- |
| Read | `GET /Organization/{id}` |
| Search (GET) | `GET /Organization` |
### Practitioner
**Required scope:** `patient/Practitioner.rs`
| **Interaction** | **Endpoint** |
| :-------------- | :----------------------- |
| Read | `GET /Practitioner/{id}` |
| Search (GET) | `GET /Practitioner` |
**Search Parameters:** `_id`, `name`, `family`, `given`, `telecom`, `address`, `address-city`, `address-state`, `address-postalcode`, `identifier`, `_count`
### Procedure
**Required scope:** `patient/Procedure.rs`
| **Interaction** | **Endpoint** |
| :-------------- | :------------------------ |
| Read | `GET /Procedure/{id}` |
| Search (GET) | `GET /Procedure` |
| Search (POST) | `POST /Procedure/_search` |
**Search Parameters:** `_id`, `patient`, `date`, `code`, `status`, `category`, `performer`, `identifier`, `_count`, `_revinclude`
### Provenance
**Required scope:** valid Bearer token (JWT)
Provenance resources are returned inline via `_revinclude=Provenance:target` on any resource search. They can also be read directly by ID.
| **Interaction** | **Endpoint** |
| :-------------- | :--------------------- |
| Read | `GET /Provenance/{id}` |
**Note:** To include Provenance in a search response, add `_revinclude=Provenance:target` to any resource search. Provenance entries appear in the Bundle with `search.mode = include`.
### RelatedPerson
**Required scope:** `patient/RelatedPerson.rs`
| **Interaction** | **Endpoint** |
| :-------------- | :------------------------ |
| Read | `GET /RelatedPerson/{id}` |
| Search (GET) | `GET /RelatedPerson` |
**Search Parameters:** `_id`, `patient`
### ServiceRequest
**Required scope:** `patient/ServiceRequest.rs`
| **Interaction** | **Endpoint** |
| :-------------- | :----------------------------- |
| Read | `GET /ServiceRequest/{id}` |
| Search (GET) | `GET /ServiceRequest` |
| Search (POST) | `POST /ServiceRequest/_search` |
**Search Parameters:** `_id`, `patient`, `category`, `code`, `authored`, `status`, `intent`, `identifier`, `_count`, `_revinclude`
### Specimen
**Required scope:** `patient/Specimen.rs`
| **Interaction** | **Endpoint** |
| :-------------- | :------------------- |
| Read | `GET /Specimen/{id}` |
| Search (GET) | `GET /Specimen` |
## Bulk Data API
The server implements the **HL7 FHIR Bulk Data Access (Flat FHIR) v2.0** specification.
### Export Endpoints
| **Export Type** | **Endpoint** | **Description** |
| :----------------- | :------------------------------ | :---------------------------------------------------- |
| **Group Export** | `GET /Group/{group_id}/$export` | Export data for all patients in a specific group |
| **Patient Export** | `GET /Patient/$export` | Export data for all patients the client has access to |
| **System Export** | `GET /$export` | System-level export of all resources |
All export requests require the **`Prefer: respond-async`** header and a valid Bearer token. The server returns `202 Accepted` with a `Content-Location` header pointing to the status endpoint.
**Optional query parameters:** `_outputFormat`, `_since`
### Export Job Management
| **Operation** | **Endpoint** | **Description** |
| :---------------- | :----------------------------- | :---------------------------------------------------------------------------------- |
| **Check Status** | `GET /bulk-status/{job_id}` | Poll job status; returns `202` while in progress, `200` with manifest when complete |
| **Cancel Job** | `DELETE /bulk-status/{job_id}` | Cancel an in-progress export job |
| **Download File** | `GET /bulk_files/{filename}` | Download an exported NDJSON file |
**Status responses:**
* **`202 Accepted`** with `X-Progress` header — job in progress
* **`200 OK`** with JSON manifest — job complete; manifest includes `output[]` URLs for each resource type
* **`500`** with `OperationOutcome` — job failed
Exported files are in `application/fhir+ndjson` format, one resource per line.
### Group Management
| **Operation** | **Endpoint** |
| :-------------- | :---------------- |
| **List Groups** | `GET /Group` |
| **Read Group** | `GET /Group/{id}` |
## Responses and Error Handling
### Successful Responses
| **Status** | **Meaning** |
| :----------------- | :------------------------------------------------------- |
| **`200 OK`** | Request succeeded; body contains FHIR resource or Bundle |
| **`202 Accepted`** | Bulk export accepted; polling in progress |
### Error Responses
All error responses return a JSON body with a `detail` field (non-FHIR endpoints) or a FHIR `OperationOutcome` resource (bulk data endpoints).
| **Status** | **Meaning** |
| :------------------------------ | :------------------------------------------------------------ |
| **`400 Bad Request`** | Invalid request parameters or malformed token |
| **`401 Unauthorized`** | Missing or invalid Bearer token |
| **`403 Forbidden`** | Token valid but insufficient scope for the requested resource |
| **`404 Not Found`** | Resource with the given ID does not exist |
| **`500 Internal Server Error`** | Unexpected server error |
## Additional Notes
* **Read-only API:** All resource interactions are read (`search-type`, `read`) only. **Write operations are not supported.**
* **Provenance via `_revinclude`:** To retrieve Provenance alongside any resource, append `_revinclude=Provenance:target` to any search query.
* **FHIR Version:** FHIR R4B (`4.0.1`)
* **US Core Version:** 6.1.0
* **Content Type:** All responses use `application/fhir+json`
* **Connections:** **TLS 1.2 or higher required**; connections below 1.2 are rejected.
## API Terms of Use
These Terms of Use govern access to the Commure EHR FHIR API (the "API"). By registering for or accessing the API, the developer ("you") agrees to these terms. They are published in accordance with the ONC Health IT Certification Program API Conditions of Certification (45 CFR §170.404).
### Permitted use
* The API provides read-only access to electronic health information for authorized patients, their personal representatives, and authorized third-party applications, consistent with the scopes granted at authorization.
* Access is limited to the data authorized by the patient (or the authorizing user) and the granted SMART scopes. You must not attempt to access data beyond your authorized scope.
### Fees and non-discrimination
* There are **no fees** for application registration, sandbox access, or production use of the certified API capabilities.
* Access is provided on **non-discriminatory terms** consistent with §170.404. Fair-and-reasonable fees under §170.404(a)(4) may apply only to optional value-added services beyond the certified capabilities.
### Developer responsibilities
* Comply with all applicable laws, including **HIPAA** and the **21st Century Cures Act** information-blocking provisions.
* Protect `client_secret` values, private keys, and tokens. Do not embed secrets in distributable public clients; use **PKCE** for public clients.
* Use **TLS 1.2 or higher** for all connections; connections below TLS 1.2 are rejected.
* Honor the patient's authorization decisions and granted scopes, and provide a clear privacy notice describing how your application uses and discloses data.
* Do not use the API to disrupt, overload, or circumvent the security of the service, and respect published rate limits and acceptable-use expectations.
### Suspension and changes
* Commure (d/b/a Athelas) may suspend or revoke access that poses a security risk, violates these terms, or harms patients or the service, consistent with §170.404 permitted exceptions.
* These terms and the API may change over time; material changes will be reflected on this page. The API is provided "as is" without warranties except as required by law.
For questions about these terms or API access, contact Commure (d/b/a Athelas) at [support@athelas.com](mailto:support@athelas.com).
## Service Base URL
The published Service Base URL directory (FHIR Endpoint Bundle) for the Commure EHR FHIR API is available at:
[**https://api.commure.com/fhir/onc/base.json**](https://api.commure.com/fhir/onc/base.json)
## FAQ
Both are unauthenticated `GET` endpoints on the Service Base URL: the FHIR CapabilityStatement at [`/metadata`](#capabilitystatement) and the SMART discovery document at [`/.well-known/smart-configuration`](#smart-on-fhir-configuration). Examples of each output are included on this page.
Self-serve registration is planned for a future release. Today, contact Commure (d/b/a Athelas) to register — see the [Application Registration & Onboarding Guide](#application-registration--onboarding-guide). There are no registration, sandbox, or production fees.
The API conforms to **US Core 6.1.0** on **FHIR R4 (4.0.1)** and supports the **USCDI v3** data set. See the [US Core Conformance Statement](#us-core-conformance-statement) and the [Resource-to-USCDI Mapping Matrix](#resource-to-uscdi-mapping-matrix).
Run the [ONC Inferno (g)(10) Standardized API test kit](https://inferno.healthit.gov/) against the Service Base URL. It exercises SMART App Launch v2.0, US Core 6.1.0, and Bulk Data v2.0 conformance.
No. The API is **read-only** — all interactions are `read` and `search-type`. Write operations are not supported.
# Air Mandatory Disclosure
Source: https://docs.athelas.com/air_developer/onc_certification/mandatory_disclosure
ONC Health IT Certification Program transparency and disclosure statement for Air per 45 CFR § 170.523(k)(1).
| **Field** | **Value** |
| :--------------------- | :----------------------------------------------------------------------------- |
| **Developer** | Commure (d/b/a Athelas) |
| **Product** | Air |
| **Product Version** | 1 |
| **CHPL ID** | [15.04.04.3268.Air1.01.00.1.260617](https://chpl.healthit.gov/#/listing/11864) |
| **Certification Date** | June 17, 2026 |
| **Last Updated** | June 19, 2026 |
This Health IT Module is compliant with the ONC Certification Criteria for Health IT and has been certified by an ONC-ACB in accordance with the applicable certification criteria adopted by the Secretary of Health and Human Services. This certification does not represent an endorsement by the U.S. Department of Health and Human Services. Drummond Group is accredited by ANSI and approved by ONC for the ONC Health IT Certification Program to certify Health IT Module(s) and Certification of other types of Health IT for which the Secretary has adopted certification criteria under Subpart C of 45 CFR.
## Mandatory Disclosure Statement
In accordance with the **ONC Health IT Certification Program's Transparency and Disclosure Conditions and Maintenance of Certification** requirements (45 CFR § 170.523(k)(1)), Commure (d/b/a Athelas) provides the following mandatory disclosures regarding the costs, fees, and implementation considerations associated with the certified capabilities of **Air**.
## Relied Upon Software
The following third-party software is relied upon to demonstrate compliance with the associated certification criteria:
| **ONC Criterion** | **Third-Party Software** |
| :----------------------------------------------------------------------- | :----------------------- |
| **§170.315(a)(14)** Implantable Device List | NLM AccessGUDID API |
| **§170.315(b)(1)** Transition of Care | EMR Direct |
| **§170.315(b)(2)** Clinical Information Reconciliation and Incorporation | EMR Direct |
| **§170.315(d)(3)** Audit Reports | Google Spreadsheet |
| **§170.315(e)(1)** View, Download, and Transmit to 3rd Party | EMR Direct |
| **§170.315(g)(6)** Consolidated CDA Creation Performance | EMR Direct |
| **§170.315(g)(9)** Application Access — All Data Request | EMR Direct |
| **§170.315(g)(10)** Standardized API for Patient and Population Services | Amazon Cognito |
## Costs and Fees Disclosure
| **Capability** | **Description of Capability** | **Costs or Fees** |
| :----------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **§170.315(a)(5)** Demographics | Enables users to record, change, and access patient demographic information including race, ethnicity, preferred language, sex, sexual orientation, gender identity, date of birth, and related fields per USCDI v3. | Included in standard subscription. |
| **§170.315(a)(12)** Family Health History | Enables users to record, change, and access a patient's family health history using SNOMED CT® coded data. | Included in standard subscription. |
| **§170.315(a)(14)** Implantable Device List | Enables users to record, change, and access UDI information for a patient's implantable devices, with parsing of UDI data via the NLM AccessGUDID API. | Included in standard subscription. |
| **§170.315(b)(1)** Transition of Care | Enables users to create and receive transition of care / referral summaries formatted as C-CDA R2.1 documents containing USCDI v3 data, with Direct Project secure transport. | Included in standard subscription. Optional third-party HISP / Direct fees billed by that provider. |
| **§170.315(b)(2)** Clinical Information Reconciliation and Incorporation | Enables users to reconcile and incorporate medications, medication allergies, problems, and other USCDI v3 data from a received C-CDA into the patient record. | Included in standard subscription. |
| **§170.315(b)(10)** Electronic Health Information Export | Enables users to perform a patient-level and population-level export of electronic health information in a computable format, with documented export format published publicly. | Included in standard subscription. |
| **§170.315(b)(11)** Decision Support Interventions | Enables users to configure and use evidence-based decision support interventions, including drug-drug and drug-allergy contraindication checks, with source attribute management. | Included in standard subscription. |
| **§170.315(d)(1)** Authentication, Access Control, and Authorization | Verifies user identity and enforces role-based access controls before granting access to electronic health information. | Included in standard subscription. |
| **§170.315(d)(2)** Auditable Events and Tamper-Resistance | Records auditable events (including access, modification, and deletion of ePHI) in a tamper-resistant audit log. | Included in standard subscription. |
| **§170.315(d)(3)** Audit Report(s) | Enables authorized users to generate audit reports based on the recorded audit log data. | Included in standard subscription. |
| **§170.315(d)(4)** Amendments | Enables users to amend patient records and append patient-supplied amendment requests. | Included in standard subscription. |
| **§170.315(d)(5)** Automatic Access Time-Out | Automatically terminates user sessions after a configurable period of inactivity. | Included in standard subscription. |
| **§170.315(d)(6)** Emergency Access | Permits identified users emergency access to electronic health information. | Included in standard subscription. |
| **§170.315(d)(7)** End-User Device Encryption | Prevents local storage of electronic health information on end-user devices, ensuring ePHI remains protected. | Included in standard subscription. |
| **§170.315(d)(8)** Integrity | Verifies the integrity of electronic health information using SHA-256 hashing per §170.210(c)(2). | Included in standard subscription. |
| **§170.315(d)(9)** Trusted Connection | Establishes trusted connections for the exchange of electronic health information using transport-level encryption. | Included in standard subscription. |
| **§170.315(d)(12)** Encrypt Authentication Credentials | Encrypts stored authentication credentials in accordance with §170.210(a)(2). | Included in standard subscription. |
| **§170.315(d)(13)** Multi-Factor Authentication | Supports multi-factor authentication of user identity using industry-recognized standards. | Included in standard subscription. |
| **§170.315(e)(1)** View, Download, and Transmit to 3rd Party | Enables patients (and authorized representatives) to view, download, and transmit their health information to a 3rd party, including a method for requesting restrictions on USCDI v3 data. | Included in standard subscription. |
| **§170.315(e)(3)** Patient Health Information Capture | Enables users to identify, record, and reference patient-generated health information or data from a non-clinical setting. | Included in standard subscription. |
| **§170.315(g)(3)** Safety-Enhanced Design | Product is designed using a user-centered design process (NISTIR 7741) with usability testing across required certification criteria. | Included in standard subscription. |
| **§170.315(g)(5)** Accessibility-Centered Design | Product development incorporates accessibility-centered design standards across applicable certified capabilities. | Included in standard subscription. |
| **§170.315(g)(6)** Consolidated CDA Creation Performance | Product creates C-CDA documents conforming to C-CDA R2.1 Companion Guide Release 4.1 from source data and does not act as a pass-through. | Included in standard subscription. |
| **§170.315(g)(7)** Application Access — Patient Selection | Provides a documented API for application access to patient selection. | Included in subscription. No registration, sandbox, or production fees. §170.404(a)(4) fair-and-reasonable fees may apply for value-added services. |
| **§170.315(g)(9)** Application Access — All Data Request | Provides a documented API for application access to all data for a single patient, returning USCDI v3 data formatted per C-CDA R2.1. | Included in subscription. No registration, sandbox, or production fees. §170.404(a)(4) fair-and-reasonable fees may apply for value-added services. |
| **§170.315(g)(10)** Standardized API for Patient and Population Services | Provides a FHIR R4 API conforming to US Core IG v6.1.0 and SMART App Launch v2.0.0 for patient and population-level data access by third-party applications. | Included in subscription. No per-app, per-call, volume, registration, sandbox, or production fees. §170.404(a)(4) fair-and-reasonable fees may apply for value-added services. |
## Considerations and Types of Costs Affecting Implementation, Use, or Interoperability
* **Additional software required:** No additional third-party software is required for customers to implement or use the certified capabilities of Air, beyond the relied upon software listed above which is included as part of the product.
* **Contractual considerations:** None. There are no contractual considerations that restrict a customer's use, transfer, modification, or exchange of data using the certified capabilities of Air.
* **Technical considerations:** None. There are no technical considerations affecting interoperability or data portability of the certified capabilities of Air.
* **Customer modification considerations:** None. There are no considerations affecting customer-initiated modifications to the certified capabilities of Air.
## Contact
For questions about this disclosure, please contact Commure (d/b/a Athelas) support at [support@athelas.com](mailto:support@athelas.com).
# Adding an Implantable Device
Source: https://docs.athelas.com/air_developer/onc_feature_guides/adding_an_implantable_device
Air lets you record, change, and access a patient's **implantable devices** from their **Problem List**. This supports ONC Health IT certification criterion **§170.315(a)(14) Implantable Device List**.
You only need the device's **Unique Device Identifier (UDI)**. Air looks the UDI up through the **NLM AccessGUDID API** and automatically populates the remaining device details for you.
## Navigate to Implantable Devices
### Open the patient's Problem List
1. From the left navigation, open the **Patients** tab and search for the patient by name or MRN.
2. On the patient's profile, open the **Problem List** tab.
3. Scroll down past the **Problem List** table to the **Implantable Devices** section.
## Add an Implantable Device
### Look up a device by its UDI
1. In the **Implantable Devices** section, click the **+ Add Implantable Device** button.
2. In the **Create Implantable Device** panel, paste or scan the device's UDI into the **UDI (Human Readable)** field, then run the lookup using the field's lookup icon.
As long as you enter a valid UDI, Air looks it up through the **NLM AccessGUDID API** and automatically populates the rest of the device fields:
| **Field** | **Description** |
| :------------------------- | :--------------------------------------------------------------------------- |
| **UDI (Human Readable)** | The device's Unique Device Identifier. Paste or scan it to drive the lookup. |
| **Device Identifier (DI)** | The portion of the UDI that identifies the device's make and model. |
| **Status** | The device's current status (for example, **Active**). |
| **Device Name** | The device's brand or model name. |
| **Distinct Identifier** | An additional identifier for the specific device, when applicable. |
| **Serial Number** | The device's serial number. |
| **Lot Number** | The device's lot or batch number. |
| **Manufacture Date** | The date the device was manufactured. |
| **Expiration Date** | The date the device expires. |
3. Review the populated fields and click **Save**. The device now appears in the **Implantable Devices** table, with its **UDI**, **Device Identifier**, **Status**, **Serial Number**, **Lot Number**, **Manufacture Date**, and **Expiration Date**.
✨**Smart Tip:** Scanning the UDI barcode directly into the **UDI (Human Readable)** field is the fastest way to add a device—the AccessGUDID lookup fills in the make, model, and dates so you don't have to type them.
## Edit or Delete an Implantable Device
### Update a saved device
The action buttons sit at the far right of the **Implantable Devices** table.
1. Drag the table's horizontal scroll bar to the right to reveal the **pencil** (edit) and **trash** (delete) icons on the device's row.
2. Click the **pencil** icon to edit the device's details, or the **trash** icon to remove it.
### FAQ
Implantable devices live on the patient's **Problem List** tab, in the **Implantable Devices** section below the problem list itself.
No. Enter the device's **UDI** in the **UDI (Human Readable)** field and run the lookup. Air queries the **NLM AccessGUDID API** and automatically populates the Device Identifier, Device Name, Status, Serial Number, Lot Number, Manufacture Date, and Expiration Date.
Scroll the **Implantable Devices** table to the right to reveal the action icons on the device's row. Click the **pencil** icon to edit, or the **trash** icon to delete.
# Adding a Patient's Family Health History
Source: https://docs.athelas.com/air_developer/onc_feature_guides/adding_family_health_history
Air lets you record, change, and access a patient's **family health history** directly on their related-person records. This supports ONC Health IT certification criterion **§170.315(a)(12) Family Health History**, which requires that a user be able to capture a patient's family health history as coded data.
In Air, family health history is stored on a patient's **Related Persons** (for example, a parent, sibling, or grandparent). For each related person you can record one or more conditions, each tagged with an **ICD-10** code and a **clinical status**.
## Navigate to Family Health History
### Open the patient's demographics
1. From the left navigation, open the **Patients** tab and search for the patient by name or MRN.
2. On the patient's profile, open the **Demographics** tab.
3. Scroll down to the **Responsible Parties** section. This section has two tabs: **Financially Responsible Parties** and **Related Persons**.
4. Select the **Related Persons** tab. Family health history is recorded against related persons, and the table includes a dedicated **Family Health History** column.
## Create a Family Health History
### Add a related person with health history
To record family health history, you first add the family member as a related person.
1. On the **Related Persons** tab, click the **+ Related Person** button.
2. In the **Create Related Person** panel, enter the person's **First Name** and **Last Name**, choose their **Relationship** to the patient, and add their **Phone**, **Email**, and **Address** as needed.
3. Toggle on **Enable Health History**. This opens the **Family History Conditions** widget, where you record the related person's conditions.
4. In the **Family History Conditions** widget, select the condition in the **Family Health History (ICD-10)** field, then choose a **Clinical Status** for that condition. Click the **+** icon to add additional conditions for the same person.
Each condition is assigned one of **6 clinical statuses**. Use the status that best describes the family member's current state for that condition:
| **Clinical Status** | **What it means** |
| :------------------ | :-------------------------------------------------------------------------------------------------------- |
| **Active** | The condition is currently present and active for the family member. |
| **Recurrence** | The condition has returned after a prior period of remission or resolution. |
| **Relapse** | The condition has returned after a period during which it was inactive. |
| **Inactive** | The condition is not currently active, but is being recorded as part of the history. |
| **Remission** | The signs and symptoms are largely or fully absent, though the underlying condition may still be present. |
| **Resolved** | The condition has fully resolved and is no longer present. |
5. Click **Create Related Person** to save. The family health history is stored on the related person under **Responsible Parties**.
✨**Smart Tip:** Record each diagnosis as its own condition row so every entry carries its own ICD-10 code and clinical status. This keeps the patient's family history accurate and exportable as coded data.
## Edit a Family Health History
### Update an existing related person
To add or modify conditions for a family member you have already created:
1. On the **Related Persons** tab, click the **pencil** (edit) icon next to the person.
2. In the **Edit Related Person** panel, make sure **Enable Health History** is toggled on, then use the **Family History Conditions** widget to add, change, or remove conditions—just as you did when creating the person.
3. To delete a condition, click the **X** to the right of that condition row.
4. Click **Update Related Person** to save your changes.
### FAQ
Family health history lives on the patient's **Related Persons**, found under **Demographics → Responsible Parties → Related Persons**. The table includes a **Family Health History** column so you can see at a glance which related persons have conditions recorded.
Yes. In the **Family History Conditions** widget, click the **+** icon to add another condition row. Each row has its own **Family Health History (ICD-10)** code and **Clinical Status**, so you can record as many conditions as needed for one person.
Click the **pencil** icon next to the related person to open the **Edit Related Person** panel, then click the **X** to the right of the condition you want to remove. Click **Update Related Person** to save.
**Note:** Deleting a condition removes it from that related person's family history.
# Reconciling Incoming C-CDAs
Source: https://docs.athelas.com/air_developer/onc_feature_guides/reconcile_incoming_ccda
When another clinic sends a patient's records to your practice, Air receives them as a **C-CDA** (Consolidated Clinical Document Architecture) document. From the **CCDA** inbox you can **reconcile** the incoming clinical data—**problems**, **medications**, and **allergies**—into the patient's chart in Air.
This page walks through the full reconciliation flow, from matching the document to a patient to confirming the merge. To learn how to read a received document and what each clinical section means, see [Viewing a C-CDA Document](/air_developer/onc_feature_guides/view_ccda).
## What is reconciliation?
In the context of ONC Health IT certification, **clinical information reconciliation** is the process of comparing the data in a document received from an outside source against the data already in the patient's record, then deciding what to incorporate. Air's C-CDA reconciliation supports ONC criterion **§170.315(b)(2) Clinical Information Reconciliation and Incorporation**, which covers reconciling and incorporating **medications, medication allergies, and problems** (along with other USCDI data) from a received C-CDA into the patient record.
## Open the CCDA inbox
1. From the left navigation, open the **Inbox**.
2. At the top of the inbox, select the **CCDA** tab. This shows the C-CDA documents for your whole site.
Unlike the Claims page, the CCDA view is **site-wide**—every clinician at your site sees the same list of documents.
## Find and sort C-CDAs
The list of documents appears on the left. Each entry shows the patient, the date, and a **From** field—the clinic or provider name the document was sent from.
* Use the **search** box at the top to find a document by patient or site.
* Use the **sort** button below the search box to change the order. By default, documents are sorted by date sent, so the most recently received document appears at the top.
The list is also split into tabs:
| **Tab** | **What it shows** |
| :------------------ | :------------------------------------------------------------------------------------------------------------ |
| **Awaiting Review** | Documents you still need to reconcile. This is where you'll spend most of your time. |
| **Reconciled** | Documents that have already been reconciled, including the name of the clinician who reconciled each one. |
| **Sent** | C-CDAs your site has sent out to other clinics, with the recipient, author, sent time, and last updated time. |
## Reconcile a C-CDA
Reconciliation brings the incoming clinical data into the patient's chart in five steps: match the document to a patient, begin reconciliation, map the incoming problems to ICD-10, reconcile each item, and confirm the merge. Select a document from the **CCDA** inbox to begin.
### 1. Match the document to a patient
A new document opens with a **No patient matched** banner. Use the **Match patient** bar at the top to link the C-CDA to the correct patient in Air. Air automatically searches your database and surfaces the most likely matches first, in this order:
1. Same name **and** same date of birth
2. Same first and last name, different date of birth
3. Same last name, different first name, same date of birth
4. Same first name, different last name, same date of birth
Each suggestion shows the patient's **date of birth** and **MRN** so you can confirm you have the right person. You can also type any name into the bar to search manually. Select the patient, then click **Match**.
**Note:** If the patient doesn't exist in Air yet, click the **add patient** (**+**) button to the right of the match bar to create them, then match the document to the new record.
### 2. Begin reconciliation
Once a patient is matched, the document shows **Matched Patient** and a **Needs Reconciliation** badge. Before incorporating anything, you can review the document's clinical sections, attachments, and original XML—see [Viewing a C-CDA Document](/air_developer/onc_feature_guides/view_ccda) for the full walkthrough.
When you're ready, start reconciliation by clicking either **Begin Reconcile** at the bottom-left or **Continue to Reconciliation** at the top-right.
### 3. Map the incoming problems to ICD-10
Air codes problems using **ICD-10**, but most incoming C-CDAs code their problems in **SNOMED**. So before you can reconcile, the **Map SNOMED Problems to ICD-10** screen asks you to confirm an ICD-10 code for each incoming problem.
* When there's a single clear match, Air **pre-selects** the ICD-10 code for you.
* When a problem has more than one possible match (or none is pre-filled), the dropdown reads **Search ICD-10 options**—open it and select the correct code yourself.
Once every problem has an ICD-10 code, click **Confirm Mappings** at the bottom-right to continue. (Use **Back** at the bottom-left if you need to return to the document.)
### 4. Reconcile problems, medications, and allergies
The reconciliation screen places the patient's **current chart data on the left** and the **incoming C-CDA data on the right**, grouped into the three categories required by ONC criterion **§170.315(b)(2)**: **Problems**, **Medications**, and **Allergies**. Each category tracks your progress with a **Reviewed** counter (for example, **0/3 Reviewed**).
For each item:
* **Add new data.** When the current chart shows **N/A — Not in current chart**, select the **Incoming Data** entry to add it. Use **Add All New** to accept every new item in a category at once.
* **Resolve conflicts.** When both sides have a value, choose whether to keep the **current** entry or accept the **incoming** one.
Incoming entries display their source codes—**SNOMED** and mapped **ICD-10** for problems, **RxNorm** for medications—so you can verify exactly what you're incorporating.
Allergies are kept **evergreen** for patient safety: you can add new allergies during reconciliation, but Air never lets you remove an existing allergy. This prevents a known allergy from being dropped from the chart by accident.
### 5. Review and confirm the merge
When you've reviewed every item, click **Merge Patient Data** at the bottom-right. The **Reconciliation Review** window opens with a final summary of every problem, medication, and allergy that will be written to the chart—review it carefully, then click **Confirm Merge** to incorporate the data. (Click **Cancel** to go back without merging.)
At the top of the review window you can **optionally attribute this reconciliation to a facility** using the **Select a facility** dropdown. This is used for **MIPS** reporting. If you leave it blank, the reconciliation is attributed to the default **TIN** of the parent facility you belong to.
After you confirm, the document moves to the **Reconciled** tab, tagged with your name as the clinician who reconciled it.
### FAQ
The CCDA view is **site-wide**, so all clinicians at your site see the same list of incoming and reconciled documents. This is different from the Claims page, which is more narrowly scoped.
Click the **add patient** (**+**) button to the right of the **Match patient** bar to add the patient, then match the document to the new record.
Air stores problems using **ICD-10** codes, while most incoming C-CDAs code their problems in **SNOMED**. The mapping step translates each incoming SNOMED problem to the right ICD-10 code so it lands correctly in the chart. Air pre-selects the code when there's a single clear match; otherwise you choose it from the **Search ICD-10 options** dropdown.
Per ONC criterion **§170.315(b)(2)**, reconciliation covers three categories: **Problems**, **Medications**, and **Allergies**. The other C-CDA sections are read-only clinical context—see [Viewing a C-CDA Document](/air_developer/onc_feature_guides/view_ccda).
No. Allergies are kept **evergreen** for patient safety—you can add new allergies, but existing ones can't be removed during reconciliation, so a known allergy is never dropped by accident.
Selecting a facility attributes the reconciliation to that location for **MIPS** reporting. It's optional; if you don't choose one, the reconciliation defaults to the parent facility's **TIN**.
# Viewing a C-CDA Document
Source: https://docs.athelas.com/air_developer/onc_feature_guides/view_ccda
When a **C-CDA** (Consolidated Clinical Document Architecture) arrives in your CCDA inbox, you can open and read it on its own—before, after, or independently of [reconciling its data into the chart](/air_developer/onc_feature_guides/reconcile_incoming_ccda). This page covers reading a received document, what each clinical section contains, and customizing how the document is laid out.
To open a document, go to the **CCDA** tab in the **Inbox** and select an entry from the list. See [Viewing and Reconciling Incoming C-CDAs](/air_developer/onc_feature_guides/reconcile_incoming_ccda) for how to find and sort the inbox.
## Read the document
The document opens as a **Continuity of Care Document**, showing the patient's name, date of birth, the sending site, and the date received. Its contents are organized into the standard C-CDA clinical sections—for example **Guardians & Related Persons**, **Allergies and Intolerances**, **Medications**, **Problems**, **Immunizations**, **Results**, and more.
You also have two ways to keep the source data:
* **Additional Files** — Files attached during the transition of care (for example, an X-ray report or urinalysis). Clicking a file downloads it so you can open it in your preferred viewer.
* **Download XML** — Downloads the exact XML document that was sent to you.
When you're ready to incorporate the data, click **Continue to Reconciliation** (or **Begin Reconcile**) to start [reconciliation](/air_developer/onc_feature_guides/reconcile_incoming_ccda).
## Understanding the C-CDA sections
A C-CDA is organized into standard **clinical sections** defined by the C-CDA / USCDI standard. Each section is a self-contained part of the patient's chart—allergies, medications, problems, and so on—and is shown in Air as a labeled table. Not every document includes every section: a section only appears when the sending system populated it, so a given C-CDA may show only a handful of the sections below.
The table below explains every section you may encounter, what clinical information it holds, and the columns you'll see inside it.
| Section | What it contains | What you'll see |
| :------------------------------ | :--------------------------------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------- |
| **Allergies and Intolerances** | Substances—drugs, foods, or environmental triggers—the patient reacts to, with the type and severity of the reaction. Review carefully before prescribing. | Substance / Reaction / Severity / Status |
| **Procedures** | Surgical, diagnostic, and therapeutic procedures the patient has had (e.g. an inhalation treatment or a pacemaker insertion). | Procedure / Date / Status |
| **Medications** | Drugs the patient is taking or has taken, including how much, how it's given, and how often. | Medication / Dose / Route / Frequency / Start Date / Status |
| **Problems** | The patient's diagnoses and clinical conditions, coded to ICD-10, marked active or resolved. | Problem / ICD-10 / Onset Date / Status |
| **Immunizations** | Vaccines the patient has received. Codes (e.g. `88`, `106`) are CVX vaccine codes when no name is supplied. | Immunization / Date / Status |
| **Results** | Laboratory and diagnostic test results, with the measured value and its unit (e.g. a urinalysis panel). | Name / Value / Unit / Date / Status |
| **Encounters** | Visits and interactions the patient has had with providers or facilities. | Type / Date / Location / Status |
| **Care Team** | The clinicians responsible for the patient's care and how to reach them. | Name / Role / Phone |
| **Guardians & Related Persons** | Family members, guardians, and other people connected to the patient (e.g. spouse, grandparent, dependent). | Name / Relationship / Address / Telephone |
| **Patient Demographics** | Identity and administrative details—name, date of birth, race, ethnicity, language, address, contact info, and occupation. | Field / Value |
| **Vital Signs** | Measured vitals such as blood pressure, heart rate, temperature, weight, height, BMI, and oxygen saturation. | Name / Value / Unit / Date |
| **Social History** | Lifestyle and social factors—tobacco use, occupation, sexual orientation, gender identity, and social-needs screenings. | Type / Value / Status |
| **Plan of Treatment** | Planned or ordered future care, including follow-up activities and referrals to address the patient's needs. | Description / Status / Date |
| **Insurance** | The patient's coverage—payer, plan, policy details, and effective dates. | Payer / Plan / Group Number / Policy Number / Plan Type / Effective Date |
| **Mental Status** | Observations about the patient's cognitive and psychological state. | Name / Value / Date / Status |
| **Functional Status** | The patient's ability to perform daily activities—mobility, dependence on aids (e.g. a cane), and disability status. | Name / Value / Date / Status |
| **Medical Equipment** | Devices the patient uses or has implanted, identified by a Unique Device Identifier (UDI) where available. | Device / UDI / Status / Start Date / End Date |
| **Health Concerns** | Risks or issues the care team is actively tracking (e.g. food insecurity), distinct from formal diagnoses. | Concern / Status / Onset Date / Resolution Date |
| **Goals** | Targets the patient and care team are working toward (e.g. resolving recurring fever, gaining energy). | Goal / Description / Date / Status |
| **Reason for Referral** | Why the patient was referred—the prompt for this transition of care. | Referral / Indication / Date / Status |
| **Notes** | Free-text clinical narratives such as progress notes, procedure notes, and laboratory report summaries, with their author. | Type / Text / Date / Author / Status |
| **Assessments** | The clinician's evaluation of the patient's condition and reasoning, often summarizing findings and next steps. | Assessment / Author / Date |
When you reconcile a document, the categories you actively **incorporate** into the chart—per ONC criterion **§170.315(b)(2)**—are **Medications**, **Allergies and Intolerances**, and **Problems**. The remaining sections are read-only clinical context that travels with the document. See [Viewing and Reconciling Incoming C-CDAs](/air_developer/onc_feature_guides/reconcile_incoming_ccda).
## Customize your view
To make long documents easier to read:
* Every section is **collapsible**. Use **Collapse All** to collapse them at once.
* **Rearrange sections** by dragging them using the handles in the left sidebar.
Your view preferences are **saved across all notes**, not just the document you're looking at. If you collapse or rearrange the sections while viewing Alice Newman's document, the next patient you open—say, Jeremy Bates—will be laid out exactly the same way. You set up your view once and it carries over to every patient, so there's no need to switch it back each time.
## FAQ
Yes. Use **Download XML** to save the exact document that was sent to you, and open any attachments from the **Additional Files** menu.
Yes. View preferences are saved across all notes, so the layout you set on one patient's document carries over to every patient you open next—no need to rearrange each time.
# Patient Information Export
Source: https://docs.athelas.com/air_developer/patient_information_export/patient_information_export
EHI Export feature and export format documentation for ONC §170.315(b)(10) Electronic Health Information (EHI) Export — covers single-patient and patient-population exports produced by Air, their contents (including patient attachments), data dictionary, permissions, and implementation considerations.
Air provides a dedicated **Electronic Health Information (EHI) Export** feature that lets a practice export a patient's electronic health information in a computable, standards-based format, as required by **ONC §170.315(b)(10)**. This page is both the **user guide** for that feature and the **Export Format Documentation** a recipient needs to read, parse, and computably consume the exported data without contacting Commure (d/b/a Athelas).
The feature supports two export modes defined by the criterion:
* **Single-patient EHI export** — §170.315(b)(10)(i)(A): export the complete EHI for one patient.
* **Patient-population EHI export** — §170.315(b)(10)(i)(B): export the EHI for all patients in the practice.
**Stable public URL for this page** (embedded in every export):
`https://trainings.air.athelas.com/air_developer/patient_information_export/patient_information_export`
Air emits the following across its exports:
* **`claims.csv`** — billing and encounter-level claim data (UTF-8 CSV)
* **`*.xml`** — clinical content as a HL7 Consolidated CDA R2.1 (C-CDA) Continuity of Care Document (UTF-8 XML)
* **`attachment/`** — the documents uploaded to a patient's chart (faxes, scans, PDFs, images, etc.), exported in their original file formats inside the export ZIP
## Permissions
The EHI Export feature is restricted to ***Providers* and *Admins***:
* **Single-patient export** *(providers and admins)* — runs in-app and is available to any provider or admin with access to the patient whose record is being exported.
* **Patient-population (site-wide) export** *(admins)* — requested by an account **Admin** on behalf of the practice.
Access is enforced by Air's role-based access controls (ONC §170.315(d)(1)). Every export action is recorded in the tamper-resistant audit log (§170.315(d)(2)). See the [**Mandatory Disclosure**](/air_developer/onc_certification/mandatory_disclosure) page for the full list of certified capabilities.
## Single-patient EHI export
Air offers **two self-service single-patient exports** from the application: a **claims CSV** (billing/encounter data) and a **clinical C-CDA download** (USCDI clinical data). The C-CDA download is delivered as a **ZIP archive** containing the patient's C-CDA `.xml` plus an `attachment/` folder with the documents uploaded to their chart. Together these make up the complete single-patient EHI export. The detailed schema for each file is documented under [Data structure documentation](#data-structure-documentation).
### Export claims for a single patient (CSV)
The Claims page export produces a `claims.csv` file containing every claim row visible after the filter is applied.
**To export claims for one patient:**
1. Open the **Claims** page from the left navigation.
2. Click **Filter** at the top of the page.
3. Filter by **Patient** and select the patient whose claims you want to export.
4. Apply the filter — the table now shows only that patient's claims.
5. Click **Export** to download `claims.csv`.
* **What's included:** every claim row for the selected patient — claim/encounter identifiers, status, provider, facility, date of service, payers, charges, payments, adjustments, and balances. See the [Claims CSV column reference](#claims-csv-claims-csv).
* **Output format:** UTF-8 CSV (`claims.csv`).
* **File location:** downloads through your browser to its default **Downloads** folder as `claims.csv`.
**Note:** The exported CSV contains exactly the columns and rows that are currently visible after filtering. Apply any additional column or date filters before exporting if you need a narrower slice.
### Export the clinical record for a single patient (C-CDA XML + attachments)
The C-CDA download produces a **ZIP archive** containing a single `.xml` file conforming to the **HL7 Consolidated CDA R2.1 Continuity of Care Document (CCD)** standard — covering allergies, medications, problems, encounters, immunizations, lab results, vital signs, social history, procedures, and the other USCDI v3 sections — plus an `attachment/` folder holding the documents uploaded to the patient's chart in their original file formats.
**To download a patient's C-CDA:**
1. Open the **Inbox** tab from the left navigation.
2. Select the **C-CDA** tab.
3. Search by **patient name** in the search bar.
4. Click into the matching patient.
5. Click **Download** to save the C-CDA ZIP — the C-CDA `.xml` plus the patient's `attachment/` folder.
* **What's included:** the patient's USCDI clinical data — demographics plus the clinical sections listed in [Export contents](#export-contents-ehi-data-classes-supported-formats) — and the documents uploaded to the patient's chart, exported as original-format files under `attachment/`.
* **Output format:** a ZIP archive containing one HL7 C-CDA R2.1 UTF-8 XML file plus an `attachment/` folder of original-format attachments.
* **File location:** downloads through your browser to its default **Downloads** folder as a `.zip` file.
**Note:** Clinical sections with no recorded data for the patient are still present in the file, emitted with `nullFlavor="NI"` so a recipient can detect their presence. See [Considerations & error conditions](#considerations-error-conditions).
**Note:** The `attachment/` folder holds the patient's uploaded documents (faxes, scans, PDFs, images, etc.) in their original file formats. If the patient has no attachments on file, the folder is empty or omitted. See [Patient attachments](#patient-attachments).
## Patient-population (site-wide) EHI export
For an EHI export covering **all patients** in your practice (population-level export per §170.315(b)(10)(i)(B)), an account **Admin** requests the export from Commure (d/b/a Athelas) support.
### How to request a population export
**Email:** [support@athelas.com](mailto:support@athelas.com)
Include your **practice name** and the **date range** you need.
**Processing details:**
* Support compiles the export and delivers it as a single **encrypted ZIP archive** via a **secure, expiring download link** sent to the requesting Admin.
* Typical turnaround is **within 5 business days** of the request.
* The secure download link expires after a limited period; request a new link from support if it lapses before you download the archive.
**Package structure:**
The archive bundles the same content as the single-patient export — one C-CDA `.xml` per patient, a practice-wide `claims.csv`, and an `attachment/` folder holding each patient's uploaded documents (one subfolder per patient). The archive is named `EHI_Export_YYYYMMDD.zip` (where `YYYYMMDD` is the export date); each patient's C-CDA file is named by the patient's first and last name, and each patient's attachment subfolder uses the same `First Last` naming:
```
EHI_Export_YYYYMMDD.zip
├── claims.csv # all claims across the patient population (same schema as the single-patient CSV)
├── Jane Doe.xml # one C-CDA Continuity of Care Document per patient, named "First Last.xml"
├── John Smith.xml
├── ...
└── attachment/ # patient attachments, one subfolder per patient
├── Jane Doe/ # documents uploaded to Jane Doe's chart, in their original formats
│ ├── referral.pdf
│ └── insurance_card.jpg
├── John Smith/
│ └── intake_form.pdf
└── ...
```
**Output formats:** identical to the single-patient export — UTF-8 `claims.csv`, HL7 C-CDA R2.1 UTF-8 XML, and patient attachments in their original file formats. All are fully specified under [Data structure documentation](#data-structure-documentation).
## Export contents — EHI data classes & supported formats
The export carries the EHI/USCDI data classes below. Each class is identified by where it appears in the export so a recipient can confirm coverage.
| **EHI / USCDI data class** | **Where it appears in the export** | **Format** |
| :----------------------------------------------- | :-------------------------------------------------------------------------------------------------------- | :--------------------------------------- |
| **Patient demographics** | C-CDA `recordTarget` header (name, DOB, sex, race, ethnicity, language, address, telecom, marital status) | C-CDA XML |
| **Allergies & intolerances** | C-CDA Allergies & Intolerances section | C-CDA XML |
| **Medications** | C-CDA Medications section | C-CDA XML |
| **Problems** | C-CDA Problem List section | C-CDA XML |
| **Encounters** | C-CDA Encounters section + `claims.csv` (Date of Service) | C-CDA XML + CSV |
| **Immunizations** | C-CDA Immunizations section | C-CDA XML |
| **Laboratory (results & tests)** | C-CDA Results section | C-CDA XML |
| **Vital signs** | C-CDA Vital Signs section | C-CDA XML |
| **Smoking status / social history** | C-CDA Social History section | C-CDA XML |
| **Procedures** | C-CDA Procedures section + `claims.csv` (CPT) | C-CDA XML + CSV |
| **Goals** | C-CDA Goals section | C-CDA XML |
| **Health concerns** | C-CDA Health Concerns section | C-CDA XML |
| **Assessment & plan of treatment** | C-CDA Assessments + Plan of Treatment sections | C-CDA XML |
| **Care team members** | C-CDA `documentationOf` / `serviceEvent` + author/authenticator | C-CDA XML |
| **Functional & mental status** | C-CDA Functional Status + Mental Status sections | C-CDA XML |
| **Medical equipment / implantable device (UDI)** | C-CDA Medical Equipment section | C-CDA XML |
| **Reason for referral** | C-CDA Reason for Referral section | C-CDA XML |
| **Provenance (author/custodian)** | C-CDA header (`author`, `custodian`, `legalAuthenticator`) | C-CDA XML |
| **Billing / claim & encounter data** | `claims.csv` (charges, payments, adjustments, balance, payer) | CSV |
| **Patient attachments / documents** | `attachment/` folder (per-patient subfolders in the population export) | Original file formats (PDF, image, etc.) |
**Supported file formats:**
* **`claims.csv`** — UTF-8 comma-separated values.
* **C-CDA `.xml`** — HL7 Consolidated CDA R2.1 Continuity of Care Document (UTF-8 XML), aligned to the **USCDI v3** data classes.
* **Patient attachments** — the patient's uploaded documents (e.g., PDF, JPEG, PNG, TIFF), stored unmodified in their original upload formats inside the `attachment/` folder.
## Data structure documentation
This section is the **data dictionary and schema** for each exported file — sufficient for a recipient to interpret the data without further reference.
### Claims CSV (`claims.csv`)
| **Property** | **Value** |
| :----------------- | :----------------------------------------------------------- |
| **File extension** | `.csv` |
| **MIME type** | `text/csv` |
| **Encoding** | UTF-8 |
| **Delimiter** | Comma (`,`) |
| **Quote char** | Double-quote (`"`) around values containing commas or quotes |
| **Line ending** | LF (`\n`) |
| **Header row** | Yes — the first row is the column header |
| **One row per** | Claim |
**Column reference (in order):**
| **Column** | **Type** | **Description** |
| :------------------ | :------------------ | :----------------------------------------------------------------------------------------------------------- |
| **Claim ID** | Integer | Unique identifier for the claim within Air. |
| **Status** | String | Current claim status (e.g., `Self pay: Unpaid`, `Submitted`, `Paid`, `Denied`). |
| **Stage** | String | Workflow stage of the claim (e.g., `Patient`, `Insurance`, `Closed`). |
| **Patient** | String | Patient full name as `First Last`. |
| **Provider** | String | Rendering provider full name. |
| **Facility** | String | Name of the facility / place of service. |
| **Facility ID** | Integer | Internal facility identifier. |
| **Date of Service** | Date (`MM/DD/YYYY`) | The date the service was rendered. |
| **Insurances** | String | Pipe-separated list of payers on the claim. `UNRECOGNIZED INSURANCE` indicates a self-pay or unmapped payer. |
| **Charges** | Decimal | Total billed charges in USD. |
| **Allowed Amount** | Decimal | Total allowed amount per the remittance. |
| **Ins. Paid** | Decimal | Total amount paid by insurance(s). |
| **PR Paid** | Decimal | Total patient responsibility paid. |
| **Total Adj.** | Decimal | Total adjustments (contractual write-offs, courtesy adjustments, etc.). |
| **Balance** | Decimal | Remaining outstanding balance on the claim. |
| **Tags** | String | Comma-separated list of tags. `-` denotes no tags. |
| **Assignees** | String | Comma-separated list of users assigned to the claim. |
**Example row:**
```csv theme={null}
Claim ID,Status,Stage,Patient,Provider,Facility,Facility ID,Date of Service,Insurances,Charges,Allowed Amount,Ins. Paid,PR Paid,Total Adj.,Balance,Tags,Assignees
5818970,Self pay: Unpaid,Patient,Jane Doe,Dr. Sample Provider,MAIN OFFICE,2349,06/04/2048,UNRECOGNIZED INSURANCE,0.0,0.0,0.0,0.0,0.0,0.0,-,Casey Admin
```
**Parsing notes:**
* Decimal values use `.` as the decimal separator and never include a thousands separator or a currency symbol.
* Dates are always in `MM/DD/YYYY` format in the local time zone of the practice.
* Empty string fields appear as an empty value between two commas; `-` is used specifically for the **Tags** column when no tags are present.
* The `Insurances` column can contain multiple payers separated by `|` (space-pipe-space).
### Clinical C-CDA XML
The clinical export is a **HL7 Consolidated CDA R2.1 Continuity of Care Document (CCD)** — the same format used for B.1 (Transitions of Care) and B.6 (Data Export). It is a single XML file per patient.
| **Property** | **Value** |
| :----------------------------- | :------------------------------------------------------ |
| **File extension** | `.xml` |
| **MIME type** | `application/xml` (or `text/xml`) |
| **Encoding** | UTF-8 |
| **Standard** | HL7 CDA Release 2 |
| **Implementation guide** | C-CDA R2.1 (Consolidated CDA Release 2.1, 2015 Edition) |
| **Document type** | Continuity of Care Document (CCD) |
| **US Realm Header templateId** | `2.16.840.1.113883.10.20.22.1.1` (ext `2015-08-01`) |
| **CCD templateId** | `2.16.840.1.113883.10.20.22.1.2` (ext `2015-08-01`) |
| **Document code** | LOINC `34133-9` — *Summarization of Episode Note* |
**Root element & namespaces:**
```xml theme={null}
...
```
**Top-level header elements** (present in every export):
* `recordTarget` — patient demographics (name, DOB, gender, race, ethnicity, address, telecom, language, marital status)
* `author` — software/device that produced the document
* `dataEnterer` — user who entered the data
* `custodian` — organization responsible for the source document
* `informationRecipient` — intended recipient
* `legalAuthenticator` — provider attesting to the document
* `authenticator` — additional attestation
* `documentationOf` / `serviceEvent` — care team and effective time range
* `componentOf` / `encompassingEncounter` — encounter context
**Sections included in the structured body:**
Each section is represented as a `...` block. Sections that are not applicable to the patient are emitted with `nullFlavor="NI"` ("No information") so recipients can still detect their presence.
| **Section** | **LOINC code** | **Section templateId** |
| :--------------------------- | :------------- | :----------------------------------------------------- |
| **Allergies & Intolerances** | `48765-2` | `2.16.840.1.113883.10.20.22.2.6.1` (ext `2015-08-01`) |
| **Medications** | `10160-0` | `2.16.840.1.113883.10.20.22.2.1.1` (ext `2014-06-09`) |
| **Problem List** | `11450-4` | `2.16.840.1.113883.10.20.22.2.5.1` (ext `2015-08-01`) |
| **Encounters** | `46240-8` | `2.16.840.1.113883.10.20.22.2.22.1` (ext `2015-08-01`) |
| **Immunizations** | `11369-6` | `2.16.840.1.113883.10.20.22.2.2.1` (ext `2014-06-09`) |
| **Results (Lab)** | `30954-2` | `2.16.840.1.113883.10.20.22.2.3.1` (ext `2015-08-01`) |
| **Vital Signs** | `8716-3` | `2.16.840.1.113883.10.20.22.2.4.1` (ext `2015-08-01`) |
| **Social History** | `29762-2` | `2.16.840.1.113883.10.20.22.2.17` (ext `2015-08-01`) |
| **Procedures** | `47519-4` | `2.16.840.1.113883.10.20.22.2.7.1` (ext `2014-06-09`) |
| **Functional Status** | `47420-5` | `2.16.840.1.113883.10.20.22.2.14` (ext `2014-06-09`) |
| **Assessments** | `51848-0` | `2.16.840.1.113883.10.20.22.2.8` |
| **Plan of Treatment** | `18776-5` | `2.16.840.1.113883.10.20.22.2.10` (ext `2014-06-09`) |
| **Goals** | `61146-7` | `2.16.840.1.113883.10.20.22.2.60` |
| **Health Concerns** | `75310-3` | `2.16.840.1.113883.10.20.22.2.58` (ext `2015-08-01`) |
| **Reason for Referral** | `42349-1` | `1.3.6.1.4.1.19376.1.5.3.1.3.1` (ext `2014-06-09`) |
| **Mental Status** | `10190-7` | `2.16.840.1.113883.10.20.22.2.56` (ext `2015-08-01`) |
| **Medical Equipment** | `46264-8` | `2.16.840.1.113883.10.20.22.2.23` (ext `2014-06-09`) |
**Vocabularies / code systems referenced:**
| **Code system** | **OID** | **Used in** |
| :------------------------- | :--------------------------- | :--------------------------------------------- |
| **LOINC** | `2.16.840.1.113883.6.1` | Section codes, lab observations, document type |
| **SNOMED CT** | `2.16.840.1.113883.6.96` | Problems, allergies, reactions, findings |
| **RxNorm** | `2.16.840.1.113883.6.88` | Medication codes |
| **CPT-4** | `2.16.840.1.113883.6.12` | Encounter and procedure codes |
| **NUCC Provider Taxonomy** | `2.16.840.1.113883.6.101` | Provider specialty |
| **CDC Race & Ethnicity** | `2.16.840.1.113883.6.238` | Patient race / ethnicity |
| **HL7 ActCode** | `2.16.840.1.113883.5.4` | Severity, encounter codes, assertions |
| **HL7 ActClass / Concern** | `2.16.840.1.113883.5.6` | Concern act class |
| **NCI Thesaurus** | `2.16.840.1.113883.3.26.1.1` | Route of administration |
**Section entry pattern (example — Allergy):**
Each clinical entry follows the C-CDA "Concern Act → Observation → (optional) Reaction / Severity Observation" nesting:
```xml theme={null}
```
**Parsing notes:**
* Every entry is identified by a UUID in ``. UUIDs are stable across re-exports of the same record.
* Dates use the HL7 v3 `TS` format: `YYYYMMDD` or `YYYYMMDDHHMMSS±ZZZZ`.
* Coded values appear as ``.
* Narrative text in each section's `` element is the human-readable rendering and references the structured entries via ``.
* Sections with `nullFlavor="NI"` contain no structured entries — only a `` placeholder such as `"No Lab Test required. No Lab results."`. Treat these as "data not available" rather than "data absent."
**Recommended validation tools:**
* [HL7 C-CDA R2.1 IG](http://www.hl7.org/implement/standards/product_brief.cfm?product_id=492)
* [ONC C-CDA Scorecard](https://site.healthit.gov/scorecard/) — validates structure, templates, and vocabulary bindings
### Patient attachments
Patient attachments are the documents uploaded to a patient's chart — scanned forms, faxes, referral letters, clinical PDFs, photos, and similar files. They are exported **in their original file formats, byte-for-byte unchanged**, inside an `attachment/` folder in the export ZIP.
| **Property** | **Value** |
| :----------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Location** | `attachment/` directory inside the export ZIP |
| **Organization** | **Population export:** one subfolder per patient, named `First Last` (matching the C-CDA file naming). **Single-patient C-CDA ZIP:** the patient's files sit directly under `attachment/`. |
| **Filenames** | Original uploaded filenames, preserved as-is |
| **Formats / MIME types** | Heterogeneous — whatever was uploaded (e.g., `application/pdf`, `image/jpeg`, `image/png`, `image/tiff`). Determine each file's type from its extension or magic bytes. |
| **Encoding** | Binary — files are stored unmodified |
**Folder layout — population export:**
```
attachment/
├── Jane Doe/ # one subfolder per patient, named "First Last"
│ ├── referral.pdf
│ └── insurance_card.jpg
├── John Smith/
│ └── intake_form.pdf
└── ...
```
**Folder layout — single-patient C-CDA download:**
```
.zip
├── Jane Doe.xml
└── attachment/ # the patient's uploaded documents, in their original formats
├── referral.pdf
└── insurance_card.jpg
```
**Parsing notes:**
* Files are exported unmodified; determine each file's type from its extension or magic bytes rather than from any assumed naming convention.
* A patient with no attachments on file has **no subfolder** (population export) or an **empty/omitted** `attachment/` folder (single-patient C-CDA ZIP). Treat this as "no documents on file," not an error.
* In the population export, attachments are grouped into per-patient subfolders named `First Last` — the same naming convention used for each patient's C-CDA `.xml` file.
## Considerations & error conditions
| **Condition** | **What to expect** |
| :------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Filtered CSV scope** | `claims.csv` contains exactly the columns and rows visible after filtering. Clear or adjust filters before exporting if you need a different slice. |
| **Self-pay / unmapped payers** | Claims with no recognized payer show `UNRECOGNIZED INSURANCE` in the `Insurances` column. |
| **Empty clinical sections** | C-CDA sections with no data for the patient are present but carry `nullFlavor="NI"` — interpret as "data not available," not "section omitted." |
| **No attachments on file** | A patient with no uploaded documents has no subfolder under `attachment/` (population export) or an empty/omitted `attachment/` folder (single-patient C-CDA ZIP). Treat as "no documents on file." |
| **Attachment formats vary** | Files under `attachment/` are exported in their original upload formats (PDF, image, etc.) and original filenames. Determine each file's type from its extension or magic bytes, not a fixed format. |
| **Empty export** | If no records match the current filter (single-patient) or date range (population), the export contains headers/structure but no data rows. Verify your filters and date range. |
| **Browser download blocked** | Single-patient downloads open through your browser. If nothing downloads, allow pop-ups/downloads for the Air domain and retry. |
| **Population export turnaround** | Population exports are not instantaneous — they are compiled by support and delivered via a secure link (see [Patient-population export](#patient-population-site-wide-ehi-export)). |
| **Secure link expiry** | The population-export download link expires after a limited period. Request a fresh link from support if it lapses before you download. |
| **Large population exports** | Very large practices may receive the export split into multiple batches; follow the instructions in the delivery email to assemble them. |
## FAQ
The EHI Export feature is limited to ***Providers* and *Admins***. Single-patient exports can be run in-app by any provider or admin with access to the patient. The patient-population (site-wide) export is requested by an account **Admin** through support. Every export is recorded in the audit log.
* **`claims.csv`** holds **billing and encounter-level** data — claim status, providers, facilities, dates of service, payers, charges, payments, adjustments, and balances.
* **C-CDA `.xml`** holds the **clinical record** — demographics plus allergies, medications, problems, encounters, immunizations, lab results, vital signs, social history, procedures, and the other USCDI v3 data classes.
* **`attachment/`** holds the **documents uploaded to the patient's chart** — faxes, scans, referral letters, PDFs, and images — in their original file formats. In the single-patient export these are bundled in the C-CDA download ZIP alongside the `.xml`.
Together they form the complete EHI export for a patient.
Yes. Documents uploaded to a patient's chart — faxes, scans, referral letters, PDFs, images — are exported in their **original file formats** inside an `attachment/` folder.
* In the **single-patient** export, the `attachment/` folder is bundled in the **C-CDA download ZIP** alongside the patient's `.xml`.
* In the **population (site-wide)** export, the `attachment/` folder sits inside `EHI_Export_YYYYMMDD.zip` with **one subfolder per patient**, named `First Last`.
If a patient has no attachments on file, their subfolder is omitted (population) or the `attachment/` folder is empty (single-patient). See [Patient attachments](#patient-attachments).
Population (site-wide) exports are requested by an **Admin** emailing [support@athelas.com](mailto:support@athelas.com) with your practice name and date range. Within **5 business days**, support returns an **encrypted ZIP** (`EHI_Export_YYYYMMDD.zip`) via a **secure download link**, containing a practice-wide `claims.csv`, one C-CDA `.xml` per patient (named `First Last.xml`), and an `attachment/` folder with each patient's uploaded documents (one subfolder per patient). See [Patient-population (site-wide) EHI export](#patient-population-site-wide-ehi-export).
Use the [ONC C-CDA Scorecard](https://site.healthit.gov/scorecard/) to validate structure, templates, and vocabulary bindings, and the [HL7 C-CDA R2.1 Implementation Guide](http://www.hl7.org/implement/standards/product_brief.cfm?product_id=492) as the authoritative reference. The file is a HL7 C-CDA R2.1 Continuity of Care Document encoded in UTF-8 XML.
Yes. The clinical C-CDA export is aligned to the **USCDI v3** data classes. The [Export contents](#export-contents-ehi-data-classes-supported-formats) table identifies each EHI/USCDI data class and where it appears in the export.
# Messages
Source: https://docs.athelas.com/air_front_desk/communicate_with_patients/messages
Air maintains an internal and external messaging functionality that lets sites communicate with other site staff, and directly with patients through the Patient Portal.
## Messaging from Insights
Messages in Insights can be accessed by clicking the **Messages** tab under **Utilities**. From there, the **DM** tab lists all existing chats for the user. To create a new chat, click **+ New Chat** at the bottom of the pane.
To add recipients, type their names in the box containing **Start a new message**:
1. **External patients** are designated with `Patient: XXX`.
2. **Internal staff** show just their name.
Multiple recipients can be added to a message to create a group text. **Any recipients of a group text can see all other recipients — including external patients.** This is not a private text blast feature.
From here, pressing **Enter** or clicking out of the recipient menu generates a new message window where you can type and send your message. Messages also support attaching files — click **+ Add An Attachment** at the bottom of the pane.
## New messages
New messages appear at the top of the messages list with an unread indicator. Clicking the message shows the full thread, where you can respond.
## Messaging from the Athelas Patient Portal
For patients, messages sent from Insights can be accessed in the Patient Portal. Patients are notified of new messages via text or email alerts.
After logging into the portal, patients access messages via the **Messages** tab in the sidebar.
From here, patients can see existing conversations and send replies. At this time, patients **cannot create new conversations** from the portal — all conversations must be initiated by the provider or site staff.
### FAQ
No. All conversations must be initiated from Insights by provider or site staff. Once a thread exists, the patient can reply freely from the portal.
Patients receive either an SMS or email alert (or both, depending on contact info on file). The notification links directly into the portal, where they can log in and respond.
Yes — add multiple recipients in the **Start a new message** box. **However**, all recipients (including patients) see each other's names in the thread. For private bulk outreach, use **Outreach Flows** or **Text Blast** instead.
Yes. Click **+ Add An Attachment** at the bottom of the message pane. Attachments are supported for both internal staff threads and external patient threads.
Click **Messages** under **Utilities** in the sidebar. The **DM** tab shows all existing chats. The Notifications Center at the bottom of the sidebar also shows a count of unread messages and links directly to the thread.
# Outreach Flows
Source: https://docs.athelas.com/air_front_desk/communicate_with_patients/outreach_flows
Outreach Flows let practices send automated and scheduled messages to patients — delivering communications, reminders, forms, and post-visit flows. Several filters and workflow types support: pre-visit messaging, post-visit messaging, appointment-based messaging, scheduled-date messaging, and recurring date-based messaging.
## Outreach Flows general guide
To access the Outreach Flows section, navigate to the **Outreach Flows** tab in the sidebar, under **Automation**.
From here, you can select one of several suggested pre-built templates, or start with a blank template for custom workflows.
The basic structure of an Outreach Flow workflow includes the following sections:
* **Timing or triggers** for sending
* **Which patients** to message
* **Content and type** of message to send
* **Forms** to include in the message
### Timing or triggers for sending
There are two main types of timing: **Calendar-Based** and **Appointment-Based**.
**Calendar-Based** messages send either on a recurring basis or on a specific date. Recurring messages can repeat daily, or weekly on set days of the week.
Messages set to send on a specific date will only send once.
**Appointment-Based** messages only send to patients who have an appointment in Air matching the selected filters. They are sent on a time relative to the appointment, either before or after.
You can also add additional **touchpoints** to the same workflow — either as follow-ups to the original message, or to send new information.
### Which patients to message
Several filters determine which patients are sent the message. Some filters are only available for Appointment-Based messaging, since they refer to the underlying appointment.
Available filters include:
* **Patient** — send to (or exclude) one or more specific patients.
* **Recipient Type** — send to (or exclude) categorized patients. Currently includes **Underscheduled Patients** and **Lead/Referral** (present in Lead Tracker).
* **Recipient Age** — send to patients within a specific age range, or above/below a certain age.
* **Upcoming Appointments** — send to patients with more or fewer than a certain number of upcoming appointments, or a range.
* **Appointment Count** — send to patients with more or fewer than a certain number of appointments over a specific time period.
* **Facility** — send to (or exclude) patients who have ever had an appointment at a specific facility.
* **Rendering Provider** — send to (or exclude) patients who have ever had an appointment with a specific rendering provider.
* **Insurance** — send to (or exclude) patients with a specific insurance.
* **Supervising Provider** *(Appointment-Based only)* — send to (or exclude) patients whose appointment is tied to a specific supervising provider.
* **Referring Provider** *(Appointment-Based only)* — send to (or exclude) patients whose appointment is tied to a specific referring provider.
* **Appointment Status** *(Appointment-Based only)* — send to (or exclude) patients whose appointment has a specific status.
* **Appointment Type** *(Appointment-Based only)* — send to (or exclude) patients whose appointment is a specific type.
* **Appointment Number** *(Appointment-Based only)* — send to (or exclude) patients on a specific appointment number, either overall or within a case.
### Content and type of message to send
There are two forms of communication: **text** and **email**. Text messages only require a body; email messages also allow you to set the subject line.
Within the message, you can insert **Variants** — dynamic fields based on the patient or appointment. Available Variants include:
* **Appointment Start Date** (e.g., "Monday, February 16, 2026")
* **Appointment Start Datetime** (e.g., "Monday, February 16, 2026 at 2:30 PM")
* **Facility Address**
* **Facility Name**
* **Facility Phone Number**
* **Link To Forms** (required if sending forms with the message)
* **Patient Portal Link**
* **Recipient Name**
* **Referring Provider Name**
* **Rendering Provider Name**
* **Site Name**
* **Supervising Provider Name**
* **Under Scheduled Count** (e.g., "3 of 6" based on next calendar week's Plan of Care)
### Forms to include in the message
You can also send forms along with the message — such as intake forms prior to a visit, or post-visit forms like NPS Surveys.
Clicking **+ Add Form** opens a window with all existing templates. Select any desired forms and they will display in the workflow.
## Underscheduled Patients
Underscheduled Patients is a pre-built workflow that targets patients who have fewer appointments scheduled in the following calendar week than prescribed by their active Plan of Care. They receive a text or email with a link to schedule additional appointments via the Patient Portal.
### Defining underscheduled patients
A patient is considered underscheduled when they have fewer appointments scheduled in the following calendar week than prescribed by their active POC.
### Creating the workflow
1. **Navigate to Outreach Flows** in the sidebar, under **Automation**.
2. **Click + Create New Workflow** and select the **Follow-Up and Re-Engagement** suggested template.
3. **Set desired configurations for the workflow:**
* **Workflow Name**
* **Filters to select desired patients:**
* **Patient** — specific patients by Name & DOB
* **Recipient Type** — `Under Scheduled`
* **Timing to run workflow:**
* **Calendar-Based** — run on a recurring schedule or specific date.
* **Recurring** — select frequency (every 1, every 2, etc.) and unit of time (Day, Week). If Week is selected, choose days of the week.
* **Specific Date** — run on a single date once.
* **Message content / format:**
* **Message Type** → Text or Email
* **Text Content** — insert variables unique to each patient, including:
* **Patient Portal Link** — specialized link to sign up for additional appointments
* **Recipient Name**
* **Site Name** — based on existing appointments in the POC
* **Under Scheduled Count** (e.g., "3 of 6 completed")
4. **View filtered patient recipient list.** Upon setting filters, the Contact List automatically updates with the recipients who will receive the message. Scroll to view the full list or filter for a specific patient to confirm inclusion.
5. **Save and view the workflow.** You can also view scheduled upcoming messages and any previously sent messages — showing the method used to contact each patient, and whether it was successful.
6. **Messages are sent.** After the workflow is created, messages go out as scheduled. Patients receive either text or email (or both) with the desired content and links.
## NPS Surveys
The NPS Survey workflow collects patient feedback after a visit and automatically routes follow-up actions based on the response. An NPS survey form can be added to a post-visit Outreach Flow, prompting patients to submit feedback via text or email. Promoters can be directed to leave public reviews on sites like Google or Yelp, while detractor responses trigger automated email notifications to internal stakeholders for follow-up.
### Creating an NPS Survey workflow
To create an NPS survey workflow, navigate to the **Outreach Flows** tab under **Automation**. Use the existing **NPS survey** suggested template, or create your own. The suggested template is pre-populated with filters for:
* **Appointment status** = `Completed`
* **Send** = 2 days after appointment
* **Text message** with pre-populated content
If you want to create your own template, determine the appropriate filters, then include **NPS Survey** in the Forms section.
### NPS Survey functionality
NPS surveys let recipients rate their experience after an appointment. They are prompted to rate "How likely are you to recommend to a friend or colleague?" from `0`–`10`, and a freeform text box to explain their score.
* For patients who rate **0–6 (detractors)**, sites can add email addresses for key stakeholders to receive an email explaining the patient submitted a lower score.
* For patients who rate **9–10 (promoters)**, sites can embed a review link to any desired review website — Google, Yelp, Zocdoc, etc. Patients are directed to leave an additional review on that site.
Promoter review links and detractor notification emails are configured per facility in **EHR Preferences → Marketing**. See [Adding promoter review links and detractor notification emails](#adding-promoter-review-links-and-detractor-notification-emails) below.
### Adding promoter review links and detractor notification emails
To update the promoter review links and the email recipients for detractor notifications:
1. **Navigate to EHR Preferences → Marketing.**
2. **Select one or multiple facilities** from the facility picker.
3. **Edit the desired review links and email addresses** for the selected facilities.
4. **Click Save.**
✨**Smart Tip:** You can save different review links and email recipients per facility — useful when each location uses its own Google Business Profile or routes detractor follow-up to a different manager.
### NPS reporting and review
After patients complete NPS surveys, their rating and explanation are stored as a PDF in the patient's **Attachments**, alongside other form responses.
Sites can view aggregated NPS data in **EHR Reporting**. NPS can be reported at the site level, or broken out by facility, provider, week, and several other categories.
## Example workflows
**Send an NPS survey to all patients after their 10th completed appointment**
This configuration sends an NPS survey to any patient who has completed their 10th appointment.
* **Filters:**
* **Appointment Status** includes `Checked in` and `Completed` (to include patients whose visit notes are not yet signed/submitted)
* **Appointment Number** is `10th within Case` (to send an NPS to patients who have come to the practice before, but have a new case / chief complaint)
* **Timing / Triggers:**
* Message is set to **Appointment-Based** to trigger off an appointment event
* First touchpoint is set to **1 day after appointment** to send the day after
### FAQ
**Calendar-Based** fires on a schedule independent of appointments — recurring weekly, or on a specific date. **Appointment-Based** fires relative to an appointment (e.g., "1 day before," "2 days after"). Use Appointment-Based for pre-visit reminders and post-visit surveys; Calendar-Based for ongoing campaigns like underscheduled reactivation.
Yes — add **touchpoints** within the same workflow. Each touchpoint can have its own timing and content, so you can follow up a pre-visit reminder with a day-of reminder without building separate workflows.
Use the **Recipient Type** filter and select `Under Scheduled`. Combined with a Calendar-Based recurring schedule, this is the built-in reactivation workflow — patients who have fewer scheduled appointments next week than their POC prescribes will receive the message.
The variant won't resolve — the message will send with a broken form link. Always add forms in the **Forms** section first if you insert `Link To Forms` in the body.
Email recipients for detractor alerts are configured per facility in **EHR Preferences → Marketing**. Add or update the email addresses there, select the facilities you want the change applied to, and save — no Athelas representative needed.
Update the promoter review link in **EHR Preferences → Marketing**. You can set a different link per facility, so each location can route promoters to its own Google Business Profile or alternate review platform.
# Review your Tasks
Source: https://docs.athelas.com/air_front_desk/manage_your_tasks/tasks
The **Tasks** page allows you to assign and receive tasks from colleagues, set due dates, and track progress. It can be used for any type or size of task - whether you’re requesting that a colleague upload supporting documentation on a claim or arranging a replacement MRI machine.
When you navigate to the Tasks page, you’ll see four tabs:
* **My Tasks** – tasks assigned to you
* **Available Group Tasks** - tasks assigned to groups you are a member of
* **Assigned by Me** – tasks you have assigned to others
* **All Tasks** - tasks assigned across the organization
### Create a New Task
1. Click **+ Task** on the top right of the page.
2. In the Create Task popup, enter a clear **title** and **description**.
3. Under **Assignee**, start typing a colleague’s name. The menu will auto-populate with names of staff who have Insights accounts, click to select.
**Note: You can assign a task to multiple patients**
4. Set the **priority level**, **status**, and **due date** (if applicable).
5. Choose a **task type**:
* Select from existing options, or
* Create a new task type by typing in the box and clicking **+ Create**.
6. Optionally, upload a file related to the task (note: larger files may take longer to upload).
7. Once all fields are complete, click **Create**.
When a task is assigned to you, you will be notified (with an update shown on the bell icon on top of the page)
### Update Tasks
**Update Task Status:** You can edit, delete, or update the status of a task by clicking the corresponding icons.
\*\*Sort Tasks: \*\*Click the arrow in any column header to sort by ascending, descending, or neutral order. Shift-Sort - Sort one column, then hold *Shift* while sorting another column to apply multiple sorting rules.
\*\*View Archived Tasks: \*\*To view archived tasks, use the Filter in the upper-right corner and include Archived in the statuses shown.
\*\*Bulk edit Tasks: \*\*To manage multiple tasks at once, check the boxes beside them and click on the edit button on the top to perform bulk actions.
### Assign Tasks to User Groups
Tasks can be assigned to 1 group OR 1 individual at any point of time. Once a task is self-assigned from a group, the task will be unassigned from the group and moved to your “My Tasks” tab.
\*\*View Group Details: \*\*View your groups, search members, browse membership lists by clicking on **My Groups.**
**Assign a task to a group:**
1. Click **+ Task** (top right).
2. In the drawer:
* Add **Title** and optional **Description**.
* Choose **Assign to a Group** tab → pick a group from the dropdown.
* Complete other required fields (priority, due date, etc.).
* Click **Create**.
3. Find your task in **Assigned by Me** tab. You can edit or delete the task here.
**Self assign a task:** Open **Available Group Tasks** tab, from here:
* **Edit/Delete** group tasks if you have permissions.
* **Self-assign** → click **Assign to Me**.
* Confirm → task moves from **Group** → **My Tasks** tab.
**Note**: Once you self-assign a task it will be unassigned from the group and moved to your “My Tasks” tab.
In your “My Tasks” tab, search or filter for the corresponding task and select the pencil icon to bring up the “Edit Task” drawer.
Click on the “Assign to a Group” tab, and select a group that you want to assign to.
Save your changes, and the task will be reassigned to the group that you have selected.
No, a task can only have one assignee at any point of time. This means that if the task is assigned to a group, it cannot be assigned to a user.
Likewise, a task cannot be assigned to a group when it is assigned to a user. This helps to simplify task assignment and prevent duplicate efforts within your team.
### Set-up User Groups
Go to **Preferences → User Groups**.
* Click **Create Group** (top right).
* In the drawer:
* Enter **Group Name** (must be unique).
* Add an optional **Description**.
* Add **Users** (optional).
* Click **Create**.
* After the groups are created you can search for them, edit group name, description or members, delete the group.
### Create Tasks linked to patient Attachments
For a given attachment, you can create a task associated to it. The task created will be pre-filled with the attachment linked to it.
Navigate to the **Patient Attachments** page > Each row in the attachments table has a **Manage Tasks** button on the right.
The notifications next to the attachment will have one of the below icons:
* **Incomplete task** → Red icon
* **Complete task** → Green icon
* **No task attached** → No icon
\*\*To add a task: \*\*
* Click Manage Tasks > **New Task** (bottom left)
* Fill in required fields:
* Task Title
* Assignee
* Priority
* Due date
* Task type
* The task will be **automatically linked** to the current attachment.
* Click **Create** to save.
* Once created you can view details, edit, delete or update the task status. Status options include: *Not Started, In Progress, Done, or Archived.*
Once you create your task, you can view the task from the Attachments page and the Task page.
You can create a new task linked to an attachment only from the patient's attachment page. However, you can view and manage existing tasks linked to attachments from the Tasks page.
### Create Tasks linked to Faxes
For a given incoming or outgoing fax, you can create a task associated to it. The task created will be pre-filled with the fax number linked to it.
Navigate to the \*\*Fax \*\*page > Each row in the Fax table has a **Manage Tasks** button on the right.
The notifications next to the attachment will have one of the below icons:
* **Incomplete task** → Red icon
* **Complete task** → Green icon
* **No task attached** → No icon
**To add a task:**
* Click Manage Tasks > **New Task** (bottom left)
* Fill in required fields:
* Task Title
* Assignee
* Priority
* Due date
* Task type
* The task will be **automatically linked** to the current fax.
* Click **Create** to save.
* Once created you can view details, edit, delete or update the task status. Status options include: *Not Started, In Progress, Done, or Archived.*
Once you create your task, you can view the task from the Fax page and the Task page.
\*\*Note: \*\*You can also add task notes in the description by expanding the task
You can create a new task linked to a Fax only from the Fax page. However, you can view and manage existing tasks linked to a Fax from the Tasks page.
# Online Scheduling
Source: https://docs.athelas.com/air_front_desk/portal_and_online_scheduling/online_scheduling
Online Scheduling with Athelas lets practices provide a custom, practice-specific scheduling link to new or existing patients for booking appointments. Patients access available appointment times by providing their name, date of birth, and confirming their phone number through a 2FA code — giving a low-friction place for new or existing patients to book appointments.
## Accessing and configuring Online Scheduling
Settings for Online Scheduling can be accessed in the **Preferences** tab, under the **Portal Configs** sub-tab.
### Turning on Online Scheduling
From the **Portal Configs** tab, practices can enable Online Scheduling by clicking the toggle in the **Online Patient Scheduling** section.
### Configuring Online Scheduling
Once turned on, several settings are available to adjust the behavior:
* **Site Slug** — changes the URL patients use to access online scheduling for the practice. For example, with the slug `yourpractice`, patients go to:
[portal.athelas.com/site/yourpractice](http://portal.athelas.com/site/yourpractice)
* **New Patient Signup Destination** — determines the behavior when a patient indicates they are a new patient. Practices can either allow access to the scheduling functionality directly, or redirect new patients to the Landing Page to generate a lead.
* **New Patient Appointment Scheduling** — when toggled on, appointments from new patients are sent as **Appointment Requests** rather than booking directly to the calendar. This is similar to the general **Require approval on appointment requests** setting, but applies only to patients who select New Patient.
## Using Online Scheduling as a patient
When patients click on the site-specific link, they are taken to a sign-in page where they indicate whether they are a new or existing patient.
### New patients
If **New Patient** is selected and the New Patient Signup Destination is set to **Lead Tracker**, the patient is redirected to the Lead Tracker Landing Page where they can input their information to generate a new lead.
If the New Patient Signup Destination is set to **Online Scheduling**, the patient can input their information into the sign-in page and access scheduling.
**Note:** After a user selects New Patient, inputs name, DOB, and phone, and completes 2FA, a new patient record is created automatically with this information. Users who do not complete scheduling or provide information such as insurance will still have a patient record created.
### Existing patients
If **Existing Patient** is selected, the patient inputs their information into the sign-in page and accesses scheduling.
### Scheduling
Once patients have accessed the scheduling page, they select the following information to view available times:
* **Provider**
* **Location**
* **Appointment Type** — only External Appointment Types are shown (see [Reserve Blocks](/air_front_desk/portal_and_online_scheduling/reserve_blocks) for mapping details)
* **Insurance Type**
* For **existing** patients, this list populates with their insurance options on file.
* For **new** patients, this list populates with Self Pay automatically. They can search for their payer name based on the available payers for the practice.
Once a time is selected, the patient either confirms the appointment or fills out additional information:
**New patients** progress through 2 information update screens:
1. A **Patient Update** screen, where they add information like email address, home address, and confirm their personal details.
2. An **Insurance Update** screen, where they provide the specific details about their insurance and can upload pictures of their insurance card.
This information automatically populates in their new patient profile. The patient then progresses to the confirmation screen.
**Existing patients** progress directly to the confirmation screen.
## Security and privacy
Because the online scheduling link can be accessed online by any party, specific controls and security settings have been built in with privacy in mind. The following exceptions and blocks are handled:
### Existing patient mistyping information
If an existing patient mistypes a name or date of birth, a neutral message asks them to try again or register as a new patient.
**Note:** If an existing patient mistypes their phone number, they will not receive a 2FA code to their phone. The 2FA is sent to the number entered on the login screen, **not** any phone stored in patient records.
### Existing patient trying to use the New Patient flow
If a user attempts to log in as a New Patient with information matching an existing patient (name, DOB, **and** phone), a message tells them to proceed as an existing patient.
**Note:** This happens **after** they have completed their 2FA, to prevent a non-patient with someone else's information from determining whether that person is a patient of the practice.
### New patient trying to use the Existing Patient flow
If a new patient attempts to log in as an Existing Patient with information that does not match any patient at the practice, the same neutral "does not match any records" message is shown. They can retry with correct information or switch to the New Patient flow.
### Non-patient attempting to access existing patient information
If a non-patient attempts to log in with existing patient information, one of the following happens:
* **As an Existing Patient, entering the actual patient's phone number** — a 2FA is sent to the actual patient before any error or success messages are revealed. This prevents the non-patient from determining whether the individual is a patient at the practice.
* **As an Existing Patient, entering a different phone number** — a 2FA is sent to that number. After confirming, the user is shown a neutral "does not match any patient" message. This obscures whether the information was incorrect because of the mismatched phone number, or because the individual is not a patient at all.
* **As a New Patient, entering the actual patient's phone number** — same protection as above: a 2FA is sent to the actual patient first.
* **As a New Patient, entering a different phone number** — after confirming 2FA, the user is allowed to create a new patient profile. This does not expose whether that person is already an existing patient or not.
The full flow of potential login outcomes is shown in the chart below:
### FAQ
Patients go to `portal.athelas.com/site/{site_slug}`, where `{site_slug}` is the **Site Slug** you set in **Portal Configs → Online Patient Scheduling**. Share this link on your website, in SMS/email campaigns, or via QR code.
Turn on **New Patient Appointment Scheduling** to route new-patient bookings to the **Requests** tab for approval. For existing patients, use the broader **Require approval on appointment requests** setting under Portal Configs.
Yes. New patients see **Self Pay** by default, but can search for their payer from the list of payers configured for your practice. The insurance details they provide populate their newly created patient profile.
Multiple safeguards: 2FA is always sent to the phone number the user enters (not a stored number); neutral error messages are used across all mismatch scenarios; the "you should proceed as existing patient" prompt only appears after 2FA completes. See the flowchart above for the complete set of branches.
Routing to **Lead Tracker** is useful when you want to triage new patients before confirming an appointment — for example, to verify insurance eligibility, apply intake rules, or assign a specific provider. Routing to **Online Scheduling** is faster for practices that accept any new patient who meets their appointment criteria.
# Patient Portal
Source: https://docs.athelas.com/air_front_desk/portal_and_online_scheduling/patient_portal
The Athelas Patient Portal lets patients sign in securely to view appointments, exchange messages with the practice, manage payments and saved cards, complete forms, and access home exercise content.
Patients can register for the portal either through patient-specific invitation links (email and/or SMS) or through a self-service registration link hosted on the practice's site.
## Sending portal invitations
You can invite patients to the portal from two places: **Outreach Flows** and the **Patient Demographics** page. Patients can also register themselves through a [self-service link](#self-service-registration-invitation).
### From Outreach Flows
In **Outreach Flows**, insert the message variant `patient_portal_link` (labeled **Patient Portal Link** in the variant picker) into an email or SMS. Use it any time you want to send patients to the practice's portal entry — for example, reminders to book, pay, or message the clinic.
### From the Patient Demographics page
**To send a registration link to a specific patient manually:**
1. Navigate to the patient's **Demographics** page from the EHR Patient Profile.
2. Next to the patient's email address, click the **phone icon** to send a new portal registration link.
3. Confirm in the dialog.
The patient receives:
* An **email** at their address on file with a link to the portal (when an email is present).
An email is required to send a portal invitation manually from the Patient Demographics page. Add an email to the patient first if you need to send one manually.
**Note:** There is a short cooldown between sends. If you try again too soon, the button explains how long to wait.
You can also check a patient's portal registration status from this page:
**Registration completed:**
**Unsent / not yet invited:**
**Invitation cooldown in effect:**
**Minor patient:**
**Missing email address:**
### Setting up authorized user access
To set up an individual as an authorized user of a patient's portal — such as a guarantor or power of attorney — create a new **Related Person**:
1. Navigate to the **Patient Demographics** page, then to **Responsible Parties**.
2. Click the **Related Persons** tab, then **+ Related Person**.
3. Fill out the required fields for the authorized user, including their relation to the patient and a valid email.
4. Toggle **Authorized Representative** to **ON**, then confirm that you are providing patient portal access to that individual.
5. Click **Create** to save the Related Person.
The authorized representative then receives a link inviting them to create their own portal account to access the patient's information as an authorized representative.
## Self-service registration invitation
Patients can also generate their own registration link through a self-service link. This is a site-specific link that practices can embed on their website, attach to a QR code at the front desk, or share in other places.
To create a self-service registration link, first create a **site slug** in the **Online Scheduling** section of the **Portal Configs** page.
After creating a slug, direct patients to the link below:
`portal.athelas.com/site/yourpractice/register-account`
From here, patients enter their name and date of birth. If the information matches an existing patient at the practice, a new registration link is sent to the email on file.
## Patient registration and sign-in
### Registration process
Once patients have received an invite link, they complete the portal registration steps:
1. **Verify name and date of birth**
2. **Set and confirm a new password**
3. **Complete registration**
### Linked patient accounts
If multiple patient records share the same email address on file — for instance, spouses on a shared family account, or a single patient who visits multiple Athelas practices — the Patient Portal can link multiple portal accounts to a single login. New registrants are informed that they share an email with an existing portal user, and are asked to acknowledge that their account and information can be accessed by anyone who logs in with that email.
If preferred, the new patient can choose a different email, which then writes back to their patient profile in Athelas.
### Signing in
Once registered, patients can access the portal from [portal.athelas.com](http://portal.athelas.com) directly, or from portal links sent by the practice through **Patient Workflows** or **Outreach Flows**.
From the landing page, patients enter their email and password.
### Sign in with Google
Patients can also sign in with **Google**. From the sign-in page, selecting **Continue with Google** lets them authenticate with a Google account whose email matches the one on file — no separate portal password required.
### Accessing multiple patient accounts
When multiple patient accounts or authorized-representative accounts are associated with a single login (for example, a patient who visits multiple Athelas practices), the patient is greeted at sign-in with a selection screen to choose which site portal or patient to access. From there, they are taken into the portal.
### Reset password
Patients can click **Reset password** to reset their password. They are directed to check their email, follow the link, and set a new password.
## Portal functionality
Once in the portal, patients can access several areas:
### Home
The landing page. Patients see what the portal offers and can navigate to sub-pages from here.
### Messages
Secure messaging between the patient and users from the practice. Users can attach files or send messages.
Practices can configure whether patients can initiate messaging directly from their portal, or whether conversations must be started by a staff member. When patient-initiated messaging is enabled, practices can also restrict who patients are allowed to message:
1. Previously seen providers or staff
2. A preset group of staff or User Groups
See [Messaging Permissions](#messaging-permissions) to configure this behavior.
### Payments
Patients can view their balance, pay any charges, and see past transaction history.
### Appointments
Patients can see upcoming and past visits, schedule, reschedule, or cancel appointments, and see waitlist status if enabled.
### Forms
Patients can view completed or pending forms, complete pending forms, and update insurance information in their patient profile.
### Home Exercises
Patients can view their prescribed home exercise program by case.
### Profile
Patients can edit their payment methods by clicking their name in the bottom left.
## Configurations and settings
Patient Portal settings live under **EHR Preferences**. Available-slot display is configured on the **Calendar** tab; the remaining portal settings live on the **Portal Configs** tab.
### Configuring available slots
There are two modes for showing available times in the portal: **Calendar Interval** and **Appointment Type**. Configure this under **EHR Preferences → Calendar** tab.
The two modes display available timeslots differently:
* **Calendar Interval** offers times on every interval based on the calendar interval for the site or facility.
* For example, if the calendar interval is set to 15 minutes, patients see 9:00am, 9:15am, 9:30am, 9:45am, and so on as available times to book.
* **Appointment Type** offers times by iterating on the selected appointment type's duration, starting from the provider's working-hour start time.
* For example, if a provider starts at 9:00am and the patient has selected a 45-minute Initial Evaluation, they see 9:00am, 9:45am, 10:30am, 11:15am, and so on as available times to book.
### Schedule Notice
Controls how far in advance patients can book through scheduling tied to the portal:
* **Minimum Notice (in hours)** — required. How close to the current time a patient is allowed to book or request an appointment.
* **Maximum Notice (in hours)** — optional; `0` means unlimited. How far out from the current time a patient is allowed to book or request an appointment.
### Appointment Requests
* **Require approval on appointment requests** — When on, requests from the portal appear as **Requested** on the calendar and can be approved from the **Requests** tab. When off, requests from the portal book directly to the calendar.
### Online Patient Scheduling
See [Online Scheduling](/air_front_desk/portal_and_online_scheduling/online_scheduling) for full configuration details.
### Messaging Permissions
Practices can configure whether patients can initiate messages from the portal. When turned off, patients can only respond to messages started by a staff member. When enabled, practices can choose who patients are allowed to message:
* **Previous Providers**
* **Specific User Groups or Users**
* **Anyone**
### General Permissions
Configure what patients can change in the portal:
* Add payment methods
* Delete payment methods
* Book appointments
* Cancel appointments
* Reschedule appointments
* Add insurance
* Update insurance
# Reserve Blocks
Source: https://docs.athelas.com/air_front_desk/portal_and_online_scheduling/reserve_blocks
Reserve Blocks allow your practice to restrict the types of appointments that can be scheduled based on a set of criteria. Supported criteria include **appointment type**, **insurance type**, and **affected providers**.
When a reserve block is created on a provider's calendar, online scheduling through the Patient Portal only allows that time to be booked if the appointment criteria matches the reserve block. If an internal scheduler attempts to book on a reserve block with criteria that does not match, they are prompted with a warning. Reserve blocks also support non-blocking comments that can alert schedulers to important information about that provider or block.
## Creating a Reserve Block
Access the reserve-block creation drawer through either of the following:
**Option 1 — The Add button in the top right of the calendar view:**
**Option 2 — Directly in a calendar slot:**
Reserve blocks added from the **Add** button, or while in the **All Selected** facility view, will add the reserve block to all facilities in the active filter. To add a reserve block to just a single facility, add it directly in the calendar slot while viewing that single facility.
From the reserve-block drawer, define the desired criteria:
### Timing properties
1. **Date** of the block (pre-populated if accessing directly from a calendar slot).
2. **Start** and **end** times (pre-populated if accessing directly from a calendar slot).
3. Whether to **repeat** the block, with frequency: Once, Daily, Weekly (SMTWTFS), Monthly, on Weekdays, or on Weekends.
### Scheduling criteria
* **Appointment Types** (optional, multi-select)
* **Insurance Companies** (optional, multi-select)
* **Providers** (required, multi-select)
### Overlapping logic
You can configure whether reserve blocks allow overlapping appointments in their timeslot. This can be **general** (across all appointment types and insurance types) or **specific** to a single insurance type or appointment type.
For example, a reserve block could allow double-booking at maximum on the timeslot. However, if a patient tries to book Iowa Medicare or Utah Medicare, they cannot double-book over another patient. Similarly, if an Iowa Medicare or Utah Medicare patient is already booked in that timeslot, no other appointments can book at that time.
**To save and add the reserve block to the calendar, click Create Reserve Block.**
## Viewing reserve block details
Once a reserve block has been created, it can be viewed on the calendar with the scheduling criteria and any **Notes** that have been added. Overlapping logic for any specific appointment type or insurance type is shown in parentheses next to the type (e.g., `(1)`). The max overlapping for the entire block is shown at the bottom.
Hovering over or clicking the reserve block displays more detailed information about the block, and provides options to edit the block or schedule on top of it.
## Reserve block color system
If a single Appointment Type is included in the scheduling criteria, the block has the same color boundary as the appointment type.
If no Appointment Types are selected, or multiple Appointment Types are selected, the boundary defaults to black.
You can also select a specific color boundary when creating or editing the block to override the default color combinations. If an overriding color is chosen, it continues to apply to the reserve block regardless of appointment type changes.
## External and internal appointment types
As part of Reserve Blocks, you can map multiple **internal** appointment types (visible to internal personnel) to a single **external** appointment type (visible to patients). When patients schedule in the Athelas Patient Portal, they are offered only the external appointment types, which reduces confusion on which option to select.
**To edit the mappings:**
1. Navigate to **Calendar Preferences**.
2. Navigate to the **Appointment Types** tab.
From here, you can create new External Appointment Types and choose which Internal Appointment Types map to them. You can also choose a **default internal mapping**, which determines which internal appointment type is selected when automatic scheduling is on.
**Note:** Internal appointment types can only be mapped to a single external appointment type, to ensure there is no confusion about what the patient sees.
From the Patient Portal, only created External Appointment Types are visible for scheduling. This allows practices to both restrict the possible booking types and simplify the scheduling process for patients. For instance, a practice may want to maintain multiple internal types of initial evaluations (`IE Knee`, `IE Lumbar`, `IE Lower Extremity`), while providing patients with only one external type (`Initial Evaluation`).
## Scheduling from the Insights Calendar
When scheduling from the Athelas Patient Portal during a reserve block, appointments that meet the scheduling criteria are accepted as normal. The appointment displays inside the frame of the reserve block.
When scheduling an appointment that does **not** meet the scheduling criteria, the user is presented with an alert informing them of the conflict. They can either confirm an override of the reserve block or cancel the scheduling.
If the user overrides the reserve block, the appointment visually splits the reserve block into two separate sections on either side. Canceling the conflicting appointment re-merges the reserve block into a single frame.
## Scheduling from the Athelas Patient Portal
When scheduling from the Athelas Patient Portal, the available times shown to patients are filtered to only show times that:
1. Do not have any reserve blocks on them, **or**
2. Have reserve blocks that match the patient's desired appointment:
* For any criteria **not** specified in the reserve block, all values are accepted (e.g., if no insurance is a criterion, any insurance is accepted).
* For any criteria that **are** specified, one of the selected options must match the patient's preference in the portal (e.g., if `Aetna` and `BCBS` are criteria, only patients with Aetna or BCBS see those times).
If **Approval for appointment requests** is turned **off**, the appointment is automatically scheduled and placed in the calendar.
If **Approval for appointment requests** is turned **on**, the request appears in the **Requests** tab in the bottom-right corner of the Calendar view.
The **Pending Approval** also shows within the reserve block to indicate that a patient has requested that slot:
From either the **Requests** tab or by directly clicking the Pending Approval modal, the user is presented with a screen to approve the request. The patient's details are shown, as well as the external appointment type they requested.
When choosing an internal appointment type to schedule against, the internal appointment types that map to the requested external appointment type appear first in the list.
Once an internal appointment type is selected and a case is applied, the appointment can be approved and scheduled.
### FAQ
A **schedule block** prevents all bookings in a time window. A **reserve block** is selective — it only allows bookings that match the configured criteria (appointment type, insurance, provider). Think of schedule blocks as "closed" and reserve blocks as "reserved for specific types of visits."
Yes. When you schedule an appointment that doesn't match the criteria, you'll see an override alert. Confirming the override splits the reserve block around the new appointment. Canceling the new appointment re-merges the reserve block.
Internal types capture operational detail ("IE Knee," "IE Lumbar") that matters for your staff's workflow. External types hide that complexity from patients, who only need to pick "Initial Evaluation." The external-to-internal mapping drives which internal type the system picks when a patient books online.
The block applies to **all** facilities in the active filter. To restrict a reserve block to just one facility, switch to that facility's view first, then click directly into a calendar slot to create it.
Only if you haven't set a custom color. If you pick a specific color override, that color sticks regardless of future appointment-type changes. Remove the override to return to the auto-matching behavior.
# Schedule an Appointment
Source: https://docs.athelas.com/air_front_desk/take_in_a_patient/new_appt
Easily create, copy, and manage patient appointments directly from the calendar or patient profile.
## Use AI to create an appointment
**✨Smart Tip:** Ask Athelas AI to create an appointment for you. Specify the patient name, provider name, date & time of appointment and appointment type. You can also use Voice Mode.
## Copy paste an existing appointment
* Right click an appointment → click on Copy appointment.
* Click a new time slot → select Paste appointment details
**Note:** Multiple appointments can be scheduled in the same slot. Air will warn you but won’t block it.
## Create a new appointment (single)
### Open new appointment window
**Option 1**: Click on a time slot on the calendar → Select New Appointment
**Option 2:** Click on the **Create New** button in the top-right corner of the page → Select New Appointment.
**Option 3:** Go to Patient Profile → Click on the**New Appointment** button in the top-right corner
A side panel will open to enter the following details:
* Appointment Date, Start and End Time (will auto-populate if you use Option 1)
* Rendering Provider (will auto-populate if you use Option 1)
* Patient
* Case
* Appointment Type
* Facility
* Format (In-person or Virtual)
* Referring Provider
* Supervising Provider
* Insurance (with Priority & Prior Authorization)
* Appointment Notes
**Note:** Clicking **Sync to Case** saves the insurance, priority, and prior authorization to the case, so they auto-populate for future appointments tied to that case.
### Creating a New Patient
If you need to create a new patient:
* Click on create new appointment →Click on the **Create New Patient** at the bottom of the Select Patient dropdown OR go to the **Patients Tab → Create New Patient.**
* Fill out the following details:
* General patient demographics
* Contact Information
* Insurance Information
* Intake form settings
* Home Address \[Optional]
* Emergency Contact Information \[Optional]
* You can then view the patients details within the Patient Tab as needed.
### Add Patient Notes
You can add patient notes in three ways:
1. [Appointment Notes](/air_provider/review_patient_details/patient_info#add-patient-notes)
2. [Case Notes](/air_provider/review_patient_details/patient_info#add-patient-notes)
3. [Patient Notes (pinned, general)](/air_provider/review_patient_details/patient_info#add-patient-notes)
### Add a New Case
To add a new case, first select a patient, then click **Create New Case** button. A side panel will appear where you can enter:
* Case name and notes
* Insurance priority (auto-populated from the case, but can be overridden)
* Rendering/Referring Provider and Referral details
* Attachments
**Note:** Cases can also be created in the [**Demographics tab**](https://air_athelas.mintlify.app/patient_details/patient_demog#active-and-discharged-cases) of the patient profile.
### Update Referring Provider
When adding a referring provider, you can search our Provider Directory (icon to the right of the search bar). It is sourced from the NPI Registry.
From the Provider Directory you can:
* Add a provider by NPI or name
* Edit provider details (fax, phone, address) via the pencil icon
* Have referrals auto-populate if “Direct Access” is chosen
### Add Prior Authorization
To add a new prior authorization, click the **+** icon next to the Prior Authorization field.
1. In the pop-up window, click **+ Create.**
2. Fill in the authorization type (Pre-Certification or Referral), number, effective/expiration dates, insurance, notes, and tags.
3. Click **Create.**
The new authorization will appear in the list and can be selected for the appointment. If you can’t find the prior auth you just created, please check both the Pre-Certified and Referral sections within the Prior Auth table
**Note:** Prior authorizations can also be managed under the patient’s [Demographics tab.](https://air_athelas.mintlify.app/patient_details/patient_demog#patient-information)
### Change Insurance Priority
Insurance priority will be auto-populated based off what was indicated in the case.
To change insurance priority, ensure the **Secondary** and **Tertiary** checkboxes are selected. Then, use the dropdown to assign insurances to each priority level.
**Note:** You cannot create a new insurance from here—you must select one already on the patient’s record.
## Create new appointment (bulk)
* Use **Create New → Bulk Create Appointments** or click directly on the calendar.
* Choose the provider, title, time/date, and recurrence.
* If your practice policy allows you can also note credentialing exceptions during scheduling.
**Note:** You can bulk-schedule with a primary and a backup (alternate) provider. The calendar shows availability for both, you can pick who covers each date, and the system creates the right appointments under the right provider.
**We do not support updating a case for a completed appointment**. Sites must make sure the case is linked correctly **before finalizing the chart note in Air**.
If a site encounters this issue:
1. A completed appointment cannot be archived. Every completed appointment (which is typically intended to bill) will always have an encounter/claim.
2. The site should schedule a **new appointment** on the same day with the same provider, linked to the **correct case**.
3. Import the PDF of the incorrect case into this new appointment.
4. Mark this new appointment as **“for documentation only”** so no duplicate encounters/claims are generated.
5. Once the document is imported, they can apply Scribe to the chart note.
6. Going forward, they will be able to carry forward information from the correct case into future appointments for that case.
# Prepare for the Appointment
Source: https://docs.athelas.com/air_front_desk/take_in_a_patient/prep_appt
### Edit an Appointment
Click on an appointment to open the Appointment details pop-up.
Click on the edit (pencil) icon on the top right to edit appointment details entered (such as data, time, provider, facility, patient details).
You can also review patient demographics by clicking on the patient's name, see change logs of the appointment.
### Change Appointment Status
Click on the three vertical dots on the top right of the page. From here you can:
* Add a Follow-up Appointment → This will open up a new appointment pop-up to fill
* Check-in the patient
* Cancel the appointment → You will be prompted to add a cancellation reason which will be available to view on the Patient’s Profile under the Appointments Tab.
* Mark the appointment as a No Show
* Delete the appointment
* See Schedule → You can see all upcoming appointments for the patient
**Note**: The **Encounter Details** tab (under Daily Operations) in the left navigation bar shows all encounters and their statuses (Open, Closed, In Progress, Blocked, Archived). From here you can bulk update statuses or edit encounter details.
### Send Reminders & Intake Forms
If an appointment is scheduled more than 24 hours in advance, patient intake forms are sent automatically 24 hours before the appointment. If it’s scheduled within 24 hours, you’ll need to manually send the forms.
From the appointment details, click **Send** next to Reminders/Forms.
* Select individual forms or workflows (groups of forms).
* Send via text, email, or both (auto-populated based on what is set within Patient Demographics)
* However, you are able to change the email or phone number directly in this window.
**Note**: You can send **Functional Outcome Measurement Forms** as well through this flow
**Note:** You can select multiple forms but only one workflow. **Workflows** automate which forms/reminders are sent, to whom, and when.
\*\*Patient Portal: \*\*Patients can review the forms and reminders from the Patient Portal. Through this they can complete actions directly from replying to messages, paying charges, confirming/canceling appointments, accessing home exercise programs and filling out forms.
### Track Prior Authorizations
You can check the status of Prior Authorizations, number of visits left and link an existing authorization or add a new authorization if required.
Click on **+New Prior Auth** to add a Pre-Certification or Referral along with the Authorization number, # visits, effective to and from date.
You can also edit an existing authorization or delete it. If you delete an authorization you will still be able to restore it.
**Tracking Prior Auth Status:**
* To review all prior authorizations open the **Encounter Details** tab (under Daily Operations) in the left navigation bar. You can filter all encounters by **Has Prior Auth** as True or False to find all encounters in a given data range that are missing prior authorization or where the visit count is nearing zero.
* Further, you can click the checkmark list icon on the top right of the page to view all prior authorizations (referrals and pre-certifications). Results can be filtered, downloaded, edited, or deleted.
* From here you can filter based on the expiration date to see if prior auths need to be updated based on the remaining visit count.
### Track Visit Alerts
Air will automatically alert you when prior authorizations or visit counts are nearing expiration/limits.
* **Orange alert** = nearing expiration
* **Red alert** = expired or no visits left
**Updating visit limits:** You can manually update the visit counts for the given options and create **custom** visit counts if needed.
* Click on the edit icon next to a visit count to update it
* For a custom visit count: Edit the Annual visit limit > Add a service type and # visits
* Click on custom start date to start the visit count from a date that is not the date of appointment
**Expanding this section provides a detailed view, including:**
* Annual Appointment limits
* Prior authorization visits
* Plan of Care visits
* Medicare thresholds
* Progress note upcoming (e.g., every 10 visits, every 45 days)
* Future appointments scheduled
You can customize these limits to be hard alerts or soft alerts from **Preferences**.
**FAQ: The visit counter is not accurate for a patient:**
* Check if the same prior authorization is attached to all past visits
* Ensure all previous chart notes are completed, else they may not be accounted within the visits counter
### Conduct Eligibility Checks
Air runs eligibility checks one week and one day before each appointment. Results are updated to **Active** or **Inconclusive.** You can re-run checks anytime from the appointment details.
### Review Patient Balances
View and charge outstanding balances from the appointment details. Clicking **Charge** routes you to the Daily Operations > Appointments page to finalize payment.
You can choose the mode of communication, payment method, payment amount and also send a welcome message.
### Print Appointment Schedules
There are 2 ways to download the appointment schedule for a patient:
**From the calendar**
* Go to the Calendar > Open an appointment > click on the caret icon in the tooltip to open the appointment details
* Click on the 3 dots on the top right > Select "See Schedule"
* Click print to download the schedule. It will include the list of upcoming appointments for the patient, facility address and phone number
**From the patient profile**
* Go to the patient's profile > Appointments
* Click on the print icon on the top right
* This will print the list of appointments (upcoming and completed) for the patient, status of appointment, provider, date and facility address.
# Schedule Follow-ups & Reschedule Appointments
Source: https://docs.athelas.com/air_front_desk/take_in_a_patient/schedule_and_reschedule_patient_appointments
Use this interactive walkthrough to practice scheduling and rescheduling patient appointments in Air.
Arcade demo: Schedule follow-ups and reschedule appointments.
# Notifications Center
Source: https://docs.athelas.com/air_front_desk/view_your_calendar/insights_notifications
The Air Notifications Center is the central location for all notifications from sources like patient channels, messages, tasks, and medications. It is located at the bottom of the sidebar and is visible from every Insights page.
The Notifications Center shows a count of all unread messages and tasks, clearly surfacing any important action items that need your attention. Clicking the **Notifications** button displays a popup with all notifications.
## Messages in the Notifications Center
From the Notifications Center, you can view a preview of any unread messages.
Clicking **View** on the message takes you directly to the message in the **Messages** tab.
## Tasks in the Notifications Center
From the Notifications popup, you can also view any tasks assigned to you. Clicking **View** on the task takes you to **My Tasks** in the **Tasks** tab.
## Patient Channels
Insights supports patient-level notes called **Patient Channels** that staff can use to communicate about a patient's profile and share information outside of visit notes or appointment notes. Patient Channels consist of: **EHR notes**, **Insights notes**, and **Universal notes**.
### EHR Notes
A patient's EHR notes can be accessed by clicking the notes icon in the top right corner of any patient profile page — for example, **Demographics**, **Appointments**, or **Medications**. You can tag other users in messages or attach documents. Any messages posted in EHR notes are visible across all other patient pages by other users.
### Insights Notes
Insights notes are patient-level notes accessed from Insights pages like **Patient Responsibility**, **Claim Details**, or **Encounter Details**. Each of these patient-level pages is kept separate to avoid crossing communication lines for different activities or personas.
### Universal Notes
In any patient-level note, you can toggle the globe icon to create a **Universal Note**. Universal Notes appear across EHR notes and all Insights notes.
### Accessing Patient Channels
Patient Channels can also be accessed through **Messages**, in the **Patient Channels** tab. From here, you can see all Patient Channels, including any EHR or Universal notes. You can send EHR notes or Universal notes directly from this view.
From Patient Channels, you can navigate to the patient's **Appointments** page by clicking the patient's name, or immediately view the patient's **appointments**, **cases**, **insurance**, or **prior authorizations** in the same window by clicking the icons in the top right.
### FAQ
It lives at the bottom of the sidebar and is visible from every Insights page. The badge count reflects unread messages and pending tasks combined.
**EHR notes** live on patient profile pages (Demographics, Appointments, Medications) and are visible to clinical staff across those EHR pages. **Insights notes** live on Insights-side pages (Patient Responsibility, Claim Details, Encounter Details), scoped to billing/RCM work. **Universal notes** are the cross-cutting variant — toggle the globe icon on any patient-level note and it appears in both EHR and Insights contexts.
Yes. Both EHR notes and Universal notes support tagging users and attaching documents. Tagged users receive a notification in the Notifications Center.
Yes — open **Messages** and switch to the **Patient Channels** tab. You can browse every patient channel from there, and send new EHR or Universal notes inline.
The badge reflects unread messages **and** unfinished tasks. If the count persists after reading messages, check the Tasks section of the popup for pending items.
# Navigating Your Calendar
Source: https://docs.athelas.com/air_front_desk/view_your_calendar/nav_calendar
Once you log into Air, you can view your Calendar and manage your schedule for the day.
### Open your Calendar
When you open the Calendar, the default view allows you to select which Providers and Facilities you want to display.
You can select multiple Providers and Facilities. Once selected, the Calendar automatically updates to display the corresponding schedules.
### Create Saved Views
**What This Means for You**
* Save and access your most-used filters instantly.
* Spend less time clicking through multiple filters, resetting them every time for the view you want.
* See an at-a-glance view of your schedule with visual highlights.
* Expanded date/month/year selection for easier navigation.
* Works across desktop and responsive devices (tablet and mobile-friendly).
### Calendar Preferences
* Switch between Day, Week, and Month views to adjust your Calendar display. Use the **Today** icon in the top left to instantly return to today's date.
**Compact Preferences:** Select how compact you'd like your calendar to be.
* **Standard View (default):** Best if most appointments are under 30 minutes.
* **Compact View:** Fits more appointments on the screen. Works well on large displays, but details may be cut off on smaller screens.
* **Fit to Screen View:** Adjusts automatically to fit the screen size for large and small screens. Shows the full schedule, but with fewer details.
✨**Smart Tip:** Drag and drop appointments between providers to reassign the rendering Provider
Click the **Filter** icon to apply up to **seven filter options:**
* **Provider:** When multiple Providers are selected, each appears as a separate column in the Calendar view.
* **Facility:** When multiple Facilities are selected, each appears as a tab across the top of the Calendar.
* **Insurance:** Show only appointments for patients whose insurance matches your selection.
* **Patient:** Show only appointments for specific patients you select.
* **Cancellations:** Hide all appointments marked as *Cancelled*.
* **No Shows:** Hide all appointments marked as *No Show*.
* **Weekends:** Hide Saturdays and Sundays from the Calendar view (applies to Day, Week, and Month views).
At any time, you can reset by clicking **Clear All** at the top of the Calendar.
**Note**: Hover over a Provider's name to see the number of appointments for the day, organized by status.
### Calendar Icons
**✨Smart Tip:** Hover over appointment icons to quickly view eligibility alerts, payment due, and insurance type.
### Appointment Tooltip
Hover over the appointment card to view the **Tooltip.**
You can **Expanded** the tooltip by clicking on the caret icons. The tooltip displays the most helpful information first, including Case and Appointment Type, Eligibility Status and Insurance, Prior Authorization Status, Future Visits Scheduled and Appointment Status.
**Note:** When you open the Appointment Details, you may have [Visit alerts](/air_front_desk/take_in_a_patient/prep_appt#track-visit-alerts) that are required to be addressed before you progress.
### Appointment Stages
As appointments progress through different stages, their blocks update visually. This helps you:
* Identify canceled appointments at a glance
* Focus on active appointments (completed ones fade automatically)
## Create Scheduled Blocks
Create schedule blocks for meetings, vacations, or admin time.
* Click on **Create New** on the top right of the screen
* **New Schedule Block** or click directly on the calendar
* Choose the provider, title, time/date, and recurrence
* **Recurring Block:** You can create a recurring block every day / week / month
* \*\*Allow Scheduling during Block: \*\*Toggling on the Reserve Block allows appointments to be scheduled during blocks
# Waitlist
Source: https://docs.athelas.com/air_front_desk/view_your_calendar/waitlist
Configure and manage appointment waitlists, offers, and patient responses in Air.
The Waitlist feature helps practices fill open schedules faster and more efficiently. Patients can join the waitlist through the Athelas Patient Portal when they cannot find an available time, and provide appointment preferences and time preferences for offered slots.
Practices can also manually add patients to the waitlist in Insights directly. When cancellations occur, the waitlist automatically processes the list and offers the open slot to matching patients. Sites can configure several settings — such as the number of patients to send offers to, the amount of time to accept, and whether offers expire. Once the waitlist begins, it continues running until either a patient accepts the slot, or there are no more patients matching the available timeslot.
## Joining the Waitlist from the Athelas Patient Portal
When a patient uses the Athelas Patient Portal to schedule an appointment, they must specify a **provider**, **facility**, and **appointment type** before seeing available times.
If no times are available (because of a full schedule, reserve blocks that do not match the patient's preferences, or the provider is out of the office), the patient is presented with the option to **Join Waitlist**.
After clicking **Join Waitlist**, the patient can specify a facility, one or multiple providers, and an appointment type, along with any preferred times. If any time will work, they can select **Anytime**.
Once submitted, a window appears above the patient's appointments showing they have a waitlist entry in place. They can **Edit** the waitlist entry here, or exit the waitlist if desired.
## External & Internal Appointment Types
As part of using the Waitlist, practices can map multiple **internal appointment types** (visible to internal personnel) to a single **external appointment type** (visible to patients). When patients are added to the Waitlist, they're offered only the external appointment types — reducing confusion about which option to select.
To edit the mappings:
1. **Navigate to Calendar Preferences.**
2. **Open the Appointment Types tab.**
3. **Create or edit external appointment types** — pick which internal appointment types map to each external one. You can also choose a **Default Internal Appointment Type**, which determines the internal type used when automatic scheduling is on. An internal appointment type can only be mapped to a single external appointment type, ensuring there's no confusion about what the patient sees.
## Adding a patient to the waitlist from Insights
If a patient does not have access to the Patient Portal, or the site wishes to add the patient themselves, a patient can be manually added to the waitlist from the Insights Calendar.
1. **Navigate to the Requests tab** in the header bar of the Calendar view.
2. **Click Add to Waitlist** at the bottom of the drawer. All current waitlist entries and approval requests appear here. Expired requests are excluded from the current list.
3. **Edit the patient and their appointment preferences** — including provider, facility, appointment type, effective and expiration dates, notes, and preferred availability.
4. **Confirm.** The patient appears at the bottom of the existing waitlist entries.
5. **Manage entries** — click **Edit** to update an existing waitlist entry, or click the **X** on the right to remove an entry.
6. **Hover over the (i) icon** to see the details of the waitlist entry. Click the **notes icon** to edit the entry's notes directly.
## Processing cancellations from the waitlist
When an appointment is cancelled, you are prompted with a popup informing you that there are waitlist entries matching that timeslot. You can either:
1. **Send the waitlist offers** and start the waitlist processing, or
2. **Skip Waitlist Offers** if you intend to fill that slot manually.
If you choose to start the waitlist, one or multiple patients matching the timeslot, provider, and location are sent a text and email informing them they have been offered a waitlist slot. The message states how much time they have to accept the offer.
When a patient clicks the link in their offer message, they are brought to a screen to confirm the appointment information and officially accept the offer. They can also reject the offer if that time no longer works.
The patient has a set amount of time to respond before the offer expires and the next entry is offered the slot. The service continues moving down the list in configurable size batches until a patient accepts, or no further entries match the available slot.
If the original patient attempts to access the offer link after it expires (or after another patient has accepted it), they are shown a message explaining the offer has expired.
If the site requires approval for appointment requests, an accepted waitlist offer converts to an appointment request in the **Requests** tab. Otherwise, the waitlist offer automatically converts into a scheduled appointment.
## Manually triggering waitlist from the calendar
You can also manually trigger the waitlist on an open slot directly from the calendar. Highlight a section of time and choose **Trigger Waitlist Offers**. From there, you can select a range of time to include when finding offers, and see how many patients will be included in the waitlist offer list.
## Waitlist settings and configurations
Several settings allow sites to adjust waitlist behavior. These are accessible in the **EHR Preferences** page, in the **Calendar** tab.
The available preferences include:
* **Waitlist on/off** — whether the site will allow waitlist entries to be created by patients or site staff.
* **Require approval on waitlist requests** — when on, all promotions from the waitlist to an appointment must be approved before being scheduled. This overrides the normal appointment-approval configuration.
* **Cancel future appointment if waitlist slot has been scheduled** — when on, the system detects if a patient has a future appointment matching the waitlist offer. When they schedule a new appointment through their waitlist offer, the very next appointment is cancelled.
* **Minimum time to fill a newly opened slot with a waitlist patient** — how far out a cancelled appointment must be to offer the slot to a waitlist entry. For example, if the minimum is 30 minutes, cancelling at 8:50 AM for a 9:00 AM appointment will not send any waitlist offer.
* **Same-patient waitlist offer exclusion period** — how much time must pass between waitlist offers for a single patient, to avoid sending too many offers to the same patient when cancelling multiple appointments. For example, if set to 1 hour and a patient receives a waitlist offer at 9:15 AM, they cannot receive another offer until 10:15 AM — even if they decline the first offer.
* **Time to accept by patient** — how much time a batch of patients has to respond to their offer. If they do not accept in this time, the next batch of patients is sent the offer as well.
* **Waitlist bucket size** — the number of patients sent an offer in each batch. If set to `1`, behavior is one-at-a-time (Patient A, then B, then C). If set to `>1`, behavior is a "blast" send (Patients 1–10, then 11–20, then 21–30).
* **Retain waitlist requests for future** — when on, accepting a waitlist offer does **not** delete the waitlist entry. Instead, the patient moves to the back of the list. When off, accepting a waitlist offer deletes the entry, and the patient must add a new one to be considered for future offers.
* **Expire previous waitlist offers** — when on, moving from one batch of patients to the next causes the previous batch's offers to expire. When off, offers don't expire until a patient accepts. For example, if time-to-accept is 5 minutes, bucket size is 10, and expiration is off: minutes 0–10 there are 10 active offers; 11–20 there are 20 active offers; 21–30 there are 30 active offers, and so on.
### FAQ
The system continues moving through the list in configurable batch sizes until a patient accepts or no more entries match the slot. If everyone passes, the slot remains open on the calendar — you can fill it manually or leave it for direct scheduling.
Yes — but only after the **Same-patient waitlist offer exclusion period** elapses. This prevents flooding a single patient with offers when multiple cancellations happen close together.
Bucket size `1` is fairest — the first patient in line gets first pick. Larger buckets fill cancellations faster because the "blast" reaches many patients at once, but the earliest-queued patient may lose out to someone faster to respond. Pick based on whether speed-to-fill or queue fairness matters more for your practice.
A **waitlist offer** is initiated by the system after a cancellation — the patient chose to be waitlisted. An **appointment request** is initiated by the patient directly through the portal or online scheduling. When **Require approval on waitlist requests** is on, accepted waitlist offers still need staff approval before booking.
Yes. From their portal, patients can edit their preferences or exit the waitlist entirely. Staff can also remove entries from the **Requests** tab by clicking the **X** on the right side of the entry.
# Troubleshooting
Source: https://docs.athelas.com/air_onboard/getting_started_with_air/faqs
Get help fast with Athelas AI and our user guides.
Use Athelas AI to get instant answers to your questions directly within Air. You can also use Voice Mode.
*
* Open the website AI Assistant by clicking the star icon or pressing **Ctrl / Cmd + I**.
* Search all help documents on our website by pressing **Ctrl / Cmd + K**.
If you still need help, please reach out to your Air Account Manager or [support@getathelas.com](mailto:support@getathelas.com) for further assistance.
# Welcome to Air by Athelas!
Source: https://docs.athelas.com/air_onboard/getting_started_with_air/index
**Meet Air — A Light, Delightful EHR.**
The AI-powered EHR that keeps you focused on patients, not paperwork. The only EHR with Ambient Scribing, AI Agents, and hands-free RCM Automation fully integrated.
Gives patients 24/7 access to health records and self-service appointment booking.
Automated reminders, insurance checks, and pre-visit tasks that simplify patient check-in.
Retrieves research, summarizes data, and handles tasks so staff can focus on patients.
Automatically generates detailed clinical notes from encounters in seconds.
* Real-time AI review of clinical notes to ensure consistent, audit-ready documentation.
**✨Smart Tip**: New to Athelas Air? Start with our **Getting Started** guide to get up and running in minutes!
# Setting up Air
Source: https://docs.athelas.com/air_onboard/getting_started_with_air/set_up
Welcome to Air, your simple and powerful way to manage patients, schedules, and operations in one place.
### Log-in to Air
Air by Athelas can be accessed through the [**Insights page.**](https://insights.athelas.com/v2/login?redirect_to=/my_account)
* **Login credentials** are created and managed by your site administrators. Please contact your admin to get started.
* For additional help, reach out to our support team at [**support@getathelas.com**](mailto:support@getathelas.com).
### Overview of Air
Once logged in, you can access both **Air (EHR)** and **Insights (RCM platform)** from the same site.
✨**Smart Tip:** Use **Cmd + K** (Mac) or **Ctrl + K** (PC) to open the search function. You can quickly search by patient name, provider, or section.
**Key Tabs within Air**
* **Calendar** *(all users)* – View the schedule by provider or facility.
* **Patients** *(all users)* – Access patient demographics, appointments, attachments, and more.
* **Inbox** *(providers)* – Manage open notes.
* **Preferences** *(company admins)* – Configure site-wide settings such as default calendar times and alerts.
* **Interventions** *(company admins)* – Manage the library of interventions and intervention groups.
Additional sections include Insights (Performance Analysis, Reports, etc.), Utilities (Faxes, Messages, Lead Tracker, Templates, etc) and Automations (Patient Workflows, etc.).
# Check-in the Patient
Source: https://docs.athelas.com/air_provider/check_in_a_patient/check_in
At the time of consultation, you can check in your patient and prepare for the visit.
### Automatic check-in with Athelas AI
✨**Smart Tip:** Go to **Athelas AI** → Enter your prompt → Athelas AI will check in the patient and open their chart note and/or patient details automatically. You can also use Voice Mode.
**Note**: To check in an Appointment a [Case Type](/air_provider/check_in_a_patient/edit_appt#change-the-case-type) must be present. If no case is associated, you will receive an error when attempting to check in.
**Note:** When you open the Chart Note, you may have Visit alerts that are required to be addressed before you progress.
### Manual check-in
Open the **Calendar** → Click on the desired **Appointment** → Select **Check-in** for the patient on the Tooltip.
You can also update the appointment status to **Completed, No Show, Canceled,** or **Archived**.
**Note**: You can also "uncheck-in" the patient if checked-in by mistake.
**Alternate method**: Navigate to **Patients** tab in the left navigation bar → Open the **Appointments** Tab → Select **Check in** (black square icon)
### Self-service check-in on the kiosk
Patients can also check themselves in on a lobby tablet, confirming their details and insurance, completing outstanding intake forms, and paying what they owe before they sit down. See [Check-in Patient with Kiosk](/air_provider/check_in_a_patient/kiosk_user_guide) for setup and the full patient workflow.
# Update an Existing Appointment
Source: https://docs.athelas.com/air_provider/check_in_a_patient/edit_appt
Before starting a consultation, you may need to update the Appointment or Case Type.
### Change the Case Type
**Add an Existing Case Type**
**Enter existing Case Type:** Open the appointment → click the **Edit** icon → select the Case from the drop-down in the Case bar.
**Create a New Case Type**
**Create a new Case Type:** The only required field is **Case Name**. However, because insurance is required on the Appointments page, we recommend setting the **Insurance Priority** as well.
### Change the Appointment Type
**Change Appointment Type:** Use this option to quickly update documentation sections and templates to match a different appointment type.
### Change the Clinical Note Type
**Change Clinical Note Type:** This allows you to update documentation based on plan of care logic. Available Clinical Note Types include:
* Initial Evaluation
* Daily Note
* Progress Note
* Re-Certification Note
* Discharge Note
# Getting Started with Kiosk
Source: https://docs.athelas.com/air_provider/check_in_a_patient/kiosk_user_guide
The **Athelas Kiosk** lets practices offer a self-service option for patient check-in and intake form completion. You can choose between a full-service **Check-in Mode** — where patients confirm their information, pay any balances, and check themselves in — or a lighter **Forms Mode** that surfaces only uncompleted intake forms for a paperless experience.
## Creating a Kiosk Login
### Request Kiosk Access
* Reach out to your **Account Manager (AM)** to request kiosk access for your site.
* Once approved, your site is added to the kiosk user list and you can proceed with setup.
### Prepare your hardware & card reader
Before you enable kiosk in Insights, make sure your site has the right setup:
* **Tablet device:**
* Any Android tablet or iPad will work.
* **Optional:** You may also use a kiosk stand for a professional, dedicated setup.
* **Card reader options:**
1. **Use an existing reader** — Any card readers already configured to your account will appear in the kiosk dropdown.
2. **Request a dedicated reader** — If you'd like a separate card reader specifically for kiosk, let us know.
* We'll send you a pre-configured reader tied to your account.
* The reader hardware is purchased by your practice and invoiced to your site; your AM confirms the cost before it ships.
✨**Smart Tip:** Make the card reader decision early and communicate it to your AM. It determines whether you'll be using an existing reader or receiving a dedicated one from us.
### Enable Kiosk in Insights
Once your AM has confirmed your site is on the kiosk user list, go to [insights.athelas.com](https://insights.athelas.com) and open **Preferences** from the EHR sidebar.
Inside Preferences, switch to the **Kiosk Configs** tab.
Toggle **Enable kiosk mode** on. This both turns on kiosk functionality and starts sending the kiosk verification codes that patients use for express check-in.
Next, create the kiosk user. From settings, navigate to **My Practice** and open **Team Members**.
Click **Add user** and give the user a display name.
During the beta, the email format is **kiosk+\[site name]@commure.com**. Assign the user the **Admin** role and click **Save**. Our team will then share the kiosk credentials with you.
This naming convention exists for the beta phase of the kiosk rollout to ensure a controlled environment for kiosk onboarding. During the beta, you can also skip the user-creation steps and let our team set up the kiosk account for you. After the beta, you'll be able to create kiosk users like any other user and log in with their credentials.
## Using the Kiosk for Check-in Mode
By default the Kiosk is set up for the full **Check-in Mode**, which lets patients review their information, insurance, and any required payments or balance, then check themselves in for the visit.
### Sign in to the kiosk
On the kiosk device, navigate to [kiosk.athelas.com](https://kiosk.athelas.com).
Enter the kiosk credentials and click **Continue** to land on the welcome screen. On first login, **tap the Athelas logo in the top right five times** to open kiosk settings.
In settings, select the **default card reader** for this kiosk from the dropdown — only readers configured for your site and currently active appear here.
Click **Save** to commit the reader choice. The kiosk returns to the welcome screen — at this point setup is complete on the device.
### Patient check-in workflow
The patient taps **Tap to Get Started** on the welcome screen, then chooses between **Express Check-in** and **Check in Manually**.
With express check-in, the patient enters the **5-digit code** that was texted to them 90 minutes before their appointment. Enabling kiosk in Insights is what triggers these verification codes.
✨**Smart Tip:** If a patient doesn't have the code or has opted out of receiving check-in code texts, they can fall back to **Check in Manually** to enter their details by hand.
Both options route to the same patient-details screen, starting with the patient's full name.
The patient taps **Continue to DOB** and enters their date of birth.
Tap **Continue to phone** and enter the phone number.
After **Continue to appointment info**, the kiosk asks the patient to verify the appointment and shows their patient info with an option to edit it.
If the patient chooses to edit, the kiosk opens an editable form. **Save** writes the new info back to the Insights database.
Once info is verified, the patient picks **Pay with insurance** or **Pay out of pocket** and clicks **Continue**.
With insurance selected, the kiosk shows the insurance on file. The patient can keep it, edit it, or add secondary coverage. Any change triggers a **live eligibility check** — if eligibility fails, the patient is prompted to correct the info or switch to out-of-pocket.
Tap **Continue to charge and balance** to see suggested charges for today's appointment, the patient's outstanding balance, and any available credits. Today's charge is required, but the patient can choose whether to pay outstanding balance and whether to apply credits.
After confirming choices, the patient taps **Complete Check-In**. The total amount due is sent to the card reader for payment.
Once payment clears, the patient sees a confirmation screen and taps **Finish** to return the kiosk to the welcome screen for the next patient.
## Using the Kiosk for Forms Mode
An alternate operating mode for the Kiosk is **Forms Mode** — a lighter-weight flow designed just for patients to complete any uncompleted intake forms.
Forms Mode does **not** check in the patient or allow editing or reviewing any other patient details. Use Check-in Mode if you want patients to confirm information and pay balances.
### Accessing Forms Mode
To access Forms Mode, **tap the practice logo on the Kiosk home screen 5 times** to open the Kiosk settings, then click **Go To Forms** in the header. The kiosk then displays *"Welcome to \[site name] Forms"*.
Patients tap to get started, fill in their **name** and **date of birth**, and then see any appointments with outstanding forms. They select the visit they want to complete forms for and work through the intake forms on the tablet.
## Kiosk across the rest of your practice
### Branding
The logo and preferred display name you set in the [**Branding Engine**](/air_admin/manage_your_practice/branding_engine) appear on the kiosk welcome screen and throughout the self-service flow, alongside every other patient-facing surface.
### Adoption reporting
**Kiosk Completion Rate** — the share of checked-in appointments that a kiosk user account checked in — is reported in [**Retention Engine → Patient Experience**](/air_admin/analyze_your_reports/retention_engine#patient-experience). Use it to see how much front desk work the kiosk is actually absorbing.
### Staff check-in
The kiosk runs alongside the counter, not instead of it. Staff can still check a patient in from the [**Calendar or Appointments** page](/air_provider/check_in_a_patient/check_in) at any time.
### FAQ
No — any card reader already configured to your account shows up in the kiosk dropdown, so you can reuse one. If you prefer a dedicated reader exclusively for kiosk use, your AM can send a pre-configured one. The hardware is purchased by your practice and invoiced to your site.
**Express Check-in** uses the 5-digit verification code that's texted to patients 90 minutes before their appointment — fastest path through the kiosk. **Manual check-in** asks the patient to enter their name, date of birth, and phone number to look up the appointment. Both flows merge after lookup and run through the same verification, payment, and check-in steps.
**Check-in Mode** is the full self-service flow — patients confirm their demographics and insurance, pay any balance, and check themselves in for the visit. **Forms Mode** is a lightweight intake-forms-only flow that does **not** check the patient in or expose any other patient details.
Tap the practice logo on the Kiosk home screen **5 times** to open the Kiosk settings, then choose **Go To Forms** to switch into Forms Mode. To return to Check-in Mode, exit Forms Mode from the same settings panel.
The kiosk prompts the patient to correct the insurance info or switch to **Pay out of pocket**. The patient cannot continue past this step until eligibility is resolved or they select self-pay.
Yes. Kiosk payments can send the patient a receipt; if your site isn't sending them, check with your Athelas team. Staff can also download, print, or send a receipt for any past transaction from the patient's **Charges** tab, as described in [How to Take Payments](/insights_front_desk/appointments/how_to_take_payments#find-receipts-for-previous-payments).
Any Android tablet or iPad will work. A kiosk stand is optional but recommended for a professional, dedicated setup.
# AI Scribe for Chart Notes
Source: https://docs.athelas.com/air_provider/fill_a_chart_note/ai_scribe_chart_notes
As you begin a patient consult, set up, complete, and submit a Chart Note.
## Smart fill your Chart Note using AI Scribe
### **Patient Consent for Scribe**
Re-confirm patient consent before recording. Patient consent will be taken as part of the Patient Intake Form
### **Record using Scribe**
* Click the blue button in the bottom-right corner to open the AI Widget
* Select **Scribe**
* Click **Start Recording**. You can minimize the widget and continue working within the EHR
\*\*Note: \*\*The scribe can translate conversations from other languages as well, such as Spanish.
* End or cancel the recording when finished
✨ **Smart Tip:** While uploading, you can start a new chat on the script to ask questions about the current consultation recording.
### **Apply scribe**
* Review the generated content in the Scribe Application Page. Scroll through the Tabs to review all sections
* Each section includes a checkbox to apply or exclude the scribe output into the Chart Note.
* Click **Apply Scribe**
* \*\*Note: \*\*Scribe can auto-populate all sections, however, we recommend filling the flowsheet interventions manually.
Note: You can also [lock a section to disable the scribe](/air_provider/fill_a_chart_note/scribe_faq#how-do-i-lock-sections-from-ai-scribe) for that section.
✨ **Smart Tip**: Use **Reapply Scribe** to restore the most recent recording if you need to revert back. This is helpful if you've edited fields after scribing.
Alternate Option: [**Air scribe (mobile app)**](https://athelas-public.notion.site/Air-Scribe-User-Guide-1dcf92a633f28089ad12c6783d5b8ec0)
### **Quickly access scribes**
The **Visits** tab provides a quick view of today’s appointments. It displays only the appointments assigned to your provider.
* **If a scribe already exists** for an appointment, clicking the appointment opens the **Scribe Application Page**, where you can review and apply the scribe to the patient’s Chart Note.
* **If no scribe exists,** clicking the appointment opens the **New Recording Page**, where you can start a new audio recording for the visit.
You can also view past or upcoming appointments by selecting a date in the **date picker** at the top or by using the **left and right arrows** to move one day forward or backward.
### **Update your text using Athelas AI**
Select the text and click on **Cmd / Ctrl + K**. Select the update type to the text.
You can choose to select or reject the change which will automatically update in the Chart Note.
### **Review Section Updates**
Click the “Last updated” button in the heading of a section to view updates made.
Click on a change log to view the detailed changes.
## Other ways to fill your Chart Note
### **Dictate into a section**
More details: [EHR Dictation v1 User Guide](https://www.notion.so/EHR-Dictation-v1-User-Guide-1c9f92a633f28000a6e7e0517ece550a?pvs=21)
Once a note is generated, you have the option to add more content through a direct dictation. Dictation allows you to use your voice to enter text directly into a Chart Note.
* Open Athelas AI and click **Dictate**.
* Speak normally and watch text appear in real time.
* Smart punctuation automatically inserts commas, periods, and question marks based on sentence structure.
* Click **Stop** to end dictation.
Note: Punctuations cannot be dictated (e.g. there is no need to say "comma"), the AI will auto infer the required punctuations based on the sentence.
### **Pull from a previous Chart Note**
Click the curled arrow icon in any section to import data from a patient’s prior Chart Note.
**Note**: Historical data can only be pulled forward between appointments of the same Case.
### **Use pre-defined Text Snippets**
Type "/**"** in a text field to quickly insert pre-made text snippets.
**Note**: You can customize your text snippets from the **Preferences tab.**
To set up snippets that guide **AI Scribe** note generation, see [**Scribe Text Snippets & Macros**](/air_provider/fill_a_chart_note/scribe_text_snippets).
## FAQs
### I can't see my patient's past chart notes from my old EHR
**Import Records for Past Appointments**
**Context:**
* Plan of Care details may not be migrated from the old EHR into Athelas Air.
* For returning patients seen in Air for the first time, providers will need to reference their previous documentation and set up the Plan of Care in Air.
* **This is a one-time step: once entered, the Plan of Care will automatically carry forward from note to note.**
**Open the recent-most Progress note / Initial Eval for the patient:**
* Go to the Patient's Profile → \*\*Appointments \*\*and locate the \*\*date of service \*\*of the latest Progress note / Initial Eval appointment for the case.
* Go to **Attachments**, search for the **date of service** corresponding to the note from which you want to carry forward the measurements.
* Click the **eye icon** to **view the PDF**, then **download** the PDF to your device.
**Add the note to the relevant appointment:**
* Go back to the \*\*Appointments \*\*Tab
* Click the **+ icon** to the right of the appointment → **Set Up Chart Note**.
* Select the right **Case, Appointment Type,** and **Clinical Note Type** \[Progress Note, Initial Evaluation, etc.]
* Select **For Documentation Only**. This option ensures the imported chart note is **not billable**.
* Select **Set-up.** This will open the chart note on a new screen
* Click on \*\*Import \*\*at the top right → Upload the attachment → Scribe processes the PDF.
* Track progress by clicking into \*\*Athelas AI → \*\*Select the sections you would like to pull and \*\*Apply Scribe \*\*to desired sections once complete.
* Review, edit if needed, and exit (***auto-saves, no signature required***). This information should then start pulling into all future notes made on Air.
# Chart Note Clinical Types
Source: https://docs.athelas.com/air_provider/fill_a_chart_note/chart_note_clinical_types
View **Chart Note Clinical Types** within the chart note itself in the chart note header, which remains always visible on the chart note. To update the clinical note type of the chart note, click on the dropdown and select an alternative type from the available options.
### Clinical note types overview
There are **six clinical note types** in the system. Each type drives different downstream behavior — including how the system tracks progress notes, plan of care timing, visit counters, and case status.
| **Clinical note type** | **Purpose** |
| :------------------------ | :---------------------------------------------------------------------------- |
| **Initial Evaluation** | First comprehensive evaluation for the episode. Starts the plan of care. |
| **Daily Note** | Routine visit documentation between formal reassessments. |
| **Progress Note** | Periodic reassessment required at visit, day, or plan-of-care milestones. |
| **Discharge Note** | Documents end of the episode. **Auto-discharges the case** on submit. |
| **Re-Certification Note** | Re-certifies the plan of care (e.g., for Medicare). |
| **Admin Progress Note** | Administrative progress documentation with a separate conclude/download flow. |
### Evaluative vs. non-evaluative notes
The system uses the "evaluative" classification to drive visit-limit, progress-note, and last-evaluative-note logic.
* **Evaluative note types** (count for visit limits, progress note timing, and "last evaluative note" tracking):
* **Initial Evaluation**
* **Re-Certification Note**
* **Progress Note**
* **Discharge Note**
* **Admin Progress Note**
* **Non-evaluative note type:**
* **Daily Note** — the only type that is *not* treated as evaluative. It does not satisfy progress note requirements, reset visit/day counters, or count as the most recent evaluative note.
### When to use each type
#### Initial Evaluation
The first comprehensive evaluation for the episode. Used at the start of a plan of care. The system treats it as the start of the evaluative chain — for example, progress note timing (every X visits/days since the last evaluative note) and plan of care tracking key off of it.
#### Daily Note
Routine visit documentation. Use it for documenting visits when you're not doing a formal progress note or re-certification. **Daily Notes do not** satisfy progress note requirements or reset visit/day counters.
#### Progress Note
A periodic reassessment. The system requires a Progress Note when:
* Visit limits are reached (e.g., every X visits)
* Day limits are reached (e.g., every X days)
* The plan of care end date is reached
Converting a chart note **to** a Progress Note can pull the template from the last evaluative note. The UI warns you when this may overwrite existing template data, so you can choose whether to keep or replace it.
#### Discharge Note
Documents the end of the episode. **When you sign a Discharge Note, the case is automatically discharged (archived).** After that, you can cancel or archive any future appointments tied to the case.
#### Re-Certification Note
Re-certifies the plan of care — for example, for Medicare. The Re-Certification Note is treated as an evaluative note, so it resets progress note timing and visit counts in the same way as Initial Evaluation and Progress Note.
#### Admin Progress Note
Administrative progress documentation. Handled differently from clinical notes:
* The "Convert clinical type" action may not be available in some flows.
* It has a separate **conclude** action — concluding finalizes the note and makes it available for download from the patient's attachments.
* Some lists hide archived appointments that are Admin Progress Notes.
### Progress note required logic
The system shows **Progress Note Required** or **Upcoming Progress Note** alerts based on the following triggers:
| **Trigger** | **Example alert** |
| :------------------------ | :----------------------------------------------------------------------------------------------------------- |
| **Visit limit** | "A progress note is required every X visits, and this will be the Nth visit since the last evaluative note." |
| **Day limit** | "A progress note is required every X days, and it's been X days since the last one." |
| **Plan of care end date** | "Plan of Care expired on \[date]. A Progress Note is required before continuing documentation." |
| **Prior authorization** | "Only X unused visits remain until prior authorization limit is reached." |
| **Medicare therapy cap** | "Medicare therapy cap exceeded. Apply KX modifier and ensure documentation supports medical necessity." |
For how these alerts appear across scheduling, the calendar, and check-in — and how qualifying appointments are automatically converted to progress notes — see [Progress Note Automatic Conversion](/air_provider/fill_a_chart_note/progress_note_automatic_conversion).
✨**Smart Tip:** When you're due for a Progress Note, convert the chart note to **Progress Note** from the clinical type dropdown — you'll be prompted to decide whether to keep or replace existing template data.
### FAQ
Both are evaluative notes that reset progress note timing and visit counts. **Progress Note** is the periodic reassessment required by visit/day limits or plan-of-care end date. **Re-Certification Note** is specifically for re-certifying the plan of care — for example, on Medicare cadence.
Daily Notes document routine visits without serving as a formal reassessment. Because they don't count as the "last evaluative note," they don't satisfy Progress Note requirements or reset the visit/day counters used to determine when the next Progress Note is due.
Signing a Discharge Note automatically discharges (archives) the case. Any future appointments on that case can then be canceled or archived. If you signed a Discharge Note by mistake, restore the case from the patient's profile.
Yes — click the clinical type in the chart note header and select a different type from the dropdown. If you're converting to a **Progress Note**, you may see a prompt warning that template data could be overwritten when pulled from the last evaluative note.
The system tracks four triggers that can prompt a Progress Note: visit limit reached, day limit reached, plan of care end date, and prior authorization remaining visits. You'll also see a separate alert if the Medicare therapy cap is exceeded, prompting a KX modifier and supporting documentation.
# Flowsheets
Source: https://docs.athelas.com/air_provider/fill_a_chart_note/flowsheets
Flowsheets streamlines physical therapy documentation by aligning it with how visits are actually billed. The page is **CPT-centric**: you set up the billing codes for the visit first, then nest the interventions you performed underneath each code. The result is fewer clicks, less repeated data entry, and cleaner notes.
Units are auto-calculated from minutes at the CPT block level, with manual overrides available. You can also carry interventions forward from previous visits, mark exercises as a Home Exercise Program (HEP), and send the patient a HEP PDF — all from the same screen.
## Creating and managing flowsheets
### Adding procedure codes
Every flowsheet starts with a CPT block. The CPT-centric structure mirrors actual billing practices, so the codes that determine what you bill are the scaffolding for everything else on the page.
**To add a procedure code:**
1. **Click** **+ CPT** at the top of the flowsheet.
2. **Search by CPT number** (e.g., `97110`) or **by description** (e.g., "therapeutic exercise"), then select the code from the dropdown.
3. **Fill in the CPT block** — modifiers, minutes, provider, and status.
CPT codes in the **+ CPT** dropdown are sorted by **how often you've used them** — the codes you've added to chart notes most frequently show up at the top. The order is **per provider**, so each provider sees their own usage-based list. If the code you want isn't near the top yet, just type to search for it.
Minutes are entered **once per CPT block**, not per intervention. Units are auto-calculated from those minutes; you can override them manually if needed.
✨**Smart Tip:** Use multi-select to **bulk add CPT codes** for the whole visit in one shot before you add any interventions — then nest the exercises under each block as you document.
### Tracking interventions
With a CPT block in place, add the interventions you performed underneath it. You can use **free text**, the **exercise library**, or **intervention groups** — and you can mix all three on the same flowsheet.
**Free text**
Use this when you already know what you want to write and don't need structured parameters.
1. **Click** **+ Add Intervention** under the CPT block.
2. **Type the intervention name** directly (e.g., "Hip abduction", "TheraBand rows").
3. **Press Enter** or **Tab** to confirm.
**Library search**
Use this to pull a structured intervention with pre-filled parameters (sets, reps, weight, etc.).
1. **Click** **+ Add Intervention** under the CPT block.
2. **Type `/`** to open the library search.
3. **Search by exercise name** and select a result to insert the structured intervention.
**Intervention groups**
Use this to add several related interventions at once.
1. **Click** **+ Add Intervention** under the CPT block.
2. **Switch to the Intervention Groups tab.**
3. **Search by group name** and select a group to add its full set of structured interventions.
### Managing interventions
**Marking interventions done**
Click the checkmark on any individual intervention to mark it complete, or use **Mark All Done** in the Summary Bar to complete every intervention on the flowsheet at once.
**Mark All Done does not trigger any billing actions.** Marking interventions as done is for documentation cleanliness and PDF generation — it has no impact on what is billed. Billing is driven entirely by the procedure codes on the flowsheet and their associated minutes and units. As long as a CPT code has minutes and units, it will be billed.
**Reordering interventions**
Drag and drop to reorder interventions within a CPT block. You can also drag an intervention **between CPT blocks** if you need to reassign it to a different billing code.
**Concurrent interventions**
When two interventions are performed at the same time — for example, a therapeutic exercise during e-stim — mark them as concurrent so the overlapping time is represented accurately.
**Deleting interventions or CPT blocks**
Use the row menu to remove an individual intervention, or to delete an entire CPT block.
Deleting a CPT block also removes every intervention nested under it. If you only want to reassign an intervention, drag it to another CPT block instead.
### Carrying interventions forward
For patients who do roughly the same exercises each visit, **Carry Forward** pulls interventions from the previous visit into the current one so you aren't rebuilding the flowsheet every time. It runs automatically when the chart note loads.
| **Note type** | **Pulled from** | **Gates and rules** |
| :------------ | :------------------ | :----------------------------------------------------------------------------------------------------------------------------- |
| Initial eval | N/A | No carry forward — this is the first note in the case. |
| Daily note | Latest note in case | Pulls interventions, CPT codes, and details; the source must be a Flowsheets visit note (not from the older flowsheet system). |
| Progress note | Latest note in case | Same rules as daily note. |
✨**Smart Tip:** For routine patients, scan what carry-forward populated, then just update the minutes and tweak any exercises that changed for today's visit.
## Creating and managing Home Exercise Programs (HEPs)
### Creating HEPs
Toggle the **HEP** option on any intervention to mark it as something the patient should perform at home. This is optional — only use it for exercises intended for home practice.
### Sending the HEP email
When the flowsheet is complete, you can generate a PDF summary and send the patient their Home Exercise Program.
**To send the HEP:**
1. **Click** **Send HEP Email** in the flowsheet.
2. Review the PDF — only interventions marked **HEP** are included.
3. **Confirm the patient's email address or phone number** before sending.
## Flowsheets add-ons
### Summary bar
The **Summary Bar** sits at the top (or bottom) of the flowsheet and gives a real-time view of the entire visit:
* **Total treatment time** — sum of minutes across all CPT blocks.
* **Total units** — sum of auto-calculated units across all CPT blocks.
* **Completion status** — interventions marked done vs. total.
The Summary Bar also exposes the **Mark All Done** button (one click closes out every intervention on the flowsheet) and a toggle to switch between **automatic** and **manual** unit calculation.
### Comments
The **Comments** section is a rich-text area for anything that doesn't fit into structured fields — clinical observations, patient feedback, session highlights, or context for the next provider.
* **Click** the Comments area to open the editor.
* Format with **bold**, *italic*, bullet lists, and more.
* Comments are saved with the flowsheet and visible in the visit record.
### Time in clinic
Track the patient's actual time in the clinic separately from treatment time using the **Time in Clinic** fields:
* **Time In** — when the patient arrived and treatment began.
* **Time Out** — when the patient's visit ended.
These fields auto-populate from the appointment's scheduled start and end times, but you can adjust them manually if the visit ran differently.
### Keyboard shortcuts
Most of the flowsheet can be filled out without ever leaving the keyboard.
| **Shortcut** | **What it does** |
| :---------------------- | :--------------------------------------------------------------------- |
| **Tab** | Move forward through fields (minutes → modifier → provider, etc.). |
| **Shift + Tab** | Move backward through fields. |
| **`/` (forward slash)** | While in the intervention field, open the library search. |
| **Enter** | Confirm a free-text intervention, library selection, or active button. |
### Power user tips
✨**Smart Tip — work the flowsheet fast:**
* Use **multi-select CPT codes** to bulk add all your billing codes for the visit in one shot, then nest interventions under each block.
* **Tab through CPT block fields** — you rarely need to click.
* For routine patients, **review what carry-forward populated**, then just update minutes and any changed exercises.
* Only use **`/` library search** when you need structured parameters or are building a HEP — otherwise just type the name directly.
* End the visit with **Mark All Done** in the Summary Bar to close out every intervention in one click.
* If you're using the **AI Scribe**, speak in clinical shorthand — the scribe understands CPT codes, minutes, and exercise names.
### FAQ
No. **Mark All Done** only updates documentation status and the visit PDF — it does not change billing.
Billing is driven entirely by the **procedure codes** on the flowsheet and their associated **minutes and units**. As long as a CPT code has minutes and units, it will be billed regardless of whether interventions are marked done.
The CPT block **and every intervention nested under it** are removed.
If you want to keep the interventions but move them to a different billing code, **drag and drop them into another CPT block** before deleting the original.
Yes. You can use **free text**, **library search**, and **intervention groups** in any combination on a single flowsheet, even within the same CPT block. Use free text for quick entries you know by name; use the library or groups when you need structured parameters like sets, reps, and weight.
Carry-forward only runs in specific scenarios:
* **Initial evals** never carry forward — they're the first note in the case.
* **Daily notes** and **progress notes** carry forward from the **latest note in the same case**, but only if that note is itself a current Flowsheets visit note.
If the most recent note in the case was created in the older flowsheet system (or no prior note exists), carry-forward will skip the visit.
Units are **auto-calculated from minutes at the CPT block level** — you enter minutes once per block, and the system computes units for you.
If you need a different value, switch from **automatic** to **manual** unit calculation from the Summary Bar and enter the units directly.
Questions or issues? Reach out to your clinic administrator or the Commure support team. The latest version of this guide is maintained at the [Flowsheets User Guide](https://athelas-public.notion.site/Flowsheets-v2-User-Guide-357f92a633f280bc8767c1a40fb79503).
# Functional Outcome Measurements
Source: https://docs.athelas.com/air_provider/fill_a_chart_note/functional_outcomes
We support creating and integrating Functional Outcome Measurement Forms within the chart note. The initial list of forms include:
* ODI
* NDI
* Modified Oswestry
* UEFS
* LEFS
* KOOS
* HOOS
* DASH
* QuickDASH
### **Reviewing forms within the Chart Notes**
**View Forms:**
* Open the patient's **chart note**. **Functional Outcomes** will be available as a section at the top.
* You will be able to view the scores here.
* Click on a form/dropdown to see the values inputted by the patient.
* As a provider, you will have access to change any values inputted by the patient as required.
**Adding and Completing a Form During an Appointment:**
* In **Functional Outcomes** section, you can click the **"Add a functional outcome form"** dropdown → Select the desired form template (e.g., KOOS, QuickDASH, or Berg Balance Scale).
* Fill out the form with the patient, selecting the appropriate values for each question.
* After all questions are answered, the system will automatically display the computed score.
**Viewing functional outcome measurements History:**
* In the chart note, find the specific functional outcome measurement you want to view → Click the **history icon** (a table-like symbol) next to the form.
* A table showing the history of scores for that form will appear.
**Deleting Measurements:**
You can delete a functional outcome measurement from a patient's chart note if needed.
* Find the form you want to delete → Click the **delete icon** (a trash can symbol) next to the form.
* In the confirmation dialog, click **Delete**.
* The form will be removed from the patient's chart.
### **Filling the survey \[for Patients]**
Patients receive a link to the survey via text or email and can complete it in a few simple steps.
* The patient will receive a link to fill out the forms. They will be able to log in to start answering the questions.
* Once completed, a confirmation message will display, indicating the survey has been submitted.
# Measurements
Source: https://docs.athelas.com/air_provider/fill_a_chart_note/measurements
Measurements give you a standard, organized way to document physical therapy assessments in the chart note. Every site starts from the same library of **standard measurements** — Knee Extension, Hip Flexion, and the rest — and your practice can add custom measurements on top of them. Because the fields stay consistent from visit to visit, values carry forward, compare cleanly across a case, and support goal tracking.
Measurements reach the chart note as **groups** rather than as one flat list, so you document **Knee ROM** or **Shoulder Strength** as a block instead of hunting for individual fields.
## What measurements give you
| **Capability** | **What it does** |
| :---------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Standard measurements** | Predefined assessments common to every PT practice (e.g., Knee Extension, Hip Flexion). They are read-only, so a measurement means the same thing at every site. |
| **Custom measurements** | Measurements your practice builds in **Preferences**, with the response fields you define and an optional table layout for bilateral values. |
| **Measurement groups** | Named collections such as **Knee ROM** or **Shoulder Strength** that appear in the chart note as one block. |
| **Categories and body parts** | Every measurement carries a category (**Range of Motion**, **Strength**, **Inspection**) and, optionally, a body part (**Knee**, **Shoulder**, **Ankle And Foot**), so you can filter instead of scrolling. |
## Key concepts
| **Term** | **Meaning** |
| :----------------------- | :------------------------------------------------------------------------------------------------------------------------------- |
| **Measurement** | An individual field such as *Knee Extension* or *Hip Abduction*. It can be standard (predefined) or custom (built by your site). |
| **Measurement group** | A named collection of measurements, for example *Knee ROM*. Groups are what you see in the chart note. |
| **Category** | A clinical classification such as **Observation**, **Inspection**, **Range of Motion**, or **Strength**. |
| **Body part** | The area the measurement refers to, such as **Shoulder** or **Ankle And Foot**. |
| **Standard measurement** | System-defined and identical across every site on Air. |
| **Custom measurement** | Created by your site to capture additional or specialized fields. |
| **Default group** | A system-defined grouping of related measurements. Your site can add groups of its own alongside the default ones. |
## How measurements are organized
Each measurement sits in three overlapping structures, and you can browse from whichever one fits how you think:
1. **By category** — Range of Motion, Strength, Inspection, and the other clinical classifications.
2. **By body part** — Knee, Ankle And Foot, Shoulder, and so on.
3. **By group** — default groups plus the custom groups your site builds, such as *Knee ROM*.
Search and filtering work off the same structure. Anywhere you pick measurements, you can find them by:
* **Name** — for example, *Hip Flexion*
* **Category** — for example, Range of Motion
* **Body part** — for example, Knee
* **Group** — for example, *Knee Strength*
## Documenting measurements in a chart note
**To add measurements to a note:**
1. Open the **Measurements** section of the chart note — it sits under **Objective** in the left rail.
2. **Click** **Add V2 Measurements** to open the picker.
3. Browse the **Categories** or **Groups** tab, or search by name, and check what you need.
4. **Click** **Add Measurements**. Your selection lands in the note, grouped and ready for values.
5. Fill in each field — a number, a text field, a dropdown, or a table of left and right values.
The section header also lets you reuse earlier data:
* **History** — review the patient's earlier values for the measurements on the note.
* Pull the values documented at the previous visit into this note, when a previous note exists.
Measurements documented on the initial evaluation carry forward automatically to follow-up notes in the same case, so a daily note opens with the previous values already in place.
Select your measurement groups **before** you start an [Air Scribe](/air_provider/fill_a_chart_note/ai_scribe_chart_notes) recording. Air Scribe fills values into the measurements already on the note, and cannot add a new measurement group on your behalf.
## Setting up measurements on an appointment type
Attach measurements to an appointment type so every visit of that type opens with the right blocks in place. Attaching measurements is admin setup, done once per appointment type in [**Preferences → Appointment Types**](/air_admin/manage_your_practice/appointment_types).
**To set default measurements for an appointment type:**
1. Go to **Preferences → Appointment Types**, then create a new appointment type or edit an existing one.
2. In **Select and Order Sections**, search for **Measurements** and select it.
3. Find the **Measurements** row under **Objective** and **click** **Set Measurements**.
4. **Click** **Add** next to **V2 Measurements**.
5. Search by name, or browse the **Categories** and **Groups** tabs, and check the measurements you want. Everything you pick collects under **Selected Measurements**.
6. **Click** **Add Measurements**, then save the appointment type.
✨**Smart Tip:** Select a whole group or subgroup instead of checking measurements one at a time. Picking *Knee ROM* pulls in every measurement inside it, and the chart note keeps them together as a block.
## Creating custom measurements
When the standard library does not cover something your practice tracks, build a custom measurement for it. Custom measurements live alongside the standard ones and behave the same way in the chart note.
**To create a custom measurement:**
1. Open **Preferences** from the left navigation and go to the **Measurements** tab.
2. **Click** **+ Add Measurement**.
3. Enter a **Name**.
4. Choose a **Category** — Observation, Inspection, Range of Motion, Palpation, Special Tests, Neurovascular, Functional Tests, Joint Mobility, Strength, General Tests, or Other.
5. Optionally choose a **Body Part** so the measurement turns up when someone filters by that body part.
6. Optionally add a **Prompt** — the instruction Air Scribe follows when filling this measurement from a visit recording. A specific prompt produces better documentation.
7. Add the response **Fields** the provider fills in.
8. Optionally check **Create as Table**, then set **Row Headers** and **Column Headers**. The **Preview** below shows the grid as the provider will see it.
9. **Click** **Create**.
Measurements display in one of two formats:
* **Text** — fields appear as single-line entries. Best for a handful of simple values.
* **Table** — fields appear as a grid. Best for comparing bilateral values, such as left versus right knee.
**Note:** You can also reach this screen from [Chart Note Templates](/air_admin/manage_your_practice/chart_note_templates#create-custom-preferences), where measurement preferences sit next to your other template settings.
## Managing measurement groups
Groups are what keep a chart note readable: instead of dozens of loose fields, a provider sees *Shoulder Strength* and works through it as a unit.
**To create a measurement group:**
1. In **Preferences → Measurements**, open the **Groups** tab and **click** the **Create Measurement Group** icon next to **+ Add Measurement**.
2. Enter a **Group Name** and choose a **Category**. A **Body Part** is optional.
3. Under **Select Measurements**, browse the **Categories** or **Groups** tab and **click** **+** to add an individual measurement, a category, or an entire existing group.
4. Optionally **click** **Create Sub Group** to nest a second level, then give the subgroup a name.
5. Drag measurements into the subgroup to move them there. The right panel is arranged by drag and drop, so the order you set is the order providers see.
6. **Click** **Create**.
Your practice can add, edit, and delete its own groups, assign measurements to a group, and nest groups up to two levels deep. Default groups stay as they are for every site.
## Things to know
* **Standard measurements are read-only.** Build a custom measurement when you need different fields.
* **Chart notes store a snapshot** of the measurements and templates selected at the time, so an existing note keeps the values and layout it was documented with.
* **Edits to a custom measurement are version-controlled.** Older notes keep the version they were documented with, and new notes pick up the latest one.
* **New appointment cases use the current Measurements section.** Cases that were already open keep the section they started with, so progress notes in flight are not disrupted. Super users at your site control which appointment types use the current measurement templates.
### FAQ
No. Standard measurements are read-only so that a measurement means the same thing across every site on Air.
If you need different fields, a different category, or a table layout, create a **custom measurement** in **Preferences → Measurements** instead.
Nothing. Each chart note stores a **snapshot** of the measurements and templates selected at the time of documentation, and edits are **version-controlled**.
Notes documented before the change keep the earlier version. New notes use the latest one.
Air Scribe fills values into the measurements that are **already on the note**, and does not add measurement groups for you.
Add the groups you plan to document with **Add V2 Measurements** first, then start the recording.
Two levels: a group and its subgroups. Use the **Create Sub Group** button in the group builder, then drag measurements into the subgroup to arrange them.
Check the appointment type first. Default measurements are attached per appointment type, and each clinical note type can be configured to carry a section over or leave it out — measurements are sometimes excluded from follow-up visits on purpose.
You can always add what you need to an individual note with **Add V2 Measurements**.
Questions or issues? Reach out to your clinic administrator or [support@getathelas.com](mailto:support@getathelas.com). The latest version of this guide is maintained at the [Measurements User Guide](https://athelas-public.notion.site/Measurements-V2-User-Guide-1e5f92a633f2804488c9e44fda548ab2).
# Medication Order Set
Source: https://docs.athelas.com/air_provider/fill_a_chart_note/medication_order_set
Medication Order Sets are reusable medication prescription templates that help you order faster and keep prescribing consistent across your practice.
## What is a Medication Order Set?
An order set lets you save a group of medications with default values once, then apply that set when ordering for a patient.
* The system pre-fills medication fields such as **Prescription SIG**, **Duration**, **Quantity**, and **Refills**.
* You can still adjust any value before you submit.
* Order sets are **site-specific** and cannot be shared across clinic sites.
## Where to find Medication Order Sets
### Manage order sets
Use this path to create, edit, duplicate, archive, and restore order sets:
1. Open **Preferences** from the left sidebar.
2. Click the **Order Sets** tab in the top navigation.
### Use order sets while ordering
You can apply order sets from:
* **Patient Profile -> Medications -> Create New**
* **Chart Note -> Medications -> Medication Order**
* **Medication drawer -> Import Order Set**
## Create a Medication Order Set
### Step 1: Open the Order Sets page
1. Open **Preferences**.
2. Click **Order Sets**.
3. Click **Add Order Set**.
### Step 2: Name the order set
1. Click the pencil icon next to **Name your order set**.
2. Enter a clear name, such as `Knee Pain - NSAID Protocol`.
**Note:** Names must be unique within your site.
### Step 3: Add an optional description
Add context that helps other providers understand when to use the set.
### Step 4: Link optional diagnosis codes
1. In **Diagnosis Code**, search ICD-10 codes or condition names.
2. Select one or more codes from the dropdown.
You can leave diagnosis codes blank if you plan to pick the set manually.
### Step 5: Add medications
1. In **Medication**, click the **+** button to add a row.
2. Search and select the correct medication/formulation.
3. Fill in these fields for each medication:
* **Prescription SIG**
* **Duration** (number + unit)
* **Quantity**
* **Refills**
* **Pharmacy** (optional)
You can add multiple medications in one set. You can also use **Search Order Sets** in the right panel and click **Add** to copy medications from an existing set.
### Step 6: Save
Click **Create Order Set**.
**Important behavior:**
* You can save an order set with only a name, then add medications later.
* If you add a medication row, that row must have a medication selected before saving.
* You can mark the set as **Mark as my favorite** so it appears under Favorites when searching.
## Manage Medication Order Sets
### Active and Archived tabs
* **Active**: available for use.
* **Archived**: hidden from standard search and ordering popovers until restored.
### Search
Use the search field to filter by order set name or diagnosis code.
### Row actions in Active
* **Edit**: update name, description, diagnosis codes, and medications.
* **Duplicate**: creates `Original name (Copy)` so the name remains unique.
* **Archive**: moves the set to Archived after confirmation.
### Archived actions
* **Restore** returns the set to Active so it can be used again.
### Favorites
* **Mark as my favorite** is set in the edit view.
* Favorites are **per user** and do not change the set for other users.
## Use an Order Set When Ordering
### From Patient Medications
1. Open a patient profile and go to **Medications**.
2. Click **Create New**.
3. In the search popover, choose from tabs like **All**, **Favorites**, **Order Sets**, or **Individual Order**.
4. Select an order set to prefill the medication drawer.
5. Review and adjust fields, then submit.
### From Chart Note
1. Open the chart note and go to **Medications**.
2. Click **Medication Order**.
3. Select an order set or individual medication.
4. Review and submit for the current patient and appointment.
### Import Order Set inside the medication drawer
If the drawer is already open:
1. Click **Import Order Set**.
2. Search and select an order set or medication.
Behavior depends on existing rows:
* If only an empty row exists, imported items replace that row.
* If filled rows already exist, imported items are appended.
You can import multiple times, add medications manually, or remove rows before submitting.
## Tips and best practices
* Use clear names so providers can find the right set quickly.
* Group complete protocols into one set when possible.
* Favorite the sets you use most often.
* Archive older sets instead of deleting so you can restore later.
* Remember order sets are templates; all standard validation and checks still apply before submission.
## Quick reference
| **Task** | **Where** | **Action** |
| :--------------------------------------- | :------------------------------------------------ | :--------------------------------------------------- |
| **Create / edit / archive order sets** | **Preferences -> Order Sets** | **Add Order Set, Edit, Duplicate, Archive, Restore** |
| **Use order set in Patient Medications** | **Patient -> Medications -> Create New** | **Select set or medication from popover** |
| **Use order set in Chart Note** | **Chart Note -> Medications -> Medication Order** | **Select set or medication from popover** |
| **Add set to current drawer** | **Inside medication drawer** | **Import Order Set, then search and add** |
### FAQ
No. Order sets are site-specific and only available within the current clinic site.
Yes. Applying a set pre-fills values, but you can edit SIG, duration, quantity, refills, and other fields before submitting.
Archived order sets are hidden from standard search and ordering popovers. You can restore them from the Archived tab when needed.
No. Favoriting is per user. Marking a set as favorite only affects your own search experience.
# Medications
Source: https://docs.athelas.com/air_provider/fill_a_chart_note/medications
Learn how to prescribe medications, review medication history, manage custom SIGs, and handle pharmacy requests in Air.
### Add New Medications
For reusable templates, see [**Medication Order Set**](/air_provider/fill_a_chart_note/medication_order_set).
From Patient's Profile > Medications you can:
* View Historic Medications
* View Prescribed Medications
* Add / Edit Prescribed Medications
You can search for the drug name and filter the medications by date, activity, type, pharmacy status *(sent, pending, received, unknown, failed)*
**To Add a new Medication:**
* Click **New** and select **Pharmacy Order**, **Internal Record**, or **Historic Record**.
* Review the **Associated Appointment**. Air selects the most recent **Checked In** or **Completed** appointment by default. If neither is available, Air selects the most recent eligible appointment. You can select a different appointment when needed.
* Select the \*\*+ icon \*\*to the right to select a Pharmacy (if a favorite pharmacy is selected it will auto-populate)
* Search for a pharmacy by typing the name, pin code, distance radius, pharmacy type (Retail, Mail Order)
* Star a pharmacy to **mark it as favorite** or preferred
* After you update preferred pharmacies and click **Save**, the dialog closes. Air keeps the current pharmacy if it is still in the saved list. If you removed it and at least one preferred pharmacy remains, Air selects the first saved pharmacy.
* Select a medication. Before you type, Air suggests medications from your recent prescribing history. Type three or more characters to search by medication name.
**✨Smart Tip:** If a Generic alternate is available - you can choose to update the medication selected.
* Check the box: I understand these alerts and will proceed
* Enter the prescription SIG or select from the saved SIGs
**✨Smart** \*\*Tip: \*\*Click Check with AI to get a well worded SIG statement. You can choose to accept or delete the suggestion.
* Add the duration, dispense quantity, refills
* Select **Dispense as Written i**f you would like the pharmacy to dispense the medication as written in the prescription order
* Add internal notes, pharmacy notes, diagnosis codes from the appointment, earliest fill date
* Click **Proceed to Review** to save the medication
\*\*Note: \*\*You can also add medication into the Chart Note as an additional section.
### View Medication History
You can view medication history two ways:
1. Manually add historic medications from \*\*Create New \*\*and view in the Historic Medications Tab
2. View Medication History on SureScripts by selecting \*\*Medication History \*\*on the top right. Select time range, acknowledge patient's consent and click Submit
### Create Custom SIGs
View Saved SIGs on Preferences Tab > Medications. You can search by Drug Name or Active / Inactive status
Select the pencil icon to update a SIG and select the toggle icon to mark a SIG as inactive.
To create a new SIG:
* Click **+add SIG**
* Select the drug name
* Add a label, SIG text and mark state as Active
* Click Save SIG
### Manage Pharmacy Requests
Navigate to the Pharmacy Requests Tab on the left. From here you can do 2 things:
1. Manage Unrecognized Patients
* Click Review for a Request
* Select an existing patient to link to the Request
* Click Map to Patient below
* This will move the request from the Unrecognized Patients Tab to the Requests Tab
2. Manage Existing Requests
* Click Review for a Request
* Review details and mark Approve, Replace or Deny
### FAQ
Air selects the most recent **Checked In** or **Completed** appointment. If neither is available, Air selects the most recent eligible appointment.
Yes. Review the **Associated Appointment** and select a different eligible appointment before you continue.
# Check your Inbox
Source: https://docs.athelas.com/air_provider/fill_a_chart_note/nav_inbox
The Inbox is your home for understanding what notes need to be signed and submitted.
Each row in the left navigation is a note - shows patient name, date of service, and clinical note type. Clicking on the row will open the note on the right.
✨**Smart Tip:** Ask Athelas AI for pending tasks. You can also use Voice Mode.
* Click on each note to open the chart note > edit details and submit the chart note
* **Bulk sign and submit:** Click on the sign & submit note on top of the page > select all notes to bulk sign and submit > click Confirm
You can filter your Inbox based on the following:
* **My signed notes**: Notes signed by the current provider, either as the rendering or supervising provider.
* **Open**: All notes that remain open (not yet signed).
* **Ready to cosign**: Notes signed by the rendering provider (not the current provider) that require the supervising provider’s signature. Displays notes ready for the supervising provider to cosign.
* **Ready for primary signature**: Notes where the rendering provider has not signed, but the supervising provider (a different person) has already signed.
* **No supervising signature**: Notes that require a supervising provider’s signature but have not yet been signed by the rendering provider.
* **My notes as rendering provider**: Notes where the current provider is the rendering provider only.
# Navigate your Chart Note
Source: https://docs.athelas.com/air_provider/fill_a_chart_note/navigate_chart_note
As you begin a patient consult, set up, complete, and submit a Chart Note.
## Navigate your Chart Note
### **Opening a Chart Note**
✨**Smart Tip:** Ask Athelas AI to navigate you to the relevant Chart Note. You can also use Voice Mode.
Manually open Chart Note:
1. Open the **Calendar**.
2. Select the desired **Appointment**.
3. Click **View Note** in the top-right corner.
4. Once opened, patient details appear in the top bar, with Chart Note sections listed in the left sidebar.
**Note:** You must check-in the appointment before you can open its Chart Note.
For appointments of the same case - you can review the AI generated summary of the chart notes from past appointments.
Alternate method: [View Chart Notes from Patient Profile](/air_provider/review_patient_details/patient_appts#view-chart-notes-for-an-appointment)
\*\*Tip: \*\*View change history of the chart note by clicking on View Change History on the top right of the page.
### View the Pre-Visit Summary
### **Plan of Care**
When selecting **Plan of Care**, you will be prompted to enter: Start Date and End Date,
Frequency & Units, Duration & Units, Visit Count.
The visit count will auto-count down every session and be available to review in the Calendar and Chart Note.
✨ **Smart Tip**: If you enter a Start Date, Frequency, and Duration, the system will automatically calculate the End Date and Visit Count.
### **Diagnosis Codes**
Diagnosis Codes will be auto-populated through Scribe, however, you are recommended to review them in detail before submitting the chart note.
To manually add a \*\*Diagnosis Code: \*\*Select ICD-10 codes from the drop down. Click on the Reorder List button to review the code list and drag codes to reorder them.
### **Other sections in the Chart Note**
In addition to the Plan of Care and Diagnosis sections, you can view other sections such as:
* [Goals](/air_provider/fill_a_chart_note/other_sec_chart_note#goals)
* [Treatments](/air_provider/fill_a_chart_note/other_sec_chart_note#treatments)
* [**Visits**](/air_provider/fill_a_chart_note/other_sec_chart_note#visits)
* [**Medications**](/air_provider/fill_a_chart_note/medications), [**Medication Order Set**](/air_provider/fill_a_chart_note/medication_order_set), and [**Prescriber Agents**](/air_provider/fill_a_chart_note/prescriber_agents)
* [**Flowsheets**](/air_provider/fill_a_chart_note/flowsheets)
* [Measurements](/air_provider/fill_a_chart_note/other_sec_chart_note#measurements)
* [**Functional Outcome Measurements**](/air_provider/fill_a_chart_note/functional_outcomes)
Add a section to the Chart Note by selection options from the dropdown.
**Note:** Adding a **Flowsheet** section will remove the **Treatments** section.
## Sign & Submit
### **Compliance Checks with Athelas AI**
**Compliance checkmarks** ensure that specific details required for compliance are captured in the Chart Note.
* If the detail is missing, the checkmark appears **grey**.
* Once the detail is documented, the checkmark turns **green**.
Click on **Review** on the bottom right of the Athelas AI widget. This will ask Athelas AI to provide a comprehensive compliance check.
* You will get a **compliance score out of 100**
* Additional recommendations to ensure no billing compliance issues related to the Chart Note.
You can also check the compliance status for each chart note section while entering it in.
### **Sign a Note**
The signature section compiles all compliance validations for review. Here, the rendering provider and any co-signers can sign the note.
\*\*Note: \*\*If you do not need a supervising provider's signature you can amend the preferences from the Providers Tab within Preferences.
* To fax the encounter to a referring provider, select their name from the dropdown, enter their fax number, and check **Fax note to referring provider**.
* You may also include a signature request section if needed.
**Note**: You can also view detailed audit logs of the Chart Note before signing the note
### Streamline Patient Care with AIR Assistant
### Preview Chart Note
Navigate to **Notarize** within the Chart Note and select **Preview Billing PDF** (next to Fax to Ref. Provider).
### **Submit Encounter**
* Sign the note under **Notarize** and click **Submit**.
* If the patient has future appointments scheduled, you can choose to update them with the completed note.
* Next, you’ll be asked if you’d like to review the appointment in RCM/Billing. Click **View Encounter Details** or **View Claim Details**, or simply click **Complete**.
### **Post Submission**
Once you sign & submit a Chart Note, you can:
Once a Chart Note is completed, it becomes visible in the [Appointments section](/air_provider/review_patient_details/patient_appts#view-chart-notes-for-an-appointment) of the Patient’s Profile.
To fax a completed chart note, click **“+Create Fax”** at the bottom of the note. A side panel will open where you can choose the fax type.
**Three fax types are available:**
* **Provider:** Select from a dropdown of referring providers within Air. If a fax number is saved for the provider, it will auto-populate.
* **Individual Fax Number:** Enter any fax number manually to send the completed chart note.
* **Imaging Request:** Sends the chart note along with an imaging request. This includes diagnosis codes, procedure codes, rule-out information, result medium, attachments, and imaging facility details.
**Note**: You can set the default PDF type in the Preferences tab which will set the default PDF to be sent as a fax (options including Billing PDF, Billing PDF without measurements, Plan of Care PDF or Physician PDF).
* **If the patient is in-office:** Change your Chart Note to a Discharge Note to automatically adjust the template and included sections.
* \*\*If the patient does not visit the office: \*\*Discharge the patient from the [case table within the Patient Profile](/air_provider/review_patient_details/patient_demog#active-and-discharged-cases)
## FAQs
### I can't see my patient's past chart notes from my old EHR
**Import Records for Past Appointments**
**Context:**
* Plan of Care details may not be migrated from the old EHR into Athelas Air.
* For returning patients seen in Air for the first time, providers will need to reference their previous documentation and set up the Plan of Care in Air.
* **This is a one-time step: once entered, the Plan of Care will automatically carry forward from note to note.**
**Open the recent-most Progress note / Initial Eval for the patient:**
* Go to the Patient's Profile → \*\*Appointments \*\*and locate the \*\*date of service \*\*of the latest Progress note / Initial Eval appointment for the case.
* Go to **Attachments**, search for the **date of service** corresponding to the note from which you want to carry forward the measurements.
* Click the **eye icon** to **view the PDF**, then **download** the PDF to your device.
**Add the note to the relevant appointment:**
* Go back to the \*\*Appointments \*\*Tab
* Click the **+ icon** to the right of the appointment → **Set Up Chart Note**.
* Select the right **Case, Appointment Type,** and **Clinical Note Type** \[Progress Note, Initial Evaluation, etc.]
* Select **For Documentation Only**. This option ensures the imported chart note is **not billable**.
* Select **Set-up.** This will open the chart note on a new screen
* Click on \*\*Import \*\*at the top right → Upload the attachment → Scribe processes the PDF.
* Track progress by clicking into \*\*Athelas AI → \*\*Select the sections you would like to pull and \*\*Apply Scribe \*\*to desired sections once complete.
* Review, edit if needed, and exit (***auto-saves, no signature required***). This information should then start pulling into all future notes made on Air.
# Order Sets
Source: https://docs.athelas.com/air_provider/fill_a_chart_note/order_sets
Create, manage, and apply reusable clinical order sets in Air.
Order Sets are reusable templates for common clinical orders — medications, labs, imaging, DME, and referrals — that help you order faster and keep care consistent across your practice.
## What are order sets?
An **order set** is a reusable clinical order template. You save a group of orders with default values once, then apply that set with a single action when ordering for a patient. The system fills in every field, and you can still adjust any value for a specific patient before submitting.
Order sets support the following order types:
* **Medications** — Prescription medications with SIG, duration, quantity, and refills.
* **Labs** — Laboratory tests with priority and specimen details.
* **Imaging** — Radiology orders (X-rays, MRIs, CTs, etc.) with priority settings.
* **DME (Durable Medical Equipment)** — Equipment orders with quantity and diagnosis linking.
* **Referrals** — Specialist referrals with clinical reason and notes.
### Benefits
* **Save time** — No need to re-enter the same order details every time you see a common condition.
* **Reduce errors** — Pre-set values reduce manual entry mistakes.
* **Consistency** — Common protocols (e.g., knee pain, back pain, post-op care) stay consistent across providers.
* **Faster onboarding** — New clinicians can use shared order sets from day one.
Order sets are **site-specific**: they exist only for your current clinic site and are shared among all providers at that site.
**Note:** For medication-specific ordering workflows — such as applying a set from **Patient Profile → Medications** or importing one into the medication drawer — see the [Medication Order Set](/air_provider/fill_a_chart_note/medication_order_set) guide.
## Where to find order sets
You can access order sets in two places:
1. **Manage order sets (create, edit, archive):** Go to **Preferences → Order Sets** in the left sidebar.
2. **Use order sets when ordering:** Open a patient's visit note, navigate to the **Orders** section, and click **Add Order Set** to apply an existing set.
## Create an order set
### Step 1: Open the Order Sets page
1. Go to **Preferences** in the left sidebar.
2. Click the **Order Sets** tab.
3. Click the blue **Add Order Set** button (top right).
### Step 2: Name your order set
1. Click the pencil icon next to **Name your order set** (or click the text directly).
2. Type a clear, descriptive name — for example, `Knee Pain – NSAID Protocol`, `Post-Op Labs Panel`, or `Diabetes Annual Screening`.
**Note:** Each name must be unique within your site.
### Step 3: Add a description (optional)
In the **Add a description** field, enter any context that helps other providers understand when to use this set (e.g., "Use for patients with acute low back pain without radiculopathy").
### Step 4: Link diagnosis codes (optional)
1. In the **Diagnosis Code** field, search for ICD-10 codes or condition names.
2. Select one or more codes from the dropdown; they appear as removable tags.
Linked diagnoses help auto-match order sets to patient conditions and auto-populate on orders when the set is applied. You can leave this blank if you only plan to select the order set manually.
### Step 5: Add orders
Click the **+** button or **Add Item** to add order rows to your set. You can mix multiple order types — medications, labs, imaging, DME, and referrals — in a single order set. The fields available in each row depend on the order type you choose (see [Order types and their fields](#order-types-and-their-fields) below).
### Step 6: Save your order set
Click **Create Order Set** at the bottom of the page. The new order set appears in the **Active** list and is immediately available for use.
You can create an order set with only a name (no orders) and add items later by editing it. However, if you add any order row, that row must have a valid item selected before you can save.
### Mark an order set as a favorite
Toggle **Mark as my favorite** in the header when creating or editing an order set. Favorited sets appear under a **Favorites** section for quick access when ordering.
**Note:** Favorites are per provider — only you see your favorites.
## Order types and their fields
You can add any combination of the following order types to a single set. Each order type has its own set of fields, and the values you enter become the defaults that pre-fill when the set is applied — providers can adjust them per patient at the time of ordering.
### Medications
1. Select **Medication** as the order type.
2. Search by medication name and select the correct formulation (e.g., hydrocodone 5 mg–acetaminophen 325 mg tablet).
3. For each medication, fill in **SIG (directions)**, **Duration**, **Quantity**, **Refills**, and **Pharmacy** (optional).
### Labs
1. Select **Lab** as the order type.
2. Search for a lab test by name or CPT code (e.g., "CBC", "BMP", "Lipid Panel").
3. Set the available fields: optional **CPT code**, **Priority** (Routine/Urgent), **Specimen Collected** (toggle), and **Notes**.
You can add multiple labs to a single order set — each appears as a separate row.
**Note:** Lab order sets are not integrated with external labs, but they can be set up to be faxed to your Contact List entities.
### Imaging
1. Select **Imaging** as the order type.
2. Search for imaging orders by name (e.g., "X-ray", "MRI Knee", "CT Abdomen").
3. Set the available fields: **Order name**, **Priority** (Routine/Urgent), and **Notes**.
You can add multiple imaging orders (e.g., X-ray + MRI) to the same order set.
### DME (Durable Medical Equipment)
1. Select **DME** as the order type.
2. Search for DME items by name (e.g., "Knee brace", "Crutches", "CPAP").
3. Set the available fields: **Item name**, **Quantity**, **ICD-10 diagnosis linking**, and **Notes/Justification**.
**Note:** Linking a diagnosis code to DME items supports insurance authorization requirements.
### Referrals
1. Select **Referral** as the order type.
2. Search for the referral specialty (e.g., "Physical Therapy", "Orthopedic Surgery", "Cardiology").
3. Set the available fields: **Specialty**, **Clinical reason/notes**, and **Diagnosis linking**.
**Note:** Adding a clinical reason helps the receiving specialist understand why the patient was referred.
## Combine order types in one set
One of the most powerful features of order sets is combining multiple order types into a single set. For example, a **Knee Pain – Full Workup** order set could include:
* **Labs:** CBC, CRP (inflammation marker)
* **Imaging:** X-ray Knee
* **DME:** Knee brace
* **Referral:** Physical Therapy
When applied, all orders populate simultaneously, and each routes to the correct system when signed — eliminating the need to place each order type separately.
## Manage your order sets
From the Order Sets page (**Preferences → Order Sets**), you can manage all of your site's order sets.
### Active and Archived tabs
* **Active** — Order sets currently available for use when ordering.
* **Archived** — Order sets you have archived. They are hidden from search and the ordering popover but can be restored at any time.
### Search
Use the **Search** field at the top to filter the list by order set name or linked diagnosis code.
### Row actions
* **Edit (pencil icon)** — Open the order set to change its name, description, diagnosis codes, or orders. Click **Update Order Set** to save your changes.
* **Duplicate (copy icon)** — Create a new order set with the same orders. The copy is automatically named *Original name (Copy)* to stay unique, and you can then edit it as needed.
* **Archive (archive icon)** — Move the order set to the Archived tab. You will be asked to confirm. Archived sets cannot be used for ordering until restored.
* **Restore (from the Archived tab)** — Bring an archived order set back to Active so it can be used again.
### Copy from another order set
When creating or editing an order set, use the right-hand panel (**Search Order Sets...**) to find another existing order set and click **Add** to copy all of its items into your current set. The items are appended to your existing list.
## Use an order set during a visit
Order sets are designed to speed up ordering from within a patient's visit note.
### Step 1: Open the visit note
1. Open the patient's chart and navigate to the current visit note.
2. Go to the **Orders** section.
### Step 2: Insert an order set
1. Click **Add Order Set**.
2. Search for the order set by name, or browse your favorites in the modal.
3. Select the order set — all of its orders appear in the Orders section with their default values pre-filled.
### Step 3: Review and adjust
* **Review all inserted orders** — Each order appears under its individual order name with the default values from the template.
* **Edit any order** — Change quantities, priorities, durations, or any other field to customize it for this patient.
* **Remove individual orders** — If a particular order doesn't apply to this patient, remove it without affecting the others.
* **Diagnosis auto-linking** — If the order set has linked diagnosis codes, they automatically populate on the inserted orders.
* **CPT/HCPCS auto-linking** — If the order set has a CPT or HCPCS code linked, it automatically populates in the Services section.
### Step 4: Sign and submit
Once you have reviewed and adjusted all orders, submit them all at once or submit each individually.
Each order routes to its appropriate module — labs to the lab module, imaging to radiology, medications to the pharmacy, DME to equipment fulfillment, and referrals to the referral management system.
Changes you make when applying an order set to a patient only affect that patient's orders — they do **not** modify the original order set template. To change the defaults for future use, edit the order set from **Preferences → Order Sets**.
## Tips and best practices
### Naming conventions
* Use descriptive names that include the condition and key treatment approach (e.g., "Back Pain – Hydrocodone", "Diabetes Annual Screening Labs").
* Keep names concise but distinguishable — other providers at your site will see and use these sets.
* Consider prefixing with the condition or specialty area for easier searching.
### When to use order sets
* **Frequent conditions** — Create order sets for conditions you see regularly (e.g., UTI, acute sinusitis, knee pain).
* **Multi-step protocols** — Use them for conditions requiring multiple order types (labs + imaging + meds + referral).
* **Standardized care** — When your practice wants consistent treatment for specific conditions across all providers.
* **New provider onboarding** — Pre-built order sets help new clinicians follow established protocols from day one.
### Maintenance tips
* Periodically review your active order sets to ensure they reflect current clinical guidelines.
* Archive order sets that are no longer in use rather than leaving them in the active list.
* Use the **Duplicate** feature to create variations of an existing set (e.g., "Knee Pain – Conservative" vs. "Knee Pain – Aggressive").
* Link diagnosis codes to help order sets surface automatically when those diagnoses appear in the patient's assessment and plan.
## Troubleshooting
**I can't save my order set.**
* Ensure the order set has a unique name — duplicate names are not allowed at the same site.
* If you added an order row, make sure a valid item is selected in that row. Empty rows with no selection will block the save.
* Check that all required fields are filled (medication rows need at minimum the medication selected).
**I can't find my order set when ordering.**
* Make sure the order set is in the **Active** tab, not **Archived**.
* Try searching by name — the order set must match the site you are currently logged into.
* Check your **Favorites** filter. If you are only viewing favorites, non-favorited sets won't appear.
**The order set didn't pre-fill my expected values.**
* Edit the order set (**Preferences → Order Sets →** pencil icon) and verify the default values are set correctly.
* Remember that only fields you explicitly set in the template will auto-fill. Optional fields left blank remain blank.
## Quick reference
| **Action** | **Where** |
| :----------------------------------------------- | :--------------------------------------------------- |
| **Create / edit / archive / restore order sets** | **Preferences → Order Sets** |
| **Apply an order set to a patient** | **Visit Note → Orders section → Add Order Set** |
| **Mark or unmark a favorite** | **Edit an order set → toggle "Mark as my favorite"** |
| **Duplicate an order set** | **Order Sets list → copy icon on the row** |
**Need help?** Contact your site administrator or the Athelas support team for assistance with order set configuration.
### FAQ
No. Order sets are site-specific — they exist only for your current clinic site and are shared among all providers at that site.
Yes. You can mix medications, labs, imaging, DME, and referrals in a single order set. When applied, every order populates at once and each routes to the correct system when signed.
No. Adjustments you make when applying an order set only affect that patient's orders. To change the defaults for future use, edit the order set from **Preferences → Order Sets**.
No. Favorites are per provider. Marking a set as a favorite only affects your own view when ordering.
Archived order sets are hidden from search and the ordering popover, so they can't be used for ordering. You can restore them from the **Archived** tab at any time.
# Orders
Source: https://docs.athelas.com/air_provider/fill_a_chart_note/orders
You can use Air to create and track different types of clinical orders from a global practice view or for a single patient.
## What you can order
Orders in Air include:
* **Outbound Referrals**
* **Imaging**
* **Labs**
* **DME**
* **Custom Orders**
Order types share common fields such as **Patient**, **Provider**, and **Diagnosis Codes**, and each type can include additional type-specific fields.
## Access the Orders page
### Global view: EHR -> Orders
Use this view when you want to manage orders across all patients at your practice.
Arcade demo: Open and navigate Orders from the global EHR view.
### Patient-specific view: Patient Profile -> Orders
Use this view when you are working within a single patient chart and want to create or review that patient's orders.
Arcade demo: Access Orders from a patient's profile.
## Create a new order
After opening **Orders** from either entry point:
1. Click **Create Order**.
2. Select the **Order Type** you need.
3. Fill in shared fields such as **Patient**, **Provider**, and **Diagnosis Codes**.
4. Complete any type-specific fields required for that order.
5. Review details and submit.
**Note:** Field requirements can vary by order type, so review the full form before submitting.
### FAQ
Use **EHR -> Orders** when you need a practice-wide queue across patients. Use **Patient Profile -> Orders** when you are actively working on one patient and want to stay in that chart context.
Not exactly. All order types share core fields such as **Patient**, **Provider**, and **Diagnosis Codes**, but each type can include additional fields based on the workflow.
Yes. You can create orders from both the global Orders view and the patient-specific Orders view.
# Other Sections within the Chart Note
Source: https://docs.athelas.com/air_provider/fill_a_chart_note/other_sec_chart_note
In addition to the Plan of Care, Chart Notes include pre-built sections for Measurements, Goals, Treatments, and Visits.
### Measurements
More details: [**Measurements**](/air_provider/fill_a_chart_note/measurements)
**Measurements** provide a standardized, organized, and efficient way to capture clinical data across patient chart notes. Measurements from the initial evaluation will carry forward automatically for future follow-ups.
**Note:** **Please select the correct measurement groups before starting the AI Scribe Recording.** AI Scribe can fill measurement values on your behalf, but it cannot add entirely new measurement groups to the chart note.
**You can filter and search measurements by:**
* Name (e.g., *Hip Flexion*)
* Category (e.g., ROM, Strength, Inspection)
* Body Part (e.g., Knee, Ankle, Shoulder)
* Custom or default Group (e.g., *Knee ROM*)
Measurements can be **standard** (pre-defined and consistent across all sites) or **custom** (site-created to capture additional or specialized data)
**To add new measurements:** Open the **Measurements** section in the Chart Note → Click **Manage** → Select the desired measurements and click **Save**.
**To delete a measurement:** Go to Manage and remove the measurement from the right panel on **Selected Measurements.**
Measurements are divided into industry-standard types (Observation, Inspection, etc.) and groups.
Simply check the boxes for your selected measurements, and click Save to add them to your note.
You can also:
* View a patient’s **History of Measurements**.
* Pull data from the **previous Chart Note** if it exists.
✨ **Smart Tip**: You can add your own customized [Measurements and Groups in Preferences](/air_admin/manage_your_practice/chart_note_templates#create-custom-preferences)
### **Goals**
Goals help providers track patient progress over time. In the Chart Note, the Goals section appears within the **Plan** section of SOAP (Subjective, Objective, Assessment, Plan). Goals from the initial evaluation will carry forward automatically for future follow-ups.
Each goal includes:
* **Title** – name of the goal.
* **Description** – details of the goal.
* **Initial Value (optional)** – patient’s starting state.
* **Current State (optional)** – updates on progress.
* **Progress Slider** – visually tracks completion as a percentage.
* **Goal Tracker** – shows progress over time.
**Adding Goals**
* In an Initial Evaluation note, the Goals section will auto-populate from the AI Scribe. Additionally, you can add a new goal manually.
* Click **New Goal** to add one.
* If goals already exist, click **New Goal** again (top-right) to add more.
* You can use text snippets (type "/" to add common goals you have set for your practice).
**Removing Goals**
* Hover over a goal card.
* Click the **Delete (trash bin) icon** on the right.
* Confirm the deletion when prompted.
### **Treatments**
The **Treatments** section allows providers to select treatments tied to corresponding CPT codes.
To add a new treatment:
* Click on Add Treatment on the top right of the section
* Select the Treatment from the drop down search box
* Select the Diagnosis Codes (options available will be based on the ICD-10 codes entered in the Diagnosis section above Treatments)
* Optional: Add in minutes, units, notes, justification
**Important:** You must first enter the ICD-10 codes in the *Diagnosis* section of the chart note. They will then become available in the *Treatments* section, where you can map each CPT code to the relevant ICD-10 codes.
Note on calculating units and time:
* **Auto-calculate:** The system automatically calculates treatment time and units.
* **Manual entry:** Turn off auto-calculation toggles if you want to manually enter total time or units.
✨ **Smart Tip**: You can configure your own [Treatment information in Preferences](/air_admin/manage_your_practice/chart_note_templates#create-custom-preferences).
### **Visits**
Within the Chart Note, you can track prior authorizations and annual visit limits. These are also visible under patient appointment details. The system will automatically alert providers when authorized or annual visits are running low or nearing expiration.
Learn more about visit alerts [here](/air_front_desk/take_in_a_patient/prep_appt#track-visit-alerts).
### Add sections to your Chart Note
To add a new section to a Chart Note:
* Open **Preferences** in the left navigation tab **→ Appointment Types** and create or edit an appointment type
* Click **+ Add Section**.
* Select your section from the dropdown menu.
You can add flowsheets, measurements and multiple other such custom sections.
**Note:** Adding a **Flowsheet** section will remove the **Treatments** section.
## Carry Forward Logic in Air
In Air, content from your last note is automatically brought into your current one.
**How this works:**
1. When a patient is **checked-in** the system automatically \*\*creates the note \*\*for the visit.
2. Upon note creation, information from the patients previous appointment is Carried Forward into the note giving you a head start on documentation and a summary of want happened last visit.
By default, only Objective, Assessment, and Plan sections Carry Forward to Daily Notes. You can choose to include the Subjective section as well in Carry Forward. Talk with your Athelas admin about setting this up.
**Initial Evaluatation → Daily Note**
* Template sections from the Initial Evaluation that also exist in the Daily Note are carried forward (respecting OAP vs SOAP Carry Forward Configuration)
**Daily Note -> Daily Note**
* All template sections from the Daily Note are carried forward
**Daily Note -> Progress Note**
* All template sections from the Initial Evaluation are carried forward
#### **Carry Forward only applies to appointments in the same case.**
# PDMP
Source: https://docs.athelas.com/air_provider/fill_a_chart_note/pdmp
Review controlled-substance history and complete PDMP checks while prescribing medications in Air.
The **Prescription Drug Monitoring Program (PDMP)** is integrated directly into Athelas and connected to your state's prescription monitoring registry via **Bamboo Health**. When prescribing a controlled substance, providers are prompted to review the patient's controlled substance history, view risk scores, and confirm before finalizing the prescription — all from within the medications workflow, without logging in to a separate state registry portal.
**Key benefits:**
* No need to log in to a separate state registry portal
* Controlled substance history pulled automatically for the patient
* Risk scoring (including Morphine Milligram Equivalent thresholds) surfaced inline
* ID verification through ID.me built into the flow
## Step 1: Navigate to the patient's Medications tab
From the Athelas EHR, open the patient record and click the **Medications** tab. You'll see a list of all previously prescribed medications, including their status (for example, *Discontinued*).
## Step 2: Create a new medication order
Click **Create New** to open the medication creation dialog. From there you can:
1. **Associate the order with an appointment** — the system defaults to the most recent appointment.
2. **Select the preferred pharmacy** — defaults to the patient's preferred pharmacy on file.
3. **Choose the medication** — select from the dropdown. For PDMP validation, select a **controlled substance** (for example, hydrocodone).
4. **Set the prescription details** — duration, quantity, and refills.
The system flags medications classified as controlled substances and requires PDMP review before you can proceed.
PDMP information is available while you create or edit a medication order, so you can review it before the final order review. If you access PDMP from the standalone order review workflow, the report opens in a new browser tab.
## Step 3: Proceed to review
After filling out the medication details, click **Proceed to Review**. The **Review Medication** panel opens, showing the patient's identifying information (name, MRN, DOB, address), associated appointment details, pharmacy information, the prescribing practitioner and DEA number, and the prescription details (drug name, sig, date, duration).
While the panel loads, you'll see a **Checking PDMP requirements…** indicator. Once PDMP requirements are checked, the **PDMP Review Required** section appears.
## Step 4: Review the controlled substance history
Click **View Full Report** in the **PDMP Review Required** section.
This opens the **Controlled Substance History (24 months)** report from Bamboo Health, which shows:
* The patient record (linked to the state PMP registry)
* Any **patient match warnings** (for example, if the report shows the closest but not an exact match)
* **Clinical Risk Indicators**, including:
* Morphine Milligram Equivalent (MME) threshold alerts
* Unintentional overdose risk score model
* Key contributing factors (for example, MOUD use, high-risk dispensations)
* Narcotics score, stimulants score, and depressants score
The report is intended to aid clinical decision-making, not replace it. It does not implicate patients; it provides supplemental information.
## Step 5: Validate and confirm the PDMP review
After reviewing the report, return to the **Review Medication** panel. You'll see:
* A **Reviewed** checkmark confirming the PDMP history was reviewed
* A **Skip PDMP Reviewed** option (if it's clinically necessary to skip)
* **State validation fields** — confirm the states queried and the patient information sent
Once reviewed and confirmed, the system proceeds to ID verification.
## Step 6: ID verification via ID.me
The final step before prescribing the controlled substance is identity verification through **ID.me**. This confirms the provider's identity and authorization to prescribe. After ID.me verification, you're cleared to **finalize and send** the controlled substance prescription.
You can skip the PDMP review for any reason if it's clinically necessary by clicking **Skip PDMP Reviewed**.
## Quick reference
| Step | Action | Location |
| ---- | --------------------------- | ------------------------------------ |
| 1 | Open patient record | EHR → Patients |
| 2 | Go to Medications tab | Patient record → Medications |
| 3 | Create New medication | Medications → Create New |
| 4 | Select controlled substance | Create Medication dialog |
| 5 | Proceed to Review | Medication form → Proceed to Review |
| 6 | View PDMP report | Review Medication → View Full Report |
| 7 | Confirm review | Review panel → Reviewed ✓ |
| 8 | Complete ID.me verification | Review panel → Verify with ID.me |
| 9 | Finalize prescription | Review panel → Send |
### FAQ
PDMP (Prescription Drug Monitoring Program) is a state-level electronic database that tracks controlled substance prescriptions. Athelas integrates with your state registry via Bamboo Health so you can access this data without leaving the EHR.
PDMP review is required by default when prescribing a controlled substance. However, you can skip it if it's clinically necessary by clicking **Skip PDMP Reviewed** in the Review Medication panel.
The Morphine Milligram Equivalent (MME) is a standardized measure of opioid dosage. The PDMP report flags patients who are at or above 120 active cumulative MME per day as a clinical risk indicator.
This score model is pulled from the Bamboo Health report and shows contributing factors such as history of MOUD use, number of high-risk dispensations, gender, age, and the number of pharmacies where narcotics were filled. It's supplemental and does not replace clinical judgment.
ID.me is an identity verification step that confirms the prescribing provider's identity before a controlled substance prescription is finalized. This adds an extra layer of security and compliance to the prescribing workflow.
# Prescriber Agents
Source: https://docs.athelas.com/air_provider/fill_a_chart_note/prescriber_agents
**Providers can designate staff members as prescriber agents, granting them the ability to:**
* Draft prescriptions (for controlled medications)
* Prescribe medications (for non-controlled medications)
Providers can assign prescriber agents by facility and set permissions for whether they can only create draft prescriptions or also prescribe medications.
### Pre-requisite for Provider to Nominate an Agent
**Note:** A pre-requisite to be able to assign a Prescriber Agent is:
* Provider should be assigned to the relevant facilities they want to prescribe for (update within **Preferences Tab > Provider Section > Edit Provider Details**)
* Provider should be nominated to prescribe for the relevant facilities they want to prescribe for (update within **Preferences Tab > Medications Section > Nominate Provider**)
### Add Prescriber Agents to a Provider
* Go to the **Preferences Tab > Medications > Prescriber Agents**
* Click **+Add Prescriber Agent**.
* You will see yourself listed as the provider by default. This cannot be changed, since prescriber agents must be set up by the provider or admin.
* Select one or more agents, then add the facilities where you want them to create draft medications.
* **Can prescribe** → allows the prescriber agent to prescribe **uncontrolled substances** directly. If **Can prescribe** is checked, the agent can still create drafts, but will also have the option to prescribe.
* Click **Submit** when done. This creates the prescriber agent for the selected site and facilities.
### Prescribe Medications as a Prescriber Agent
* Go to the **Patient's Profile > Medications** tab.
* Click **Create Medication Order**.
* When selecting an appointment, the prescriber agent will only see appointments for facilities where they are authorized as a prescriber agent.
* On the medication form, the prescriber agent can choose:
* **Prescribe as agent**
* **Save draft** (required if they are ineligible to prescribe for that facility or if the medication is controlled).
* Medications saved as drafts will appear with a **Draft** status.
* Once submitted:
* Draft medications will appear in the **Medications table**.
* A confirmation toast will display details of the medications created.
* A **task is automatically created for the provider**, who must review and sign off on the medications.
**Note:** Prescriber agents can edit draft medications, but they **cannot prescribe** medications once saved as a draft.
### Review Prescriptions by Prescriber Agents
### Key Points to Remember
* **MAs or Providers can also be assigned as prescriber agents for other providers.** For example, a midlevel can be a prescriber agent for another provider and will be drafting/prescribing under their name.
* **Any prescriber agent has the ability to directly prescribe non-controlled medications** on behalf of another provider. This can be disabled in **Preferences > Medications > Prescriber Agents** to only allow drafting.
* **A prescriber agent can only draft (cannot prescribe) controlled medications** on behalf of another provider. The provider will have to verify with ID.me and approve the medication order.
* **Controlled medications will only appear for providers who are permitted to prescribe them.**
### FAQ
No. Prescriber agents can only **draft** controlled medications on behalf of a provider. The provider must verify their identity via **ID.me** and approve the order before it is sent.
Navigate to **Preferences > Medications > Prescriber Agents** and uncheck the **Can prescribe** option for that agent. This limits them to creating drafts only.
Yes. MAs and providers (including midlevels) can be assigned as prescriber agents for other providers. Drafts and prescriptions will appear under the supervising provider's name.
The draft appears in the **Medications** table with a **Draft** status, and a task is automatically created and assigned to the supervising provider to review and sign off.
# Progress Note Automatic Conversion
Source: https://docs.athelas.com/air_provider/fill_a_chart_note/progress_note_automatic_conversion
This guide is for **providers** and **front desk staff**. It explains how progress note (PN) alerts and automatic conversion work, what you'll see in the product, and what to do when you see it.
## What is progress note alerting and auto-conversion?
Progress notes (PNs) are required at certain clinical and regulatory intervals during a patient's course of care. Missing them can affect reimbursement, compliance, and patient management.
The goal is simple: **you should never be surprised that a progress note is due.** The system surfaces alerts before scheduling, during scheduling, and before documentation — and automatically converts qualifying appointments to a progress note type — without creating noise.
## When is a progress note required?
Progress note rules are configured per insurance type (Medicare, Medicaid, Commercial, Workers' Comp, Auto, and others) by your Athelas administrator, based on your preferences and state requirements. The system evaluates these rules automatically for every patient appointment. There are three core triggers.
### Medicare regulatory cadence (default rule)
A progress note is required at whichever comes first:
* A configurable number of **visits** (for example, 10) since the last evaluative note (initial evaluation, re-evaluation, or progress note)
* A configurable number of **calendar days** (for example, 30) since the last evaluative note
Medicare outpatient therapy regulations require a progress report at least every 10 treatment days or 30 calendar days to demonstrate patient progress, continued medical necessity, and justification for ongoing therapy.
Example alert timing — visit 10 or day 30 — is illustrative. Actual thresholds are set by your site's configuration.
### Plan of care (POC) expired
A progress note is required when:
* The POC end date is before the appointment date, **or**
* The POC visit count is exhausted
A progress note updates goal status, reassesses functional progress, and supports POC recertification by the physician/NPP.
### Prior authorization nearing expiration
A progress note is prompted when a configurable number of visits remain on the authorization. Payers frequently require updated functional measures, goal progress, and medical-necessity documentation before approving additional visits.
## What you'll see and when
### For front desk staff
**While scheduling an appointment**
If a patient is approaching or at a progress note threshold, an alert appears during scheduling, with a suggested appointment type. This helps ensure the correct appointment type is booked before the visit.
**On the calendar**
Two visually distinct icons tell you the difference between "a PN is coming" and "this appointment is already a PN":
* 🔔 **PN Required** — appears on appointments where a progress note will be due at that visit.
* ✅ **Auto-converted to a PN** — appears on appointments that have already been auto-converted to a progress note type.
**At check-in (after auto-conversion)**
If an appointment was auto-converted to a progress note, a prompt appears at check-in asking you to confirm or select the correct PN appointment type for the site. Your selection is saved to the appointment record and the calendar.
### For providers
**On the calendar (before the visit)**
A badge appears on your calendar appointment when a progress note is required for that visit, based on the alert timing configured for your site. This solves the most common frustration: being surprised mid-documentation that a progress note was due.
**Inside the note (during documentation)**
An alert appears when you open documentation if a progress note is due and the visit is not already a progress note — for example, the patient's 10th treatment day, or 30+ days since the last progress note. You'll be prompted to complete a progress note before continuing with routine documentation.
**Air Scribe app**
You can view auto-converted progress notes in the Air Scribe mobile app. If the front office hasn't checked the patient in — for any reason — you can check the patient in directly from Air Scribe and start scribing.
The Air Scribe app does not support selecting or changing the appointment type. If you check a patient in from the app, the appointment keeps its originally scheduled type.
## How auto-conversion works
Auto-conversion is a background process that automatically changes a qualifying appointment to a progress note type — so the right visit type is already in the system before the patient arrives.
### Conversion timeline
1. **48 hours before the appointment** — the system checks whether the appointment meets PN criteria. If it does, the appointment is auto-converted to a progress note type.
2. **24 hours before the appointment** — if it wasn't converted at the 48-hour check, the system runs a second check and converts it if the criteria are now met.
### What gets converted
Only appointments that match the PN rules configured for the patient's insurance type are converted. The following are **never** auto-converted:
* Appointments already scheduled as a progress note type
* Canceled or no-show appointments
### What stays the same after conversion
All original scheduling details are preserved — date, time, provider, patient, and location. Only the clinical note type changes.
## Quick reference: alert summary
| **Trigger** | **Type** | **Who sees it** | **When** |
| :------------------------------------------------------ | :--------------------------------- | :-------------------- | :--------------------------- |
| PN due (e.g., visit 10 or day 30, per your config) | Alert (action required) | Provider | Calendar badge + inside note |
| POC expiring before the appointment date | Alert | Front desk + provider | Calendar |
| Prior auth nearing limit (e.g., auth expires in 7 days) | Alert | Front desk + provider | Scheduling + calendar |
| 48h / 24h before a qualifying appointment | Auto-conversion (no action needed) | Background job | Background job |
### FAQ
Nothing changes. Auto-conversion only applies to appointments that aren't already set as a progress note type.
Yes. Progress note alert rules are configurable by insurance type and are managed by your Athelas administrator. The 24-hour and 48-hour auto-conversion checks, however, are **not** configurable per site.
Alerts are driven by the configured rules — if the rule criteria are met, the alert fires. If the rules look incorrect for your site, review the progress note rule configuration with your administrator so they can be updated.
# AI Scribe FAQs
Source: https://docs.athelas.com/air_provider/fill_a_chart_note/scribe_faq
Answers to common questions on setting up, recording, and managing AI Scribe in Chart Notes.
If the “wave” is not moving when recording a session, something might not be working with the audio. Before using Scribe to capture and document patient encounters, please ensure the following steps are completed:
* **Check your internet connection**\
Make sure you are connected to a stable, active internet connection for uninterrupted recording and upload.
* **Enable microphone permissions in your browser**
* Go to your browser settings (e.g., Chrome, Safari).
* Allow microphone access for the Air/Athelas EHR website.
* Refresh the page after updating settings.
* **Enable microphone permissions on your device**
* On Mac: Go to **System Settings → Privacy & Security → Microphone** and allow browser access.
* On Windows: Go to **Settings → Privacy → Microphone** and ensure permissions are turned on for your browser.
* **Confirm your mcirophone is turned on and not muted before you start recording**
You can control which sections of a Chart Note Scribe will write to by using the **Lock for Scribe** option on the right-hand side of any section.
* Locked sections will not be overwritten by Scribe.
* This feature is not available for **custom templates**.
**Note:** By default, **Initial Evaluations** allow Scribe to write into sections. For all other note types (Daily, Progress, etc.), sections are **locked by default**.
* Do not log out of your account on the device that has the pending upload, they will not save
* Connect to a strong Wifi
* Select “Retry” to retry the upload
**Note**: If scribes are huge MB files, they will struggle to upload on a mobile device
If you would like to record a new conversation for an appointment that already has a scribe:
1. Open the Athelas AI **Scribe widget**.
2. Review the existing scribe outputs.
3. At the bottom, click **More Actions → Record Again**.
4. Start your new recording.
If you add new sections to the patient’s Chart Note **after** the recording has been uploaded, those sections will not be included in the original scribe.
To capture them, you must manually regenerate the scribe with the updated sections.
During an appointment, if you need to add sections to a Chart Note or change the Appointment Type **after** a recording has been uploaded, you will need to regenerate the scribe to capture those new sections.
* Regeneration is only available once the initial scribe has been generated.
* To regenerate:
1. Open the Athelas AI **Scribe widget**.
2. At the bottom, click **More Actions → Regenerate**.
3. Wait for regeneration to finish, then review and apply the updated outputs.
* Click **Pause Recording**.
* Click **Cancel Recording**.
* Confirm cancellation when prompted.
There are a few reasons why EHR Scribe may not generate outputs for certain sections:
* **Locked sections cannot be applied** - If a section is locked, unlock the section first, then check the box next to it to include it for application.
* **Insufficient information in the audio** – If the recording doesn’t provide enough detail, Scribe will leave the section blank.
* **Unrecognized template** – If the template cannot be interpreted by Scribe, the section will remain blank.
The Visits tab only shows appointments for **your provider**, not the entire site. If you log in as a different user, you will see that provider’s appointments. Also ensure that the appointment’s **rendering provider** is set correctly.
If a user loses their internet connection before the Scribe successfully completes or uploads, Scribe will be locally saved to their computer in order to be able to retry upload when the connection is regained.
# Scribe Text Snippets & Macros
Source: https://docs.athelas.com/air_provider/fill_a_chart_note/scribe_text_snippets
**Text Snippets & Macros for EHR Scribe** let you create reusable phrases (dot phrases) that shape how **AI Scribe** writes your Chart Notes. Instead of editing the same wording after every visit, you define a snippet once and Scribe applies it automatically while generating the note.
## Why enable Text Snippets for Scribe
When a snippet is enabled for Scribe, the AI uses it as it turns your transcription into a finished note. This helps you:
* **Standardize documentation** so common phrases and clinical patterns read the same way every time.
* **Improve consistency** across providers and appointment types.
* **Save time** by removing repetitive edits and re-typing.
You control how each snippet behaves through its **macro type**:
| **Macro type** | **What it does** | **Affects transcription?** |
| :-------------- | :----------------------------------------------------------------------------- | :---------------------------- |
| **Replacement** | Replaces a trigger phrase with exact expanded text in the transcription. | Yes — before note generation. |
| **Context** | Gives the AI extra clinical context to guide how the note is written. | No — guidance only. |
| **Format** | Controls output structure and conciseness (e.g., bullets, brief vs. detailed). | No — formatting only. |
If you don't enable a snippet for Scribe, it will not affect AI note generation — even if it exists in your Text Snippets list.
## Accessing the feature
Text Snippets live in your EHR **Preferences**.
1. Open **Preferences** within the EHR.
2. Click the **Text Snippets** section. The **Text Snippets Settings** page lists all existing snippets.
3. Click **Add Text Snippet** to create a new one.
## Understanding macro types
Choose a macro type based on what you want the snippet to do. You set this in the **Macro Type for Scribe** field when creating or editing a snippet.
### Replacement macros
**Use when** you want to replace a trigger phrase with exact expanded text and standardize common phrasing.
* The AI finds matching phrases in the transcription (exact or semantic matches).
* The trigger phrase is replaced with the exact snippet value, **before** note generation.
**Example**
* **Trigger:** "no chest pain"
* **Value:** "Patient denies chest pain, shortness of breath, or palpitations"
* **Result:** Whenever "no chest pain" appears in the transcription, it's replaced with the full expanded phrase.
### Context macros
**Use when** you want to give the AI additional clinical context or guide its reasoning without directly changing the transcription.
* Context snippets are passed to the AI during note generation.
* They influence how the AI paraphrases and structures the note.
* They do **not** replace text in the transcription.
**Example**
* **Trigger:** "diabetes protocol"
* **Value:** "Follow standard diabetes management protocol: check A1C every 3 months, monitor for complications, emphasize diet and exercise"
* **Result:** The AI uses this context when generating notes for diabetic patients, ensuring more comprehensive documentation.
### Format macros
**Use when** you want to control formatting or conciseness in the final note.
* Format snippets guide the AI's output structure.
* They influence how information is presented.
* They do **not** modify the transcription content.
**Example**
* **Trigger:** "brief format"
* **Value:** "Use concise bullet points. Limit each section to 2-3 key points. Avoid lengthy descriptions."
* **Result:** The AI generates more concise, bulleted documentation when this format is applied.
## Creating a macro for Scribe
**To create a snippet:**
1. Click **Add Text Snippet** in the **Text Snippets Settings** page.
2. Fill in the required fields: **Title** (trigger phrase) and **Text Snippet** (expanded phrase).
3. Set the optional fields as needed (see the table below), including **Macro Type for Scribe** and the **Use for EHR Scribe** toggle.
4. Click **Save**.
| **Field** | **Required?** | **Description** |
| :--------------------------------- | :------------ | :-------------------------------------------------------------------------------------------------------------------------------- |
| **Title (Trigger Phrase)** | Required | The phrase matched in the transcription (exact or semantic). No consecutive spaces or colons (`:`); at least 1 character. |
| **Text Snippet (Expanded Phrase)** | Required | The text that's used — replaces the trigger (Replacement), provides context (Context), or specifies formatting (Format). |
| **Group Name** | Optional | Organizes snippets into groups (e.g., Objective, Subjective). Type a new name to create a group. No consecutive spaces or colons. |
| **Appointment Types for Scribe** | Optional | Restricts the snippet to specific appointment types. If none are selected, it applies to all appointment types. |
| **Macro Type for Scribe** | Optional | Choose **Replacement**, **Context**, or **Format**. |
| **Use for EHR Scribe** | Optional | Toggle that makes the snippet available during Scribe processing. |
If no macro type is selected, the snippet **defaults to Replacement** during processing.
**Use for EHR Scribe** must be enabled for a snippet to be used by Scribe. If it's off, the snippet won't affect AI note generation.
## Managing snippets
**To edit a snippet:**
1. Go to **Text Snippets Settings**.
2. Find the snippet in the table and click the **Edit** icon (pencil) in the Actions column.
3. Modify any fields in the drawer and click **Save**.
**Quick edits** can be made directly in the table — these save automatically:
* **Macro Type** — use the dropdown in the **Macro Type (Scribe)** column.
* **Use for EHR Scribe** — toggle the switch in the **Enabled for Scribe** column.
**To delete a snippet,** click the **Delete** icon (trash) in the Actions column and confirm. Deletion is permanent.
✨**Smart Tip:** If you only want to stop using a snippet in Scribe temporarily, turn off the **Use for EHR Scribe** toggle instead of deleting it.
**How Scribe selects snippets:** when a Scribe note is processed, snippets are automatically applied based on:
1. **Enabled for Scribe** — only snippets with **Use for EHR Scribe** turned on.
2. **Appointment type matching** — snippets tied to the appointment type, plus global snippets (no appointment types selected).
## Best practices
✨**Smart Tip:** Be specific with trigger phrases — ideally include a punctuation cue like `/`, `.`, or `-` — and avoid generic triggers that might match unintended text.
* **Replacement:** use exact clinical terminology and test semantic matching to confirm correct replacements.
* **Context:** provide clear, actionable guidance and update it as protocols change.
* **Format:** be explicit about structure and conciseness; consider creating multiple options (brief, detailed).
* **Organize with groups** and use **appointment types** to keep snippets relevant.
* **Start small,** then expand as you confirm snippets behave as expected.
## Troubleshooting
| **Symptom** | **Likely cause** | **Fix** |
| :----------------------------------- | :--------------------------------------------------------------- | :------------------------------------------------------------------------------------ |
| Snippet not used during Scribe | **Use for EHR Scribe** is off, or appointment type doesn't match | Enable the toggle; confirm the appointment type (or leave it global). |
| Snippet not used during Scribe | No macro type set, or wrong site | Set a macro type; confirm you're on the correct site (snippets are site-specific). |
| Replacement not replacing the phrase | Trigger doesn't match the transcription closely enough | Adjust the trigger to match what's said; review the transcription and semantic match. |
| Context / Format has no effect | Macro type is set to Replacement, or guidance is vague | Set the type to **Context** or **Format**; make the value clear and actionable. |
# Services
Source: https://docs.athelas.com/air_provider/fill_a_chart_note/services
Capture billable services on a visit note with CPT codes, diagnoses, units, and modifiers.
The **Services** section of a visit note captures the billable work you performed. It is built around the four things a payer actually requires — so there are fewer fields to fill in and fewer ways for a claim to come back.
* **CPT / HCPCS code** — the specific service you performed.
* **ICD-10 diagnosis** — the medical necessity behind it.
* **Units** — how much of the service was delivered.
* **Modifiers** — optional context for special billing circumstances, like laterality.
Services also works with the **Air Scribe**, which can populate the section straight from your visit conversation instead of you typing it in.
**Services** replaces the older **Treatments** section of the visit note at enabled sites.
## What counts as a service
Think of a service as a single billing line item. Every service you add is the same simple building block:
**A service = CPT code + modifiers + ICD-10 code(s) + units**
| **Field** | **Required?** | **What it captures** |
| :------------------- | :---------------------- | :------------------------------------------------------------------ |
| **CPT / HCPCS code** | Required | The service you performed. |
| **ICD-10 diagnosis** | Required — at least one | The medical necessity for that service. |
| **Units** | Required | How much of the service was delivered. |
| **Modifiers** | Optional | Special billing circumstances (laterality, distinct service, etc.). |
| **Comments** | Optional | Free-text context, tucked into a flyout on each service. |
Everything else is optional context.
## Adding a service
Open a visit note and scroll to the **Services** section. Before you add anything, the section reads **No Services**. Three controls sit in the section header: **Clear All**, **Apply All ICD To All Services**, and **+ Add Services**.
**To add a service:**
1. **Click** **+ Add Services** to open the service picker.
2. **Search for what you did.** Type the **CPT code** directly (e.g., `73560`), or free-text the **name** from your site's list (e.g., "X-ray exam of knee") — the name resolves to the right CPT code for you.
3. **Check every service** you want to add. The picker is multi-select, and the confirm button counts your selection — **Add 2 Services**, for example. **Click** it to add them all at once.
4. **Review the details.** Diagnosis codes are auto-applied from the **Diagnosis Codes** section above, and units default to `1`. Adjust the **Mod**, **ICD-10**, and **Units** fields on any row as needed.
✨**Smart Tip:** Enter your diagnosis codes in the **Diagnosis Codes** section *before* you add services. Every service you add then arrives with the right ICD-10 codes already attached, and you rarely have to touch the ICD-10 column at all.
**Services auto-saves.** Refresh the page or come back later and your services, units, modifiers, ICD-10 links, and category grouping all reload exactly as you left them.
### Editing and removing services
* **Edit any service inline** — change the units, swap the CPT code, or adjust the linked diagnoses directly on the row.
* **Add a comment** with the comment icon at the end of a row to open the optional Comments flyout.
* **Delete a single service** with the trash icon at the end of its row.
* **Clear All** removes every service at once when you want to start fresh.
You cannot add the same CPT code twice unless the second instance carries a different modifier. This is deliberate — it prevents accidental double-billing.
## Automatic categories
You never have to categorize a service manually. Services reads the CPT code and files it under the right billing section for you, so your entries organize themselves into labeled groups as you add them.
| **Category** | **Code range** | **What lands here** |
| :-------------------------- | :------------- | :---------------------------------------------------------- |
| **Evaluation & Management** | 99202–99499 | Office visits and E\&M codes. |
| **Procedures** | 10004–69990 | Surgery and procedure codes. |
| **Radiology** | 70010–79999 | Imaging and radiology. |
| **Pathology & Lab** | 80047–89398 | Lab work and diagnostics. |
| **Medicine** | 90281–99607 | Medicine services, injections, and infusions. |
| **Anesthesia** | 00100–01999 | Anesthesia codes. |
| **Other** | — | HCPCS Level II codes and anything outside the ranges above. |
Because codes are mapped by range, new CPT codes released each year automatically slot into the correct group.
## Linking diagnoses (ICD-10)
Every service needs at least one diagnosis to justify it. Services pulls from the diagnoses already on your chart note, so you can attach them quickly.
### Apply All ICD To All Services
This is the headline shortcut. One click links **every diagnosis on the note to every service**, in chart-note order — instead of linking the same codes over and over, line by line.
### Per-service control
* **Fine-tune diagnoses on any individual service** using the **ICD-10** dropdowns on its row. Use the `–` control to remove a diagnosis from that service.
* **You can only attach ICD-10 codes that are already on the chart note.** Codes that aren't on the note are rejected, which keeps claims clean.
* **Most specialties link two to three diagnoses per service.** The system supports more when you need them.
The CMS claim form allows up to **12 diagnoses per appointment** and **4 diagnosis pointers per service line**. Staying inside those limits ensures nothing gets dropped downstream.
## Modifiers
Modifiers tell the payer about special circumstances — which side of the body, whether a service was distinct, whether an E\&M was separately identifiable. They are optional, and the **Mod** dropdown on each service row is where you set them.
| **Modifier** | **When to use it** |
| :------------------------- | :---------------------------------------------------------------------------------------------------------- |
| **LT / RT** | Left or right side. Critical for paired structures — a missing laterality modifier is a top denial cause. |
| **50** | A bilateral procedure. |
| **25** | A separately identifiable E\&M on the same day as a procedure (e.g., an evaluation plus a joint injection). |
| **59 / XS / XE / XP / XU** | A distinct procedural service. |
**Note:** A CPT code can appear more than once on the same note as long as each instance carries a different modifier.
## Air Scribe auto-fill
Services was built to work hand-in-hand with the **Air Scribe**. Instead of typing services in yourself, the scribe can populate them from your visit conversation.
**How it works:**
* The scribe listens to the encounter and infers the likely **CPT code, ICD-10 code(s), units, and modifiers**.
* Open the **Scribe** panel and choose **Apply** to accept everything, or apply individual services and ICD-10 codes one at a time.
* **Already-added services are de-duplicated automatically** — matched on CPT plus modifier — so applying the scribe won't create doubles.
* The scribe shows a short **justification** for why a code was or wasn't suggested, which makes for a quick sanity check.
✨**Smart Tip:** Say the service or CPT code out loud during the visit. Spoken services are captured far more accurately, and modifiers in particular perform best when you state them explicitly.
**You are always the final reviewer.** Scribe-suggested services are a starting point, not the last word. Review them, tweak diagnoses, adjust units, and confirm what belongs on the claim — the provider remains responsible for the signed note.
### FAQ
No. The billing pipeline downstream is unchanged — Services feeds it through the same path. You are simply entering the data through a cleaner front door.
They were removed, because none of them are required for billing.
* **Medical necessity** is established by the visit note itself and the ICD-10 link.
* **The rendering provider** comes from the encounter.
If you need to add context to a specific service, use the optional **Comments** flyout on that row.
Yes. A **Comments** flyout is available on every service row. It's optional and tucked away so it doesn't clutter the section.
It lands under **Other**. Genuine billing codes are mapped by code range, so anything outside the standard ranges — including HCPCS Level II codes — is grouped there rather than being left uncategorized.
Yes. Orders configured with a CPT code, and orders configured in Smart Charge Capture, flow into the **Services** section automatically — so there's no duplicate entry.
# Faxing
Source: https://docs.athelas.com/air_provider/review_patient_details/faxing
Air's faxing module gives your front desk a single place to receive, process, send, and track every fax — no external fax portal needed. This guide covers everything from managing your inbound queue to sending documents straight from a patient's chart.
## Navigating to faxes
There are two ways to open the Faxing page:
* Click **Utilities → Faxing** in the left sidebar.
* Press **⌘K** (Mac) or **Ctrl+K** (Windows), type *Faxes*, and press **Enter**.
The Faxing page has three main sections:
* **Outbound** – view and manage faxes you’ve sent.
* **Inbound** – view received faxes (with filters for **All**, **Unprocessed**, and **Processed**).
* **Tasks** – attach follow-ups and track progress directly from any fax.
## Outbound faxes
The **Outbound** tab shows every fax your organization has sent, along with its current delivery status. Faxes sent from chart notes and from the Attachments tab both appear here, correctly attributed to the sending facility and provider.
| **Status** | **What it means** |
| :-------------- | :--------------------------------- |
| ✅ **Delivered** | Fax was received successfully. |
| ⏳ **Pending** | Fax is in transit. |
| ❌ **Failed** | Delivery failed — action required. |
### Sending an Outbound Fax
* Click **Send Document** in the top-right corner.
* Fill out the **Send Fax** side panel:
* **Recipient Fax Number** – enter the number you’re faxing to.
* **Subject** – title of the fax.
* **Send From** – choose a fax line from your organization’s dropdown.
* **Facility / Provider \[Optional]** – assign context.
* **Choose Files** – upload one or more PDFs.
* Click **Send Document**.
* The fax will now appear in your **Outbound** list. You can track the status of the fax.
Use the filter panel to narrow by **Patient**, **Facility**, **Created By**, or **Document Type**.
### Resend a failed fax
If a fax fails, you don't need to start over:
1. Find the failed fax in the **Outbound** tab.
2. Click **Resend**.
3. Confirm or modify the recipient, fax number, or attachments in the Send Fax Drawer, then send.
The original and resent fax records are linked, giving you a complete audit trail.
### Automatic failure tasks
When a fax fails to deliver, Air automatically creates a task in your **Tasks** queue so nothing gets missed. The task includes a reference to the original fax.
### Track documents sent via email and text
Documents sent from Patient Attachments via email or text message also appear in the **Outbound** tab. You can see the delivery status, timestamp, and recipient for each — no manual follow-up needed to confirm receipt.
## Inbound faxes
### Your inbox
The **Inbound** tab is split into two sub-tabs:
* **Unprocessed** — faxes that haven't been acted on yet.
* **Processed** — faxes you've reviewed and handled. A fax moves here automatically once you manually assign a patient and document type.
Use the filter panel to narrow the list by **Patient**, **Document Type**, **Facility**, or **Created By**. Filters work across both sub-tabs.
Air automatically routes each inbound fax to the correct facility by scanning the PDF for a facility name. If no facility is found, it falls back to the patient's most recently associated facility. For new patients with no prior visits (e.g., inbound referrals), no facility is assumed — preventing incorrect routing.
### Process an inbound fax
When you open a fax from the **Unprocessed** queue, the PDF loads **side-by-side with the edit panel** so you can read and categorize at the same time — no more switching views.
From the detail view you can:
* **Link to a patient** — Search by name (including preferred name) to associate the fax with a patient's chart. Once linked, the fax appears in that patient's record.
* **Assign a document type** — Select a content category (e.g., "Prior Authorization", "Insurance Card", "Referral"). Admins can create and manage available types — see [Fax settings](#fax-settings).
* **Add tags** — Apply tags to organize the fax. Tags sync with Patient Attachments, so anything you apply here carries over automatically when the fax is linked to a patient record.
* **Split the fax** — Break a compound document into multiple fax entries that can be separately assigned patients, document types, and tags.
### Create a lead from an inbound fax
When an inbound fax is a referral, you can create a patient lead directly from the fax detail view — no need to leave the faxing workflow.
1. Open the fax from the **Inbound** tab.
2. Click **Create Lead** in the action panel.
3. The Lead Creation drawer opens alongside the fax — fill in referral type, patient details, and any notes.
4. **Save** — the lead appears in Lead Tracker, and a reference is stored on the fax record.
Faxes that have already generated a lead are marked with a **Leads** indicator in the Inbound list, so your team can see at a glance which faxes have been converted.
### Split a combined fax
Providers sometimes send one fax containing records for multiple patients. You can split it into separate documents:
1. Open the fax and select **Split Fax**.
2. Define the page ranges for each individual fax (e.g., pages 1–4 for Patient A, pages 5–9 for Patient B).
3. Set a subject, patient, and document type for each segment before saving.
4. Each segment is saved as its own independent fax and can be linked to the appropriate patient separately.
## Sending a fax
### From the Send Fax Drawer
The Send Fax Drawer is available any time you initiate a fax — from the queue, from a patient's chart, or from an order. Key features:
* **Multiple documents** — Add as many files as needed. Air validates file type and size before sending to prevent delivery failures.
* **Reorder by dragging** — Drag documents into the order you want them to appear. The final fax PDF reflects the order you set.
* **Address book** — Start typing a name or fax number in the recipient field to search saved contacts. Some organizations maintain a read-only contact list for standardized workflows.
* **Cover sheet** — Choose from your saved templates, use the system default, or skip the cover sheet (see [Cover sheets](#cover-sheets)). When enabled on the cover sheet, you can also add free-text notes with context or instructions (e.g., "Medical records request — received 06/15"), which appear on the cover sheet.
### Cover sheets
Every fax can include a cover sheet. Air provides a system default, and admins can build fully custom templates from **Utilities → Faxing → Settings → Fax coversheet templates**.
**Select a cover sheet at send time.** Use the **Cover Sheet** dropdown in the Send Fax Drawer to choose a custom template (any saved template your admin created, with your organization's branding, logo, and layout) or **No cover sheet** to skip it. After you select a template, a preview renders inline so you can confirm it looks right before sending.
**Editable text boxes.** Practices can add **editable text box fields** to a template, which staff fill in right before hitting **Send**. This is useful for context that can't be auto-populated — things like *reason for referral*, *notes to the receiving provider*, or *urgency and follow-up instructions*. When you select a template with text boxes, the fields appear in the Send Fax Drawer directly below the cover sheet preview. Type into them and the cover sheet updates live.
**Dynamic variables.** Beyond text boxes, templates automatically populate context from the fax — `{{patient.name}}`, `{{provider.npi}}`, `{{facility.fax}}`, and more. Staff don't have to fill these in; Air resolves them at send time.
**Set a default cover sheet.** Admins can designate one template as the **site default**. Air attaches the default automatically whenever a fax is sent without a manual selection — most importantly when **auto-faxing fires** (e.g., a provider signs a chart note and Air automatically sends it to the referring provider).
Because auto-faxing runs without a human reviewing the Send Fax Drawer, the default cover sheet **cannot contain editable text box fields** — only dynamic variables and fixed content are supported. If you try to set a template with text boxes as the default, Air prompts you to remove those fields first. Templates with text boxes can still be selected manually at send time.
### From within a patient workflow
Faxing is integrated throughout Air so you can send without leaving what you're doing:
* **Chart note** — When a provider signs a note, Air can automatically queue it for the referring provider (see [Fax settings](#fax-settings) to configure this).
* **Patient Attachments** — Open a patient → **Attachments** → click **Send as Fax** on any document.
* **Imaging or Referral Orders** — The order modal includes a fax send step with the referring provider's number pre-filled.
## Fax settings
Open **Faxing → Settings** to configure fax behavior for your organization:
* **Fax numbers** — Your organization's fax numbers are tied to specific facilities. Contact your Athelas account team to add, change, or deactivate a number.
* **Cover sheets** — Build and manage custom cover sheet templates. Use rich text formatting, insert dynamic variables (patient, provider, facility, recipient), add your organization's logo, and set a site-wide default template. Staff can choose or override the template at send time.
* **Fax contacts** — View and search the address book. Admins can manage the contact list from this tab.
Additional settings live under **EHR Preferences**:
* **General → Auto-faxing on chart note sign** — Enable or disable automatic queueing when providers sign chart notes, configurable by note type (initial eval, progress note, discharge) and by facility. When on, Air defaults to the patient's referring provider as the recipient.
* **Faxing → Content types** — Create, rename, and delete the document type categories used when tagging faxes (e.g., "Prior Authorization", "Insurance Card", "Referral"). Add or remove categories any time.
* **Tags** — Manage the shared tag taxonomy used across both the Faxing page and Patient Attachments. Tags are unified — a tag applied while processing an inbound fax carries over to the patient's attachment record automatically.
## Troubleshooting
| **Issue** | **What to try** |
| :------------------------------------------------------ | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Fax shows **Delivered** but recipient didn't receive it | Confirm the fax number is correct. Ask the recipient to check that their machine was online and had paper. Contact Athelas support with the fax ID. |
| Fax stuck in **Pending** | If still pending after 30 minutes, use **Resend**. Check that the recipient's line is active. |
| Failed fax — **Resend** option not visible | You may not have the required permission. Ask your admin. |
| Not receiving inbound faxes | Verify your fax number is active under **Settings**. Contact Athelas support if the number looks correct. |
| Inbound fax routed to the wrong facility | Air uses OCR to assign the facility automatically. If routing is consistently incorrect, contact Athelas support to review the facility assignment logic for your fax number. |
| Cover sheet template missing at send time | Templates are managed in **Settings → EHR Preferences → Faxing → Cover Sheets**. Ask your admin to verify the template is saved and active. |
### FAQ
All outbound faxes — including those sent from chart notes and from Patient Attachments — appear in the **Outbound** tab with their delivery status, timestamp, and recipient, attributed to the sending facility and provider.
Air automatically creates a task in your **Tasks** queue referencing the original fax, so the failure isn't missed. You can click **Resend** on the failed fax to try again — the original and resent records stay linked for a full audit trail.
Air scans the incoming PDF for a facility name. If none is found, it falls back to the patient's most recently associated facility. For new patients with no prior visits, no facility is assumed, which prevents incorrect routing.
Yes. Use **Split Fax** to divide a combined document into separate faxes by page range, then assign each segment its own subject, patient, and document type. Each segment becomes an independent fax.
A default cover sheet is used during auto-faxing, which runs without a person reviewing the send. Because of that, defaults can't contain editable text box fields — only dynamic variables and fixed content. Remove the text box fields, or select that template manually at send time instead.
# Patient Appointment Details
Source: https://docs.athelas.com/air_provider/review_patient_details/patient_appts
Review and manage patient appointments, chart notes, billing documents, and imported medical records.
To open a Patient's Profile: i) Click on the Top Tab of the Chart Note, ii) Open Patients Tab on the left navigation bar and select the desired patient.
### View chart notes for an appointment
Click on the **Appointments** tab at the top of the Patient Profile
Click on the **square icon** (to the right of the calendar icon) to open the Chart Note for the desired appointment.
### Filter appointments
Filter appointments by: Date of Appointment - Provider - Case - Facility - Status - Custom Tags
### Download patient schedule
Select appointments by checking the box to the left of each appointment → Choose to **Download** or **Fax** the patient’s schedule.
**Note:** You can bulk fax or download PDFs by selecting the checkbox at the top of the appointments table. Uncheck any appointments you don’t want, or simply check the ones you’d like to include.
### Preview past Billing and Plan of Care documents
Once an appointment is in **Completed** status, you can download related documents.
The **Eye icon** changes from gray to black when the document is available.
**Sample - Billing PDF**
**Note:** You can set the default option within the Preferences tab on when signatures are required in the Billing PDF. (Default is off for all insurances, other options include on for Medicare only and on for all insurances).
**Sample - Plan of Care PDF**
### Import patient’s medical records
**Import into Current Appointment Chart Note**
✨**Smart Tip:** Import an existing record by selecting **Athelas AI** (bottom right) → **Import Existing Records**
Open the **Chart Note** → Click on the **Import** tab (top right)
# Patient Attachments
Source: https://docs.athelas.com/air_provider/review_patient_details/patient_attachments
Find, filter, view, and download patient attachments in Air.
Access, filter, and manage patient documents such as faxes, images, and other uploaded files.
* Open the **Attachments** tab at the top
* Search for documents using the search bar, or filter by document type. For example, filter by **Faxed** documents.
* Air adds **(Discharged)** to discharged-case labels in filters, grouped headings, and case entries. Attachments linked to a discharged case show **Case (Discharged)** in the **Type** column.
You can then:
* **Download** files by selecting the checkbox and clicking the **Download** button to the right of the search box.
* **View** a file by clicking the **Black Eye** icon to the right of the selected file.
# Patient Demographics
Source: https://docs.athelas.com/air_provider/review_patient_details/patient_demog
Access and manage key patient demographic, contact, insurance, and case information in one place.
### **Patient Information**
Under **Patient Demographics**, you can view:
* **General Information:** Patient Name, Date of Birth, Age, Gender, Primary Language, Height, Weight, Primary Care Provider, SSN, Ethnicity, Sexual Orientation, Tribal Affiliations, Gender Identity, and Race
* **Contact Information**
* **Emergency Contact**
* **Financially Responsible Parties**
* **Insurance Providers:** You can delete an insurance record here. An alert will appear asking you to confirm your decision. Even after deletion, the insurance record will remain visible in this section and can be restored at any time.
* **Prior Authorization and Referral Details:** Prior authorization numbers can be created and deleted here. Deleting a prior authorization does not permanently remove it. You can restore it at any time, similar to the insurance deletion function.
### **Active and Discharged Cases**
**Discharge Cases**
* Navigate to ****Patient Demographics →Cases****
* Click the **Discharge Case** icon (black folder)
* Enter a reason for discharge
* Choose the type of discharge (with the option to cancel or archive all future appointments)
\*\*Note: \*\*A chart note can also be changed to a discharge note, which adjusts the template of sections.
✨**Smart Tip**: Type “/” in the Reason box to insert a pre-created text snippet.
**Note:** Options to cancel or archive future appointments can be turned on or off from the Preferences tab.
**Restore a Discharged case**: Restore an incorrectly discharged case by clicking on the time icon.
**Active Cases**
Within **Active Cases**, you can:
* Add or edit a Case
* Review the patient’s intervention progress
* Create an Admin Progress Note
**Click on the edit case icon to update the following:**
* Supervising Provider on the case
* Case Owning Provider on the case (also used to calculate the [Active Patient Breakdown](/air_admin/analyze_your_reports/kpi_dashboard#review-the-status-of-active-patients) report)
* Add or view case notes for the patient
# View your Patient's Information
Source: https://docs.athelas.com/air_provider/review_patient_details/patient_info
Once you check in a patient, you can view past visit summaries and detailed patient information.
### View a Summary of Past Visits
**AI-Generated Summary**
✨**Smart Tip:** Scroll through the *Subjective* section of the Chart Note to review an AI-generated summary of previous appointments.
* Open **Chart Notes**.
* Click on the **Appointments** tab at the top.
* Click on the **square icon** (to the right of the calendar icon) to open the Chart Note for the desired appointment.
**Note**: From this page, you can also view past [Billing and Plan of Care](https://air_athelas.mintlify.app/patient_details/patient_appts#preview-past-billing-and-plan-of-care-documents) documents by clicking on the "eye" icon to the left of the date.
### Review Patient Details
**Ask Athelas AI**
✨**Smart Tip:** Use Athelas AI to ask targeted questions about the patient for quick insights. You can also use Voice Mode.
**Open Patient Information Tabs**
✨**Smart Tip:** Ask Athelas AI to navigate you to the relevant Patient Profile or Chart Note. You can also use Voice Mode.
Use the tabs at the top of the Chart Note to navigate patient information, including:
* [Patient Demographics](/air_provider/review_patient_details/patient_demog)
* [Patient Appointment Details](/air_provider/review_patient_details/patient_appts)
* [Patient Documents](/air_provider/review_patient_details/patient_attachments) (including faxes and images)
* Tasks, Medications, Allergies, Visits, Immunizations and Labs
**Note**: Use Athelas AI to navigate to the Patient Profile
Click on the **Patient** tab in the left menu → Search and select your patient by entering their details.
This opens the patient’s full profile for review.
### Add Patient Notes
There are 3 types of notes:
**1. Appointment Notes**
View Calendar > Click on an appointment > Edit appointment to enter any notes.
These notes can be seen in i) appointment details, ii) the calendar tooltip.
**2. Case Notes**
View Patient Profile > Patient Demographics > Edit Active Cases to enter any case specific notes.
**3. Patient Notes**
Patient notes are of 2 types:
a) General Notes: View Patient Profile > Patient Demographics > Add Patient Notes. These notes can be seen in the appointment details or within patient demographics.
b) Pinned Notes: When enabled within the Preferences Tab, pinned notes will open automatically when the patient's profile or appointments or chart notes are opened.
# EHR Data Sync
Source: https://docs.athelas.com/insights_admin/my_practice/ehr_data_sync
### At a Glance
Insights pulls patient, appointment, and encounter data out of your existing EHR on a daily schedule and builds claims from it. Once the sync is configured you do not trigger it, schedule it, or hand over files — it runs on its own, which is what lets a day's claims reach the clearinghouse without anyone re-typing a demographic or a CPT code.
The flow is **your EHR → the daily pull → Insights**, and it moves in one direction only.
Changes you make in Insights do **not** write back to your EHR. Demographic and insurance corrections have to be made in your EHR, where the next day's sync will pick them up. See [Eligibility Setup Guide](/insights_admin/my_practice/eligibility_setup_guide).
## What the Sync Pulls
Three categories of data have to reach Insights before a claim can be built.
### Patient demographics and insurance
Who the patient is and what covers them:
| **Group** | **Fields** |
| :----------------------------------- | :------------------------------------------------------------------------------------------------------------- |
| **Patient identification** | First and last name, date of birth, sex, address, phone number, email. |
| **Primary insurance** | Insurance name, subscriber name, subscriber ID (member number). |
| **Secondary and tertiary insurance** | Insurance name, subscriber information, and the patient's relationship to the subscriber. Pulled when present. |
### Appointment information
What drives eligibility checks and scheduling:
* The date the patient is scheduled.
* **Appointment status** — scheduled, completed, cancelled, or no-show.
* **Appointment type**, which eligibility verification reads.
Demographics and insurance come across linked from the patient record rather than re-entered per appointment.
### Encounter information
The clinical and billing detail a claim is built from:
| **Group** | **Fields** |
| :------------------ | :--------------------------------------------------------------------------------------------------------------- |
| **Providers** | Rendering provider, and referring provider when there is one. |
| **Clinical codes** | ICD-10 diagnosis codes, CPT procedure codes, diagnostic pointers linking diagnoses to procedures, and modifiers. |
| **Service details** | Dates of service, place of service (POS) codes, service units, and pre-authorization numbers when they apply. |
## The Sync Reflects Your EHR Exactly
If a field is empty in your EHR, it arrives empty in Insights. If a field is wrong in your EHR, it arrives wrong. Nothing is inferred or filled in on the way across.
Three consequences follow:
* **Incomplete records block claims.** A patient missing demographics or insurance cannot produce a submittable claim.
* **Bad data becomes a rejection.** An incorrect subscriber ID reaches the payer as an incorrect subscriber ID.
* **Consistency matters as much as completeness.** The same information has to go in the same field on every record, because that is the field the sync reads.
## Getting Set Up
Your onboarding team configures the sync with you before go-live. There are three parts to it.
**Field mapping.** Every required data point is documented against the exact place it lives in your EHR — demographics, subscriber details, appointment types and statuses, clinical codes and modifiers, provider assignments, and service dates and locations. Your EHR's layout is specific to you, so ask your onboarding team for the field mapping documented for your system.
**Data entry standards.** Your staff need to know which fields feed the sync, so agree on where each piece of information goes and document that for your team. Small inconsistencies in where a value is typed are the most common cause of missing data later.
**Testing.** Test pulls run before go-live to confirm the required data comes across, arrives in the expected format, and produces claims that can actually be generated.
## Common Data Quality Issues
Most sync problems trace back to one of these:
| **Area** | **What goes wrong** |
| :-------------- | :---------------------------------------------------------------------------------------------------------------------------- |
| **Insurance** | Incomplete subscriber IDs, a missing subscriber name or relationship, insurance effective dates left blank. |
| **Encounters** | CPT codes not documented, ICD-10 codes missing or invalid, service dates not recorded, no rendering provider assigned. |
| **Consistency** | Provider names entered differently across records, insurance names typed with variations, appointment types not standardized. |
## Keeping Data Clean
**Every day:**
* Confirm patient demographics at check-in.
* Update insurance whenever a patient reports a change.
* Finish encounter documentation before the end of the day.
* Work the errors the system reports.
**Every week:**
* Look for patients with missing or incomplete insurance.
* Review encounters flagged with data issues.
* Confirm new providers are set up correctly, including their credentials. See [Provider Credentials](/air_admin/manage_your_practice/provider_credentials).
**When something looks wrong**, start in your EHR: open the specific patient or encounter, confirm the required fields are populated, and correct them there. If the data is complete in your EHR and still not arriving, contact support.
### FAQ
Daily, and typically overnight, so the day's data is ready to process each morning. Your onboarding team confirms the exact schedule for your practice during setup.
On the next daily pull. If a correction cannot wait for that, contact support.
Yes. Historical encounter data can be pulled during onboarding when you need it for claim submission or reporting — raise the request with your onboarding team while the mapping is being set up.
Errors are flagged and reported to your team, and you can check sync status yourself rather than waiting to be told. The import and submission error worklists are covered in [Errors, Rejections & Denials](/insights_onboard/getting_started_as_biller_errors_rejections_and_denials).
Yes, and this is worth flagging early. Field mappings are built against your current system, so an upgrade or a migration can move the fields the sync reads. Tell your account team before the change, not after.
Questions about the data reaching Insights, or a record that is not arriving? Reach out to your account team or [support@getathelas.com](mailto:support@getathelas.com).
# Eligibility Self-Service Setup Guide
Source: https://docs.athelas.com/insights_admin/my_practice/eligibility_setup_guide
**Athelas Insights** verifies patient eligibility prior to appointments and calculates estimated patient responsibility (copays, deductibles, coinsurance, and self-pay). This guide explains how eligibility data flows into Insights, how to read the results, and how to configure the rules that power your Patient Responsibility (PR) recommendations.
* **Automated Checks** — Automated checks run **7 days before** the scheduled appointment for insurances supported through the Waystar, Availity, and UHC clearinghouses.
* **EHR Data Flow (Insights Only)** — Insights uses a **one-way extraction** to pull appointments, patient demographics, and insurance data from your EHR.
Changes made in Insights will **not** update your EHR. All demographic and insurance updates must be entered directly in your EHR system.
* **Live Checks** — For patients without a scheduled appointment, use the **Live Eligibility Check** button to verify coverage in real time.
## Reading the eligibility status
Each insurance shown on an appointment displays a badge indicating the result of its eligibility check:
* The patient has active insurance coverage with this payer.
* The patient does **NOT** have active insurance coverage with this payer.
* We were unable to get an active or inactive response from the payer.
* We were unable to retrieve an active or inactive response from the payer. This is called an **Inconclusive** result and is usually caused by incorrect patient information, such as the name, date of birth, or member ID.
Hover over the icon to see what needs to be corrected before running the eligibility check again. The table below lists the most common inconclusive responses and next steps.
| **Response** | **Next Steps** |
| :----------------------------------- | :------------------------------------------------------------------------------------------------- |
| Patient data mismatch | Compare the insurance card to the EHR; correct legal name, DOB, gender, or Member ID, then Re-Run. |
| Member ID format rejected | Verify the most recent card, especially for Medicare or Medicaid, correct the EHR, and Re-Run. |
| Appointment added recently | Wait for the automated run or use Re-Run when the answer is needed immediately. |
| Coverage / subscriber not found | Confirm current insurance with the patient, update the EHR, and Re-Run. |
| Provider or payer enrollment message | Flag the appointment for Athelas eligibility review. |
## Types of eligibility rules
To generate an accurate Patient Responsibility suggestion, Insights first parses a patient's insurance benefits, such as copays, deductibles, and coinsurance. This information comes from Waystar, Availity, and UHC.
Patients often have multiple benefits, but not all are relevant to the PR calculation. After parsing the data, Insights applies rules to identify and use only the benefits needed.
Before configuring eligibility rules, it's important to understand the three rule types used by the eligibility engine:
* **Appointment Rules**
* **Eligibility Parser Rules**
* **Suggested PR Rules**
Each rule type serves a different purpose. The following sections explain how each one works.
### Appointment Rules
Appointment Rules map appointment types to the correct **Service Type** used in the eligibility inquiry.
A Service Type identifies the healthcare service being provided and determines which benefits the payer returns. Common service types include Physical Therapy (PT), Physical Medicine (AE), and Professional Office Visit (98).
For most sites, all appointment types are mapped to the site's specialty. For example, a Physical Therapy practice maps all appointment types, such as Initial Evaluation and Follow-up, to PT. For more complex practices, appointment types are mapped individually based on the services provided.
Appointment Rules can also apply payer-specific exceptions, such as using a different Service Type or Rendering/Group NPI for certain payers.
| **Specialty** | **Mappings** |
| :---------------- | :------------------------------------------------------------------------------- |
| Internal Medicine | Primary Care |
| Family Medicine | Primary Care |
| Physical Therapy | PT, AE, Occupational Therapy |
| Surgical | 98 and 30 (for deductible inquiries unless a surgical Service Type is specified) |
| Pediatrics | 98 |
| Dermatology | DG and 98 |
#### Accessing Appointment Rules
**Step 1:** From the Appointments page, open the three-dot menu and select **PR Settings**.
**Step 2:** On the **Patient Responsibility Settings** page, select the tab for the type of eligibility rule you need to configure. We will first set up our Appointment Rules.
**Step 3:** Click **Add Rule** and this will pop up:
**Step 4:** Creating an Appointment Rule
* **Name the rule** — The rule name is for your reference only and can be named anything.
* **Set the priority** — Assign a priority value, such as 10, to determine the rule order.
* **Set the Service Type Code** — Select **Set Service Type Codes** and choose your facility's appropriate Service Type.
* **Add NPI details** — Click **Add Action** and enter the Primary and Secondary NPIs for your site. We recommend setting the Group NPI as the Primary NPI and a provider's NPI as the Secondary NPI.
* **Select appointment types** — Choose which appointment types the rule should apply to. If the rule applies to all appointments, add a fail-safe condition and save the rule.
### Eligibility Parser Rules
Eligibility Parser Rules control how benefits returned by Waystar are prioritized when multiple valid benefits are available. Refer to the images above to access **PR Settings** and **Eligibility Parser Rules**.
The most common use case is ranking one benefit higher than another. For example, if a site wants to recommend the Specialist copay, you can assign additional ranking points to benefits with a payer note containing "Specialist." If both Specialist and Non-Specialist copays are returned, the system will prefer the Specialist copay.
In most cases, ranking is preferred over excluding benefits. If the Specialist copay is unavailable, the system can still fall back to the Non-Specialist copay instead of returning no recommendation.
Use Parser Rules only when the eligibility response contains multiple valid benefits and the wrong one is consistently selected. First confirm that the appointment Service Type and payer mapping are configured correctly — a number of rules have likely already been created for your benefit.
| **Benefit** | **Code** |
| :-------------------- | :------- |
| Copay | B |
| Coinsurance | A |
| Deductible | C |
| Out-of-Pocket Maximum | Y |
| Limitations | G |
| Benefit Description | D |
Common actions to experiment with: **Add Ranking Points** (usually to parse a specific type of co-pay), **Display Benefit on Insights**, **Exclude**, **Include**.
Common variables to experiment with: **Appointment Type**, **Eligibility or Benefit Information Code**, **General Plan Coverage Description**, **Payer Note**.
The example below recommends the primary copay for all BCBS member IDs that start with "R" — first the parser rule's conditions, then its actions:
### Suggested PR Rules
Once eligibility parser rules have been developed, it's time to set the PR rules. You can use PR rules to set payer-specific PR recommendations, prioritize copays over others, and set coinsurance as a percentage of the fixed amount which you can set manually. Refer to the images above to access **PR Settings** and **Suggested PR Rules**.
All Suggested PR Rules should be entered in **cents**, not dollars.
#### Creating Suggested PR Rules
Once you click **Add rule**, this will pop up:
* **Rule details** — Use a descriptive label for the **Name** (e.g., "UHC Deductible Rule"), assign a **priority** where higher numbers win when multiple rules match, and use the **End date** toggle for temporary or inactive rules.
* **Rule logic** — **Actions** define what the rule does (set an amount, prioritize a benefit, set service type, set NPI, or notify), while **Conditions** determine when the rule applies (payer, appointment type, facility, age, provider, or benefit values). You can choose between **All** (requires every condition) or **Any** (requires one condition).
#### Configure Patient Responsibility Rules
Create four core PR rules. Their relative priority determines which recommendation wins when more than one rule matches the appointment.
| **Rule** | **Starting priority** | **Primary action** | **When it should win** |
| :--------------- | :-------------------- | :-------------------------------------------------------------- | :----------------------------------------------------- |
| Deductible | 20 | Set Deductible Amount | Deductible remains and no higher-priority rule applies |
| Coinsurance | 30 | Set fixed fee; set deductible to \$0 | Deductible is met and coinsurance is present |
| Prioritize Copay | 40 (recommended) | Prioritize Copay From Benefits; zero deductible and coinsurance | A valid copay is returned |
| Out-of-Pocket | 60 (recommended) | Set copay and deductible to \$0; notify | Out-of-pocket remaining is \$0 |
Rule type: **Suggested PR Rule**.
✨**Smart Tip:** How do priorities work? A higher number means higher priority. The Out-of-Pocket rule must outrank Copay; Copay should outrank Coinsurance and Deductible.
#### Overriding a Suggested Recommendation
If the suggested patient responsibility is not correct once your rules are configured, you can override the recommended amount for an individual patient.
**Step 1:** On the Appointments page, click the gray area of the appointment row. Do not click the patient name or the insurance name, as those open different views.
**Step 2:** In the expanded appointment view, select the shield icon in the upper right.
**Step 3:** In the Charge Override window, enter the amount you want to apply, leave the remaining fields as they are, and select **Submit**.
All Charge Override amounts are in **cents**, not dollars. To override the recommendation to a \$10 copay, enter `1000` in the copay field.
From that point forward, the recommendation for that patient and appointment type will be the amount you entered.
## Build rules with the Rule UI
Alongside building rules by hand in PR Settings, you can create them by describing what the rule should do in plain language. The Athelas Assistant converts your description into a working rule and populates the Conditions and Actions for you, so your job is to review the result and save it.
This is most useful when a single site-wide mapping is not enough. For example, if Provider A is a physical therapist but Provider B is an occupational therapy specialist, you need OT benefits surfaced for Provider B's appointments rather than PT benefits. Instead of building that exception by hand, you can describe it and let the Rule UI generate it.
**Step 1:** In the left navigation, open the **Automation** section and select **Automations**.
**Step 2:** At the top of the page, select the **Rules** tab.
**Step 3:** Select the card for the type of rule you want to build.
| **Rule type** | **Card** | **Describe** |
| :----------------------- | :--------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------- |
| Appointment Rules | **Appointments** — rules triggered on appointment events | The appointment type, provider, or facility, and the Service Type you want returned |
| Eligibility Parser Rules | **Eligibility** — rules over eligibility responses | The payer or service type, and the benefit to prioritize, rank, or exclude |
| Suggested PR Rules | **Pre-visit PR** — patient-responsibility rules before the visit | The payer or appointment scope, the amount to recommend, and the benefit condition that triggers it |
**Step 4:** On the **Create New Rule** screen you will see the prompt "What rule do you want to build?" along with options to create a rule manually, clone a rule, or use templates. Type your description into the **Build a rule that does…** field and select **Send**.
**Step 5:** Describe the rule in plain language, naming both the condition that triggers it and the action it should take. For example:
* `When the appointment type is "Daily Note", set the service type code to 98.`
* `For appointments with Provider B, set the service type code to Occupational Therapy.`
* `For the Downtown facility only, map all appointment types to PT.`
* `For BCBS Federal plans, prioritize the Non-Specialist copay over the Specialist copay.`
* `Exclude any copay benefits that are not of POS Office.`
* `For all appointments, recommend an \$80 deductible for Medicare patients if they have not met their deductible.`
**Step 6:** The Athelas Assistant validates your request against that rule type's schema, confirms the conditions and actions you referenced are supported, and then populates the rule builder. The **Builder** panel shows the generated Conditions and Actions, and the panel on the right summarizes exactly what was configured.
**Step 7:** Review the result on the **Draft a Rule** screen. You can adjust any field directly in the Builder, add further Conditions or Actions, or inspect the underlying configuration with the **JSON** toggle. When the rule looks correct, select **Save**.
**Note:** You may need to refresh the page after saving before the rule shows as active.
✨**Smart Tip:** Writing a good description — the clearer your description, the better the result. Name the appointment type, provider, or facility exactly as it appears in your system, and state the Service Type or benefit you want returned. If a request cannot be expressed within that rule type's schema, the assistant tells you rather than guessing, so you can refine the description and send it again.
✨**Smart Tip:** Prefer ranking over excluding — as with parser rules you build by hand, describing a preference such as ranking one copay above another is usually safer than excluding a benefit outright, because the system can still fall back to the other copay instead of returning no recommendation. Reserve exclusions for benefits that should never be used.
Suggested PR Rules are stored in **cents**, not dollars. When you describe an amount in dollars, confirm the populated action shows the correct value before saving — \$80 should appear as `8000` and \$55 as `5500`.
A rule generated by the Rule UI competes with your existing rules exactly like one you built by hand, so set its priority accordingly: the Out-of-Pocket and Secondary Insurance rules should still outrank Prioritize Copay, and Copay should still outrank Coinsurance and Deductible. See [How to Create Suggested PR Rules](/insights_front_desk/front_office_payments/how_to_create_suggested_pr_rules) for the full actions reference.
## Rules already configured for your site
Some rules are already set up for your site by default, so you do not need to create them. Review them so you understand how they interact with the rules you configure yourself, since their priorities determine which recommendation wins when more than one rule matches an appointment.
**Prioritize Copay**, the **Out-of-Pocket** rule, and the **Secondary Insurance** rule are Suggested PR Rules, and the **PT mapping** rule is an Appointment Rule. All four are already configured for your site.
### Prioritize Copay
* **Actions:** Prioritize Copay From Benefits; set deductible and coinsurance amounts to \$0.
* **Conditions:** Copay greater than \$0. An appointment-type condition applies only when copay workflows differ by specialty.
* **Priority:** Set above deductible and coinsurance, but below the OOP rule.
### Out-of-Pocket rule
Rule type: **Suggested PR Rule**.
* **Actions:** Set Copay Amount and Deductible Amount to \$0, then add a notification that the patient has met out-of-pocket.
* **Conditions:** Individual or family out-of-pocket remaining equals \$0.
* **Priority:** Highest of the four PR rules so it suppresses any collection recommendation.
* **Result:** When OOP remaining is \$0, the appointment should show no suggested charge and a notification that the patient has met out-of-pocket.
### Secondary Insurance rule
Rule type: **Suggested PR Rule**.
* **Actions:** Set Copay Amount, Coinsurance Amount, and Deductible Amount to \$0.
* **Conditions:** Secondary Payer shares no elements with SELF-PAY (NO INSURANCE); Secondary Member Id is not empty.
* **Priority:** The same as the Out-of-Pocket rule, so it outranks Prioritize Copay and suppresses the copay recommendation.
* **Why:** When a patient has both primary and secondary insurance, the patient responsibility passed by the primary payer is usually covered by the secondary payer, so no amount is recommended for upfront collection.
### PT mapping rule
Rule type: **Appointment Rule**.
* **Actions:** Set Service Type Codes to PT – Physical Therapy.
* **Conditions:** Set to "Any," with Appointment Type Is Empty and Appointment Type Non Empty. Together these act as a fail-safe so the rule applies to every appointment type.
* **Priority:** 50.
* **Why:** The practice is a Physical Therapy site, so eligibility checks prioritize Physical Therapy benefits, which are the most relevant benefits returned for these appointments.
## Adding more PR rules to improve upfront collection
Beyond the rules already configured for your site, you can add more Suggested PR Rules to improve how much patient responsibility is collected upfront. Refer to the images earlier in this guide to access **PR Settings** and **Suggested PR Rules**.
✨**Smart Tip:** Not set up by default — the Deductible rule and the Coinsurance rule are not configured for your site. The two rules below show how to create each one.
### Deductible rule
* **Action:** Select **Set Deductible Amount** and enter the approved upfront amount in cents.
* **Conditions:** Scope by payer and/or appointment type. Use an "Any" group when either individual or family remaining deductible can trigger the rule.
* **Example:** For UHC, if either remaining deductible is greater than \$55, recommend \$55 (5,500 cents).
### Coinsurance rule
* **Actions:** Set Deductible Amount to \$0 and Set Fixed Fee to the approved base fee.
* **Conditions:** Payer matches; coinsurance percentage is greater than \$0; at least one remaining/calendar-year deductible value equals \$0.
* **Why priority 30:** It should override the deductible rule when the deductible is met.
✨**Smart Tip:** Build pattern — use a fixed payer condition plus an "Any" group for individual or family remaining deductible. This keeps the rule readable and avoids duplicate payer rules.
## Out-of-Network (OON) insurances
For insurance plans where you want to retrieve Out-of-Network benefits instead of In-Network benefits, you need to map those plans accordingly. From **PR Settings**, click **Out of Network Insurances**.
Select the insurance plans that are out of network (OON) for you. If an insurance plan is out of network only for specific facilities, select those facilities accordingly. To add multiple out-of-network insurance mappings, click **Add Mapping** for each additional entry. When you have finished, click **Save**.
## Configure custom payment types
Use custom line items for charges outside copay, coinsurance, and deductible. After configuration, the line items are available in the appointment payment collection workflow.
### Choose the correct type
| **Type** | **Use it for** | **System behavior** |
| :---------- | :---------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------- |
| Standard | A separate service or charge manually added to a specific appointment | Recorded as a payment; does not reconcile against a claim and does not automatically apply to encounters |
| Self Pay | A line item intended to reconcile to patient responsibility for the date of service | Automatically applies to all encounters, including insured encounters, and reconciles against encounter PR |
| Add Credits | Money that should become patient account credit | Adds a corresponding credit; staff can choose flexible credit or tie it to a date of service |
A **Self Pay** line item applies to **ALL** encounters, not only self-pay patients. Use **Standard** instead when the charge should be manually added and remain separate from claim reconciliation.
### Create a custom payment type
1. Open **PR Settings** and scroll to **Custom Payment Types**.
2. Select the plus icon in the upper-right corner.
3. Enter the **Name**, choose **Type**, set **Status**, and enter the **Default Charge Amount** in dollars.
4. Leave the default amount blank when staff should enter the amount at collection time.
5. Select **Create**.
### Use custom line items during collection
**Add the line item to an appointment:**
1. Open the appointment payment collection flow.
2. Open the **Type** dropdown or search for the line item by name.
3. Select the line item. Its configured default amount appears automatically.
4. Adjust the amount or quantity when the workflow permits multiple units.
5. Choose the payment method and complete collection.
You can also find the line item by typing its name directly into the **Type** field to search for it.
**Note:** When the same line item has multiple units, update the quantity before confirming the payment.
### Edit, disable, or replace a custom line item
**To edit an existing item:**
1. Return to **PR Settings → Custom Payment Types**.
2. Search for the line item and select the pencil icon.
3. Update the **Name**, **Default Charge Amount**, or **Status**.
4. Select **Disabled** to hide the item from the payment collection menu.
5. Select **Update** to save the changes.
✨**Smart Tip:** Type cannot be edited. To change a line item from Standard, Self Pay, or Add Credits to a different type, disable the existing line item and create a new one with the correct type.
### Confirm the intended accounting behavior
| **Type** | **What you should see after collection** |
| :---------- | :--------------------------------------------------------------------------------------------------------------------------------------- |
| Standard | A separate charge for the custom item; it may have no encounter ID and remains separate from the copay or other encounter-linked charge. |
| Self Pay | The collected line item reconciles against final encounter patient responsibility after remittance. |
| Add Credits | The payment appears as locked or flexible patient credit based on the option selected during collection. |
## Set up your self-pay fee schedule
If your facility collects payment from self-pay patients upfront at the time of service, you can skip this step. The self-pay fee schedule is for facilities that charge different amounts for different CPT codes and bill the visit as a self-pay claim after treatment, based on the services actually performed. Once a schedule is in place, Insights prices those encounters from it instead of relying on a single flat self-pay amount.
You can add fees one CPT code at a time or upload your whole schedule as a CSV. See [Self-pay Fee Schedule](/insights_front_desk/front_office_payments/self_pay_fee_schedule) for the full walkthrough.
## Set patient phone and email support
Once patient statements go out, patients will call or email with questions about what they owe. This setting controls which phone number and email address they are directed to. Most sites add a dedicated support line so those calls reach their own staff rather than the default Athelas support contact.
**Step 1:** From the Appointments page, open the three-dot menu and select **PR Settings**.
**Step 2:** On the **Patient Responsibility Settings** page, select the **Phone/Email Support** tab. Three routing options are available:
* **Athelas Support** — the default. Athelas reaches out to patients on your behalf using the Athelas support contact details.
* **Office of Patient's Most Recent Visit** — patients are directed to the office they most recently visited.
* **Custom Contact Info** — patients are directed to a phone number and email address you provide.
**Step 3:** Select **Custom Contact Info** to change the setting away from the Athelas Support default.
**Step 4:** Enter the **Phone number** patients should call and the **Email address** they should write to.
**Step 5:** Select **Update Setting** to save.
✨**Smart Tip:** Use a monitored line — the number and address entered here are what patients see when they have a question about a statement, so point them at a line your team actively monitors during business hours. If the support number changes later, update it here so outgoing statements stay accurate.
### FAQ
Yes. Open the appointment's expanded view, select the shield icon, and use **Charge Override** to set a specific copay, deductible, coinsurance, fixed fee, or self-pay amount. Enter the amount in cents (for example, `1000` for \$10). From that point forward, the override applies to that patient and appointment type going forward.
The rules engine and the Charge Override window both store amounts in cents to avoid rounding errors. Entering a dollar amount instead (for example, `10` instead of `1000`) will apply a recommendation for \$0.10, not \$10.
The Secondary Insurance rule, already configured for your site, sets Copay, Coinsurance, and Deductible amounts to \$0 whenever a secondary payer and secondary member ID are on file. This is because the patient responsibility passed by the primary payer is usually covered by the secondary payer, so no amount is recommended for upfront collection.
**Standard** records a separate charge that stays independent of claim reconciliation. **Self Pay** automatically applies to all encounters (insured or not) and reconciles against the encounter's final patient responsibility. **Add Credits** adds patient account credit instead of a charge. The type cannot be changed after creation — disable the item and create a new one with the correct type instead.
Confirm the rule's priority relative to the other rules that could match the same appointment; the highest-priority matching rule wins. As a starting point, the Out-of-Pocket rule should outrank Prioritize Copay, which should outrank Coinsurance and Deductible. Also confirm the appointment's Service Type and payer mapping under Appointment Rules are correct, since a mismatch there can prevent the right benefits from being evaluated in the first place.
Yes. Under **Automations → Rules**, pick the card for the rule type you need and describe the rule in plain language in the **Build a rule that does…** field. The Athelas Assistant populates the Conditions and Actions, and you review and save the result. See [Build rules with the Rule UI](#build-rules-with-the-rule-ui). Priority still applies exactly as it does for a rule you build by hand.
Open **PR Settings → Phone/Email Support**. The default is **Athelas Support**, which routes patients to the Athelas support contact. Select **Custom Contact Info**, enter your own phone number and email address, then select **Update Setting**.
See [How to Run an Eligibility Check](/insights_front_desk/appointments/how_to_run_an_eligibility_check) for the day-to-day workflow, and the [Patient Eligibility Report](/insights_biller/reports/patient_eligibility_report) to track eligibility results across all patients.
# Getting Started with Your Practice
Source: https://docs.athelas.com/insights_admin/my_practice/getting_started_with_your_practice
Within the *Preferences* section you have the ability to customize and accurately configure several components within Insights, namely:
* **General**
* **Calendar**
* **Waitlist**
* **Portal Configs**
* **Chart Note**
* **Appointment Types**
* **Measurements**
* **Medications**
* **Provider**
* **Insurance**
* **AI**
* **ICD10**
* **Text Snippets**
* **Rooms**
Set up your practice’s preferences through each setting under the Preferences tab:
**General**
* Select options of showing modifiers, justifications, alerts, allow manual calculations, allowing editing by providers
* Specifically for "Dismiss Progress note Alerts", this will allow users to dismiss any alerts related to Medicare or Workers Compensation on the Chart Note
**Calendar**
* Configure your calendar here with duration of each time block in the calendar and start and end time based on Site or facility
**Waitlist**
* Allow patients to join a waitlist or directly schedule
**Portal Configs**
* Defines how far in advance patients can schedule appointments
**Chart Note**
* Set up restrictions to chart note signing based on certain criteria such as Visit Limits or if template validations fail
**Appointment Types**
* Create different appointment types, duration, and coloring on your calendar
**Measurements**
* Create measurements
**Medications**
* Nominate providers to allow them to prescribe uncontrolled substances
**Provider**
* Set up provider credentials and schedules
* Intelligent provider credential tracking with scheduling safeguards to prevent out-of-network bookings and automated note-signing logic to ensure required cosigners are added
**Insurance**
* Add Insurance covered
**AI**
* Set up dot phrases when Air Scribe is documenting within the chart note
**ICD10**
* Select the ICD10 groups you would like to use for your practice
**Text Snippets**
* Text snippets serve as reusable templates or pre-written text blocks that providers can quickly insert into their documentation.
**Rooms**
* Create dedicated spaces for different types of patient encounters or clinical activities
* Help separate different aspects of your practice (e.g., routine visits, urgent care, telehealth)
# Manage Staff & Permissions
Source: https://docs.athelas.com/insights_admin/my_practice/manage_staff_permissions
This guide explains how to manage **who** uses your Athelas practice and **what** they can do. Three building blocks work together to give you precise control:
* **Users** are the individual team members who log in to the platform.
* **Roles** define what a user is allowed to do — which pages they can open and which actions they can perform.
* **Facilities, facility groups, and facility tags** define how your locations are organized, and **facility access** controls which of those facilities a user can see data for.
With these tools, an administrator can invite new team members and configure their access in a single flow, use predefined roles or create custom ones, scope each user to some or all facilities, and organize facilities into nested groups with tags for filtering and reporting.
**Roles** answer *"What can this user do?"* **Facility access** answers *"Whose data can this user see?"* Every user has both — together they form the full picture of what the user experiences in the app.
## Key concepts
### Users (team members)
A **team member** is anyone with a login to your practice. Every team member has:
| **Attribute** | **Description** |
| :----------------------- | :---------------------------------------------------------------------------------------------------------------------------------------- |
| **Full Name** | The user's display name. |
| **Email** | Used to sign in and receive invitations. Cannot be changed after the team member is created. |
| **Phone Number** | For contact purposes only. Not used for two-factor authentication. |
| **Location** | Optional free-text location. |
| **Roles** | One or more roles that determine what the user can do. A team member can hold multiple roles at once. |
| **Facility Access** | Which facilities, groups, or sites the user can see data for. |
| **Provider Credentials** | Optional. Links the team member to a clinical provider record (NPI, license, DOB, Tax ID, Medicare PTAN). |
| **Preferences** | Default Facility, Default Provider, and Default Card Reader. These are convenience defaults for filters — they do **not** control access. |
Team members are managed from **Settings → My Practice → Team Members**.
### Roles
A **role** is a named bundle of permissions, managed in the **Roles** sidebar of the Team Members page. There are two kinds:
* **Managed roles** are built-in roles provided by Athelas. They show a view icon (not an edit icon) and the message *"This role is managed by Athelas. It cannot be edited."* You can assign them and view exactly what they grant, but you cannot edit, rename, duplicate, or delete them.
* **Custom roles** are roles your administrators create. You can rename them, change their permissions, duplicate them, and delete them.
The standard managed roles are:
| **Role** | **Typical use** |
| :------------------ | :----------------------------------------------------------------------------------------------------------------------------------------- |
| **Administrator** | Full access to every feature of the platform, including team and practice administration. |
| **Billing Manager** | Access to billing, claims, denials, revenue reporting, and most operational pages. Cannot manage team members. |
| **Staff** | Day-to-day clinical and front-office work: calendar, patients, appointments, encounters, patient responsibility, virtual cards, templates. |
| **Single Provider** | Limited access for individual providers — primarily claim details, call center, and waitlist. |
When you create a custom role, you start from a **role template** that provides a sensible starting set of permissions. If a user has more than one role, their effective permissions are the **union** of all their roles:
* If **any** of their roles grants access to a page or feature, they have it.
* Removing one role only removes the permissions unique to that role; permissions granted by their other roles remain.
### Permissions
Permissions are organized into a tree, from broad to specific:
```text theme={null}
Permission package
└─ Page permission (a navigable screen, e.g. "Calendar", "Claims")
└─ Feature permission (a control within a page, e.g. "Modify Claim")
```
When you edit a role, the permission tree shows the top two levels in a checklist (left panel). Clicking a page reveals its sub-permissions (right panel), where you can fine-tune individual features.
* Use **Select all** / **Deselect all** at any level to quickly enable or disable an entire branch.
* A partially selected branch shows an indeterminate state — handy for spotting roles that "mostly" cover a section.
* Save your changes when done. The user's view updates after they refresh or log in again.
### Facilities
A **facility** is a physical location that belongs to your site, carrying identifying and billing information used across scheduling, claims, and reporting. Editable fields include **Facility Name**, **Facility NPI**, **Billing Name**, **Group**, **Phone**, **Default POS Code**, **Tax ID**, **Taxonomy Code**, **CLIA License**, and **Address**.
Facilities can be **archived** (reversible) instead of permanently deleted. An archived facility is removed from its group, loses its tags, continues to exist but is hidden from active pickers, and appears in a dedicated **Archived** section where it can be unarchived later.
### Facility groups
A **facility group** is a collection that holds facilities and/or other facility groups — how you express the structure of your practice (regions, divisions, service lines, etc.).
* Groups can be **nested**: a group can have child groups, which can have their own children.
* A facility belongs to **at most one** group. Moving it into a new group removes it from its previous one.
* Group names must be **unique within your site**.
* Granting a user access to a group automatically grants access to every active facility inside that group **and inside any of its descendant groups**.
### Facility tags
A **facility tag** is a label you apply to facilities to **categorize** and **filter** — for example "Pelvic Health", "Self-Scheduling Enabled", or "Pilot Site". A facility can have many tags, and a tag can apply to many facilities. Tag names must be unique within your site.
**Tags do not grant access.** Tags are purely organizational metadata and are never used to determine which facilities a user can see. Access is controlled exclusively by **facility access** assignments on the user. Filtering a page by tag narrows what is visible — it never expands a user's access beyond what their facility access already permits.
### Facility access
**Facility access** is the per-user setting that determines which facility data the user can see across the platform. It is set when you create or edit a team member, as either **All Facilities** or **Specific Facilities**. If you select a group and also select an individual facility already inside that group, the system automatically deduplicates.
### Roles vs. facility access: an example
Imagine your practice has 8 facilities organized into two groups — **North Region** (4) and **South Region** (4) — and a team member, Jordan, who is a regional billing manager for the South Region only. To give Jordan the right access, an administrator would:
1. Create Jordan as a team member.
2. Assign the **Billing Manager** role (this defines *what* Jordan can do — Claims, Denials, Revenue Analysis, etc.).
3. Set facility access to **Specific Facilities** and select the **South Region** group (this defines *which* facilities' data Jordan can see).
Now Jordan can open the Claims page (because of the role), and every page that supports facility filtering shows only the four South Region facilities (because of the facility access). If a fifth facility is later added to the South Region group, Jordan gains access automatically — no edit required.
## Manage team members
Navigate to **Settings → My Practice → Team Members**.
The page has two panels:
* The **Roles sidebar** on the left lists every role on your site, plus an **All Members** entry at the top. Clicking a role filters the table to members who hold it; clicking **All Members** returns to the full list.
* The **main panel** shows the members table with **Search by name or email…**, a **New Member** button, and three columns: **Name / Email**, **Facility**, and **Roles**.
### Add a team member
1. Click **New Member**.
2. Fill out **Basic Info**: **Full Name** (required), **Email** (required, cannot be changed later), **Location** (optional), and **Phone Number** (optional).
3. In **Permission Roles**, select one or more roles from the **Roles** picker. You can search by name and select multiple.
4. *(Optional)* Fill out **Provider Credentials** if the team member is also a clinical provider — choose **Create new provider** (supply NPI, DOB, license, Tax ID, and Medicare PTAN) or **Link to existing provider**. Provider records can also be created on their own, ahead of the invitation: see [Provider Records](/insights_admin/my_practice/provider_records).
5. *(Optional)* Set **Preferences** — Default Facility, Default Card Reader, and Default Provider. These are convenience defaults and do not affect what data the user can see.
6. In **Facility Access**, choose **All Facilities** or **Specific Facilities** (pick particular groups and/or facilities from the tree, using **Select all** / **Deselect all** and search to navigate quickly).
7. Click **Create**.
You will see a confirmation toast, and the new user receives an invitation email at the address you provided.
### Edit a team member
1. Locate the user in the table (use search if needed).
2. Click the **Edit** icon at the end of the row.
3. Change any field (the email is locked). You can add or remove roles, change facility access, link or unlink a provider, and update preferences.
4. Click **Save**.
The change typically takes effect on the user's next page refresh or login. Role changes propagate through the authorization service with a brief synchronization window of a few seconds.
### Remove a team member
1. Click the **Delete** icon at the end of the row.
2. Confirm the deletion in the dialog. This action cannot be undone.
The user is removed from your site immediately.
### Search and filter
* Type a name or email in the **Search by name or email…** box to narrow the table.
* Click any role in the left sidebar to filter to members with that role.
* Combine both to find, for example, all Billing Managers named Smith.
## Manage roles
The **Roles sidebar** is the home for role administration — see every role, search, create new ones, and edit any role not managed by Athelas.
### Create a custom role
1. In the Roles sidebar, click **Create Role**.
2. From **Start from a template**, pick a role template that closely matches the access this role should have.
3. In the **Role Configuration** panel, enter a **Role Name** (e.g., "Front Desk Lead", "Claims Specialist") and confirm or change the **Role Template**.
4. Adjust the permission tree: use the left panel to enable/disable entire packages or pages, click any page with sub-permissions to fine-tune individual features in the right panel, and use **Select all** / **Deselect all** where helpful.
5. Click **Create**. The role is now available in the picker when you create or edit team members.
Changing the **Role Template** of a role discards any custom permission selections you have made. The app asks you to confirm before proceeding.
### Edit or rename a role
1. Hover over the role in the sidebar and click the **Edit** (pencil) icon.
2. Change the name, template, or permissions.
3. Click **Save**.
Every user assigned to the role receives the updated permissions after their next page refresh or login.
### Duplicate a role
Duplicating is the recommended way to create a new role that closely resembles an existing custom role.
1. Hover over the role, open its menu, and click **Duplicate**.
2. The system creates a copy named *"\[Original Name] (Copy)"* with identical permissions.
3. Edit the copy to give it a new name and adjust its permissions.
Athelas-managed roles cannot be duplicated. To build a role similar to a managed one, use **Create Role** and start from the corresponding template instead.
### Delete a role
1. Hover over the role, open its menu, and click **Delete**.
2. Confirm in the **Delete Role** dialog. It shows how many members currently hold the role and warns you if any member would be left with no role.
Deleting a role removes it from every user it was assigned to but does **not** delete the users themselves. Each affected user keeps their other roles; a user who held only this role loses its permissions until you assign them another.
### View Athelas-managed roles
Click any managed role in the sidebar to open it in **view-only** mode. The name field is disabled, the permission tree is read-only, and a banner explains the role is managed by Athelas. You can still see exactly what each managed role grants — useful when deciding which role to assign.
## Manage facilities
Navigate to **Settings → My Practice → Facilities**. The Facilities Manager shows a tree of every facility group and facility on your site: your **facility groups** at the top (with nested child groups and facilities), an **Ungrouped** section, and an **Archived** section at the bottom. The toolbar offers **Search**, a **Tags** button, and an **Add** button.
### Add a facility
1. Click **Add → Facility**.
2. Fill in the **Create Facility** form: **Facility Name** (required), **Facility NPI** (required), **Billing Name** (required; check **Same as facility name** to copy it), **Group** (optional), **Phone** (required), **Default POS Code**, **Tax ID** (9 digits), **Taxonomy Code** (10 characters), **CLIA License** (10 characters if provided), and **Address** (Line 1, City, State, Zip required).
3. Click **Create**.
### Edit a facility
1. Click the **Edit** icon on the facility row, or click the facility name.
2. Change any editable field. The form won't save invalid values (missing required fields, malformed CLIA, etc.).
3. Click **Save**.
To move a facility into a different group, change the **Group** field — the facility automatically leaves its previous group, since a facility can belong to only one group at a time.
### Archive and unarchive facilities
1. Open the facility in the edit drawer and click **Archive**.
2. Confirm in the **Deactivate Facility** dialog. This action can be reversed later.
When archived, the facility is removed from its group, loses all tags, and moves to the **Archived** section. To bring it back, find it in **Archived** and use **Unarchive**.
The Facilities Manager favors **archiving** over permanent deletion. Archiving is reversible and preserves history; permanent deletion is reserved for administrative cleanup and is blocked if the facility has clinical or billing data attached. In normal day-to-day administration, archive is the right choice.
## Manage facility groups
### Create a group
1. Click **Add → Group**.
2. Fill in the **Create Group** form: **Group Name** (required, unique within your site), **Phone Number** (optional), **Parent Group** (optional — pick an existing group to nest under, or leave empty for a top-level group), and **Select child entities** (the facilities and/or top-level groups that should belong to this group).
3. Click **Create**.
**Note:** Child entities must share the same parent to be selected — this prevents accidentally pulling members away from unrelated parents.
### Edit a group
1. Click the **Edit Group** icon on the group row.
2. Rename the group, change its parent, or add/remove member facilities and child groups.
3. Click **Save**.
The system blocks moves that would create a cycle in the hierarchy, and rejects a name that already exists on your site (case-insensitive, ignoring spaces).
### Move facilities between groups
You can move facilities three ways, and in every case the facility leaves its previous group automatically:
* Edit the **facility** and change its **Group** field.
* Edit the **destination group** and add the facility to **Select child entities**.
* From the destination group's row, use **Add to group** to open facility creation with the group preselected.
### Delete a group
1. Open the group in edit mode and click **Archive**.
2. Confirm in the dialog. Its facilities are reassigned to the group's parent, or become **ungrouped** if the group had no parent.
When a group is deleted, its child groups are reparented to its own parent (or become top-level), and its facilities are reassigned to its parent group or become **ungrouped**. Facilities themselves are **never deleted** as part of group deletion.
### Group hierarchy rules
* **No cycles.** A group cannot be its own ancestor.
* **Unique names per site.** No two active groups can share a name.
* **One group per facility.** Adding a facility to a new group removes it from any prior group.
## Manage facility tags
Tags are managed in a dedicated **Tags** drawer, separate from the main facility tree. Click the **Tags** button in the Facilities toolbar to open **Manage Tags**, which shows each tag and the number of facilities it applies to.
### Create a tag
1. Click **Add → Tag**.
2. Fill in the **Create Tag** form: **Tag Name** (required), **Description** (optional), and **Select entities to tag**.
3. Click **Create**.
The new tag appears in **Manage Tags** and as a pill on each tagged facility's row.
### Edit a tag
1. Open the **Manage Tags** drawer and click the tag.
2. Change its name, description, or which facilities it applies to.
3. Click **Save**.
Renaming a tag updates the label everywhere; the set of tagged facilities is unchanged.
### Remove a tag or delete it
* **Remove from a facility:** open the tag in **Edit Tag**, deselect the facility in **Select entities to tag**, and **Save**. Other tagged facilities are unaffected.
* **Delete the tag entirely:** open the tag in **Edit Tag** and click **Delete**, then confirm. The label is removed everywhere; the facilities themselves are unchanged.
## Common scenarios
* **New front-desk user at a single clinic** — New Member → enter name and email → assign the **Staff** (or appropriate) role → **Facility Access → Specific Facilities**, select the single facility → **Create**.
* **Regional billing manager** — New Member → assign the **Billing Manager** role → **Facility Access → Specific Facilities**, select the regional group → **Create**. When facilities are added to or removed from the region later, access updates automatically.
* **A "Claims Only" custom role** — Roles sidebar → **Create Role** → start from a billing/claims template → name it "Claims Only" → **Deselect all**, then enable only the **Claims** page and its needed sub-features → **Create** → assign to the relevant users.
* **Give a user multiple roles** — open the user, add an additional role in the **Roles** picker (e.g., *Staff* + *Claims Only*), and **Save**. The user gets the union of both roles' permissions.
* **Reorganize facilities into regions** — Facilities → **Add → Group** to create parent groups, optionally add nested sub-regions, then set each facility's **Group**. Review the facility access of anyone tied to the old structure.
* **Tag facilities offering a specialty service** — Facilities → **Tags → Add → Tag** → name it (e.g., "Pelvic Health") → select the facilities → **Create**. The tag becomes available as a filter wherever facility filtering is supported.
## Glossary
| **Term** | **Meaning** |
| :--------------------- | :---------------------------------------------------------------------------------------------------------------------------- |
| **Team Member / User** | An individual with a login to your practice. |
| **Role** | A named bundle of permissions assigned to one or more users. |
| **Managed Role** | A built-in role provided by Athelas. Read-only — can be viewed and assigned, but not edited, renamed, duplicated, or deleted. |
| **Custom Role** | A role created by your administrators. Fully editable and removable. |
| **Role Template** | A pre-built starting point for a custom role. |
| **Permission** | A single allowed action — to access a page or use a feature within a page. |
| **Page Permission** | Controls whether a user can navigate to and view a page. |
| **Feature Permission** | Controls whether a user can use a specific button, tab, or control inside a page. |
| **Facility** | A physical location belonging to your site. |
| **Facility Group** | A hierarchical container holding facilities and/or other groups. A facility belongs to at most one group. |
| **Facility Tag** | A flat, many-to-many label used to categorize facilities. Does not grant access. |
| **Facility Access** | The per-user setting that determines which facilities' data the user can see (*All Facilities* or *Specific Facilities*). |
| **Site** | The top-level container for a practice. Users, facilities, groups, tags, and roles all belong to a single site. |
| **Ungrouped** | Facilities not assigned to any group. |
| **Archived** | A facility or group that has been deactivated. Reversible, preserves history, hidden from active pickers. |
### FAQ
Yes. A user can hold any number of roles at once. Their effective permissions are the **union** of all their roles — if any role grants access to a page or feature, they have it.
Yes. Permissions and facility access are configured independently. Assign the **Administrator** role (or any role you like) and set **Facility Access** to **Specific Facilities** with only the facilities they should see.
Yes. Granting access to a group grants access to every active facility inside that group and inside all of its descendant groups. If a facility is later added to the group, the user gains access automatically.
Administrator and the other Athelas-managed roles are maintained by Athelas so they stay correct as new features ship. To customize, use **Create Role**, start from the matching template, and edit that new custom role instead.
The role is removed from those users, but the users themselves are not deleted. Each keeps any other roles they had; a user who held only the deleted role loses its permissions until you assign them another.
Most changes apply on the user's next page refresh or login. Role changes propagate through the authorization service, which can take a few seconds. If a user doesn't see the change, ask them to refresh or sign out and back in.
# Provider Records
Source: https://docs.athelas.com/insights_admin/my_practice/provider_records
A **provider record** is the billing identity behind a clinician: their own NPI, tax ID, state license, and Medicare PTAN. Claims are built against that record, so every clinician who renders billable care needs one before their charges go out.
Provider records live on the **Providers** tab of **My Practice**, listed under **Active** and **Inactive**.
## A provider record is not a login
A provider record and a team member are two different things, and adding one does not create the other:
| | **What it is** | **Where you manage it** |
| :------------------ | :------------------------------------------------------------- | :---------------------------------------- |
| **Provider record** | The clinician's billing identity — NPI, tax ID, license, PTAN. | **Settings → My Practice → Providers** |
| **Team member** | A user account that signs in, with roles and facility access. | **Settings → My Practice → Team Members** |
A clinician who both signs in and bills needs both. You can create the pair in either order:
* Add the provider record first, then link it when you invite the team member — the **Provider Credentials** step of the **New Member** form offers **Link to existing provider**.
* Or create both at once from that same step, with **Create new provider**.
See [User Management](/air_admin/manage_your_practice/user_management) for team members, roles, and facility access.
## Add a provider
**To add a provider record:**
1. Go to **Settings → My Practice** and open the **Providers** tab.
2. On the **Active** tab, **click** **+ Add New Provider** in the top right.
3. Fill out the **Add Provider** form. Every field carries a red asterisk except **PTAN**.
4. **Click** **Confirm**.
### What each field is for
| **Field** | **What to enter** |
| :---------------------------- | :------------------------------------------------------------------------------------------------------------- |
| **First Name**, **Last Name** | The clinician's legal name, as it should appear on a claim. |
| **Date of Birth** | The clinician's date of birth. |
| **Phone**, **Email** | Contact details for the provider record. |
| **Individual NPI Number** | The clinician's own 10-digit NPI, not your organization's group NPI. |
| **TIN/SSN** | The tax identification number the clinician bills under. |
| **License Number** | The state license number. |
| **PTAN** | The Medicare Provider Transaction Access Number. Optional — leave it blank if the clinician does not have one. |
Check the **Individual NPI Number** and **TIN/SSN** before you confirm. Both travel onto every claim for this clinician, so a typo here turns into payer rejections later rather than an error on this form.
## Find a provider
Use **Search Keyword** above the list to find a provider by name. The **Active** and **Inactive** tabs split the list, so a provider you cannot find under **Active** is worth checking under **Inactive** before you add a second record for the same clinician.
## Things to know
* **One record per clinician.** A duplicate record splits that clinician's claims and reporting across two identities.
* **Credentialing is separate.** The record holds the identifiers; payer enrollment and credentialing status are tracked in [Provider Credentials](/air_admin/manage_your_practice/provider_credentials).
* **Calendar and signature settings are separate too.** Availability, scheduling, and signature preferences live in [Provider Settings](/air_admin/manage_your_practice/provider_settings).
* **Controlled substances need one more step.** Prescribing them requires the registration covered in [Register Providers for Rx](/air_admin/manage_your_practice/register_providers_rx).
### FAQ
No. A provider record is a billing identity, not a user account. To let that clinician sign in, invite them as a team member and link the record at the **Provider Credentials** step. See [User Management](/air_admin/manage_your_practice/user_management).
The clinician's own individual NPI. Your organization's group NPI belongs on the practice record, not here.
Leave **PTAN** blank. It is the only field on the form that is not required.
Check the **Inactive** tab. Adding a second record for the same clinician splits their claims history, so confirm the record is genuinely missing first.
Questions about a provider record? Reach out to your account team or [support@getathelas.com](mailto:support@getathelas.com).
# Update Practice Information
Source: https://docs.athelas.com/insights_admin/my_practice/update_practice_information
Keep your practice's details and hours current from **Settings**.
## Update practice details
Go to **Settings → My Practice** and open the **Practice Details** tab to update your practice information.
## Set your business hours
Go to **Preferences → Calendar Settings** and select **Site** to set your practice's business hours.
# Your Athelas Invoice
Source: https://docs.athelas.com/insights_admin/my_practice/your_athelas_invoice
#### At a Glance
You’ve received an invoice from Athelas and now you’re wondering what it all means. Read on!
#### Invoice Overview
This is the summary of total insurance remittances and SmartPay charges.
#### Remittance Invoice Breakdown
This is a detailed list of insurance remittances *posted* during the invoiced month.
#### SmartPay Invoice Breakdown
This is a detailed list of all SmartPay collections *posted* during the invoiced month, broken down by billable transactions and non-billable transactions.
Billable SmartPay charges come from any patient responsibility collected via text message or email payment link.
# Measuring Performance
Source: https://docs.athelas.com/insights_admin/reporting/measuring_performance
Sites are able to check specific important KPIs that pull from Air on the Performance Analysis tab. This tab shows high level data on clinical outcomes and practice health.
With filters for dates, facilities and providers:
With Card level filters:
Based on various performance metrics, you can calculate Bonuses for your staff
**Configuration**
To get started with the Payroll Bonus Report, click `Configure` once in the My Reports tab
Set the parameters for each category for consideration in awarding bonuses:
* **Visit Type**
* Encounter or Appointment
* **Visit Weight**
* All Equally Weighted or Custom
* **Entity Level**
* Provider or Facility
* **Qualifying Days**
* Which days will count towards a bonus
* **Benchmark Type**
* Set a benchmark number of visits per day to measure expected versus actual productivity.- Apply Same Benchmark for All Entities, or Set Unique Benchmark per Entity.
* **Bonus Type**
* This will determine how bonuses are calculated. For example, Bonus/Visit means that bonuses will be based on the number of visits over the benchmark.
* Click the Bonus Type info button for more details.
Once you’ve configured everything as you like, click `Complete`.
Then, click the download icon, select a date range, and click `Download`.
Now, you can open the downloaded CSV file and view or manipulate the data.
# The Denials Analysis Page
Source: https://docs.athelas.com/insights_biller/analytics/the_denials_analysis_page
## At a Glance
The goal of the [Denials Analysis](https://insights.athelas.com/v2/payment/denials-analysis) page is to give your practice clear, accurate, and prompt visibility into denials metrics.
With this information, you can track how your practice and Athelas are working together to minimize denials over time, as well as the amount of revenue recovered through successful claim resubmission.
## Information Available in Denials Analysis
### Overview
In the top left corner of the page, you will find a **calendar filter** that you can adjust to only see denials from a specific time frame.
Below that, the page features overall metrics of Denials Resubmitted, Resubmitted Payments Recovered, and the Finalized Denial Rate. The industry standard denial rate is 11%, so anything below that means you are recovering more money from denials than the average.
The Denials Analysis page focuses on trend visibility over time.
### Finalized Denial Rate
On this bar graph, you can see your practice’s monthly denial rate—the percentage of all encounters at the Finalized or Patient stage that were denied. Hover your cursor over one of the bars to see that month’s exact denial rate. The dotted red line marks the aforementioned 11% industry standard denial rate.
### Resubmitted Payments Recovered
This bar graph shows exactly how much money you have recovered from denials with Athelas—the insurance payments collected by resubmitting and appealing claims that were previously denied, totaled over time.
Hover your cursor over a bar for details.
### Denials Resubmitted
This graph shows how many denials have been edited and resubmitted. This will give your practice a better picture of the work Athelas is doing behind the scenes that may not otherwise be apparent.
In the top right corner, use the period selector to switch between **Month** and **Week** results.
To **resubmit a single claim**, please refer to [Getting Started with the Claims Page](/insights_biller/claim_details/claim_details_page).
To **resubmit claims in bulk**, check out [this one](/insights_biller/claim_details/how_to_resubmit_claims_in_bulk).
## Looking for More Data?
If you’d like to see another denials metric displayed on this page, please get in touch with your account manager! We will work with you to get you what you need.
## Further Assistance
We’re here to help! Please get in touch with [support@getathelas.com](mailto:support@getathelas.com) if you’d like some hands-on assistance.
# The Revenue Analysis Page
Source: https://docs.athelas.com/insights_biller/analytics/the_revenue_analysis_page
#### At a Glance
The Revenue Analysis page in Insights allows you to view overall figures and trends in your practice’s collections, as well as the ability to filter results down to individual dates, payers, facilities, or providers.
When you know exactly how much revenue is generated over specific time periods from either aggregate or individual providers, payers, and even CPT codes, you can optimize your practice’s resources, spot red flags more quickly, and improve the overall financial health of your organization.
## Features of the Page
#### By the Numbers
At the top of the Revenue Analysis page, you will see these four tiles. By default, they will be filtered to show results from the previous 31 days, though you can adjust the date range by clicking on the calendar icon.
* **Total Payments** — This number shows the sum of all payments from payers and patients for the given date range. You can see how it compares both in percentage and real dollars to the previous period.
* **Median Time to Decision** — This number shows the median number of days from date of service to payer decision for a given time period. You can see how that time lapse compares to that of the previous period.
* **Insurance Paid Rate** — The higher the better. This number shows the percentage of claims successfully paid, as well as how that number compares with the previous period.
* **\$ Paid Per Encounter** — The average dollar amount paid to your practice per patient encounter.
Each section that follows has a ‘**Download CSV**’ button in the top right corner. Use this if you would like to analyze the raw data in Excel, Google Sheets, or some similar spreadsheet.
### Monthly Revenue
This bar chart shows the combined amounts paid by insurers and patients each month, split into **Insurance Paid** and **Patient Paid**. By default it shows results by date posted, though you can switch to **Check Date** or **Date of Service** using the selector in the top right.
Comparing months by Date of Service versus Date Posted can help you surface trends over time. For example, if you notice a widening gap between services rendered and payments posted month to month, you can use that information to find the root cause. This may involve improving PR collection strategies at the front desk, or contacting payers that have fallen behind on reconciliations.
### Payments by Segment
The Payments by Segment tool allows you to analyze how much total revenue is generated over a period of time by individual providers, facilities, insurance companies, CPT codes, line items, and users.
Having these kinds of real-time metrics at your fingertips allows you to pinpoint, for example, which providers or new CPT codes are either underperforming or doing particularly well, so that you can highlight effective practices to your team and focus assistance where it is needed most.
### Patient Responsibility
This shows the total PR collected over a given time period, divided into three categories:
* **SmartPay** — Payments made through patient payment portals, those made through saved cards, and those made via digital reminders are all considered SmartPay.
* **Athelas card reader** — Payments collected through your Athelas card reader.
* **External** — Any cash, check, or other kinds of payments will be recorded here.
Keep an eye on any unexpected dips in PR collection. This can signal a need for some greater effort to collect outstanding PR.
### Front Desk Collections
Ideally, all PR would be collected at the front desk on the date of service, though it is common knowledge that this is not a realistic expectation.
The Front Desk Collections section provides both the total percentage of PR collected and uncollected. The **Segments** view breaks performance down **By Facility** or **By Provider**, while the **Weekly** view can be filtered by facility, provider, and user.
Again, you can use this information to highlight effective practices to your team and troubleshoot underperformance.
### Claims Waterfall
The claims waterfall section details how many encounters turn into paid claims at your practice, and the amount of attrition at each step of that process. From left to right, for each adjustable time period, you can see:
* The total number of encounters (**# Encounters**)
* How many resulted in a claim submission (**# With A Submission**)
* How many were reconciled (**# With A Reconciliation**)
* How many received a payer decision (**# With A Decision**), and finally
* How many resulted in an insurance payout (**# With An Insurance Payout**)
Using this graph can show you which stage of the process results in the greatest claims drop-off, empowering you to zero in on root issues more quickly.
### Reconciliation Speed
This chart specifically shows payers’ submitted claims versus reconciled claims. This can be a great indicator of red flags when analyzed.
In this example, we can see that while 96 claims were submitted to UB-Anthem Blue Cross California, only 14 have been reconciled in the given date range. Discrepancies like this would warrant a closer look—it would be wise to ensure that the rules engine is working properly for these claims, for example.
### First Pass Rate
Achieving and maintaining a high first pass rate is the gold standard at Athelas. Claims that are submitted and approved in one fell swoop are indicators that our rules engine is working properly, claims are submitted on time, and everyone is happy.
If you notice your first pass rate dips significantly, talk to your account manager and we’ll see what’s going on with the rules engine.
### Insurance Paid Rate
This chart shows the percentage of claims with an insurance payout. Watching for dips in percentage here can alert you to some new rule or protocol by a payer that we need to address in the rules engine, for example.
### Medicare Fees Rate
This chart compares your insurance payout against the Medicare fee schedule, grouped by encounter date of service, giving you a rough benchmark of how your reimbursement rates compare with Medicare’s. Note that this ratio is an estimate, and the Medicare fees are not adjusted for your facility’s location.
*Availability: the Medicare Fees Rate chart is enabled for select accounts. If you’d like it turned on, reach out to your account manager.*
### Further Assistance
We’re here to help! Please get in touch with [support@getathelas.com](mailto:support@getathelas.com) if you’d like some hands-on assistance.
# Create a Rule (Beta)
Source: https://docs.athelas.com/insights_biller/automations/create_a_rule
### At a Glance
When your practice keeps correcting the same field on the same kind of claim, that correction belongs in a rule. This guide covers the three ways to build one: describe it in plain language and let Athelas Assistant draft it, clone a rule that is already close to what you need, or build each condition and action yourself.
For how to read, search, edit, and dry run the rules you already have, see [The Rules Tab](/insights_biller/automations/the_rules_tab).
Rule creation is in beta and is not yet live for every practice. If you do not see **+ New Rule** on the Rules tab yet, contact your account manager for access.
## Open the Rule Builder
Go to **Automations → Rules**, open the rule engine you want to add to, then click **+ New Rule** in the top right.
The engine you start from sets the new rule's **Rule Type**, and that field is fixed once the builder opens. To build a rule of a different type, start from that engine's tab instead.
## Three Ways to Build a Rule
The **Create New Rule** screen asks what you want to build and gives you three routes to the same builder.
| **Approach** | **When to use it** |
| :------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **With AI** | Describe the rule in plain language in the prompt box and let Athelas Assistant draft the conditions and actions for you. Best when you know the outcome you want but not which fields express it. |
| **Clone a rule** | Start from an existing rule that is close to what you need, then change what differs. Best when a rule already works for one payer, site, or code set and you need a variant. |
| **Create a rule manually** | Build each condition and action yourself, field by field. Best when you know exactly which fields you want and how they combine. |
## What Every Rule Contains
Whichever route you take, you land in the same builder and fill in the same parts:
| **Section** | **What you set** |
| :-------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **General** | **Rule ID**, **Site**, **Rule Type**, **State**, and **Priority**. New rules start in **Draft**. |
| **Description** | **Reason for rule** and **Explanation of rule**. Both are required, so every rule explains itself to whoever reads it months from now. |
| **Conditions** | What must be true for the rule to fire. Add conditions one at a time or in groups, and set the operator to decide whether **ALL** of them or **ANY** of them must be satisfied. |
| **Actions** | What happens once the conditions are met. One rule can trigger more than one action off the same set of conditions. |
## Build a Rule with AI
Instead of assembling conditions field by field, type what you want into the prompt box and click **Send**.
For example, you could describe:
* "Block claims from submitting if the rendering provider's NPI is missing."
* "Flag any claim over \$5,000 for manual review before it goes out."
* "When a claim is denied for a missing modifier, automatically route it to the Appeals queue."
Your description runs through a few checks before anything reaches the builder:
* **Everything is verified to exist.** Every condition, data point, and action you ask for is checked against what the system actually supports. If something is not available, you are told rather than handed an approximation.
* **Ambiguity gets resolved.** The assistant picks the condition type that matches what you actually mean, for example whether a value simply needs to be present or needs to occur in combination with something else.
* **Scope stays where you put it.** Conditions and actions stay within the object type they belong to, so a rule cannot quietly reach beyond what you asked it to touch.
Review and adjust the draft before you submit it. AI-drafted rules go through the same approval step as rules you build by hand.
## Build a Rule by Cloning
Choose **Clone a rule** to start from something that already works.
You can point at the source rule two ways:
* **By ID.** Find the rule's ID in the top left of the rule you want to copy, then select it from **Select Rule ID**.
* **By URL.** Copy the rule's URL from your browser, or use the link button at the top of the rule, then paste it into **Rule URL**.
Either way, the panel previews the source rule's full **Structure**, its trigger, conditions, and actions, so you can confirm you grabbed the right one. Click **Continue** and the clone opens as a new draft with those conditions and actions already filled in. Give it its own ID and description, change what differs, then save.
## Build a Rule Manually
Choose **Create a rule manually** to work through the builder section by section.
**To build a rule from scratch:**
1. Fill in **General**: give the rule an **ID**, pick the **Site** it applies to, and set a **Priority**. **Rule Type** is already filled in from the engine you started in, and **State** starts as **Draft**.
2. Write the **Description**: the **Reason for rule** and the **Explanation of rule**. Both are required.
3. Add your **Conditions**. Use **+ Condition** for a single test and **+ Group** for a nested set, then set the operator on each level to **ALL** or **ANY** to control how they combine.
4. Add your **Actions** with **+ Action**. Add more than one if the same conditions should produce several outcomes.
5. Click **Save**. The rule is saved as a **Draft**.
✨**Smart Tip:** Click **Athelas AI** in the top right to keep Athelas Assistant open beside the builder. You can ask it what a specific condition does without losing your place, which beats saving a draft and going looking for an example.
**Note:** Prefer to work in code? Click **JSON** to paste conditions and actions in directly instead of setting each field one at a time.
## Before Your Rule Goes Live
Saving a rule does not activate it. Two things happen first, and both are worth using deliberately:
1. **Dry run it.** Replay the rule against real records to see which conditions match and exactly which fields it would change, without touching anything. See [Dry Running a Rule](/insights_biller/automations/the_rules_tab#dry-running-a-rule-before-it-goes-live).
2. **Send it for approval.** Every rule, whether you drafted it with AI or built it by hand, goes through an approval step before it takes effect.
A rule that has passed review can still be switched off. After approval, confirm **Rule Status** reads **Active** and check **Rollout Cap** in the rule's **Properties** panel, because a rule on a phased rollout only touches part of your volume until it reads **Fully Released**.
### FAQ
No. New rules save in **Draft**, and every rule goes through an approval step before it takes effect. Dry run it first so you know what it would do, then send it for approval.
Yes. A single rule can trigger several actions off the same set of conditions. Use **+ Action** to add each one rather than building a separate rule per action, which keeps the conditions in a single place if they ever need to change.
Every condition, data point, and action you describe is checked against what the system actually supports before it reaches the builder. When something is not available, you are told outright instead of being handed a close-enough approximation that would quietly behave differently from what you asked for.
Rephrase using data the rule can see, or clone an existing rule that already tests something similar to find the supported equivalent.
Yes, **Reason for rule** and **Explanation of rule** are both required. The reason captures why the rule exists and the explanation captures what it does in practice. Together they are what makes a rule readable to the next person who opens it, including you in six months.
Yes. Click **JSON** in the builder to enter conditions and actions directly. It is the fastest route when you already have the logic written out, or when you are recreating a rule from another site.
# Encounter Rules
Source: https://docs.athelas.com/insights_biller/automations/encounter_rules
### At a Glance
**Encounter rules** run while encounters are being imported, before any of them becomes a claim. They handle the corrections and exclusions your practice would otherwise make by hand on every visit: setting a place of service from an appointment type, filling in a rendering provider, or keeping a scheduling placeholder out of your billing data entirely.
They apply to encounters imported from a third-party EHR and to encounters created in Air, so one rule covers both paths into your billing data.
Find them under **Automations → Rules**. Their rule IDs carry the `ENM-` prefix, so an ID alone tells you the rule is an encounter rule.
## Two Kinds of Encounter Rule
| **Kind** | **What it does** | **Engine** |
| :------------ | :---------------------------------------------------------------------------------- | :---------------------- |
| **Modifying** | Updates a field on the encounter when your conditions are met. | **Encounter Modifying** |
| **Blocking** | Keeps a matching encounter out of your billing data, so it never generates a claim. | **Encounter Blocking** |
### Modifying rules
A modifying rule corrects data on the way in, once, instead of leaving the same fix to whoever works the claim later.
**Example.** Your practice books at-home telehealth visits under an appointment type called **Telehealth Home**. A modifying rule sets the place of service code whenever it sees that appointment type, so nobody has to remember to change it per visit.
Practices most often use modifying rules to:
* Set a place of service code from the appointment type.
* Fill in rendering provider details for a known scenario.
* Apply a default modifier to certain CPT codes.
* Correct a data inconsistency their EHR produces every time.
### Blocking rules
A blocking rule keeps encounters that should never be billed from reaching your claims work at all, which is cheaper than filtering them out downstream.
**Example.** Your practice holds provider calendar time with a placeholder patient named **Schedule Block**. Those appointments are never real visits, so a blocking rule stops any encounter for that patient from being imported.
Practices most often use blocking rules to:
* Exclude scheduling placeholder patients.
* Exclude no-shows that were never cancelled.
* Filter out administrative appointment types.
* Keep duplicate encounters out.
## Creating an Encounter Rule
Encounter rules are built in the same rule builder as every other engine, so the mechanics are covered once elsewhere:
* **[Create a Rule](/insights_biller/automations/create_a_rule)** — the three routes into the builder (describe it in plain language, clone an existing rule, or build it field by field), what every rule contains, and the dry run and approval steps a rule clears before it goes live.
* **[The Rules Tab](/insights_biller/automations/the_rules_tab)** — reading the rules table, what **Priority**, **Type**, **State**, and **Status** each mean, and how to search and edit what you already have.
Two things are worth knowing before you start:
* **The engine you start from fixes the rule's type.** Open the **Encounter Modifying** or **Encounter Blocking** engine first, because **Rule Type** cannot be changed once the builder opens.
* **Saving does not activate.** A new rule saves as a **Draft** and goes through an approval step, so you can write one without affecting live data.
✨**Smart Tip:** Describe the rule the way you would explain the problem to a colleague — "block all encounters for patient Schedule Block", or "set place of service to telehealth when the appointment type is Telehealth Home". A description that names the trigger and the outcome gives the assistant everything it needs to draft the conditions.
## Global and Local Rules
The rules list mixes two kinds of ownership:
* **Global** rules are maintained by Athelas across every site and handle common scenarios. You cannot edit them.
* **Local** rules belong to a single site. Your practice creates them and controls them.
Set a **Priority** on every rule you create for your own site. A rule saved without one can end up outside your control, and the fix is not something you can apply yourself — contact your account team if that happens.
## Things to know
* **Rules apply going forward.** An encounter rule affects encounters imported after the rule goes live, not the ones already in your data. Ask your account team about options for existing encounters.
* **Clone before you rebuild.** If a rule is close to what you need, select it in the list and use **Clone** rather than starting over, so the conditions you already trust carry across.
* **Blocking is not deleting.** A blocked encounter never enters your billing data. The encounter still exists in your EHR, which remains the source of truth.
### FAQ
Dry run it before it goes live — that replays the rule against real records and shows exactly which encounters match and what would change, without touching anything. After it is live, watch the encounters that meet your conditions. See [Dry Running a Rule](/insights_biller/automations/the_rules_tab#dry-running-a-rule-before-it-goes-live).
Yes. A rule's **Status** is separate from whether it exists, so a rule can sit **Inactive** and be switched back on later. See [The Rules Tab](/insights_biller/automations/the_rules_tab).
**Priority** decides the order rules run in. [The Rules Tab](/insights_biller/automations/the_rules_tab) explains how the ordering reads, which is worth checking before you set a priority by guess.
A blocking rule keeps the encounter out of your billing data in the first place, so it never reaches a worklist and nobody spends time deciding what to do with it. Declining to bill an encounter that was already imported is a decision somebody has to make every time it appears.
Questions about an encounter rule, or want one reviewed before it goes live? Reach out to your account team or [support@getathelas.com](mailto:support@getathelas.com).
# The Rules Tab
Source: https://docs.athelas.com/insights_biller/automations/the_rules_tab
### At a Glance
Every claim, encounter, and payment that moves through Insights passes through rules: small IF/THEN decisions that clean up data before it reaches a payer, block submissions that would be rejected, and route work to the right place. The **Rules** tab puts all of them in one table, described in plain language, so you can see what your practice automates without reading code or opening a separate screen for every engine.
Find it under **Automations → Rules**, then choose the rule engine you want to look at.
The Rules tab is still rolling out. If you do not see **Automations → Rules** in your sidebar yet, contact your account manager for access.
## What Is a Rule?
A rule is a single **IF these conditions are true, THEN take one or more actions** statement. One rule can fire several actions off the same set of conditions.
Rules are grouped and run by a **rule engine**, the system that evaluates each rule in order and applies the ones that match. Each engine has its own tab under **Rules**. Engines you are likely to see include:
| **Rule engine** | **What it governs** |
| :---------------------- | :------------------------------------------------------------------------------------------------------------------------------ |
| **Billing** | Changes applied to a claim as it is built for a payer, such as routing, modifiers, and code substitutions. |
| **Submission blocking** | Checks that hold a claim back from submission until someone reviews it. |
| **Encounter modifying** | Changes applied to an encounter before it becomes a claim. See [Encounter Rules](/insights_biller/automations/encounter_rules). |
| **Adjustments** | Changes applied to a procedure's balance after a payment posts. |
| **Appointments** | Logic that runs against appointments and scheduling data. |
Every rule ID carries a prefix for the engine that owns it, so an ID alone tells you where a rule lives: `CLM-1716` is a Billing rule, `PCL-561439` is a Submission blocking rule, `ADJ-434765` is an Adjustments rule, `ENM-818753` is an Encounter modifying rule, and `APT-219096` is an Appointments rule.
Rules are a subset of automations. An automation is an end-to-end pipeline (a trigger, then steps, then an outcome). A rule is one self-contained decision inside that pipeline.
## Reading the Rules Table
Two tabs sit above the table. **All Rules** shows every rule at your practice for the selected engine, with a running count, and **Active Rules** narrows the list to the ones currently in effect.
Here is what each column tells you:
| **Column** | **What it shows** |
| :------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **PRI** | Priority, meaning the order a rule runs in relative to other rules of the same type. Rules run in ascending order, so a lower number runs earlier. A rule with no priority set runs first, then 0, then 1, and so on. |
| **ID** | The rule's unique identifier, prefixed by its rule engine. |
| **Type** | **Global** for a rule Athelas maintains across all sites, or **Local** for one built for a single site. |
| **Site** | Which site a **Local** rule belongs to. **Global** rules show a dash, because they apply everywhere. |
| **State** | Where the rule sits in review: **Passed**, **Published**, **Pending**, or **Failed**. |
| **Status** | Whether the rule is currently **Active** or **Inactive**. |
| **Name** | A short plain-language title for the rule. An **AI** badge means the title was generated from the rule's logic rather than typed by hand. |
| **Actions** | A plain-language summary of what happens when the rule's conditions are met. |
| **Conditions** | A plain-language summary of what must be true for the rule to fire. |
| **Assignee** | An avatar for the person who created the rule. |
✨**Smart Tip:** **State** and **Status** answer different questions. **State** tells you whether a rule cleared review, and **Status** tells you whether it is running right now. A rule can be **Passed** and still **Inactive**.
### Adjusting Your View
Open **Display** to reshape the table around how you work.
It gives you four controls:
* **Board or List** switches between a column board and the standard table.
* **Ordering** sorts the table by a property such as **Priority**, and the button beside it flips between ascending and descending.
* **Grouping** breaks the list into sections by a property, or leaves it flat with **None**.
* **Display Properties** turns individual columns on and off.
**Turn off the columns you do not need** so the table stays readable:
**Group rules** to break a long list into sections you can scan:
**Filter** so the table shows only the rules you care about:
### Searching for a Rule
Click the magnifying glass to search. You can find a rule two ways: by its **ID**, or by its **name**.
## Inside a Rule
Click any row to open the rule. The **Controls** panel on the left holds four sections:
| **Section** | **What it shows** |
| :-------------- | :---------------------------------------------------------------------------------------------------------------- |
| **Description** | Why the rule exists and what it does in practice, split into **Reason for the rule** and **Explanation of rule**. |
| **Conditions** | What must be true for the rule to fire. |
| **Actions** | What happens once those conditions are met. |
| **Activity** | The rule's full history: who created it, every edit since, and a version link for each change. |
Conditions and actions are laid out as a **Structure** you can read top to bottom:
* **Trigger** states the moment the engine runs, for example "a claim is generated or verified for submission."
* **Conditions: When** gives the plain-language test, then the underlying logic as nested **ALL** and **ANY** groups of individual conditions.
* **Actions: Then** gives the plain-language outcome, then the specific action the rule applies.
An **AI Generated** badge marks any summary written from the rule's logic. It is there so a condition built out of regular expressions still reads as a sentence. The precise logic always sits directly beneath it.
### The Properties Panel
The **Properties** panel on the right shows the rule's current settings at a glance.
* **Priority** and **Type** are the same values shown in the table.
* **State** is the rule's review status, for example **Passed**.
* **Rule Status** is whether the rule is **Active** or **Inactive**.
* **Rollout Cap** shows how much of your volume a rule currently touches, or **Fully Released** once it applies to everything.
* **Last Updated** shows when the rule last changed and who changed it.
### Comparing Versions
The dropdown beside the rule ID in the breadcrumb lists every version of the rule. Use it to compare what changed between versions and to confirm which version is the one running today. The same version links also appear in the **Activity** section.
## Editing a Rule
**Prerequisite:** You need edit permissions for the site or the rule engine the rule belongs to.
**To change an existing rule:**
1. Open the rule from the Rules table.
2. Click **Edit**. The rule opens as **Draft an update to Rule**, followed by its ID.
3. Update what you need:
* **General** holds **State**, **Priority**, and the **Active** toggle. **Rule ID** and **Rule Type** are fixed and cannot be changed here.
* **Description** holds **Reason for rule** and **Explanation of rule**. Both are required, so a rule always explains itself to whoever reads it next.
* **Conditions** and **Actions** hold the logic itself.
4. Click **Save**.
✨**Smart Tip:** Click **Athelas AI** at any point while editing to open Athelas Assistant, then ask it to explain the rule you are looking at. It will break the conditions down in plain English, which is the fastest way to confirm a rule does what you think before you change it.
**Note:** Use **JSON** to view or paste the rule's conditions and actions directly, instead of setting each field one at a time.
## Dry Running a Rule Before It Goes Live
A dry run replays a rule against real records and shows you exactly what it would have done.
A dry run makes no changes to your environment. Nothing is saved, submitted, or posted.
**To dry run a rule:**
1. Open the rule and click **Dry Run**.
2. Choose your scope:
* **Only This Rule** tests the rule on its own, so you see its conditions and its changes in isolation.
* **All \[Rule Type] Rules**, for example **All Submission Blocking Rules**, tests your draft alongside every other active rule in the same category, so you can see how it interacts with rules that are already live.
3. In **Controls**, open the entity tab that matches the rule type, such as **Claim Submissions IDs** for a billing rule or **Encounters IDs** for an adjustment rule. Search for the records you want to test against and add them with **+**.
4. Click **Continue**.
Testing a single rule shows you the conditions that matched, the action it took, and the exact fields it changed:
Testing against every rule in the category adds a **Rules** list, so you can see your draft in the context of the rules already running:
### Reading Dry Run Results
| **What you see** | **What it means** |
| :-------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------- |
| **Triggered** or **Skipped** | Whether that rule fired on the record you selected. Only triggered rules can change anything. |
| **Satisfied** or **Not Satisfied** | Whether the rule's conditions were met as a whole. |
| A mark on each condition | Which individual conditions passed and which failed, so you can see precisely why a rule did not fire. |
| **Changes** | A row for every field the rule touched, showing the **Operation** (such as Add or Update), the **Field**, and its **Old** and **New** values. |
| "This rule did not change this entity." | The rule ran but left the record alone. |
### Comparing the Claim Form
Once the dry run finishes, click **View CMS Form** in the top right to open a **CMS 1500 Comparison**. **Before** and **After** sit side by side, so you can confirm the rule changed the boxes you expected and nothing else.
## Related Guides
* [**Create a Rule**](/insights_biller/automations/create_a_rule) covers building a new rule with AI, by cloning an existing one, or field by field.
* [**Working a Claim: Context & Activity Feed**](/insights_biller/claim_details/working_a_claim) covers dry running billing rules from an individual claim before you submit it.
* [**The Billing Rules Engine**](/insights_biller/general_billing/the_billing_rules_engine) covers the older engine-specific view of billing rules.
### FAQ
Rules run in ascending priority order within the same rule type. A rule with no priority set runs first, then priority 0, then 1, then 2, and so on.
**Note:** Sorting the table by **PRI** changes only how the list is displayed. It does not change the order rules actually run in.
An automation is an end-to-end pipeline: something triggers it, it runs a series of steps, and it produces an outcome. A rule is one self-contained decision inside that pipeline, in the form of "if these conditions are true, take these actions."
A rule engine is what groups and runs rules. The Rules tab lets you manage the individual rules underneath every engine in one place, rather than opening a separate screen for each.
**State** and **Status** are two different things. **State** tells you the rule cleared review, so **Passed** means it is valid. **Status** tells you whether it is running, so a rule that is **Passed** but **Inactive** is approved and switched off.
Check **Rule Status** in the **Properties** panel, and check **Rollout Cap** too: a rule on a phased rollout only touches part of your volume until it reads **Fully Released**.
No. A dry run replays the rule against records you choose and reports what it would have done. Nothing is saved, submitted, or posted, and the records you test against are left untouched.
Open the dropdown beside the rule ID in the breadcrumb to list every version, or open the **Activity** section for the full history with a version link on each change. Together they show who changed what, when, and which version is in effect now.
# Getting Started with the Claims Page
Source: https://docs.athelas.com/insights_biller/claim_details/claim_details_page
Manage claims, filters, assignments, validation, submission previews, and saved views in Insights.
### **Getting Started with the Claims Page**
The Claims Page is where you manage your billing workflow in Insights. It centralizes claim review, validation, assignment, and submission in one interface, helping you process claims faster and catch errors before they become rejections.
This page uses "claims" terminology to match industry standards; the underlying data is the same as what was previously labeled "encounters."
## **What is the Claims Page?**
The Claims Page gives you a unified view of all claims requiring review or action. You can filter claims by status, insurance, or age, assign work to team members, review AI validation flags, and submit claims—all without switching between tools.
**Key capabilities:**
* **Filter and save views** to focus on specific claim types, providers, or deadlines
* **Assign claims** individually or in bulk to balance team workload
* **Review AI validation** that flags errors and suggests corrections before submission
* **Collaborate with your team** through comments and activity tracking
* **Submit with the correct form** — Claims automatically generate in the appropriate format (CMS-1500, UB-04, or ADA) based on the selected payer(s)
* **Export claims as CSV** — download all claims in the current view, including a Facility column, for offline analysis or reporting
* **Duplicate views** — right-click any saved view to copy it as a starting point for a new one
## **Getting Started**
### **Accessing the Claims Page**
Log in to Insights at **[insights.athelas.com](https://insights.athelas.com/)** and navigate to **Claims** from the Daily Operations tab. The page opens with your most recent view, or a default table showing all active claims.
Press **Ctrl-K** (Windows) or **Command-K** (Mac) anywhere in Insights to quickly search for specific claims, patients, or navigate to different pages.
When you first access the page, a guided tour will walk you through the key areas of the Claims Page automatically. After the tour, you’ll see a table of claims with columns for patient name, date of service, insurance, claim amount, status, and assigned team member. Click any claim to open the detail view.
## **Working with Claims**
### **Organizing Your Workflow with Filters**
The filter bar at the top of the table lets you narrow your view by any combination of attributes: claim status, insurance provider, primary, secondary, or tertiary Insurance Group, claim amount, age, assigned team member, provider, date range, Submission ID, Insurance Billing Type (Workers’ Comp, Auto, or Commercial), and CARC/RARC denial reason codes. Insurance Group options use distinct group names across the sites you can access.
Press `F` to open the filter panel instantly without reaching for your mouse.
**Creating custom views:**
1. Apply filters that match your workflow (e.g., filter for claims older than 85 days with status “Ready to Submit”)
2. Sort by the column that matters most (typically date of service for timely filing)
3. Click **Save View** and name it (e.g., “In Progress”)
4. Click **Save** one more time and the view will appear in the view dropdown
Right-click any existing saved view and select **Duplicate** to create a new view pre-loaded with that view’s filters — a fast way to build variations without starting from scratch.
**Custom views are personal by default**, meaning your saved views won't be seen by anyone else.
Every user also starts with three built-in views — **All Claims**, **Workable Claims**, and **My Claims**. To group claims by status or reason, choose which columns to show, and turn a long list into a prioritized worklist, see [Organizing Your Claims Worklist](/insights_biller/claim_details/organizing_your_claims_worklist).
### **Assigning Claims to Your Team**
Claims work best when someone owns them. Use assignment to designate responsibility and prevent duplicate effort.
**To assign claims:**
* **Single claim:** Click the claim row, then select a team member from the **Assigned To** dropdown in the detail view
* **Bulk assignment:** Select multiple claims using checkboxes, then click **Bulk Actions > Assign** and choose the team member
Managers can filter by assigned team member to view individual workloads and redistribute claims when needed. You can also filter to show only unassigned claims for easy morning triage.
### **Reviewing Claims with AI Validation**
When you open a claim, Athelas Assistant automatically scans for common submission errors: missing modifiers, incorrect diagnosis codes, invalid addresses, and clearinghouse rule violations.
**How validation appears:**
Issues are flagged directly on the relevant fields with a red indicator. Click any flagged field to see the specific problem and recommended fix.
When you preview the submission, you'll see a sparkles icon (✨) next to fields that were automatically adjusted by billing rules to meet payer requirements (e.g., changing Place of Service code from 11→12).
### **Collaborating Through Comments**
The activity feed at the bottom of the claim shows all team member comments, and also files attached to the comments.
**Using comments effectively:**
* Leave context for the next person who reviews the claim
* Use @mentions to notify specific team members (e.g., “@Sarah can you verify this diagnosis code?”)
* Check the feed before working on a claim to see if someone already identified issues
Comments persist across sessions, so your team maintains context even when claims change hands.
### **Using Athelas Assistant**
Athelas Assistant is your AI-powered assistant inside every claim. Open it by clicking the **Athelas AI** button in the top navigation bar while viewing a claim. It understands the context of the claim you’re working on and can take action on your behalf.
**What Athelas Assistant can do on a claim:**
* **Submit or resubmit a claim** — ask it to submit the current claim or trigger a resubmission after corrections
* **Fetch the financial summary** — get a quick breakdown of charges, payments, and outstanding balances for the claim
* **Update patient and claim information** — edit demographics, insurance, or claim fields without leaving the Assistant panel
* **Review against CCI and billing rules** — ask it to check the claim for Correct Coding Initiative (CCI) edits and billing rule violations before submission
### **Submitting Claims**
The submission detail panel lets you work with the claim data and preview the formatted output simultaneously, giving you confidence before you submit. When previewing a submission, the form type (Professional, Institutional, or Dental) is displayed in the top right corner so you can confirm the correct format at a glance.
Use the **Go to…** link on the claim edit screen to quickly jump to the related page in Claim Details, Patient Responsibility, Posting Tool, or Remittances — without losing your place.
Press `CMD` + `.` on Mac or `CTRL` + `.` on Windows to instantly copy the Claim ID to your clipboard. `CMD/CTRL` + `C` copies a direct link to the claim.
**Working with side-by-side preview:**
1. **Review the claim** in the Claim Details panel on the left - this shows all your claim data fields
2. **Click Preview Submission** to see the formatted form (CMS-1500, UB-04, or ADA) on the right
* The preview displays exactly how the claim will appear when submitted to the payer
* The submission type (Professional/Institutional/Dental) is shown in the top right of the preview panel
* Work with both views open to verify your claim data translates correctly to the final format
3. **Make changes to the claim** as needed - when you edit claim fields, the preview becomes semi-transparent and shows "Not Synced" to indicate it needs to be refreshed. This occurs because the submission hasn't run through billing rules since your last update, making the preview stale relative to the current claim state.
4. **Save your edits to the claim** to refresh the preview and see your changes reflected in the formatted submission
5. Review the Claim Details panel to confirm all fields are correct
6. Click **Preview PDF** to see the formatted CMS-1500, UB-04, or ADA form exactly as it will submit
**Editing the submission directly:**
Edits made directly to the submission will NOT go through billing rules. These edits only affect the submission output and bypass the normal billing rules engine.
After billing rules are applied, you can make final adjustments to the submission itself:
1. Click the **pencil icon** in the submission preview to edit specific fields
2. These edits only affect this submission and don't change the underlying claim data
#### **Select a Medicare Secondary Payer type code**
**Prerequisite:** The claim must have Medicare as a secondary or tertiary payer.
When Medicare is not the primary payer, select the **MSP Type Code** that explains why another payer is responsible first. This field appears when you edit the insurance or submission, in the submission preview, and on the insurance information card.
| **Code** | **Description** |
| :------- | :-------------- |
| **12** | Working Aged |
| **13** | ESRD |
| **14** | No-Fault |
| **15** | Workers' Comp |
| **41** | Black Lung |
| **43** | Disability |
| **47** | Liability |
After you select a code and save, review the **MSP Type Code** in the submission preview before submitting the claim.
#### **Enter anesthesia service times**
**Prerequisite:** The service line must use an anesthesia CPT code from `00100` through `01999`.
Anesthesia service lines include **Start Time** and **End Time** fields. For a single-day encounter, the date remains the encounter date and you select the times. For a multi-day encounter, select the start and end date and time within the encounter's date range. The end time cannot be earlier than the start time.
**Working with diagnosis code pointers:**
You can drag and drop diagnosis code pointers within the Procedures table to reorder them quickly — no need to delete and re-add.
**Final submission:**
Once you’ve verified everything looks correct:
1. Review patient, insurance, diagnosis, and procedure information one final time
2. Click **Submit** when ready — if the claim has been submitted before, the button will say **Resubmit** instead
3. The claim moves to “Submitted” status and appears in your submission history
## **Related Guides**
Go deeper on the workflows that live on the Claims Page:
* [**Organizing Your Claims Worklist**](/insights_biller/claim_details/organizing_your_claims_worklist) — default views, grouping by status and reason, display settings, and date filters.
* [**Working a Claim: Context & Activity Feed**](/insights_biller/claim_details/working_a_claim) — how to read a claim's status reason, submissions, remittances, payments, and activity feed.
* [**Deferring a Claim**](/insights_biller/claim_details/deferring_a_claim) — set a claim aside until it's actionable again, without losing track of it.
* [**Claim Status, Stage & Payer Status**](/insights_biller/claim_details/status_and_stages) — what every status, stage, and payer status means, and which ones are workable.
### FAQ
Review the AI validation flags in the Claim Details panel. Claims are ready to submit when:
* All required fields are filled in
* No critical validation errors are present (red indicators)
* The preview submission shows the correct format for your payer
* Patient, insurance, diagnosis, and procedure information is accurate
**Note:** You can still submit claims with warnings, but it's recommended to resolve validation issues first to avoid rejections.
When you edit the claim in the Claim Details panel, your changes go through billing rules and update the underlying claim data. This ensures consistency and proper rule application.
When you edit the submission directly (using the pencil icon in the preview), your changes bypass billing rules and only affect that specific submission output. The underlying claim data remains unchanged.
**Note:** Direct submission edits should be used sparingly for final adjustments only, as they don't go through the normal billing rules engine.
Custom views are personal by default and won't be visible to other team members. Each user can create and save their own views based on their workflow needs.
However, you can **duplicate** any of your saved views by right-clicking on it and selecting **Duplicate**. This makes it easy to share a starting point with a teammate — simply set up the view, duplicate it, and walk them through recreating it, or use it as a personal template for building variations.
Once a claim moves to "Submitted" status, you'll need to work with your billing team to make adjustments. The claim will appear in your submission history, and you may need to resubmit or make corrections depending on your practice's workflow.
Use the filter bar at the top of the table to apply multiple filters simultaneously. You can combine filters for claim status, insurance provider, primary, secondary, or tertiary Insurance Group, claim amount, age, assigned team member, provider, date range, Submission ID, Insurance Billing Type, and CARC/RARC denial reason codes. Once you've set up your ideal filter combination, save it as a custom view for quick access later.
**Tip:** Press `F` to open the filter panel without using your mouse.
Press `CMD` + `.` on Mac or `CTRL` + `.` on Windows while viewing a claim to instantly copy the Claim ID to your clipboard. You can then paste it into any other tool, message, or search field.
Press `CMD/CTRL` + `C` to copy a direct link to the claim instead — useful for sharing with a teammate.
Open the filter panel (press `F` or click **Filter**) and select the **CARC** or **RARC** filter. Enter the specific denial reason code you want to focus on, and the table will update to show only claims with that code.
This is especially useful for identifying denial patterns and prioritizing which denial types to work first.
# Deferring a Claim
Source: https://docs.athelas.com/insights_biller/claim_details/deferring_a_claim
### At a Glance
Sometimes a claim has work to be done — but not right now. Maybe you're waiting on a callback from a payer, an appeal in litigation, or a coding update from a provider. **Deferring** lets you set a claim aside so it drops out of your worklist until it's actionable again, without losing track of it.
Deferring solves three everyday problems:
* Clearing claims out of your view when there's nothing you can do at the moment.
* Capturing *why* and *how often* claims get set aside, so your team can spot patterns.
* Making it clear when you can (or can't) expect an update from your EHR.
Deferrals work only on the new Claims Page. They aren't compatible with the legacy denials or rejections worklists.
## What Happens When You Defer a Claim
Deferring **hides** a claim from views that filter for `Claim is not deferred` — most importantly the **My Claims** and **Workable Claims** views, which exclude deferred claims automatically.
When the expiration date arrives, one of two things happens:
* If the work queue has **changed** in the meantime (because new data moved the claim forward), no further work is needed — the deferral did its job.
* If the work queue is **unchanged**, the claim reappears in your worklist so you can pick it back up.
Deferring **does not change the work queue** — it only sets the claim aside in its current queue. The date, reason, and duration of every deferral are recorded in the [Activity Feed](/insights_biller/claim_details/working_a_claim).
## How to Defer a Claim
You can defer a claim from the **Actions** dropdown while viewing it.
In the popup, provide a **Reason** and an **Expiration Date** (quick options like "1 month" are available). Both are required.
Once you save, the claim disappears from your workable views until it expires or its work queue changes.
✨**Smart Tip:** To check whether a claim is currently deferred, open its **Actions** menu — the options shown tell you its deferral state.
## Deferring in Bulk
You can defer — and cancel deferrals — for many claims at once. Select the claims, then choose **Defer** (or **Cancel Deferral**) from the bulk actions.
One thing to know:
* If you defer a claim that's **already deferred**, the expiration date **resets** to the new date — it does not add on to the existing deferral.
## Canceling or Extending a Deferral
Once a claim is deferred, you can **cancel** the deferral at any time, the same way you deferred it.
To **extend** a deferral, re-defer the claim with a new expiration date. Re-deferring without first canceling is supported through the bulk action.
## Creating Deferral Reasons
To add a new reason, click the **+** button in the reason list and type it in.
Deferral reasons are **site-specific** — once anyone at your site creates a reason, everyone at that site sees it as an option. Reasons can't be deleted once created (the same behavior as claim tags), so agree on a shared set of reasons before you go wide.
## Automatic Behavior
Deferrals take care of a few things on their own:
* **Auto-clear** — a deferral clears automatically when it **expires** or when the claim's **work queue changes**. Both events are logged in the Activity Feed.
* **Pauses patient responsibility** — while a claim is deferred, [patient responsibility (PR)](/insights_front_desk/patient_responsibility/patient_responsibility_page) generation is paused, so you won't send PR to a patient while you're still waiting on the claim.
## The "Updated in EHR" Reason (Billing-Only Sites)
Sites that use Insights for billing only (not the Air EHR) get a built-in reason: **Updated in EHR**. When you choose it, the expiration date is set automatically to the date of the next scheduled EHR sync for that claim.
* Used in bulk, each claim is set to its own next sync date.
* If a claim has **no future sync scheduled** (for example, a claim older than 120 days), this reason is disabled — a guardrail so you can't wait on an update that will never arrive.
### FAQ
No. Deferring only sets the claim aside in its current status and hides it from your workable views. When the deferral expires — if the status hasn't advanced on its own — the claim reappears exactly where it was.
Every deferral is recorded in the claim's **Activity Feed** with who deferred it, the reason, and the duration. To check a claim's current deferral state, open its **Actions** menu.
The expiration date **resets** to the new date you choose — it doesn't extend the original deferral. This applies whether you re-defer a single claim or a batch.
It only appears for billing-only sites (those not on the Air EHR). Even then, it's disabled for a claim that has no future EHR sync scheduled — for example, a claim older than 120 days — so you don't defer a claim that would never receive an update.
No — PR generation is paused for the duration of the deferral. This prevents a patient statement from going out while you're still working the claim with the payer. PR resumes once the deferral clears.
# How to Resubmit Claims in Bulk
Source: https://docs.athelas.com/insights_biller/claim_details/how_to_resubmit_claims_in_bulk
### At a Glance
When the same problem affects many claims — an eligibility denial across a patient's visits, a batch of submission errors with the same cause — you don't have to fix them one at a time. The Claims Page lets you build a focused worklist, select a group of claims, and resubmit them all in a single action.
✨**Smart Tip:** Bulk actions turn what used to be many clicks into a few. An eligibility denial on five claims for one patient — update insurance, resubmit, and comment — drops from roughly 15 actions to about 3.
### Step 1 — Build a Focused Worklist
Bulk resubmission works best when you first gather the claims that share a problem. Filter your list and **group by reason** so claims with the same denial, rejection, or submission-error reason land in one bucket. For the full set of tools, see [Organizing Your Claims Worklist](/insights_biller/claim_details/organizing_your_claims_worklist).
### Step 2 — Select the Claims
Select the claims you want to resubmit using the checkboxes. To grab an entire bucket, **right-click the empty space in the group** and choose **Select all in the group**.
You can select up to **50 claims at a time**. To work a bigger bucket, scroll down to load more rows first, then select again — each selection captures everything currently loaded.
### Step 3 — Resubmit with More Actions
With your claims selected, open **More Actions** at the bottom of the screen and choose **Resubmit** (or **Submit**). The action applies to every selected claim at once.
From the same **More Actions** menu you can run other bulk operations on the selected claims — update primary insurance, leave a comment, push to patient responsibility, mark as intended to bill, or defer.
Higher-risk actions like **push to PR**, **push to next payer**, and **adjust** stay UI-validated so you review them before they run.
✨**Smart Tip:** For a niche change across a group — say, "add a KX modifier to all 99214s on these claims" — pass the selected claims to [Athelas Assistant](/insights_general/athelas_assistant/getting_started_with_athelas_assistant) and describe the edit. The Assistant works with your selection as context.
### FAQ
It's built into the Claims Page. Select claims from your worklist, then open **More Actions** at the bottom of the screen and choose **Resubmit**. There's no separate bulk-resubmission page to visit.
Up to **50 at a time**. To work a larger group, scroll to load more rows and select again — each selection grabs everything currently loaded, so you can scroll to the bottom of a group and select the whole bucket.
Yes. **Update primary insurance** is one of the bulk actions in the **More Actions** menu — useful when an eligibility denial hits several claims. Update the insurance across the group, then resubmit them together.
Open the claim from the [Claims Page](/insights_biller/claim_details/claim_details_page) and use **Actions → Edit Claim Form & Resubmit** to fix and resubmit it individually.
# How to Send Documentation
Source: https://docs.athelas.com/insights_biller/claim_details/how_to_send_documentation
### At a Glance
This walkthrough shows how to upload documentation that isn't sent automatically by one of your organization's rules. (Your organization can set up rules to attach supporting documentation to claims automatically.) You can send documents on their own, without resubmitting the claim.
### Send Supporting Documentation
On the [Claims Page](https://insights.athelas.com), open the claim that needs documentation. Click the **Actions** menu and choose **Send Documentation**.
Fill out the form in the popup, upload the documentation, and click **Send Documentation**.
### FAQ
No. Use **Actions → Send Documentation** to send documents on their own, without resubmitting the claim. If you also need to change the claim itself, resubmit it from the [Claims Page](/insights_biller/claim_details/claim_details_page).
Yes. Your organization can create rules that automatically attach and send supporting documentation with claims. This manual process is for documents that fall outside those rules, or one-off attachments.
When documentation is required on a claim, Insights auto-generates a cover letter based on the type you select. You can preview it before it goes out.
# Organizing Your Claims Worklist
Source: https://docs.athelas.com/insights_biller/claim_details/organizing_your_claims_worklist
### At a Glance
The Claims Page can hold thousands of claims at once, so the difference between a slow day and a productive one is how well you organize the list. This guide covers the tools that turn the full claim list into a focused, prioritized worklist: **default views**, **grouping**, **display settings**, **selection**, and **date filters**.
For the basics of filtering and saving your own views, see [Getting Started with the Claims Page](/insights_biller/claim_details/claim_details_page). To act on many claims at once from a group, see the bulk actions in [How to Resubmit Claims in Bulk](/insights_biller/claim_details/how_to_resubmit_claims_in_bulk).
## Start from a Default View
Every user starts with three built-in views on the left side of the Claims Page. They are a good starting point before you build your own.
| **View** | **What it shows** |
| :------------------ | :----------------------------------------------------------------------------------------------------- |
| **All Claims** | Every claim, with no filters applied. |
| **Workable Claims** | Claims that are your site's responsibility, sit in an actionable work queue, and are **not** deferred. |
| **My Claims** | Workable claims that are assigned to you. |
✨**Smart Tip:** Start your day in **My Claims** to see only the work assigned to you, then switch to **Workable Claims** when you're ready to pull more.
Your own saved views appear alongside the defaults. Views are stored per user and **follow you across sessions, devices, and sites** — set one up once and it's there tomorrow, no matter where you log in.
## Grouping Claims
Grouping breaks a long, flat list into collapsible buckets so you can see the shape of your work and attack it in order.
You can group by **status**, **reason**, **site**, and other fields. Within a grouped list you can:
* **Order groups by count or balance** — sort by balance to work the biggest-dollar buckets first.
* **Collapse a group** — right-click a group header to collapse all groups and scan the buckets at a glance.
**Group by Reason** is the most powerful option for daily work. It merges submission errors, rejections, and denials into a single prioritized worklist, with each reason broken out into its own bucket — so you no longer bounce between separate lists.
✨**Smart Tip:** A common team setup — **managers** group **all claims by status** and order by balance to see the full revenue funnel; **individual billers** filter to one status, **group by reason**, order by count or balance, and save that as a view so they always work the highest-leverage bucket first.
### Acting on a Whole Group
Once a bucket is worth a repeatable action, you can act on the whole group at once:
1. **Right-click** the empty space in the group and choose **Select all in the group**.
2. Open **More Actions** at the bottom of the screen.
3. Choose the action — for example, update insurance, submit, or edit prior authorization — to apply it to every selected claim.
## Choosing Which Columns to Show
Use the **Display** button to control which columns appear in the table. Several useful columns are hidden by default, including:
* **Site** — visible in both the table and the individual claim view, which helps when you work out of a parent site across multiple child sites.
* **Supervising provider**
* **Submitted insurance**
Turn on the **Show Pre-Athelas Claims** toggle (off by default) to include historical claims from before your practice's go-live date.
## Selecting Claims
You can select up to **50 claims at a time** — a deliberate performance limit so the page stays fast, even on lower-powered machines.
To work a larger bucket, scroll down to load more rows first, then select. Each time you re-select, the page grabs everything currently loaded — so scroll to the bottom of a group, then select all to capture it in one pass.
## Filtering by Submission and Remittance Dates
When your list of claims and remittances grows into the thousands, date filters are the fastest way to zero in on a specific window. Open the filter panel to find four date filters: **Submission before**, **Submission after**, **Remittance before**, and **Remittance after**.
The process is the same for all four. For example, click **Submission before** and pick a date.
The list updates to show every claim submitted before your chosen date, starting with the submission closest to that date. Filtering by **Submission after** instead begins the list with the most recent submission.
✨**Smart Tip:** Combine a date filter with **Group by Reason** and save it as a view — for example, "Denials, last 30 days" — to build a repeatable, time-boxed worklist.
# Claim Status, Stage & Payer Status
Source: https://docs.athelas.com/insights_biller/claim_details/status_and_stages
### At a Glance
Three fields describe where a claim is and what it needs. Read them in order:
* **Status** — what needs to happen next on the claim, and whether it needs action.
* **Stage** — which party holds the balance right now: a payer or the patient.
* **Payer status** — where the claim stands with one specific payer, either what that payer has said so far or that the payer has not responded yet.
This page defines every value the three fields can take. For the page they appear on, see [Getting Started with the Claims Page](/insights_biller/claim_details/claim_details_page); to filter and group by them, see [Organizing Your Claims Worklist](/insights_biller/claim_details/organizing_your_claims_worklist).
## Status
Status shows what is currently happening on a claim. It is a single line that tells you whether that claim needs action.
A status is **workable** when you or your Athelas team can act on the claim right now. The statuses that are not workable are waiting on a payer or the patient, moving forward on their own, or already complete.
The built-in **Workable Claims** view combines all three conditions: the claim is your site's responsibility, its status is one of the workable ones below, and it is not deferred.
| **Status** | **What it means** | **Workable?** |
| :------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------ |
| **Import Errors** | The visit could not be fully imported from the EHR. The source data needs fixing before a claim can be built. | Yes |
| **Needs Initial Review** | Waiting on a human first pass before the initial claim goes out to the primary payer. This applies to initial submissions only, not to secondary, tertiary, or resubmitted claims. | Yes |
| **Unsubmitted** | Ready to be worked toward submission. Nothing has gone out to a payer yet. | Yes |
| **Submission Errors** | The claim was blocked before it reached the payer. It failed a pre-submission check or rule, clearinghouse verification, or transmission. | Yes |
| **Rejections** | The clearinghouse or the payer's front-end edits rejected the claim before adjudication, so no payment decision was made. | Yes |
| **Decision Pending** | Submitted and waiting on the payer's decision. Nothing has come back yet. | Yes |
| **Decision Inconclusive** | The payer responded, but the response does not settle the claim — a duplicate-claim denial, a claim forwarded to another payer, a placeholder denial with no usable reason code, or every remittance archived. | Yes |
| **Payment Posting** | A remittance has arrived and is being posted to the claim, or the claim was posted for more than the payer allowed and needs correcting. | Yes |
| **Full Denials** | The payer allowed nothing on the claim. | Yes |
| **Partial Denials** | The payer paid some lines and denied others. | Yes |
| **Unresolved Balances** | The payer allowed and paid every line, yet a balance is still left on the claim, so the claim has not moved on to the next payer or to the patient. Unlike **Partial Denials**, no line was denied; the leftover is unexplained or was never transferred. | Yes |
| **Packet Pending** | An appeal or medical record packet needs to be generated and submitted. A claim lands here when someone requests an appeal, or when Athelas automation reads the denial codes and decides the claim should be appealed or needs records. | Yes |
| **Statement Generation Pending** | The balance is now the patient's, and Athelas is generating the statement to send to the patient. Nothing for you to do. | No |
| **Awaiting Patient Payment** | A statement has gone out and the patient still owes. Athelas is waiting on the patient to pay. | No |
| **No Action Needed** | Nothing for you or Athelas to do right now — the payer has the claim and Athelas is waiting on the payer, the claim is queued and will submit automatically, the visit was marked not billable or predates go-live, or the patient has paid in full. | No |
| **Finalized** | Every balance on the claim has been accounted for. Payers and the patient have paid, or the remainder was adjusted or written off. Nothing is owed by anyone. | No |
| **Status Classification Failed** | The system could not determine a status. Athelas is alerted automatically and will correct the status. Nothing for you to do. | No |
**Deferred is not a status.** Deferring a claim pauses it for up to 90 days without changing its status — the claim drops out of workable views until the deferral expires or its status changes. Claims that enter **Decision Pending** are deferred automatically for 30 days. See [Deferring a Claim](/insights_biller/claim_details/deferring_a_claim).
## Stage
Stage identifies which party holds the remaining balance on a claim: a payer, the patient, or no one once the claim is complete.
| **Stage** | **What it means** |
| :----------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Payer 1** | The primary payer is responsible for adjudicating the remaining balance. You are awaiting or working a remittance from that payer. |
| **Payer 2** | The secondary payer owns the remaining balance, after Payer 1 has made its decision. |
| **Payer 3** | The tertiary payer owns the remaining balance, after both Payer 1 and Payer 2 have made their decisions. |
| **Patient** | Every payer has decided, or the visit is self-pay, and what is left is [patient responsibility](/insights_front_desk/patient_responsibility/patient_responsibility_page). The patient is expected to pay the outstanding amount. |
| **Finalization Pending** | Every balance is settled, but pending or manual-review remittances are still attached to the claim. The claim moves to **Finalized** once those are posted or archived. |
| **Finalized** | Every balance has been accounted for and nothing remains. Payers or the patient have paid, or the rest was adjusted or written off. |
## Payer Status
Payer status records where a claim stands with one specific payer. A claim carries one payer status per payer rather than a single overall one. Hover a claim's **Stage** to see the payer status for each payer on the claim.
Read Status first, then Stage. A status of **Full Denials** tells you the claim was denied; a stage of **Payer 2** with a payer status of **Denied** identifies Payer 2 as the payer that denied the claim. On a multi-payer claim, that distinction tells you which payer to work.
### Before the Claim Goes Out
These payer statuses are listed in the order a claim moves through them.
| **Payer status** | **What it means** |
| :-------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Imported** | The encounter just landed from the EHR and has not been evaluated yet. This clears on the next status refresh. |
| **Initial Review Required** | Marked billable, but not yet marked ready to submit, so someone needs to review the claim first. Primary payer only. |
| **Missing Procedures** | No procedures on the encounter, so there is nothing to bill. Primary payer only. |
| **Missing ICD-10** | No diagnosis codes at all, principal or secondary. Primary payer only. |
| **No Patient Insurance** | No insurance is recorded at this payer position. |
| **Missing Policy Number** | Insurance is recorded at this position but has no policy number. |
| **Duplicate Policy Number** | The policy number here is identical to one already used at an earlier payer position. |
| **Insurance Not Mapped** | The patient's insurance record is not linked to a known payer, so the claim cannot be routed. See [Payer Mapping](/insights_biller/general_billing/payer_mapping). |
| **Unrecognized Insurance** | The insurance is mapped to the catch-all "unrecognized" payer rather than to a real one. See [Payer Mapping](/insights_biller/general_billing/payer_mapping). |
| **Unsupported by CHC** | The clearinghouse cannot transmit to this payer, so the claim cannot be sent electronically. |
| **Self Pay** | This position is self-pay: there is no payer to bill, only the patient. |
| **Pre Launch** | The date of service predates your site's go-live or backfill date, so Athelas does not bill the claim. Primary payer only. |
| **Inherited AR** | A balance carried over from before Athelas took over billing at your site. Primary payer only. |
| **Not Intended To Bill** | Flagged as not billable, which pulls the claim out of the error and rejection queues. Primary payer only. |
| **Unsubmitted** | A claim exists at this payer but was never queued to go out — a manual or preview claim, or one still in flight before hand-off. |
| **Submission Pending** | Everything passed pre-submission checks and the claim is queued to be filed. |
### After the Claim Goes Out
| **Payer status** | **What it means** |
| :--------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Submission Success** | The claim transmitted successfully through the clearinghouse. The claim can still be rejected before adjudication, and the payer has not responded yet. |
| **Submission Error** | The claim was blocked before it reached the payer. It failed a pre-submission check or rule, clearinghouse verification, or transmission. |
| **Rejected** | The clearinghouse or the payer rejected the claim before adjudication. A claim stays **Rejected** while any claim at this payer has a finalized rejection, even if a newer one has been filed. |
| **Voided** | A void was submitted for this claim and the payer accepted the void. |
### After Money Posts
| **Payer status** | **What it means** |
| :--------------- | :---------------------------------------------------------------------------------------------------------------------------------------- |
| **Approved** | The payer allowed something. The allowed amount is paid plus copay plus coinsurance plus deductible, and that total is greater than zero. |
| **Denied** | The payer allowed nothing. |
### FAQ
Three things at once: the claim is your site's responsibility, its **Status** is one of the workable ones in the table above, and it is not deferred. The built-in **Workable Claims** view applies exactly those three conditions, so everything in that view is something you can act on now. See [Organizing Your Claims Worklist](/insights_biller/claim_details/organizing_your_claims_worklist).
Payer 2. **Status** tells you what happened to the claim; **Stage** tells you who holds the balance now. Hover the **Stage** to see the payer status for each payer on the claim, and work the one showing **Denied**.
**Partial Denials** means the payer denied at least one line and paid others. **Unresolved Balances** means the payer allowed and paid every line and a balance is still sitting on the claim — nothing was denied, so the leftover is either unexplained or was never transferred to the next payer or the patient.
**Status** is what needs to happen next. **Status Reason** is why the claim is there: the denial, rejection, or error code, a plain-language description, the dollar amount, and a per-procedure breakdown. Read the status to triage a claim and the status reason to fix it. See [Working a Claim](/insights_biller/claim_details/working_a_claim).
Because the payer responded but the response does not settle the claim. This happens with a duplicate-claim denial, a claim the payer forwarded to another payer, a placeholder denial carrying no usable reason code, or a claim whose remittances have all been archived. The claim needs a real decision before it can move on.
# Working a Claim: Context & Activity Feed
Source: https://docs.athelas.com/insights_biller/claim_details/working_a_claim
### At a Glance
When you open a claim, everything you need to decide what to do next lives on a single scrollable page — the claim's data, the actions you can take, the full history of submissions and payments, and a running activity feed. This guide explains how a claim is laid out and how to read its context so you can answer "what happened to this claim, and what do I do now?" without leaving the page.
To submit or resubmit once you've reviewed a claim, see [Getting Started with the Claims Page](/insights_biller/claim_details/claim_details_page).
## The Claim Lifecycle
Understanding where a claim sits in its lifecycle makes the rest of the page easier to read.
1. **A note is signed.** A provider signs a chart note in your EHR (Air or an external system).
2. **The claim is created.** The encounter is transformed into a claim and appears on the Claims Page.
3. **Billing rules run.** When you preview a submission, the claim runs through the [billing rules engine](/insights_biller/general_billing/the_billing_rules_engine), which cleans it up for the payer.
4. **The claim is submitted** to the payer through the clearinghouse.
5. **Status is tracked.** Submission errors, rejections, denials, and remittances all surface back on the claim.
The Claims Page is designed to be your single source of truth. Everything about a claim — its status, its submissions, how it paid, and what to do next — lives on the claim itself.
## How a Claim Is Laid Out
Opening a claim shows one scrollable page (no clicking through section after section). It has four areas:
* **Controls** — jump to any section of the claim, even when the panel is minimized, and **Review claim** to dry-run it through billing rules before submitting.
* **Claim details** — the same content as the classic encounter details, all on one page: patient, insurance, provider, diagnoses, and procedures. This is where you add or edit claim data.
* **Actions** — the primary **Submit** action sits prominently in blue; every other action (push to PR, adjust, request an appeal, defer, preview submission) lives in a secondary menu.
* **Claim context** — the panel alongside the claim that brings together everything that has happened to the claim.
## Reading Claim Context
The **Claim Context** panel (expandable to full width) is where you diagnose a claim. It has four key sections.
* **Status Reason** — explains *why* a claim is in its current work queue. It shows the denial, rejection, or error code, a plain-language description, the aggregate dollar amount, and a per-procedure breakdown. It updates automatically as the claim's situation changes. For what each status, stage, and payer status itself means, see [Claim Status, Stage & Payer Status](/insights_biller/claim_details/status_and_stages).
* **Submissions** — the full history of every submission on the claim. Click into any one to see the payload, its metadata, the billing rules that were applied, and the CMS-1500 (or UB-04) PDF for that submission.
* **Remittances** — remittance data with its source and deposit-verification status. You can download the raw **835 (ERA)** file or a PDF.
* **Payments** — every payment on the claim. Group and sort by posted date, check number, submission ID, or procedure, and use **Display Settings** to control which columns appear (including a denied-reasons column). Click any payment for full detail.
When you open a per-payer view and a per-procedure view at the same time, the same payment can appear twice. This is a display quirk, not a duplicate payment — check the payment detail if a total looks off.
### Common Events You'll See
As a claim moves through its lifecycle, these are the events you'll encounter in its history:
| **Event** | **What it means** |
| :--------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Claim Submission Created** | A submission was generated for the claim. |
| **Claim Submission Sent** | The submission was sent to the clearinghouse for review before reaching the payer. |
| **Procedure Remittance** | The payer returned a decision (from an ERA or EOB). Approved remittances appear in green, denied in red; open the **Adjustments** dropdown for the reason and amount. |
| **Claim Rejected** | The clearinghouse or payer rejected the claim before adjudication. Open the error message for the specific reason. |
| **Claim Submission Error** | Validation failed on submission. Open the error message for details. |
| **Claim Voided** | A claim with an error that needs special handling is voided entirely, and a new one is created and sent in its place. |
## The Activity Feed
The **Activity Feed** tracks the full chronological story of a claim, from creation to finalization. System-captured events (like "procedure added") and user comments appear together in time order, so you don't need to narrate your own actions — the system already records what you did. Add a comment only when it adds context the system can't capture, such as a payer reference number or the next step you're waiting on.
Responsibility changes, assignments, and deferrals all appear in the feed with their reasons — click **view more** to read the note. Reach the feed quickly using its icon in the claim panel, which scrolls you straight to it.
✨**Smart Tip:** Before you start working a claim, skim the Activity Feed. It tells you what a teammate already tried, what a payer said, and whether the claim is waiting on something — so you don't duplicate work.
## Responsibility and Assignment
Every claim is either your **site's responsibility** or **Athelas' responsibility**.
* When a claim is Athelas' responsibility, site users simply see the **Athelas logo** as the assignee — all you need to know is that Athelas is handling it.
* **Filter by responsible party** to see whether a claim belongs to your site or to Athelas.
* **Reassigning responsibility** in either direction requires a **note**, which is logged to the Activity Feed so the reason is always captured.
You can also assign a claim to a specific teammate so ownership is explicit in the queue. This removes the "I thought you had that one" ambiguity — for example, handing a denial to a senior biller for appeal. Assigned claims surface in that person's **My Claims** view.
## Previewing Billing Rules Before You Submit
Before submitting, use **Review claim** (or **Preview Submission**) to dry-run the claim through billing rules. The left side shows your input; the right side shows the output after rules run — for example, an updated zip code, referring provider, or NPI.
* A **star indicator** next to a field means a rule applied and modified that field.
* **View Rules** shows which billing rules fired; you can search within them for a specific field.
* **View PDF** renders the CMS-1500 or UB-04 form. Remove the background to print directly on RED-certified CMS-1500 paper.
The dry run can surface three kinds of results:
| **Outcome** | **What it means** |
| :----------------- | :-------------------------------------------------------------------------------------- |
| **Billing Rules** | Automatic alterations or additions to the claim — an NPI update, a modifier, and so on. |
| **Skippable Rule** | A soft suggestion you can skip and proceed. |
| **Hard Block** | The claim can't be submitted until you resolve the issue. |
You can edit the submission directly after rules run, but those edits bypass the billing rules engine. Treat it as a workaround for a misbehaving rule — for routine changes, edit the **claim** instead so the change is tracked and posts correctly.
### FAQ
It's now the **Activity Feed** inside the claim, combined with the **Submissions** history in Claim Context. Together they show the full chronological life of the claim — submissions sent, payments received, and changes made — in one place, without a separate timeline tab.
No — and that's intentional. When a payer posts a payment, the remittance lives inside **Claim Context** on the claim itself. Open the **Remittances** section to see the ERA/EOB detail, CARC/RARC codes, adjustments, and paid-vs-billed amounts without leaving the claim.
A star means a billing rule applied and changed that field during the dry run — for example, correcting a Place of Service code or adding a modifier. Use **View Rules** to see exactly which rule fired and why.
That claim is Athelas' responsibility, and the Athelas team is handling it. There's no action needed on your side. Use the responsible-party filter to separate Athelas-owned claims from your site's own worklist.
# Deposit Slip Ingestion
Source: https://docs.athelas.com/insights_biller/general_billing/deposit_slip_ingestion
## Overview
The **Deposit Slip Ingestion** tool lets you upload a deposit slip — as a CSV or a PDF — and automatically reconcile each individual check on the slip against the corresponding **bank deposit** and **check** records already in Insights.
This guide covers where to find the tool, the supported file formats, and what each screen does end-to-end.
## Before you start
* Have your deposit slip ready as either a `.csv` or a `.pdf`. PDFs are converted to CSV automatically by an LLM-based extractor, then queued for human review before they are finalized.
* The corresponding **bank deposit** must already exist in Insights (it is typically pulled in via Plaid, BAI, or another upstream feed). Each slip is tied to exactly one bank deposit, and each bank deposit can have at most one slip.
* File limits: **10 MB max**, up to **3,000 rows** per CSV, and up to **800 line items** per PDF (anything beyond that is truncated by the extractor).
The total of the line items on the slip **must exactly match** the selected bank deposit's total amount, or the upload will be rejected.
## CSV format
If you are uploading a CSV, the first row must use the header below — column names are matched verbatim:
| **Sequence** | **Check Type** | **Check Number** | **Amount (\$)** | **Check Date** |
| :----------- | :------------- | :--------------- | :-------------- | :------------- |
| 1 | Business Check | 12345 | 425.00 | 2026-04-15 |
| 2 | Personal Check | 9876 | 75.50 | 2026-04-14 |
* **Sequence** — running `1, 2, 3 …`
* **Check Type** — must be exactly `Business Check`, `Personal Check`, or `Cashier Check`.
* **Check Number** — required for `Business Check` rows; leading zeros are normalized during matching.
* **Amount (\$)** — decimal dollars (e.g. `123.45`).
* **Check Date** *(optional)* — `YYYY-MM-DD`.
✨**Smart Tip:** Only **Business Check** lines are auto-matched against existing system checks. **Personal Check** and **Cashier Check** amounts are tracked separately as the bank deposit's non-insurance receipts.
## Step 1. Navigate to the Remittances tab
The **Deposit Slip Ingestion** tool lives in the **Remittances** tab.
## Step 2. Upload your deposit slip
Click **Upload Deposit Slip** and choose either a CSV or a PDF.
* **CSV** — the file is parsed inline and the result is returned immediately.
* **PDF** — the file is queued for asynchronous conversion. Behind the scenes it is sent through an LLM-based extractor that produces an editable CSV for you to review before the slip is finalized.
## Step 3. Select the bank deposit
Enter the deposit amount and deposit date so Insights can find the corresponding bank deposit, then pick it from the search results.
The search looks for bank deposits across all related sites (same Tax ID and NPI) where both the date and the amount match exactly. Each candidate shows:
* The deposit date and total amount
* The bank deposit number, when available
* Whether a deposit slip is **already linked** to that bank deposit (each bank deposit can have only one slip, so anything marked as already linked is unavailable)
**Note:** If no candidate appears, double-check the deposit date and amount in your banking feed before continuing — the bank deposit must exist in Insights first.
## Step 4. Review the parsed slip
After upload, the slip enters a review state.
* **CSV uploads** that parsed cleanly and reconcile against the bank deposit total move directly to `COMPLETED`, and the breakdown view shows the auto-match results.
* **PDF uploads** land in `PENDING_REVIEW`. The LLM-generated CSV opens in an editable table — review each line, fix anything the extractor got wrong (especially check numbers, since 9-digit routing or account numbers are a common false positive), and re-upload the corrected CSV to finalize.
* **CSV uploads with row-level errors** return a per-line error list so you can fix the source file and re-submit. Possible row-level error codes:
| **Error code** | **Meaning** |
| :----------------------- | :---------------------------------------------------------------------------- |
| `INVALID_LENGTH` | Row has the wrong number of columns. |
| `MISSING_CHECK_NUMBER` | A `Business Check` row is missing its check number. |
| `INVALID_CHECK_NUMBER` | The check number value cannot be parsed. |
| `INVALID_AMOUNT` | The amount cannot be parsed as decimal dollars. |
| `DUPLICATE_CHECK_NUMBER` | Two rows in the same file share the same check number. |
| `INVALID_CHECK_TYPE` | The check type is not `Business Check`, `Personal Check`, or `Cashier Check`. |
## Step 5. Open a slip to see its breakdown
Clicking a deposit slip opens a per-line breakdown that shows every check the slip contains, along with aggregate counts:
* Total checks on the slip
* Total dollar amount on the slip vs. the bank deposit amount
* How many lines were successfully linked to a system check
For each line you will see:
* Whether the line is **matched** (its linked check belongs to the same bank deposit) and whether the **amount matches** the linked check
* The linked check's number and amount, when present
* Any line where the system could not find a match — these appear as **unlinked**
## Step 6. Resolve unlinked checks
Use a row's **Actions** menu to reconcile any unlinked Business Checks:
* **Search & link** — search by check ID or check number across all related sites. The candidate must:
* Belong to a related site
* Match the line's amount exactly
* Not already be linked to a different bank deposit
* Not already be linked to another deposit slip line
* **Edit** — for lines that have not been linked yet, you can correct the check number, type, amount, or date directly. After editing, the system re-attempts auto-link if the line is now a Business Check. Lines that are already linked are read-only — unlink them first if you need to make changes.
✨**Smart Tip:** Personal and Cashier checks do not need to be linked — they are tracked as the bank deposit's non-insurance receipts.
The **Actions** menu on an unlinked check row and the **Edit check** modal look like this:
### FAQ
The sum of every line on the slip must equal the selected bank deposit's total to the cent. Edit the lines (or fix the source file) so they reconcile, then re-upload.
The check you are trying to link or edit is already attached to a different deposit slip line or bank deposit. Unlink it from the other location first, then retry.
The file's content hash matches a previous successful upload. Use the existing slip, or modify the file (for example, fix a typo in a check number) before retrying.
CSV uploads are parsed inline and the auto-match result is returned immediately. PDF uploads are sent through an LLM-based extractor that produces an editable CSV for human review — the slip lands in `PENDING_REVIEW` until you confirm the extracted data is correct.
**Note:** PDF extraction can occasionally misread check numbers (9-digit routing or account numbers are a common false positive), so always QA the generated CSV before finalizing.
No. Only **Business Check** lines are auto-matched against existing system checks. Personal Check and Cashier Check amounts are tracked separately as the bank deposit's non-insurance receipts.
# Getting Started with Charge Master
Source: https://docs.athelas.com/insights_biller/general_billing/getting_started_with_charge_master
Charge Master is a centralized billing management system that consolidates your billing setup in one place: CPT codes, revenue codes, modifiers, payers, facilities, pricing, and effective dates.
Charge Master expands standard fee schedules by combining codes, payer rules, pricing, dates, and facility-level variations so your team can manage billing logic from one source of truth.
## Quick Start
Navigate to the **Automation** section in the Insights sidebar and open **Charge Master**.
From the start screen, download the Charge Master CSV template.
Add CPT/revenue codes, payers, modifiers, prices, facilities, and dates.
Import the CSV and map each column to a Charge Master field.
Fix duplicate rows, payer mapping issues, and any required-field mapping gaps.
If Charge Master is not visible in **Automation**, ask your admin to confirm your team-member permissions in **My Practice**.
## What is Charge Master?
Charge Master replaces manual fee schedule lookups with a table you can filter, group, edit, and track over time.
Key capabilities:
* Store all billing configurations in one place
* Know exact charges by payer, modifier, and facility
* Add future effective dates for scheduled changes
* Track updates through row-level and global history
* Manage many rows at once with bulk tools
## Understanding Key Concepts
### Status: Published, Retired, and Scheduled
| Status | Description | Use Case |
| :------------ | :------------------------------------ | :------------------------------------------ |
| **Published** | Currently active and used for billing | Live charge in production |
| **Retired** | Archived and no longer active | Old configuration kept for history |
| **Scheduled** | Set to activate in the future | Future-dated charge becomes Published later |
## Getting Started with Charge Master
If your practice already uploaded fee schedules, Charge Master may open with rows already populated.
### First-Time Setup
You can populate Charge Master in two ways:
1. **Import from CSV** (recommended for bulk setup)
2. **Manual entry** (one row at a time)
## Importing Your Data
Download the template and fill in code, payer, pricing, and date data.
Click **Import** and select your file.
Match each CSV column to a Charge Master field. The mapper includes required indicators and warnings for unmapped columns.
During mapping, Charge Master can show row impact (for example, how many rows are ready to be added) and highlight required fields that still need mapping.
### Understanding File Processing
Large first-time imports can take longer while the system validates entries, checks duplicates, and verifies relationships across payer/facility data.
CSV uploads are additive. They add new rows and do not automatically remove existing rows.
### Resolving Import Issues
After processing, you'll get a summary of any issues that need action.
#### Types of Duplicate Charges
1. **Same charge, different price** - Same identifiers but different price than an existing row.
2. **Exact duplicate** - Matches an existing row exactly.
#### Payer Mapping Issues
If your file includes a payer value that is not recognized, Charge Master prompts you to map it during import.
You can choose either:
* **One-time mapping for this import flow** (do not persist for future imports), or
* **Remember/save mapping** for future imports.
Confirming a payer mapping does not automatically complete the file import. After mapping, use the prompted reprocess/retry step to continue import.
This prompt handles a payer value inside a charge file. To manage the standing map between your EHR insurance names and payer records, see [Payer Mapping](/insights_biller/general_billing/payer_mapping).
### Viewing Your Charges
After import, your table displays key attributes such as CPT/revenue code, payer, modifier, facility, status, and price.
## Working with Your Charges
### Filtering Charges
Use filters to quickly focus your table by:
* Payer
* Facility
* Status
* CPT code
* Revenue code
* Modifier
* Effective date
* Expiration date
The modifier filter is useful when your team needs to isolate rows tied to a specific modifier workflow across many codes.
### Customizing Column Visibility
Use display settings to show or hide columns in your table view. This is helpful if you need to temporarily reveal additional fields (for example, payer or facility columns) while troubleshooting.
### Grouping Charges
Common grouping choices:
* CPT code
* Facility
* Payer
* Modifier
## Editing and Updating Charges
### Edit a Single Charge
To edit a specific row:
1. Click into the charge row first.
2. Use the row-level **Edit** action.
3. Update supported fields such as effective date(s) and facility/non-facility pricing.
4. Save changes.
On smaller displays, some row actions may be off-screen. Horizontally scroll the table to reveal all actions.
### Smart Edit for Multi-Row Updates
Select multiple rows, then open **Smart Edit** for AI-assisted bulk updates. Smart Edit uses the selected rows as context and can help with tasks like:
* Bulk updating facility/non-facility charges
* Copying selected configurations across facilities
* Updating effective dates across a selected set
### Bulk Selection
Select multiple rows with checkboxes. Combining filters with selection is the safest way to target the exact set you want to update.
### Bulk Archive (Retire)
Use bulk archive when retiring outdated rows.
1. Filter to your target set
2. Select rows
3. Click **Bulk Actions > Archive**
4. Confirm
### Bulk Transfer to Another Facility
Copy selected rows to another facility and optionally apply:
* Absolute price adjustment
* Percentage adjustment
## Downloading Your Charge Master
You can download the full Charge Master report from the page so your team can review the current configuration offline.
Use exports for validation, handoff reviews, or quick spot checks before larger bulk updates.
## Tracking Changes & Compliance
### Individual Charge History
Each row includes a detailed activity timeline showing who changed what and when.
### Global Activity History
The History view on the main page tracks actions across the full Charge Master.
You can filter this history by person and action type to support audits and operational review.
UI labels and control placement may vary slightly as Charge Master evolves. If you do not see an option exactly as shown, use search, filters, or display settings to surface it.
# How to Set Block PR Rules
Source: https://docs.athelas.com/insights_biller/general_billing/how_to_set_block_pr_rules
#### At a Glance
Setting default rules for blocking PR is a powerful tool in Insights that will save your staff lots of time from needing to individually adjust PR after it’s been generated.
### Here’s How to Do It
Go to the Blocked PR Rules tab in [PR Settings](https://insights.athelas.com/v2/patient-responsibility-settings?settings_tab=POST_VISIT_RULES).
Here, you will see all existing rules listed. To edit these rules, or copy their settings to create a new rule, you can click the buttons in the Action column.
For this example, we’ll click ‘Add Rule,’ and the new rule modal will appear.
Let’s say we want a rule to block PR from appointments with the CPT code 90912. We’ll give the rule an appropriate name, then enter its priority.
**Note** that higher numbers indicate higher priority. Higher priority rules override lower priority rules when applicable. If no priority is set, the rule becomes global and cannot be edited. If needed, create a specific rule with higher priority to negate its behavior.
This rule will have a priority of 5. If a contradictory rule were written later with a priority of 6, for example, it would override this rule.
In the Actions block, we selected ‘Block post visit PRs.’
Then, in the Conditions block, we indicated that an encounter needed to meet All of the following statement criteria (for rules like this one with only a single statement, it doesn’t really matter if we select ‘All’ or ‘Any’).
Then we created the statement. The Variable is set to CPT Code, which must contain all of the value 90912.
Note that the Value menu will populate with information (in this case, CPT codes) that already exists in Athelas’ records for your organization. Contact your account manager if information you need is missing.
Click ‘Save.’
The rule is now available in the list of rules in the Blocked PR Rules tab and can be edited or copied.
#### Further Assistance
We’re here to help! Please get in touch with [support@getathelas.com](mailto:support@getathelas.com) if you’d like some hands-on assistance.
# Payer Mapping
Source: https://docs.athelas.com/insights_biller/general_billing/payer_mapping
**Payer mapping** connects each insurance name in your EHR to the matching payer record in Insights. Your EHR might store a plan as "BCBS of California" while the clearinghouse expects "Blue Cross Blue Shield CA" — the payer map is what bridges that gap, so you set each mapping once per insurance name instead of correcting claims one at a time.
## Why payer mapping matters
| **Outcome** | **What the mapping does** |
| :-------------------------- | :------------------------------------------------------------------ |
| **Claims route correctly** | Each claim goes to the clearinghouse destination the payer expects. |
| **Reports stay consistent** | One insurance name appears the same way across every report. |
| **Payments post properly** | Remittances match back to the right payer record. |
Claims for an unmapped payer may fail to submit or route to the wrong destination, so work the list as new names appear.
## Where to find payer mapping
Go to **Insights → Action Items → Payer Mapping**. The page has two tabs:
* **Add New Mappings** — EHR insurance names with no payer record attached yet.
* **Existing Mappings** — every name you have already mapped, and where you go to correct one.
## Review your unmapped payers
The **Unmapped Payers** list on **Add New Mappings** shows each unrecognized EHR insurance name alongside the volume behind that name: **# Patients**, **# Impacted Encounters**, and **# Impacted Appointments**. Sort by any of those columns to work the highest-impact names first, and use **Delete** to drop a name you do not need mapped.
Names land here when:
* You are setting up your practice for the first time.
* A new insurance plan is added to a patient record.
* An insurance name in your EHR does not match an existing mapping.
## Map a payer
**To map an unmapped payer:**
1. On **Add New Mappings**, click the insurance name in **Unmapped Payers**. The header confirms your choice with **Selected:** and that name.
2. In the right panel, search by **Insurance Name or Payer ID**. Rows tagged **Recommended** are the candidates closest to the selected name, and the **(Autofill)** link above the search box proposes a match for you.
3. **Click** **Select** on the payer record you want. Check the **Payer ID** and **CPID** columns as you choose — those are the identifiers the clearinghouse uses to route the claim.
4. Review the **Confirm mapping** dialog, which shows the EHR insurance name above the payer record that name will map to, then **click** **Confirm**.
✨**Smart Tip:** Look for state-specific variants ("Medicare California") and plan types (HMO, PPO, Managed Medicaid) when you search. Two payer records with nearly the same name often route to different destinations.
When you are not sure which payer record matches an EHR insurance name, check your contracts or fee schedules before you confirm, or ask your account team. A wrong mapping routes every future claim for that name to the wrong place.
## Correct a mapping
**To change a mapping you have already saved:**
1. Open the **Existing Mappings** tab.
2. Find the mapped insurance name.
3. Edit that row and select the correct payer record.
4. Save your change.
The correction applies to claims from that point forward; it does not rewrite claims that already went out.
## Things to know
* **Map each name once.** A mapping applies to every patient carrying that insurance name in your EHR, so there is nothing to repeat per patient.
* **A missing payer record is not a dead end.** If no record matches, your account team can add the payer or point you at the right existing record.
* **Report names follow the map.** When an insurance name looks wrong on a report or a claim, the mapping is the first thing to check.
* **Charge Master mapping is separate.** Mapping an unrecognized payer value during a charge-file import is a different prompt, covered in [Getting Started with Charge Master](/insights_biller/general_billing/getting_started_with_charge_master).
### FAQ
Claims for that insurance name may fail to submit, or they may route to the wrong clearinghouse destination. Review the **Unmapped Payers** list regularly rather than letting it build up.
No. You map an insurance name once, and the mapping covers every patient who carries that name in your EHR.
Reach out to your account team. They can add a new payer record or help you identify the correct existing one to use.
Insurance names on reports and claims come from the payer map, so correct the mapping on the **Existing Mappings** tab and later reports will follow.
Questions about a specific mapping? Reach out to your account team or [support@getathelas.com](mailto:support@getathelas.com).
# Provider Adjustments
Source: https://docs.athelas.com/insights_biller/general_billing/provider_adjustments
## Overview
**Provider adjustments** are the provider-level dollar amounts a payer reports on a remittance rather than against a single claim line — overpayment recoveries, forwarding balances, interest owed, and small-balance write-offs. Every provider adjustment arrives on the **PLB (Provider-Level Balance)** segment of the 835 electronic remittance advice (ERA), carrying a reason code and an amount.
Most of these amounts belong at the check level, but some tie back to a specific claim. The **Provider Adjustments** tab on a check gives your billing team the tools to sort that out: post an adjustment to the check or to a claim, one at a time or in bulk; archive the ones that should never post; reallocate a posted adjustment across claims; and move a claim-linked adjustment back to the check.
This page covers the actions on that tab. The tab sits inside a wider reconciliation workflow, documented in [Remittances](/insights_biller/general_billing/remittances). To review posted adjustments across every check in a period, see the [Provider Adjustments Report](/insights_biller/reports/provider_adjustments_report).
## Where to find provider adjustments
The Provider Adjustments table is scoped to **one check**:
1. Go to **Insights → Daily Operations → Remittances**.
2. Open the **Checks** tab.
3. Click a check to open its detail panel.
4. Select the **Provider Adjustments** tab. The tab label carries a count, so you can see how many adjustments a check has before opening the tab.
The **Provider Adj. Amount** field in the panel header is the roll-up for that check.
## Posting statuses and posting levels
Two columns drive everything on this tab: **Posting Status** and **Posted To**.
**Posting Status** sets the badge on the row and which actions the row offers:
| **Status** | **What it means** |
| :---------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Unposted** | The starting state. The adjustment is pending and has not been posted. |
| **Manual review** | Insights could not post the adjustment confidently — most often because the insurance company on the ERA does not match the insurance on the claim — so someone needs to review the adjustment and post it by hand. |
| **Archived** | The adjustment will not be posted, and the row offers no action other than unarchiving. |
| **Posted** | The adjustment has been posted, either to a claim or at the check level. |
**Posted To** records the level a posted adjustment landed at:
* **Check** — recorded against the check and not tied to any claim.
* **Claim** — tied to a specific claim, shown as a link to that claim.
Each row also carries the adjustment's **ID** and **Identifier**, the payer's **Code** and **Reason** as they arrived on the ERA (for example `WO - Overpayment Recovery` or `L6 - Interest Owed`), and the **Amount**. Use **Filter** and **Sort** above the table to narrow a long list.
## Post adjustments to a check or a claim
Posting takes an unposted adjustment and records it against a claim or at the check level. The flow is the same for one adjustment or for many — only the number of rows changes.
* **Post one:** click the **Post** icon in the row's **Actions** column.
* **Post several:** select the rows you want, then click **Post** in the toolbar above the table. Only unposted, non-archived rows are selectable.
Either route opens the same **Post Provider Adjustments** wizard, whose subtitle reports how many adjustments came into the flow.
The wizard has four steps:
1. **Choose posting level.** For each adjustment, pick **Claim** or **Check**. Adjustments that Insights already recognized as claim-related default to **Claim** and show the linked claim underneath; everything else defaults to **Check**.
2. **Select claims.** This step appears only when at least one adjustment is set to **Claim**. Pick the claim to post each claim-level adjustment against. **Continue** stays unavailable until every claim-level row has a claim.
3. **Notes.** Enter a note explaining the posting. The note is required.
4. **Review.** Read the summary of what is about to post, then confirm.
## Archive and unarchive adjustments
Not every adjustment needs to post. **Archiving** marks an unposted adjustment as finalized without posting it, which drops the row out of your active work. **Unarchiving** returns an archived adjustment to **Unposted**, putting the row back into the workflow.
Both actions live in the row's **Actions** column: unposted rows offer an archive icon, and archived rows offer an unarchive icon.
## Reallocate a posted adjustment across claims
Reallocation redistributes an **already posted** adjustment across one or more claims. Reach for reallocation when an adjustment went to the wrong claim, or when a single adjustment really belongs to several.
Reallocation works on **any** posted adjustment, check-level ones included: a check-level adjustment can still be reallocated onto claims. Open the modal from the **Reallocate to claims** icon on a posted row.
The modal opens with a single allocation row holding the full adjustment amount. From there you can:
* Search for and select a claim for the row, using the same claim search the posting wizard uses.
* Enter an amount for the row.
* Click **Add claim** to split the adjustment across more rows.
## Move a claim-linked adjustment back to the check
**Move back to check level** is the inverse of claim-level posting: the action takes a posted, claim-linked adjustment off its claims and records the amount at the check level instead. Insights reverses the claim-level postings and records a single check-level posting in their place. The action appears on claim-linked posted rows only.
## How claim matching and claim search work
Many adjustment identifiers already carry a patient control number. When an identifier does, the adjustment defaults to claim-level posting and Insights matches the adjustment to a claim for you.
When the identifier has no control number, or the suggested match is wrong, find the claim yourself. You can search by patient, date of service, encounter, claim, or ARC number. Results are paged, and each result names the patient and the date of service so you can tell similar claims apart.
### FAQ
Insights could not post the adjustment confidently. The most common cause is a mismatch between the insurance company on the ERA and the insurance on the claim.
Review the adjustment, decide whether the amount belongs to the check or to a claim, then post the adjustment through the **Post Provider Adjustments** wizard.
Yes. **Reallocate to claims** works on any posted adjustment, check-level ones included, and one adjustment can be split across several claims in the same modal.
The adjustment returns to **Unposted** and the post and archive actions become available again. Archiving is not permanent.
The Provider Adjustments tab is scoped to a single check. For a period-level view grouped by payer and reason code, run the [Provider Adjustments Report](/insights_biller/reports/provider_adjustments_report).
To tie provider adjustments back to cash in the bank, cross-check that report against the [Bank Deposit Reconciliation Report](/insights_biller/reports/bank_deposit_reconciliation_report).
# Remittances
Source: https://docs.athelas.com/insights_biller/general_billing/remittances
#### Getting started with the Remittances Page
The **Remittances page** is your command center for ensuring that every insurance payment makes it from the payer → into your RCM system → and all the way into your bank account. It’s designed to give you confidence that:
* **Every dollar in Insights = every check reconciled = every bank deposit.**
* If there are gaps, duplicates, or mismatches, you can quickly identify and fix them. In other words: it’s where you can **see, reconcile, and act** on your payment data.
#### How to Access the Remittances Page
* From the **Insights navigation menu**, select **Remittances**
* You’ll land on a tab called **Deposits**
#### Fundamental Tabs
* **Deposits Tab** → Helps you confirm that every dollar that entered your bank is fully matched to checks and payments in Insights.
* **Checks Tab** → Helps you confirm that every payer check has been posted correctly to claims and is tied back to a deposit. You can think of them as two sides of the same equation:
> Deposits = money in the bank
> Checks = promise of money from the payer
This page helps you ensure that both sides always match.
#### Fundamental Concepts
**Bank Deposit**
A bank deposit is the *actual money* hitting your bank account. This could be an ACH transfer, a virtual credit card payment, or a physical check deposit. Your goal is to make sure every deposit is represented in Insights and tied to the right checks.
**Check**
A check represents the *payer’s promise to pay*. It contains a check number, payment amount, and payer details. Your job is to:
* Ensure the payments from this check are posted across the correct claims.
* Match the check to its associated deposit to confirm the payment actually arrived in your bank.
**Remittances / Payments**
Every individual claim payment is tracked as a **remittance**. By default, remittances are auto-posted within 6 hours of creation. Exceptions:
* **Manual review** → if our posting engine isn’t sure how to apply a payment.
* **Archived** → if the engine detects duplicates or bad data.
**Deposit Source**
Deposit sources are *cleaned-up payer identities*. Because payer names can vary across checks and deposits, we normalize them into a single source (e.g., “Blue Cross Blue Shield” instead of “BCBS of TX,” “BlueCross TX,” etc.). This makes matching deposits and checks much easier.
#### The Deposits Tab
The **Deposits Tab** gives you a complete view of the insurance deposits that have hit your bank account and allows you to reconcile them with checks and remittances inside Insights. This is the “money in” side of the reconciliation process.
###### **High-Level Overview**
At the top of the page, you’ll see **scorecards** that summarize:
* **Total Insurance Deposits** → the sum of all insurance deposits in the filtered scope.
* **Matched Deposits** → how much of that total is tied to checks.
* **Unmatched Deposits** → how much is still not tied to any checks.
* **Posted Deposits** → how much of the matched deposits have posted payments inside Insights. This gives you an at-a-glance sense of the health of your deposit verification.
###### Filtering Deposits
The deposit table can be filtered by:
* **Date range** (transaction date)
* **Matching Status** (Matched, Unmatched, or Partially Matched)
* Matched - the deposit is linked to at least one check and the sum of the check(s) payment amounts = the deposit amount.
* Partially Matched - the deposit is linked to at least one check but the sum of the check(s) payment amounts **does not equal** the deposit amount.
* Unmatched - the deposit is not linked to any checks.
* **Inclusion Status** (Included or Excluded) - this is used as a way to mark certain deposits as non-insurance deposits
* **Deposit Amount** (range filters)
These filters let you focus quickly — for example, to find deposits in a certain week, to review only unmatched deposits, or to isolate very large deposits.
###### Deposit Table
Each row in the table shows:
* Deposit ID, status, and transaction date
* Deposit amount and total check amount (sum of checks tied to the given deposit)
* Number of linked checks to the given deposit
* Deposit source (payer, normalized) and method (ACH - Automated Clearing House, CHK - Check, VCC - Virtual Credit Card)
* Description (from bank feed)
* Inclusion toggle 👉 If you exclude a deposit, you’ll be prompted to provide a reason, which is stored for audit visibility.
###### Clicking Into a Deposit
Clicking on a deposit opens a **detailed view**, where you can:
* See the **deposit details** (source, method, Plaid Trans. ID, who included/excluded it).
* Review **linked checks** (check ID, number, amount, posting status).
* Drill down into **remittances tied to those checks** (with statuses like Fully Posted, Archived, or Unposted). From here, you can confirm:
* That the deposit amount matches the sum of linked checks.
* That all checks tied to the deposit are fully posted in Insights.
* Which remittances still need action (e.g., manual posting).
###### Matching and Unlinking Checks
When a deposit is unmatched or partially matched:
* Open the deposit.
* Use **View Unmatched Checks** to see candidate checks.
* Link one or more checks to the deposit. If a mistake is made, you can always **unlink a check** from a deposit. Both linking and unlinking are tracked in the system so there’s a clear audit trail.
###### Posting Remittances
After a deposit is matched to checks, the final step is ensuring the **remittances tied to those checks are posted**:
* **Pending** → The remittance has been created but not yet processed by the posting engine.
* **Manual Review Required** → The posting engine wasn’t sure how to apply the payment. User intervention is needed.
* **Partially Posted** → Some, but not all, of the remittance’s payments have been applied.
* **Fully Posted** → The remittance has been successfully posted in its entirety.
* **Archived** → The remittance was identified as a duplicate or bad data and excluded from posting. You can take action at the remittance level directly from the deposit view by clicking into a specific remittance. You will be directed to our posting tool that allows you to actually post these remittances to the payment ledger. The tool will highlight which remittances/payments are tied to the given check and what the total payment value should be for this claim based on the remittance data.
#### The Checks Tab
The **Checks Tab** is the “payer side” of reconciliation. It’s where you confirm that every check received from an insurance payer has been:
* **Posted** into Insights (so all claim payments are recorded), and
* **Matched** to the corresponding **deposit** in your bank account.
###### High-Level Overview
At the top of the page are **Check Scorecards**:
* **Reconciled** → Total value of filtered check payments reconciled.
* **Posted** → Total value of dollars that have been posted into Insights from these filtered checks.
* **Unposted** → Total value of dollars where payments are not yet fully posted for these filtered checks.
* **Deposit Matched** → Total value of checks that have been successfully matched to a bank deposit. These scorecards give you a snapshot of whether all checks are properly accounted for from payer → Insights → bank.
###### Filtering Checks
The check list can be filtered by:
* **Date range** (check date)
* **Check Number**
* **Amount** (range)
* **Posting Status** (Posted, Partially Posted, Unposted)
* **Matching Status** (Matched vs. Unmatched to a deposit)
This makes it easy to zero in on unposted checks, unmatched checks, or checks within a certain dollar range.
###### Check Table
Each row in the table shows:
* **Check ID / Check Number / Check Date**
* **Check Amount** vs. **Amount Posted**
* **Provider Adjustments Posted** (if any)
* **Remaining Balance** (should be \$0 if fully posted)
* **Deposit Source** (payer, normalized)
* **Payment Method** (ACH, check, etc.)
* **Matching Status** (Matched vs. Unmatched)
* **Posting Status** (see below)
###### Posting Statuses
Each check has one or more remittances tied to it. Those remittances determine the check’s **Posting Status**:
* **Posted →** The sum of payments posted tied to this check = the total check payment amount.
* **Partially Posted →** The sum of payments posted for this check ≠ the total check payment amount AND ≠ 0.
* **Unposted →** The sum of payments posted for this check = 0. 👉 Your reconciliation goal is to have all checks **Matched** + **Fully Posted**.
###### Clicking Into a Check
Clicking on a check opens a detailed panel. Here you’ll see:
* **Check details** (check number, date, amount, payer, payment method, match status).
* **Remittances tab** → shows all remittances tied to the check, with posting status, amounts, payer index, and claim IDs.
* **Deposits tab** → shows which deposit the check is tied to (or lets you match/unlink it).
* **Provider Adjustments tab** → shows the provider-level adjustments on this check, and lets you post, archive, or reallocate them. See [Provider Adjustments](/insights_biller/general_billing/provider_adjustments).
From the check panel you can also:
* **Match / Unlink** the check to a deposit.
* **Post/review** individual remittances.
#### Deposit Slip Report Generation
From the Deposits tab, you can also generate a downloadable report of all of your deposit verification data. If you select the following download button:
You will be prompted with the following view where you can choose the following:
* **Date Range Filter** - this filters for all bank deposits that have a transaction date within the selected date range.
* **Bank Deposit Type Filter** - this filter allows you to select which types of bank deposits you would like to include in your report. You can filter for ACH deposits, Paper Check deposits, Virtual Credit Card deposits, or all deposits.
* **Report Type Selection** - there are two kinds of reports you can generate here:
* **Snapshot Report**- The Snapshot report will show you the status of your data as it looked at the end of your selected date range. Any updates that occurred afterwards will not show in this report.
* For example, if you are generating a report for the month of January and one of the January deposits was matched to a check in February, this report will always show the deposit as unmatched because that was its status when January ended.
* You can expect that any time you run this report for a given time range in the past, the data will always look the same.
* **Up To Date Report:**- The Up To Date report will show you your bank deposits from the filtered date range with their most up to date matching status.
* For example, if you are generating a report for the month of January and one of the January deposits was matched to a check in February, this report will show the deposit as match because the deposit is a January deposit and it’s current status is matched.
* You cannot guarantee that this report will always look the same.
In your report, you can expect to view the following fields:
* Check ID
* Check Number
* Check Date
* Bank Deposit Date
* Deposit Source from Check
* Deposit Source from Deposit
* Check Amount
* Posted Amount
* Facilities
* NPI(s)
* TIN
* Bank Account
## Summary
**Did I actually get paid what insurance said I would?**
* **Earlier**, sites had to see the check amount, download all their bank statements, and match them one by one — massively laborious and painful.
* **Now**, we do the work; sites just click the check and see the deposits, remits, and even claims directly enclosed.
**Does my bank account match my billing books?**
* **Earlier**, at the end of every month you'd go transaction by transaction to find the matching check in your billing system — all manual, taking days.
* **Now**, click the **Deposits** tab, where Insights has automatically pulled in all your bank transactions and matched each one to a set of checks, remits, and claims you can audit.
### FAQ
This section explains how to navigate the Check Deposit Manager and answers common questions.
Our team matches remittances for ACH/EFT insurance-payment deposits we see via Plaid, and VCC payments processed via Stripe (included with patient payments).
Bank reconciliation does **not** match bulk check deposits (paper checks) — the client matches those in the Check Deposit Manager by linking unmatched checks to the deposit. If you'd like Insights to also match paper check deposits, we offer a lockbox solution; contact your account manager to learn more.
Insights removes out-of-scope transactions that aren't insurance payments (e.g., vendor payments, bank-to-bank transfers). We're actively working on removing these automatically; if you see one, exclude it with the **Exclude** button.
Filter **Inclusion Status** to "Excluded" to view all excluded deposits. Click any deposit to see its exclusion reason. If a transaction was incorrectly excluded, press **Include** to move it back.
The page shows an alert if your Plaid connection is inactive for any reason.
Press the refresh icon to refresh your Plaid sync. Do **not** delete the bank account and re-add it. If the Plaid re-sync fails, write to Support and your account manager and we'll investigate.
Often we see the deposit in the bank but don't yet have the matched remittance advice — our team hunts for the remittance tied to the deposit and posts it; once posted, we match it to the unmatched deposit. Common causes include not yet receiving electronic remittances for a payer, or needing a payer portal to pull the remittance advice. Providing as many payer portals as possible helps our team pull checks, post remits, and link them to deposits.
Posted-to-bank gaps are usually due to remittances flagged for manual review — posting them would put the encounter balance in a negative state, since a payment, adjustment, or PR amount is already posted and would conflict with the incoming remittance. These gaps are addressed with automations that unblock the remittances so they post; you can also post the payments manually using the Posting Tool.
Our team commits to matching at least **98%** of in-scope deposits (ACH/EFT and virtual card payments) to posted remits each month. The bank reconciliation team continuously works to close any remaining gaps.
# The Billing Rules Engine
Source: https://docs.athelas.com/insights_biller/general_billing/the_billing_rules_engine
## At a Glance
The [Billing Rules Engine page](https://insights.athelas.com/v2/rules-engine) lists all active and inactive billing rules implemented by a collaborative effort between your organization, an Athelas account manager, and our engineers.
The two types of rules found here are categorized as Global or Site. More on that later in this guide.
This is the older, engine-specific view of your billing rules. Every rule at your practice, across billing, submission blocking, posting, and the other engines, now also lives in one place on [The Rules Tab](/insights_biller/automations/the_rules_tab), where you can read each rule in plain language, edit it, and dry run it before it goes live.
To change a rule yourself, see [Create a Rule](/insights_biller/automations/create_a_rule). If you don't have access to rule editing yet, contact your account manager and they can make the change for you.
## The Billing Rules Process
Early in the Athelas onboarding process for your organization, an account manager collaborated with your organization’s administrators to incorporate all existing billing rules, updates to those rules, and any new rules requested into Insights.
These rules, along with any added manually since then, comprise the list visible on the Billing Rules Engine page.
You can filter this list to show only Active, Inactive, or All.
## Types of Rules
* **Global Rules** — Global rules are standardized, stock rules available to all organizations using Insights. These rules tackle the most common claim adjustments to minimize rejections and denials and maximize collections for your practice.
* **Site Rules** — These rules are specific to your site.
The explanatory notes on these are editable. Click the ‘Edit’ button below the explanation to make changes.
## Code for Site Rules
Scroll to the right in the Site Rules tab and you can see the trigger for each rule, the actions subsequently applied, and who created the rule.
This is the first place to check if a site rule is failing in some way.
## View Active Rules on a Claim
To see which rules were applied to an individual claim, visit the [Claim Details page](https://insights.athelas.com/v3/claim_level_view). Click into a claim, then switch to the ‘Submissions’ tab. Choose a submission to expand and click ‘x rules applied.’
To preview what the rules engine would do to a claim before you submit it, see [Previewing Billing Rules Before You Submit](/insights_biller/claim_details/working_a_claim).
## Further Assistance
We’re here to help! Please get in touch with [support@getathelas.com](mailto:support@getathelas.com) if you’d like some hands-on assistance.
# The Review Charges Page
Source: https://docs.athelas.com/insights_biller/general_billing/the_review_charges_page
#### At a Glance
***This page may be accessible only to Administrators and Billing Managers at your practice.***
When payments get posted in Insights, the vast majority are handled by our rules engines. They require no manual intervention to go from submission to finalization. However, insurance payments can sometimes conflict with each other, be insufficient, or otherwise not comply with the rules established in the rules engines.
Cases like these require manual review and will end up on the [Review Charges page](https://insights.athelas.com/v2/review-charges). Insights provides you with several tools to get these cases back on track for finalization.
**Best Practices**
* Depending on your staff’s bandwidth and how quickly charges generally change in your industry (some PT offices, for example, tend to see significant fluctuations in deductible charges as days pass), we recommend **reviewing charges** **at least once a week**. This ensures that these claims will resolve into payments for your practice in a timely manner.
* If you notice patterns with the same kinds of claims coming in for manual review, talk to your account manager to see if a rule can be created to handle such cases. Ideally, automation will do as much of the heavy lifting with claims as possible.
### Features of the Page
Some things you’ll notice when you land on the Review Charges page:
* **Red highlighted patients** — These patients are either self-pay or their eligibility check returned an inconclusive result. Either way, if you approve their charges, those charges will be PR.
* **Review-specific filters**
* **Inactive Eligibility Only**
* **Last Claim Denied Due to Auth**- Appointments missing required prior authorization at the time of denial will be shown.
* **Pending Review Only**- When active, patients with charges that have not been reviewed for that particular date of service will be displayed.
* **Unreviewed Patients Only**- When active, patients with charges that have never been reviewed at any point will be displayed.
If you remove the default ‘Pending Review Only’ and ‘Unreviewed Patients Only’ filters, you will see all patients for that date of service.
* `**Approve all**`\*\* button\*\* — You’ll see this button in each gray highlighted start-date row.❗**Note:** Each page shows up to 50 encounters with charges to review, but if there are more than 50 encounters on a date, the rest will spill over into the next page. **The **`**Approve all**`** button approves all charges for that date.**
* **Rerun Eligibility** — You can rerun an eligibility check on any of these encounters by simply clicking the patient’s eligibility status.
#### How Charge Options Populate the Suggested Charges List
Insights gathers all available charge information from the payer and surfaces it in the list of charges. This means that you’ll have choices beyond the Insights suggested charge, as well as more context and detail about each charge option, when the payer provides such information.
#### Review Suggested Charges Section
Here, you can review the following charge options. Insights’ suggested charge will be pre-selected, though you could also charge any of the other listed choices.
* **Copay Option**
* **Deductible Option**
* **Co-Insurance Option**
Self-Pay encounters will only have a Self-Pay category.
If you would like to be able to charge for **multiple choices simultaneously** (such as Copay and Deductible), your account manager can help set up that feature.
**To approve charges in bulk,** use the `Approve all` button, described earlier in this guide.
* 👓 **View, Update, and Approve Individual Charges** — Start by clicking into an encounter.
Of course, we recommend using the pre-selected option labeled ‘Our Suggestion,’ so for this example we’ll continue with the suggested copay amount. Click `Approve & Continue`.
A confirmation popup will appear. We’ll select charge type ‘Copay’ and then click `Confirm`.
A message indicating review completion will appear, and you can move on to the next patient.
* 📒 **Benefits Summary** — You can see more details about the patient’s **raw benefits** by expanding the `Benefits Summary` menu. Keep in mind that some of these benefits may be overridden by rules applied by the rules engine once you approve their charges.
* 💰 **Add a Custom Charge** — If none of the charge options work for your purposes, you can choose to `Add custom charge` instead. For this example, we’ll create a custom deductible charge, though the process is the same for all types of charges. First, click on `Add custom charge`.
Fill in the amount and the description, then click `Confirm`.
Your custom charge will appear in the list of options. Select it, then click `Approve & Continue`.
In the popup, select charge type ‘Deductible’ and then `Confirm`.
A message will appear, informing you that the review has been completed.
**Features Supported:**
* View all appointments and their suggested charge
* Ability to override suggested charge instantly
* Can filter down appointments to ones that have suggested charge, have not been overridden, are for a new patient, etc.
* Displaying where the suggested charge matches the last remit in Appointments
* Can also filter where remit does not match in Review Charges
# Getting Started with the Patient Profile Page
Source: https://docs.athelas.com/insights_biller/patient_profile/patient_profile_page
Manage a patient's full financial picture — charges, transactions, credits, and balance — with the Athelas Assistant balance explainer.
### **Getting Started with the Patient Profile Page**
The Patient Profile Page is where you manage everything about a patient's financial picture in Insights: their charges, payments, credits, and balance, all in a single view. Athelas Assistant sits alongside the page with full context, ready to explain any balance or trace any dollar back to where it came from.
A few terms used throughout this page:
* **PR (Patient Responsibility):** the portion of a charge the patient owes, as opposed to insurance.
* **DOS (Date of Service):** the date a patient was seen. Charges and credits are tracked per DOS.
* **Credit:** money on the patient's account that hasn't been applied to a charge yet, typically from an overpayment or a refunded payment that was kept on account.
## **What is the Patient Profile Page?**
The Patient Profile Page consolidates the entire financial history of a patient into one screen: every charge from pre-visit estimate through final remittance, every payment and refund, and every credit movement in between. It replaces jumping between the old charges list, payments list, and PR timeline to piece together what happened.
**Key capabilities:**
* **One-click AI balance summary:** click the patient's balance and Athelas Assistant will explain why they owe what they owe, with no prompting required.
* **End-to-end transaction activity:** every credit is now traceable, linking back to the payment it originally came from, so "where did this money come from?" and "where did it go?" are always a couple of clicks away.
* **Unified Charges table:** one row per DOS, showing the full lifecycle from estimate to finalized balance.
* **Charge Details drawer:** per-CPT breakdown (Copay, Co-Insurance, Deductible, etc.) and the full PR timeline.
* **Transactions table:** every incoming payment on the patient, with clear status and refund information inline.
* **Athelas Assistant with screen context:** no need to re-type IDs. The assistant already knows the patient, charge, or transaction you're looking at, and can act on credits (apply, move, refund, write off).
## **Getting Started**
### **Accessing the Patient Profile**
Log in to Insights at **[insights.athelas.com](https://insights.athelas.com/)** and navigate to a patient from the **Patients** tab, from a claim's **Patient** link, or directly from global search. The first time you open the new Patient Profile, a guided tour walks you through the layout automatically.
The page uses a three-panel design:
* **Left:** patient summary, quick actions, and communication/status controls.
* **Center:** the Charges and Transactions tables, with drill-down views for details.
* **Right:** the Athelas Assistant side panel, available throughout.
Press **Ctrl-K** (Windows) or **Command-K** (Mac) anywhere in Insights to quickly search for a patient or jump to another page without losing your place.
### **Quick Actions**
The quick actions toolbar at the top of the patient summary is where you'll find the most common patient-level tasks: edit patient information, download statements, add a note to the account, and more.
### **Communication & Status**
The status controls let you manage how Insights interacts with the patient: toggle automatic text messages on or off, set up a payment plan when your role allows it, or mark the account as **In Collections**. Changes take effect immediately and are logged in the patient's activity history.
## **The Charges Table**
The Charges tab shows one row per date-of-service charge and tracks the full lifecycle in a single row. Before this release, following a charge from estimate to final balance meant jumping between the charges view, the PR timeline, and remittance detail. Now it's visible at a glance.
**Columns:**
* **Appt. (Suggested):** the pre-visit estimate from the rule engine, before the patient arrived.
* **Appt. (Charged):** how much was put on the patient's balance at check-in, whether or not they paid it.
* **Appt. (Collected):** how much was actually collected from the patient at check-in.
* **Final PR:** the patient's responsibility after insurance adjudicated the claim.
* **Charge Status:** where the charge is in its lifecycle: `Initial Charge` → `Claim in Progress` → `Finalized`.
* **Written Off / Paid / Refunded / Balance:** how the balance has been settled, and what remains.
Use the filter and sort controls at the top of the table to narrow the view by status, date range, or balance.
## **Charge Details**
Clicking any row in the Charges table opens a detail panel with the full story of that charge:
* **Per-CPT summary table:** a row per procedure code with Copay, Co-Insurance, Deductible, Other, and Self-Pay amounts.
* **Overview:** charge events (claim submissions, remittance, adjustments) separated from transaction events (payments, credits, refunds) so each side of the ledger is easy to read.
* **PR Timeline:** the full lifecycle from pre-visit estimate through final balance.
This is the "drill all the way in" view when the balance summary or a Charges table row raises a question you need to answer precisely.
## **The Transactions Table**
The Transactions tab shows every incoming payment on the patient. Refunds don't appear as their own rows; instead, refund activity is reflected on the originating payment through its status badge and inside its Transaction Details page.
**"Refund" now strictly means money leaving the system.** Moving money from a payment into credits is labeled **"moved to credits"**. These used to look identical in the old UI, which was a frequent source of confusion. Credit operations (applications, movements between DOS) no longer clutter the transactions list; to see credit movements for a specific payment, open it and check the **Activity feed** on the Transaction Details page, or use the **Credits** tab.
**Columns:**
* **Date:** when the payment was created.
* **Type:** the kind of transaction, covering the different payment sources Insights supports (card, SmartPay, cash, check, ACH, and more).
* **Amount:** the dollar amount.
* **Payment Method:** the specific method used for the transaction.
* **Performed By:** the user or system that created the transaction.
**Status badges:**
* `Succeeded`: the payment went through cleanly and has not been refunded.
* `Partially Refunded`: some portion of the payment has been refunded or moved to credits.
* `Refunded`: the entire payment has been refunded or moved to credits.
**Tabs:**
* **All:** everything.
* **Outstanding:** payments not yet fully applied.
* **Paid:** fully applied payments.
* **Canceled:** voided transactions.
## **Transaction Details**
The Transaction Details page is where the new credit infrastructure really shows up. Every credit on a patient's account now carries a chain back to the payment that originally created it, no matter how many times it's been moved, split, or reapplied. The Transaction Details page is where that chain becomes visible.
**Summary cards** across the top give you the state of the payment at a glance:
* **Initial Amount:** what this payment started as.
* **Total Applied:** how much of this payment has been applied to charges, whether directly or indirectly through credits.
* **Total Refunded:** how much has left the system as a refund back to the patient.
* **Total Credits:** how much is still sitting as credits on the account, traceable to this payment.
Together, Total Applied + Total Refunded + Total Credits should equal the Initial Amount, so you can quickly see whether a payment is fully accounted for.
**Application breakdown by DOS:** a table showing every date of service that received money from this payment, including money applied indirectly through credits. Every row links back to the specific charge it paid.
**Activity feed:** a chronological timeline of every event tied to this payment, including creation, applications, movements between dates of service, refunds, and credit creations. Each event expands for per-charge detail and cross-links to related transactions, so you can hop from a credit application on one DOS to the refund that created that credit to the original payment, and back.
You can start from either end of the chain. From a charge, the credit application in the PR Timeline points you back to the payment that created the credit. From a payment, the application breakdown and activity feed point you forward to every charge and DOS that received money from it. Either direction, you can always follow the complete money trail.
When a credit-payment draws from more than one source payment (a split credit), each source produces its own credit record with its own chain. The activity feed surfaces both, so a \$150 credit-payment sourced from a \$100 payment and a \$50 payment shows two separate events, each traceable to its own origin.
## **Tracing Credits with Athelas Assistant**
Athelas Assistant lives in the right-hand panel of the Patient Profile Page and has the patient's full context at all times, so you don't have to paste an ID or describe what you're looking at. Open it anytime from the **Athelas AI** button in the top navigation.
The fastest way to start is to click the patient's **balance** at the top of the profile. Athelas Assistant will read the full context on the page and produce a plain-English summary of how the current balance came to be, covering charge progression, insurance adjudication, payments applied, credits created or moved, and anything still outstanding. Use this as a first step when a patient calls with a balance question, then drill into the specific charge or transaction the summary references to verify the detail.
**What Athelas Assistant can see on the Patient Profile Page:**
* The active patient and their full financial history.
* The charge, transaction, or detail view you currently have open.
* Credit chains, payment applications, and remittance data in real time.
**What Athelas Assistant can do:**
* **Explain:** where a specific credit came from, why a balance exists, what a payment was applied to, why insurance paid what they paid.
* **Act:** apply credits to outstanding PRs, move credits between dates of service, write off a balance, refund a payment.
**Example prompts to try:**
* *"Where did the \$50 credit on 3/12 come from?"*
* *"Why does this patient still have a balance after insurance paid?"*
* *"Move the unused credit from the 2/1 visit to the 4/3 visit."*
* *"Explain how this payment was applied across dates of service."*
* *"Refund the \$25 overpayment from last Tuesday."*
Action prompts (apply credits, move credits, refund, write off) make real changes to the patient's account. Athelas Assistant will always show you a preview of what it's about to do and ask for confirmation before executing.
### FAQ
**Appt. (Suggested)** is the pre-visit estimate, meaning what our rule engine predicted the patient would owe based on their plan, benefits, and the scheduled procedures, before they arrived. It's what front desk uses to collect at check-in.
**Final PR** is what the patient actually owes after the payer adjudicates the claim and a remittance comes back. The two can differ: the estimate is a best guess, and the remittance is the truth. The Charges table shows both side-by-side so you can see where the estimate was accurate and where it wasn't.
Credit operations no longer appear in the Transactions table; only incoming payments do. This was an intentional change: mixing credit movements with real transactions was a frequent source of confusion, especially around what "refund" meant.
You can still see every credit event in two places:
* On the **Credits** tab, which lists credits for the patient and how they've moved.
* On the **Activity feed** of the Transaction Details page for a specific payment, which shows the credit events tied to that payment (creations, applications, movements between DOS, refunds) in chronological order.
A **refund** is money leaving the system, returned to the patient's card, check, or account.
**Moving to credits** keeps the money on the patient's account as an unapplied credit, available to be applied to a future charge. The funds don't leave; they just change from "applied to DOS A" to "available as credit."
In the new UI these are labeled differently. Refunds are reflected on the originating payment's status and Transaction Details page; credit movements appear on the Credits tab and in the Activity feed of the source transaction.
Yes, from either direction.
**From a charge:** open the Charge Details drawer and look for the credit application event in the PR Timeline. Each event links back to the payment that originally created the credit. If the credit was sourced from multiple payments (a split credit), a tooltip lists every source payment with its date, method, and amount, each clickable.
**From a payment:** open the Transaction Details page and use the **Application breakdown by DOS** and **Activity feed**. Both show every charge and DOS that received money from this payment, including indirectly via credits.
Start by clicking the patient's balance to get the AI summary; it will usually call out any credit movement and where it ended up. If you need to verify manually:
1. Open the source payment in the Transactions table and go to Transaction Details.
2. Check the **Total Credits** summary card, which shows credits still traceable to this payment.
3. Scan the **Activity feed** for any `moved to credits`, `applied`, or `refunded` events that explain what happened to the credit.
If the credit was moved to a different DOS, the activity feed will show the movement event with links to both the old and new DOS. You can also open the **Credits** tab for a patient-level view of every credit and its current state.
# Aging AR Report
Source: https://docs.athelas.com/insights_biller/reports/aging_ar_report
The [Revenue Activity Report](/insights_biller/reports/revenue_activity_report) is the newer, period-over-period successor to the Aging AR Report. Its Aging AR Activity tab covers similar ground, plus the underlying charges, payments, adjustments, and transfers that changed during a period — but note the buckets aren't identical: this report's 121–365 day bucket is split into 121–180 and 181–365 on the Revenue Activity Report, and grouping options differ slightly (this report offers Claim Type; Revenue Activity Report groups by Patient instead). New practices should prefer the Revenue Activity Report; the Aging AR Report remains available for now.
#### Summary
The **Aging AR Report** shows how much money you have outstanding (accounts receivable) and how old it is. It groups balances into time buckets: 0–30 days, 31–60, 61–90, 91–120, 121–365, and 366+ days from the report date.
The report combines **insurance AR** (claims and remittances) and **patient AR** (self-pay, appointment-related, and misc patient balances). You can choose how to group the rollup: by **Claim Type**, **Provider**, **Facility**, **Billed Insurance**, or **EHR Insurance**.
You get a **ZIP file** with one or more of: **Aging AR Rollup (PDF)**, **Aging AR Rollup (CSV)**, and **Aging AR Detailed Report**. The rollup is the summary with totals by aging bucket; the detailed report is row-level (each encounter/appointment with charges, payments, adjustments, and aging buckets). Use it to monitor AR aging, prioritize follow-up, and support month-end close.
#### Notes
* **Aging buckets are based on the End Date (as-of date).**
* You can leave **Start Date** empty to run an as-of report; **End Date** is the “as of” date for aging.
* **Group By** controls how the rollup is summarized
#### Filters Supported
* Date Range Type: Date of Service, Date of Submission
* Start Date / End Date (Start Date can be empty)
* Group By (Claim Type, Provider, Facility, Billed Insurance, EHR Insurance)
* Patients
* Providers
* Payers
* Facilities
* Include Credits toggle
# A/R Reports
Source: https://docs.athelas.com/insights_biller/reports/ar_reports
The [Revenue Activity Report](/insights_biller/reports/revenue_activity_report) is the newer, period-over-period successor to the A/R Reports. Its Aging AR Activity tab covers similar ground, plus the underlying charges, payments, adjustments, and transfers that changed during a period — but the aging buckets and grouping options aren't identical between the two (see the [Aging AR Report](/insights_biller/reports/aging_ar_report) for the bucket differences). New practices should prefer the Revenue Activity Report; the A/R Reports remain available for now.
#### What is A/R?
**Accounts Receivable (A/R)** simply refers to all uncollected charges from both patients and insurance companies.
#### Summary
This comprehensive report includes primary/secondary insurance A/R, as well as patient A/R data. If this report does not meet your needs, please contact our staff.
**A/R is calculated as follows**:
A/R = Charges - Insurance Payments - Patient Payments - Insurance Adjustments.
❗ A/R Reports are generally very large and will take time to download.
#### How to Do It
First, click the download icon for the A/R Report on the My Reports page.
Set all filters (scroll down in the window to find them, as there are many) and click `Download`.
Open the downloaded CSV file in Excel or a similar program. You will see A/R divided into four charge categories, plus a summary total, on the first tab, with about ten more tabs of data available at the bottom, depending on the filters you set.
#### Categories of AR
The first tab, Monthly A/R Charges, is essentially a summary page. The first of the five sections is labeled ‘**All Monthly A/R Charges**.’ It is the sum total of the other four: Insurance, Miscellaneous, Appointment, and Self-Pay charges.
Insurance encompasses all external payers. Miscellaneous, Appointment, and Self-Pay charges are all patient responsibility.
Note that this first tab will be unaffected by any date filters you may have set. The subsequent tabs, however, will reflect your date range parameters.
#### Filter Notes
* When filtering patient charges with date type by date of submission, the date on which patient charges were created is used.
* The “A/R Mode Types” do not affect how Patient A/R is determined.
#### Aging Mode Definitions
* **Latest Date of Submission**
* Age of the insurance charges is determined by the date of submission of the latest claim submission.
* Age of patient charges is determined by the date the charge was added to the patient’s balance.
* **First Date of Submission**
* Age of the insurance charges is determined by the date of submission of the first claim submission.
* Age of patient charges is determined by the date the charge was added to the patient’s balance.
#### Filters Supported
* A/R Mode Type
* Date Range: Date of Service & (First or Latest) Date of Submission
* Date Posted
* Patients
* Providers
* Facilities
* Insurance companies
# Bank Deposit Reconciliation Report
Source: https://docs.athelas.com/insights_biller/reports/bank_deposit_reconciliation_report
#### Summary
This report breaks down every bank deposit for the reporting period, **down to the individual claim**, and shows exactly where the money in each deposit came from and what state it is in. It answers the question: *"For each dollar that hit our bank account, do we know which check it came from, which claim it pays, and have we posted it in our system yet?"*
Each deposit is represented by three kinds of rows:
* **One line per claim on each check** — how much of that check was matched & posted vs. matched & unposted for that specific claim.
* **A check-level summary line** (claim number blank) — leftover cash on the check that could not be tied to a specific claim line on the 835, plus any non-Athelas cash on the check.
* **A deposit-level summary line** (check ID and claim number both blank) — cash on the deposit that is not tied to any specific check.
#### The Four Buckets
Every dollar of every deposit lands in exactly one of four buckets, so the buckets always add up to the bank deposit total:
* **Matched & Posted** — insurance cash on a check that has been matched to the deposit *and* posted in the system, broken out per claim.
* **Matched & Unposted** — insurance cash matched to the deposit but not yet posted. When the 835 identifies which claims the money is for, this is split per claim; any remainder shows on the check-level summary line.
* **Unmatched** — cash that arrived in the deposit but is not tied to any specific check (shown once per deposit on the deposit-level summary line).
* **Others** — non-insurance cash (patient payments, refunds, miscellaneous receipts, or money for claims submitted outside Athelas).
#### Key Use Cases
* Trace every dollar of a deposit back to the check and claim it pays.
* Surface insurance cash that has been received but not yet posted.
* Separate insurance cash from patient payments and other non-insurance receipts.
* Support month-end bank reconciliation alongside the [Site Transaction Report](/insights_biller/reports/site_transaction_report).
For the bank-linking workflow that feeds this report, see [Bank Deposit Verification](/insights_front_desk/utilities/bank_deposit_verification).
#### Data Dictionary
| Column Name | Description |
| -------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| bank\_deposit\_id | The ID of the bank deposit this row belongs to. Every row is tied to exactly one deposit. |
| bank\_deposit\_link | A direct link to this deposit in Insights, so you can open it and see the underlying detail. |
| bank\_deposit\_date | The date the deposit landed in the bank. Used to place the row in the right reporting period. |
| check\_number | The check number printed on the ERA check inside the deposit. Blank means the row is a deposit-level summary line. |
| athelas\_claim\_number | The claim submission ID this row's matched cash pays. Blank on check-level and deposit-level summary lines. |
| date\_posted | The earliest date a payment item was posted for this claim on this check. Only populated on matched-posted rows. |
| notes | Free-text notes captured on the bank deposit when it was reviewed. |
| deposit\_description | The original transaction description from the upstream source (virtual card, Plaid, Anatomy, or BAI). |
| bank\_account\_last\_4 | The last 4 digits of the bank account associated with the deposit. Blank for virtual card transactions. |
| payment\_type | The ERA payment method codes seen on the check (e.g. ACH, CHK). |
| matched\_posted\_usd | Money on this check/claim that has been matched to a bank deposit *and* posted as an insurance payment item. |
| matched\_unposted\_usd | Money matched to a bank deposit but not yet posted as insurance payment items. |
| unmatched\_usd | Insurance cash that arrived in the deposit but cannot be tied to any specific ERA check. Reported once per deposit on the deposit-level summary row. |
| others\_usd | Non-insurance cash captured on the deposit or check — patient payments and refunds (deposit-level), or money for claims submitted outside Athelas (check-level). |
| total\_cash\_usd | The full amount of cash this row accounts for. Summing this column across all rows of a deposit equals the deposit's total bank amount. |
| unmatched\_posted | Deposit not matched to any check but force-posted. Only populated when the report is downloaded by **Date Posted**; a subset of `unmatched_usd`. |
| provider\_level\_adjustment\_usd | Provider-level adjustments deposited in the bank — see the [Provider Adjustments Report](/insights_biller/reports/provider_adjustments_report) for the full breakdown. When downloaded by **Bank Deposit Date**, shows only matched provider-level adjustments; when downloaded by **Date Posted**, shows both matched and unmatched provider-level adjustments. |
`total_cash_usd = matched_posted_usd + matched_unposted_usd + unmatched_usd + others_usd + provider_level_adjustment_usd`. See [Month-End Close](/insights_biller/reports/month_end_close) for how this ties out to your bank statement.
#### Filters Supported
* Date Range Type — Bank Deposit Date or Date Posted
* As-Of Date — snapshot the match state as of a specific date (useful for reproducing a prior close)
# Building and Running Reports
Source: https://docs.athelas.com/insights_biller/reports/building_and_running_reports
For a concise overview of the My Reports page, see [My Reports](/air_admin/analyze_your_reports/my_reports). Looking at this from the **Air** tab? [Review your Reports](/air_admin/analyze_your_reports/all_reports) covers the same UI from the Air docs side.
#### At a Glance
This overview contains general information about the [My Reports](https://insights.athelas.com/v2/my-report) page in broad strokes. Administrators and Billing Managers should be able to **run a report on most information available in Insights, presented in one comprehensive bundle**. Then, that report can be easily downloaded as a CSV and edited in a spreadsheet at will.
Detailed information about specific reports is available by clicking the `?` icon next to each report.
#### Categories of Reports
* **Claims**
* These are reports related to charges, submitted claims, and details for all encounters.
* **Revenue**
* Here you will find information about patient and insurance payments, including manual entry payments like cash or check.
* **EHR Reports**
* If your practice uses Air, those reports are available here. See [EHR Reports](/air_admin/analyze_your_reports/ehr_reports) for an overview and the full list of reports, [Report Categories](/air_admin/analyze_your_reports/report_categories) for every category and the reports it contains, and [Building a Report](/air_admin/analyze_your_reports/building_a_report) for how to configure and run one. Pre-built download cards on My Reports (Daily Stat, Open Cases, Audit Log Export, etc.) are documented on [My Reports](/air_admin/analyze_your_reports/my_reports).
* **Miscellaneous**
* Patient summary breakdown reports and upcoming patient statement reports are in this category.
* **Performance Management**
* Payroll bonus reports can be configured and downloaded here. See [Measuring Performance](/insights_admin/reporting/measuring_performance) for how to configure and run the Payroll Bonus Report.
#### Features
All reports can be downloaded as bundled Excel files, with informational `?` icon buttons providing details about each one.
Existing reports that are found across Insights are also included in this page that you can slice and dice under the same set of unified filters.
#### Example
Let’s say we want to run a report to find all posted insurance payments for the past two weeks.
First, click on the download icon for `Posting Log`.
Set the Date Type to `Date Posted` and the Start and End Dates to the past two weeks. For this example, we’ll leave the rest of the fields blank.
Then click `Download`.
The reports will appear in your Downloads folder on your hard drive, or wherever you route new downloads by default.
From here, you have access to several tabs with posted payment information organized in various ways:
* Insurance Payments Summary
* Insurance Payments
* Check Summary
* Patient Payments Summary
* Patient Payments
This example report, and all others available on the My Reports page, allow you to view and manipulate data as needed at both the overhead view level and the granular, individual level.
# Claim Adjustments Report
Source: https://docs.athelas.com/insights_biller/reports/claim_adjustments_report
#### Summary
The **Claim Adjustments Report** provides a detailed view of adjustments applied to each patient encounter.
It is especially helpful for practices dealing with **multi-payer claims**, as it clearly separates adjustment activity for **primary**, **secondary**, and **tertiary** payers.
Use this report to identify recurring adjustment reasons, improve billing processes, or support reconciliation workflows.
#### Notes
* Each encounter may appear multiple times (once per payer).
* Adjustments are grouped at the **payer level**, not by individual procedure or line item.
* No totals or pivots are included — these can be calculated after download (e.g. in Excel).
#### Filters Supported
* **Date Range Type**
* Date of Service
* Date Posted
* Latest Date of Submission
* **Filter Fields**
* Start Date / End Date
* Patients
* Providers
* Payers
* Facilities
* Report Format (CSV or XLSX)
# Collections Report
Source: https://docs.athelas.com/insights_biller/reports/collections_report
Related reports: for custom grouping and date-type options, see the [Custom Collections Report](/insights_biller/reports/custom_collections_report); for a posting-log view of the same posted payments (including Check Date), see the [Posting Log Report](/insights_biller/reports/posting_log_report); for front-desk **upfront (point-of-service)** collection performance, see the [Front-Desk Upfront Collections Report](/insights_biller/reports/upfront_collections_report).
#### Summary
The collections report provides an overview of all collected amounts—both insurance and patient payments—within a specific date range for your site.
#### Notes
* Columns labeled with `overall_` are already aggregated and cannot be used to sum payments.
* For example, if there is a column labeled `overall_amount_paid` and another labeled `amount_paid`, use the `amount_paid` column for aggregation.
* If a patient payment has a recorded payment date (entered by the user), this date will be shown instead of the system-generated payment date.
* The report does not account for the date of service. It only tracks the date when the payment was posted in our system.
* Insurance payments reflect what is posted in Insights and may not correspond to actual bank deposits.
* Insurance names are based on Athelas' insurance mapping. Contact your account manager if you need to update the mapping.
* Each insurance payment may be linked to a bank deposit through our [Plaid](https://plaid.com/) banking integration. If you're interested in this feature, please reach out to Athelas staff.
#### Filters Supported
* Facilities
* Date Range: Date Posted
* Patients
* Rendering Providers
* Payers
# Custom Collections Report
Source: https://docs.athelas.com/insights_biller/reports/custom_collections_report
#### Summary
This is the catch-all category for creating collections reports with modifications specific to your practice. Set the filters on these reports to fit your organization’s needs.
For a standard collections report, see this [guide](/insights_biller/reports/collections_report). For front-desk **upfront (point-of-service)** collection performance instead of posted payments, see the [Upfront Collections Report](/insights_biller/reports/upfront_collections_report).
#### Main Feature
Use the ‘**Group By**’ menu to see the report grouped to your specifications. Options are **Facility**, **Provider**, **CPT Code**, **Patient**, **Encounter ID**, **Day**, and **Month**.
Two date controls determine how the report is built:
* **Select Date Type** sets the date basis for your date range: **Date Posted** (default), **Check Date**, or **Date of Service**.
* **Select Date Charge Type** sets how billed charges are dated: **First Date of Submission** (keeps billed charges static for consistent reporting) or **Latest Date of Submission** (dynamic, reflecting the most up-to-date billed amount).
#### Filters Supported
* Select Date Type (Date Posted, Check Date, Date of Service)
* Select Date Charge Type (First or Latest Date of Submission)
* Group By (Facility, Provider, CPT Code, Patient, Encounter ID, Day, Month)
* Provider Source (rendering provider, resource provider, appointment provider)
* Patients
* Providers
* Payers
* Facilities
* CPT Codes
* Place of Service Codes
* Include Credit Transactions toggle
* Report Format (CSV or XLSX)
# Detailed Charges Report
Source: https://docs.athelas.com/insights_biller/reports/detailed_charges_report
Related: the [Submitted Claims Report](/insights_biller/reports/submitted_claims_report) lists the submitted claims themselves (one row per claim); this report breaks out the primary-insurance **charge** lines from those submissions.
#### Summary
This report includes primary insurance charges from all claim submissions.
#### Notes
* The provider is based on the rendering provider from the encounter, not the claim submission.
* The insurance information comes from the claim submission, not the encounter. Changes to the encounter’s insurance will not affect the insurance recorded for the claim submission.
* CPT codes are based on those submitted with the claim. Any changes to the procedure codes in the encounter will not affect the CPT codes reported for the claim submission.
* A claim submission must have a submission date to be included in the report.
* The claim submission must be associated with the site to be included.
#### Filters Supported
* Date Range: Date of Service & Date of Submission
* Patients
* Providers
* Facilities
* Insurance Companies
# Export Claim Details
Source: https://docs.athelas.com/insights_biller/reports/export_claim_details
#### Summary
The Claim Details Export reflects the encounters listed on the [Claim Details](https://insights.athelas.com/v3/claim_level_view) page, representing all encounters imported into our system.
The download includes three reports, categorized by encounter, procedure, and insurance type.
A raw data sheet is also provided for validating the data specific to your practice.
#### Notes
* You cannot sum up patient payments and tie them to revenue graphs in this report. Miscellaneous patient payments are excluded. Only patient payments linked to PR (Patient Responsibility) generated from a remittance are included.
* The total billed amount is based on the latest primary claim submission for each encounter.
**The filters available here differ from the filters on the Claim Details page**. Here, you’ll select the report’s **inclusive** date range, i.e. ‘Start Date’ and ‘End Date.’
If you click `Download CSV` on the [Claim Details page](https://insights.athelas.com/v3/claim_level_view), however, it will respond to the **exclusive** filters you’ve set. These filters include ‘Submission Before,’ ‘Submission After,’ ‘Payment Posted Before,’ and ‘Payment Posted After.’
We can provide a report of open encounters by provider/patient upon request
#### Filters Supported
* Date Range: Date of Service & (First or Latest) Date of Submission
* Note: Date Posted is not supported for charges. The billed amount will always default to Date of Service, regardless of other metrics set to Date Posted.
* Patients
* Providers
* Payers
* Facilities
* CPT Code
* Encounter Status
* Encounter Stage
* Partial Payments toggle
* Report Format (CSV or XLSX)
#### Filters Unsupported
* Date Type: Date Posted
* Patient Responsibility Status
* Primary Claim Status & Working Status
* Secondary Claim Status & Working Status
The **Encounter Rollup** CSV included in this download will show tertiary insurance information.
#### Other Features Supported
* Automated weekly emails containing amount of open encounters
* Validating encounter to claim creation volume on a monthly basis
* Working/triaging through integration errors and submission errors
#### Integrations With:
* Waystar
* CHC
* Carisk
* Availity
# Generate a Transaction Report
Source: https://docs.athelas.com/insights_biller/reports/generate_a_transaction_report
This page covers **how to generate** a transaction report from the Patient Responsibility page. For the column-by-column field reference, see the [Site Transaction Report](/insights_biller/reports/site_transaction_report); for the payment-method summary variant (cash, check, card, and insurance virtual cards), see the [Site Transaction Report Summary](/insights_biller/reports/site_transaction_report_summary).
#### At a Glance
For the health of any medical practice, or any business for that matter, regular audits of transactions are a standard best practice. Here’s how Athelas can get you your daily, weekly or monthly financial data with ease.
#### Here’s How to Do It
In the [Patient Responsibility](https://insights.athelas.com/v2/patient-responsibility) page, choose the Transaction View tab and click Transaction Report.
Filter by time range (start and end date/time), Rendering Provider, Patients, Facilities, and Facilitated By. You can also toggle **Include Credit Payments** and **Include Automatic Write-Offs** on or off. Then click **Confirm**.
After you click Confirm, a Payment History Report folder will download to your computer.
It contains CSV files of **Aggregate Metrics, Processed Transactions and Transactions by Charge**. It also contains a PDF of the Transactions by Charge for an easy viewing experience.
* **Aggregate Metrics** shows a single line of all totals in all categories — Outstanding Balance, Paid Cash, etc.
* **Processed Transactions** shows all payments, refunds and write-offs that successfully went through.
* **Transactions by Charge** shows individual charges assigned to patients, including any credits added.
The PDF is included for an easier viewing experience at a glance. It looks like this:
Done!
# Month-End Close with Insights Reports
Source: https://docs.athelas.com/insights_biller/reports/month_end_close
This guide is written for your **financial and accounting team**. It walks through how to use Insights reports to close each financial month — covering bank reconciliation, general ledger (GL) entries, exception handling, and month-to-month roll forward.
Insights provides a set of reports designed to support a reliable, repeatable month-end close:
* **[Revenue Activity Report](/insights_biller/reports/revenue_activity_report)** — revenue recognition, posted payments, adjustments, and A/R roll forward.
* **[Bank Deposit Reconciliation Report](/insights_biller/reports/bank_deposit_reconciliation_report)** — cash received, deposit matching status, and unposted/unmatched activity.
✨**Smart Tip:** Reports filtered by **Date Posted** are *static* — running one for a closed period today and re-running it months later returns the same numbers. Service-date reporting, by contrast, can shift as new activity posts against old dates of service, making a prior month's balances hard to reproduce. Closing on post-date activity keeps your numbers reproducible and auditable long after a period closes.
Together, these reports support A/R reconciliation and bank deposit reconciliation in a single integrated workflow.
## Reports Used at Month End
| **Report** | **Where to Access** | **Primary Use** |
| :---------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------- |
| **[Bank Deposit Reconciliation Report](/insights_biller/reports/bank_deposit_reconciliation_report)** | **Insights → My Reports → Bank Deposit Reconciliation** | Tie insurance deposits to the bank; surface unmatched/unposted items |
| **[Revenue Activity Report](/insights_biller/reports/revenue_activity_report)** | **Insights → My Reports → Revenue Activity Report: Detailed Activities** | GL entries for revenue and posted payments; A/R roll forward |
| **[Provider Adjustments Report](/insights_biller/reports/provider_adjustments_report)** | **Insights → My Reports → Provider Adjustments Report** | Surface provider-level adjustments (a subset of which are not included in the Revenue Activity Report) |
| **[Site Transaction Report](/insights_biller/reports/site_transaction_report)** | **Insights → My Reports → Site Transaction Report: Processed Transactions** | Tie patient payments to the bank; includes facility of collection |
## Step 1: Reconcile to Your Bank Account
This step verifies that every dollar that hit your bank is accounted for in Insights — for both insurance payments and patient payments.
### 1A — Insurance Payments: Bank Tie-Out
**Report:** [Bank Deposit Reconciliation Report](/insights_biller/reports/bank_deposit_reconciliation_report)
**Filters:**
* **Date Type** = `Bank Deposit Date`
* **Date Range** = close period (e.g., `06/01/2026 – 06/30/2026`)
* **As-Of Date** = end of the close period (e.g., `06/30/2026`)
Run the report and sum the **`total_cash_usd`** column. This total should match the sum of all deposits on your bank statement for the same period.
The report classifies every dollar of each deposit into four core buckets, plus two conditional columns:
| **Column** | **What it means** | **Action needed?** |
| :------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------- |
| `matched_posted_usd` | Matched to a remit check **and** posted to the ledger | ✅ None |
| `matched_unposted_usd` | Matched to a remit check, but **not** yet posted | ⚠️ See **Step 3A** |
| `unmatched_usd` | Deposit **not** matched to any check | ⚠️ See **Step 3B / 3C** |
| `others_usd` | Deposits unrelated to Insights claims (e.g., non-insurance funds) and patient payments | Review for completeness |
| `unmatched_posted` | Deposit not matched to any check but force-posted. Only available when the report is downloaded by `Date Posted`; a subset of `unmatched`. | — |
| `provider_level_adjustment_usd` | Provider-level adjustments deposited in the bank. By **Bank Deposit Date**, shows only `matched_provider_level_adjustments_usd`; by **Date Posted**, shows `provider_level_adjustments_usd` (matched and unmatched). | — |
**Reconciliation check:**
`total_cash_usd = matched_posted + matched_unposted + unmatched + others + matched_provider_level_adjustments`
This total should equal your bank statement deposits for the period. You can cross-verify against the **[Remittances](/insights_biller/general_billing/remittances)** page (**Daily Operations → Remittances → Deposits** tab):
* `matched_posted + matched_unposted + others + matched_provider_level_adjustments_usd` should equal the **Matched** tile.
* `unmatched_usd` should equal the **Unmatched** tile.
* `matched_posted_usd + matched_provider_level_adjustment_usd` should equal the **Posted** tile.
### 1B — Patient Payments: Bank Tie-Out
**Report:** [Site Transaction Report](/insights_biller/reports/site_transaction_report)
**Filters:**
* **Date Type** = `Expected Deposit Date` or `Date Posted`
* **Date Range** = close period
**Note:** You do not need to include credit or failed transactions when reconciling patient payments to the bank.
Patient payments do not flow through the insurance posting pipeline. They are collected separately via Stripe, cash, or check at the time of service, and must be reconciled independently. Choose your **Date Type** based on what you're tying out:
* Use **`Expected Deposit Date`** to tie out **Stripe payouts** deposited in your bank during the period. This may include payments *posted* in a previous month but *deposited* in the current one — payouts occur \~2 days after the Stripe payment is processed.
* Use **`Date Posted`** to tie out payments *collected* during the period. This is the recommended choice for non-Stripe payments — **cash** and **check**.
**To reconcile cash and check payments:**
1. Download the Site Transaction Report by **`Date Posted`** for the close period. (Date Posted is when the payment was marked as collected in the system.)
2. Open the **Processed Transactions** sheet.
3. Filter **`Payment Method`** to **exclude** `SMART_PAY` and `STRIPE_CARD_READER`. This leaves cash, check, and other non-Stripe methods.
4. Pivot the report by **`Facility of Collection`**.
5. Sum **`Amount Paid`** per facility of collection — this is your total patient collections for the period. (`Net Received` is net of Stripe fees and is not relevant for cash/check transactions.)
**To reconcile Stripe transactions:**
1. Download the Site Transaction Report by **`Expected Deposit Date`** for the close period. (Expected Deposit Date is Stripe's estimate of when the next batch of payments will be deposited in your bank.)
2. Open the **Processed Transactions** sheet.
3. Filter **`Payment Method`** to **only include** `SMART_PAY` and `STRIPE_CARD_READER`.
4. Filter out **`Payment Type`** = `INSURANCE_VIRTUAL_CARD` — not relevant for patient collections.
5. Sum **`Net Received`** — the total paid by patients, net of Stripe fees (which are not included in bank deposits).
For step-by-step help producing this report, see [Generate a Transaction Report](/insights_biller/reports/generate_a_transaction_report).
## Step 2: General Ledger Entries
Once the bank reconciliation ties out, use the **[Revenue Activity Report](/insights_biller/reports/revenue_activity_report)** to drive your GL entries.
**Report:** Revenue Activity Report — **Detailed Activities** tab
**Filters:**
* **Date Type** = `Date Posted`
* **Date Range** = close period
This report is **static when run by Date Posted**. Running it for a given month today and re-running it months later returns the same numbers.
### Cash-Basis GL Entries
| **GL Entry** | **Debit** | **Credit** | **Insights Source / Column** |
| :-------------------------------------------- | :---------------- | :---------------------------- | :---------------------------------------------------------------------------------- |
| Record cash received from bank | Cash | Unapplied Revenue | Bank statement / Bank Deposit Recon `total_cash_usd` |
| Record payments | Unapplied Revenue | Revenue *(by dimension)* | Revenue Activity → `paid` column |
| Record non-Insights (foreign-system) payments | Unapplied Revenue | Foreign System Revenue | Remittances and Checks page |
| Record and reconcile miscellaneous revenue | Unapplied Revenue | Miscellaneous revenue account | [Provider Adjustments Report](/insights_biller/reports/provider_adjustments_report) |
**For patient upfront collections not yet applied to a claim** (still in holding): these appear in the **Unapplied Payments** tab of the [Revenue Activity Report](/insights_biller/reports/revenue_activity_report). Record them to a clearing/liability account until the claim is adjudicated, at which point they move into Revenue Activity as `payer_index` 4.
## Step 3: Handle Exceptions
After running the bank reconciliation, review any amounts sitting in `matched_unposted_usd` or `unmatched_usd` to determine whether anything requires action before closing the month.
### 3A — Matched Unposted: How to Get Something Posted
**What this means:** Insights linked the remittance (check/ERA) to a bank deposit, but has not posted it to the ledger. This happens because the remittance was automatically placed into **Manual Review** — a guardrail that prevents the ledger from going out of balance.
**To resolve:**
1. In Insights, go to the **Claims** page → filter for **Unposted Remittances** → select status **Manual Review**.
2. Click into the claim. The **Encounter Stage** shows "Unposted Remittances."
3. In the **Posting Tool**, expand the procedure columns to find the specific remittance in Manual Review.
4. **Option A — Post it:**
* Click the **⋯** (three dots) to the right of the payment item → **Negate** → enter a reason.
* Review the payment preview showing balance rollups.
* Click **Post** in the upper right. The remittance is now posted to the ledger.
5. **Option B — Archive it** *(if the remittance should not hit the ledger)*:
* Click **Archive**. The line grays out and shows "Archived." Posting status updates to "Finalized" and the Unposted Remittances substage disappears from the encounter.
**Common reasons a remittance lands in Manual Review:**
* Conflicting PR decisions (e.g., a resubmission where two remits show different patient-responsibility amounts).
* Data-integrity issues (the remittance doesn't balance to the charges on the ERA).
* Future check date (Insights holds posting until the check date has passed and the deposit is confirmed).
* The primary payer remit contains an `OA23` denial code (indicating a prior payer's adjudication impact).
For detailed posting guidance, see [How to Use the Posting Tool Page](/insights_front_desk/posting/how_to_use_the_posting_tool_page) and [How to Handle Duplicate Remittances](/insights_front_desk/posting/how_to_handle_duplicate_remittances).
### 3B — Unmatched: How to Get Something Matched
**What this means:** Insights has a remittance (check/ERA) in the system, but it has not been linked to a corresponding deposit in your bank account.
**To resolve:**
1. Go to **Daily Operations → Remittances** in the left navigation.
2. Click the **Checks** tab → apply filter **Matching Status = Unmatched** to see all unmatched checks.
3. Click the unmatched check row.
4. Click **Deposit → Search Deposits**. Locate the matching deposit by Deposit ID, Date, Amount, Bank Account, Deposit Method, or Matching Status.
5. Once found, check the deposit and click **Link**. The check and deposit are now matched, and the amount moves from `unmatched_usd` to `matched_posted_usd` (or `matched_unposted_usd` if posting is still pending).
**Common reasons a check may not auto-match:**
* The ERA was received before the check hit the bank (timing lag).
* A paper check was deposited after the remittance was received.
* Multiple checks were bundled into one deposit.
* Lockbox processing delay, or weekend/bank-holiday lag.
* The payer batch was delayed.
For the full bank-linking workflow, see [Bank Deposit Verification](/insights_front_desk/utilities/bank_deposit_verification).
### 3C — Unmatched: If You Cannot Find the Deposit in Your Bank
If you search in Insights and the deposit does not appear anywhere, **the bank deposit has not yet been ingested into Insights.** This most commonly happens with paper checks processed through a lockbox, or ACH deposits not yet captured in the BAI2 file feed.
**Steps to take:**
1. Confirm the deposit appears in your bank account. If it's not there yet, wait 1–2 business days — it may be a timing difference.
2. If the deposit is confirmed in the bank but absent in Insights, contact your Athelas team to ingest the deposit manually. Provide the **bank account name**, **deposit date**, **deposit amount**, and the **bank reference / trace number**.
3. **Do not hold the month open waiting for the match.** Best practice is to record the cash to a **clearing account** at period close, then resolve the match in the next cycle once the deposit is ingested.
4. After the deposit is ingested into Insights, return to the **Remittances** page and manually link the check using the steps in **3B** above.
## Step 4: Month-to-Month Roll Forward
The roll forward confirms that your closing balances from the prior period are the correct opening balances for the next one. Use the **[Revenue Activity Report](/insights_biller/reports/revenue_activity_report)** — Detailed Activities tab, **Date Type** = `Date Posted`.
### A/R Roll Forward Formula
`Closing A/R = Opening A/R + Billed Amount − Payments − Adjustments − Transfer Out`
| **Component** | **Insights Column** | **Notes** |
| :---------------- | :------------------------------- | :------------------------------------------------------------- |
| Opening A/R | Prior period's `net_receivable` | Run last month's report to confirm the starting balance |
| + Charges | `billed_amount` | Gross charges posted in the current period |
| − Payments | `paid` (`payer_index` 1/2/3/4) | Shown as negative; includes all insurance and patient payments |
| − Transfer Out | `transfer_out` | Payer responsibility transferred to the next payer |
| − Adjustments | `total_adjusted` | Contractual, bad debt, write-offs |
| = **Closing A/R** | `net_receivable` (end of period) | Becomes next month's opening balance |
Because the Revenue Activity Report is static when filtered by **Date Posted**, your month-end snapshots are stable — you can re-run any prior month at any time and get the same result.
## Month-End Close Checklist
* [ ] **Bank Deposit Reconciliation Report** (Bank Deposit Date) run — `total_cash_usd` ties to the bank statement.
* [ ] **Remittances** page verified — Matched and Unmatched tiles agree with Bank Deposit Reconciliation output.
* [ ] **Bank Deposit Reconciliation Report** (Date Posted) run — `matched_posted_usd` ties to Revenue Activity `paid` (`payer_index` 1/2/3).
* [ ] All `matched_unposted_usd` items reviewed — posted or archived via the Posting Tool.
* [ ] All `unmatched_usd` items reviewed — manually matched, escalated to your Athelas team, or recorded to a clearing account.
* [ ] **Site Transaction Report** run — Stripe payouts verified by expected deposit date; cash/check totals verified by Facility of Collection.
* [ ] Patient collections by facility delivered to the controller (Site Transaction Report, pivoted by Facility of Collection).
* [ ] GL entries posted (cash or accrual, per your practice's accounting method).
* [ ] A/R roll forward completed — closing `net_receivable` from Revenue Activity agrees to next month's opening balance.
## Reference: Posting & Reconciliation Runbooks
| **Runbook** | **Description** |
| :------------------------------------------------------------------------------------------------------ | :--------------------------------------------------------------------------------- |
| [How to Use the Posting Tool Page](/insights_front_desk/posting/how_to_use_the_posting_tool_page) | Resolve remittances in Manual Review via the Posting Tool — negate/post or archive |
| [How to Handle Duplicate Remittances](/insights_front_desk/posting/how_to_handle_duplicate_remittances) | Resolve conflicting or duplicate remits |
| [How to Make a Custom Adjustment](/insights_front_desk/posting/how_to_post_a_remittance_manually) | Manually enter adjustment amounts on a procedure or encounter |
| [Bank Deposit Verification](/insights_front_desk/utilities/bank_deposit_verification) | Link an unmatched check to its bank deposit on the Remittances page |
| [EOB Creation and Portal Checks](/insights_front_desk/utilities/eob_creation_and_portal_checks) | Create EOBs manually for paper remits |
| [Bank Deposit Reconciliation Report](/insights_biller/reports/bank_deposit_reconciliation_report) | Report documentation and field definitions |
| [Revenue Activity Report](/insights_biller/reports/revenue_activity_report) | Report documentation and field definitions |
| [Site Transaction Report](/insights_biller/reports/site_transaction_report) | Report documentation and field definitions |
### FAQ
Reports filtered by **Date Posted** are static: the activity that posted within a closed period never changes, so re-running the report months later returns identical numbers. Service-date reporting, by contrast, re-buckets activity as new payments and adjustments post against old dates of service — so historical balances can shift. For a reproducible, auditable close, run your reconciliation and roll-forward reports by **Date Posted**.
Use **`Expected Deposit Date`** to tie out **Stripe payouts** that landed in your bank during the period (payouts occur \~2 days after the payment is processed, so this may include payments collected in a prior month). Use **`Date Posted`** to tie out payments *collected* during the period — the recommended choice for **cash** and **check**, which don't flow through Stripe.
It was automatically routed to **Manual Review** — a guardrail that prevents the ledger from going out of balance. Common causes include conflicting patient-responsibility decisions, a remittance that doesn't balance to the ERA charges, a future check date, or an `OA23` denial from the primary payer. Resolve it in the **Posting Tool** (post or archive) as described in **Step 3A**.
The deposit likely hasn't been ingested yet (common with lockbox paper checks or ACH not yet in the BAI2 feed). Contact your Athelas team to ingest it manually, providing the bank account name, deposit date, amount, and bank reference/trace number. **Don't hold the month open** — record the cash to a clearing account and clear the match next cycle.
Patient payments show up only in the `others_usd` bucket of the Bank Deposit Reconciliation Report — they do not flow through the insurance posting pipeline. Reconcile them separately using the [Site Transaction Report](/insights_biller/reports/site_transaction_report), as described in **Step 1B**.
# Patient Balances Report
Source: https://docs.athelas.com/insights_biller/reports/patient_balances_report
#### Summary
This report is a list of all patients and their current outstanding balances.
#### Notes
* This report does not include “customers” created through the quick purchase flow.
* This report only includes charges that are still on the patient’s balance. If a charge is canceled it will not be shown in this report.
#### Filters Supported
* None. All patients will show in this report.
# Patient Charges Report
Source: https://docs.athelas.com/insights_biller/reports/patient_charges_report
For a one-page summary of a patient's full encounter and payment history (often shared with patients or their lawyers), see the [Patient Claims One-pagers](/insights_biller/reports/patient_claims_one_pagers).
#### Summary
This report generates a summary of a patient's PR charges, whether outstanding or paid. It serves as an alternative to the mailed patient statement.
#### Filter Requirements
* You must select a single patient to download this report.
#### Filters Supported
* Single Patient
# Patient Claims One-pagers
Source: https://docs.athelas.com/insights_biller/reports/patient_claims_one_pagers
For a summary of a patient's PR charges instead of their full encounter/payment history, see the [Patient Charges Report](/insights_biller/reports/patient_charges_report).
#### Summary
This report provides a one-page summary of a patient’s encounters and the payments made toward those encounters. It can also be accessed through the patient profile under the 'Claims' tab. This report is often given to patients to share with their lawyers, summarizing services, charges, and payments.
#### Filter Requirements
* You must select a single patient to download this report. It supports date filters based only on the Date of Service or Date of Submission.
#### Filters Supported
* Patient
* Providers
* Facilities
* Insurance Companies
* Date range: Date of Service & Date of Submission
# Patient Eligibility Report
Source: https://docs.athelas.com/insights_biller/reports/patient_eligibility_report
#### Summary
This report tracks the latest eligibility results for all patients, grouped by insurance company and priority (PRIMARY, SECONDARY, etc).
It also provides filtering based on date of eligibility check, patients, and whether or not you want to exclude pending eligibility checks.
#### Filters Supported
* Patients
* Date of Eligibility Check (to and from range)
* Exclude Pending Eligibility Checks (selected by default)
* Report Format (Excel or CSV)
# Posting Log Report
Source: https://docs.athelas.com/insights_biller/reports/posting_log_report
For a collections-focused view of these same posted payments, see the [Collections Report](/insights_biller/reports/collections_report).
#### Summary
This report tracks total collections (both insurance and patient) within a specified date range. It provides both detailed and summary breakdowns of all payments posted in the system based on the selected date range and date type (either Date Posted, Date of Service, or Check Date).
#### Notes
* If a patient transaction includes a date entered by an Insights user, that date will be used for reporting and filtering in the patient section.
* The "Date Posted" for insurance payments is the date the procedure remittance was posted in the system.
#### Filters Supported
* Time Range: Date Posted, Date of Service, Check Date
* Patients
* Providers
* Payers — filter by Primary, Secondary, or Tertiary Payer
* Facilities
* Encounter Tag
# Provider Adjustments Report
Source: https://docs.athelas.com/insights_biller/reports/provider_adjustments_report
Related: to post, archive, or reallocate the adjustments this report summarizes, see [Provider Adjustments](/insights_biller/general_billing/provider_adjustments); for GL entries covering encounter-based revenue and payments, see the [Revenue Activity Report](/insights_biller/reports/revenue_activity_report); for tying insurance deposits to the bank, see the [Bank Deposit Reconciliation Report](/insights_biller/reports/bank_deposit_reconciliation_report); this report is also used during [Month-End Close](/insights_biller/reports/month_end_close).
#### Summary
**Provider adjustments** are check-level adjustments a payer applies directly on a remittance (835 PLB segment) — for example an overpayment recovery, a payer takeback, or another correction that isn't tied to a specific claim line. Because most provider adjustments aren't linked to an encounter, they don't appear in encounter-based reports like the [Revenue Activity Report](/insights_biller/reports/revenue_activity_report) or [Detailed Charges Report](/insights_biller/reports/detailed_charges_report). The Provider Adjustments Report surfaces this activity separately so it can be reviewed and reconciled on its own.
Each row groups all provider adjustments posted during the selected period by **payer** and **reason code**.
#### Key Use Cases
* Surface provider-level (check-level) adjustments that fall outside normal encounter-based revenue reporting.
* Reconcile total provider adjustments against cash actually deposited — tie out against the [Bank Deposit Reconciliation Report](/insights_biller/reports/bank_deposit_reconciliation_report) for the same period.
* Record and account for miscellaneous revenue during month-end close (see [Month-End Close](/insights_biller/reports/month_end_close)).
* Distinguish adjustments that happened to be auto-matched to an encounter from true check-level-only adjustments with no encounter tie.
#### Filters Supported
* Date Range: Date Posted
* Include Encounter-Linked Adjustments toggle — when off, only adjustments with no encounter link are included (this is the version that ties out to the Bank Deposit Reconciliation Report); when on, all provider adjustments in the period are included regardless of encounter link
#### Data Dictionary
| Column Name | Description |
| ---------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Payer | The insurance company on the remittance that posted the adjustment — this is the remittance's payer, not necessarily the insurance entered or billed on the encounter |
| Reason Code | The payer's adjustment reason code from the remittance |
| Reason Description | Plain-language label for the reason code (e.g. "Overpayment Recovery") |
| Linked to an Encounter | Whether any adjustment in this Payer + Reason Code group is tied to a specific encounter. Most provider adjustments are not — that's why they're excluded from encounter-based reports |
| Adjustment Count | Number of distinct provider adjustments included in this row |
| Payment Item Count | Number of distinct posted payment records behind those adjustments (normally one per adjustment) |
| Encounter-Linked Adjustments | Number of adjustments in this row that were matched to a specific encounter |
| Non-Encounter Adjustments | Number of adjustments in this row with no encounter tie — the check-level-only adjustments |
| Total Amount | Total dollar amount posted for this Payer + Reason Code combination during the selected period |
# Provider Line Item Report
Source: https://docs.athelas.com/insights_biller/reports/provider_line_item_report
Related: for total collections across all providers, see the [Posting Log Report](/insights_biller/reports/posting_log_report) or [Collections Report](/insights_biller/reports/collections_report).
#### Summary
The **Provider Line Item Report** shows patient payments and collections by **provider** and by **payment type (line item)**—e.g., copay, coinsurance, patient balance. You get two tables in one file, a **summary** (by provider and line item, with patient paid, fees, and net received) and a **raw** view (transaction-level detail: transaction ID, patient, facility, date posted, provider, line item, amounts). Date filtering is by **Date Posted** (when the payment was posted). Use it for provider productivity, compensation, or reconciliation by provider and payment type.
#### Notes
* **Date Range Type** is **Date Posted** only.
#### Filters Supported
* Date Range Type: Date Posted
* Start Date / End Date
* Providers
* Report Format (CSV or XLSX)
# Revenue Activity Report
Source: https://docs.athelas.com/insights_biller/reports/revenue_activity_report
The Revenue Activity Report is your practice's complete picture of financial movement over any time period — from new charges posted, to insurance payments received, to adjustments applied, to outstanding balances remaining. It also includes an **Unapplied Payments** tab that tracks appointment-level patient charges and collections separately from the encounter billing cycle.
## What Is the Revenue Activity Report?
The **Revenue Activity Report** is a period-over-period financial report that captures all revenue-related activity that occurred between a selected **Start Date** and **End Date**. Rather than showing a static snapshot, it shows what *changed* — new charges added, payments posted, adjustments applied, and balances transferred between payers.
The report answers questions like:
* What new charges were posted this month, and to which payers?
* How much did insurance pay vs. how much is still outstanding?
* Which encounters have aging balances, and how old are they?
* What contractual adjustments were taken during the period?
**How it works under the hood:** The report compares two snapshots of your A/R — one at the start of the selected period and one at the end — and surfaces the *delta*. Each row represents activity that occurred within the window, not just the current balance.
## The Three Tabs
### 1. Detailed Activity
The row-level transaction log. Every encounter procedure and every miscellaneous charge that had activity during the selected period appears here, with one row per **encounter × procedure × payer** combination. It includes all encounter-based activity (insurance claims, patient responsibility, adjustments), all miscellaneous charges, the charge posted plus any payments or adjustments applied during the period, and the resulting net receivable for each line.
Two activity types appear in this tab:
| Activity Type | Description | Example |
| --------------- | -------------------------------------------------------------------------------- | ---------------------------------------- |
| `ENCOUNTER` | Activity tied to a clinical encounter and CPT procedure code | Office visit billed to primary insurance |
| `MISCELLANEOUS` | Standalone patient-pay charges not linked to an encounter, appointment, or claim | Wellness program fee, no-show charge |
### 2. Aging AR Activity
This tab aggregates all outstanding net receivables from the Detailed Activity tab into **age buckets** based on the date of service. Use it to understand the health of your A/R and identify overdue balances.
| Bucket | Meaning |
| ------------ | --------------------------------------------------------------------------------------- |
| 0–30 Days | Service rendered within the last 30 days — typically still within payer processing time |
| 31–60 Days | May warrant a first follow-up |
| 61–90 Days | Follow-up recommended |
| 91–120 Days | Escalated follow-up recommended |
| 121–180 Days | Approaching timely-filing limits for many payers |
| 181–365 Days | 6–12 months old — high priority for review |
| 366+ Days | Over one year old — consider write-off review or escalation |
**Grouped by:** Patient, Rendering Provider, Insurance (inputted and billed), and Facility.
### 3. Unapplied Payments
This tab tracks appointment-level patient charges and the payments collected against them — for example, copays and balances collected at the time of service before a claim is submitted and adjudicated. It shows patient charges billed at the appointment level that were created or resolved during the period, payments and refunds received against them, with one row per appointment charge that had activity.
**How it relates to the other tabs:** Detailed Activity and Aging AR Activity cover encounter-side billing (insurance and applied patient payments). Unapplied Payments covers the *pre-encounter* side — patient collections pending the outcome of the insurance claim. A transaction will not appear in both tabs at the same time.
## Column Reference
### Encounter & Visit Identifiers
| Column | Description | Notes |
| ------------------------------- | ------------------------------------------------------------------------ | ----------------------------------------------------------- |
| `activity_type` | Whether this row is an `ENCOUNTER` or `MISCELLANEOUS` charge | MISCELLANEOUS rows have no encounter, provider, or CPT code |
| `encounter_id` | Identifier of the clinical encounter | Blank for MISCELLANEOUS rows |
| `date_of_service` | Date of the encounter, or the date the miscellaneous charge was created | Used for aging calculations in the Aging AR tab |
| `cpt_code` | CPT procedure code billed on the latest claim submission | Blank for MISCELLANEOUS rows |
| `line_item` | Description of the miscellaneous charge type | Only populated for MISCELLANEOUS rows |
| `encounter_is_intended_to_bill` | Whether this encounter was flagged as intended to be billed to insurance | Useful for filtering out non-billable encounters |
### Provider, Patient & Payer
| Column | Description | Values |
| ------------------------- | --------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
| `rendering_provider` | Full name of the provider who rendered the service | |
| `facility` | Facility or department where the service was delivered | |
| `patient_id` | Internal patient identifier | |
| `payer_index` | Which payer in the billing sequence this row represents | 1 = Primary, 2 = Secondary, 3 = Tertiary, 4 = Self-Pay / Patient |
| `inputted_insurance_name` | Insurance name as entered on the patient's profile at time of service | Shows `SELF-PAY` for patient responsibility rows |
| `billed_insurance_name` | Insurance name from the actual claim submission | May differ from `inputted_insurance_name` if coverage was updated; shows `SELF-PAY` for patient rows |
### Financial Columns
All financial amounts are in US dollars. Payment, adjustment, and transfer columns are shown as **negative numbers** — reflecting the accounting convention that they reduce the outstanding balance. Net Receivable is the amount still owed after all credits.
| Column | Description | Sign |
| ------------------------ | -------------------------------------------------------------------------------------------------- | ----------------------------------- |
| `billed_amount` | The full amount charged to this payer (gross charge) | Positive |
| `transfer_in` | Amount carried over from a prior payer in the billing sequence | Positive |
| `charge` | Net new charge for this payer = `billed_amount` − `transfer_in` | Positive |
| `paid` | Amount paid by this payer or patient during the period | Negative (credit) |
| `contractual_adj_amount` | Contractual write-offs taken during the period (e.g. fee-schedule discounts) | Negative (credit) |
| `other_adj_amount` | All other adjustments combined (capitation, bad debt, sliding fee) | Negative (credit) |
| `total_adjusted` | Total of all adjustments applied during the period = `contractual_adj_amount` + `other_adj_amount` | Negative (credit) |
| `transfer_out` | Balance passed to the next payer in sequence during the period | Negative (credit) |
| `expected_transfer_out` | The balance expected to transfer to the next payer based on current adjudication | Negative (credit) |
| `net_receivable` | Remaining balance still owed after payments, adjustments, and transfers | Positive = still owed; 0 = balanced |
### Unapplied Payments Columns
| Column | Description | Notes |
| ------------------------ | ------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------- |
| `appointment_id` | Unique identifier of the appointment | Use `appointment_link` to navigate directly in Insights |
| `date_of_service` | Date of the appointment | |
| `patient_id` | Internal patient identifier | |
| `patient_name` | Patient's full name | |
| `rendering_provider` | Provider who performed the service | |
| `facility` | Facility where the appointment took place | |
| `line_item` | Upfront collection item billed (e.g. "Copay") | |
| `date_of_charge` | Date the patient charge was created in the system | |
| `charge_status` | Current status of the patient charge at the end of the reporting period | |
| `charge_status_changed` | Date the charge transitioned to a terminal status within the period | Blank if no such transition occurred |
| `last_payment_date` | Most recent date a payment or refund was applied to this charge within the period | Blank if no payment activity occurred |
| `original_billed_amount` | Total amount originally billed to the patient for this charge | Positive |
| `charge_activity` | Net dollar change from charges entering or leaving the patient's open balance | Positive = new charge; Negative = cancelled, applied to insurance, or removed |
| `net_payment_activity` | Net amount paid by the patient during the period (payments positive; refunds reduce) | Positive or Negative |
| `is_charge_open` | `True` if the charge is still outstanding at period end; `False` if resolved | |
| `appointment_link` | Direct link to the appointment in Insights | |
## How to Use the Report
### Selecting your date range
The **Start Date** and **End Date** define the activity window. Only encounters and charges where *something changed* (a payment was posted, an adjustment applied, a new charge created) during this window appear.
**Best practice:** Run the report **monthly** with a full calendar month (e.g., April 1–April 30) for clean period reconciliation. You can also run it weekly to track cash flow in near real-time.
### Common workflows
* **Reconcile monthly collections.** In Detailed Activity, filter `activity_type = ENCOUNTER`, then sum the `paid` column for total insurance and patient cash collected, and `contractual_adj_amount` for total contractual write-offs.
* **Find outstanding balances by payer.** Filter `net_receivable > 0`, then group by `billed_insurance_name`; use `payer_index` to distinguish primary, secondary, tertiary, and patient balances.
* **Review A/R aging.** In Aging AR Activity, focus on the 91–120, 121–180, and 366+ day columns; use `rendering_provider` and `facility` to route follow-up, and sort by the oldest bucket to prioritize write-off reviews.
* **Isolate self-pay (patient) aging.** Filter `inputted_insurance_name` (or `billed_insurance_name`) to `SELF-PAY` — equivalent to filtering `payer_index = 4`. Every patient-responsibility balance is labeled `SELF-PAY` in both insurance columns, so no custom grouping is required.
* **Review appointment-level collections.** In Unapplied Payments, filter `is_charge_open = True` to see charges still awaiting payment, compare `original_billed_amount` to `net_payment_activity` to spot partial or missed collections, and use `appointment_link` to open a visit in Insights.
## Calculation Examples
The following examples use anonymized, illustrative data.
**Example 1 — standard insurance encounter.** A patient with Blue Cross primary had an office visit; the claim adjudicated during the reporting period.
| Column | Value | Explanation |
| ------------------------ | --------- | ------------------------------------------------------- |
| `billed_amount` | \$250.00 | Gross charge submitted to BCBS |
| `transfer_in` | \$0.00 | No prior payer balance carried in |
| `charge` | \$250.00 | = billed\_amount − transfer\_in |
| `paid` | −\$180.00 | BCBS paid \$180 during the period |
| `contractual_adj_amount` | −\$40.00 | Contractual write-off per fee schedule |
| `transfer_out` | −\$30.00 | Remaining \$30 transferred to patient responsibility |
| `net_receivable` | \$0.00 | \$250 − \$180 − \$40 − \$30 = fully resolved at primary |
A corresponding row with `payer_index = 4` (Self-Pay) would show the \$30 patient balance.
**Example 2 — multi-payer transfer.** A patient has Medicare primary and Medicaid secondary; primary paid and transferred the remaining balance to secondary during the period.
| Column | Primary (payer\_index=1) | Secondary (payer\_index=2) |
| ------------------------ | ------------------------ | ------------------------------- |
| `billed_amount` | \$300.00 | \$300.00 |
| `transfer_in` | \$0.00 | \$300.00 (carried from primary) |
| `charge` | \$300.00 | \$0.00 (no net new charge) |
| `paid` | −\$240.00 | −\$45.00 |
| `contractual_adj_amount` | −\$45.00 | −\$15.00 |
| `transfer_out` | −\$15.00 | \$0.00 |
| `net_receivable` | \$0.00 | \$0.00 (fully resolved) |
For multi-payer encounters, `transfer_out` on the primary row equals `transfer_in` on the secondary row — confirming the balance flowed correctly through the billing sequence.
**Example 3 — miscellaneous charge.** A \$50 no-show fee was added during the period; the patient paid \$50 online.
| Column | Value |
| ----------------------- | ------------- |
| `activity_type` | MISCELLANEOUS |
| `line_item` | No-Show Fee |
| `billed_insurance_name` | SELF-PAY |
| `billed_amount` | \$50.00 |
| `paid` | −\$50.00 |
| `net_receivable` | \$0.00 |
**Historical reconciliation:** Daily A/R snapshots are captured live starting June 2026. For practices that went live before then, earlier snapshots were backfilled from transaction history — so periods before June 2026 are reliable for trend and aging analysis, but may not reconcile to the penny against the source report you used at the time. Periods on or after June 2026 are designed to reconcile with your other Insights reports.
### FAQ
Each encounter can have separate rows per payer (primary, secondary, tertiary, patient). This is expected — it lets you see exactly how each payer's balance was handled. Filter by `payer_index` to focus on a specific payer tier.
A negative net receivable indicates an overpayment or credit on that encounter — the payer or patient paid more than the balance owed. This may warrant a refund review.
`inputted_insurance_name` reflects what was on the patient's profile at the time of the encounter, while `billed_insurance_name` comes from the actual claim submission. If a patient's insurance was corrected after the initial visit, these may differ.
The Revenue Activity Report closes your books through posted and applied payments, so upfront payments made at the appointment are not included until they apply to the encounter (after the claim adjudicates). To track all payments — applied and unapplied — use the [Collections Report](/insights_biller/reports/collections_report).
Most existing A/R reports — the [Aging AR Report](/insights_biller/reports/aging_ar_report) and [A/R Reports](/insights_biller/reports/ar_reports), which this report supersedes — combine every charge and payment into a single view, including patient money collected at the appointment before a claim is submitted. The Revenue Activity Report separates the two: Detailed Activity and Aging AR Activity show only *applied* encounter activity, while Unapplied Payments covers appointment-level patient collections that are not yet tied to a finalized encounter. A given dollar lives in exactly one place at a time.
# Site Transaction Report
Source: https://docs.athelas.com/insights_biller/reports/site_transaction_report
This is the **field reference** for the transaction report (the Aggregate Metrics, Processed Transactions, and Transactions by Charge sections). To generate the report, see [Generate a Transaction Report](/insights_biller/reports/generate_a_transaction_report); for the payment-method summary variant, see the [Site Transaction Report Summary](/insights_biller/reports/site_transaction_report_summary).
#### Summary
This report provides a detailed breakdown of your Stripe and recorded patient payments in three ways. It also includes write-offs.
#### Aggregate Metrics
This section summarizes all categories of patient payments and aligns with the patient payments reflected in other revenue graphs.
#### Processed Transactions
Each row represents an individual Stripe transaction. A single transaction may cover payments for multiple dates of service. Each transaction includes a "Payout ID" and an "Expected Deposit Date," which can be used to match the transaction to a bank deposit.
#### Transactions by Charge
Payments are grouped by the charges on a patient’s account. Each row shows a payment made toward a specific charge. A single payment in the Processed Transactions section may appear as multiple rows here, with the amount allocated to each charge.
#### Notes
Here is an example of how the Transactions by Charge and Processed Transactions reports differ:
* A payment of \$50 is made towards two charges for dates of service 12/30 and 1/15.
* Transactions by Charge
| Request ID | DOS | (..) | Total Amount Due | Amount Paid |
| ---------- | ----- | ---- | ---------------- | ----------- |
| 12345 | 12/30 | .. | \$30 | \$30 |
| 12346 | 1/15 | .. | \$20 | \$20 |
* Processed Transactions
| Payment ID | Payout ID | (..) | Amount Paid |
| ---------- | --------- | ---- | ----------- |
| 111111 | 12321 | | \$50 |
#### Filters Supported
* Date Type: Date Posted, Expected Deposit Date
* Rendering Providers
* Facilities
* Include Credit Transactions toggle
* Show Failed Payments toggle
#### Insurance Virtual Card Filters:
* Insurance
* Date range: Date posted
* If any other filter is passed, then we don’t show virtual card transactions.
# Site Transaction Report Summary
Source: https://docs.athelas.com/insights_biller/reports/site_transaction_report_summary
This is the **payment-method summary** variant of the transaction report (cash, check, card, and insurance virtual cards). For the full column reference, see the [Site Transaction Report](/insights_biller/reports/site_transaction_report); to generate a report, see [Generate a Transaction Report](/insights_biller/reports/generate_a_transaction_report).
#### Summary
This report provides a breakdown of all cash, check, and card transactions (processed through your Athelas card reader as well as any external card reader your practice may use). It also includes any insurance virtual cards processed through Insights.
Please note this report may take a minute to download.
It will look something like this:
#### Notes
* If any transactions appear in the "Unknown Payment Method" section, please contact Athelas staff immediately to classify them.
* The insurance virtual card report only supports certain filters. If an unsupported filter is applied, virtual card transactions will not be displayed.
#### Filters Supported
* Patients
* Facilities
* Providers
* Date Range: Date Posted
* Insurance Company IDs
#### Insurance Virtual Card Filters
* Insurance
* Date range: Date posted
Currently, if any other filter is used, virtual card transactions will not appear.
# Submitted Claims Report
Source: https://docs.athelas.com/insights_biller/reports/submitted_claims_report
Related: the [Detailed Charges Report](/insights_biller/reports/detailed_charges_report) breaks out the primary-insurance charge lines from submitted claims.
#### Summary
This report includes only submitted claims. If an encounter does not have a corresponding claim submission, it will not appear in the report.
#### Notes
* For a claim to appear, it must be submitted and have a submission date recorded in the database.
* Insurance details (primary/secondary) are based on the claim submission, not the encounter. If the encounter's insurance information changes later, the original insurance at the time of claim submission remains the payer.
* Information such as provider, patient, facility, site, and date of service is pulled from the encounter, not the claim submission.
* When downloading this report from the My Reports page, you can select which sheets to include in the export.
**Pro Tip: You can submit multiple claims for the same patient on the same date of service!** They simply need to be categorized differently.
To do so…
* Go to the Encounter Details page and select an encounter or create a new one.
* In the ‘Configurations’ section, you’ll find the ‘Category’ dropdown.
* The **‘Category’ dropdown** will be available for modification if you’re editing or creating a new encounter in such a situation.
* This extra level of distinction helps reduce the chance of rejection—many payers assume that the claims are duplicates otherwise.
* As these categories are global and cannot be altered, don’t fret too much about which category you choose. Just select the closest match. It simply needs to be different than other categories already associated with other such encounters.
#### Filters Supported
* Date Range: Date of Service & Date of Submission
* Patients
* Providers
* Facilities
* Payers
# Upcoming Patient Statements Report
Source: https://docs.athelas.com/insights_biller/reports/upcoming_patient_statements_report
#### Summary
The Upcoming Patient Statements report includes the patients due in your next statements batch for both electronic and mail statements. This report shows patient name for patients in the next batch along with a last contacted at date and current balance for that patient.
#### Notes
* This report does not use any filters. If you would like to edit the contents on this report, please change your upcoming batch parameters in the Patient Statements page in Insights.
#### Filters Supported
* None
# Front-Desk Upfront Collections Report
Source: https://docs.athelas.com/insights_biller/reports/upfront_collections_report
This report measures **front-desk upfront (point-of-service)** collection performance. It is distinct from the [Collections Report](/insights_biller/reports/collections_report) and [Custom Collections Report](/insights_biller/reports/custom_collections_report), which summarize posted insurance and patient payments across a date range.
#### Summary
This report is intended to help measure performance of front desk collections during a specified time frame. It shows outstanding charges, suggested charges, and other charges, as well as the amount actually collected at the time of the appointment.
After downloading and opening the CSV, you will see two tabs: ‘**Detailed Collections**’ and ‘**Summary of Collections**.’
* **Detailed Collections** gives you an appointment-level breakdown of collections
* **Summary of Collections** aggregates these details which you can use to assess your practice’s overall upfront collections performance
#### Filters Supported
* Patient
* Facility
* Appointment Date of Service
#### Acronyms in the Upfront Collections Report
* **OB:** Outstanding balance (corresponding to charges created *before* the appointment)
* **SC:** Suggested charge (corresponding to charges created *on the day of* the appointment - line items corresponding to copay/coinsurance/deductible/self pay)
* **OC:** Other charges (corresponding to charges created *on the day of* the appointment - line items corresponding to anything but copay/coinsurance/deductible/self pay)
# How to Add a Walk-In Patient
Source: https://docs.athelas.com/insights_front_desk/appointments/how_to_add_a_walk_in_patient
#### At a Glance
When a patient arrives without a scheduled appointment, use the **Walk-In Patient** flow to create their appointment, run eligibility, and collect payment — all in one place.
#### Here's How to Do It
From the [Appointments](https://insights.athelas.com/appointments) page, click **Walk-In Patient**. A **Charge Walk-In Patient** window opens and walks you through three steps.
##### 1. Select the Patient
Choose the **Existing Patient** or **New Patient** tab.
* **Existing Patient** — search for and select the patient, and confirm their information is up to date.
* **New Patient** — enter the patient's details: **First Name**, Middle Name, **Last Name**, **Date of Birth**, **Gender**, **Phone Number**, and Email. Then choose one of the insurance options:
* **Patient has insurance** — enter the Primary Insurance Company and number (Secondary is optional)
* **Patient is self-pay**
* **Patient is missing insurance information**
Before continuing, check the confirmation toggle that the **First Name, Last Name, and Date of Birth match exactly** to the patient's information in your EHR, so **be sure to update your EHR as well**. If a possible duplicate is detected, you'll be warned and can choose to ignore it and continue.
Click **Next**.
##### 2. Create the Appointment
Fill in the appointment details: **Facility**, **Provider**, **Appointment Type** (you can add a new type here if needed), **Appointment Date**, and the start/end time. For an existing patient you can review their most recent insurance and change it if needed.
Click **Next**. (If you pick a future date, you'll be asked to confirm.)
##### 3. Eligibility & Payment
An **automatic eligibility check** runs and returns a result — **Active**, **Inactive**, or **Inconclusive**. (Self-pay or missing-insurance walk-ins return **Inconclusive**.) For inactive or inconclusive results, double-check that the entered information is correct, then continue.
The payment window opens so you can collect a payment. You can also choose to **request payment later** and simply view the new appointment in the [Appointments](https://insights.athelas.com/appointments) page.
For quick access afterward, filter the list by **Patient** and start typing the patient's name.
You've added the walk-in patient to your appointments!
### FAQ
The automatic eligibility check returns **Inconclusive** because there's no coverage to verify. You can still proceed to collect a payment or add the appointment to your schedule.
Yes. The walk-in form asks you to confirm the patient's name and date of birth match your EHR. Always create or update the patient in your EHR so future records stay in sync.
# How to Run an Eligibility Check
Source: https://docs.athelas.com/insights_front_desk/appointments/how_to_run_an_eligibility_check
#### At a Glance
**Eligibility** is the determination of a patient's qualification for healthcare services based on factors such as insurance coverage, benefits, and provider network.
Eligibility checks return one of several results — most commonly **Active**, **Inactive**, or **Inconclusive**. You may also see **Not Covered**, **Pending**, **None**, **Self Pay**, or **Site Responsibility**.
Checks are service-type based and provide tailored recommendations for copay, deductible, and coinsurance. You can map appointments to relevant service types (for example, office visits, physical therapy, or mental health) under **PR Settings → Appointment Rules**.
#### Inconclusive Eligibility Checks: Possible Causes
* **Not all payers are supported.** Our manual team looks up benefits where we can. If you keep seeing inconclusive results, please flag it to us.
* **Missing or malformed data.** We occasionally receive data in unexpected structures. Flagging issues helps us find and fix them.
* **Rules may be misfiring or missing.** An overly inclusive rule can trigger when it shouldn't. Your account management team can help assess your practice's rules.
* **Bad mapping.** Mis-mappings can produce inconclusive results. If a particular insurance repeatedly returns inconclusive, contact your account manager.
### Here's How to Do It
#### Re-run Eligibility for an Existing Appointment
Open the appointment's detail page and go to **Eligibility Central**. Here you can review the current result and click **Re-run Eligibility** to run a fresh check, or **See More Details** to view the full benefits response.
You can also click an insurance's eligibility badge directly in the **Insurances** column of the appointment list to open the response and re-run.
Eligibility can only be run for appointments up to **14 days** in the future.
If a check returns **Inactive**, contact the patient and update their information in your EHR — Insights will pick up the change automatically. If you need it sooner, update the information in your EHR **and** on the [Encounter Details page](https://insights.athelas.com/encounter-details).
#### Run a Check for a Patient Without an Appointment
From the [Appointments](https://insights.athelas.com/appointments) page, click **Live Eligibility Check**. A **Run Eligibility Check** drawer opens.
Fill in the patient information, **Insurance Name**, **Provider**, and **Date of Service**. Optionally, you can **Override Service Type** or choose a specific **Source** (clearinghouse) to check against. Then click **Check**.
Results open in an **Eligibility Response** drawer (this can take up to about 30 seconds). If the result is **Inactive**, contact the patient for their latest insurance information and update your EHR accordingly. If it's **Inconclusive**, refer to the causes at the top of this guide.
### FAQ
Insights checks eligibility through multiple sources, including **Availity**, **Waystar**, **UHC**, **CHC**, **BCBS**, and **Infinx**. The available sources depend on the payer.
Visit limits are supported for select payers as part of the eligibility response, not as a standalone offering. Talk to our team to understand coverage for your payers.
Yes. When running a live eligibility check, use **Override Service Type** to run the check against a specific service type instead of the default.
Eligibility can only be run for appointments up to **14 days** ahead. For appointments further out, run the check closer to the date of service.
# How to Take Payments
Source: https://docs.athelas.com/insights_front_desk/appointments/how_to_take_payments
### At a Glance
Whether you're collecting a copay at check-in, taking payment toward an outstanding balance, or selling a product to a non-patient, payments in Insights all run through the same **payment flow**. This guide covers how to take a payment, distribute a receipt, and handle quick (non-patient) purchases.
*You can manually download, print, and send receipts via text or email for any current or past transaction. Note that you cannot automatically send receipts for past transactions.*
### Here's How to Do It
#### Take a Payment and Create a Receipt
You can collect a payment from several places — the **Charge** button on the [Appointments](https://insights.athelas.com/appointments) page, the [Patient Responsibility page](/insights_front_desk/patient_responsibility/patient_responsibility_page), or a patient's profile. The flow is the same in each case.
Select the charge(s) to collect, then choose a **Payment Method**:
* **Send Payment Link** — email or text the patient a secure link to pay
* **Pay via Credit Card** — use a saved card or add a new one
* **Athelas card reader** — charge an in-person Athelas card reader
* **Record Payment** — log a payment taken outside Insights: **By Cash**, **By Check**, a **Non-Athelas card reader**, or a **Custom** method
* **Add to Patient's Balance** — leave the charge outstanding to collect later
* **Pay with Credits** or **Pay with Gift Card** — when the patient has an available balance
You can also **Add a Discount** or **Apply Credits**, and — if the account has a guarantor — choose who to bill using the **Pay As** selector.
If you take an external payment and don't record it in Insights, future patient-responsibility collection will be inaccurate, because Insights won't know what has already been paid. Always record external payments.
Once payment is confirmed, you'll see a **Payment Successful** screen with the option to **Send Receipt** (by email or text), **Download Receipt**, or **Print Receipt**.
#### Find Receipts for Previous Payments
Go to the patient's profile and open the **Charges** tab. Find the date of service you need and click **View Details**, then **Download** or **Print** the receipt. You can filter by date of service, provider, or paid status to narrow your search.
#### Take a Quick Purchase (Non-Patient) Payment
For a sale to someone who isn't a patient — or a one-off product sale — click **Quick Purchase** on the [Appointments](https://insights.athelas.com/appointments) page.
In the window that appears, check **Sell to non patient** and fill in the customer's information (or leave it unchecked to charge an existing patient). Add the line items, choose a payment method, and confirm. You'll be able to print or send a receipt.
Non-patient payments appear in the **Quick Customer View** on the [Patient Responsibility page](/insights_front_desk/patient_responsibility/patient_responsibility_page) alongside other non-patient transactions, where you can download or print a receipt or refund the payment.
### FAQ
Yes. You can move the Athelas card reader between computers in your office that meet the [minimum system requirements](https://docs.stripe.com/terminal/payments/setup-reader). The reader just needs internet access to work.
A partial payment toward an outstanding balance is applied to the largest individual charge first.
You can still collect a card payment. Choose **Pay via Credit Card** and enter the patient's card details manually.
#### Integrations
* **Stripe** — including support for in-person card reader terminals and charging saved cards for faster checkout
# Insights Prior Authorization
Source: https://docs.athelas.com/insights_front_desk/appointments/insights_prior_authorization
### At a Glance
Prior authorization must be present in many circumstances in order for insurers to pay out claims. This guide details where to enter and update this information in Insights.
#### What Is Prior Authorization?
**Before providing treatment or prescribing medication, physicians need to obtain approval from an insurer**. This tactic, used by insurance companies to control costs, is called prior authorization. Without prior authorization, a health plan may not pay for treatment or medication.
Emergency care doesn't need prior authorization.
### Here is the [Prior Authorizations page](https://insights.athelas.com/prior-authorizations).
You can access it via the header of the list of encounters on the [Encounter Details page](https://insights.athelas.com/encounter-details). Click the ‘Prior Authorizations’ button.
#### Page Header Features
At the top of the Prior Authorizations page, you can…
* **Set filters** to show you only certain authorizations. For example, you can filter for a particular patient or authorizations set to expire by a certain date.
* **Download a CSV** file so you can view the data in a spreadsheet.
* **Create a new authorization**.
Just below the page header, you can click the following column headers to re-sort the list of authorizations in either ascending or descending order:
* Total Visits/Units
* Remaining Visits/Units
* Effective Date
* Expiry Date
*These walkthroughs focus on how to add or update prior auth through *[***this page only***](https://insights.athelas.com/prior-authorizations)*.*
#### How to Add a New Prior Authorization
We’ll begin by clicking `Create Authorization`.
A window will appear with fields for you to fill out.
**Pro Tip**
To expedite your search in many fields throughout Insights, begin typing out the entity for which you’re searching and select it when it appears in the list.
Fill in the patient name, authorization type (pre-certification or referral), auth number, and effective and expiration dates.
You can choose to track prior auth by visit count or CPT code unit count. For this example, we’ll select visit count.
*Add any notes that would be useful for colleagues looking for information about this authorization. You can select or create any tags you like, which can help keep your authorizations organized.*
Click `Create` and you’re done! You can now see your new authorization in the table. It may help to filter for it if there are many other authorizations.
#### How to Update Existing Prior Authorization
Filter for the authorization you would like to update and click the pencil icon.
Make any adjustments you like to the authorization.
For this example, we’ll change the tracking type from visit count to CPT code and unit count. Then, we’ll click `Update`.
The new information is now displayed for that authorization.
#### Other Ways to Update Prior Authorization in Insights
You can update prior auth in two other places in Insights:
* The ‘Prior Authorizations’ tab on the patient’s profile
* Editing the Service Lines section of the corresponding encounter on the [Encounter Details page](https://insights.athelas.com/encounter-details)
# The Insights Appointments Page
Source: https://docs.athelas.com/insights_front_desk/appointments/the_insights_appointments_page
#### At a Glance
The [**Appointments**](https://insights.athelas.com/appointments) page is your front desk's daily worklist. It empowers your practice to drastically decrease eligibility-related denials, increase up-front patient payments, and reduce the time front desk staff spend chasing down patient responsibility.
From this page you can:
* Check the **eligibility** of a patient's insurance before they arrive
* See outstanding **balances** and suggested pre-visit charges
* **Collect** copays and pre-pay coinsurance and deductibles
* Add **walk-in** patients, run a **live eligibility check**, and take a **quick purchase** payment
Patients can also check themselves in, and pay, on a lobby tablet — see [Check-in Patient with Kiosk](/air_provider/check_in_a_patient/kiosk_user_guide).
#### Choosing a View
Above the appointment list you'll find a **view selector**. Insights ships with three built-in views, and you can save your own:
* **All Appointments**
* **Today's Appointments** (the default the first time you open the page)
* **Future Appointments**
* **Custom saved views** — apply the filters you use most, then save them as a reusable view
You can also **group** the list (for example, by **Date and Time**) so appointments are organized by day.
#### Appointments Page Toolbar
The toolbar at the top of the page gives you quick access to the most common front-desk actions:
* **Walk-In Patient** — add a patient who arrives without a scheduled appointment. See [How to Add a Walk-In Patient](/insights_front_desk/appointments/how_to_add_a_walk_in_patient).
* **Live Eligibility Check** — run eligibility for a patient who doesn't have an appointment yet. See [How to Run an Eligibility Check](/insights_front_desk/appointments/how_to_run_an_eligibility_check).
* **Quick Purchase** — take a payment from a patient or a non-patient customer. See [How to Take Payments](/insights_front_desk/appointments/how_to_take_payments).
* **Download** — export the current (filtered) list as a **PDF** (a printable schedule) or a **CSV**. Exports include up to **2,000** appointments and may take a moment to generate.
* **Review Charges** — jump to the Review Charges page.
* **More actions** — additional shortcuts including **PR Settings**, **Reconciliation**, **Prior Authorization**, and **Take a tour**.
An **Athelas Assistant** panel is also available on this page to answer questions about your appointments.
If your site was live before the new Appointments page rolled out, a **Switch to Classic Appointments Page** button lets you return to the previous layout. Newer sites use the new page only.
#### The Appointments List
Each row represents an appointment. The list can show the following columns (you can show or hide columns and reorder them):
* **Intake & Messages** — intake status and appointment notes
* **Date & Time**
* **Patient**
* **Provider**
* **Alerts** — surfaced issues for the appointment
* **Insurances** — the patient's primary, secondary, and tertiary insurance with an **eligibility status** badge for each
* **Charges** — patient responsibility, outstanding balance, and what has been collected
* **Tags**
* **Charge** — a button to collect payment for that appointment
##### Eligibility Status Badges
Every night, Insights pulls your upcoming appointments and checks the detected insurance for eligible coverage. Results appear as a badge on each insurance in the **Insurances** column:
* **Active** (green) — coverage is active
* **Inactive** (red) — coverage is not active
* **Not Covered** (red) — the service isn't covered
* **Inconclusive** (orange) — worth double-checking that the patient's information matches your EHR
* **Pending**, **None**, **Self Pay**, and **Site Responsibility** may also appear when relevant
Click a badge to view the full eligibility response or re-run the check.
#### Filters
By default the list is filtered to the current day. You can open, adjust, or add filters to narrow the list — common filters include **Patients**, **Providers**, **Facilities**, **Start/End** date and time, **Insurance** (primary/secondary/tertiary), **Appointment Type**, **Appointment Statuses**, **Appointment Tags**, **Eligibility Coverage**, **Only With Balance**, and **Missing Insurance**.
#### The Appointment Detail Page
Click an appointment to open its **detail page**. Here you can review everything about the appointment and take action. Along the top you can **Copy URL** or **Copy Appointment ID** to share the appointment with a colleague, step between appointments, and open the **Athelas Assistant**.
The detail page is organized into sections:
* **Appointment** — date and time, provider, facility, reason, appointment type, status, and the patient's primary/secondary/tertiary insurance. Click **Edit** to update the appointment's **Type** or **Status** (Scheduled, No Show, Cancelled, or Archived).
* **Eligibility Central** — the patient's eligibility results, with the ability to **Re-run** the check and see more detail. See [How to Run an Eligibility Check](/insights_front_desk/appointments/how_to_run_an_eligibility_check).
* **Visit Limits** — annual visit limits and Medicare therapy thresholds for the patient, with alerts when visits are running low.
* **Prior Authorizations** — the prior authorizations tied to the appointment. Alerts appear when an authorization is nearing its limit or has expired.
* **Intake Paperwork** — the intake forms and reminders for the appointment. From here you can **Send** forms to the patient by text or email and review which forms are completed.
* **Activity** — a chronological feed of events for the appointment.
To collect a payment, use the **Charge** button on the appointment row or on the detail page. A **Charge Explanation** is available to break down how the suggested amount was calculated. See [How to Take Payments](/insights_front_desk/appointments/how_to_take_payments).
#### Best Practices
**1.** Each week, **review the eligibility results** for upcoming appointments and reach out to any patients whose insurance appears to be inactive or inconclusive.
**2.** At the end of the day, **check for patients who didn't pay their copays** and use a payment link (text or email) to give them a belated opportunity to pay.
**3.** When a patient hasn't met their deductible, **collect an upfront deductible deposit** while they're in the office. You can set a default amount to charge for unmet deductibles using your [Suggested PR Rules](/insights_front_desk/front_office_payments/how_to_create_suggested_pr_rules).
### FAQ
Insights automatically checks eligibility for your upcoming appointments each night. You can also **Re-run** eligibility for any appointment from its detail page, or run a one-off [Live Eligibility Check](/insights_front_desk/appointments/how_to_run_an_eligibility_check) for a patient without an appointment.
Open the appointment, click **Edit**, and set the **Status** to **Archived**. Archiving removes the appointment from your active schedule.
Yes. Use the **Download** button in the toolbar to export the current filtered list as a printable **PDF** or a **CSV** (up to 2,000 appointments).
# Calendar start & end times
Source: https://docs.athelas.com/insights_front_desk/calendar/calendar_start_end_times
#### Customizing start & end times
To modify the start and end times, head to *Preferences → Calendar → Start & End Times*. Here you can select the starting time and the ending time.
#### Default start & end times
By default, the calendar start and end times are set to display 06:00am to 08:00pm and this is applied at a site level (meaning all facilities adopt the same times). You can choose to set one site-wide start & end time or set specific times for specific facilities.
#### Applying unique start & end times to various facilities
If you wish to specify unique start & end times to specific facilities, select the “Facility” option and a table should appear below.
On this table, selecting any facility will make its start & end time controls appear on the right. Select multiple facilities to modify multiple facilities at once.
Once complete, your updates should already be live in the calendar.
#### Considerations when choosing start & end times
Modifying the start & end times on calendar will impact how your calendar appears depending on the viewing mode selected.
* On “Standard” view, widening the start & end times will increase the length of the calendar.
* On “Fit to Screen” view, widening the start & end times will make all calendar blocks smaller.
# Filter the calendar view
Source: https://docs.athelas.com/insights_front_desk/calendar/filter_the_calendar_view
#### Applying filters to the calendar view
You can easily click the \< > icons to move through different days, weeks or months depending on the current schedule view.
If you’d like to navigate to a specific day, click on the filter icon. A side panel will pop open upon doing so. A mini calendar is available to you to traverse more quickly through the days to a specific date in mind. Here is also where you can update the providers and facilities seen on your calendar view. Additionally, you are able to filter by insurance and patient from and hide cancelled or no show appointments and weekends.
The calendar on Insights provides 7 filtering options:
| Filter | Type |
| ----------------- | ------------ |
| By provider | Multi-select |
| By Facility | Multi-select |
| By Insurance | Multi-select |
| By Patient | Multi-select |
| Hide Cancelations | Yes/No |
| Hide No Shows | Yes/No |
| Hide Weekends | Yes/No |
#### How to use each filter
\*\*Filtering by provider \*\*allows you to decide which providers you do and don’t want to see on your calendar. When more than one provider is selected, each provider is displayed as a column on the calendar view.
\*\*Filtering by facility \*\*allows you to pick facilities you do and don’t want to see in the calendar view. When more than one facility is selected, each will appear as a tab along the top of the calendar view.
\*\*Filtering by Insurance \*\*shows only appointments with patients whose insurance provider matches your selection.
**Filtering by Patient** shows only appointments with specific patients you select.
**Filtering out cancelations** will hide appointments that have the “Cancelled” status.
**Filtering out “No Shows”** will hide all appointments that have the “No Show” status.
**Filtering out weekends** will hide Saturdays and Sundays from your calendar view. This will be applied to all of the 1 day, week, and month views.
All filters can be cleared at once by clicking the “Clear All” at the top of the calendar.
# Getting started with the Calendar
Source: https://docs.athelas.com/insights_front_desk/calendar/getting_started_with_the_calendar
When it comes to understanding your calendar, what you’re really trying to do is get a good sense of what your day looks like at a glance, and this is exactly how it should be. The less time you need to decipher your calendar, the more time you can spend assisting patients along their healthcare journey.
Navigate to the Calendar in the left Nav Bar
You'll see this block of appointments below structured by selected Provider, which we'll review in "Filter the calendar view" section
Now we'll walk through what each component of the calendar means
#### Appointment Stages:
As appointments move through their different stages, the blocks will reflect the designs below. Some advantages:
* Easier to see canceled appointments
* Completed appointments fade from the schedule so you can focus on scheduled/confirmed appointments
#### Appointment Tooltip w/ Helpful Icons and Alerts:
Hover over a Calendar block to view the tooltip
**Condensed + Expanded View**
##### Tooltip Design
The tooltip shows you the most helpful information first, namely:
* **Appointment Status** (”Scheduled”) - simply hover over your appointment to update status
* **Case and Appointment Type**
* **Eligibility Status and Insurance**
* **Authorization Status and Next Visit Scheduling**
##### Types of Alerts
* **Eligibility**
Unclear eligibility - requires a manual check
Patient is not eligible per Insights eligibility checks
Check on right hand side indicates **patient is eligible**
* **Pre-Visit Payment**
Pre-visit payment is due based on eligibility check or rules, can click to Charge
* **Visits Remaining**
Number of visits remaining
* **Appointment Notes**
Three lines on the right indicates that there are \*\*appointment notes. \*\*You can see them by hovering on the appointment tooltip
* **Insurance Based**
Patient has a Medicare type insurance
# Modify calendar views
Source: https://docs.athelas.com/insights_front_desk/calendar/modify_calendar_views
#### Modify how much you see in one calendar view
When you click into the calendar, this default view will appear for you to select the providers and facilities that you’d like to see the schedule for.
You can select as many providers and facilities as you’d like on this page to appear on the calendar. Whenever you’re done selecting these fields, the calendar will automatically populate.
Insights’ calendar view can be modified by:
* By Provider and facility
* By length of time
* By how much of your day you want to see at once.
#### Modifying the “length of time” view
Insights’ calendar provides the following options when modifying the length of time you wish to see:
* 1 day (current day)
* 1 week
* 1 month
By default, this calendar view is set to display the current day.
#### Modifying the “amount of your day” view
Insights’ calendar will let you modify how much of your day you wish to see at once. The following options are available:
* Standard
* In this default view, calendar blocks show all their information
* Compact
* In this view, some calendar block information is hidden to allow for more compact sizing.
* Fit to day
* In this view, your entire calendar (determined by your start & end times) will be visible at once.
* This view will override any calendar interval you’ve set in the calendar preferences (only on this view).
# Viewing multiple providers
Source: https://docs.athelas.com/insights_front_desk/calendar/viewing_multiple_providers
#### How are providers displayed on the calendar?
In the 1 day and week views, providers are displayed as columns on the calendar view. Each column displays the provider’s name at the top, along with a summary of how many appointments that provider has today.
#### How to add/remove providers from the calendar
You can add or remove providers from the calendar view by clicking on the filter icon, at the top of the calendar, and locating the “Providers” filter. Add providers by searching for their names and selecting them from the dropdown. Remove already present providers by clicking the “X” on their name in the text box.
*Note: when searching for providers, you will see a subtext under their name indicating how many appointments they have today. If you see “0 appointments” this means they have no appointments today **at the currently selected facility**. This does not mean they don’t have appointments at other facilities.*
Learn more about filter on the calendar [here](/insights_front_desk/calendar/filter_the_calendar_view).
# How to Reconcile Your Cash Drawer
Source: https://docs.athelas.com/insights_front_desk/daily_operations/how_to_reconcile_your_cash_drawer
Reconcile end-of-shift cash and check patient-responsibility payments against expected amounts from the Appointments page.
### Overview
Most healthcare businesses reconcile their cash drawer daily so that any discrepancy between expected and actual dollars can be accounted for on each day of service. The **Reconciliation** tool makes this simple.
This guide covers **physical cash-drawer PR reconciliation only** — cash and check patient-responsibility payments, not credit card or other payment types.
To review total payments for a date or range of dates, you can also use the [Revenue Analysis page](/insights_biller/analytics/the_revenue_analysis_page) or download a [transaction report](/insights_biller/reports/generate_a_transaction_report).
### Here's How to Reconcile Your Cash Drawer
Open the [Appointments](https://insights.athelas.com/appointments) page, click the **More actions** menu, and select **Reconciliation**.
The tool has two tabs: **New Run** and **Previous Runs**.
#### Start a New Run
On the **New Run** tab, set your filters — **Facility of Service**, **Users** (the staff who collected payments), and the **date and time range**. If your site tracks a separate collection facility, a **Facility of Collection** filter also appears.
Enter your **opening** and **closing** amounts for both **Cash** and **Check**, then click **Proceed to Reconcile**.
Insights compares the cash and check dollars in the drawer with the expected amounts:
* **Expected Amount** = the opening balance plus the cash/check patient-responsibility payments collected during the period.
* **Discrepancies** = the difference between your closing amount and the expected amount. A non-zero discrepancy is highlighted in red; a matching amount is highlighted in green.
Below the totals you'll see an itemized list of the payments in the period. Click into a payment to see details such as the associated date of service, description, and recommended amount. Two toggles let you **Hide credit card payments** (on by default) and **Hide unpaid appointments**.
To export the reconciliation data — for example, as an end-of-shift report to open in Excel — click **Download**.
#### Review Previous Runs
Every completed run is saved. Switch to the **Previous Runs** tab to see prior reconciliations, select one, and click **Inspect** to reopen its results.
### FAQ
Reconciliation covers **cash and check** patient-responsibility payments. Credit card payments are hidden by default (you can toggle **Hide credit card payments** off to include them in the itemized list).
No. Each run records its own opening and closing amounts and is saved under **Previous Runs**, but the tool does not carry a running drawer balance forward — enter your opening and closing amounts each time you reconcile.
Use the [Revenue Analysis page](/insights_biller/analytics/the_revenue_analysis_page) or download a [transaction report](/insights_biller/reports/generate_a_transaction_report) for the day(s) you want to review.
# Attach Task Follow-ups to Faxes
Source: https://docs.athelas.com/insights_front_desk/faxing/attach_task_follow_ups_to_faxes
Create and manage follow-up tasks tied to a fax, assigned to a user or a group.
You can attach follow-up tasks directly to incoming or outgoing faxes, making it simple to track next steps right from your fax list. Tasks created this way are pre-filled with the fax (and patient, when available) so you don't have to re-enter context.
#### Open the Tasks for a Fax
On the **Faxing** page, each fax row has a **Manage Tasks** button:
* A **red** dot means the fax has incomplete tasks.
* A **green** dot means its tasks are complete.
* No dot means there are no associated tasks.
Click **Manage Tasks** to open the **View Tasks for Fax** drawer. From here you can:
* **View details** — expand a row to see the task type and description
* **Edit** a task with the pencil icon
* **Delete** a task with the trash icon
* **Update status** — mark a task **Not Started**, **In Progress**, **Done**, **Blocked**, or **Archived**
#### Create a New Task
Click **New Task** in the drawer. Give the task a title, then set its priority, due date, and type. For the assignee, choose whether to **Assign to an Individual User** (select an **Assignee**) or **Assign to a Group** (select an **Assignee Group**) — group-assigned tasks can be claimed by any member of the group.
The task is automatically associated with the current fax. Click **Create** once the required fields are filled.
#### View from the Tasks Page
Go to [the Tasks page](https://insights.athelas.com/tasks) and use the **My Tasks** tab to see tasks assigned to you, or **Assigned by me** to see tasks you assigned to others. A column shows the linked fax for each task; click it to open the fax document.
### FAQ
Yes. If a fax is already tied to a patient, creating a task for it links the task to that patient automatically, so it also appears on the patient's task page. You can adjust this by adding or removing patients on the task form.
No — you create a fax-linked task from the **Faxing** page. From the Tasks page you can view and manage tasks that are already linked to faxes, but not attach a new fax to a task.
# Getting Started with Faxing
Source: https://docs.athelas.com/insights_front_desk/faxing/getting_started_with_faxing
Navigate the Faxing page tabs, contact list, filters, and fax statuses.
Insights has a dedicated **Faxing** page to send and receive faxes. Open it from **Faxing** in the left navigation.
#### Tabs
The Faxing page is organized into tabs:
* **Outbound** — faxes you've sent
* **Inbound** — faxes you've received
* **Archived** — faxes you've archived from any queue
* **Email** and **Text Message** — a tracker for email and text communications
* **Settings** — where your fax numbers (and coversheet templates) are stored, if enabled for your site
Within the **Inbound** tab, a secondary row lets you switch between **All**, **Unprocessed**, and **Processed** faxes.
#### Header Actions
At the top of the page you'll find:
* **Send Document** — open the Send Fax panel to send a new fax
* **Filter** — open the filter drawer (a badge shows how many filters are active)
* **Contact List** — create, edit, and tag contacts, and link fax numbers to facilities and providers. Use **Create Contact** to add one and **Manage Contacts** to review the list.
#### Filters
Open **Filter** to narrow the list by:
* **Facilities**, **Providers**, and **Status** (Success, Failure, In Progress, Queued, Batching, Partial Success, Unknown)
* **Patient**
* **Content Types** (inbound faxes)
* **Creator** (outbound faxes)
* **From Date** / **To Date**
* **Sender Fax Number** / **Recipient Fax Number**
#### Resending a Fax
If an outbound fax fails to send, a **Resend Fax** action appears on that fax's row so you can re-send it without recreating it.
### FAQ
Your ported fax numbers live on the **Settings** tab (when enabled for your site), where you can also manage coversheet templates.
On the **Outbound** tab, find the failed fax and click **Resend Fax** on its row. You can adjust the recipient, sender number, subject, facility, and provider before re-sending.
# Send and Receive a Fax
Source: https://docs.athelas.com/insights_front_desk/faxing/send_and_receive_a_fax
Send an outbound fax, process inbound faxes, and let AI auto-sort your fax inbox.
#### How to Send a Fax (Outbound)
Click **Send Document** at the top of the Faxing page. A **Send Fax** panel opens with the following fields:
* **Patient** *(optional)* — tie the fax to a patient
* **Contact** *(optional)* — pick a saved contact to auto-fill the recipient
* **Referring Provider** — selecting a provider can auto-fill their fax number
* **Recipient Fax Number** — the number you're sending to
* **Subject** — the title of the fax
* **Send from** — which of your fax numbers to send from
* **Facility** and **Provider** — which facility/provider the fax is coming from
* **Add Patient Facesheet** — optionally attach the patient's facesheet (with a preview)
* **Files** — choose one or more PDF files; you can reorder them and preview the merged document
* **File Name** — a name for the fax
Click **Send Document**. Your fax will then appear on the **Outbound** tab. If a coversheet is enabled for your site, you'll also see coversheet fields in the panel.
If an outbound fax fails, use the **Resend Fax** action on its row in the **Outbound** tab to re-send it.
#### How to Receive a Fax (Inbound)
Open the **Inbound** tab. Use the **All**, **Unprocessed**, and **Processed** views to organize your inbox:
* **Unprocessed** faxes haven't been categorized or associated with a patient/provider yet.
* **Processed** faxes have been organized.
Open a fax and click **View and Update Fax** (or **Edit Fax**) to set:
* **Subject** — name or rename the fax
* **Facility** and **Provider** — select or override
* **Patient** — the patient this fax should tie to
* **Document Type** — the category of the received fax
* **Tags** — free-form labels (type to create a new tag)
Saving your edits moves the fax to the **Processed** view.
#### AI Fax Sorting
**AI Fax Sorting** is built into your fax inbox to process incoming documents faster. Instead of opening, reading, and routing every fax yourself, the system does it for you.
When a fax arrives, AI will:
* Identify the **document type** (referral, lab, prior auth, etc.)
* Extract the **patient name** and match it to their chart
* Identify the **provider** associated with the fax
* Add a **direct link to the patient profile**
* Automatically move the fax from **Unprocessed → Processed**
Automatically handled faxes are labeled **AI Sorted** in the Inbound view; if someone later edits an AI-sorted fax, it's labeled **AI + Human Edited**.
✨**Smart Tip:** AI Fax Sorting only auto-processes a fax when the system is highly confident in the patient match (exact match only), the document type, and the provider. If anything is unclear, the fax stays in **Unprocessed** for your team to review — protecting against incorrect routing.
### FAQ
Faxes processed automatically are labeled **AI Sorted** in the Inbound view. Open the fax to confirm the patient, provider, and document type that AI assigned.
The fax stays in the **Unprocessed** view so your team can review and assign it manually. AI Fax Sorting only auto-processes faxes when the patient match is exact and the document type and provider are clearly identified.
Yes. Click **View and Update Fax** on any fax — including AI-sorted ones — to edit the **Subject**, **Facility**, **Provider**, **Patient**, **Document Type**, or **Tags**, then save. The fax will be labeled **AI + Human Edited**.
# Tying Faxes to Patients
Source: https://docs.athelas.com/insights_front_desk/faxing/tying_faxes_to_patients
Associate an inbound fax with a patient, add tags, and filter the fax list by patient.
When processing an inbound fax, you can tie it to a specific patient. Open the fax and use the **Patient** field (in **View and Update Fax** or the fax's side panel) to search for and select the patient.
You can then **filter by patient** in the Faxing filter drawer to find all faxes tied to that patient.
#### Tags
You can also add **Tags** to a fax to label and group it. Tags are free-form — start typing in the **Tags** field to reuse an existing tag or create a new one. Tagged faxes show their tags as badges in the fax list.
### FAQ
Open the **Filter** drawer on the Faxing page and filter by **Patient**. Only faxes tied to that patient will remain in the list.
# Post-Encounter CPT-Based Service Charges
Source: https://docs.athelas.com/insights_front_desk/front_office_payments/automatic_service_charges
Configure service charge rates and add service items to an appointment for accurate post-encounter estimates.
Insights lets you calculate patient's service charges, post encounter, using specific CPT codes instead of just general appointment types, factoring in patient benefits, deductibles, and real-time eligibility to provide accurate estimates of what patients should pay before they leave your practice.
### Adding Service Charges to an Appointment
You can add service items to any appointment, and the system will calculate the charges based on your configured CPT rates.
**To add service charges:**
1. Navigate to the **Appointments** page and open the appointment
2. Click on **Charges**
3. Click **Add Service Item**
4. The system calculates charges based on:
* Your CPT charge rates
* Patient's insurance benefits (Deductible, OOP, Coinsurance)
### Configuring Service Charge Rates
Service charge rates are configured in your practice settings and determine the base amounts used for calculations.
**To configure service charge rates:**
1. Go to **My Practice**
2. Navigate to **PR Settings**
3. Open the **Service Charges** tab
4. Click **Add Service** and set the **Service Name**, **Default Rate**, and **Line Item Option** (Copay, Coinsurance, Deductible, or Service). Optionally set **payer-specific rates** for individual payers.
### FAQ
The calculation considers:
* CPT charge rates configured in your Service Charges settings
* Patient's current insurance eligibility and benefits
* Deductible amounts (remaining or already met)
* Out-of-pocket maximums
* Appointment type and services rendered
This provides a more accurate estimate than appointment-based charges alone.
Calculated charges appear in the **Charges** section of the appointment details page. The system shows both the base charge amount and the estimated patient responsibility based on their insurance benefits.
Yes, you can manually adjust charges as needed. The calculation provides an initial estimate, but you maintain full control to modify charges based on specific circumstances or documentation.
# How to Create Suggested PR Rules
Source: https://docs.athelas.com/insights_front_desk/front_office_payments/how_to_create_suggested_pr_rules
Build rules that auto-suggest copay, coinsurance, and deductible at check-in, with priority-based overrides.
#### At a Glance
**Suggested PR Rules** save your staff time by automatically recommending what to collect (copay, coinsurance, deductible, etc.) based on criteria you define, so they don't have to look up fee schedules and benefits by hand.
### How to Set a Suggested PR Rule
Go to the **Suggested PR Rules** tab in [PR Settings](/insights_front_desk/patient_responsibility/pr_settings) and click **Add Rule**.
1. Give the rule a **Name** and a **Priority**. (You can also set an optional **End date** after which the rule stops applying.)
2. In the **Actions** block, click **Add Action** and choose what the rule should do — for example, **Set Copay Amount in USD Cents** (enter `1000` for \$10), then **Add Action** again to **Prioritize Family Deductible**.
3. In the **Conditions** block, add the conditions that must be met. Choose **All** or **Any**, then add single- or multi-statement conditions. Each statement is a **Variable / Operator / Value** — for example, *Patient Age ≥ 65* and *Appointment Type = Diagnostic X-Ray*.
4. Click **Save**. The rule appears in the **Rules** list, where you can edit, copy, or archive it.
**Priority determines overrides:** rules with higher priority values override rules with lower priority values. For example, a Priority 2 rule overrides a Priority 1 rule. (Global rules can't be edited — create a specific higher-priority rule to override one.)
### Where Suggestions Appear
Suggested PR Rules don't preview in Settings — they surface at check-in:
* In the eligibility result, a **Suggested PR Rules Applied** section lists each applied rule (the highest-priority rule first).
* In the payment flow, a **Suggested Charges** alert shows the recommended copay/coinsurance/deductible/self-pay amounts.
### Actions Reference
| Action | What it does |
| ----------------------------------- | ----------------------------------------------------------------------------------------------------- |
| Copay Filter In | Pulls the chosen text from the eligibility response to display as a recommendation (e.g., PCP copay). |
| Copay Filter Out | Excludes the chosen text so it isn't displayed as a recommendation. |
| Copay Filter Place of Service | Filters the amount to collect by place of service (e.g., Hospital – Outpatient). |
| Find Limitations and Set Charges | Finds the input limitation in the eligibility response and defaults to a chosen charge. |
| Notify | Leaves a message on the appointment for the front desk to read. |
| Prioritize Copay | Prioritizes copay over coinsurance or deductible. |
| Prioritize Family Deductible | Prioritizes the family deductible over coinsurance or copay. |
| Set Coinsurance Amount in USD Cents | Sets a specific coinsurance amount to collect. |
| Set Copay Amount in USD Cents | Sets a specific copay amount to collect. |
| Set Deductible Amount in USD Cents | Sets a specific deductible amount to collect. |
| Set Self-Pay Amount in USD Cents | Sets a specific amount to collect for self-pay patients. |
Conditions include appointment reason/type, facility, patient age or date of birth, QMB status, and primary/secondary insurance details (payer, company type, member ID, plan/group), as well as remaining deductible and out-of-pocket amounts. If you need options beyond these, contact your account manager.
### FAQ
The rule with the **higher priority value** wins. For example, a Priority 2 rule overrides a Priority 1 rule.
At check-in — in the eligibility result's **Suggested PR Rules Applied** section and the payment flow's **Suggested Charges** alert. There is no preview inside PR Settings.
# Self-pay Fee Schedule
Source: https://docs.athelas.com/insights_front_desk/front_office_payments/self_pay_fee_schedule
Configure self-pay rates by CPT code and manage your practice's fee schedule in Insights.
#### At a Glance
Adding or updating your Self-Pay Fee items will allow Insights to automatically generate Patient Responsibility (PR) charges for self-pay patients, based on your organization’s established rates for specific CPT codes.
A self-pay fee schedule will free up considerable time for your administrative staff, as they will no longer need to manually look up CPT codes and rates.
**What you can do on your own** — Add or edit items in your schedule line by line, or upload a schedule with multiple items at once using **Bulk Submit CSV**.
**What you can do with help from an account manager** — If you would rather have a large or unfamiliar schedule reviewed before it goes live, your account manager can check the file and upload it for you.
You can select whether you want post-visit PR generated for self-pay patients, based on your fee schedule. **Update PR Post-Visit Based on Self-Pay Fee Schedule** controls this: select **No** and no post-visit PR is assigned to the patient, or select **Yes** and any excess calculated during reconciliation is charged as PR — if the pre-appointment collection exceeds the charge from the fee schedule, the difference is assigned as credits instead. You can also choose the earliest date of service to which the fee schedule would apply, as well as a maximum self-pay charge per encounter. **Only reconcile self-pay collections after** limits reconciliation to collections on or after the date you pick, so historical encounters are left untouched. Generated self-pay PR then appears on the patient's [Patient Responsibility](/insights_front_desk/patient_responsibility/patient_responsibility_page) account alongside other PR.
If a CPT code's self-pay fee is **\$0**, the Encounter and Claims pages suggest the corresponding professional fee schedule amount. Review the suggested charge before you save it.
#### How to Do It
From the Patient Responsibility page, click the ‘Actions’ menu and choose [PR Settings](https://insights.athelas.com/v2/patient-responsibility-settings).
Click on the Self-Pay Fee Schedule tab. You may have to scroll the list of tabs to the right in order to see this tab.
From here, you can either use the Search function to find a CPT if you already have items in your fee schedule. For this walkthrough, start by clicking `Add Single Fee`.
In the **Add Row** dialog, fill in:
* **CPT code** and any **Modifiers**.
* **Facilities (optional)** — leave this empty to apply the fee across all facilities, or select specific facilities when the price differs by location.
* **Fee in cents** — the amount to charge in USD cents.
* **Start date of service** and, if the fee is time-limited, **End date of service**.
CPT modifiers (also referred to as Level I modifiers) are **used to supplement the information or adjust care descriptions to provide extra details concerning a procedure or service provided by a physician**. Code modifiers help further describe a procedure code without changing its definition. They are typically formatted as two characters, separated from other modifiers by a comma (For example: AB, CD)
Click Confirm.
Now you can view your new item in the fee schedule.
Click the pencil icon to modify the charge amount of the item, and the trash can to delete the item entirely.
❗ **You will only be able to edit the charge amount of each item**. If you would like to edit either the CPT code or modifiers, simply delete the item and add a new one.
#### Bulk Upload with a CSV
If your site prices a large number of CPT codes, upload the whole schedule at once instead of adding rows individually.
1. In the fee schedule table, click `Bulk Submit CSV`.
2. In the **Upload Self-pay Fee Schedule** dialog, click the **here** link to download a correctly formatted example CSV, then build your file to match it — the same columns shown in the fee schedule table.
3. Drag and drop your CSV into the upload area, or click **Choose** to browse for it.
4. Click **Upload**.
✨**Smart Tip:** Check your work — after uploading, review the rows in the fee schedule table and search by CPT to confirm a specific code priced correctly. Use `Download Fee Schedule` to export the current schedule when you need to audit it or use it as the starting point for your next update.
#### Duplicate CPT Codes and Modifiers
If you input an exact duplicate CPT code and modifier combination but with a different charge amount, the original will simply be updated.
If, however, you have a single CPT code, but different modifiers requiring different prices, the system will create a new line item.
#### Download Your Practice’s Self-Pay Fee Schedule
In PR Settings, under the Self-Pay Fee Schedule tab, you can click `Download Fee Schedule` below the listed items in the fee schedule to get a CSV file. The data in this file can be viewed and manipulated in Excel or similar program.
#### Further Assistance
We’re here to help! Please get in touch with [support@getathelas.com](mailto:support@getathelas.com) if you’d like some hands-on assistance.
### FAQ
Insights suggests the corresponding professional fee schedule amount on the Encounter and Claims pages. Review the amount before you save the service line.
No. Delete the existing item and add a new one with the correct CPT code or modifiers. You can edit only the charge amount on an existing item.
Yes. In the fee schedule table, click `Bulk Submit CSV`, download the example CSV from the **here** link in the upload dialog, build your file to match those columns, then drag it in or browse for it and click **Upload**.
# Target Allowed Amounts
Source: https://docs.athelas.com/insights_front_desk/front_office_payments/target_allowed_amounts
An optional threshold that lets Insights auto-resolve encounters once a payer's payout is acceptable.
When balancing encounters and closing out A/R, Insights automatically resolves denial adjustments we've confirmed aren't realistically workable. That works for common adjustments, but becomes less effective across the long tail of thousands of adjustment combinations. **Target Allowed Amounts** are a complementary strategy for that long tail.
#### What Is a Target Allowed Amount?
A Target Allowed Amount (TAA) answers the question: *how much do you realistically expect to earn for this claim?* With a TAA set, Insights can identify encounters where the payout is acceptable, write off the remaining balance, and finalize the encounter — reducing unnecessary inflation of your A/R metrics.
#### How Is a TAA Different from a Contracted Rate?
A **contracted rate** is what a payer is *supposed* to pay for a procedure; in practice they often pay less. A **TAA** is the amount your practice will accept for a claim configuration without pursuing further payment. The two are often close, with the TAA usually slightly lower.
#### How Do TAAs Work?
* Insights identifies your most common **claim configurations** (a unique combination of procedures — CPT/modifier/units — plus payer and place of service).
* Your Athelas team reviews the **allowed amounts** received for each configuration, discusses them with your practice, and together you agree on an acceptable TAA.
* When an encounter matches that configuration and the allowed amount is above the TAA, an automatic write-off rule clears the remaining non-PR balance and resolves the encounter.
#### Setting Target Allowed Amounts
TAAs are set collaboratively with your practice through an Athelas-managed process — there isn't a self-serve settings screen to configure them yourself. If you'd like to start using TAAs to get a clearer picture of your A/R and resolve more encounters, talk to your **Account Manager** to set up a TAA session.
TAAs are entirely **optional**. Athelas recommends them, but the choice is yours.
### FAQ
There's no self-serve screen for TAAs — they're set together with your Athelas team. Contact your Account Manager to schedule a TAA session.
No. They're an optional tool to improve A/R accuracy and resolve encounters faster. You can choose not to use them.
# Messages Page
Source: https://docs.athelas.com/insights_front_desk/messaging/messages_page
Send and receive internal staff messages, see message notifications, and leave patient notes in Insights.
### At a Glance
Need to send a quick message to a colleague, or have a conversation better suited to instant messaging than email? Head to the [Messages page](https://insights.athelas.com/messages). This lets staff message each other, all within Insights.
Depending on your site's configuration, the Messages page has two areas:
* **DM** — direct messages between staff. A pinned **Athelas Assistant** conversation gives you the assistant right in your message list.
* **Patient Channels** — conversations organized by patient, surfacing that patient's notes.
### How to Send a Message
Click **New Chat** at the bottom of the message list to start a new conversation. A search box appears in the header (**Start a new message**) — search for one or more colleagues and select them.
If patient messaging is enabled for your site, patients also appear in the search (prefixed with **Patient:**), so you can start a conversation with them from the same place.
Type your message, and optionally click **Add an attachment** (or paste an image) to include files. Then send.
### How to Receive Messages
When you have new messages, an **unread indicator** appears on the conversation in your message list. New messages are also counted in your Insights **notifications**, where a **Messages** section lists them. Opening a conversation clears its unread indicator.
### Notes
Outside of messaging, you can leave **notes** tied to a patient:
* Leave a note on a specific encounter.
* Tag a colleague in a note.
* Leave a **universal note**, which appears throughout Insights for that patient — across their encounters, claims, appointments, and more.
### FAQ
Yes, if patient messaging is enabled for your site. Patients appear in the **New Chat** search (labeled **Patient:**), and the **Patient Channels** area organizes conversations by patient.
Yes. Use **Add an attachment** when composing, or paste an image directly into the message box.
A note is tied to a specific encounter, while a **universal note** appears everywhere in Insights for that patient — across encounters, claims, and appointments.
# Complete Intake Forms
Source: https://docs.athelas.com/insights_front_desk/patient_communications/complete_intake_forms
Build custom intake form templates with the drag-and-drop template builder and include them in the chart note.
Intake forms are built from reusable **templates**. Open **Templates** from the navigation, then click **Create New Template** to build a new form. (Templates are organized into tabs such as **EHR**, **Patient Intake**, **Patient Form**, and **Functional Outcomes**.)
#### Building a Form
The template builder has a searchable, drag-and-drop **component** palette on the left. Drag components onto the form to add fields. Available components include:
* **Single Choice** — one answer from a set of options
* **Single Choice (Weighted)** — a single-choice question with scored options
* **Multiple Choice** — one or more answers
* **Yes/No Question**
* **Rating Question** — a rating scale
* **Date Question**
* **Short Answer** — a brief typed response
* **Paragraph Answer** — a longer typed response
* **Number Question**
* **Table Question** — answers in a table
* **Text Block** and **Label** — display text that needs no patient input
* **Signature Block** — for the patient to sign (**Click-to-Sign** or **Draw**)
Each component can be marked **required**, and duplicated or deleted. Its component type is shown in the corner of the field.
#### Saving and Using the Form
When you're done, name the form and save it. To use it as a patient intake form, save it as a **Patient Intake** template.
You can also configure a form to be **Included in Chart Note** — when enabled, the patient's completed form appears in the provider's chart note.
### FAQ
Select the component on the form and mark it as a required field. Patients must answer required fields before they can submit.
Enable **Include in Chart Note** on the template. Completed responses will then appear in the patient's chart note.
# Insurance Intake Page
Source: https://docs.athelas.com/insights_front_desk/patient_communications/insurance_intake_page
Track and work the list of patients who need to update their insurance, and automate the outreach.
### At a Glance
The [Insurance Intake page](https://insights.athelas.com/v2/patient-insurance) helps you collect updated insurance from patients. Insights automatically texts flagged patients asking them to update their insurance in the patient portal, and this page gives your team a worklist to track the follow-up.
#### Working the List
The Insurance Intake page is a worklist of patients who need an insurance update. You can:
* **Filter** by **Patient Name** or **Task Status**.
* Use the **Actions** menu on a row to **Mark as In Progress** or **Mark as Completed** as you update each patient's insurance.
After a patient submits updated insurance, update their insurance in your EHR and mark the task **Completed** here so the list stays accurate.
#### What the Patient Does
A flagged patient receives a text asking them to update their insurance. They log in to the patient portal and complete an insurance confirmation form for their primary, secondary, and tertiary insurance. For each, they can keep their current insurance, add new insurance, or indicate they'll self-pay. An eligibility check is then run on the primary insurance.
### FAQ
Open the **Actions** menu on that patient's row and select **Mark as Completed**. You can also mark a task **In Progress** while you're working it.
# Navigating Patient Workflows
Source: https://docs.athelas.com/insights_front_desk/patient_communications/navigating_patient_workflows
Build and manage automated workflows that send intake forms and appointment reminders to patients.
#### Overview
The [Patient Workflows page](https://insights.athelas.com/patient-workflows) lets you configure exactly which appointments automatically receive intake forms and appointment reminders — and preview who will be messaged before you save, so you can avoid accidental changes.
#### Creating a Workflow
Click **Create New Workflow**. In the drawer, configure:
* **Workflow Name**
* **Message Type** — **Text**, **Email**, or both. Choosing Email adds an **Email Subject Header** field.
* **Message** — the text/email template. Hover the **template variables** tooltip to insert dynamic values such as `{patient_name}`, `{appointment_datetime}`, `{site_name}`, and `{link}` (the `{link}` variable must have spaces around it). A **message preview** is shown at the bottom.
* **Send Criteria** — narrow who receives the workflow: **Appointment Types**, **Appointment Reasons**, **Patients**, **Facilities**, **Providers**, **Insurance Companies**, **Case Names**, **Appointment Reason Includes**, **Patient Preferred Language**, and **Age** (min/max). Toggle **Send Message on Appointment Creation** to send as soon as a matching appointment is created.
* **Frequency** — schedule up to three reminder rounds (**First**, **Second**, **Third**), each a number of **Days** or **Hours** **before** the appointment.
* **Forms** — add the intake form templates to include (**Add Form**). Reorder them by dragging.
* **Advanced Settings** — including **Fax Automation** (see [Patient Intake Automation](/insights_front_desk/patient_communications/patient_intake_automation)).
Click **Preview and Save**. You'll be prompted to **Activate** the workflow or keep it inactive for now.
✨**Smart Tip:** Use the **Patients** criterion to send a workflow to a single test patient first, so you can confirm the message populates correctly before rolling it out.
Appointment reminders are queued at midnight each day. If you create an appointment for tomorrow and the reminder is set to one **day** before, the patient won't receive it — but a reminder set to a number of **hours** before will still send.
#### Editing a Workflow
When you edit an existing workflow, a preview appears before your changes are saved, showing **all patients who will receive communication** (along with their Appointment Type and Facility) if you confirm — giving you full visibility into the impact of the change.
#### Tracking Workflows
* **Main table** — each workflow shows how many messages are still scheduled to go out today and how many have already been sent. Click the counts for a breakdown.
* **Per workflow** — open a workflow to see its full configuration, a preview of the message, and its **Upcoming** and **Sent** messages. The Sent view lists patient name, delivery status, scheduled and delivered times, appointment type, and appointment date — useful for debugging.
* **Change Log** — a tab in the workflow drawer showing exactly what changed in each edit, and who made it.
### FAQ
Set the **Patients** criterion to a single test patient, save the workflow, and confirm the message and forms populate correctly. Then broaden the criteria when you're ready.
Yes. Under **Message Type**, select both **Text** and **Email**. The message content is shared; email adds a subject header.
# Patient Intake Automation
Source: https://docs.athelas.com/insights_front_desk/patient_communications/patient_intake_automation
Automatically fax completed patient intake forms to a designated number, configured per workflow.
#### Patient Intake Automation
You can automatically fax completed patient intake forms to a number you choose — no manual downloads needed. Once a patient completes the forms in a workflow, their completed forms are faxed to the number you've set.
#### How to Set It Up
Fax Automation is configured **per workflow**. In a [Patient Workflow](/insights_front_desk/patient_communications/navigating_patient_workflows)'s **Advanced Settings**:
1. Turn on **Fax Automation** — *"Sends completed patient intake forms to designated fax when enabled."*
2. Enter the **Fax Number** to send completed forms to.
Your site must have a valid fax number configured for template-response faxing before Fax Automation can be enabled. If the toggle is disabled and shows *"Fax automation is currently disabled,"* contact **[support@getathelas.com](mailto:support@getathelas.com)** to get it set up for your site.
### FAQ
It lives in the **Advanced Settings** section of an individual patient workflow, not on a separate page. Open the workflow, expand **Advanced Settings**, and enable **Fax Automation**.
Your site needs a valid fax number configured for template-response faxing. Contact **[support@getathelas.com](mailto:support@getathelas.com)** to enable it.
# Text Blast Page
Source: https://docs.athelas.com/insights_front_desk/patient_communications/text_blast_page
Send one-off mass texts to patients with dynamic tags, translations, cost preview, and delivery tracking.
#### At a Glance
The [Text Blast page](https://insights.athelas.com/text-blast) lets you send one-off mass texts with dynamic information tags, so each patient sees details specific to them.
#### Creating a Text Blast
Click **Create New Text Blast**. You can start fresh, start **from a template**, or **reuse a previous blast**. Then configure:
* **Name** — a descriptive name for the blast
* **Single Day** or **Multiple Days** — with an **Appointment Date** (or start/end range) to target patients by appointment
* **Filter by Patients**, **Filter by Providers**, and **Filter by Appointment Insurances** — leaving a filter blank includes everyone in that category
* **Message Template** — the text to send
For dynamic values, enclose each variable in `{brackets}` with underscores for spaces — for example, `Hi {patient_name}!`. Messages are limited to **320 characters**.
#### Preview, Cost, and Translations
Click **Preview Text Blast** to review before sending. The preview shows how many patients will receive the blast and the **projected cost**. It also shows **translations** of your message: the number next to each language is how many patients will receive that translation based on their preferred language, and patients without a language preference receive English. When everything looks correct, click **Confirm**.
#### Tracking Text Blasts
Each sent blast is logged on the main page. Click into a blast to track **delivered** (successful), **sent** (in progress), and **failed** texts. Hover a **Failure Reason** to see why a text failed (for example, a landline can't receive texts). You can also **download a report** for the blast as a spreadsheet.
#### What the Patient Sees
Patients see the message with their dynamic values filled in. They can text **Stop** to opt out of future texts and **Unstop** to opt back in.
### FAQ
No. Our texting features don't accept replies to blasts.
The preview shows the projected cost before you confirm, so you always see it prior to sending.
A blank filter includes everyone in that category. For example, leaving **Filter by Patients** blank sends the blast to all matching patients.
# Add/edit a Patient's Insurance
Source: https://docs.athelas.com/insights_front_desk/patient_demographics/addedit_a_patients_insurance
Add or edit a patient's insurance, including workers' comp, self-pay, and missing-insurance cases.
#### Adding Insurance
Add insurance while creating a patient or from the **Demographics** section of an existing patient's profile. Select the **Insurance Company**, which sets the **Plan Type**, then enter:
* **Policy Number** and **Group Number**
* **Effective Date** and **Expiration Date**
* **Guarantor** — the relationship to the policyholder (defaults to **Self**). If the relationship is not Self, open the guarantor fields and enter the policyholder's first name, last name, email, phone, date of birth, gender, and home address.
* **Insurance Card** — optionally upload a photo of the card
* **Require prior auth on submission** — toggle if this insurance requires a prior authorization
Click **Create** (or **Save**) when done.
#### Special Insurance Types
* **Workers' Compensation** — selecting a workers' comp insurance company automatically sets the plan type to Workers' Compensation (you can also set it manually). Extra fields appear, including **Claim Number**, **Accident Date**, and — depending on your site's settings — **Employer** details. For auto/accident claims, an **Accident State** is required.
* **Self-Pay** — type **Self Pay** in the Insurance Company field and select it; the insurance detail fields are replaced with **Self-Pay (No Insurance)**.
* **Missing Insurance** — if you don't have the patient's insurance yet, type **Missing Insurance** in the Insurance Company field and select it.
#### Editing Insurance
To edit insurance later, open the patient's profile, go to the **Demographics** section, and edit the insurance entry.
### FAQ
Set the **Guarantor** relationship to something other than **Self**, then fill in the policyholder's name, contact details, date of birth, gender, and address.
Type **Self Pay** into the Insurance Company field and select it. The insurance details collapse to **Self-Pay (No Insurance)**.
# Add/edit Patient's Prior Authorization
Source: https://docs.athelas.com/insights_front_desk/patient_demographics/addedit_patients_prior_authorization
Add and track a patient's prior authorizations, including auth number, dates, and visit limits.
#### Adding a Prior Authorization
From the patient's **Prior Authorization** section, add a new authorization (**+ New Prior Auth** / **Create Authorization**). Enter:
* **Authorization Number**
* **Category** — **Pre-Certification** or **Referral**
* **Insurance** — the insurance this authorization is tied to
* **Effective Date** and **Expiration Date**
* **Tracking** — the number of authorized **visits** (or units)
Save the authorization when done.
Prior authorizations are also surfaced on the patient's profile and in the **Prior Authorizations** working list, where you can filter, use saved views, and export.
### FAQ
They're the two prior-authorization **categories** you can assign when creating an authorization. Choose the one that matches the payer's requirement for the service.
Enter the number of authorized visits (or units) when creating the authorization. Insights tracks usage against that limit and surfaces alerts as it runs low.
# Getting Started with Demographics
Source: https://docs.athelas.com/insights_front_desk/patient_demographics/getting_started_with_demographics
View and edit a patient's demographics, and create a new patient record.
#### Viewing a Patient's Demographics
Open the **Patients** tab in the navigation and search for the patient. On their profile, open the **Demographics** section to review or edit their information. The demographics are organized into sections:
* **General Information** — name (first, middle, last, suffix), preferred first/last name, previous name, date of birth, date of death, age, gender, height, weight, primary care provider (name, NPI, fax), referral source, Social Security Number (hidden by default — click the eye icon to reveal), preferred language, ethnicity, race, gender identity, sexual orientation, and tribal affiliations
* **Contact Information** — phone number, email address (with a portal registration action), home address, and previous address
* **Preferred Pharmacy** — pharmacy name, address, and phone
* **Emergency Contact** — first name, last name, phone, email, and relationship
* **Patient Notes**
The Demographics section also includes **Patient Occupation**, **Financially Responsible Parties**, **Family History Conditions**, and **Related Persons**.
#### Creating a New Patient
Select **Create New Patient** from the **Patients** tab (you can also create a patient from the Calendar). A side panel opens where you enter the patient's information. Required fields include:
* **Full name** (first and last; middle if applicable)
* **Gender**
* **Date of birth**
* **Contact information** — home address (and mailing address if different), phone number, and email address
Fill in the fields and save the record.
### FAQ
The SSN is hidden by default in **General Information**. Click the eye icon next to it to reveal it.
Yes. You can create a new patient directly from the Calendar, in addition to the **Create New Patient** option on the Patients tab.
# How to Find and Edit a Patient's Profile
Source: https://docs.athelas.com/insights_front_desk/patient_profiles/how_to_find_and_edit_a_patients_profile
Locate a patient's profile, edit their contact and mailing info, and navigate the profile tabs.
##### ⚠️ Important Note
**Only a patient's contact and mailing information can be updated in Insights.** To edit basic identifying information like name or date of birth, update it in your EHR (or contact [support@getathelas.com](mailto:support@getathelas.com)); those changes appear in Insights within 24 hours.
### How to Find a Patient's Profile
#### The Speedy Way
From any page in Insights, use **Universal Search**: click the 🔍 icon in the header, or press **Cmd + K** (Mac) / **Ctrl + K** (PC). Start typing the patient's name and select their **Patient Profile** link.
✨**Smart Tip:** Universal Search can find more than patients — appointments, payment plans, claims, and more. Use it often.
#### The Classic Way
Open the [Patient Responsibility](https://insights.athelas.com/v2/patient-responsibility) page, search the **Patient View** (search by DOB, phone #, or name), and click the patient's name to open their profile.
### Editing Patient Profile Information
To change the patient's email, phone number, or statement mailing address, click **Update Patient** and edit the fields, then save. (As noted above, name and home address are edited in your EHR.) The profile header updates with the new information.
The profile header also gives you quick actions to:
* **Cards on File** — [add or update the patient's saved credit cards](/insights_front_desk/patient_responsibility/manage_credit_cards)
* Write a **patient note**
* **Download the patient's mail statement** ([print a statement](/insights_front_desk/patient_statements/print_patient_statements))
* **Send a portal invite** to the patient
* **Open the EHR Patient Profile** (where available)
### Tabs
Beneath the header you'll find these tabs:
**Charges** — all of the patient's charges, ordered by latest date of service. Related guides:
* 🖨️ [Print a Patient Statement](/insights_front_desk/patient_statements/print_patient_statements)
* 📬 [Send a One-off Paper Statement](/insights_front_desk/patient_statements/send_one_off_paper_statements)
* 📧 [Send an Email Statement](/insights_front_desk/patient_statements/send_email_statements)
* 🏓 [Set Up Miscellaneous Line Item Charges](/insights_front_desk/patient_responsibility/how_to_set_up_miscellaneous_line_item_charges)
* ↩️ [Refund a Payment](/insights_front_desk/patient_responsibility/how_to_refund_a_payment)
* ❌ [Cancel Patient Responsibility](/insights_front_desk/patient_responsibility/how_to_cancel_pr)
* 📝 [Write Off Patient Responsibility](/insights_front_desk/patient_responsibility/how_to_write_off_pr)
* 👪 [Take Payment for Multiple Family Members](/insights_front_desk/patient_responsibility/how_to_take_payment_for_families)
* 📲 [Request Payment by Text or Email](/insights_front_desk/patient_responsibility/how_to_request_via_text_or_email)
**Credits** — view and manage patient credits. See [Record Payments Taken in an External System](/insights_front_desk/patient_responsibility/how_to_record_payments).
**Transaction History** — all transactions in chronological order; click a transaction to find receipts or make refunds.
**Eligibility** — full eligibility details, with raw EDI info under **See More Details**. See [how to run eligibility checks](/insights_front_desk/appointments/how_to_run_an_eligibility_check).
**Touchpoints** — automated PR collection texts and emails and their delivery status. Configure them in [PR Settings](/insights_front_desk/patient_responsibility/pr_settings).
**Claims** — all of the patient's claims (functionally the same as filtering the [Claim Details page](/insights_biller/claim_details/claim_details_page) by this patient).
**Prior Authorization** — view, create, and edit prior authorizations.
**Documents** — store a patient's documents (insurance card, intake information, driver's license, and more).
### FAQ
Basic identifying information is managed in your EHR. Update it there and it appears in Insights within about 24 hours, or contact [support@getathelas.com](mailto:support@getathelas.com).
Press **Cmd + K** (Mac) or **Ctrl + K** (PC) to open Universal Search, type the patient's name, and select their profile.
# Charge Saved Credit Cards
Source: https://docs.athelas.com/insights_front_desk/patient_responsibility/charge_saved_credit_cards
Batch-charge patients' saved cards for outstanding balances, filtered by amount and charge type.
#### At a Glance
The **Charge Saved Cards** tab lets you charge many patients' saved cards at once. You can specify which patients to include, narrow the list by balance amount and charge type, and charge all of the selected cards in one batch.
#### Best Practices
1. Tell patients while they're in office that you'll **save their card and auto-debit** it when their bill comes due (some practices include this in their intake terms). Prepping patients avoids confusion.
2. Run this **regularly** so balances don't build up too high.
3. Set the **maximum charge** to an amount that won't surprise patients; contact the patient directly before charging very high balances.
#### Walkthrough
1. **Filter charge types** — by default all payment types are included. Open the **Line Items** dropdown to uncheck any you don't want to auto-charge.
2. **Set min and max balance** — include only balances within a range. We generally suggest a minimum of `$20` (to reduce card-fee impact) and a maximum of `$500` (charge larger balances only after contacting the patient).
3. **Select patients** — patients meeting your criteria are opted in on the **Whitelist**. Check any you want to exclude and click **Disable Selected** to move them to the **Disabled** group.
4. **Confirm charges** — click **Confirm**, then confirm you have authorization to charge the cards. Charges begin immediately and appear in the **History** table when done.
5. **Notifications** — charges are accompanied by text and email confirmations to patients.
This tool is **manually triggered** — configuring it does not create automatic recurring charges. (For recurring charges, use a [payment plan](/insights_front_desk/patient_responsibility/setting_up_a_payment_plan).)
### FAQ
No. You trigger each batch manually. For recurring, scheduled charges, set up a [payment plan](/insights_front_desk/patient_responsibility/setting_up_a_payment_plan) instead.
Check the patient in the Whitelist and click **Disable Selected** to move them to the Disabled group, which won't be charged in that batch.
# How to Cancel PR
Source: https://docs.athelas.com/insights_front_desk/patient_responsibility/how_to_cancel_pr
Cancel patient responsibility that should never have existed, and understand which PR is cancelable.
#### What PR Is Cancelable?
Cancelling PR removes it entirely, as if it never existed — so some PR can be cancelled and some can't.
**Cancelable** — PR created by your team, or not derived from a remittance:
* **Self-Pay PR** created when your team collects self-pay payments
* **Custom charges** your team created in Insights
* **Placeholder PR** created when you collect up-front copay, coinsurance, or deductible (this can be cancelled, but is replaced once a remittance arrives)
**Non-cancelable** — once a remittance arrives, the PR derived from it can no longer be cancelled. You can still:
* **[Write Off PR](/insights_front_desk/patient_responsibility/how_to_write_off_pr)** — reduce the amount due (the PR is still due, but you accept some/all won't be paid)
* **Upload a new remittance** — if the remit data is wrong, upload a new EOB/remittance and the PR updates overnight
#### How to Cancel PR
1. Open the patient's profile and, on the **Charges** tab, click **View Details** on the charge.
2. Click **Cancel PR**.
3. In the window, select any or all parts of the PR to cancel, then click **Confirm**.
The cancelled PR no longer appears in the charges list.
#### Troubleshooting
If the **Cancel PR** button is disabled but you expect the PR to be cancelable, hover over it for a tooltip. Most often the PR has already been paid — [refund the payment](/insights_front_desk/patient_responsibility/how_to_refund_a_payment) first.
### FAQ
Cancelling erases PR that should never have existed; writing off keeps the PR on record but accepts it won't be collected. Remittance-derived PR can't be cancelled — write it off instead.
# How to Correct a Posted Payment
Source: https://docs.athelas.com/insights_front_desk/patient_responsibility/how_to_correct_a_posted_payment
Correct a payment posted to the wrong patient, for the wrong amount, or with the wrong payment type, using the refund and credit workflows.
## Overview
A payment that has been recorded in Insights cannot be deleted or edited from transaction history. When a payment is posted incorrectly, do not try to erase the original transaction. Neutralize it with an offsetting refund or credit, then record the payment correctly.
A correct correction leaves you with four things:
* The original transaction still visible for audit and history purposes.
* The incorrect payment financially neutralized.
* The appropriate payment or credit on the correct patient account.
* A final balance that reflects the payment you intended to take.
This page helps you choose the right correction for each kind of mis-post. For the mechanics of the refund itself, see [How to Refund a Payment](/insights_front_desk/patient_responsibility/how_to_refund_a_payment). For how credits behave on a patient account, see [How to Record Payments](/insights_front_desk/patient_responsibility/how_to_record_payments).
**Do not remove or overwrite the original transaction.** Transaction history preserves the original activity on purpose. Always correct a mis-post by adding an offsetting transaction.
## Which correction to use
| **Scenario** | **Recommended correction** |
| :--------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Payment posted to the wrong patient** | Refund the payment on the incorrect patient, then recreate the credit or payment on the correct patient. See [Payment posted to the wrong patient](#scenario-1-payment-posted-to-the-wrong-patient). |
| **Wrong payment amount posted** | Refund the full incorrect amount to cancel the original patient responsibility (PR), then create a new charge for the correct amount and collect against that charge. See [Wrong payment amount posted](#scenario-2-wrong-payment-amount-posted). |
| **Correct amount, wrong payment type** | Record a refund to offset the incorrect payment, then record the payment again using the correct payment type. See [Wrong payment type posted](#scenario-3-wrong-payment-type-posted). |
| **Wrong patient and wrong payment type** | Correct both patient accounts through the refund and credit workflow. See [Wrong patient and wrong payment type](#scenario-4-wrong-patient-and-wrong-payment-type). |
## Why transaction history cannot be edited
Once a payment has been recorded, the original transaction stays in the patient's transaction history. Say the original transaction reads:
* **\$100 → Cash → Patient A**
The site later discovers that the payment should have been:
* **\$100 → Credit Card → Patient B**
The original \$100 cash transaction does not get deleted. Instead, create the offsetting transaction on Patient A, then record the payment correctly on Patient B.
Transaction history doubles as an audit trail, which is why deleting a transaction is not supported. Removing the original payment would make four questions impossible to answer later:
* What was originally posted
* What was corrected
* Why the patient's balance changed
* When the correction occurred
## Scenario 1: Payment posted to the wrong patient
A \$100 credit-card payment was posted to patient ID 1234, but the payment belongs to patient ID 6789. Two options correct this mis-post. Choose the one that fits your situation.
### Option 1: Move the money with credits
Use this option when the patient does not need money back on their card. The \$100 stays inside Insights and moves from the wrong account to the right one.
Confirm the payment details against the receipt or the transaction report:
* Patient name and ID
* Payment amount
* Payment date
* Payment method
* Card last four digits, if applicable
Do not go further until you can confirm which patient the payment belongs to.
Open the incorrect patient's account and find the payment — in this example, \$100 by credit card on patient ID 1234.
The original transaction cannot be deleted or edited, so start by checking whether the payment has already been converted into a credit.
1. Open the incorrect patient's profile.
2. Go to the **Charges** tab and select the relevant date of service (DOS).
3. Open **Charge Details**.
4. Review the transaction timeline at the bottom of **Charge Details**. This mini transaction log shows whether the payment was already refunded as credit.
**If the payment has already been refunded to credits**, you can skip the refund. Confirm that the remaining available credit came from the refund for that date of service, then go to the **Credits** tab and find the refunded credit.
Remove the incorrect credit from **Edit Credits**.
**If the payment is still recorded as a payment**, go to the **Transactions** tab, find the incorrectly posted payment, and refund it as credits.
Then go to the **Credits** tab and click **Edit Credits** to remove the refunded credits.
The original payment stays visible in transaction history, and the correction appears as a separate transaction.
Now move the \$100 onto patient ID 6789.
Open the correct patient's profile, go to the **Credits** tab, and add \$100 in credits to the account.
Go to the **Charges** tab and find the charge or outstanding balance that the payment should have covered.
Apply the credits to that balance or date of service.
### Option 2: Refund the card and re-collect
Use this option when the money needs to go back to the cardholder. Refund the payment to the credit card on the incorrect account (patient ID 1234), then process the payment again on the correct account (patient ID 6789).
**Talk to the cardholder before you start.** This route processes the payment twice, once on each account, and the refund takes 5 to 10 business days to appear on the patient's statement.
## Scenario 2: Wrong payment amount posted
The correct amount was \$100.00, but \$150.00 was collected from the patient. Because transaction history cannot be edited from \$150.00 down to \$100.00, correct the incorrect charge and create a new one for the right amount.
Start by reviewing the receipt, the [PR timeline](/insights_front_desk/patient_responsibility/pr_timeline), and the charge details in Insights to confirm what the patient should have been charged. Then work out which of these three cases you have:
* **Over-collection** — the patient paid more than the correct amount.
* **Under-collection** — the patient paid less than the correct amount.
* **Correct amount, wrong amount posted** — the patient paid the right amount, but staff posted a different one.
### Over-collection
Correct amount \$100.00, collected \$150.00, over-collected \$50.00.
1. Refund \$100.00 of the incorrect charge as credits to cancel the original PR.
2. Decide with the site how to handle the \$50.00 overpayment: return it to the patient by credit card, cash, or check, or keep it as a patient credit to apply against a future balance.
3. Create a new charge for \$100.00.
4. Apply the refunded \$100.00 credit to the new charge.
5. Collect payment for the new charge.
6. Verify the patient's final balance, and confirm that the \$50.00 is either refunded or showing correctly as a credit.
### Under-collection
Correct amount \$150.00, collected \$100.00, under-collected \$50.00.
1. Refund the original \$100.00 payment to cancel the original PR, either as credits or back through the original payment method.
2. Create a new charge for \$150.00.
3. Collect payment for the new charge. Because this was an under-collection, the patient owes the remaining \$50.00. If you refunded the original payment to the credit card, the patient can repay the full \$150.00 by whichever method they prefer.
4. Verify that the account reflects the correct \$150.00 charge and payment.
### Correct amount, wrong amount posted
Correct amount \$100.00, collected \$100.00, posted \$150.00.
1. Refund \$100.00 of the payment as credits.
2. Refund the remaining \$50.00 through the original payment method, then cancel the original PR. This offsetting refund reconciles the \$50.00 that was posted but never collected.
3. Create a new charge for \$100.00 and pay it with the \$100.00 refunded credit.
4. Verify that the account reflects the correct \$100.00 charge and payment.
## Scenario 3: Wrong payment type posted
The patient intended to pay by credit card, but staff selected **Cash** in Insights. The amount is right and the payment method is wrong. Because the payment was recorded as cash, nothing was collected from the patient's card, so correct the cash transaction and then collect the payment properly.
1. **Correct the incorrectly recorded payment.** The cash transaction cannot be edited into a credit-card transaction. Record a refund using the original payment method — cash, in this case — to offset the incorrect record.
2. **Post the payment correctly.** Go to **Charges** and record the payment with **Credit Card** as the payment method.
3. **Verify the transaction history.** History now holds the original cash transaction alongside the transactions that corrected it. That is expected.
## Scenario 4: Wrong patient and wrong payment type
Patient 1234 paid \$100 by credit card, but staff posted the \$100 as cash under patient 5678. Because the payment was recorded as cash, nothing was collected from patient 1234's card.
### Correct patient 5678
Refund the incorrect cash payment using the original payment method. That cash payment existed only as a record in Insights, so no money was ever taken from a card under patient 5678.
### Correct patient 1234
Create a \$100 charge for patient 1234 if one does not already exist, then collect the \$100 by credit card.
### Reconcile both accounts
Confirm that patient 5678 no longer holds the incorrect \$100 cash payment or credit, and that patient 1234 has the correct \$100 credit-card payment recorded.
### Document the correction
Keep the receipt and the end-of-day documentation with the support request or your internal records, so the reason for the correction stays clear.
## Understanding credits
Credits let you move the financial amount of a payment without sending money back to the patient. The **Add Credits** payment type adds a matching amount of credit to the patient's account. A credit can be flexible or tied to a particular date of service, depending on the workflow.
Credits are what make Option 1 of Scenario 1 work: the \$100 leaves the wrong account as a credit and lands on the right one, and the patient's card is never touched.
## Key reminders
* **Transaction history stays.** Original payment transactions remain in history. Corrections happen through the refund and credit workflow, never by editing the original transaction.
* **Avoid duplicate payments.** Before you record a new payment, confirm that the incorrect payment has been corrected.
* **Verify the patient.** Use the receipt, the patient profile, transaction history, and your payment reports together to confirm which patient the payment belongs to.
* **Review credits carefully.** A credit may represent a legitimate patient payment. Check where a credit came from before you change it.
* **Transaction date is not the date of service.** The transaction date records when the payment activity happened; the date of service records when the service was provided. The two dates are often different.
### FAQ
No. Payment transactions cannot be deleted or edited once recorded, because transaction history is the audit trail for the account. Correct a mis-post by adding an offsetting refund or credit, which keeps both the original activity and the correction visible.
Refund to credits when the money needs to move inside Insights — to another date of service or another patient — and the patient is not expecting money back. Refund to the card when the patient should actually be repaid. A card refund takes 5 to 10 business days to appear, so set that expectation with the patient.
Refunding a payment does not remove the patient responsibility tied to it. Go to the **Charges** tab and [cancel the PR](/insights_front_desk/patient_responsibility/how_to_cancel_pr) to clear the balance as well.
Add a miscellaneous line item charge for the correct amount. See [How to Set Up Miscellaneous Line Item Charges](/insights_front_desk/patient_responsibility/how_to_set_up_miscellaneous_line_item_charges).
# How to Push to PR
Source: https://docs.athelas.com/insights_front_desk/patient_responsibility/how_to_push_to_pr
Push a remaining payer balance to patient responsibility from a claim or the Posting Tool.
PR can take 10–15 minutes to generate — wait for the system to update before making further adjustments. Avoid creating negative balances (total recorded payments exceeding total charges).
#### When PR Reaches the Patient
PR is part of the balance, but it's only sent to the patient once all other balances are resolved, so that `PR amount` = `Balance amount`. For example, a balance of \$10 Denied + \$20 PR won't go to the patient until the \$10 Denied is reconciled (written off, or moved into PR). Once resolved, the balance equals the total PR and is sent to the patient.
#### From a Claim (Claim Details, Denials, or Rejections)
Open a claim on the [Claim Details](/insights_biller/claim_details/claim_details_page) page (or the Denials/Rejections worklists), open the **Actions** menu, and select **Push to PR** (available only when there's a balance that can be pushed).
Each charge shows its **Current PR** and an adjustable **Final PR Amount**. Choose **Keep current insurance** or **Switch to self-pay** (a good option when the payer definitely won't pay — for example, a denied claim not being appealed, or a patient who reached their benefit maximum). Optionally check **Automatically Write Off Remaining Balances**, add a reason, and click **Confirm Push to PR**.
#### With the Posting Tool
On the [Posting Tool](/insights_front_desk/posting/how_to_use_the_posting_tool_page) page, filter for the encounter and click **Post/Adjust** on the procedure. In the Posted Payments list, open the three-dot **Actions** menu on the payer charge and select **Push to PR**. Enter the amount and a reason, then click **Push to PR**. Review the highlighted preview and the Procedure Summary, then click **Confirm Posting**.
### FAQ
Choose **Switch to self-pay** when the payer definitely won't pay — for example, a denied claim you're not appealing or a patient who has reached their benefit maximum.
# How to Record Payments
Source: https://docs.athelas.com/insights_front_desk/patient_responsibility/how_to_record_payments
Record a prior or external payment on a patient's account using credits plus a matching charge.
### At a Glance
Sometimes you need to record an external payment to balance an encounter without charging the patient again — for example, if your organization recently moved to Athelas from another billing company.
The approach is:
* **Create available credits** in the exact amount previously paid.
* **Create a miscellaneous charge** in that amount.
* **Apply the credits** to that charge to balance it out.
### Full Walkthrough
1. Open the patient's profile and switch to the **Credits** tab, then click **Edit Credits**.
2. Enter the exact amount previously paid and a note explaining why you're creating the credits. Check **Available Credits** so they can be used now and aren't tied to a date of service. The credits appear on the **Credits** tab.
3. Switch to the **Charges** tab and click **+ Miscellaneous Charge**.
4. Fill in the patient's facility and provider. For the **Line Item**, use (or create) a custom payment type for recording external payments.
To create a reusable line item, go to [PR Settings](/insights_front_desk/patient_responsibility/pr_settings) → **General** → **Custom Payment Types**, click **+**, name it (e.g., "Record of payment taken externally"), set the Type to **Standard**, leave the default amount at 0, and **Create**. See [How to Set Up Miscellaneous Line Item Charges](/insights_front_desk/patient_responsibility/how_to_set_up_miscellaneous_line_item_charges).
5. Select the line item and enter the credit amount in **Pay Amount**. Check **Apply Credits** — **Pay with Patient Credits** selects automatically. Add a note if you like.
6. Click **Confirm**, then confirm again.
We advise **not** sending the patient a receipt in this case — it could look like they were charged again.
### FAQ
The matching credit and charge balance each other, so the external payment is reflected on the account without creating a new balance due or double-charging the patient.
# How to Refund a Payment
Source: https://docs.athelas.com/insights_front_desk/patient_responsibility/how_to_refund_a_payment
Refund a patient payment to credits, the original card, or as an external cash/check refund.
#### How to Refund a Payment
1. Open the patient's profile. Find the payment on the **Charges** or **Transaction History** tab and click **View Details**.
2. On the transaction details, find the transaction and click **Refund Payment**.
3. Specify whether it's a full or partial refund, the refund method, the amount (if partial), and the reason.
4. Click **Refund**.
##### Refund Methods
* **Add Credit to Patient's Account** — the payment becomes credits, applied to future balances.
* **Refund to Credit Card (via Stripe)** — for payments originally made on an Athelas card reader.
* **Record External Refund (Cash/CC)** — record a cash or credit-card refund taken outside the Athelas card reader.
* **Record External Check Refund** — record that you refunded the patient by check.
A new row appears in the transaction table for the refund. If you refunded to credits, the credit appears on the patient's **Credits** tab.
**Leftover PR:** Refunding a payment does **not** remove the patient responsibility tied to it. For example, a \$75 self-pay payment creates \$75 of PR; refunding the \$75 payment leaves the \$75 PR as a balance due. To remove both, [cancel the PR](/insights_front_desk/patient_responsibility/how_to_cancel_pr) on the Charges tab as well.
### FAQ
Choose **Refund to Credit Card (via Stripe)** — this refunds the original card for payments made on the Athelas card reader.
Refunding doesn't remove the associated PR. Go to the **Charges** tab and [cancel the PR](/insights_front_desk/patient_responsibility/how_to_cancel_pr) to clear the balance.
A refund on its own only clears the incorrect account. To move the money to the right patient, or to correct a wrong amount or payment type, follow [How to Correct a Posted Payment](/insights_front_desk/patient_responsibility/how_to_correct_a_posted_payment), which covers each mis-post scenario end to end.
# How to Request via Text or Email
Source: https://docs.athelas.com/insights_front_desk/patient_responsibility/how_to_request_via_text_or_email
Manually send a single patient a payment request by text or email from their profile.
### At a Glance
Use this when you want to send **one patient** a payment request right now — for example, if they left without paying their copay, or want to pay by card immediately.
This is different from **patient statements**. This page covers a **manual, per-patient** payment request from the patient's profile. Recurring, batch statement delivery is configured separately — see [Manage Patient Statements](/insights_front_desk/patient_statements/manage_patient_statements).
### How to Do It
1. Open the patient's profile and, on the **Charges** tab, click **Pay Balance**. (Disabled if the patient has no balance.)
2. Choose **Request Payment via Text** (or email).
3. Click **Confirm**. The request is sent within a few minutes.
### What the Patient Sees
* **Text** — a payment request with options to pay by credit card or Apple Pay. Opening the link, the patient confirms, receives an authentication code (text and email), then reviews the summary, adjusts the amount if allowed, and checks out.
* **Email** — options to pay online (payment link), by phone, or in person. The online link follows the same authenticate → review → checkout flow.
You can customize the request text in [PR Settings](/insights_front_desk/patient_responsibility/pr_settings) → **General** → **Text Message Customization**.
✨**Smart Tip:** At the end of each day, check for patients who didn't pay their copay and send a same-day request — patients are more likely to trust a text that arrives the day of their visit.
### FAQ
This sends an immediate, one-off payment request to a single patient from their profile. Statements are the automated, batched billing communications configured in [Patient Statements](/insights_front_desk/patient_statements/manage_patient_statements).
Yes — Apple Pay is available on the text-message payment request.
# How to Send a Patient Payment Link
Source: https://docs.athelas.com/insights_front_desk/patient_responsibility/how_to_send_a_patient_payment_link
Send a patient a secure payment link by text or email, or generate a pay link from Insights.
### At a Glance
A payment link shows the patient their full outstanding balance, with itemized detail of the encounters contributing to it, and lets them pay online.
### Send via Text or Email
1. On the [Appointments](https://insights.athelas.com/appointments) page, choose the patient encounter and click **Charge**.
2. Enter the amount to charge. *(You can also [set up a payment plan](/insights_front_desk/patient_responsibility/setting_up_a_payment_plan) from here.)*
3. Continue to the payment method and choose **Send Payment Link** → **Send via Text** or **Send via Email**, then confirm.
The patient receives a message with a secure link to the payment portal.
### Generate a Link Within Insights
From the [Patient Responsibility page](/insights_front_desk/patient_responsibility/patient_responsibility_page), open the **Actions** menu and choose **Generate Patient Pay Link**. Paste the link into a new browser tab; the patient signs in (they receive an authentication code by text and email and can choose either).
### At Checkout
The patient can view all charges contributing to their balance, then click **Go to Checkout** to pay in full or in part (partial payments depend on your [PR Settings](/insights_front_desk/patient_responsibility/pr_settings)). They can use a saved card or add a new one, and a receipt is sent on completion.
Generated pay links expire after one hour, after which the patient must re-authenticate via the emailed link.
### FAQ
Yes, if partial payments are enabled in the **General** tab of your [PR Settings](/insights_front_desk/patient_responsibility/pr_settings). Otherwise they must pay the full balance.
# How to Set Up Miscellaneous Line Item Charges
Source: https://docs.athelas.com/insights_front_desk/patient_responsibility/how_to_set_up_miscellaneous_line_item_charges
Create custom line-item charge types and charge a patient for them from their profile.
### At a Glance
Line item charges are separate from insurance payments — for example, charging a patient for an injected substance that insurance won't cover.
This feature may be restricted to Administrators and Billing Managers at your practice.
### Create a Line Item
In the **General** tab of [PR Settings](/insights_front_desk/patient_responsibility/pr_settings), scroll to **Custom Payment Types**. Active items appear in the line-item list when charging patients. Click **+** to create one, fill in the fields, and click **Create**.
Use the **Type** designation so the line item reports correctly:
* **Standard** — independent of your self-pay fee schedule and insurance PR; use for most transactions.
* **Add Credits** — adds flexible credits to the patient's account.
* **Self Pay** — generates self-pay PR (like a deposit applied to future self-pay PR per your self-pay fee schedule).
### Charge a Patient for a Line Item
Open the patient's profile and, on the **Charges** tab, click **+ Miscellaneous Charge**.
From this window you **cannot** collect an outstanding balance (use **Pay Balance** on the profile) or copay/coinsurance/deductible (use the [Appointments](https://insights.athelas.com/appointments) page). It creates a **payment and a matching charge**, and does not pay off an existing balance.
Fill in the facility and provider, then add your line item — its default charge auto-fills the **Unit Price**. If the patient has available credits, you can apply them (see the **Credit breakdown**). Choose how to process or request payment, click **Confirm**, confirm again, then optionally print or send a receipt.
✨**Smart Tip:** You can create a line item on the fly at the bottom of the list in this popup, but it won't have a default charge — so prefer creating line items in **PR Settings** to keep amounts consistent across staff.
### FAQ
A miscellaneous charge creates a brand-new payment and charge. To collect an existing balance, use **Pay Balance** on the patient's profile instead.
# How to Take a Partial or Split Payment
Source: https://docs.athelas.com/insights_front_desk/patient_responsibility/how_to_take_a_partial_or_split_payment
Sometimes a patient wants to pay with multiple payment methods — for example, two credit cards, or a partial cash payment with the rest on a card. The easiest way to handle this is to **add the entire amount to the patient's balance**, then take **two partial payments** towards that balance.
## Step 1: Add the full amount to the balance
In the **Charge** window, enter the total amount to be collected. Under **Payment Method**, select **Add to Patient's Balance**, then click **Confirm**.
## Step 2: Collect the first payment
Click on the patient's name from the **Appointments** page to access their patient profile.
In the patient profile, select the same charge and click **Pay Balance**. Enter the amount for the first payment and choose the payment method for that amount.
## Step 3: Collect the second payment
You'll see that the balance on that charge has decreased by the amount you just collected. For the second payment, select the same charge and click **Pay Balance** again.
Enter the amount for the second payment and choose the payment method.
✨**Smart Tip:** The same flow works for **more than two** payment methods — keep clicking **Pay Balance** on the same charge and collecting partial amounts until the balance reaches `$0`.
### FAQ
Yes. Repeat **Step 3** as many times as needed. Each click of **Pay Balance** on the same charge collects another partial payment against the remaining balance. Continue until the charge balance reaches `$0`.
Any payment method available in Insights — credit/debit card, saved card on file, cash, check, or an Athelas card reader transaction. Each partial payment can use a different method.
Edit the original charge or void it before collecting payments. Once payments have started posting against the balance, you may need to refund a partial payment first. See [How to refund a payment](/insights_front_desk/patient_responsibility/how_to_refund_a_payment).
Each partial payment appears as a separate event on the patient's [PR timeline](/insights_front_desk/patient_responsibility/pr_timeline) with its own amount, payment method, and timestamp — making it easy to reconcile both transactions later.
# How to Take Payment for Families
Source: https://docs.athelas.com/insights_front_desk/patient_responsibility/how_to_take_payment_for_families
Collect one combined payment across related patients, such as a parent paying for their children.
### At a Glance
When several people pay together — like a parent settling their own balance and their child's — a single combined payment is the most efficient way to handle it.
### How to Do It
1. Open the patient's profile and, on the **Charges** tab, click **Pay Balance**. (This button is disabled if the patient has no balance.)
2. In the popup, click **Add a related patient**.
3. Search by **name**, **date of birth**, or **phone number**, and select the patient. You can add as many patients as you like.
4. Each added patient's outstanding balance auto-fills the pay amount. You can edit the amounts — lowering the amount requested can help secure at least a partial payment.
5. Choose the payment method and click **Confirm**.
If you chose a method that sends a statement, the patient receives it shortly. If you charged a card directly, the payment processes immediately and you can send a receipt by text or email.
### FAQ
As many as you like. Use **Add a related patient** repeatedly and adjust each patient's amount before confirming.
# How to Write Off PR
Source: https://docs.athelas.com/insights_front_desk/patient_responsibility/how_to_write_off_pr
Write off patient responsibility your practice won't collect, and undo a write-off if needed.
**Write-off vs. cancellation.** Writing off PR is distinct from cancelling it:
* **Write Off PR** — your practice decides that, while PR may technically be due, you won't collect it (for example, bad debt not worth pursuing). All PR can be written off.
* **Cancel PR** — your practice decides the PR is incorrect and should never have existed, so you erase it. Some PR types can't be cancelled. See [How to Cancel PR](/insights_front_desk/patient_responsibility/how_to_cancel_pr).
#### How to Write Off PR
1. Open the patient's profile and, on the **Charges** tab, click **View Details** on the charge.
2. Click **Write Off**.
3. In the write-off window, enter the portion of PR to write off — as much or as little as you like.
4. **Document the reason** — choose a standardized reason from the dropdown or enter a custom one.
5. Click **Confirm**.
The written-off PR appears in the charges view, and the patient's outstanding balance updates across Insights.
#### Undoing a Write-Off
Write-offs are fully reversible.
* **If the write-off is still open in front of you:** click **Write Off** again to reopen the controls, then click the red **Remove Write Off** button.
* **Starting from scratch:** open the patient's profile, find the written-off charge on the **Charges** (or **Transaction History**) tab, click **View Details**, then click **Write Off**. In the window, enter the amount to reverse and a reason, then click **Remove Write Off**.
The PR returns to its original state and the patient's outstanding balance updates across Insights.
#### Troubleshooting
If the **Write Off** button is disabled, hover over it for a tooltip explaining why. Most often the PR has already been paid — you'll need to [refund the payment](/insights_front_desk/patient_responsibility/how_to_refund_a_payment) before writing it off.
#### Other Resources
To write off a balance with the Posting Tool, see [Remittances](/insights_biller/general_billing/remittances) and [How to Use the Posting Tool Page](/insights_front_desk/posting/how_to_use_the_posting_tool_page).
### FAQ
Yes — all write-offs are reversible. Reopen the charge's write-off controls and click **Remove Write Off**, entering the amount to reverse and a reason.
Usually because the PR has already been paid. Refund the payment first, then write off the balance. Hover the disabled button for the exact reason.
# Manage Credit Cards
Source: https://docs.athelas.com/insights_front_desk/patient_responsibility/manage_credit_cards
Set default card-saving, add or remove a patient's saved cards, and key in a card manually.
#### At a Glance
Saving a patient's card avoids re-entering it every time, and you'll always need a way to remove cards that have expired or that a patient asks you to delete. This guide covers setting the site default for saving cards, toggling it per payment, adding a card without charging, removing a saved card, and keying in a card manually.
#### Set the Site Default for Saving Cards
Open your practice's [PR Settings](/insights_front_desk/patient_responsibility/pr_settings). Under the **General** tab, find the **Card Fees** section and toggle **Auto-Save patient credit cards** on or off.
#### Toggle Card Saving on an Individual Payment
From the [Appointments](https://insights.athelas.com/appointments) page, choose the patient to charge and open the payment flow. Select **Pay via Credit Card**. If no card is saved, you'll have the option to **Save this Credit Card** as you enter the details. If a card is already saved, you can select the saved card or enter a new one. You can view a patient's saved cards on their profile under **Cards on File**.
#### Add a Card Without Charging
Open the [patient's profile](/insights_front_desk/patient_profiles/how_to_find_and_edit_a_patients_profile), open the **Cards on File** menu, and click **Add New Card** to key in the card details without charging.
#### Remove a Saved Card
Open **Cards on File** on the [patient's profile](/insights_front_desk/patient_profiles/how_to_find_and_edit_a_patients_profile) and click **Remove Card** next to the card you want to delete.
#### Manually Enter a Card
When a card won't swipe or the patient only has the numbers, every payment window (Miscellaneous Charge, Quick Purchase, Pay Balance) includes **Pay via Credit Card** — select it and key in the details for immediate processing.
**Pay via Credit Card** is for card payments **not** taken on the **Athelas card reader** (which is a separate option in every payment window).
### FAQ
In [PR Settings](/insights_front_desk/patient_responsibility/pr_settings) → **General** → **Card Fees**, turn off **Auto-Save patient credit cards**. You can still save a card on an individual payment.
Yes. On the patient's profile, open **Cards on File** and click **Add New Card**.
# Patient Responsibility Page
Source: https://docs.athelas.com/insights_front_desk/patient_responsibility/patient_responsibility_page
Tour the Patient Responsibility page: analysis metrics, patient/transaction views, and the Actions menu.
### At a Glance
The [Patient Responsibility page](https://insights.athelas.com/v2/patient-responsibility) has everything you need to assess, track, and collect outstanding PR balances. This guide covers the basics; related guides are linked throughout.
## Analysis
At the top of the page, expand or collapse the **Analysis** window to see, at a glance:
* **Total Patient Collections**
* **Total Outstanding PR**
* **Patients With Outstanding Balance**
* **Paid from Last Batch Reminder**
Two charts — **Age of Balance** and **Total Amount Owed** — can be toggled between dollar amount and number of patients, and exported with **Download CSV**.
## Views
* **Patient View** — a list of patients with their **Last Contacted** date, **Current Balance**, and **Credits**. Search by DOB, phone #, or name, sort by any column, and toggle filters like **Has Available Credits** and **Has Locked Credits**. Click a patient to open their profile, or use **Pay Balance** to collect.
* **Locked Credits** — credits held against a specific date of service.
* **Customer View** — completed transactions for non-patients or charges not tied to an appointment (for example, gift cards or retail product purchases). Download/print receipts or refund payments.
* **Transaction View** — view and filter all transactions; download/print receipts, expand a transaction for detail, and export a transaction report as CSV.
* **Gift Cards** — gift-card details (creation date, purchaser, redemption code, original/used/remaining amounts).
Refunding payments may be limited to Billing Managers and Administrators.
## Actions Menu
From **Patient View**, the **Actions** menu (upper right) offers:
* **Generate Patient Pay Link** — copies a patient pay link to your clipboard to share.
* **Miscellaneous Charge** — create a new [miscellaneous charge](/insights_front_desk/patient_responsibility/how_to_set_up_miscellaneous_line_item_charges) (this does not collect an existing balance or copay/coinsurance/deductible).
* **Set Up Payment Plan** — create a [payment plan](/insights_front_desk/patient_responsibility/setting_up_a_payment_plan) when your role allows you to manage payment plans.
* **Patient Balance Report** — download a CSV of balances for the current filters.
* **PR Settings** — open your [PR Settings](/insights_front_desk/patient_responsibility/pr_settings).
When you select patients, a **Bulk Actions** menu lets you **Download Patient Statement**.
### FAQ
Open the patient (via **Patient View** or their profile) and use **Pay Balance**. The **Miscellaneous Charge** action creates a new charge — it doesn't collect an existing balance.
Refunding may be restricted to Billing Managers and Administrators. Ask an administrator if you need access.
# PR Overpayment Refunds and Estimated vs. Remittance PR
Source: https://docs.athelas.com/insights_front_desk/patient_responsibility/pr_overpayment_refunds_and_estimated_vs_remittance_pr
How Insights reconciles up-front payments against finalized remittance PR, including overpayment credits.
When Insights receives a remittance, the patient responsibility (PR) it specifies is often different from what the patient paid at the time of service. This guide explains how payments and PR are reconciled.
## Part 1: In-Office
When a patient makes a payment in your office, two things are recorded on their profile:
* The patient's **payment** is recorded.
* Insights records **Estimated Patient Responsibility** based on the amount paid — a *placeholder* meant to be replaced by finalized PR once a remittance arrives.
Estimated PR is created in the exact amount and type of the payment to balance the account. For example, a \$20 copay records:
* `$20` Payment of type "Copay"
* `$20` Estimated PR of type "Copay"
This keeps the patient's balance unaffected by the payment, holding those funds until a remittance is received for the claim.
## Part 2: Post-Remittance
Once the payer sends a remittance, Insights updates the total PR:
* The PR for that date of service is updated to the amount in the remittance.
* The PR type changes from **Estimated PR** to **Post-Remittance PR**.
* The new PR is compared against what was paid:
* **Payment equals PR** — no further action.
* **Payment less than PR** — the difference is added to the patient's balance and included on their next statement.
* **Payment greater than PR** — the overpayment becomes a **credit** on the patient's account.
Overpayment credits are **locked to the appointment's date of service** by default and won't automatically apply to balances for other dates of service, but your staff (or the patient) can apply them manually.
## In Conclusion
Up-front collection will never perfectly match the payer's final decision. For the difference, Insights automatically takes the appropriate follow-up — adding a balance or issuing a credit — so your staff can focus on patients.
# PR Settings
Source: https://docs.athelas.com/insights_front_desk/patient_responsibility/pr_settings
Configure Patient Responsibility settings: card fees, receipts, text customization, pre-visit rules, and more.
### At a Glance
The **PR Settings** page holds the customizable settings that drive PR collection for your practice. Work with your Account Manager on the initial setup, then adjust as you go.
### Accessing PR Settings
There are several ways in. From the [Patient Responsibility](/insights_front_desk/patient_responsibility/patient_responsibility_page) page, open the **Actions** menu and choose **PR Settings**.
### General
* **Card Fees** — set the percentage charged to patients paying by card, or toggle **Use exact Stripe fee** to pass through Stripe's own per-transaction rate. Toggle **Auto-Save patient credit cards** on or off. See [Manage Credit Cards](/insights_front_desk/patient_responsibility/manage_credit_cards).
* **Reader Label** — relabel the Athelas card readers registered to your account.
* **Receipt + Patient Statement Settings (facility-specific)** — change how receipts and statements look per facility, including adding a facility logo. See [Patient Statements](/insights_front_desk/patient_statements/manage_patient_statements) and [Print a Patient Statement](/insights_front_desk/patient_statements/print_patient_statements).
* **Text Message Customization** — customize the payment text patients receive. Add dynamic fields (Patient Name, Current Balance, Most Recent Facility, etc.); the **Link to Pay** is required. See [Turn Off Patient Texts](/insights_front_desk/patient_statements/turn_off_patient_texts) and [Request Payment by Text or Email](/insights_front_desk/patient_responsibility/how_to_request_via_text_or_email).
* **Patient Statement Settings** — basic info shown on statements and a custom statement message (detailed statement config lives on the [Patient Statements](/insights_front_desk/patient_statements/manage_patient_statements) page).
* **High Balance Setting** — the amount at which balances are flagged as "high" (shown in red), plus optional follow-up alerts: **Insurance Alert** (last claim denied for invalid/expired insurance), **Credit Card Alert** (payment-plan/subscription charge failed), and **Contact Info Alert** (statement undeliverable).
* **Skip Collection** — manage the reasons staff can select when skipping a collection.
* **Custom Payment Types** — add, edit, or deactivate custom line-item payment types. See [Miscellaneous Line Item Charges](/insights_front_desk/patient_responsibility/how_to_set_up_miscellaneous_line_item_charges).
* **Partial Payments, Payment Modal, and Welcome Message** — allow/disallow partial payments (e.g., via text) and toggle the post-payment welcome message (this toggle syncs everywhere in Insights).
### Pre Visit
Set defaults for pre-visit payment collection: which suggestions to show (copay is required; deductible and coinsurance optional), the suggestion mode (highest PR only, or all relevant PR amounts), default charges by facility, tier 2/3 benefit handling, default Service Type Codes, and the default welcome-message behavior. See [How to Create Suggested PR Rules](/insights_front_desk/front_office_payments/how_to_create_suggested_pr_rules).
### Credits
Set how many days to wait after a claim is approved before overpayment credits (held in reserve in case of resubmission) are automatically released to cover outstanding balances.
### Out of Network Insurances
Map out-of-network insurances so Insights can run eligibility and provide PR suggestions for those patients.
### Other Tabs
Depending on your site and permissions, you may also see:
* **Suggested PR Rules** — see [How to Create Suggested PR Rules](/insights_front_desk/front_office_payments/how_to_create_suggested_pr_rules).
* **Service Charges** — CPT-based service items; see [Post Encounter CPT Based Service Charges](/insights_front_desk/front_office_payments/automatic_service_charges).
* **Self-Pay Fee Schedule** — see [Self-pay Fee Schedule](/insights_front_desk/front_office_payments/self_pay_fee_schedule).
* **Sliding Fee Schedule** — for FQHC sites.
### FAQ
In the **General** tab under **Card Fees**, toggle **Auto-Save patient credit cards** off.
A custom payment text must include the **Link to Pay** dynamic field. Other fields (patient name, balance, facility) are optional.
# PR Timeline
Source: https://docs.athelas.com/insights_front_desk/patient_responsibility/pr_timeline
Read the chronological PR timeline to understand exactly how a patient's balance was calculated.
### At a Glance
The **PR Timeline** chronologically displays every event related to patient responsibility and payments for a given date of service (DoS) — a snapshot of how PR evolved, from the appointment through claim submission to balance updates and final payment.
## Finding the Timeline
From the [Patient Responsibility](/insights_front_desk/patient_responsibility/patient_responsibility_page) page, open **Patient View** and choose a patient. On the **Charges** tab, select a date of service and click **View Details** (you can filter by date of service, provider, or PR status). Then open the **Timeline** tab.
Toggles let you show or hide **credit transactions** and other minor **hidden events** (some low-impact events are hidden to keep the timeline readable).
The PR timeline is also available on the claims side. On the **Claim Details** page, the activity log has **Claim timeline** and **PR timeline** tabs (and, for some accounts, a condensed "Micro Timeline"), so you can review the same PR history from the encounter.
## Reading a Card
The timeline is a series of **cards**, each an event in the PR journey. A card shows:
* **Date and time** the event occurred
* **Card type** — e.g., Payment, Remittance Received, Updated Balance
* **Amount** — the primary dollar figure (e.g., amount paid, or total PR due)
* **Balance** (upper right) — the running balance at that moment, plus the change since the previous card
* **Additional details** — an expandable section with more context; details vary by card type
## Example
A patient has a walk-in appointment and their eligibility returns Active. The front desk collects a \$230 payment at time of service, and a matching \$230 **Estimated** PR placeholder is added (so the balance zeroes out) until the payer responds. The claim is submitted, later resubmitted after a correction, and a remittance eventually returns a total PR of only \$101.39 — less than half of what was collected. The PR updates to the remittance amount (now **Post-Remittance PR**), leaving the patient with a surplus, and overnight an **Auto-Refund** turns the \$101.39 overpayment into a credit, bringing the balance to zero.
## Other Cards You May See
* **PR Cancellation** — when a claim that already had a remittance is resubmitted, its existing PR is cancelled while awaiting a new decision (payments become credits locked to the DoS).
* **Credits Applied (Automatic)** — available credits applied to new balances automatically.
* **Patient Statement Sent** — when a statement is delivered.
* **Insurance Updated** — when insurance changes apply to a claim (important for resubmissions).
* **Write-Offs** — when PR is written off.
Whenever you have a question about a patient's PR, the PR Timeline is your best resource.
### FAQ
Yes. Open the claim on the **Claim Details** page and use the **PR timeline** tab in the activity log — it shows the same PR history keyed to the encounter.
Low-impact events are hidden by default to keep the timeline readable. Use the toggles to show hidden events and credit transactions.
# Setting up a Payment Plan
Source: https://docs.athelas.com/insights_front_desk/patient_responsibility/setting_up_a_payment_plan
Create a patient payment plan with a start date, schedule, amount, and payment method in Insights.
#### Here’s How to Do It
**Prerequisites:** Confirm the patient and the card you want to use for the plan. Your role must also allow you to manage payment plans. If you do not see **Set Up Payment Plan**, ask an administrator to update your role.
From the [Patient Responsibility](https://insights.athelas.com/v2/patient-responsibility) page, click on the Actions menu and choose Set Up Payment Plan.
In the popup, search for the patient in question.
Fill in start date and frequency of payments, max amount per charge, and choose a credit card or add a new card.
For a monthly plan, you can choose the 29th, 30th, or 31st as the start date. In a shorter month, the payment falls on that month's final day and returns to your selected day in the next month that includes it.
You’ll also have the opportunity to use outstanding balance and/or to set a fixed amount per payment.
Click `Set Up Payment Plan`, and you’re done! You can now see a Payment Plan indicator on the patient’s listing, under their Current Balance.
### FAQ
The payment falls on the final day of that month. The plan returns to your selected day in the next month that includes it.
Yes. During setup, you can use the patient's outstanding balance or set a fixed amount per payment.
# How to Spread PR Statement Emails
Source: https://docs.athelas.com/insights_front_desk/patient_statements/how_to_spread_pr_statement_emails
Distribute statement emails and texts evenly across weekdays to avoid a flood of patient calls.
### At a Glance
When every patient with outstanding PR is contacted on the same day, your front desk can be buried in calls. Spreading statement communications evenly across the week keeps the volume manageable.
### How to Do It
On the [Patient Statements](/insights_front_desk/patient_statements/manage_patient_statements) page, open the **Electronic** tab's **Settings**. You can check **Use Recommended Settings**, or configure the controls yourself:
* **Auto Reminder Frequency** — how often a batch runs (e.g., every 7 or 14 days). We recommend contacting a patient no more than once every 14 days.
* **Contact X% of patients per batch** — the share of eligible patients contacted each batch.
* **Break batches into daily sends** — turn this **on** and select the weekdays (**Mon–Fri**) to spread the batch evenly across those days.
* **Sort By** — **Time Since Contacted Decreasing** (default; prioritizes patients contacted least recently) or **Balance Decreasing** (prioritizes the largest balances).
For example, a batch of 100 patients set to contact 50% across five weekdays sends about 10 patients per day.
Click **Preview** to check the result, then **Save Setting**.
### FAQ
Contacting \~50% of patients with outstanding PR, spread evenly across weekdays, no more than once every 14 days. Check **Use Recommended Settings** to apply this automatically.
A **Daily** frequency requires all weekdays to be enabled under **Break batches into daily sends**. Enable every weekday, or choose a different frequency.
# Manage Patient Statements
Source: https://docs.athelas.com/insights_front_desk/patient_statements/manage_patient_statements
Automate and track patient statement delivery — frequency, delivery methods, exclusions, batches, and metrics.
#### At a Glance
The [Patient Statements](https://insights.athelas.com/v2/pr-statements) page lets you automate statement delivery to fit your practice. From here you can:
* Set the **frequency** of statement delivery
* Set **minimum** and **maximum** balance thresholds for statements
* Choose **delivery methods** (text, email, or both)
* Send **paper statements** to patients opted out of digital delivery
* View **upcoming** and **historical** batches
* Track your overall PR **collection performance**
Set it up well and it runs on autopilot, collecting patient responsibility with little intervention.
**Best Practices**
* **Weekly** electronic sending is the most common setting and keeps balances from building up.
* **Text + email** delivery together is the most effective for collection.
* **Paper statements cost more than digital**, so send them no more than monthly, only to patients who ignore digital statements.
* PR is only generated after all payer charges and remits are balanced — don't send statements before PR is generated.
* Add your facility name and logo to statements in [PR Settings](/insights_front_desk/patient_responsibility/pr_settings) → **General**.
#### Where to See When a Patient Was Sent a Statement
* **PR Timeline** — on the [Claim Details](/insights_biller/claim_details/claim_details_page) page, open the encounter → **Activity Log** → **PR Timeline**. Sent statements appear with their channel (text, email, or mail).
* **Touchpoints** — on the patient's profile, the **Touchpoints** tab lists sent texts and emails (paper statements don't appear here).
#### Set Up Electronic Delivery
On the **Electronic** tab, open the **Settings** area (or check **Use Recommended Settings**) and configure:
* **Auto Reminder Frequency** (Never / Daily / 7 / 14 / 21 / 28 Days) — patients with a `$0.00` balance are never sent a statement
* **Statements Delivery** — Text and Email / Text Only / Email Only (Text + Email recommended)
* **Provider** and **Facilities** — required; omit any whose patients shouldn't receive statements
* Balance and age thresholds (**Min/Max Amount Due**, patient age range), **Min/Max Date of Service**, and **Sort By** (Balance Decreasing or Time Since Contacted Decreasing)
* **Exclusion Settings** (see below)
Click **Save Setting**. An **Upcoming Batch** section then appears.
You can opt an individual patient out of digital statements from their profile, and review the full opt-out list under **Exclusion Settings**.
#### Upcoming Batch
Once configured, the next planned batch shows summary metrics plus actions:
* **Send Now** — send the batch immediately (useful for the first batch)
* **Reschedule** — change the send date (e.g., off a weekend)
* **Download Upcoming Batch** — export the full list to review or keep
#### Batch History
Review recent batches, including delivered/undelivered texts and emails, total sent, and total amount paid (with Stripe fees / net received when enabled).
#### Metrics
The top of the page tracks overall performance: **Total Patient Collections**, **Total Outstanding PR**, **Patients With Outstanding Balance**, and **# Batches Sent**, plus last-batch detail.
#### Paper Statements
Switch to the **Paper** tab for direct mail (each paper statement carries a per-statement cost):
* **From a patient's profile** — click **Pay Balance**, choose **Request via Paper Statement**, and confirm (handy when a patient calls in).
* **Bulk send** — configure filters (patients with invalid emails/phones, how many digital statements a patient must ignore first, and how long to wait between paper statements), **Save Setting**, then **Send Now**. Paper batches are sent manually each time.
**Alternate address:** to mail to a different address, open the patient's profile, click **Edit**, and set the **Statement Mailing Address**.
#### Exclusion Settings
Exclude specific **patients**, or patients with specific **insurances**, **CPT codes**, or **line items**, from automated statements. Open **Exclusion Settings**, add the patients/criteria, and **Confirm**. To exclude a patient from both electronic and paper statements, add them to both exclusion lists.
### FAQ
Weekly electronic delivery via text + email is the most common and effective setup. Reserve paper statements for patients who don't respond digitally, no more than monthly.
Add them under **Exclusion Settings** (add to both the electronic and paper lists to exclude them entirely), or opt them out from their profile.
# Print Patient Statements
Source: https://docs.athelas.com/insights_front_desk/patient_statements/print_patient_statements
Download a patient's statement as a PDF to print and hand to them.
#### At a Glance
When a patient asks for their statement at the end of a visit, you can download a clean PDF to print and share.
#### How to Do It
1. Open the patient's profile.
2. Click **Download Patient Mail Statement** in the header (also labeled **Download Statements**).
3. Open the downloaded PDF, then print and share it.
The PDF includes several ways for the patient to pay, from a mobile-friendly QR code to mailing in a check.
### FAQ
Yes. The **Download Statements** drawer lets you select multiple patients (and optionally a date range) and download their mail statements together.
# Send Email Statements
Source: https://docs.athelas.com/insights_front_desk/patient_statements/send_email_statements
Send a single patient a one-off email statement from their profile.
#### At a Glance
Patients receive statements by text and email automatically, but sometimes you'll want to send a one-off email statement — for example, if a patient wants a fresh one at the top of their inbox.
#### How to Do It
1. Open the patient's profile and, on the **Charges** tab, click **Pay Balance**. (Disabled if the patient has no balance.)
2. Choose **Send Payment Link** → **Send via Email**.
3. Click **Confirm**. The email statement is sent shortly.
The email gives the patient several ways to pay, from a mobile-friendly link to mailing in a check.
### FAQ
Yes. Click **Download Patient Mail Statement** (or **Download Statements**) at the top of the patient's profile to preview exactly what the patient receives.
# Send One-off Paper Statements
Source: https://docs.athelas.com/insights_front_desk/patient_statements/send_one_off_paper_statements
Mail a single paper statement to a patient and update their statement mailing address.
#### At a Glance
Patients receive statements by text and email by default, but some prefer paper. Here's how to mail a one-off paper statement.
Mailing a paper statement carries a per-statement cost to your practice. Your Athelas team can confirm your current rate.
#### How to Do It
1. Open the patient's profile and, on the **Charges** tab, click **Pay Balance**. (Disabled if the patient has no balance.)
2. Choose **Request via Paper Statement**.
3. Click **Confirm**. The statement is generated and mailed within 24 hours, and typically arrives in 3–5 business days.
#### Alternate Address
You can set a statement mailing address in Insights without changing the patient's EHR record. Open the patient's profile, click **Edit**, and fill in the **Statement Mailing Address** (basic identifying info like name or home address is still edited in your EHR).
### FAQ
Yes. Click **Download Patient Mail Statement** at the top of the patient's profile to preview the mailed statement.
Paper costs more per statement than text or email, so reserve it for patients who don't respond to digital statements.
# Send Patient Statements via Email/Text
Source: https://docs.athelas.com/insights_front_desk/patient_statements/send_patient_statements_via_emailtext
What patients see and do when they pay from an emailed or texted statement.
#### At a Glance
Most practices send recurring statements automatically via text and email by configuring their [Patient Statements](/insights_front_desk/patient_statements/manage_patient_statements) settings. This guide describes what the patient experiences when they receive one.
#### Paying from an Email
The patient receives an email from your practice with their statement attached and a **Pay Online** option. Choosing it opens a pre-filled login page where they confirm their date of birth, view a breakdown of the bill, and pay by card (or a saved card on file). They receive an email receipt once payment goes through.
#### Paying from a Text
The patient receives a payment-request text. Tapping the link opens a form with their name pre-filled (they enter their date of birth), shows the amount due with a **View Breakdown** option, and lets them pay by card (or a saved card). They receive a text receipt once payment succeeds.
### FAQ
They confirm their identity (typically their date of birth) on a pre-filled page before viewing the balance and paying. No separate portal account is required to pay from the link.
# Turn off Patient Texts
Source: https://docs.athelas.com/insights_front_desk/patient_statements/turn_off_patient_texts
Disable automatic billing text messages for an individual patient.
#### At a Glance
Patients receive billing communications by text and email by default. To stop **texts** for a specific patient, disable them on the patient's profile.
#### How to Do It
1. [Open the patient's profile](/insights_front_desk/patient_profiles/how_to_find_and_edit_a_patients_profile).
2. Find the **Auto Send Text Message** status (Active/Inactive) near the patient's information.
3. Open the **Edit** menu and choose **Disable Auto Send Text Message**.
The patient will no longer receive automatic text communications unless you re-enable them.
### FAQ
No. If you have an email on file and your practice has email statements enabled, the patient will still receive statements by email. Disabling texts only affects text communications.
# How to Handle Duplicate Remittances
Source: https://docs.athelas.com/insights_front_desk/posting/how_to_handle_duplicate_remittances
**Situation 1: The currently posted remittance is accurate (or they’re exact duplicates)**
* Visit the [Posting Tool page](https://insights.athelas.com/posting-tool) and find the encounter of interest. Click its arrow icon to see procedures listed by DoS.
* Find the procedure remit you want to review, then click `Post/Adjust`.
* The remittance for manual review will be in the **Unposted Remittances** list.
* If you hover your cursor over the information icon, a tooltip will explain why this remit is unposted. In this example, we can see that the remit will create a negative balance (indicative of overpayment) if it is posted.
* Looking at the **Posted Payments** list, it is clear that a duplicate remittance was already posted for this DoS.
* In this case, it is safe to archive the unposted remittance by clicking the orange box icon in the Actions column.
* **Situation 2: The unposted remittance is accurate**
* Visit the [Posting Tool page](https://insights.athelas.com/posting-tool) and find the encounter of interest. Click its arrow icon to see procedures listed by DoS.
* Find the procedure remit you want to review, then click `Post/Adjust`.
* The remittance for manual review will be in the **Unposted Remittances** list.
* If you hover your cursor over the information icon, a tooltip will explain why this remit is unposted. In this example, we can see that the remit will create a negative balance (indicative of overpayment) if it is posted.
* Looking at the **Posted Payments** list, it is clear that a remittance was already posted for this DoS.
* Now, rather than archiving the unposted remittance as shown in the previous situation, we’ll negate the first and post the second.
Click the three dots corresponding to the first remittance under the Actions column. Choose `Negate`.
* Write a note explaining the negation, then click `Confirm`.
***The Posting Tool page automatically shows you previews** of the effects of all changes — negations, posts, edits — that you wish to make. No changes will take effect until you click *`*Confirm Posting*`* in the bottom right corner of the page.*
* Your negation will be in the Posted Payments list, highlighted red, indicating that it is currently an unconfirmed preview. You can see how confirming this negation will affect the encounter’s financial information, written in blue text in the Procedure Summary.
* You can always click the **Undo arrow** in the Actions column to cancel a previewed change.
**We’ll preview both the negation AND the new posting together for this walkthrough.**
* Click the green checkmark ✅ next to the unposted remittance. This will bump it up into the Posted Payments list in preview mode, highlighted blue, underneath the negation preview you just made.
* Changes to the balance will update in the Procedure Summary in blue text.
* In this case, as they are duplicate remittances, negating one and posting the other yields no change, but we’ll do it anyway to show the process.
* Once everything looks as expected, click `Confirm Posting`.
**If you need to make further adjustments** to balance the encounter, the [How to Use the Posting Tool guide](/insights_front_desk/posting/how_to_use_the_posting_tool_page) has information on making a custom adjustment. It can be found near the bottom of the Posting/Adjustments Tool section.
Done! Time for coffee.
# How to Handle Partial Denials
Source: https://docs.athelas.com/insights_front_desk/posting/how_to_handle_partial_denials
First, here are some useful definitions of terms.
* **Allowed Amount**
* `Allowed Amount` = `Insurance Paid` + `Copay` + `Deductible` + `Coinsurance`
* **Denial**
* Claim has \$0 allowed amount as a whole
* **Partial Denial**
* At least one procedure has an allowed amount greater than \$0, AND
* One or more of the procedures is denied entirely
* **Unresolved Balance**
* Every procedure has an allowed amount greater than \$0, BUT
* Despite those allowed amounts, some portion of the charged amount has been denied on at least one procedure
* **Example**: An encounter has a procedure with \$50 paid, \$25 contractual adjustment, and \$5 denied CARC
## Walkthrough: Partial Denials
When dealing with partial denials, you have two options:
* Modify and resubmit the claim
* Adjust or write off the remainder
Let’s look at an example case.
To find partial denials, filter the encounters on your [Claim Details page](https://insights.athelas.com/v3/claim_level_view) by ‘Encounter Stage Reason,’ then select ‘Partial Denials.’
Upon clicking into one of the partially denied encounters, we can see which procedure was denied based on a few clues:
* It has an outstanding balance, written in red
* Its ‘PR Status’ is listed as ‘Provisional’ (hover your cursor over this status to see a tooltip explanation)
* The encounter’s overall ‘Status’ is listed as ‘Not Balanced’
Click the arrow next to the procedure to see further details.
In this case, the red highlighted explanation indicates that the procedure code is inconsistent with the modifier used. If we were to resubmit the claim, the modifier would need to be modified.
**See these guides for further instruction on resubmission:**
* 🔂 [Getting Started with the Claims Page](/insights_biller/claim_details/claim_details_page) — modify and resubmit a single claim
* **📨** [How to Resubmit Claims in Bulk](/insights_biller/claim_details/how_to_resubmit_claims_in_bulk)
**Or, to go in the other direction:**
* 📝 [How to Write Off a Balance](/insights_front_desk/posting/how_to_write_off_a_balance)
## Walkthrough: Unresolved Balances
Unresolved balances appear on encounters when payers send partial or unclear remittances. These cases require action on your part.
When dealing with unresolved balances, you have two options:
* Modify and resubmit the claim
* Adjust or write off the remainder
To find unresolved balances, filter the encounters on your [Claim Details page](https://insights.athelas.com/v3/claim_level_view) by ‘Encounter Stage Reason,’ then select ‘Unresolved Balances.’
Upon clicking into one of the encounters with an unresolved balance, we can locate the procedures responsible based on a few clues:
* They have an outstanding balance, written in red
* Their ‘PR Status’ is listed as ‘Provisional’ (hover your cursor over this status to see a tooltip explanation)
* The encounter’s overall ‘Status’ is listed as ‘Not Balanced’
Click the arrow next to a procedure to see further details.
In this example, we can see the PI-59 adjustment of \$6.84 was made based on multiple or concurrent procedure rules (like surgery or diagnostic imaging with concurrent anesthesia).
Now, you get to decide whether to modify and resubmit this claim or write it off!
*If you find yourself performing the same action repeatedly to resolve many encounters, it could be worth consulting with your account manager about setting up a rule to handle those cases.*
*This may involve setting up Target Allowed Amounts, so that the engine can close encounters with procedures that have been paid at or above a certain threshold of your choosing.*
**See these guides for further instruction on resubmission:**
* 🔂 [Getting Started with the Claims Page](/insights_biller/claim_details/claim_details_page) — modify and resubmit a single claim
* **📨** [How to Resubmit Claims in Bulk](/insights_biller/claim_details/how_to_resubmit_claims_in_bulk)
**Or, to go in the other direction:**
* 📝 [How to Write Off a Balance](/insights_front_desk/posting/how_to_write_off_a_balance)
# How to Make a Custom Adjustment
Source: https://docs.athelas.com/insights_front_desk/posting/how_to_post_a_remittance_manually
#### Custom Adjustments (aka. Manual Adjustments)
A Custom Adjustment allows you to create a tailored adjustment that isn’t captured by standard posting actions like write-offs, negations, or push-to-PR. Use this when you need to manually adjust amounts for a procedure or encounter to accurately reflect your financial records.
Custom adjustments are flexible: you can specify amounts for any column, including charges, payments, denied amounts, patient responsibility, or other adjustments.
**How it works:**
* In the **Payment Items Table**, click the **+ Add** button located beside the sort button.
* Select the **claim** that should be associated with the new custom adjustment and click **Confirm**. A **purple preview row** with empty values will appear in the ledger.
* Click on the cells in the preview row to edit and manually specify amounts in any column to reflect the desired correction. Press “Enter” or click outside of the cell to save the changes. You can adjust charges, payments, denied amounts, PR, other adjustments, etc.
* Review the preview. Crossed-out values with updated values beside them will show how the custom adjustment affects encounter-level and (if applicable) procedure-level balances. Click the **undo** button in the right-most column to remove the custom adjustment if needed.
* Once the amounts are correct, click **Confirm Posting** to permanently apply the custom adjustment to the ledger.
# How to Use the Posting Tool Page
Source: https://docs.athelas.com/insights_front_desk/posting/how_to_use_the_posting_tool_page
#### Overview
When it comes to remittances, the vast majority of posting can be handled by Insights' automated posting systems. However, payers occasionally send malformed, duplicate, or conflicting data in their remittances. Insights’ systems will flag these cases for manual review, either by our operations team or your practice’s staff. The Posting Tool is designed to give you more flexibility and control over remittances that are either marked for manual review or that you want to adjust manually.
Here's a short demo:
#### How It Helps?
The Posting Tool is designed to **simplify and streamline manual posting**, giving your team the tools to handle exceptions and adjustments quickly, accurately, and with full visibility. Here’s how it helps:
* **Reduces Manual Errors:** Preview Mode lets you see the impact of every action before it’s posted, helping prevent mistakes.
* **Centralizes Financial Activity:** Procedure-level and claim-level payments are displayed in one place, providing a complete view of an encounter’s financials.
* **Supports Complex Adjustments:** Actions like Negations, Write Offs, Write Off PR, Push to PR, and Custom Adjustments let you manage exceptions efficiently.
* **Audit-Friendly:** Every action is tracked separately, preserving a clear history of postings for internal reviews and compliance.
* **Improves Productivity:** Encounter and payer-level rollups highlight totals and discrepancies, so your team can focus on the items that need attention most.
By providing visibility, control, and safety checks, the Posting Tool helps your team post remittances confidently while maintaining accurate financial records.
#### Key Concepts
| **Term** | **Description** |
| ------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Encounter / Claim** | A single patient visit or claim that may include multiple procedures. The Posting Tool supports both procedure-level and encounter-level posting. |
| **Procedure** | A specific service provided during an encounter (e.g., a lab test or office visit). Each procedure has its own financial details. |
| **Payment Item** | A record of a posted payment, adjustment, or other financial activity applied to a procedure or encounter. |
| **Unposted Remittance** | A payment or adjustment received from a payer but not yet applied to the ledger. These are often posted automatically by our system, but sometimes require manual review. |
| **Patient Responsibility (PR)** | The portion of a charge the patient is responsible for, including copays, coinsurance, or deductibles. |
| **Denied Amount** | A portion of a charge that the payer will not cover. Denied amounts can be written off or pushed to patient responsibility. |
| **Write Off** | A ledger action that removes a balance that is no longer collectible from the payer or patient. |
| **Negation** | A ledger action that reverses a previously posted payment or adjustment. |
| **Push to PR** | A ledger action that reclassifies denied payer amounts to patient responsibility. |
| **Custom Adjustment** | A manually entered adjustment for any financial field that is not captured by standard actions. |
| **Preview Mode** | A temporary, reversible view that shows the impact of any action on balances before it is permanently posted. |
| **CARC / RARC** | Claim Adjustment Reason Codes (CARC) and Remittance Advice Remark Codes (RARC) explain why a payer partially or fully denied a charge. |
| **Encounter Rollup / Summary** | Summary totals of all procedures for a single encounter, showing charges, payments, adjustments, PR, and balances. |
| **Payer Rollup / Summary** | Summary totals broken down by payer for a single encounter, showing progress before posting. |
#### Navigation & Summaries
###### Navigating To Posting Tool
There are three ways to open an encounter in the Posting Tool:
**From a Claim**
* Open the desired claim in **claim details**.
* Open the **Actions** menu.
* Select **Posting Tool**.
**From Search (Command + K / Search Icon)**
* Click the **search icon** in the header (or press **Command + k**).
* Search for the **Encounter ID**.
* The **Posting Tool** option for that encounter will appear — click it to navigate.
**From the Posting Tool Page**
* Open the **Posting Tool** page (/posting-tool). You can also get here via **Sidebar → Utilities → Posting Tool**.
* Use the filters to find the encounter you need.
* Click the row in the table to open the Posting Tool for that encounter.
#### Understanding Encounter & Payer Summaries
At the top of the Posting Tool, you’ll see two types of summaries (rollups):
* **Encounter Rollup** – Totals for the entire encounter across all procedures and payers. This gives you a complete overall overview of charges, payments, adjustments, PR, and balance.
* **Payer Rollup** – A breakdown by payer (Primary, Secondary, Patient etc.), showing progress with each payer before posting.
Both update live as you preview posting actions (e.g. negations, write offs, etc.). More on previews later.
*Note: A pulsing animation indicates that the previews are loading*
## Data Workspaces
Understanding the tables and work areas
###### Understanding the Procedures Table
The Procedures Table is the central workspace for reviewing and acting on all procedures associated with an encounter. Each row represents a single procedure, giving you insight into its charges, payments, adjustments, and balances. This table is where most posting actions will be performed.
Key features of the Procedures Table:
* **Procedure Details:** Each procedure row displays identifying data such as CPT codes, modifiers, and service dates.
* **Financial Metrics:** Each procedure row shows important financial fields calculated from the payment ledger for that procedure (more on this later), including:
* **Charges** – The billed amount for the procedure.
* **Ins. Paid** – Total amount paid by insurance.
* **Adjustments** – Contractual adjustments, write-offs, or other reductions.
* **PR Amount** – Patient responsibility as determined by insurance.
* **PR Paid** – Amount already collected from the patient.
* **Balance** – Remaining amount owed, calculated as Charges – (Ins. Paid + Adjustments + PR Paid).
* **Preview Mode:** Any posting actions you take will appear as a live preview to let you see the impact on the encounter before confirming. (more on this later)
###### Expanding a Procedure Row
Clicking on a procedure row opens a subsection containing two important tables for that procedure:
* **Payment Items Table** – Shows all payments and adjustments that have already been applied to the procedure.
* **Unposted Remittances Table** – Shows remittances received from payers that have not yet been posted.
###### Procedure-Level Payment Items Table **(Procedure Payment Ledger)**
The **Payment Items Table** provides full visibility into all financial activity that has been recorded for a specific procedure.
**Key Features:**
* **Rows:** Each row represents a posted payment or adjustment.
* **Columns include:**
* **Type** – Identifies the ledger item (remittance, adjustment, patient payment, etc.). Preview rows will display their action type (Negation, Write Off, Write Off PR, Push to PR).
* **Paid Amount** – Amount paid by the payer.
* **Patient Responsibility Breakdown** – Copay, coinsurance, deductible, and other PR.
* **Adjustments** – Contractual, other adjustments, or denied amounts.
* **Notes** – Any supporting context or comments.
* **Other Identifiers** – Additional metadata for auditing and tracking.
* **Available Actions (more on this later):**
* **Negate** – Reverse a previously posted payment or adjustment.
* **Write Off** – Apply a write-off to reduce the procedure balance.
* **Write Off PR** – Apply a write-off specifically to patient responsibility.
* **Push to PR** – Move denied or uncollectible payer amounts to the patient responsibility bucket.
###### Procedure-Level Unposted Remittances Table
The Unposted Remittances Table shows all remittances for a procedure that have been received but not yet posted. These items typically require manual review before they can be posted.
* Purpose: Surfaces remittances that could not be auto-posted.
* Tip: Hover over the Posting Status column to see details on why a remittance was not posted automatically.
**Key Features:**
* **Rows:** Each row represents a distinct unposted remittance.
* **Columns include:** **Charges**, **Paid**, Patient Responsibility Breakdown, Adjustments.
* **Available Actions:**
* **Post Remittance (Add to preview)** – Adds a preview item onto the procedure’s payment ledger.
* **Archive/Unarchive** – Classify remittances that are duplicates or incorrect without posting them.
#### Understanding Claim Level Payments
Not all payments and adjustments apply to a single procedure — some are made at the **encounter (claim) level**. The Claim-Level Payments section provides visibility into these items so you can review and manage them alongside procedure-level activity.
💡**Note:** This section will only display if the encounter has claim level payment items or remittances.
This section appears directly below the Procedures Table and mirrors its structure. It shows 2 familiar views:
* **Payment Items Table** – A ledger of all posted payments and adjustments made at the encounter level. This includes insurance payments, adjustments, and other ledger activity that affects the encounter as a whole.
* **Unposted Remittances Table** – A list of remittances received at the encounter level that have not yet been applied. These often require manual review before posting.
Just like with procedure-level payments, you can preview certain actions here.
By separating encounter-level activity into its own workspace, the Posting Tool ensures you have a complete and accurate view of both **procedure-level** and **claim-level** financials for every encounter.
#### Claim-Level Payment Items Table (Claim Payment Ledger)
The **Claim-Level Payment Items Table** provides a comprehensive ledger of all financial activity recorded at the encounter (claim) level, rather than tied to a specific procedure. This allows you to track payments, adjustments, and other actions that affect the claim as a whole.
**Key Features:**
* **Rows:** Each row represents a posted payment or adjustment applied to the encounter.
* **Columns include:**
* **Type** – Identifies the ledger item (insurance payment, adjustment, patient payment, etc.). Preview rows display their action type (currently only Negation is supported).
* **Paid Amount** – Total amount paid at the claim level.
* **Patient Responsibility Breakdown** – Copay, coinsurance, deductible, and other PR codes, if applicable.
* **Adjustments** – Contractual, other adjustments, or denied amounts applied at the claim level.
* **Notes** – Additional context or explanations for the payment or adjustment.
* **Other Identifiers** – Metadata to support auditing and tracking.
* **Available Actions:**
* **Negate** – Reverse a previously posted payment or adjustment at the claim level.
Unlike procedure-level payments, claim-level items are **standalone** and do not automatically distribute across procedures. They exist as their own workspace, providing a holistic view of all encounter-level financial activity.
#### Claim-Level Unposted Remittances Table
The **Claim-Level Unposted Remittances Table** lists all remittances that have been received at the encounter (claim) level but not yet applied. These remittances are not tied to a single procedure and often require manual review before they can be posted.
**Key Features:**
* **Rows:** Each row represents a distinct unposted remittance.
* **Columns include:** **Charges**, **Paid**, Patient Responsibility Breakdown, Adjustments.
* **Available Actions:**
* **Post Remittance (Add to preview)** – Adds a preview item onto the claim payment ledger.
* **Archive/Unarchive** – Classify remittances that are duplicates or incorrect without posting them.
By surfacing encounter-level remittances in their own table, the Posting Tool ensures that claim-level payments are not overlooked and can be reconciled consistently alongside procedure-level items.
#### Actions & Preview Mode
What you can do and how
###### Actions Overview
The Posting Tool provides a set of **actions** that let you manage posted payments, adjustments, and unposted remittances with precision. Actions are the main way to **correct, reclassify, or apply financial activity** at both the procedure level and the encounter (claim) level.
Each action is designed to be **transparent and reversible** through Preview Mode, giving you full visibility into how changes will affect the ledger before committing them.
###### Key Principles
* **Actions apply to specific items** – Each row in the Payment Items Table or Unposted Remittances Table represents a single payment, adjustment, or remittance. Actions are taken on a row-by-row basis.
* **Preview first** – All actions generate a preview row so you can review changes before posting. This ensures that mistakes can be corrected early and balances remain accurate.
* **Audit-friendly** – Every action you take is tracked separately in the ledger, preserving a clear history of all adjustments and postings.
* **Multiple levels supported** – Actions can be applied to both **procedure-level items** and **claim-level items**, depending on the financial activity being managed.
In the sections that follow, you’ll see detailed instructions for each type of action: **Posting Remittances, Archiving/Unarchiving, Negations, Write Offs, Write Off PR, Push to PR, and Custom Adjustments**. Each section explains **when to use the action, how to apply it, and what to expect in Preview Mode**.
**Action Cheat Sheet**
| **Action** | **Color in Preview** | **Applies To** | **Purpose** |
| ----------------- | -------------------- | ----------------- | ------------------------------ |
| Negate | Red | Procedure / Claim | Reverse a posted item |
| Write Off | Yellow | Payer | Remove uncollectible balance |
| Write Off PR | Yellow | Patient | Remove patient balance |
| Push to PR | Green | Payer | Move denied balance to patient |
| Custom Adjustment | Purple | Procedure / Claim | Manual adjustment of any field |
#### Preview Mode
Preview Mode is a core feature of the Posting Tool that lets you **see the impact of posting actions before they are permanently applied**. Whenever you take an action—such as Posting a remittance, Negation, Write Off, Push to PR, or Custom Adjustment—the tool generates a **preview row** in the Payment Items Table.
###### Why Preview Mode Exists
Preview Mode gives you **flexibility and control** over posting by allowing you to:
* **Review changes before committing** – You can see exactly how actions affect charges, payments, adjustments, patient responsibility, and balances.
* **Make multiple adjustments safely** – Apply several posting actions and confirm them all at once.
* **Catch mistakes early** – Easily undo actions in the preview before they are posted, avoiding accidental ledger changes.
* **Understand impact at both levels** – Preview rows show how changes affect **procedure-level** and **encounter-level** totals simultaneously.
###### How Preview Mode Works
* Perform a posting action (Post Remittance, Negation, Write Off, Push to PR, Custom Adjustment).
* A **preview row** appears in the Payment Items Table.
* Encounter, payer, and procedure summaries will use **crossed-out values** alongside updated values to clearly show changes.
* You can **click directly on the Value columns or Note column** in the preview row to make edits.
* If needed, click the **undo button** in the right-most column to remove the preview row.
* Once you’re satisfied, click **Post** (or Confirm Posting for custom adjustments) to permanently apply the changes to the ledger.
Preview Mode is designed to make posting **transparent, reversible, and easy to review**, so your team can confidently manage both procedure-level and claim-level financial activity.
#### Unposted Remittances Actions
The Unposted Remittances Tables — whether at the **procedure level** or **claim level** — allow you to manage remittances that have not yet been applied. There are two primary actions you can take on these items: **Archiving/Unarchiving** and **Posting**.
###### Archiving/Unarchiving
Archiving lets you set aside remittances without posting them. This is useful when:
* The remittance is a **duplicate**.
* The remittance is **incorrect or irrelevant** for the current encounter.
* You want to **declutter your workspace** before posting.
**How it works:**
* Locate the remittance in the **Unposted Remittances Table**.
* Click the **Archive** button in the Actions column (right-most column of the table).
* The remittance will be moved to the bottom of the table, with an “archived” label and will be grayed out.
* To restore an archived remittance, click the **Unarchive** button in the actions column
**Notes:**
* Archiving a remittance will also mark its status as finalized
### Posting
Posting a remittance moves it into **preview mode** so that it can be applied to the procedure or claim payment ledger. This lets you review its impact on balances before confirming.
**How it works:**
* Locate the unposted remittance you want to post.
* Click **Post Remittance button**.
* The remittance will appear in the **Payment Items Table** as a **blue preview row**.
* Review the preview to see how the remittance affects the balance, PR, and adjustments. It will show crossed-out values alongside updated values, so you can clearly see how the posted remittance impacts encounter-level and (if applicable) procedure-level amounts. Click the **undo** button (in the right-most column) to remove this preview remittance.
* To permanently add this remittance to the ledger, click **Post**.
**Notes:**
* If a remittance is applied incorrectly, it can be **negated** after posting.
* Hovering over the **Posting Status** column can provide information about exceptions or insights on why the remittance wasn't auto posted if it's in ‘Manual Review’.
#### Payment Item Actions
The **Payment Items Tables** — at both the **procedure level** and **claim level** — allow you to manage posted payments and adjustments. The Posting Tool provides several actions to correct or reallocate amounts, depending on the situation: **Negations, Write Offs, Write Off PR, and Push to PR**.
###### Negate
Negation reverses a previously posted payment or adjustment. Use this when a payment or adjustment was applied incorrectly or needs to be undone.
**How it works:**
* Locate the payment or adjustment in the **Payment Items Table**.
* Open the **Actions** menu (three-dot menu in the right-most column) and select **Negate**.
* Enter a reason for the negation, then click **Negate**.
* A **red** **preview row** will appear showing the negation and its impact on balances.
* Review the preview. It will show crossed-out values alongside updated values, so you can clearly see how the negation impacts encounter-level and (if applicable) procedure-level amounts. Click the undo button (in the right-most column) to remove this preview negation.
* To permanently add this negation to the ledger, click **Post**.
**Notes:**
* Negations can be applied to **insurance payments** and **adjustments,** they cannot be applied to **patient payments** or **already negated payment items**.
* After negation, the original entry remains in the table for auditing purposes. However, it cannot be negated again.
* In the **preview row**, you can click directly on the **Value columns** or the **Note column** to edit amounts or text before posting.
###### Write Off (Procedure Only Action)
**⚠️ Currently, Write Offs can only be applied to procedure-level Payment Items.**
A **Write Off** removes a balance that should no longer be pursued or collected. This is often used when a payer indicates that a charge is not collectible, or when your organization decides to absorb the cost.
A Write Off is a net-zero operation: it reclassifies an amount by moving it out of the Denied column and into the Other Adjustments column. This reduces the outstanding balance on the encounter by the written-off amount.
**How it works:**
* Locate the denied balance you want to write off in the **Payment Items Table**.
* Open the **Actions** menu (three-dot menu in the right-most column) and select **Write Off**.
* Enter a reason for the write off **and specify the amount to write off for each denied CARC**. Then click **Write Off**.
* A **yellow** **preview row** will appear showing the write off and its impact on balances.
* Review the preview. Crossed-out values with updated values beside them will show exactly how the write off affects encounter-level and (if applicable) procedure-level amounts. Click the **undo** button (in the right-most column) to remove this preview write off.
* To permanently apply the write off to the ledger, click **Post**.
**Notes:**
* Write offs can only be applied to remittances with **denied** **amounts**.
* Like negations, the original amounts remain visible in the ledger for auditing, with the write off applied as a separate line item.
* In the **preview row**, you can click directly on the **Value columns** or the **Note column** to edit amounts or text before posting.
###### Write Off PR (Procedure Only Action)
**⚠️ Currently, Write Off PR can only be applied to procedure-level Payment Items.**
A **Patient Responsibility Write Off** removes a balance that was assigned to the patient but should no longer be collected. This is typically used when your organization decides not to bill the patient for a portion of their responsibility (copay, deductible, or coinsurance).
Like payer write offs, this is a **net-zero operation**: the amount is moved out of the corresponding **Patient Responsibility** column and into the **Other Adjustments** column. This reduces the **outstanding patient balance** on the encounter by the written-off amount.
**How it works:**
* Locate the remittance with a patient responsibility balance (copay, deductible, or coinsurance) you want to write off in the **Payment Items Table**.
* Open the **Actions** menu (three-dot menu in the right-most column) and select **Write Off PR**.
* Enter a reason for the write off **and specify the amount to write off for each PR CARC**. Then click **Write Off PR.**
* A **yellow preview row** will appear showing the write off and its impact on balances.
* Review the preview. Crossed-out values with updated values beside them will show how the write off affects encounter-level and (if applicable) procedure-level amounts. Click the **undo** button (in the right-most column) to remove this preview.
* To permanently apply the write off to the ledger, click **Post**.
**Notes:**
* Write Off PR can only be applied to **patient responsibility balances** like **coinsurance, deductible, or copay** (not to payments).
* The original amounts remain visible in the ledger for auditing, with the write off recorded as a separate line item.
* In the **preview row**, you can click directly on the **Value columns** or the **Note column** to edit amounts or text before posting.
###### Push To PR (Procedure Only Action)
**⚠️ Currently, Push to PR can only be applied to procedure-level Payment Items.**
A Push to PR reclassifies a denied balance so that it is collected from the patient instead of the payer. This is typically used when a payer denies and marks a service as the patient’s responsibility.
Like write offs, this is a **net-zero operation**: the amount is moved out of the **denied** column and into the **Other PR** column. This reduces the **payer balance** and increases the **patient balance** on the encounter by the same amount.
**How it works:**
* Locate the denied balance you want to push to patient responsibility in the **Payment Items Table**.
* Open the **Actions** menu (three-dot menu in the right-most column) and select **Push to PR**.
* Enter a reason for the push and specify the amount to reclassify for each **Denied CARC**. Then click **Push to PR.**
* A **green preview row** will appear showing the reclassified balance and its impact on payer and patient balances.
* Review the preview. Crossed-out values with updated values beside them will show **exactly how** the push affects encounter-level and (if applicable) procedure-level amounts. Click the **undo** button (in the right-most column) to remove this preview.
* To permanently apply the push to the ledger, click **Post**.
**Notes:**
* Push to PR can only be applied to remittances with denied amounts.
* The original amounts remain visible in the ledger for auditing, with the reclassification recorded as a separate line item.
* In the **preview row**, you can click directly on the **Value columns** or the **Note column** to edit amounts or text before posting.
###### Custom Adjustments (aka. Manual Adjustments)
A Custom Adjustment allows you to create a tailored adjustment that isn’t captured by standard posting actions like write-offs, negations, or push-to-PR. Use this when you need to manually adjust amounts for a procedure or encounter to accurately reflect your financial records.
Custom adjustments are flexible: you can specify amounts for any column, including charges, payments, denied amounts, patient responsibility, or other adjustments.
**How it works:**
* In the **Payment Items Table**, click the **+ Add** button located beside the sort button.
* Select the **claim** that should be associated with the new custom adjustment and click **Confirm**. A **purple preview row** with empty values will appear in the ledger.
* Click on the cells in the preview row to edit and manually specify amounts in any column to reflect the desired correction. Press “Enter” or click outside of the cell to save the changes. You can adjust charges, payments, denied amounts, PR, other adjustments, etc.
* Review the preview. Crossed-out values with updated values beside them will show how the custom adjustment affects encounter-level and (if applicable) procedure-level balances. Click the **undo** button in the right-most column to remove the custom adjustment if needed.
* Once the amounts are correct, click **Confirm Posting** to permanently apply the custom adjustment to the ledger.
**Notes:**
* Only make a custom adjustment if **no standard adjustments meet your needs.** Use at your own risk.
* **Charges** and **Billed** columns can only be edited by **super users**. Attempting to edit these columns will display a warning, as these fields generally should not be modified.
* Custom adjustments let you specify adjustments to a**ny financial field** in the Payment Items Table.
* After posting, the adjustment is recorded as a separate line item for auditing purposes.
# How to Write Off PR
Source: https://docs.athelas.com/insights_front_desk/posting/how_to_write_off_a_balance
### Write Off PR (Procedure Only Action)
**⚠️ Currently, Write Off PR can only be applied to procedure-level Payment Items.**
A **Patient Responsibility Write Off** removes a balance that was assigned to the patient but should no longer be collected. This is typically used when your organization decides not to bill the patient for a portion of their responsibility (copay, deductible, or coinsurance).
Like payer write offs, this is a **net-zero operation**: the amount is moved out of the corresponding **Patient Responsibility** column and into the **Other Adjustments** column. This reduces the **outstanding patient balance** on the encounter by the written-off amount.
**How it works:**
* Locate the remittance with a patient responsibility balance (copay, deductible, or coinsurance) you want to write off in the **Payment Items Table**.
* Open the **Actions** menu (three-dot menu in the right-most column) and select **Write Off PR**.
* Enter a reason for the write off **and specify the amount to write off for each PR CARC**. Then click **Write Off PR.**
* A **yellow preview row** will appear showing the write off and its impact on balances.
* Review the preview. Crossed-out values with updated values beside them will show how the write off affects encounter-level and (if applicable) procedure-level amounts. Click the **undo** button (in the right-most column) to remove this preview.
* To permanently apply the write off to the ledger, click **Post**.
**Notes:**
* Write Off PR can only be applied to **patient responsibility balances** like **coinsurance, deductible, or copay** (not to payments).
* The original amounts remain visible in the ledger for auditing, with the write off recorded as a separate line item.
* In the **preview row**, you can click directly on the **Value columns** or the **Note column** to edit amounts or text before posting.
# Posting Rules
Source: https://docs.athelas.com/insights_front_desk/posting/posting_rules
### At a Glance
When a payer reports an adjustment on a remittance, something has to decide what happens to that balance: write it off, hold it for someone to look at, or move it to the patient. **Posting rules** are that decision, made once per scenario instead of per claim.
Athelas configures your rules with you before go-live, starting from a recommended set and adjusting where your practice works differently. This page explains what the rules act on, so the configuration conversation is a review rather than an introduction.
For the posting screen itself — reading a remittance, posting a payment, writing off a balance — see [How to Use the Posting Tool Page](/insights_front_desk/posting/how_to_use_the_posting_tool_page).
## What a CARC Tells You
A **CARC (Claim Adjustment Reason Code)** explains why a payer paid something other than what you billed. Its prefix is the part that matters for posting, because the prefix decides who can be asked for the money.
| **Prefix** | **Meaning** | **Can it go to the patient?** |
| :--------- | :--------------------- | :---------------------------------------------------------- |
| **PR** | Patient Responsibility | **Yes** — copays, coinsurance, and deductibles belong here. |
| **CO** | Contractual Obligation | No. |
| **OA** | Other Adjustment | No. |
| **PI** | Payer Initiated | No. |
Only **PR** adjustments can reach a patient statement. **CO**, **OA**, and **PI** adjustments cannot be billed to the patient under any circumstances, and your posting rules are built to enforce that. If an adjustment with one of those prefixes ever appears as patient responsibility, treat it as a configuration problem and raise it.
## How an Adjustment Gets Handled
Every scenario in your configuration falls into one of four categories:
| **Category** | **What happens** |
| :------------------------------------- | :----------------------------------------------------------------------------------------- |
| **Adjust automatically while posting** | The adjustment is written off as the remittance posts, with no review. |
| **Adjust conditionally** | Written off only when a condition holds — for example, when the line is not a full denial. |
| **PR block or non-payable service** | A required write-off. QMB, Medicaid, and Workers' Compensation scenarios sit here. |
| **Send to the patient** | The balance is appropriate for patient billing and flows to patient responsibility. |
Anything that does not fit a category is routed for review rather than adjusted silently, so an unfamiliar code becomes a worklist item instead of a write-off nobody saw.
## Common Scenarios
These come up at almost every practice, and each one is a decision you can make differently.
| **Code** | **What it means** | **How it is usually handled** |
| :------------------------------------------- | :--------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **CARC 45** — fee schedule exceeded | The payer paid less than you billed, up to their allowed amount. | Flagged as a potential underpayment. With your contract rates loaded, rules can identify specifically where a payer is not meeting the contracted amount. |
| **CARC 24** — bundled services | The service is covered under a capitation or managed-care arrangement. | Without capitation agreements, routed for review by your denials team. With them, written off automatically, or by per-payer rule if you prefer. |
| **CARC 59** — multiple procedure reduction | A reduction applied when several procedures are billed together. | For Medicare this is always a required write-off, under the Multiple Procedure Payment Reduction (MPPR) policy. |
| **CARC P12 and P13** — Workers' Compensation | A Workers' Compensation adjustment. | Your Workers' Compensation fee schedule can be loaded so the balance is adjusted only once the contracted floor is met. |
| **CARC 131, 132, 147** | Payer-specific adjustments with no single right answer. | Configured to match how your team handles them today. |
| **CPT 97010** — hot and cold packs | Typically not covered by insurance. | Denials can route to self-pay, or be handled another way if you would rather. |
## What Shapes Your Configuration
The more of the following Athelas has, the more of your posting can be automated rather than reviewed.
| **Input** | **What it makes possible** |
| :------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Contract rates and allowed amounts** | Detecting underpayments automatically, and adjusting off surplus balances once the contracted rate is met. Without them, an underpayment looks like any other short payment. |
| **Capitation agreements** | Handling lump-sum arrangements for a series of visits, and writing off bundled-service adjustments with confidence. |
| **Workers' Compensation fee schedule** | Adjusting only after the contracted floor is met, instead of on receipt. |
| **Non-reimbursed CPT codes** | Codes you bill without expecting payment can route straight to their intended destination rather than into a denial worklist. |
| **Your reconciliation practice** | Whether you reconcile remittances against bank deposits before posting, and whether you see HSA and FSA cards or third-party repricers such as Zelis, changes how the rules are sequenced. |
Two preferences are worth deciding before setup:
* **When primary and secondary payers disagree on patient responsibility,** which one do you follow? The usual recommendation is to side with the primary payer.
* **Should small balances clear themselves?** Automatically adjusting off `$0.01` balances while patient responsibility is pending stops rounding differences from generating statements.
## Changing Rules After Go-Live
Your go-live configuration is a starting point, not a commitment. Rules can be refined as you learn which scenarios your team actually wants to see, so a category that generates more review than it saves is worth raising rather than working around.
### FAQ
That should not happen — **CO**, **OA**, and **PI** adjustments cannot be billed to a patient. Treat that as a rule misconfiguration and contact your account team rather than writing the balance off case by case.
No, but the rules are much weaker without them. Underpayment detection depends on knowing what the payer agreed to pay. With no contracted amount to compare against, a payer paying below contract looks the same as a payer paying correctly.
Only what you agreed to put in the automatic category. Conditional adjustments need their condition met, and anything outside the configured categories is routed for review instead of adjusted.
Yes. Several of the common scenarios, CARC 24 among them, are commonly configured per payer rather than once across the board.
On the claim. The remittance, its CARC and RARC codes, and the resulting adjustments all live in **Claim Context** — see [Working a Claim](/insights_biller/claim_details/working_a_claim).
Questions about a posting rule, or want one changed? Reach out to your account team or [support@getathelas.com](mailto:support@getathelas.com).
# How to create tasks
Source: https://docs.athelas.com/insights_front_desk/tasking/how_to_create_tasks
Create a task on the Tasks page, assign it to a user or a group, and optionally link it to a patient.
On the [Tasks](https://insights.athelas.com/tasks) page, click **Task** in the header to open the **Create Task** drawer. Fill in:
* **Title** (required) and a clear **Description**
* **Assignee** — switch between **Assign to an Individual User** (choose an **Assignee**) and **Assign to a Group** (choose an **Assignee Group**). Group-assigned tasks can be claimed by any member of the group.
* **Patients** (optional) — link the task to one or more patients; linked tasks appear on each patient's profile
* **Priority** — No Priority, Low, Medium, High, or Urgent
* **Status** — defaults to **Not Started**
* **Due Date**
* **Task Type** — pick an existing type or manage the list via **Manage Task Types**
* **File** — optionally attach a file (larger files take longer to upload)
Click **Create**.
### FAQ
Yes. In the **Assignee** section, choose **Assign to a Group** and select an **Assignee Group**. Any member of that group can claim and work the task.
Add the patient (or patients) in the **Patients** field when creating the task. The task then appears on that patient's profile.
# Sorting, Archiving, Bulk Actions
Source: https://docs.athelas.com/insights_front_desk/tasking/sorting_archiving_bulk_actions
Sort, filter, archive, and bulk-manage tasks on the Tasks page.
#### Tabs
The Tasks page has tabs for **My Tasks**, **Available Group Tasks**, **Assigned by Me**, and **All Tasks**.
#### Sorting
Click a column header to sort by that column (toggling ascending, descending, and neutral). Sorting is available on all tabs except **All Tasks**, which is server-paginated.
#### Statuses & Archiving
A task's status can be **Not Started**, **In Progress**, **Done**, **Blocked**, or **Archived**. Archived tasks are hidden by the default filter — there's no separate "archive" button; you **archive a task by setting its status to Archived** (via the row's status control). To view archived tasks, open **Filter** and include **Archived** in the statuses shown.
#### Per-Task Actions
On a task row you can **Edit**, **Delete**, view **Task Change History**, and **Update Task Status**. On the Available Group Tasks tab you can also **Assign to Myself**.
#### Bulk Actions
Select multiple tasks with the checkboxes, then use **Bulk Edit** to update them together. The Bulk Edit menu also offers **Bulk Delete** (all tabs) and **Bulk Self-Assign** (on Available Group Tasks).
### FAQ
Set the task's **Status** to **Archived**. It's then hidden by the default filter; include **Archived** in the **Filter** to see it again.
Yes. Check the tasks you want, then use **Bulk Edit** (or **Bulk Delete**). On **Available Group Tasks**, **Bulk Self-Assign** claims several group tasks at once.
# Bank Deposit Verification
Source: https://docs.athelas.com/insights_front_desk/utilities/bank_deposit_verification
#### At a Glance
In the world of medical billing, perhaps the two most important questions you can answer are:
* How much have payers told us we’ve been reimbursed?
* How much of that has actually arrived in our bank account?
Getting a clear answer to #1 can be challenging enough, but some practices are forced to spend tremendous amounts of time manually matching up bank deposits with EOBs in order to make sense of what they’ve been paid and find out what payments are missing.
It’s important work, but it’s also a slog.
That’s why Insights has a [Remittances](https://insights.athelas.com/#/v2/payment/remittances) page, with built-in **deposit verification**.
In this tab you’ll be able to view a list of every remittance a payer has sent you. Once you plug in your bank account via our secure [Plaid integration](https://plaid.com/) we’ll attempt to *automatically match those remittances up with deposits,* reducing the burden of deposit verification by as much as 80%.
Read on, and we’ll dig into the details.
#### Best Practices
**1.** While Insights will be able to automatically match the majority of your remits/deposits, some portion will still need to be manually matched. For this reason it’s worth **reviewing your unmatched remittances/deposits at least every 2 weeks** to keep the volume of unmatched pairs manageable.
**2.** Often remittances will arrive a few days before payments hit the bank, so for any **remittances younger than 5 days old**, don't be too worried if there's no corresponding deposit in your bank account just yet.
**3.** When you deposit multiple checks at once, your bank will usually sum them all up into a single deposit which makes it hard to match them against individual remittances. When you’re looking for **payments that correspond to orphaned remittances**, this is often a good place to start.
#### 🌐 Core Feature Walkthrough
**View All Remittances**
Even before you connect your bank account, you’ll be able to view a list of all your recent remittances in chronological order (or a different order if you care to re-sort them).
There can be a lot of data in this view, so we’ve provided tools to help you zoom in on precisely what you’re trying to examine:
* **Download CSV** — for some folks, there’s no place like Excel. If you happen to be a spreadsheet jockey, you’ve got the option to download all the data in this tab. That way you can work in your data manipulation tool of choice.
* **Filter Remittances** — we’ve also provided a wide variety of filters to help you narrow down to just the subset of remittances you’re looking for. This is particularly helpful when investigating missing deposits.
**Explore Remittance Details** — once you’ve found a remittance you want to examine, clicking on it will take you into a detail view for the remittance. Here you can see each Insights claim that was a component of the remittance.
**Quicklink to Insights Claim** — and to close the loop, clicking any of the specific claims listed in the ERA will open up the Insights Claim Details view so you can see remittance info in the context of the rest of the claim details.
#### Connect Your Bank Account
Once you’re ready to start automatically matching remittances and deposits we’ll need to connect to your bank account via the Insights/Plaid integration. Here’s how to do it:
From the main Remittances tab, click the `Connect Bank Accounts` button. This will take you to the linked accounts screen.
From the linked accounts screen you can view any currently associated bank accounts, then click ‘Connect a new Bank Account’ to add a new one.
This will launch the Plaid integration screen which will guide you through the process of authenticating with your bank. Once you’re done, read-only access will be delivered to Insights for analysis.
Once you’ve completed the connection it may take as much as an hour for data to be fully imported and matching to occur. Once an hour has passed, you can move on to analyzing your matches and mismatches.
**Note:** If you have more than one bank account you’d like to match against remittances, just repeat the process from the top. You can link as many bank accounts as you like.
#### Refresh or Delete a Bank Account
To refresh or remove an account, simply click ‘Manage Bank Accounts’ on the [Remittances](https://insights.athelas.com/v2/payment/remittances) page, then click either the Refresh or Delete icon for that account.
#### Analyze Matches / Missing Deposits
Now that your bank account is hooked up and Insights has had time to run our algorithmic matching protocol, the fun really begins. You now have 5 different ways to segment your data, depending on your objective:
* **View All** — in this view you’ll see a combination of both remittances and deposits. Any that have been matched will appear combined into a single line item, but you’ll also see rows for unmatched remittances and unmatched deposits.
* **Missing ERAs** — here you’ll see any deposit for which Insights couldn’t find a corresponding remittance to match it to.
* **Missing Payment** — on the flip side, this view shows remittances with no payments that could be directly matched to them
* **Inconsistencies** — here Insights was able to match a remittance to a deposit, but there’s some discrepancy between the two.
* Generally this a difference in payment amount (often only a few cents), but each row will specify that the inconsistency in the match is.
* **Matched Deposits** — as you might expect, this view holds all our unproblematic matches where a remittance clearly belongs with a given deposit and the numbers all line up nicely.
#### In Conclusion
With these tools in hand, the process of tracking down missing payments and missing remittances becomes a lot simpler. As we continue to refine our matching algorithm there will be more and more matches generated automatically.
### FAQ
Reach out to [support@getathelas.com](mailto:support@getathelas.com) and we'll see if we can manage an alternate method of importing your deposit list. Occasionally this isn't possible, but often we're able to find a suitable workaround.
**Integrations With**:
* Plaid
* Stripe
# Download EDI's in Bulk
Source: https://docs.athelas.com/insights_front_desk/utilities/download_edis_in_bulk
#### What is EDI?
As stated by the [Centers for Medicare and Medicaid Services](https://www.cms.gov/medicare/coding-billing/electronic-billing)…
💡 **Electronic Data Interchange (EDI) is the** **automated transfer of data** in a specific format following specific data content rules **between a health care provider and Medicare**, or between Medicare and another health care plan.
In some cases, that transfer may take place with the assistance of a clearinghouse or billing service that represents a provider of health care or another payer.
EDI transactions are transferred via computer either to or from Medicare. Through use of EDI, both Medicare and health care providers can process transactions faster and at a lower cost.
Essentially, **EDI is remittance information from the payer**. It is also known as an 835 file.
#### Why Do I Need EDI Files?
Generally, billing staff will use EDI files to post payments into their system for any remittances received by Insights.
Athelas automatically posts these to our claims in [Insights](https://insights.athelas.com/overall).
#### Here’s How to Download EDI Files
Navigate to the [Remittances](https://insights.athelas.com/v2/payment/remittances) page. When you’re ready, click Download EDIs.
You can use the considerable array of filters to pinpoint the time frame, check number, insurance name, or any other factors you would like. Be sure to **click Apply!**
After filtering, you can hover your cursor over the Download EDIs button to see a tooltip reporting the number of EDIs matching your filters.
💡 The toggles at the bottom of this Remittance Viewer allow you to **include or exclude Non-Athelas Claims** as well as those **Unposted to EHR**. You can also choose to hide **Non-Clearinghouse Remittances**, like any that may come directly from the payer (EOBs, for example) or manual entries.
You’ll receive an email with a zip file containing your EDIs.
# EOB Creation and Portal Checks
Source: https://docs.athelas.com/insights_front_desk/utilities/eob_creation_and_portal_checks
### At a Glance
The [EOB Creation page](https://insights.athelas.com/v2/eob-posting) is your headquarters for manually uploading remittances to your claims.
If you find yourself in possession of an EOB for an unreconciled claim, this is the tool you’ll use to update the claim status in Insights. It also accepts data from payer portal checks and good old fashioned calls to the payer.
**Best Practices 1.** If you have an **EOB you need to import urgently**, this tool is your best path. Imported EOBs will appear in Insights within 24 hours of submission.
**2. If you’re not in a hurry**, you can bulk-upload your EOBs to this tool and the Athelas reconciliation team will import the EOBs data (though this takes longer to process).
**3. If you’re not sure what claims need remittances**, head over to the [AR Report page](https://insights.athelas.com/v3/payment/ar-report) to get a list of claims that are overdue for a decision.
## Core Feature Walkthrough
We will refer to all manual remittance types — EOBs, Payer Portal Checks, and Payer Calls — as ‘EOBs’ in this guide.
Here’s how to upload a new EOB:
### 1. View EOBs by Status
When you land on the EOB Creation page, you will see six tabs indicating the status of the EOBs listed:
* **Backlog** — EOBs that have not yet been touched by your practice’s staff will populate the backlog.
* **In Progress** — EOBs located here are either being indexed (identifying what claims are on an EOB that require posted remits) or transcribed (writing the details of **each claim** on the EOB in Insights). Given that some EOBs can have 400+ claims, it is possible that they may be in this state for a few days.
* **Partially Completed** — EOBs in this tab were submitted, but at least one EOB failed. **Note:** A common error for EOBs here is a missing check number or check date. Any remit greater than \$0.00 requires these two things to successfully post.
* **Submitting** — These EOBs are currently being submitted and will be done soon, depending on the number of associated claims.
* **Posted** — These EOBs have all been successfully posted.
* **Blocked** — Something is wrong and these won’t be posted. This usually happens for EOBs that are duplicates, or have some similar issue.
Within any of these tabs, use the Multi-Search function to filter the EOBs listed by EOB ID, insurance, check number, patient name, or file name.
You can also click the ‘**Actions**’ menu to either view or delete a file.
### 2. Upload an EOB File or Screenshot
Assuming you’re starting from scratch, click the ‘Post a New EOB’ button to get started.
Select the **type of EOB** you’ll be importing. **Upload the file** and then click ‘**Continue**.’
*Uploading is not technically required. However, for accurate record keeping and quality assurance, uploading evidence of the payer decision is strongly encouraged.*
Next, you can use the search filters (Patient, Date of Service, Multi-Search) to find the claim(s) you want to link to the EOB. Then click ‘**Add to EOB**.’
Repeat this process until you’ve added all the claims you want, then click ‘**Process EOBs**.’
### 3. Enter the Remittance Data
***Autosave*** This portion of the tool will automatically save your progress.
Now it’s time to **fill in the key data** from the EOB.
Keep an eye on your count of **validation errors** next to the submit button. This keeps a **live tally of issues** that need to be resolved in the EOB.
Moving your cursor over this note will provide a list of the specific patients’ claims where the issues are located.
Find the patient/claim with an error, indicated by red ‘**Information**’ icons. You can then hover your cursor over the icon to the right of the CPT code description to discover what the specific issue is and rectify it.
If your EOB contains an adjustment that doesn’t fall into the most common categories, you can add a custom adjustment using the ‘**Add Adjustment**’ button.
This is most often needed for Denials.
Clicking the button will **add a new row** to your EOB to hold the custom adjustment:
Here you’ll enter the following data:
* **Group Code** — For example, the “CO” in CO-45, or “PR” in PR-1.
* **CARC** — Claim Adjustment Reason Code, e.g. the “45” in CO-45.
* **Amount** — The dollar value of the adjustment.
* **RARC** — Remittance Advice Reason Code, these are optional codes that provide extra detail into the outcome of the claim.
Continue to fill in remittance **data for each procedure** in the claim. As you go, our tool will be watching for inaccuracies and give you feedback in two ways:
* **Unaccounted For**
* In most EOBs, the total adjustments, patient responsibility, and insurance payments should be equal to the charge amount.
* For this reason we provide a live tally of the difference between the charge amount and the data you’ve entered so far.
* If you feel you’ve entered all the data from an EOB and there’s still a value showing in ‘Unaccounted for,’ then it’s worth double checking your entries.
* **Validation Errors**
* In the upper right of each procedure you’ll also find an icon indicating if any fields are missing, or if the value entered are not adding up.
* Move your mouse over the icon to see a tooltip of all detected issues.
Once all the remittances are filled in, **proceed to the next claim** and continue until the data for each claim has been completed.
**Check Numbers & Dates** While these fields are not technically required, we strongly encourage you to enter the check number and check date for a claim if this is included on your EOB. This data has a number of uses, including helping Insights to match the EOB to your bank deposits if you’re using our [Deposit Verification](/insights_front_desk/utilities/bank_deposit_verification) feature.
### 4. Submit the EOB!
If everything has gone as planned you should now see a visual indicator that **all validation checks are passing**. If they’re not, this is a good moment to quickly check your work.
Occasionally an EOB will truly contain data that fails validation checks. If that happens don’t worry, you can still submit your EOB!
*Our validation checks are purely informational, and do not prevent you from submitting an EOB. As long as the required fields are filled in, you can always submit.*
Click the ‘**Submit**’ button in the upper right of the page, and a window will pop up to request your final confirmation.
Hit ‘Confirm’ to finalize your submission.
The EOB will take a few moments to submit each claim linked to your EOB. For large numbers of claims this may take as long as half a minute.
Once **submission is complete** you’ll be shown a confirmation message, then redirected back to the main EOB page. ***Success!***
**And that’s it!** New EOB data will show up on your claims **within 24 hours**.
While that data is processing, claims included in the EOB will be marked with a notification so your team knows that updates are in progress.
#### General Summary of Features Supported:
**Features Supported:**
* Upload an EOB
* Transcribe EOB and create remittances in the system
* Athelas Assistant - AI transcription of EOBs
### FAQ
No, uploading a file or screenshot is optional (but it's strongly encouraged for record keeping).
You can upload an `EOB`, data from a `Payer Portal` check, or info from `Calling a Payer`.
Yes! EOBs intended for processing by the Athelas team should be bulk uploaded via this tool, which is monitored by the Athelas remittance team.
# Patient Subscriptions
Source: https://docs.athelas.com/insights_front_desk/utilities/patient_subscriptions
#### At a Glance
Some of the most reliable sources of revenue for many practices are *subscriptions*. Whether you’re charging for ongoing treatment plans, nutritional supplements, or anything in between, subscriptions can increase predictability in your practice’s income. The only challenge is that charging for subscriptions *can be a real hassle*.
That’s why Insights built our [Patient Subscriptions](https://insights.athelas.com/v2/recurring-payments) system. From this interface you can:
* **Create templates** — these are the subscription programs you’ll enroll your patients in.
* **Enroll patients** — putting them on one of your subscription plans so they’ll be automatically charged at a frequency of your choosing.
* **Troubleshoot failed payments** — when card details fail, they’ll be added to a list of subscriptions to address so your team can get payments back on track.
#### Best Practices
**1.** If you have a particular subscription you use over and over again, **start by adding a template** for it. This will save your staff a lot of time and increase accuracy. Patients can always get customized plans if necessary.
**2.** Although most practices run subscriptions on a monthly basis, you also have the option automatically charge on a **weekly** or even **daily** basis.
**3.** We recommend **checking for failing payments on a weekly basis** to make sure no patients have quietly stopped paying for the services they’re receiving.
#### Feature Walkthrough
#### 1. Create / Manage Templates
If you’re going to be using the same subscription plan over and over, start by creating a template:
From the [Recurring Payments](https://insights.athelas.com/v2/recurring-payments) page, go into the Subscriptions tab and click Template Settings.
Here you’ll see a list of your existing plans. To create a new plan click ‘Create Template’.
Fill in all required information.
Click Confirm and the plan will be added to your list! From here you can also edit or delete your template.
Back on the Recurring Payments page, you can click Create Subscription Plan and the template will now appear as an option when you’re enrolling patients in a subscription.
**Important Note:** Once you enroll a patient in a subscription plan using a template, editing the template will not make changes to those patients’ active subscriptions.
This has two major benefits:
* It allows all patient subscriptions to be 100% customizable. You can start with a template and then make changes at the patient level without affecting the template.
* It means you can occasionally increase your subscription fee for new patients without automatically hiking rates for previous patients. Old patients will continue to be billed at their established rate.
#### 2. Enroll Patients in Subscriptions
From the [Recurring Payments](https://insights.athelas.com/v2/recurring-payments) page, click Create Subscription Plan.
Fill in the required information, and choose your new template if you like.
Click Confirm and you’re all set! The patient will be charged for the first time on the date you selected.
#### 3. Edit, Cancel, or Pause Subscriptions
From time to time you’ll want to make modifications to your existing subscriptions, and you can do this with ease in the subscription detail view.
First, click the subscription you want to modify.
From here, you can adjust any of the parameters of your subscription. You can also **Pause** or **Cancel** the subscription.
#### 4. Past and Future Charges
Towards the bottom of the subscription details view you can see a log of all past payments and anticipated future payments, complete with payment amount and payment status.
If you ever have a patient with a failing payment, this is where you’ll want to take a look to gather more information about what’s going on and take action.
#### Toggle Filters
You can click the Last Charge Failed toggle to filter your list to show all plans for which that is the case. These plans will be highlighted red.
If you’d like the list to also Show Canceled Plans, there’s a toggle for that as well.
#### Status Definitions
Each subscription plan will have a status displayed under the ‘Status’ column.
* **Active** — Currently enabled, all payments to date processed as expected.
* **Canceled** — Manually canceled by a staff member, not reversible. A new subscription will need to be made if the patient would like to continue.
* **Expired** — The most recent payment failed, and then failed again in the following 24 hours. Time to update payment information. Often seen in conjunction with ‘Past Due’ status.
* **Incomplete** — The first payment attempt failed. A second attempt will run within 24 hours. If it fails again, the status will update to ‘Expired.’
* **Past Due** — The scheduled payment failed and now the balance is outstanding. Often seen in conjunction with ‘Expired’ status.
* **Scheduled** — Upcoming payment
#### In Conclusion
Subscriptions can be a powerful and predictable source of revenue for a practice. The Subscriptions tool is designed to simplify their management.
If your practice already provides subscriptions, Insights is here to simplify the process.
If subscriptions are new for your practice, you now have the tools to experiment with how they could passively increase your organization’s revenue.
# Process Virtual Cards
Source: https://docs.athelas.com/insights_front_desk/utilities/process_virtual_cards
#### At a Glance
💡**Virtual credit cards are digital credit cards that function like physical credit cards—but without the plastic**. They will generally be sent to your practice by **insurance companies** as payment towards a patient’s outstanding balance.
Rather than providing the same card number to multiple vendors, companies can limit their exposure to potential fraud by generating different 16-digit card numbers and expiration dates for each transaction.
**Do not use this feature as a means of collecting payment from patients if, for example, your card reader is down.**
In situations like that, follow these steps:
* Charge the patient.
* To do this, you can click `Charge` on the [Appointments page](https://insights.athelas.com/appointments), for example.
* Review the charges, then select `Pay via Credit Card` in the payment popup. Click `Enter Card Information`.
* Enter their credit card information manually.
#### Why Virtual Credit Cards?
It has been widely theorized that payers send virtual credit cards because practices are much less likely to be successful in extracting the funds than they would be if the payer sent a paper check.
Of course that’s no good — your practice deserves every dollar you’ve earned! This is why Insights provides this tool designed specifically to extract 100% of funds from these virtual cards and send them to your bank account. Here’s how it works:
* Find your virtual credit card, then navigate to the [Process Virtual Card](https://insights.athelas.com/v2/process_virtual_card) tab and click the ‘Process a Virtual Card’ button.
* This opens a window where you can select the **Payer** and enter the **Full Amount** you want to extract from the card. For some practices you may also need to specify the associated **Facility** or **Provider**, which generally happens if your practice operates on multiple sets of financial books and/or Stripe accounts.
* Then **enter the credit card details** as they’re listed in the documentation from the payer, just like you would for any normal online purchase:
* Once you hit ‘Confirm Payment’ Insights will use your **Stripe account** to create a payment for the full amount, draining the card entirely. Then two things will happen:
* A record of the transaction will be added to the page, so you can track which cards you’ve already handled and which still need to be processed.
* The revenue from this transaction will be added to your revenue metrics to create the most up to date picture of your billing performance.
And that’s it! A simple feature to help you fight back against the tricky practices of the payers that make it harder for your practice to get paid.
#### Best Practices
**1.** Try to process virtual cards on a **weekly basis**, the longer you let them sit the longer revenue will be missing from your bank account and your metrics
**2.** Often virtual cards come with EOBs attached to them. When this is the case **please upload the EOB** via the [EOB Posting tool](https://insights.athelas.com/v2/eob-posting) in Insights. Our reconciliation team will automatically process them for you.
**3. Only use this tool for payer virtual cards**! Do not use it for patient payments. If you need to collect a patient payment please do that via the [Patient Responsibility tab](https://insights.athelas.com/v2/patient-responsibility) or the [Appointments tab](https://insights.athelas.com/appointments). Using this tool for patient payments will make your revenue analytics inaccurate.
#### View Virtual Card Transactions in a Report
From the [My Reports page](https://insights.athelas.com/v2/my-report), select the Site Transaction Report download button. Use the filters to specify date range, facility, provider, etc., then click
`Download`
. All Virtual Card transactions that match your specifications will appear in the ‘Payment Type’ column of the
`processed_transactions_...`
CSV file, as shown below.
# Athelas Assistant Common Functionalities
Source: https://docs.athelas.com/insights_general/athelas_assistant/athelas_assistant_common_functionalities
#### Individual Tools Available to Athelas Assistant
**Patient Management:**
* **Search for patients:** Find patients by name, ID, phone number, or date of birth.
* **Get patient details:** Retrieve a patient's details. Contains the following:
* **Get patient demographics:** Get a patients name, dob, gender, phone number, and more!
* **Manage patient cases:** List all medical cases associated with a patient.
* **View patient insurance:** List a patient's insurance information.
* **View patient appointments:** Can check a patients most recent appointment statuses (can specify a larger, smaller date range as needed)
* **Search patient chart notes**: Can retrieve up to 10 historical chart notes for a patient
* **Check patient prior auth**
* **Check patient claims**
* **Check patient referrals**
**Appointment Scheduling:**
* **Book appointments:** Schedule a new appointment for a patient.
* **Get appointment defaults:** Grabs the latest appointment type, case, rendering provider, insurance used for a patient to help speed up scheduling an appointment.
* **View provider appointments:** See a provider's schedule for a given date range.
* **Update appointment status:** Change the status of an existing appointment (e.g., 'Scheduled', 'Checked In', 'Completed').
* **Check for conflicts:** Identify potential scheduling conflicts for a provider.
* **List appointment types:** See all available appointment types for the site.
**Provider and Site Information:**
* **List providers:** Get a list of all providers at a site.
* **List facilities:** See all facilities associated with a site.
* **Get current provider:** Identify the provider who is currently logged in.
* **Get provider unsigned visits**
#### End to End Workflows
##### Example Workflow 1: Pre-Encounter Chart Preparation
This workflow demonstrates how a clinical user (like a doctor or medical assistant) can quickly check in and navigate to the patients note for an upcoming appointment.
**User's Goal:** A provider is about to see a patient and needs to quickly check their patient in and then navigate to the chart note page so they can begin scribing.
* **Request a Patient Summary**: The provider asks Athelas Assistant to prepare them for their next encounter.
* *User says: "I'm ready for my next patient, John Appleseed. Can you check him in and navigate to his appointment page"*
* **Athelas Assistant's Background Actions**: Athelas Assistant understands the multi-part request and gets to work:
* It finds John Appleseed in the system and locates his appointment for the day.
* It updates the appointment status to "Checked-In."
* Then, since it has the context of the exact appointment, it can navigate to the note immediately in the same conversation turn.
##### Example Workflow 2: Scheduling a New Appointment in a Single Request
This workflow shows how a user can book a new appointment with a single, detailed command, allowing Athelas Assistant to handle all the intermediate steps in the background.
**User's Goal:** A scheduler needs to book a new appointment and has all the necessary details.
* **Make a Comprehensive Request**: The user issues a single, detailed command to Athelas Assistant.
* *User says: "Book a new patient visit for Jane Doe, with Dr. Smith at our downtown clinic for this Friday at 2 PM. Use her primary Aetna insurance for the 'Knee Pain' case."*
* **Athelas Assistant's Background Actions**: Athelas Assistant parses the entire request and performs a series of actions without further user input:
* It first identifies Jane Doe and verifies her identity using her date of birth.
* It looks up Dr. Smith, the downtown clinic, the "New Patient Visit" appointment type, the patient's Aetna insurance, and the "Knee Pain" case, resolving all of them to their correct system IDs.
* It checks Dr. Smith's schedule to ensure there are no conflicts at the requested time.
* Assuming the time slot is free, it proceeds to book the appointment.
* **Final Confirmation**: Athelas Assistant completes the workflow by confirming the action is done.
* *Example Athelas Assistant response: "Done. I've scheduled Jane Doe for a new patient visit with Dr. Smith at the downtown clinic this Friday at 2 PM. The appointment is linked to her 'Knee Pain' case with her Aetna insurance."*
# Athelas Assistant for Providers
Source: https://docs.athelas.com/insights_general/athelas_assistant/athelas_assistant_for_providers
Athelas Assistant is a powerful tool to provide users with the familiar ChatGPT-like help along with powerful agentic tools. It includes a few key features, such as answering medical questions, syncing with the current chart note, and pulling up patient or appointment data.
#### Usage
Pro tip: Use dictation or voice mode in the Assistant input box!
To start:
* Click the blue button in the bottom-right corner of the screen to show the AI Widget
* Click “Athelas AI” to open the Athelas Assistant widget, and then click on the “Assistant” tab. You’ll see a chat history page with no current chats, click on the “Start New Chat” button to start chatting
* You can also create a chat linked to the scribe from the completed scribe view - to ask questions with the full transcript and note as context
* You’ll see some quick start suggestions, but **also ask it directly what it can do!**
* You can always go back to your chat history to view older chats and create new chats
* Start fresh by clicking the dropdown in the chat page to create a new chat
# Athelas Assistant Prompt Library
Source: https://docs.athelas.com/insights_general/athelas_assistant/athelas_assistant_prompt_library
## Patient & Account Management
### Finding Patients
* "Find patient John Smith born 03/15/1985"
* "Search for patient with phone number (555) 123-4567"
* "Look up patient ID \[ID]"
* "Find patient Maria Garcia with DOB 07/22/1990"
* "Search for patient by last name Johnson"
* "Locate patient with member ID ABC123456"
* "Find patient Robert Chen born in 1975"
* "Search for patient with phone ending in 4567"
* "Look up patient Sarah Williams ID \[ID]"
* "Find patient with preferred name Mike instead of Michael"
### Patient Demographics & Insurance
* "Show me patient \[ID]'s demographics and insurance information"
* "Get all insurance details for patient John Smith"
* "What insurance does patient Maria Garcia have on file?"
* "Show me the complete profile for patient ID \[ID]"
* "Display demographics and coverage for patient Chen"
* "Get patient Williams' address and insurance information"
* "Show me all details for patient Anderson including insurances"
* "What's the primary insurance for patient Johnson?"
* "Display patient \[ID]'s contact information and coverage"
* "Get complete patient information for Garcia including all insurances"
* "Show me patient Smith's demographics and active insurance policies"
* "What insurance information do we have for patient ID \[ID]?"
### Account Analysis & Balance Breakdown
* "Show me the complete balance breakdown for patient John Smith"
* "Why does patient Maria Garcia have a balance?"
* "Analyze all charges and payments for patient Robert Chen from January to March 2024"
* "What credits does patient Sarah Williams have available?"
* "Show me the payment history for patient ID \[ID]"
* "Break down the outstanding balance for patient Johnson"
* "Explain the charges on patient Garcia's account from last month"
* "What's the total amount owed by patient Smith across all dates of service?"
* "Show me all unpaid charges for patient Chen from 2024"
* "Analyze the credit balance for patient Williams - why do they have a credit?"
* "Review all transactions for patient ID \[ID] in the last 6 months"
* "What's causing the high balance alert for patient Anderson?"
* "Show me the detailed breakdown of patient \[ID]'s charges from 01/01/2024 to 03/31/2024"
* "Analyze patient Garcia's credits history and current available credits"
### Patient Account Actions
* "Write off \$150 balance for patient John Smith - reason: financial hardship"
* "Refund \$75 cash payment for patient Maria Garcia - duplicate payment"
* "Update insurance information for patient Robert Chen - new policy number ABC123"
* "Write off \$200 for patient ID \[ID] due to billing error"
* "Process refund of \$50 credit card payment for patient Williams - overpayment"
* "Update patient Garcia's secondary insurance to Aetna"
* "Write off copay balance of \$25 for patient Smith - sliding fee patient"
* "Refund \$100 check payment for patient Chen - services not rendered"
* "Add new primary insurance for patient ID \[ID] - Blue Cross policy XYZ789"
* "Write off deductible amount of \$300 for patient Johnson - charity care"
* "Process partial refund of \$40 for patient Anderson - insurance adjustment"
* "Update group number for patient Williams' insurance to GRP456"
* "Create new insurance for patient \[ID] with Cigna policy number POL123"
* "Show me sliding fee history for patient Smith"
## Claims & Encounter Management
### Finding Encounters
* "Show me all encounters for patient John Smith in 2024"
* "Find encounters from 09/01/2024 to 09/30/2024 for Dr. Johnson"
* "List all denied encounters for patient Maria Garcia"
* "Show encounters for patient ID \[ID] from last month"
* "Find all encounters with Dr. Chen as rendering provider this week"
* "List encounters for patient Williams between 06/01/2024 and 08/31/2024"
* "Show me all pending encounters for patient Anderson"
* "Find encounters with billing errors from October 2024"
* "List all completed encounters for Dr. Smith from yesterday"
* "Show encounters for patient Garcia with secondary insurance claims"
* "Find all encounters awaiting primary insurance response"
* "List encounters for patient ID \[ID] with outstanding balances"
* "Show me encounters for provider ID \[ID] from last week"
* "Find all encounters with billing status issues"
### Encounter Details & Analysis
* "Get full details for encounter ID \[ID] including billing summary"
* "Show me the timeline for patient Smith's visit on 08/15/2024"
* "What's the current status of encounter \[ID]?"
* "Explain the denial reason for encounter \[ID]"
* "Show billing summary for encounter ID \[ID]"
* "What procedures were billed on encounter \[ID]?"
* "Review the claim history for encounter \[ID]"
* "Show me all diagnosis codes for encounter \[ID]"
* "What insurance was billed for encounter \[ID]?"
* "Explain the submission error on encounter \[ID]"
* "Show me the provider and facility for encounter \[ID]"
* "What's the total charge amount for encounter \[ID]?"
* "Review the payment posting for encounter \[ID]"
* "Get the date of service timeline for patient \[ID] on 2024-08-15"
* "Show me claim details for claim ID \[ID] with billing breakdown"
### EOB Processing
* "I want to create an EOB from this attached file"
* "Process EOB posting from the uploaded remittance file"
* "Create EOB from the insurance payment document I attached"
* "Upload and process this EOB file for payment posting"
* "I have an EOB file to process - can you handle it?"
* "Create EOB posting from the attached insurance remittance"
* "Process the EOB document I just uploaded"
* "Handle EOB creation from this insurance payment file"
* "I need to process an EOB from the attached document"
* "Create EOB posting from this remittance advice file"
## Appointment Operations
### Searching Appointments
* "Show me all appointments for Sarah Wilson today"
* "Find appointments for patient John Smith in October 2024"
* "List all cancelled appointments this week"
* "Show me no-show appointments from last month"
* "Find appointments for Dr. Johnson on 10/31/2024"
* "List all completed appointments for patient Garcia yesterday"
* "Show scheduled appointments for patient ID \[ID] next week"
* "Find all appointments at Main Street facility today"
* "List appointments for patient Chen between 09/01 and 09/30"
* "Show me all confirmed appointments for tomorrow"
* "Find physical therapy appointments for patient Williams"
* "List all appointments with Dr. Anderson this month"
* "Show me checked-in appointments for today"
* "Find appointments for patient Smith from 2024-10-01 to 2024-10-31"
### Appointment Analysis & Charges
* "What are the suggested charges for appointment ID \[ID]?"
* "Show me copay and coinsurance amounts for appointment \[ID]"
* "Analyze collections for all appointments on 10/15/2024"
* "What's the deductible amount for appointment \[ID]?"
* "Show suggested charges for patient Smith's appointment today"
* "Review copay collection for appointment ID \[ID]"
* "What insurance benefits apply to appointment \[ID]?"
* "Show me the sliding fee discount for appointment \[ID]"
* "Analyze pre-visit charges for appointment \[ID]"
* "What's the patient responsibility for appointment \[ID]?"
* "Review coinsurance calculation for appointment \[ID]"
* "Show me all charge suggestions for appointment \[ID]"
* "What payment is due at time of service for appointment \[ID]?"
* "Get suggestions and collections for appointments \[ID], \[ID], \[ID]"
* "Show me detailed charge breakdown with rules for appointment \[ID]"
### Appointment Types & Facilities
* "What appointment types are available at this site?"
* "Show me all facilities for this location"
* "Find facility information for Downtown location"
* "List all available appointment types for scheduling"
* "What facilities can I schedule appointments at?"
* "Show me facility details for Main Street location"
* "What are the different appointment types we offer?"
* "Find facility ID for the Westside clinic"
* "List all active facilities for patient scheduling"
* "What appointment types should I use for physical therapy?"
## Provider Management
### Finding Providers
* "Find provider Dr. Sarah Johnson"
* "Look up provider with NPI 1234567890"
* "Search for provider Michael Chen MD"
* "Find provider Dr. Maria Rodriguez"
* "Look up provider John Smith with NPI \[NPI]"
* "Search for provider Dr. Jennifer Williams"
* "Find provider Robert Anderson MD"
* "Look up provider with name David Lee"
* "Search for provider Dr. Lisa Brown"
* "Find provider with NPI 9876543210"
## Financial Operations & Reporting
### Payment Transaction Analysis
* "Show me payment transactions for patient \[ID] and responsibility requests \[ID], \[ID]"
* "Get detailed payment breakdown for patient Smith's recent charges"
* "List all transactions for patient \[ID] responsibility requests"
* "Show me refund history for patient Garcia"
* "Review payment transactions for patient \[ID] from last month"
* "Get transaction details for patient Chen's account"
* "Show me all payments and adjustments for patient \[ID]"
* "List payment transactions for responsibility requests \[ID], \[ID], \[ID]"
* "Review transaction history for patient Williams"
* "Show me payment methods used for patient \[ID]"
### Financial Adjustments & Refunds
* "Refund payment ledger \[ID] for \$100 via credit card - duplicate payment"
* "Process cash refund for ledger \[ID] amount \$50 - overpayment"
* "Refund check payment ledger \[ID] for \$75 - services cancelled"
* "Process SmartPay refund for ledger \[ID] - billing error"
* "Refund ACH payment ledger \[ID] for \$200 - insurance covered"
* "Write off patient \[ID] balance for requests \[ID], \[ID] - financial hardship"
* "Process refund including fees for ledger \[ID]"
* "Write off \$150 for patient \[ID] - charity care adjustment"
* "Refund partial amount \$25 from ledger \[ID]"
* "Write off copay balance for patient \[ID] - sliding fee discount"
## Communication & Workflow Management
### Patient Statements & Messages
* "Show me patient statements config for email on 2024-10-31"
* "Get patient statements sent on 2024-10-30"
* "Show me text message statements config for today"
* "Review patient statements sent yesterday"
* "Get pre-visit text messages sent on 2024-10-31"
* "Show me workflow config for workflow \[ID] on 2024-10-31"
* "Review text message delivery status for 2024-10-30"
* "Get patient statement delivery report for last week"
* "Show me pre-visit message workflow \[ID] configuration"
* "Review statement sending history for October 2024"
## Navigation & System Actions
### Page Navigation
* "Take me to encounter \[ID] details"
* "Navigate to import error \[ID]"
* "Show me reports for revenue analysis this month"
* "Go to encounter \[ID] billing summary"
* "Navigate to patient \[ID] account details"
* "Take me to claim \[ID] details"
* "Show me reports for appointment scheduling patterns"
* "Go to encounter \[ID] for billing review"
* "Navigate to error \[ID] for resolution"
* "Take me to reports for payment analysis"
## Support & Troubleshooting
### Problem Investigation
* "Patient John Smith says they were double-charged - investigate their account"
* "Claim for encounter \[ID] was denied - show me the details"
* "Why does patient Maria Garcia have a credit balance?"
* "Patient Chen received a bill but says insurance should have paid - investigate"
* "Encounter \[ID] shows an error - what went wrong?"
* "Patient Williams was charged twice for the same visit - review account"
* "Why is encounter \[ID] still showing as pending after 30 days?"
* "Patient Anderson's insurance claim was rejected - explain why"
* "Investigate duplicate payments on patient Johnson's account"
* "Why does patient Garcia show a negative balance?"
* "Review billing discrepancy for patient Smith's October visits"
* "Patient Chen says they already paid but still received a bill - investigate"
### Support Ticket Creation
* "Create a support ticket for claim submission error on encounter \[ID]"
* "I need help with a complex insurance coordination issue for patient Garcia"
* "Submit support ticket for system error when processing payments"
* "Create ticket for encounter \[ID] that won't submit to insurance"
* "Need technical support for bulk claim submission failure"
* "Create support ticket for patient portal payment processing issue"
* "Submit ticket for insurance eligibility verification problems"
* "Need help with ERA posting errors for multiple encounters"
* "Create support ticket for sliding fee calculation discrepancies"
* "Submit ticket for appointment scheduling system integration issue"
* "Need assistance with custom report generation problems"
* "Create support ticket for patient statement delivery failures"
* "Get available support ticket forms for my request"
* "Show me fields for support ticket form \[ID]"
### Guidance & Documentation
* "Explain what CARC code 97 means for encounter \[ID]"
* "What steps should I take to resolve this denial?"
* "How do I handle a patient disputing their balance?"
* "What's the process for correcting a claim submission error?"
* "Explain the difference between encounter status and claim status"
* "How do I know when to submit to secondary vs tertiary insurance?"
* "What does 'pending recon' mean for an encounter?"
* "How should I handle a patient requesting a payment plan?"
* "What's the proper way to process an insurance overpayment?"
* "Explain when to use different procedure modifiers"
* "How do I handle coordination of benefits issues?"
* "What's the best practice for following up on unpaid claims?"
* "How do I set up sliding fee schedules for patients?"
* "What's the difference between copay and coinsurance?"
# Getting Started with Athelas Assistant
Source: https://docs.athelas.com/insights_general/athelas_assistant/getting_started_with_athelas_assistant
## What is Athelas Assistant?
An intelligent assistant designed to streamline your daily **billing and administrative workflows**.
Available on [**insights.athelas.com**](https://insights.athelas.com/), Athelas Assistant helps your team navigate operations with speed, precision, and ease.
Athelas Assistant is embedded throughout your **Insights dashboard**, accessible anytime from the **top-right corner**.
It’s ready to assist wherever you are — with entry points across multiple Insights pages.
## How to Get Started
* **Access** — Open Athelas Assistant in the top-right corner of Insights.
* **Check Features** — Ask “What can you do?” to view current functions.
* **Analyze** — Ask questions about claims, balances, and more to get instant insights.
* **Take Action** — The assistant can both provide information and execute tasks.
* **Get Support** — Create support tickets directly through the assistant when needed.
* **Share Messages** — Share, copy, or download responses instantly.
* **Give Feedback** — Use the thumbs up/down to help us improve responses.
## User Guidelines
* **Always confirm actions** when prompted — Athelas Assistant never performs financial actions without explicit approval.
* **Refresh your page** after updates to see recent changes.
* **Ask clear, specific questions**, and follow up naturally.
* **Include dates or date ranges** when relevant.
* **Use action verbs:** “Show,” “Explain,” “Update,” “Process.”
* **Professional use only:** Athelas Assistant is built for **RCM operations** — not general inquiries.
## Pro Tips for Maximum Efficiency
##### Be Specific
**Good:** “Show me patient John Smith’s appointments for October 2024.”
**Avoid:** “Show me some appointments.”
##### Use Exact Information
* “Find patient \[name], DOB 03/15/1985.”
* “Refund \$75.50 for date of service 11/09/2025.”
##### Combine Related Tasks
* “Find patient Sarah Wilson and show me her balance breakdown and recent appointments.”
* “Get encounter \[ID] details and show me submission options.”
##### Ask for Explanations
* “Why is encounter \[ID] currently denied?”
* “Explain the charge breakdown for this patient.”
* “What’s the next step for this claim?”
## Common Workflow Examples
##### Daily Balance Review
* “Show all patients with balances over \$200.”
* “For patient \[name], show complete charge breakdown.”
* “What payment options are available for this balance?”
##### Claim Follow-Up
* “Find all encounters from last week with pending claims.”
* “Show details for encounter \[ID] including submission status.”
* “Why did patient \[ID] start getting denied this month?”
##### Patient Account Resolution
* “Patient \[name] called about their bill — show their account details.”
* “Analyze all charges and payments for recent visits.”
* “Write off \$50 balance due to financial hardship.”
##### Insurance Verification
* “Find patient \[name] and show insurance information.”
* “Update primary insurance to \[new name].”
* “Resubmit recent claims with updated insurance.”
## Questions or Issues
If you have questions or encounter issues:
* Ask Athelas Assistant directly for help
* Create a support ticket through the assistant
* Contact your billing team leads
**Athelas Assistant** is built to make every day faster, smarter, and simpler —
enhancing your **revenue cycle efficiency** and **patient experience**.
# Getting Started as a Biller
Source: https://docs.athelas.com/insights_onboard/getting_started_as_a_biller
Everything you need to start processing claims efficiently—from filtering your queue to submitting with confidence.
# Getting Started with the Claims Page
The Claims Page is where you'll spend most of your time managing your claim workflow. It's designed to help you work faster with fewer errors by giving you powerful tools for filtering, reviewing, and submitting claims.
Here's what you'll learn:
* How to find the claims you need to work on
* How to review and fix claims quickly
* How to submit claims with confidence
* How to work with your team
## Find What You Need to Work On
The Claims Page shows you all encounters in your system. With thousands of claims, the key is filtering down to exactly what you need right now.
### Use filters to focus your work
Click **Filter** at the top of the page to narrow down your list. You can filter by:
* **Encounter Status** - Draft, Ready for Review, Approved, Submitted, Paid, Denied
* **Assignment** - Claims assigned to you, others, or unassigned
* **Insurance Provider** - Specific payers
* **Claim Amount** - Dollar value ranges
* **Age** - How long the claim has been in the system
* **Date Ranges** - Creation, submission, or payment dates
Combine multiple filters to get exactly what you need. For example: "Show me all Blue Cross claims over \$500 that are ready for review."
### Save views for quick access
Once you've set up filters you use regularly, save them as views.
1. Apply your filters and column settings
2. Click **Save View** in the top right
3. Give it a descriptive name like "My High Value BCBS Claims"
Your saved views appear in the **Views** dropdown and persist across sessions. Each team member creates their own views based on how they work.
**Common views to start with:**
* Filter for claims assigned to you + status "Ready for Review" or "Approved"
* Filter for unassigned claims to pick up new work
* Filter for recent denials to work through corrections
### Assign claims to track ownership
Every claim should have an owner. This prevents duplicate work and ensures nothing falls through the cracks.
**To assign a claim to yourself:**
1. Find the claim in your list
2. Click the **Assigned To** dropdown
3. Select your name
The claim now appears in any "assigned to you" filtered views you've created.
**To assign multiple claims at once:**
1. Select the checkboxes next to multiple claims (or click the header checkbox to select all visible)
2. Click **Bulk Actions**
3. Choose **Assign** and select the team member
This is useful for distributing work across your team or picking up batches of unassigned claims.
***
## Review and Fix Claims
When you're ready to work on a claim, click it to open the encounter details. Most of your work happens on the **Content** tab.
### What to check on every claim
Before submitting, verify:
* **Patient demographics** - Name, DOB, address, insurance details
* **Date of service** - Correct and matches documentation
* **Provider information** - Correct provider and facility NPI
* **Diagnosis codes** - Support the procedures billed
* **Procedure codes** - Match services provided
* **Units and charges** - Accurate for the services
### Let AI help you catch errors
The system automatically validates every claim and helps you fix issues before submission.
**Sparkles (✨) show where AI improved your claim**
When you see sparkles next to a field, AI made a change to maximize reimbursement or ensure compliance. Common improvements:
* Corrected zip codes or addresses
* Added required modifiers to procedure codes
* Updated place of service codes
* Suggested better-matching diagnosis codes
Click the sparkle to see what changed and why. Accept if it makes sense, reject if it doesn't apply to this case.
**Error flags show what needs fixing**
Red or yellow flags indicate problems that will cause rejections:
* Missing required fields (DOB, insurance ID, provider NPI)
* Invalid diagnosis or procedure codes
* Conflicting information
Fix these immediately. The claim can't be submitted until all flags are resolved.
**Blocking rules prevent bad submissions**
If a critical issue will definitely cause denial, the system blocks submission entirely:
* Missing required information in critical fields
* CHC compliance violations (for federally qualified health centers)
* Known payer rejection patterns based on historical data
* Internal rules your organization has configured
You'll see a clear error message explaining what needs fixing. If you can't fix it immediately, assign it to someone who can.
### Preview before submitting
Click **Preview** to see exactly what will be sent to the payer. You can view it in standard format or PDF. This is your last chance to catch any issues before the claim goes out.
On the **Submissions** tab, you'll see "X rules applied" showing which billing rules were automatically applied to optimize your claim. Click to review the logic behind each rule.
### Get help when you need it
**Ask Athelas Assistant**
Click the **Athelas Assistant** button to ask questions about the claim. Examples:
* "Why would this diagnosis code be rejected?"
* "What's the correct way to code this for Blue Cross?"
* "Does this procedure require a modifier?"
Athelas Assistant understands the claim context and provides guidance on coding guidelines and payer rules.
**Collaborate with your team**
Some claims need input from others. Use the **Activity** section to:
* See all recent changes and who made them
* Add comments and @mention specific team members
* Reply to questions and document decisions
All communication stays with the claim, so context doesn't get lost.
***
## Submit with Confidence
Once you've fixed all errors, reviewed AI changes, and previewed the claim, you're ready to submit.
### Submit the claim
1. Click **Submit** at the top of the encounter details page
2. Review the confirmation dialog (payer, amount, procedures)
3. Click **Confirm Submission**
You'll see "Claim successfully submitted" and the status updates to **Submitted**.
**What happens next:**
* **1-3 days** - Payer acknowledges receipt
* **14-30 days** - Payer processes the claim
* **30-45 days** - You receive payment or denial
Return to your Claims Page and move to the next claim in your queue.
***
## Handle Denials
Denials happen. When they do, your goal is to understand why, fix the issue, and resubmit quickly.
### Find your denials
Filter by **Status: Denied** to see all rejected claims. Sort by:
* **Claim amount (highest first)** - Tackle high-dollar denials first
* **Denial date (oldest first)** - Avoid timely filing limits
* **Payer** - Spot patterns in rejection reasons
If you see the same denial reason across multiple claims from one payer, flag this pattern to your team lead.
### Fix and resubmit
1. Open the denied claim
2. Go to **Payment Overview** to see the denial code and reason
3. Check **Remittances** for the full ERA with additional details
4. Make corrections based on the denial reason
5. Document your changes in the Activity Feed
6. Resubmit following the same process
Common denial reasons and fixes:
* **Missing/invalid information** - Add missing demographics, insurance details, or authorization numbers
* **Coding errors** - Correct diagnosis or procedure codes, add required modifiers
* **Duplicate claim** - Verify if already paid or add note explaining it's not a duplicate
* **Medical necessity** - Add documentation or escalate to provider
* **Timely filing** - Document original submission date if submitted on time
**Note:** Timely filing deadlines are strict (typically 60-90 days from date of service). If you're approaching the deadline, prioritize that claim immediately.
***
## Understanding Claim Statuses
As claims move through your workflow, they'll have different statuses:
| Status | What It Means | What To Do |
| -------------------- | -------------------------------------- | -------------------------------- |
| **Draft** | Incomplete information | Complete missing fields |
| **Ready for Review** | Complete and waiting for biller review | Review for accuracy, fix errors |
| **Approved** | Reviewed and ready to submit | Final verification, then submit |
| **Submitted** | Sent to payer | Monitor for response |
| **Paid** | Payment received | Reconcile and close |
| **Denied** | Rejected by payer | Review reason, correct, resubmit |
***
### FAQ
Prioritize in this order:
1. **High-value claims nearing timely filing deadlines** - Sort by claim amount and age
2. **Claims from your top payers** - Where most of your revenue comes from
3. **Recent denials** - Still have time to correct and resubmit
4. **Older claims (10+ days)** - Prevent aging out
Create saved views for each priority level and switch between them as you work.
This happens. AI uses general rules but you have payer-specific knowledge.
1. Click the sparkle and select **Reject**
2. Make the correct change manually
3. Add a comment explaining why: "Rejected AI suggestion. This payer requires modifier XU per their 2024 policy."
If you see AI consistently wrong for a specific payer, report it to your team lead. Good billers reject 5-10% of AI suggestions based on their expertise.
No. Error flags indicate problems that will likely cause denials.
Fix all flags before submission. The extra 2-3 minutes now saves 20-30 minutes of denial rework later. If you can't fix a flag, assign the claim to someone who can.
Use the **Activity** section within the encounter details:
* Add comments to ask questions or flag issues
* @mention specific team members to notify them
* Review the change history to see what others have done
All communication stays with the claim so context doesn't get lost.
Yes. Click the **Columns** button at the top of the Claims Page to choose which fields to display. Your column preferences save with your custom views.
Common column setups:
* For submission work: Patient, DOS, Provider, Amount, Status, Assigned To
* For denials: Patient, Payer, Denial Reason, Denial Date, Amount
***
That's it. You now know how to find claims, review them efficiently, submit with confidence, and handle denials. Start by creating your first saved view and working through a few claims to get comfortable with the workflow.
# Getting started as a Healthcare Provider
Source: https://docs.athelas.com/insights_onboard/getting_started_as_a_healthcare_provider
Learn how to document patient encounters, record clinical notes, and complete chart notes efficiently using Insights
Welcome to Insights! This guide helps you master the essential workflows for documenting patient encounters and completing chart notes efficiently.
## What you'll accomplish
By the end of this guide, you'll know how to:
* Open chart notes from appointments or patient profiles
* Record patient conversations using Air Scribe
* Document clinical measurements, goals, and treatment plans
* Create and manage chart note templates
* Complete and submit chart notes for billing
## Understanding Chart Notes
Chart Notes are the core workflow for documenting patient encounters in Insights. Each chart note captures everything needed for clinical documentation and billing, including:
* **Plan of Care** - Treatment frequency, duration, and visit count
* **Measurements** - Clinical measurements and assessments
* **Goals** - Patient treatment objectives and outcomes
* **Treatments** - CPT codes and interventions
Chart Notes streamline your documentation workflow by organizing all encounter information in one place, reducing time spent on administrative tasks and ensuring complete documentation for billing.
## Prerequisites
Before you begin documenting encounters, ensure you have:
* Access to Insights
* An appointment scheduled or checked in for the patient
* A patient case assigned to the appointment (required for check-in)
* Patient insurance information available
## Open a Chart Note
You can access chart notes from two locations: appointments or patient profiles. Choose the method that fits your workflow.
### Open from an Appointment
Use this method when you're working directly with appointments in your calendar or schedule.
Check in the appointment to enable chart note access. You must complete this step before you can open the chart note.
A Case must be present before you can check in an appointment. If no case is assigned, you'll receive an error when attempting to check in. Add the relevant case via the dropdown menu or create a new case for the appointment.
Fill the following required fields before checking in:
* **Case** - Patient case associated with the appointment
* **Appointment Type** - Type of visit
* **Facility** - Location where the appointment takes place
* **Insurance** - Patient's insurance information
Click the box icon with an arrow in the top right corner to open the chart note.
The chart note opens and displays setup buttons for configuring your encounter structure.
### Open from Patient Profile
Use this method when you need to access a patient's chart note from their profile, useful for reviewing previous encounters or accessing notes for walk-in patients.
Click **Patients** in the left-hand menu and search for the patient by name.
The system automatically routes you to the Appointments page of the patient's profile.
* If the appointment is scheduled, click the checkmark to check in the patient
* If the appointment is already checked in, click the box icon with an arrow to open the chart note
The chart note opens and you can begin documenting the encounter.
When you first open a chart note, you'll see setup buttons that allow you to configure the base structure for your encounter.
## Record patient conversations with Air Scribe
Air Scribe automatically transcribes your patient conversations and populates the encounter note, saving you time on documentation while ensuring accuracy. Think of Air Scribe as a digital transcription assistant that listens to your conversations and converts them into structured clinical notes.
Click the **Athelas AI** button in the bottom right corner. A window opens with the option to **Start Recording**. Click it to activate Air Scribe.
The recording interface appears and Air Scribe is ready to capture your conversation.
Begin recording your conversation with the patient. While the Air Scribe widget is open, you can:
* Navigate to other EHR pages in Insights and continue recording in the background
* Click **Minimize** to minimize the widget while it continues recording
You cannot navigate to non-EHR pages while recording. End or cancel the recording first if you need to leave the EHR.
When you're ready to upload the recording, click **End Recording**.
The recording uploads successfully and processing begins.
After the recording uploads successfully, the system generates a scribe from your recording. This process takes some time. You can:
* Wait for processing to complete
* Close the window and continue with other tasks
Once processing completes, click **View Scribe** to review the generated outputs and add them to your chart note.
The scribe appears in your chart note with transcribed conversation content ready for review and editing.
## Add measurements to chart notes
Measurements capture clinical assessments and are organized by category for easy access. Adding measurements ensures your documentation includes all required clinical data and helps track patient progress over time.
### How measurements are organized
Clicking on measurements displays them in categorized order:
* **Grouped measurements** (e.g., LE Neuro Exam) appear together
* **Ungrouped measurements** (marked as "No Associated Group") appear at the bottom
* Click an individual measurement to add it to the chart note
* Click the **+** icon next to a group name to add all measurements within that group
You can view the history of measurements and pull data from previous chart notes if measurements exist for the patient. This saves time when documenting follow-up visits and helps you track changes over time.
## Set patient treatment goals
Goals track patient treatment objectives and outcomes, helping you monitor progress and document treatment plans effectively. Unlike measurements which capture current clinical status, goals define what you and the patient aim to achieve.
Click **+ Add Goal** in the Goals section. Alternatively, click the curled arrow icon to pull goals from the previous chart note.
A window opens where you can input goal information. Enter the details and click **Add Goal** at the bottom of the window.
The goal appears in the Goals section of your chart note.
Air Scribe can automatically detect goals from your transcription and extract values and specifications, reducing manual data entry.
## Create a Plan of Care
The Plan of Care defines treatment frequency, duration, and visit count for the patient, ensuring accurate documentation of the treatment plan. This differs from goals (which define objectives) and measurements (which capture current status) by specifying the treatment schedule and timeline.
### Plan of Care fields
When selecting Plan of Care, you'll be prompted to input:
* **Start Date** - When treatment begins
* **End Date** - When treatment concludes
* **Frequency + Units** - How often treatment occurs
* **Duration + Units** - Length of treatment period
* **Visit Count** - Total number of visits
You don't need to fill all fields manually. If you enter duration + units, frequency + units, and start date, the system auto-populates the end date and visit count. You can override these values if needed.
Click the curled arrow icon to pull Plan of Care data from the previous chart note, saving time on follow-up visits.
## Create Home Exercise Programs (HEP)
Create home exercise programs by selecting interventions marked as `HEP`. This feature helps you provide patients with clear exercise instructions they can reference at home, improving patient compliance and outcomes.
Click the checkbox for any intervention marked as `HEP`. This adds it to a staging area where you can prepare the Home Exercise Program.
Click the caret for HEP to open a dropdown where you can assign additional notes to the HEP section on a per-intervention basis.
Click **Preview and Send** to email, text, or print the PDF of the Home Exercise Program.
The patient receives the Home Exercise Program via their preferred method (email, text, or print).
## Document with templates
Templates are your primary tool for documenting information during patient encounters. They include SOAP notes, initial evaluations, and other specialized fields categorized under **Selected Sections**, helping you maintain consistent documentation standards. Unlike free-form notes, templates provide structure that ensures all required information is captured.
### Template features
Templates support Air Scribe input, allowing you to dictate directly into template fields, which speeds up documentation while maintaining structure.
### Clear template content
Click **Clear** in the top right corner of the template section to remove all information from the template.
A warning popup appears to confirm you want to delete the template contents. This prevents accidental data loss.
The template content is cleared and you can start fresh.
### Delete templates
Click the trash icon to delete the template entirely. This is useful if you no longer need the section or accidentally added a template.
A warning popup appears to confirm you want to delete the entire template.
The template is removed from your chart note.
## Track compliance with checkmarks
Compliance checkmarks track specific details that must be captured within the chart note, helping you ensure complete documentation. They can be configured for any template in Insights. Unlike templates which provide structure, compliance checkmarks verify that required information is actually filled in.
### How compliance checkmarks work
* **Grey checkmark** - The required detail has not been captured
* **Green checkmark** - The required detail has been captured
You can complete compliance checkmarks by either typing information directly or using Air Scribe.
## Add treatments and CPT codes
Select treatments according to their corresponding CPT codes to ensure accurate billing and documentation of services provided. Treatments differ from interventions (which are exercises or procedures) by being tied to specific billing codes.
### Treatment features
* **Add Interventions** - Specify exercises associated with the given treatment
* **Edit Billing** - Click **Edit** under the billing section to modify insurance priority and billing information
### Add co-signers
Navigate to the **Additional Providers** section and select providers from the dropdown menu to co-sign the note.
The provider is added to the co-signer list.
To fax the encounter to a referring provider for co-signature:
1. Select their name in the dropdown menu
2. Enter their fax number
3. Ensure the **Request Signature** checkbox is selected
The fax request is configured and ready to send.
### Send to individual fax number
Use this method when you need to send a chart note to a specific fax number that isn't associated with a provider in the system.
Select **Send to individual fax number** and enter the fax number.
Click **Send Fax** after entering the fax number.
The fax is sent successfully to the specified number.
## Sign and submit the chart note
Complete the encounter by signing the note and submitting it as a claim. This finalizes your documentation and initiates the billing process.
Sign the note under the **Notarize** section.
The note is signed and ready for submission.
Click **Submit** to close the encounter and submit it as a claim.
Your chart note is now complete and submitted. The encounter will be processed for billing.
## Troubleshooting
### Cannot check in appointment
**Problem:** You receive an error when trying to check in an appointment.
**Solution:** Ensure a Case is assigned to the appointment. If no case exists, add one via the dropdown menu or create a new case before checking in.
### Air Scribe not processing
**Problem:** The Air Scribe processing takes longer than expected or fails.
**Solution:**
* Ensure your internet connection is stable
* Check that the recording uploaded successfully
* If processing fails, try recording again
* Contact support if the issue persists
### Cannot submit chart note
**Problem:** The Submit button is disabled or you cannot submit the chart note.
**Solution:**
* Verify all required fields are completed
* Check that compliance checkmarks are green (if applicable)
* Ensure the note is signed
* Review any error messages displayed
### Measurements not appearing
**Problem:** Expected measurements don't appear in the measurements list.
**Solution:**
* Verify the measurements are configured for your practice
* Check that you're looking in the correct category
* Contact your administrator if measurements should be available but aren't showing
### FAQ
Opening from an appointment is faster when you're working directly with your schedule. Opening from a patient profile is better when you need to review previous encounters or access notes for walk-in patients who may not have scheduled appointments.
Once a chart note is submitted, it becomes a claim and cannot be edited directly. You may need to work with your billing team to make adjustments if changes are required.
Air Scribe processing typically takes 2-5 minutes, depending on the length of your recording. You can close the window and continue with other tasks while it processes in the background.
Goals define what you and the patient aim to achieve (future objectives), while measurements capture the patient's current clinical status (present assessments). Both are important for tracking progress.
Yes, templates support Air Scribe input, allowing you to dictate directly into template fields. This speeds up documentation while maintaining the structured format templates provide.
Compliance checkmarks help ensure complete documentation. If a checkmark remains grey, your chart note may be incomplete. Review the requirements and fill in the missing information before submitting.
Your chart note is ready to submit when:
* All required fields are completed
* Compliance checkmarks are green (if applicable)
* The note is signed
* You've reviewed all sections for accuracy
# Getting Started as a Staff Member
Source: https://docs.athelas.com/insights_onboard/getting_started_as_a_staff_member
Learn how to add patients, manage appointments, and use the calendar as a staff member in Insights
Welcome to Insights! This guide covers everything you need to know to get started as a staff member, including adding patients, managing appointments, and navigating the calendar.
## Adding a new patient
Click the button to add a new patient. A side panel opens where you enter general patient demographics information.
Fill in the following required fields:
* **Full Patient Name**
* First and Last Name
* Middle Name (if applicable)
* **Gender**
* **Date of Birth**
* **Contact Information**
* Home Address (Address Line(s), City, State, Post Code, and Country Code)
* Mailing Address (if different from Home Address)
* Phone Number
* Email Address
You can add insurance information, set up self-pay, or mark insurance as missing.
**To add insurance:**
1. Select an insurance company from the dropdown menu
2. Enter the following information:
* Policy Number
* Group Number
* Effective and expiration dates
* Guarantor (relationship to policy holder)
**If the relationship to policy holder is SELF:** Leave the guarantor field as is.
**If the relationship to policy holder is not SELF:** Click the guarantor box and enter the policy holder's information:
* First Name
* Last Name
* Email Address
* Phone Number
* Date of Birth
* Gender
* Home Address (Address Line(s), City, State, Postal Code, and Country Code)
Click the "+" button to add additional insurance policies.
When you add a worker's compensation insurance company, the payer type automatically changes to Worker's Compensation. You can also manually override the payer type to Worker's Compensation.
The following additional fields populate when you select a worker's compensation insurance company:
* Accident Date
* Claim Number
Fill out these fields with your patient's information.
**To add Self-Pay:** Type "Self Pay" in the Insurance Company field. Upon selection, the insurance details disappear and only "Self-Pay (No Insurance)" remains.
**To mark insurance as missing:** Type "Missing Insurance" in the Insurance Company field. Upon selection, the insurance details disappear and only "Missing Insurance" remains.
After entering all required and desired fields, click "Create" at the bottom of the panel.
## Adding cases, prior authorizations, and referring providers
After creating a patient, you can add prior authorizations, set insurance priority, create cases, and add referring providers.
Search for your patient and open their patient demographics page.
Click "Create" under the Cases section. You can select insurance priority and enter the following fields:
* Case Name
* Referring Provider
* Case Notes
Scroll down to the Prior Authorization section and click "+ New Prior Auth". A window opens in the middle of your screen where you can enter:
* Auth Number
* Total Number of Visits
* Effective Date
* Expiration Date
* Insurance this Prior Auth is tied to
Click "Create" after entering all desired information.
The Attachments tab contains all attachments related to the patient. Intake forms automatically appear here, along with any uploaded scripts from chart notes.
## Calendar walkthrough
The calendar provides a quick overview of your day at a glance, helping you spend less time deciphering schedules and more time assisting patients.
### Accessing and filtering the calendar
Click "Calendar" in the left-hand menu. To populate the calendar with information, click the filters icon in the top right corner.
A side panel opens on the right with filter options. You can filter by:
* Provider
* Facility
* Appointment Type
* Insurance
* Patient
You can select multiple providers and facilities to display on the calendar view.
### Understanding schedule blocks
Each schedule block displays the following information:
* Case
* Eligibility status
* Payment Status
* Appointment status
**Hover actions:** When you hover over a calendar block, a popup appears with actions you can take:
* Edit the appointment
* Re-run eligibility
* Update appointment status (if not checked in)
* Add Prior Auth information
* Schedule future appointments
* Open the chart note
**Click actions:** Click a schedule block to open a side menu with appointment details, including:
* General patient demographics
* Appointment Status
* Eligibility
* Patient Balances
* Referring Provider
* Reminders/Forms
* Check-In Status
* Prior Authorization for the patient's Primary Insurance
* Chart Note Status
* Appointment Type
* Provider
* Appointment Date and Time
* Facility
* Summary of the previous appointment
**Edit appointment:** Click the pencil icon at the top of the Appointment Detail side menu to edit appointment details.
**Additional actions:** Click the three vertical dots next to the appointment edit icon to:
* Add a follow-up appointment
* Check-In and Undo Check-In
* Cancel the appointment (you'll be prompted to enter a cancellation reason)
* Mark the appointment as No Show
* View the patient's entire schedule
## Creating appointments
You can create appointments using multiple methods. All methods open the same appointment creation side panel.
### Method 1: From the calendar header
Navigate to the calendar and click the "+ Create New" button in the top right corner of the screen.
### Method 2: From an empty calendar slot
Click any empty space in the calendar to create an appointment at that time.
### Method 3: From patient appointments
Navigate to **Patients** and search for your patient's name. Click on "Appointments" after entering the patient's demographics. Click "+ New Appointment" or "Book Appointment" in the top right corner.
### Filling out appointment details
Regardless of which method you use, clicking "+ New Appointment" opens a side panel where you enter appointment information.
**Required fields:**
* Appointment Date
* Appointment Time
* Provider (Rendering)
* Patient
* Case
* Appointment Type
* Facility
* Format
**Optional fields:**
* Referring Provider
* Insurance priority for the appointment (you can sync this permanently to the case)
* Prior authorizations per insurance
**Adding a referring provider:** The system uses the NPI registry to find and add referring providers. Type their NPI number into the search field and their information populates automatically.
Click "Create" at the bottom of the side panel to create the appointment.
## Faxing
You can bulk fax and download PDFs from the appointments table. All completed appointments have a checkbox next to them. You can:
* Check the box at the top of the appointments table to select all
* Uncheck any appointments you don't want to download or fax
* Check individual boxes next to specific appointments you want to download or fax
### Using the dedicated faxing page
While you can fax through the patient profile, there's also a dedicated faxing page for sending and receiving faxes. To access it:
1. Click **Utilities** in the left-hand menu
2. Select the **Faxing** section
### FAQ
Click the "+" button next to the insurance section to add additional insurance policies. You can add as many as needed for each patient.
You need the NPI number to search for referring providers in the system. If you don't have it, you can look it up on the [NPI Registry](https://npiregistry.cms.hhs.gov/) website before adding the referring provider.
Yes. Click on the appointment in the calendar, then click the pencil icon in the Appointment Detail side menu to edit the appointment details.
When you mark an appointment as No Show, it updates the appointment status. You can still view the appointment details and take other actions like rescheduling or adding notes.
Click the filters icon in the top right corner of the calendar, then select the providers you want to view. You can select multiple providers and facilities at once.
Intake forms automatically appear in the patient's Attachments tab. You can access this tab from the patient demographics page.
# Getting Started as an Owner/Administrator
Source: https://docs.athelas.com/insights_onboard/getting_started_as_an_owneradministrator
Learn how to configure your practice preferences, set up providers, and manage essential settings in Insights
Welcome to Insights! This guide walks you through configuring your practice preferences and essential settings to get your practice up and running.
## Configure practice preferences
Set up your practice's preferences through each setting under the **Preferences** tab. These settings control how your practice operates and how your team interacts with the platform.
### General
Configure general practice settings that affect how modifiers, justifications, alerts, and calculations appear throughout the platform.
* Show or hide modifiers in various views
* Enable or disable justifications
* Configure alert settings
* Allow manual calculations
* Enable provider editing permissions
### Calendar
Configure your calendar settings to match your practice's scheduling needs. Set the duration of each time block and define start and end times based on site or facility.
### Waitlist
Control how patients can schedule appointments:
* Allow patients to join a waitlist for appointments
* Enable direct scheduling without waitlist
### Portal Configs
Define scheduling rules for your patient portal. Configure how far in advance patients can schedule appointments.
### Chart Note
Set up restrictions for chart note signing based on specific criteria:
* Configure visit limits that must be met before signing
* Enable template validation requirements
* Set other criteria that must be satisfied before chart notes can be signed
### Appointment Types
Create different appointment types to organize your calendar. For each appointment type, you can configure:
* Duration
* Color coding on your calendar
* Other appointment-specific settings
### Measurements
Create custom measurements that your practice tracks for patients. These measurements can be used in chart notes and patient records.
### Medications
Nominate providers who are authorized to prescribe uncontrolled substances. This setting ensures only qualified providers can prescribe certain medications.
### Provider
Set up provider credentials and schedules. Configure each provider's:
* Credentials and certifications
* Schedule availability
* Site assignments
### Insurance
Add insurance plans that your practice accepts. This ensures proper billing and claim submission.
### AI
Configure Air Scribe settings for chart note documentation. Set up dot phrases that Air Scribe uses when documenting within chart notes.
### ICD10
Select the ICD10 code groups you want to use for your practice. This determines which diagnosis codes are available when creating chart notes and submitting claims.
### Text Snippets
Text snippets serve as reusable templates or pre-written text blocks that providers can quickly insert into their documentation. Create and manage text snippets to standardize documentation across your practice.
### Rooms
Create dedicated spaces for different types of patient encounters or clinical activities. Rooms help you separate different aspects of your practice, such as:
* Routine visits
* Urgent care
* Telehealth appointments
### Reporting
Calculate reports to provide bonuses to your staff. Configure reporting settings that track performance metrics and calculate compensation.
## Monitor practice performance
Check important KPIs that pull from Air on the **Performance Analysis** tab. This tab shows high-level data on clinical outcomes and practice health, helping you track your practice's performance over time.
### FAQ
Navigate to the main menu and select **Preferences**. This tab contains all the settings you need to configure your practice.
Yes, you can modify any preference settings at any time. Changes take effect immediately and apply to future encounters and workflows.
Most preference changes only affect new data created after the change. Some settings, such as calendar configurations, may affect how existing appointments are displayed.
Use the **Provider** section under Preferences to add each provider. Configure their credentials, schedules, and site assignments individually.
The Performance Analysis tab provides an overview of your practice's key performance indicators, including clinical outcomes and practice health metrics. Access it from the main navigation menu.
# Getting Started as a Biller: Errors, Rejections & Denials
Source: https://docs.athelas.com/insights_onboard/getting_started_as_biller_errors_rejections_and_denials
This guide outlines the core RCM workflow pages in Insights, how they differ, and when to use each. While all of these pages relate to claims that require attention, they represent different stages in the claim lifecycle—from data entering the system to the payer’s final decision.
For a hands-on walkthrough of the Claims Page, see [**Getting Started as a Biller**](/insights_onboard/getting_started_as_a_biller) and the [**Claim Details Page**](/insights_biller/claim_details/claim_details_page).
## Claims Page
The **Claims Page** is the primary workspace for billers to interact with individual claims. It consolidates encounter data, claim metadata, rule outcomes, submission history, and payer responses in one place.
**When to use:**
* Reviewing claim-level details end to end
* Validating rule outcomes and submission history
* Training on how claims move from creation → submission → payer response
### Find What You Need to Work On
The Claims Page shows you all encounters in your system. With thousands of claims, the key is filtering down to exactly what you need.
**Use filters to focus your work**
Click **Filter** at the top of the page to narrow down your list. You can filter by:
* **Claim Status** — What needs to happen next on the claim, such as **Unsubmitted**, **Submission Errors**, **Rejections**, or **Full Denials**
* **Assignment** — Claims assigned to you, others, or unassigned
* **Insurance Provider** — Specific payers
* **Claim Amount** — Dollar value ranges
* **Age** — How long the claim has been in the system
* **Date Ranges** — Creation, submission, or payment dates
Combine multiple filters to get exactly what you need. For example: "Show me all Blue Cross claims over \$500 that need initial review."
### Understanding Claim Statuses
Three fields describe where a claim is and what it needs:
* **Status** — what needs to happen next on the claim, and whether it needs action.
* **Stage** — which party holds the balance right now: a payer or the patient.
* **Payer status** — where the claim stands with one specific payer.
For every value these three fields can take, and which statuses you can act on, see [**Claim Status, Stage & Payer Status**](/insights_biller/claim_details/status_and_stages).
## Open Encounters
An **open encounter** is a claim that has been stopped for site review before going through the submission funnel. It remains in an "open" status until you review it; after review, it can be submitted or corrected.
**How to view Open Encounters:**
1. Log in to Insights.
2. Navigate to the **Claims** page.
3. Open **Filter** and set:
* **Working Status:** Open
* **Service Date Range:** Your go-live or backfill date (as needed)
4. Scroll to the **Tags** column to see which rule stopped this encounter from closing.
5. Click into the encounter, review based on the tag, and make any changes.
6. Click **Submit** at the top right when ready.
You can save these filters as a view: set your filters, then click **Save** in the top right.
## Action Items: The Four Types
Claims that need attention appear in different places depending on **where** in the lifecycle the issue occurred. The table below summarizes the four types.
These four types are claim **Statuses**, not **Stages** — a claim's stage names the payer or the patient who holds the balance. Denials covers two statuses, **Full Denials** and **Partial Denials**. See [**Claim Status, Stage & Payer Status**](/insights_biller/claim_details/status_and_stages) for both value lists.
| **Action Item Type** | **Origin** | **Where It Occurs** | **Has Claim Been Submitted?** |
| :-------------------- | :---------------------- | :-------------------- | :---------------------------- |
| **Import Errors** | EHR → Insights | Between systems | No |
| **Submission Errors** | Insights | Internal rules engine | No |
| **Rejections** | Clearinghouse / Gateway | Post-submission | Yes (not adjudicated) |
| **Denials** | Payer | Post-adjudication | Yes |
All Import Errors, Submission Errors, Rejections, and Denials are initially assigned to **Athelas Responsibility**. The Athelas team works to resolve these and submit or resubmit the claim when possible.
If your team must provide additional information or take action, the claim is moved to the **More Information Required** bucket. You are responsible for monitoring and managing this bucket across the Import Errors, Submission Errors, Rejections, and Denials tabs.
Timely and consistent management of More Information Required is critical for claim turnaround and the efficiency of your practice’s RCM operations.
## Import Errors
**Definition:** An **Import Error** occurs when encounter or claim-related data fails to fully move from the EHR into Insights. These errors happen before a claim is created or sent to the clearinghouse.
**How to view Import Errors:**
1. Log in to Insights.
2. Navigate to **Action Items** > **Import Errors**.
### Import Errors: Common Causes
Import errors typically happen when:
* **Missing key details** — A patient or encounter is missing essential information.
* **New entities not yet added** — A new provider was added in your EHR but not yet in Insights.
* **Missing insurance information** — A patient is missing their insurance member ID.
* **Unrecognized codes** — An encounter uses a custom CPT code that Insights does not recognize.
* **Potential duplicates** — A patient appears to be a duplicate, and Insights pauses import for investigation.
### How Import Errors Work
* **Detection** — When data cannot be properly imported, it is flagged as an import error.
* **Categorization** — Errors are grouped by type (e.g., "Invalid place of service code").
* **Prioritization** — The dashboard shows errors by total value and number of affected claims.
* **Resolution** — Some errors are resolved by the Athelas Ops team; others require action from your team.
### Resolving Import Errors
You can address import errors by:
* **Updating your EHR** — Fix missing or incorrect data in your EHR so it can flow into Insights.
* **Using the Import feature** — Click the blue **Import** button to open the encounter creation flow and correct data directly in Insights.
* **Working with Athelas** — Contact your Athelas representative for new providers/facilities or to create import rules.
Review import errors weekly to catch issues early. Notify Athelas when adding new providers or facilities. Most errors are simple missing fields that can be fixed in your EHR; the corrected data will flow into Insights during the next overnight import.
**Note:** The goal is to work toward zero outstanding import errors so all eligible encounters are captured for claim submission.
## Submission Errors
**Definition:** A **Submission Error** occurs when a claim is prevented from leaving Insights and transmitting successfully to the clearinghouse or payer. These errors may be triggered by system validation failures or configured blocking rules that stop the claim before submission.
Common causes include:
* Missing modifiers on procedure codes
* Incorrect diagnosis codes (ICD-10)
* Invalid addresses
* Clearinghouse rule violations
* Incorrect CPT codes
* Typos in patient, billing, or provider information
* Missing required fields (e.g., DOB, insurance ID, provider NPI)
* Invalid characters in the claim data
* Incorrect insurance information
These claims are **pre-submission** and fully controllable within Insights.
**How to view Submission Errors:**
1. Log in to Insights.
2. Navigate to **Action Items** > **Submission Errors**.
### Types of Submission Errors
Claims are organized into these buckets:
* **More Info Required (Site Responsibility)** — Claims that require information only your practice can provide. These need timely action from your staff and are the most actionable category.
* **Athelas Responsibility** — Claims where Athelas already has what’s needed to fix and resubmit. Athelas will correct and resubmit these automatically.
* **Not Workable** — Claims deemed unworkable (e.g., duplicates, claims already submitted elsewhere, or regrettable cases such as missed deadlines).
* **Written Off** — Claims your team has marked as irretrievable loss; no further action will be pursued.
### How to Resolve Submission Errors
Your responsibility is to work through the queue under **More Information Required**, which uses sub-statuses to track progress:
* **Not Started** — No action taken yet.
* **Updated in EHR** — Corrections made in the EHR, waiting for overnight import.
* **Blocked** — Contact Athelas for resolution. This status can sometimes be used as a hold; consult your Athelas representative for workflows.
**To resolve a claim:**
1. View the list of claims under **Not Started**.
2. Expand the error by clicking the **>** next to the error **Status**.
3. View all claims with that error status and message. Select a claim, then click **Actions** to see available steps.
4. Based on what you do, mark the claim as:
* **Updated in EHR** — You fixed data in the EHR; Athelas will pull the update and submit.
* **Mark as Blocked** — You need help from Athelas.
* **Move to Not Workable** — The claim cannot be worked (technical or regrettable reasons).
* **Write Off Claim** — You do not want to pursue the claim.
**Note:** Claims may move back and forth between More Information Required and Athelas Responsibility if more information is needed after a claim has been moved to the review queue.
## Rejections
**Definition:** A **Rejection** occurs when a claim is returned by the clearinghouse or payer gateway due to formatting, compliance, or eligibility issues. The claim is never accepted for adjudication. These are not payer decisions—they are technical or validation failures after the claim was submitted.
A rejected claim is effectively invisible to the insurance company because it was never accepted into their system. This creates significant risk for timely filing. Rejections should be reviewed and resolved promptly.
Rejections are reviewed and managed on the **Rejections** page under **Action Items**.
### Rejection Buckets
On the Rejections page, claims are organized into:
| **Bucket** | **Meaning** |
| :------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **More Info Required** | Your practice needs to provide additional information or make corrections. Action is needed from your team before the claim can be resubmitted. |
| **Athelas Responsibility** | Athelas is actively working on the claims. No action is required from your practice; Athelas has what’s needed to resolve and resubmit (e.g., within about 15 days). |
| **Not Workable** | Claims unworkable due to technicalities (e.g., duplicates, already processed elsewhere) or regrettable cases (e.g., missed deadlines). |
| **Written Off** | Your practice has decided to abandon collection; no further action will be taken. |
For claims in **More Info Required**, you’ll see sub-groups: **Not Started**, **Updated in EHR**, **Blocked**, and **All**.
* **Not Started** — Rejected claims that require action from your practice but haven’t been worked yet.
* **Updated in EHR** — Your staff made corrections in the EHR and marked them "Updated in EHR." You should actually update the claim in the EHR before marking this status. Once marked, Athelas will pull corrections and resubmit within about 24 hours.
* **Blocked** — Your practice has indicated it cannot fix the rejection and needs help from Athelas. Contact your Athelas representative for workflows.
**Not Workable** means the claim cannot be fixed due to technical or timing issues. **Written Off** is a business decision by your practice to stop pursuing payment.
To handle a rejected claim you can: view rejection details in the **Reasoning** column or Encounter Timeline; resubmit a single claim via **Actions** > **Edit Claim Form & Resubmit**; or update information in your EHR, then in Insights select **Updated in EHR** so Athelas can re-extract and resubmit.
For step-by-step resubmission, see [**Getting Started with the Claims Page**](/insights_biller/claim_details/claim_details_page) for a single claim, or [**How to resubmit claims in bulk**](/insights_biller/claim_details/how_to_resubmit_claims_in_bulk) for many at once.
## Denials
**Definition:** A **Denial** is a formal decision from the payer after the claim has been received and adjudicated. The payer has reviewed the claim and decided that payment will not be made (in full or in part). The Denials Worklist is designed to point you at the most impactful denials to work.
For analytics and trends, see the [**Denials Analysis**](/insights_biller/analytics/the_denials_analysis_page) page.
On the **Denials Worklist** (under **Action Items**), denied claims appear in these buckets:
| **Bucket** | **Meaning** |
| :------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Site Action Required** | Your top priority—denials that need immediate attention from your practice. Your team must make updates in the EHR; after corrections, mark as "Updated in EHR" and claims move to Athelas Responsibility and are resubmitted within about 24 hours. |
| **Athelas Responsibility** | No action required from you; Athelas handles these. Claims you’ve marked "Updated in EHR" also move here. You can review if you want, but Athelas has them queued. |
| **Not Workable** | No available actions will lead to approval (e.g., duplicates, timely filing missed, already processed elsewhere). Review and write off; these are categorized as Unavoidable (technical) or Regrettable (could have been salvaged). |
Within **Site Action Required**, you’ll see:
* **Not Started** — New denials that need your attention; review and determine corrections.
* **Awaiting EHR Updates** — Your staff has indicated corrections were made in the EHR but haven’t yet been marked "Updated in EHR" in Insights. Once Insights imports the data, these will be resubmitted and drop off the denials dashboard.
* **Blocked** — Your team needs help from Athelas to resolve the denial. Use this when you’re stuck and cannot determine the solution.
Check the denials worklist daily, focus on **Site Action Required** first, and periodically review **Not Workable** to either write them off or take one final attempt at correction. When reviewing, start with older dates of service to avoid timely filing issues, and consider sorting by highest denied balances for the largest revenue impact.
### FAQ
**Import and Submission Errors** happen before a claim is successfully sent to the payer: import errors between your EHR and Insights, submission errors inside Insights (validation or blocking rules). **Rejections** happen after you submit—the clearinghouse or gateway returns the claim for technical/format/eligibility reasons, so the payer never adjudicates it. **Denials** happen after the payer has received and adjudicated the claim and decided not to pay (in full or in part).
Claims in **More Information Required** need something only your practice can provide—for example, a correction in the EHR, updated insurance information, or documentation. You are responsible for monitoring this bucket across Import Errors, Submission Errors, Rejections, and Denials. Timely management is critical for claim turnaround.
Claims are only categorized as Unavoidable vs Regrettable after a **denial**, not a rejection. You’ll see those subcategories on the Denials page when a claim has been denied and placed in Not Workable.
**Not Workable** means the claim cannot be successfully fixed or resubmitted due to technical or timing issues (e.g., duplicate, missed timely filing). **Written Off** is a business decision by your practice to stop pursuing payment from the payer or patient. Both mean no further collection action, but the reason differs.
From the Rejections or Denials worklist, open the claim and use **Actions** to edit and resubmit. For one claim, see [**Getting Started with the Claims Page**](/insights_biller/claim_details/claim_details_page). For many at once, use [**How to resubmit claims in bulk**](/insights_biller/claim_details/how_to_resubmit_claims_in_bulk).
# Additional Context Feature
Source: https://docs.athelas.com/insights_provider/ai_scribe_and_tooling/additional_context_feature
#### Overview
The **Additional Context** feature allows healthcare providers to enhance AI-generated documentation by adding supplementary information to scribe notes.
You can provide context in two ways:
* **Audio Recording** – Capture additional conversation or dictate details
* **Text Input** – Type additional context or patient details
Adding context helps improve the **accuracy and completeness** of documentation.
#### Accessing the Additional Context Feature
##### Location
The feature is available on the **Completed Scribe Page** after a scribe session is completed.
##### How to Use
* Navigate to a completed scribe session
* Click on the new **“Transcription & Context”** Tab
* Click **“Add Context”**
* The **Additional Context dialog** will open
* Add context via text or audio (*click the drop-downs below* **↓** for specific details on both methods)
* Click regenerate scribe after adding all relevant context
#### Using Audio Mode 🎙️
##### When to Use
Use audio when you want to:
* Capture additional patient conversation (such as a multi-part appointment)
* Capture lab or test results after the initial recording
* Longer additions
* Add context while multitasking
##### Steps to Use
* **Click the "Add Context" button**
* “By Audio” is selected by default
* **Start Recording**
* Click **“Record Audio”**
* Grant microphone permissions if prompted
* Recording begins immediately
* **End Recording**
* Click **“End Recording”**
* Audio uploads automatically
* Upload progress bar shows percentage
* **Completion**
* Success notification appears
* Dialog closes automatically
* Audio context begins processing
##### Recording Controls
* **End Recording** → Saves and uploads
* **Cancel & Discard** → Stops recording without saving
##### Tips For Audio Recording
* Record in a quiet environment
* Use a good quality microphone
* Check the mic level indicator
* Speak clearly and at a moderate pace
#### Using Text Mode 💬
##### When to Use
Use text input for:
* Specific patient details
* Structured or concise information
* Quick additions
##### Steps to Use
* **Click the "Add Context" button**
* **Switch to Text Mode**
* Click **“By Text”**
* **Enter Context**
* Type additional information (max 2,000 characters)
* **Submit Context**
* Click **“Add Context”**
* Context is added
* Dialog closes automatically
##### Tips For Text Input
* Be clear and concise
* Organize logically
* Include relevant terminology
* Use abbreviations when appropriate
* Monitor character counter
#### Troubleshooting
##### Audio Recording Issues 🎙️
* **Problem:** "Failed to start recording"
**Solution:** Check browser microphone permissions
* Click the lock icon in your browser
* Allow microphone access
* Refresh the page and try again
* **Problem:** Low audio levels
**Solution:**
* Check microphone connection
* Adjust input settings
* Ensure correct microphone is selected
* **Problem:** Upload fails
**Solution:**
* Check your internet connection
* Retry recording
* Contact support if issue persists
##### Text Input Issues 💬
* **Problem:** "Add Context" button disabled
**Solution:**
* Type at least one character (not just spaces)
* **Problem:** Reached character limit
**Solution:**
* Remove unnecessary text
* Or submit current entry and start a new one
#### What Happens Next ⏭️
* Click **“Regenerate Scribe”**
* The AI processes a new scribe with your existing transcript along with your additional context
* Check the **“Scribe Notes”** tab to see your scribe progress
* Updated scribe appears with new context applied
#### Multiple Context Entries 📚
* You can add multiple entries (audio or text)
* All added context is used during regeneration
#### Reminders❕
* **Be Specific** — Include precise missed details
* **Ensure Completeness** — Add all info before regenerating
* **Review Before Regenerating**
* **Prioritize Quality** — Relevant and accurate over length
If issues persist:
* Contact your **system administrator**
* Submit a **support ticket**
* Report **bugs or feature requests** to the dev team
# Complete a Visit with Air Scribe
Source: https://docs.athelas.com/insights_provider/ai_scribe_and_tooling/complete_a_visit_with_air_scribe
Air Scribe is a powerful tool which will allow the conversation with your patient to be auto-populated into the encounter based on what was said.
Click the bottom right “Athelas AI” button - a window will open up with the option to “Start Recording”, click this to activate Air Scribe.
Record your conversation. While the Air Scribe widget is open, you can navigate to other Insights pages and continue to record in the background. However, you will not be able to navigate to pages outside of Insights unless you end/cancel the recording. You can click “Minimize” to minimize the widget. It will continue to record in the background while minimized.
When you’re ready to upload the recording, click “End Recording”.
* After the recording is successfully uploaded, it will take some time for the backend to generate a scribe from your recording. At this point, you are free to wait for generating to finish, or close the window and do something else.
Once generating completes, click “View Scribe” to view generated outputs.
# Edit with Command+K
Source: https://docs.athelas.com/insights_provider/ai_scribe_and_tooling/edit_with_commandk
Command+K is a useful feature aimed at helping you quickly rewrite sections of the chart note.
You will be able to split sections into bullet points, summarize sections to make them more succinct, or change the tone of text (eg, narrative) through this quick toggle.
**Important:** Command+K only works in text sections of the chart note
##### Usage
To start, follow the steps below:
* Navigate to a patient chart note
* Highlight the **selection of text** that you wish to edit
* A black button will appear with the text “Cmd + K AI Edit”
* Use Command+K (keyboard) OR click the button that appears to toggle the Command+K modal
* This will open a modal from which you can type instructions for our AI to rephrase the selection of text
* We have also provided a list of quick options for the most common corrections
* Type your instructions
* Press generate to generate the edits
* The edits will appear for you to review
* The old text will appear in **red**
* The new text will appear in **green**
* Click **“apply edits”** to apply the edits
* The edits will directly apply to the selection and you will see them immediately reflect in the chart note
# How to Apply an Air Scribe
Source: https://docs.athelas.com/insights_provider/ai_scribe_and_tooling/how_to_apply_an_air_scribe
Preview an Air Scribe output, choose which sections to apply, and regenerate or rerecord a note.
The Scribe Application Page allows you to preview and select which generated outputs to apply to the patient chart note.
**Prerequisite:** Generate an Air Scribe for an appointment before you apply its output.
Here’s a breakdown of this page:
* Clicking the Patient Name at the top will redirect you to the appointment details page for that patient. If you’re already on the appointment detail page, this link will not do anything.
* The tab menu allows you to easily scroll to a specific section that was generated by Air Scribe
* Each section generated by Air Scribe has a checkbox that allows you to select whether or not to apply that section’s outputs to the patient chart note. For **Flowsheet**, **Services**, or **Treatments**, the initial selections follow the appointment type's **Is Checked for Scribe** setting. When this setting is on, all available service codes are selected. When it is off or not configured, no service codes are selected. Use the section checkbox to select or clear all service codes, and review every section before applying the Scribe.
Most sections allow you preview their outputs, such as in the Daily SOAP Note example below. Most simple text outputs can be copied to clipboard using the “Copy” button.
* After you have unchecked all the sections you do not want to apply, click “Apply Scribe” to apply all checked sections to the patient’s chart note. The application process should be quick, but it may take some time to refresh the page. If you notice it taking too long to refresh, you can manually refresh by clicking the refresh button in your web browser.
* Additional actions are available in the “More Actions” button menu:
* **Record Again** - Allows you to start a new recording for the same appointment. NOTE: The previous scribe will be lost when a new recording is uploaded for the same appointment.
* **Regenerate** - Allows you to regenerate the scribe using the same audio recording and the latest sections in the patient chart.
#### Re-Record a Scribe
If you would like record again for an appointment that already has a scribe, follow the steps below:
* When the widget opens, you should see the scribe outputs from the previous recording. At the bottom, click “More Actions”:
* Click “Record Again” and can now start recording again
#### Regenerate a Scribe
If you add sections to a patient chart note after a recording is already uploaded, you will need to regenerate the scribe for those newly added sections. Regeneration is only available after the initial scribe for that appointment has been generated.
* Click the blue button in the bottom-right corner of the screen to show the new Air Scribe widget
* When the widget opens, you should see the scribe outputs from the previous recording. At the bottom, click “More Actions”:
* Click “Regenerate”
# How to Set up AI Compliance
Source: https://docs.athelas.com/insights_provider/ai_scribe_and_tooling/how_to_set_up_ai_compliance
Compliance checkmarks are a feature within Insights that can be configured for any template. They are used to track specific details that should be captured within the chart note. If the detail is not captured, the compliance checkmark will be a grey color. If it is the icon will turn green. You have the ability to either type in this information or utilize scribe.
#### How to Add Compliance Check Marks
Compliance check marks are created during the custom template creation process. For "Paragraph Answer" type template components, you're able to add the Question Trait, Prompt, and which notes types the compliance check mark will be applied to
#### Check Mark Prompting Quick Tips
Compliance checks confirm whether required details are in your clinical note. Write each prompt so it can be answered **Yes (True)** or **No (False)**.
**Tips**
* Be specific: Name the exact info to look for.
* Good: "Does the note list blood pressure and heart rate?"
* Poor: "Did you record vitals?"
* **Use clinical language:** Match your documentation style.
* Good: "Is a follow-up plan documented in the Plan section?"
* **One item per prompt:** Split multiple checks into separate prompts.
* **Keep it yes/no:** Avoid open-ended questions.
**Examples**
* "Is the patient’s chief complaint documented?"
* "Are range-of-motion measurements included?"
* "Is a diagnosis listed in the Assessment section?"
* "Are follow-up instructions included?"
# AI Appointment Summaries
Source: https://docs.athelas.com/insights_provider/chart_notes/ai_appt_summaries
Insights automatically generates an **AI Appointment Summary** at the top of each chart note section, so you can review a patient's history without opening every prior note.
## Where to find them
Open a patient's chart note. At the top of each section, you'll see a **Previous Appointment Summary** generated from the patient's earlier encounters.
## What they include
* A concise, section-specific recap drawn from **all previous patient encounters**.
* Context relevant to the current section, so each summary reflects what was documented before.
✨**Smart Tip:** Skim the summary before you start documenting so today's note builds on the patient's history.
# Auto-apply KX Modifier
Source: https://docs.athelas.com/insights_provider/chart_notes/auto_apply_kx_modifier
#### Overview
The KX HCPCS modifier signals that “requirements specified in the medical policy have been met” and that services are medically necessary beyond a payer’s threshold (most commonly Medicare outpatient therapy thresholds for PT/OT/SLP). It attests that supporting documentation exists in the medical record. (Sources: [APTA](https://www.apta.org/your-practice/payment/medicare-payment/coding-billing/therapy-cap), [NGS Medicare](https://www.ngsmedicare.com/web/ngs/physical-therapy/occupational-therapy/speech-therapy?selectedArticleId=305496))
#### Why we need it
* Compliance: Medicare requires KX on claim lines once the beneficiary’s annual therapy threshold is exceeded (PT+SLP combined, and OT separately). Without KX, claims at/above the threshold can be denied.
* Payment continuity: KX allows medically necessary therapy to continue beyond the threshold, with the understanding those services may be subject to targeted medical review (generally over \$3,000).
#### Types of Thresholds for Medicare
**PT/SLP vs OT Medicare threshold remaining**
* PT/SLP and OT are tracked in two separate “buckets” each calendar year. For CY2026 the thresholds are (indexed annually to the Medicare Economic Index):
* PT + SLP combined: \$2,480
* OT: \$2,480
* Deductible and coinsurance count toward these amounts.
* “Threshold remaining” = threshold amount − total allowed therapy spend to date in that bucket (per calendar year)
#### CPT Codes that require a KX Modifier
**Physical & Occupational Therapy**
| CPT Code | Description |
| --------- | -------------------------------------------------------------------------------------------- |
| **97110** | Therapeutic exercise (per 15 min) |
| **97112** | Neuromuscular reeducation |
| **97116** | Gait training therapy |
| **97140** | Manual therapy techniques |
| **97530** | Therapeutic activities |
| **97535** | Self-care/home management training |
| **97542** | Wheelchair management training |
| **97750** | Physical performance test or measurement |
| **97760** | Orthotic fitting and training |
| **97761** | Prosthetic training |
| **97763** | Orthotic/prosthetic management & training (follow-up) |
| **97150** | Group therapeutic procedures (must document medical necessity individually for each patient) |
| **97597** | Selective debridement (when part of therapy plan) |
**Speech-Language Pathology (SLP)**
| CPT Code | Description |
| --------- | --------------------------------------------------- |
| **92507** | Treatment of speech, language, voice, communication |
| **92508** | Group speech therapy |
| **92526** | Treatment of swallowing dysfunction |
| **92609** | Therapeutic use of speech-generating device |
**Common Occupational Therapy CPT Codes That Require the KX Modifier (when over threshold)**
| CPT Code | Description |
| --------- | ------------------------------------------------- |
| **97110** | Therapeutic exercise |
| **97112** | Neuromuscular re-education |
| **97116** | Gait training therapy |
| **97150** | Group therapy |
| **97140** | Manual therapy |
| **97530** | Therapeutic activities (e.g., reaching, grasping) |
| **97535** | Self-care/home management training |
| **97537** | Community/work reintegration training |
| **97542** | Wheelchair management training |
| **97750** | Physical performance test |
| **97755** | Assistive technology assessment |
| **97760** | Orthotic training |
| **97761** | Prosthetic training |
| **97763** | Orthotic/prosthetic follow-up |
#### When would be KX modifier auto-applied?
* Patient has Medicare benefits applicable to outpatient therapy for the encounter
* **Auto-apply KX modifier preference** is enabled
* Rendering provider’s discipline maps to PT/SLP or OT for Medicare service type
* The CPT code is in the qualifying therapy list for that service type (PT/SLP vs OT)
* The calculation year is the appointment’s calendar year
* The patient’s Medicare therapy threshold remaining for that service type is ≤ 0 (i.e., threshold exceeded)
* KX isn’t already on the line; it’s appended alongside other therapy modifiers (e.g., GP/GO/GN)
* If a precomputed “threshold remaining” value is supplied and indicates exceeded, it’s used
#### Configuration
Setting PT/OT threshold on a per-patient level
1. On EHR > Calendar, click on any calendar cell.
2. Click on the expand content
3. On Appointment Details drawer > visits, expand the "Medicare Threshold Remaining"
4. Click on "Other Medicare Threshold Used".
You can modify the value according to your preference.
5. You can see the updated remaining value
\$390.00 Medicare Threshold Remaining (PT/SLP)
#### Enabling auto-apply KX modifier preference
1. Go on EHR > Preferences
2. Click on General Tab
3. In the search box, type "KX"
4. You would see an entry titled "Auto-Apply KX Modifier"
5. Click on the switch to enable it
6. Once you click it, you will see the message "Setting updated successfully"
Click on the switch again if you want to turn it off.
#### Setting KX modifier traits on a template
1. Go to Templates Page
2. Create or edit a Template
3. Drag and drop Paragraph Answer
Only “Paragraph Answer” supports question traits at the moment
4. Fill the form
5. Click on Create a new trait
6. Type in the trait name
7. Type in a prompt that should be evaluated
8. Click on Evaluate only if Medicare has been reached
9. Go to EHR Preferences > Appointment Types
10. Add the new template to an Appointment Type
11. Done! Now start using the Appointment Type you set up.
#### Usage
**Applying the KX modifier in the Treatment section**
1. Go to an Appointment section of any selected Patient
2. You’ll notice that for Medicare thresholds, there are two types: the PT/SLP Medicare Threshold and the OT Medicare Threshold.
3. Check if the remaining Medicare threshold (e.g., PT/SLP) is negative (i.e., the threshold has been crossed).
4. Scroll down to the Treatment section, where you can search for and choose a CPT code.
5. Select one of the procedures (i.e., CPT codes) that is KX-modifier qualified (e.g., 97110)
6. After adding the qualified procedure, the KX modifier is automatically applied with a tooltip.
#### Applying the KX modifier in the Flowsheet Intervention section
1. Go to an Appointment section of any selected Patient
2. You’ll notice that for Medicare thresholds, there are two types: the PT/SLP Medicare Threshold and the OT Medicare Threshold.
3. Check if the remaining Medicare threshold (e.g., PT/SLP) is negative (i.e., the threshold has been crossed).
4. Scroll down to the Flowsheet section, where you can search for and choose a CPT code (i.e. “Search For Intervention”).
5. Select one of the interventions (e.g., Cervical Thrust Manipulation (HVLAT)).
6. Select one of the procedures (i.e., CPT codes) that is KX-modifier qualified (e.g., 97110)
7. Now Mark it as Done
8. The KX modifier will be applied automatically, and you can also see the tooltip.
# Download Chart Notes as PDFs
Source: https://docs.athelas.com/insights_provider/chart_notes/download_chart_notes_as_pdfs
Once a Chart Note has been completed, this will be visible within the *Appointments* Section of the Patient Demographic. A user can utilize the Status field to validate the stage of a given Chart Note.
Once the Appointment is in a *Completed Status* you will have the ability to download the document. It will change from a gray eye icon to a black eye icon to indicate that you can. We offer both a **Medical Billing PDF and a Plan of Care PDF.**
After the user downloads the Chart Note they will be able to see the following document, depending on the selection.
#### Example of a Billing PDF
#### Example of a Plan of Care PDF
Once you select the completed appointment, you can Fax PDF and select the PDF Type to Fax:
# Dynamic Text Snippets (Beta)
Source: https://docs.athelas.com/insights_provider/chart_notes/dynamic_text_snippets
### At a Glance
**Dynamic text snippets** extend your saved phrases with three things a plain snippet cannot do: a trigger character you choose, limits on who sees a snippet and where it appears, and inline dropdowns for the phrases where you pick from a short list every time.
For the basics — opening the snippet menu, searching it, and managing your list — see [Text Snippets For Your Note](/insights_provider/chart_notes/text_snippets_for_your_note).
Dynamic snippets are in beta and are not yet live for every practice. If you do not see the settings below in **Preferences** yet, contact your account manager for access.
## Set Your Trigger Character
The trigger character is what opens the snippet menu while you are typing.
**To choose it:**
1. Go to **Profile → Preferences → General**.
2. Search for **Text Snippet Trigger Character**.
3. Choose `/`, `.`, or `+`.
The character you pick applies wherever snippets work, so choose one your team does not type often in clinical prose.
## Insert a Snippet
There are two ways to reach your snippets from inside a text field:
| **Method** | **How it works** |
| :-------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Trigger character** | Type your trigger character and a menu opens under the cursor. Keep typing to search, or use the arrow keys, then press **Enter** or click to insert. |
| **Snippet button** | **Click** the snippet icon at the end of the text field to open the same menu. |
Snippets that belong to a **Group** appear grouped in the menu, so a well-organized list stays quick to scan even as it grows.
## Scope a Snippet to Providers or Sections
Two optional fields in the snippet editor control where a snippet shows up. Both are in **Profile → Preferences → Text Snippets**, on the snippet you are editing.
| **Field** | **What it does** |
| :---------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **User Access** | Limits the snippet to the providers you select. Leave it empty and the snippet is available to everyone on the site. |
| **Chart Note Sections** | Limits the snippet to sections such as **SUBJECTIVE**, **OBJECTIVE**, **ASSESSMENT**, or **PLAN**. Leave it empty and the snippet is available in every section. |
✨**Smart Tip:** Scoping by section is the cheapest way to keep the menu short. An exam phrase that only ever belongs under **OBJECTIVE** does not need to appear while you are typing the plan.
## Alternate Word Dropdowns
A snippet can carry an inline dropdown instead of fixed wording, for a phrase where the wording changes but the options do not — "Patient is \[improving/stable/worsening]", for example.
Build one by adding the alternate words in the rich text toolbar as you create or edit the snippet. When you insert that snippet into a note, the dropdown appears inline; **click** it, choose an option, and your choice replaces the dropdown in the note.
Dictation trigger phrases are case-sensitive, so dictate a trigger exactly as you typed it into the snippet's **Title**.
## What Carries Forward
Snippet text behaves like anything else you type, so it carries forward into a new chart note along with the rest of your note, and its formatting is preserved.
For a snippet with an alternate word dropdown, the **selected value** carries forward rather than the dropdown. The next note starts from the wording you chose, not from the list — so a carried-forward note does not ask you to pick again.
Snippet content also renders as written in exported PDFs.
### FAQ
Yes. Set **User Access** on a snippet to limit it to specific providers. A snippet with **User Access** left empty is available to everyone on the site.
Check the snippet's **Chart Note Sections** and **User Access** first — a snippet scoped to **OBJECTIVE** does not appear while you are typing in **PLAN**, and one scoped to other providers does not appear for you at all. If it appears in no section for anyone, confirm your trigger character in **Profile → Preferences → General**.
No. Carry forward keeps the option you selected, not the dropdown, so you do not have to re-pick a value you have already chosen.
Yes, including the wording chosen from an alternate word dropdown. The exported note reads as the note on screen reads.
Questions or issues? Reach out to your clinic administrator or [support@getathelas.com](mailto:support@getathelas.com).
# Getting Started with Chart Notes
Source: https://docs.athelas.com/insights_provider/chart_notes/getting_started_with_chart_notes
The Chart Note is the essential workflow for a provider in Insights. This section covers its notable features and configuration options. At a high level, a Chart Note is made up of **Dynamic Templates** and **Sections** that let you set up a note to match your specific workflow.
## Fundamental components of a Chart Note
* **Plan of Care**
* **Measurements**
* **Goals**
* **Treatments**
## Setting up Chart Note preferences
When you open a Chart Note, you'll see a set of buttons for configuring its base setup.
Use these controls to choose which sections appear, apply a template, and tailor the note to your visit type. From here you can:
* **Navigate the note** — see [Navigating the Chart Note](/insights_provider/chart_notes/navigating_the_chart_note).
* **Apply a custom template** — see [Set up Custom Chart Note Templates](/insights_provider/chart_notes/set_up_custom_chart_note_templates).
* **Add measurements** — see [How to Add Measurements](/insights_provider/chart_notes/how_to_add_measurements).
# How to add Measurements
Source: https://docs.athelas.com/insights_provider/chart_notes/how_to_add_measurements
To add new measurements to the chart note, click “Manage” in the Measurements section.
Measurements are divided into industry standard types (”Observation”, “Inspection”, etc) as well as groups. Custom groups and measurements can be added from the EHR Preferences page.
Simply check the boxes for your selected measurements, and click Save to add them to your note.
# Import Previous Medical History
Source: https://docs.athelas.com/insights_provider/chart_notes/import_previous_medical_history
To Import a Medical Record to a given Appointment, you can navigate to the *Appointments* section within Insights, and select the “+” icon to “Set Up Chart Note” and upload an existing record:
Fill out the relevant sections to ensure that the given Medical Record aligns to the desired Case, Appointment Type and Clinical Note Type (Initial Eval, Progress Note, Daily Note, Discharge). Ensure that the correct PDF or RTF file is uploaded for import.
> Enabling this feature allows a user to import a chart note that will not be marked as billable, this will be particularly useful if a user must manually add the Initial Evaluation and still continue the Plan of Care for a Progress Note or Re-Evaluation
Ultimately, this will populate the expected permutation of chart note + appointment type
You are also able to import an existing record through selecting “Athelas AI” at the bottom right corner of the page, and selecting “Import Existing Record"
You can also import a previous record through the chart note itself
# Navigating Flowsheets
Source: https://docs.athelas.com/insights_provider/chart_notes/navigating_flowsheets
View the Flowsheets tab within your Chart notes: In order to add flowsheets as a feature onto a chart note, select it as one of the sections to add, “Select Sections”
Adding flowsheets to the chart note will remove treatments
* Add an intervention - “+Add Interventions” through the Intervention manager in the nav bar, or within the chart note itself
Clicking the add interventions button will add all selected interventions to the flowsheet (currently in the order in which they were selected).
* You can now select groups of interventions, reducing repetitive data entry
* When editing an Intervention, you can also auto-populate flowsheets with intervention details and exercise parameters
* Configure tying interventions to treatments, which means when interventions are added to the flowsheet, the configured treatment/CPT code will auto-populate as well
* Select a Procedure code in the Intervention drop down, and mark each intervention as done
* You must select a procedure code in order to mark an intervention as done, and the treatment time and units will auto populate
* You can configure your flowsheets by de-selecting “Auto-calculate Units” and/or “Auto-sum up Minutes” toggles to allow manual calculations- These toggles are default turned on
* You can also double click on an intervention in order to mark as “TO-DO”, and a green highlight will emerge
#### Adding Home Exercise Programs
By clicking the checkbox for an intervention marked as `HEP`, this will add this to a staging area where a Home Exercise Program can be prepared.
Clicking the caret for HEP will open up the dropdown to assign any additional notes to the HEP section on a per intervention basis.
You can “Preview and Send” to email, text and print the PDF
#### Adding Evaluative Procedure
Often times, evaluative procedures may exist outside of being specified to a particular intervention. As such, we allow you to specify this from within the flowsheets feature and manage them independently.
Clicking Add Evaluative Procedure will bring up a modal where these CPT codes can be selected.
These evaluative procedures will be available in the blue header along with all procedures added from the interventions.
Evaluative procedures can be removed from here directly if needed.
#### Viewing Intervention Progress
Click on `Intervention Progress`in the Flowsheet section to view the stats from all previous interventions
If an intervention was performed for a specific visit, the background will be grey. The text inside the cells corresponds to the weight-sets-reps.
#### Viewing Intervention History
To view intervention history, click on the History icon on the Flowsheet section in the chart note
From there you can see a visit by visit history of interventions, including the weights, sets, repetitions and minutes
You can select which Visit to view either through the Select dropdown, or by clicking the forward and back buttons
You can click on an intervention to select an intervention. You can select several interventions at once. To un-select an intervention, simply click it again
After selecting interventions you want to re-use the values from, click the Re-Use Selected Rows button, and that data will be pulled into the current visit
# Navigating Inbox Workflows
Source: https://docs.athelas.com/insights_provider/chart_notes/navigating_inbox_workflows
The **Inbox** is your home for tracking which chart notes still need to be **signed and submitted**.
## How the Inbox is organized
Each row in the left navigation represents a note and shows the **patient name**, **date of service**, and **clinical note type**. Click a row to open that note on the right.
## Working through your notes
1. **Select a note** from the left to open it.
2. **Review and complete** the note's sections.
3. **Sign and submit** the note when it's ready — it clears from your Inbox once submitted.
# Navigating the Chart Note
Source: https://docs.athelas.com/insights_provider/chart_notes/navigating_the_chart_note
To view the chart note for a patient, you must first check in an appointment for the patient you’d like to conduct the appointment for. Navigate to Patients tab on the left navigation bar, select appointments, and select “Check in”
Alternatively, you could take action in the Appointment Details section within the Calendar in the left navigation bar.
**Note:** *In order to check in an Appointment a Case must be present. This means that the user should add the relevant case to the Appointment so that a Chart Note can be created.*
If there is no given case, the user will receive an error when trying to check in.
**Required Fields for an Appointment :**
* Case
* Appointment Type
* Facility
* Insurance
**Case Set-Up:**
Upon the creation of an Appointment, a case will need to be present. If a user is creating a new case the **only required field** is the Case Name. However, since insurance is a required field within the Appointments page, we recommend that insurance priority is set if possible.
Once Checked-in, you can open the chart note via “View Note”
**Alternatively, you can navigate to the chart note via the patient’s profile:**
Click on “Patients” on the left hand menu and type in the patient’s name into the search bar.
You’ll be automatically routed to the Appointments page of the patient’s profile.
If an appointment has yet to be checked in, the status will indicate that it is scheduled with a checkmark next to it. Clicking this checkmark will **check in** a patient.
If an appointment is checked in, the status will indicate as such. Clicking on the box icon with an arrow sticking out of the top right corner will **open up the chart note**.
# Set up Custom Chart Note Templates
Source: https://docs.athelas.com/insights_provider/chart_notes/set_up_custom_chart_note_templates
To begin setting up custom templates, first locate the side navigation menu item titled "Utilities." Inside here, click on "Templates."
On this Templates page, you are able to search and filter for your different templates
To create a new template, click on “+Create New Template” on the top right corner.
You’ll be navigated to a new page. This is how you will configure intake and chart note templates. At the top, you can title your template then drag and drop components from the left hand side to the right to add questions/sections into your template.
Components are what you will be using to create your desired intake form. Drag and drop the components from the left to the right to add intake form fields. The different components available to you are:
**Single Choice:** Ask a question where only a single choice can be chosen as the answer. Click the + to make a new option.
**Short Answer**: Ask a question where a short answer can be typed in, this is intended for short responses
**Multiple Choice**: Ask a question where multiple options can be chosen as the answer. Click the + to make a new option.
**Paragraph Answer**: Ask a question where a paragraph answer can be typed in, this is intended for long responses
**Yes/No Question**: Ask a question where only yes or no can be chosen as the answer
**Number Answer**: Ask a question where only a number can be inputted as the answer
**Rating Question**: Ask a question where a rating from 1-5 is determined as the answer
**Table Answer**: Ask a question in a table format. Each line creates a new column, click the + button to create a new one
**Date Question**: Ask a question where only a date can be inputted as the answer
**Text Box**: This component is not available for EHR templates and only for patient intake.
Once you’ve created your form, select the type of template you want it saved as and click on “Save”. You will create EHR chart note templates and patient intake forms based on what you save it as.
You can also configure **compliance checkmarks** on **Paragraph Answer** components to automatically verify that required details are captured in the note — see [How to Set up AI Compliance](/insights_provider/ai_scribe_and_tooling/how_to_set_up_ai_compliance).
# Setting up Co-signers on Your Note
Source: https://docs.athelas.com/insights_provider/chart_notes/setting_up_co_signers_on_your_note
If a note needs a **co-signature** from a referring provider, you can fax the encounter to them directly from the chart note.
## Add a co-signer
1. In the chart note, open the **co-signer** dropdown.
2. **Select the referring provider's name** from the list.
3. **Enter their fax number**.
4. Send the encounter to fax them the note for co-signature.
# Sign a Chart Note
Source: https://docs.athelas.com/insights_provider/chart_notes/sign_a_chart_note
This section will compile all the compliance checkmarks within the chart note for a quick overview. If any of them are grey, the information was not captured within the chart note. This is also where the user can select co-signers under “Additional Providers” and for the rendering provider to sign as well.
Ensure the “Fax note to referring provider” checkbox is clicked. Optionally, you can include a section requesting signature if desired.
To close the encounter and submit it as a claim, sign the note under “Notarize” and click “Submit”
To fax the completed chart note, click on “+Create Fax”. A side panel will open up where the faxing type can be selected.
**There are 3 faxing types currently available:**
* Provider
* Individual Fax Number
* Imaging Request.
Each presents in a different way.
The provider fax has a dropdown selection of all referring providers within Insights. If the fax number is available for the provider, it will auto-populate.
Individual fax number requires the user to know and input the fax number they’d like to send the completed chart note to.
Imaging requests will fax out the chart note with an imaging request utilizing the details indicated within the section. This information includes:
* Diagnosis codes
* Procedure codes
* Rule Out Information
* Result Medium
* Attachments
* Chart Note
* Patient attachments
* Imaging facility
When a note is signed and submitted, if the patient has future appointments scheduled- you will have the option of updating all future appointments with the chart note you just completed. Clicking *Next* will then ask if you’d like to review the appointment in RCM/ Billing. If you’d like to do so, simply click on *View Encounter Details* or *View Claim Details*. If not, click *Complete*.
# Text Snippets For Your Note
Source: https://docs.athelas.com/insights_provider/chart_notes/text_snippets_for_your_note
*A quick-insert tool for boiler-plate phrases in chart notes.*
For a configurable trigger character, snippets scoped to specific providers or chart note sections, and inline alternate word dropdowns, see [Dynamic Text Snippets](/insights_provider/chart_notes/dynamic_text_snippets).
## What is it?
Text Snippets adds a lightweight "/" command palette to every text-entry field in the chart-note form.
Clinicians can drop pre-saved phrases (e.g., "Shoulder: full ROM") with a click or a single **Tab** — no more re-typing the same assessment dozens of times per day.
## Using snippets inside a note
| **Action** | **Result** |
| :---------------------------------- | :----------------------------------------------------- |
| Type `/` at the end of any sentence | Palette opens under the cursor |
| Continue typing | Live-filter by **label / group** (`/hip`, `/exam:hip`) |
| **↑ / ↓** | Navigate results |
| **Enter / Tab / Click** | Insert highlighted snippet |
| **Esc** | Close palette (press twice if filtering by group) |
| **Backspace** just after `/` | Close palette |
| Type **two spaces** | Quick close |
**Example flow**
* Type `Hip /`
* Press **↓** to highlight *"Hip: tender to palpation"*
* Press **Tab** → the phrase is inserted, the caret moves to the end, and the palette closes
## Navigating the palette
**Search bar**
* Opens automatically after `/`
* Filters across **all labels and groups**
* Prefix with `group:` to filter (e.g., `/MSK:`)
**Group → snippet drill-down**
* Selecting a group tile shows only that group's snippets
* A chip in the header shows the active group; click **"×"** to clear
**Keyboard cheat-sheet**
| **Key** | **Palette open** | **Search bar focused** |
| :-------------------------------- | :----------------------------------------- | :-------------------------- |
| `/` | Re-open palette | — |
| **↑ / ↓** | Cycle suggestions | Cycle suggestions |
| **Enter / Tab** | Insert snippet / open group | Insert / open |
| **Esc** | Leave group → close search → close palette | Clear group → close palette |
| **⌫** (Backspace) right after `/` | — | Close palette |
## Managing snippets (Admin & power users)
1. Navigate to **Profile → Preferences → Text Snippets**.
2. Click **"Add Snippet"** or edit an existing one.
3. Fill in:
* **Title** (required, no `:` or double-spaces)
* **Group** (optional, same restrictions)
* **Snippet text** (required)
4. Click **Save**.
**Note:** The drawer closes *only after* a successful save, and inline validation errors appear if any rules are broken. The *"Other"* group always displays last.
## Tips & best practices
* **Autosize inputs**: In *Minimal* design, single-line snippet fields auto-grow.
* **Clipboard helper**: The trailing clipboard icon copies read-only field values.
* **Mobile friendly**: The palette respects virtual keyboards.
* **Accessibility**: The "/" icon is skipped in tab order; keyboard users rely on the slash.
## Troubleshooting
| **Symptom** | **Likely cause** | **Fix** |
| :----------------------------------------- | :------------------------------------------ | :----------------------------------------- |
| Typing `/` does nothing | Text Snippets not enabled for your practice | Contact your admin to enable Text Snippets |
| Palette shows "No items match" | No snippets, or filter too narrow | Add snippets or clear the search / group |
| Validation error: "Title cannot contain …" | Forbidden character in title/group | Edit the field |
| Palette closes unexpectedly | Two spaces typed or `/` deleted | Re-type `/` |
### FAQ
Yes — the palette anchors under the textarea.
Yes. The snippet list is scoped to the **site**.
No — snippets are plain text plus a trailing space.
# Designate Staff as Prescriber Agents
Source: https://docs.athelas.com/insights_provider/medications/designate_staff_as_provider_agents
#### Problem Statement
Providers can prescribe medications in Insights, but given their busy schedules, they often don’t have time to fill out multiple fields and submit prescriptions themselves. Instead, they rely on staff, typically MAs, to draft prescriptions for later review and sign-off, or to directly prescribe when the medications are not controlled.
#### Solution
Providers can designate staff members as **prescriber agents**, granting them the ability to **draft prescriptions for controlled medications** and **prescribe non-controlled medications** on their behalf. Providers can assign prescriber agents by facility and set permissions for whether they can only create draft prescriptions or also prescribe medications.
When a draft prescription is created, providers receive a task notification on the notification bell. Clicking the notification takes them to the **Tasks** page, where they can view the associated patient profile. From there, they can navigate to the patient’s profile page and review the draft prescriptions under the **Medications** section.
#### How it helps?
Providers save time by just signing off on medications instead of creating them. As part of MA’s day to day tasks, they create medications via this feature.
#### How to use this feature?
#### Prerequisite
* Provider should have the facilities they want to prescribe for: EHR > Preferences > Provider
* Provider should be nominated for the facilities they want to prescribe medications -EHR > Preferences > Medications > Provider Nominations
#### Step 1 - Add prescriber agents for the provider
Go to: EHR > Preferences > Medications > Prescriber Agents
Click on “Add Prescriber Agent”
You will see yourself as the provider selected by default. This cannot be changed because prescriber agents should be set up by the provider/admin.
Select agents, and add the facilities you want to allow the prescriber agent to create draft medications for. “Can Prescribe” allows the prescriber agent to prescribe uncontrolled substances directly.
If “Can prescribe” is checked, the prescriber agent can still be able to create draft, they will be able to choose to prescribe along with it.
Click submit after done. This creates the prescriber agents for the site and the facilities.
#### Step 2 - Create medications as prescriber agent
Prescriber Agent can go to the patient profile page, and select medications tab.
Create a medication order.
When selecting an appointment, prescriber agent will only see appointments by facility for which they are appointed to be prescriber agent.
On the medication form, they will be able to select either of the two options - “Prescribe as agent” or “save draft”. Save draft is the only option they can select if they are ineligible to prescribe for that facility, or if they are dealing with controlled medications.
On review, the medications which are marked as save as draft will show up as Draft
Once they submit the medications, the draft medications will appear on the medications table, and a confirmation toast will show the information of the medications created.
A task will also be created for the provider, who can refer to it to sign off on the medications.
Prescriber agent can edit the draft medications, but they cannot prescribe draft medications once they have created the draft.
#### Providers can also make changes to draft, but they cannot save drafts, they can only prescribe them directly.
#### Video 1 - Create/Update medications as prescriber agent and provider
# Add attachments to Patient Profile
Source: https://docs.athelas.com/insights_provider/patient_profiles/add_attachments_to_patient_profile
The Attachments tab will house all the attachments related to the patient. Any intake form will automatically be sent here, along with any uploaded scripts from the chart note.
You will also be able to add, filter and search attachments within this tab.
To upload a new attachment, click on the +Add button and the following side panel will open up. You will be able to upload multiple attachments at one time and create and add new tags to the attachments.
When an attachment is uploaded, there are 3 actions you can take:
By selecting an Attachment, you can download or send files via email, text, or fax
# Getting started with Patient Profile
Source: https://docs.athelas.com/insights_provider/patient_profiles/getting_started_with_patient_profile
Any patient’s profile can be accessed by clicking on Patients under the EHR section and typing in the name and selecting the patient.
Selecting the patient’s name will take you to the patient’s profile- specifically to the Appointments tab. Here, you will see several other options: Demographics, Attachments, Tasks, Medications, Allergies, Vitals, Immunizations, and Labs
You can access pinned “sticky” notes for storing quick-view notes on patients
Demographics are covered under the Patient Demographics tab. For attachments, see [Add attachments to Patient Profile](/insights_provider/patient_profiles/add_attachments_to_patient_profile).
## Labs
* Send and manage electronic lab orders via HealthGorilla ([100+ supported lab vendors](https://developer.healthgorilla.com/docs/list-of-connected-labs)) for consultation and in-place specimen collection
* Receive lab results via PDF in the patient profile
* Attach ask-at-order questions to lab orders
* Download PDFs of labs
# Prescribe Medications
Source: https://docs.athelas.com/insights_provider/patient_profiles/prescribe_medications
#### Prescribing Medications - how to enable prescribing an uncontrolled substance for a provider:
You can prescribe and manage medications by brand or generic name, including both controlled and non-controlled substances, through SureScripts integration
Navigate to Preferences tab, select Medications and Nominate Provider in the top right. After clicking the "Nominate Provider" button select the provider and facility for which you want to nominate the provider.
This nomination is required because to prescribe an uncontrolled substance, you require a *SureScripts Prescription Identifier* (SPI) number.
Once these requirements are fulfilled, the provider can start prescribing uncontrolled substances.
“Create New” to Prescribe medication or log internal or historic records within the Medications tab of the Patient Profile. Logging internal or historic record would not send the order to the pharmacy
Select “Pharmacy Order” and input required fields to send the order to the selected pharmacy
Our AI powered SIG validator ensures prescription accuracy
#### Recording Medications without Prescribing
Select Internal Record or Historic Record — which would not send the order to the pharmacy. Proceed to create
#### View Medication History
All logged medication history will be stored here. You can Create new logs through the "Create New" button in the top right - "Historic Record"
By Selection "Medication History", you will be prompted with the following pop-up. You can view up to 12 months of patient medication history integrated with the SureScripts network
#### View and address pharmacy requests
View Prescribed medications in the Patient Profile for individual patients
Or select Pharmacy Requests to view across all patients within your practice
# Record Allergies
Source: https://docs.athelas.com/insights_provider/patient_profiles/record_allergies
Navigate to the Patient’s profile and select “Allergies” tab within the Patient's Profile
Input relevant Allergen information and “Create”
You will get an alert when attempting to prescribe a medication conflicting with an allergy
# Record Immunizations
Source: https://docs.athelas.com/insights_provider/patient_profiles/record_immunizations
Record a patient's immunizations directly from their profile.
## Add an immunization
1. Open the patient's profile and go to the **Immunizations** tab.
2. Enter the required immunization details.
3. Click **Create** to save it to the patient's record.
# View Patient's Appointments
Source: https://docs.athelas.com/insights_provider/patient_profiles/view_patients_appointments
The appointments tab is where you can see all upcoming and past appointments for the patient. You are also able to create new appointments here, though you are able to do so on any tab in the patient’s profile as well.
This list of appointments can be easily filtered by clicking on the *Filters* icon which will open up a side panel with several options.
Selecting a date, or date range on the calendar will only show appointments for the date(s) selected. Additional filters include:
* Providers
* Cases
* Facilities
* Appointment Status
You can combine different filters to find specific appointments that the patient has/ had.
In the table, you’ll be able to view the different statuses of their appointments:
* **Cancelled**
* Clicking on the eye icon will show the cancellation reason
* **Confirmed**
* The patient has confirmed their appointment via their appointment reminder text/ email
* An Appointment can only be updated to Confirmed if “Confirmed” via completion of the patient’s intake form
* Front office staff are unable to “Confirm” an appointment for a patient
* **Checked** **In**
* Clicking on the box arrow icon will open up the chart note
* **Scheduled**
* Clicking on the checkmark will check in the patient for that appointment
* **Completed**
* Clicking on the box arrow icon will open up the completed chart note
To the left of the appointment date/time are 3 icons:
#### Faxing Through Appointments
You can easily bulk fax and download PDFs by clicking on the checkbox at the very top of the appointments table. All of the completed appointments will have a checkbox next to them. You’ll be able to uncheck any that you don’t want to download or simply check the boxes next to the appointments you’d like to download or fax.
#### Faxing through Chart Note
Providers can also Fax the chart note through the Chart note itself. Navigate to the "Fax" section of the Chart note. You can “+ Create Fax”, select the Faxing Type, and input required information:
# Customer Stories
Source: https://docs.athelas.com/master_blogs/customer_stories
Coming Soon ...
# Product Release
Source: https://docs.athelas.com/master_blogs/product_release
Have a read on what our teams have been building lately.
Feb 19, 2026
Oct 3, 2025
Sep 10, 2025
Aug 8, 2025
Aug 4, 2025
Jul 28, 2025
# Changelog
Source: https://docs.athelas.com/master_changelogs/changelog
Stay up to date with the latest product updates, bug fixes, and new features.
### \[Beta Users Only] Unified Rules UI
We've begun rolling out a single, plain-language home for the rules that drive Insights, replacing the billing, eligibility, and posting logic that previously lived in engine-specific code:
* Browse every rule at your practice in one place, organized by rule engine, with each rule summarized as a natural-language statement — AI-generated summaries even translate regex-heavy conditions into plain English — and the underlying conditions and actions one click deeper.
* No more internal IDs: payers, patients, providers, and facilities now resolve to human-readable names, and every rule carries a description plus a required "reason for the rule," so the intent behind a rule stays clear months later.
* Rules on a phased rollout display their rollout cap, so you can see exactly how much of your volume a rule currently touches.
* Read-only browsing is live for beta customers today. Create, edit, and clone flows are in beta testing now — including an AI assistant that builds rules from a plain-language description, a dry-run that previews a rule's impact against real claims (with a side-by-side claim-form comparison) before activation, and an approval step so nothing goes live unreviewed. Contact your account manager for access.
### \[Beta Users Only] Redesigned Remittance Overview
* Four KPI score-cards — Check Match %, Deposit Match %, Unmatched Checks \$, and Unmatched Deposits \$ — each with a trend sparkline and week-over-week comparison, viewable by day, week, month, or quarter.
* Click any card to drill into a **Match Breakdown** screen: verified-vs-unverified charts across Checks and Deposits tabs, plus a table with a Simplified mode (grouped by deposit source) and a Detailed check-level mode, both exportable to CSV.
* A **deposits and cashflow chart** tracks insurance deposits, check totals, and posted payments side by side for each period, also CSV-exportable.
* A new **notification strip** flags work the moment the page loads: unmatched check and deposit counts with a one-click jump into matching, bank-feed sync failures with a retry button, and an alert when a payer that regularly deposits suddenly goes quiet.
### Claim Deferrals Now Available to All Customers
Claim deferrals have graduated from beta to general availability — every customer can now set aside claims that aren't ready to work right now, and use deferrals to track any action being handled outside of Athelas:
* Defer from the **Actions** menu with a reason and an expiration date, and the claim drops out of any view filtered to non-deferred claims — like **Workable Claims** — until the deferral expires.
* PR (patient responsibility) generation is automatically paused for the duration of a deferral, so patients aren't billed while a claim is intentionally on hold.
* Deferrals clear themselves when they're no longer needed: if the claim's status changes before the expiration date — say the remit you called the payer about arrives — the deferral is removed immediately instead of waiting out the clock.
* Defer and un-defer **in bulk** from the Claims page, and cancel or extend any deferral at any time.
* Deferral reasons are site-specific and customizable — create one inline while deferring and everyone at your practice can reuse it — and every deferral's date, reason, and duration is logged in the claim's **Activity Feed**.
* For claims that come from your EHR, a new **"Updated in EHR"** deferral reason replaces the old Mark as Updated in EHR flow. It's available when a claim has a linked EHR claim and an upcoming EHR import: the expiration date is automatically set to the **next EHR import** (you can still pick a different date), and confirming automatically re-enables EHR imports for that claim so the update actually comes through. If the refreshed claim resubmits cleanly, there's nothing more to do — if it hits a submission error, it's un-deferred immediately so it can be worked right away. Bulk is supported here too (\~25 claims at a time), and the standalone **Enable EHR Import** button has been consolidated into this flow.
### Bug Fixes and Improvements
**Claims Workflow:**
* Submissions now show who actually submitted the claim rather than who originally created the submission, so audit trails are accurate.
* Bulk actions gained a Cmd/Ctrl+Z undo, and the bulk submission limit increased to 500 claims.
* Cmd/Ctrl+K now supports searching by EHR patient ID and EHR appointment ID.
**Reporting Accuracy:**
* Fixed the End-of-Day report so payments display under the correct collector, which previously misattributed collections.
* Fixed a SmartPay discrepancy where the collected amount shown differed from the actual total.
### \[Beta Users Only] Audit Log Export
Workspace Admins of clinics can now export patient-access and user-authentication audit logs — filtered by date range and patient — as an emailed CSV report from My Reports. Contact your account manager for access.
### In-Line Ordering from the Visit Note
Clinicians can now place, edit, and submit orders directly from the visit note as they document — medications, order sets, and external orders alike — without jumping to a separate ordering screen. Orders in the visit note header now display the specific order name, so it's clear at a glance what's been placed.
### Health Gorilla Labs Visibility Improvements
Lab orders placed through Health Gorilla are now far easier to track and review in Air:
* A new site-level **HealthGorilla Labs table** shows every lab order across the practice — with status chips (and a legend explaining them), a last-updated column, and a per-patient view.
* Results appear directly in the order drawer as structured values with reference ranges and an interpretation column, parsed straight from the lab feed.
* **Abnormal results are highlighted** and filterable, and the drawer calls out exactly which observation was flagged.
* Cancelled orders are labeled more clearly, with a toggle to show or hide cancelled results.
### Medications Usability Improvements
A round of quality-of-life upgrades to medication workflows:
* **Multiple preferred pharmacies per patient** — add, remove, and reorder preferred pharmacies on the patient chart, with one marked as the default.
* **Smarter pharmacy search** — search by name, city, state, address, ZIP, phone, or fax, and combine filters (e.g. "CVS" + "Fremont, CA") to pinpoint the right location among large chains.
* **Bulk medication re-ordering** — select multiple medications from the med list and re-order them in one flow, adjusting SIG, quantity, and refills before submitting. Bulk re-orders also carry through to the visit note.
### \[Beta Users Only] New Treatments Section (Services v2)
We're rolling out a rebuilt Treatments experience in the chart note. Services now live in the billing section of the note with per-service ICD-10 linking and reordering, unit counts, and billing modifiers — plus one-click carry-forward from a previous note. The new section is integrated with Air Scribe, so treatments captured during the visit flow into the note automatically. Contact your account manager for beta access.
### Bug Fixes and Improvements
**General:**
* End-date filters now include the selected end date, so records from the final day of a range are no longer omitted.
**Scheduling & Appointments:**
* Added an option to send patients a receipt after a kiosk payment.
* Patients can now set an expiration date on their waitlist entry through the patient portal.
**Other:**
* Fixed the patient-pay link to show the customer's marketing name rather than the legal site name.
* Fixed custom orders and letters PDFs that cut off content.
* Providers are now notified about new patient messages.
### Facility Tracking on Collection
Multi-facility practices can now track which facility actually collected each in-office payment, so per-facility cash drawers close cleanly at month-end:
* A **"Collecting at Facility"** dropdown now appears on every payment screen. Single-facility customers auto-select it; multi-facility customers must pick before submitting, with the staff member's last-used facility pre-filled as the default.
* Every in-office payment method is tracked — cash, check, card reader, saved card, kiosk, staff-applied credits, and manually sent statements — and every refund method gets a matching **"Refunding at Facility"** picker.
* The data surfaces as a new **"Facility of Collection"** column in the Site Transaction Report (Processed Transactions), and the Reconciliation page gains side-by-side **Facility of Service** and **Facility of Collection** filters and columns.
* Turn it on in **My Practice → PR Settings → "Facility Tracking"** — it takes effect immediately. Data is captured from the day it's enabled; automated batch statement payments have no collecting staff, so they intentionally show blank.
### Expanded Multi-Site Support for Parent & Child Organizations
We've added more capabilities for parent organizations working across their child sites from a single login, with parent/child relationships respected across claims, payments, and reporting:
* **Bank Deposit Recon** reports run from a parent site now include data from every child site, so deposits reconcile across the whole organization instead of one location at a time.
* The parent **appointments page** now shows child-site appointments, and **Cmd+K** finds child-site patients and appointments from the parent.
* Billers can now run **eligibility** on child-site claims, upload **attachments** to child-site claims, and process **refunds** — all directly from the parent site.
* Child-site **charge masters** are viewable from the parent with a site column to distinguish similar charges across locations, and payments collected at the parent route to the correct child site's payment account.
### Bug Fixes and Improvements
**Claims & Submission:**
* Denied reasons now appear by default in the payment-item table
* Claims Page columns are now sortable, and all columns can be hidden or shown via Display Settings. You can toggle between views using the 1, 2, 3…0 hotkeys, and new filters have been added.
For some Insights EHR integrations, we now offer links directly to the claim in the external EHR to make navigation simpler. We will continue rolling this out to all web-based EHRs in the coming months.
**Invoicing:**
* Fixed invoices that were only reaching the primary email, so statements now reach all intended recipients.
* Provider adjustments are now included in invoice "Total Collections" and in the Bank Deposit Recon report.
**Reporting Accuracy:**
* Corrected the year-to-date metric on the Revenue Analysis page.
* Added a dual-mode timezone banner to My Reports so report time boundaries are clear.
**Claims Resubmission:**
* Secondary claims now submit as soon as the primary remittance is balanced, instead of some being incorrectly blocked.
### Redesigned Patient Portal Sign-In & Registration
We've rebuilt portal sign-in from the ground up, replacing the old invite-only flow with standard account access:
* Patients can now sign in with an email and password, or with one-click **Sign in with Google**.
* Registration no longer requires email or phone verification before access, and portal invites now send a personalized, coded sign-up link that opens a site-specific registration page pre-filled with the patient's information.
* Patients who lose access can recover or re-link their account directly from the sign-in page, without needing to contact clinic support.
* Patients linked to multiple profiles — such as a parent managing children, or a patient seen at multiple practices — get a **patient switcher** to move between profiles in a single session.
* **Authorized representative access**: parents, guardians, and caregivers can now be granted their own portal access on a patient's behalf.
* Staff designate an authorized representative from the **Related Persons** section of the patient chart and send them a portal invite directly from there.
* Representatives register and sign in with their own credentials — no shared logins — and can view and manage the patient's information on the patient's behalf.
* Someone who is both a patient and a representative, or who represents multiple patients, simply picks the right profile at sign-in via the patient switcher.
### Redesigned Online Scheduling
Online scheduling in the portal has been rebuilt to show accurate availability and give patients more flexibility in finding a time:
* The booking form is now guided: patients pick an **appointment type first**, which drives every downstream option so they only see relevant providers, locations, and times. New field order: Appointment Type → Location → Provider → Primary Insurance → Secondary Insurance.
* Patients can search the whole practice at once — selecting multiple providers and locations, or choosing **"Any Provider" / "Any Facility"** — with open times displayed grouped by provider and location, sorted by most availability.
* Primary insurance is now required at booking so claims are filed correctly, and the waitlist flow was updated to handle the new multi-provider/facility selection.
* Admins control exactly what patients see: toggle individual providers and facilities in or out of portal scheduling, or hide the Location/Provider fields entirely (patients auto-default to "Any").
### Order Sets for Medications, Labs, DME, Referrals, and Imaging
We've overhauled ordering so clinicians can place and track orders without leaving the chart note:
* Place and submit orders inline in the chart note — individually or all at once — with an auto-attached signature that removes the separate signature step.
* Place external orders that don't map to a CPT code, such as referrals and DME, without entering a placeholder code.
* Order source now renders both on screen and on the printed PDF.
### Bug Fixes and Improvements
**Chart Notes:**
* The Unsigned Notes report now includes a "signed, not submitted" status, so staff can find notes stuck between signing and submission.
**Scheduling & Admin:**
* Front-desk staff and clinicians can now save preferred calendar filters as defaults instead of reapplying them on each visit.
* Administrators now gained oversight of staff task queues.
### Appointments Page Available to All Users
The rebuilt Appointments page is now available to all users. The fast list view brings patient demographics on hover, per-appointment rule-based alerts, eligibility run details and source, suggested collection amounts, and tags into a single worklist. Build Custom Views for your team's workflows, let Athelas AI explain every suggested charge, and rely on an eligibility parser that reads 100% of the benefits returned by the clearinghouse.
### Claims Page Features Available to Everyone
The Claims Page features that were in beta last month have graduated and are rolling out to all customers.
* Group-By on the claims table is now releasing to all sites. Group claims by site, insurance, week, month, and more, with right-click context menus and column-level sorting.
* Claim Context is now in production. The side panel brings Payments, Submissions, and Remittances together, with procedure-level payment breakdowns and AI-powered submission comparison.
* The comprehensive activity feed is now rolling out to all customers, giving every claim a complete audit trail of submissions, remittances, reconciliations, ERAs, appeals, patient responsibility, and assignee changes.
* Bulk Actions continue to expand, with Athelas Assistant now helping you navigate more ambiguous bulk actions across large sets of claims.
### More Claims Page Improvements
* Clearinghouse status updates: See provisional claim status updates from clearinghouses directly on the Claims Page, available as both individual and bulk actions.
* Provider-level adjustments in the posting tool: Apply adjustments at the provider level while you post.
* A more unified worklist: Legacy billing pages are being folded into the Claims Page, so more of your work happens in one place.
### Patient Profile Rollout
The new Patient Profile continues to roll out to more sites, giving billing teams one place to understand a patient's balance, charges, transactions, and credits, with Athelas AI on hand to explain patient responsibility.
### Bug Fixes and Improvements
**Claims:**
* Group-by views, claim context, and the activity feed received polish as they expanded to more sites
* Continued reliability improvements so fewer claims get stuck on resolvable errors
**Posting & Remittances:**
* Provider-level adjustments and additional refinements to the posting workflow
### \[Beta Users Only] Flowsheets V2 Expands to More Clinics
Following its initial pilot, the rebuilt flowsheet experience is now rolling out to more clinics. This update adds customizable carry-forward behavior so each visit starts from the right baseline, support for credential modifiers such as KX and PTA/OTA so billing reflects who delivered care, and the ability for the AI Scribe to apply CPT codes directly to flowsheets, cutting down the manual work of coding each treatment.
### Site and Facility Branding Available to All Users
White-label branding is now available to all practices. Your logos and facility- or site-specific preferred names appear across every patient-facing touchpoint, including branded email, text messages, and the patient portal, so patients always see your practice's brand instead of a generic one. Multi-location practices can tailor branding for each facility.
### Online Scheduling Improvements
Online scheduling keeps getting better for patients and front-desk teams alike. Patients can now see available times for single-appointment booking, providers they have previously seen are tagged in the provider list to make rebooking easier, and practices can configure whether patients are allowed to book appointments or update their insurance directly from the portal.
### Collections Alerts Now Live
Pop-ups now appear during scheduling and check-in when a patient has been sent to collections. Surfacing this at the moment staff are already working with the patient makes it easy to address an outstanding balance before the visit, instead of chasing it down with a separate follow-up.
### Multi-Site Access from a Single Account
Staff and providers who work across more than one location no longer need a separate login for each site. A single account can now access multiple sites, so you can search for patients, view the schedule, open chart notes, and manage prior authorizations across all of your locations without logging in and out.
### Prior Authorization Improvements
Managing prior authorizations is faster. The pre-certification dropdown now lets you filter by archived or active status so expired authorizations stay out of your way, and credential-group insurance search surfaces more results at once, making it quicker to find and attach the right authorization.
### \[Beta Users Only] Patient Portal Authorized Representative Access
Caregivers and authorized representatives can now access the patient portal on a patient's behalf, each with their own sign-in and notifications. This helps parents, guardians, and care partners stay on top of a patient's appointments, forms, and records, and supports ONC requirements for proxy access.
### Bug Fixes and Improvements
**Chart Notes:**
* Institutional (UB-04) chart note submission unblocked for applicable sites
* Flowsheet carry-forward and credential-modifier fixes for more accurate documentation
**Scheduling & Front Desk:**
* Calendar eligibility status now refreshes correctly after a re-run
* Faxes can be split into multiple separate faxes, with custom coversheet support on the way
### \[Beta Users Only] Clinical Document Exchange
Air now supports exchanging C-CDA clinical documents with other providers, an important step for care coordination and interoperability. You can generate, send, and receive documents through Direct secure messaging, view them in a built-in viewer, reconcile incoming clinical data into the patient's chart, and match each document to the right patient. Patients can also view and download their own records from the portal.
### \[Beta Users Only] Flowsheets V2
We have rebuilt the flowsheet experience to make documenting treatment faster and more accurate. You can add, update, reorder, and remove interventions and CPT codes within a procedure, and use the "Mark All as Done" shortcut at the treatment header to close out a visit in one click. The AI Scribe can populate flowsheets for you from the visit, and you can import interventions from a previous visit, including across cases, so recurring treatment plans take seconds to carry forward.
### Plan of Care Tracker Improvements
The Plan of Care Tracker is now much easier to work with day to day. Sortable columns and saved filters let you organize certifications the way your team thinks about them, an insurance-type filter helps you focus on the cases that matter most, a free-text notes field keeps important context right where you need it, and a new audit log tracks every change for compliance.
### Configurable EHR Alerts
Practices can now build their own in-app alert rules with custom conditions. Matching alerts appear as banners directly inside the chart note, so clinicians get the right prompts, such as a missing piece of documentation or a care gap, at exactly the moment they are charting, without relying on outside checklists or reminders.
### \[Beta Users Only] Site and Facility Branding
A new branding engine lets practices white-label their patient-facing communications. Logos and facility- or site-specific preferred names now flow through email, text messages, and the patient portal, so patients consistently see your practice's brand rather than a generic one across every interaction.
### Online Scheduling Improvements
Online scheduling now shares the same availability engine as the rest of the calendar, so the times patients see always match what is truly open. Practices also get provider and facility visibility settings to control exactly who appears for booking, and patients move through a rebuilt, simpler sign-up flow.
### Collections Alerts at Scheduling and Check-In
When a patient has been sent to collections, a banner now surfaces during scheduling and check-in so staff can address the balance before the visit rather than after. Check-in will also prompt for a policyholder address when the patient's own address is missing, keeping records complete for billing.
### Faxing Improvements
Faxing is more organized and reliable. You can assign a document type to fax attachments and filter the faxing page by it, reorder faxes within the create-fax drawer, and faxes sent from a chart note now carry the correct facility and provider attribution so the receiving office knows exactly where they came from.
### Bug Fixes and Improvements
**Chart Notes:**
* Treatment justification and notes now appear in all chart note PDF exports
* Previous measurements now reference the prior Progress Note specifically
* Immunizations capture a structured vaccination group
* Dictation supports voice-triggered dynamic text snippets
**Scheduling & Front Desk:**
* Create a new case directly from the appointment drawer
* Fixed an error when discharging a patient and cancelling all future appointments
* Insurance cards can now be deleted from the attachments view
**Intake & Outreach:**
* Added a "Required" toggle to single-choice questions in patient intake templates
* Outreach reminders now use the facility's timezone, with NPS summary drill-downs and functional outcome forms available in outreach flows
**Patient Portal:**
* Facility addresses are hidden in the portal for telehealth-only practices
### New Appointments Page
The Appointments page has been rebuilt as a rich, fast list view that puts everything front office staff need in one place. Hover any appointment to see patient demographics, view rule-based alerts inline, and see eligibility run details and source, suggested collection amounts, and tags at a glance.
You can build Custom Views tailored to your day-to-day workflows, so each team sees exactly the appointments they need to work. Athelas AI explains every suggested charge in a short, readable summary, with one click to dive into the full breakdown when you need it.
The page is powered by a revamped eligibility parser that now reads 100% of the benefits returned by the clearinghouse, presented in a clean, readable layout. You can clearly see the benefits coming in, the rules applied on top of them, and the verified benefits used to suggest each charge. An appointment activity tracker shows the full history of an appointment, and you get complete visibility into every past eligibility run, with one-click Athelas AI comparison between runs. You can also rerun an eligibility check through any source Athelas integrates with and compare results side by side, and a step-by-step charge explanation screen walks you through the entire process, from fetching eligibility to applying rules and finalizing the charge.
### Claims Page Available to All Users
The Claims Page is now available to all users as the single, authoritative interface for managing claims end to end, bringing months of foundational work together in one place.
* AI Copilot for Claims: Ask Copilot for a financial summary or procedure rollup, submit claims, run eligibility, and compare historical submissions, all from the Claims Page.
* Eligibility Check in Claims: Verify patient eligibility without leaving the claim. View and compare historical eligibility checks per payer, and modify the eligibility payload when needed.
* EHR Import Status & Sync: See when the last EHR import ran, when the next one is scheduled, and enable or disable sync per claim.
* Charge Master integration: Charges auto-populate when a procedure matches your fee schedule, with nearest-approximate suggestions when there isn't an exact match.
* Rule-engine bypass: Manually bypass validation errors (CCI, LCD/NCD, and dental) when appropriate, so a claim is never stuck.
* UX polish: Customizable columns, claim templates, enhanced "Go to…" links, keyboard shortcuts (`CMD` + `/`), and guided tours.
### Charge Master Released to All Users
The Charge Master is now released to all users. Fee schedules are created and maintained entirely within Insights, driving accurate charge entry across both the Appointments and Claims pages and giving your practice a single source of truth for pricing.
### New Patient Profile
The new Patient Profile brings patient responsibility into one coherent workflow. Instead of jumping across charges, transactions, credits, and timelines to understand a balance, you get patient context, Charges and Transactions, detailed drill-downs, and Athelas AI in a single experience. Credit movements are now visible and traceable, so you can understand where credits came from, where money went, and how they affect the patient's balance. PR Explainability lets Athelas AI explain a patient's balance in plain language.
### Remittances and Deposit Verification
The posting workflow received major improvements. A new remittances overview supports bulk CSV and EDI export, fuzzy deposit search, and bank account management. Posted payments now group dynamically, check-matching status filters make reconciliation faster, parent and child sites are fully supported, and ERA/EOB PDFs can be delivered directly by email.
### Reporting Upgrades
* Report History: Get clear visibility into past report runs and quickly spot any that failed.
* Revenue Activity Report: Now generalized for all customers, with customer-facing documentation to help you get started.
* Faster reports: The Posting Log report is roughly 50× faster, and the Claim Details Export has been optimized to run smoothly even for high-volume sites.
### \[Beta Users Only] Bulk Actions on Claims
Work entire sets of claims at once from the Claims Page. Bulk actions include assign, tag, comment, submit and resubmit, update insurance, update providers, update intent-to-bill and prior auth, write off, and push to next payer, all with undo support.
### \[Beta Users Only] More Claims Page Tools
Several additions make the Claims Page even more powerful for beta users:
* Group-By views: Group the claims table by site, insurance, week, month, and more, with right-click context menus and column-level sorting.
* Create Claim: Create claims directly on the Claims Page, from filters, from a previous claim, or using claim templates.
* Claim Context panel: A side panel that brings Payments, Submissions, and Remittances together, with procedure-level payment breakdowns and AI-powered submission comparison.
* Comprehensive activity feed: A complete audit trail for each claim, covering submissions, remittances, reconciliations, ERAs, appeals, patient responsibility, and assignee changes.
### Bug Fixes and Improvements
**Claims:**
* Improved charge entry accuracy by validating procedures against the Charge Master before they are added to a claim
* Strengthened claim validation reliability so fewer claims get stuck on resolvable errors
**Posting & Remittances:**
* Added fuzzy deposit search and dynamic grouping of posted payments to speed up matching
* Improved support for parent and child sites throughout the posting workflow
**Eligibility:**
* The eligibility parser now captures 100% of clearinghouse benefits, replacing the previous selective parsing
* Verified benefits and the rules applied to them are now shown clearly alongside each suggested charge
**Patient Responsibility:**
* Credit movements are now traceable end to end, making patient balances easier to explain
* Payment reliability improvements reduce the risk of duplicate payments
**Reporting:**
* Significant performance improvements across the Posting Log report and Claim Details Export
### HEP Library Upgrades
The Home Exercise Program (HEP) Library has been significantly improved to make building and assigning exercise programs faster and more accurate. Providers are now alerted when a chart note contains deprecated interventions, with an in-app flow to replace them with current equivalents.
The Planned Interventions section is now a multi-select checkbox picker, the search prioritizes standard HEP library exercises over custom ones, and similarity matching surfaces the most relevant results. Uploaded exercise images now display correctly in intervention dialogs.
### \[Beta Users Only] Simplified Online Scheduling Access
Updating from the patient waitlist from the last change log, patients can now schedule appointments and join the waitlist without needing to create a patient portal account. The new Name + Date of Birth access model lets patients book directly from your practice's scheduling page, making it easier for new and returning patients to get on the calendar without front desk assistance.
Practices can display their site name on the scheduling landing page, and appointment notes are now supported so patients can provide context when booking online.
### \[Beta Users Only] Plan of Care Tracker
The Plan of Care Tracker has been fully redesigned with a new 10-state status lifecycle, giving therapy practices a clearer view of where each patient stands in their plan of care.
The tracker now supports facility and case status filters, auto-faxes updated plans of care when changes are detected, and automatically closes tracker entries when a case is discharged. Appointment-level alerting shows Due Soon, Overdue, Sent, and Certified statuses directly on the calendar.
### \[Beta Users Only] Post-Visit Outreach and NPS Surveys
Automated NPS surveys can now be sent to patients after their visits to collect feedback on their care experience. The outreach flows engine has been expanded to support appointment-number-based messaging, so you can configure rules like "send a check-in message after the 3rd visit" or "trigger a satisfaction survey after the 10th appointment."
Message variables for appointment context are now available, and the sent messages table includes additional columns to help you track delivery and engagement.
For more information, check out the [Outreach Flows User Guides](https://www.notion.so/Outreach-Flows-User-Guides-2caf92a633f28097a76ac210255aa4cb).
### \[Beta Users Only] Provider-Specific Waitlist
Patients can now select multiple providers when joining the waitlist, indicating they'll accept an appointment with any available clinician. Staff can filter the waitlist queue by site and view patient waitlist preferences directly from the demographics page. Full waitlist preference management is available from the appointments tab, and patients are also automatically prompted to join the waitlist when canceling an existing appointment.
Practices now have greater control over waitlist behavior with new configuration options. Admins can configure the messaging bucket size to set how many patients are simultaneously offered an open slot, and control whether a patient's provider preferences carry over after they accept a waitlist offer. It's also now possible to configure whether outstanding patient offers expire automatically when a new bucket is messaged.
### \[Beta Users Only] Order Sets (Medication Templates)
Providers can now build reusable order sets — pre-configured bundles of medications, labs, imaging, and referrals — and apply them directly within the chart note workflow. The Order Sets Manager lets you create, edit, favorite, and search order sets from a centralized view.
An Import Order Set pop-over allows quick selection from within a note, and optional fields for quantity, refills, and duration give providers flexibility when applying sets with variable dosing. Imaging, labs, referrals, and DME are now available in order sets, with optional CPT codes where applicable.
### \[Beta Users Only] Custom Face Sheets
Practices can now build custom face sheet templates in EHR Preferences using a rich text editor with variable fields drawn from patient demographics, insurance, provider, facility, vitals, and appointment data. Block nodes for medications, allergies, and diagnoses populate as tables automatically.
Templates can be previewed, set as the site default, and archived. Staff can print a single patient's face sheet from the Patient Flow calendar or bulk-generate face sheets for a full day's schedule by provider and date range.
### \[Beta Users Only] Dynamic Text Snippets
Providers can now create reusable text snippets scoped to specific providers and chart note sections, triggered by a configurable character (`/`, `.`, or `+`). Snippets support inline alternate word dropdowns, carry forward into subsequent notes, and render accurately in exported PDFs — reducing repetitive typing across high-volume documentation workflows.
### \[Beta Users Only] Bulk Chart Note Export
Chart notes now appear automatically on the Patient Attachments page once signed, eliminating the need to manually download and re-upload individual PDFs. Staff can select chart notes alongside other attachments — imaging documents, faxes, insurance cards, and more — for bulk download or fax in one action.
A per-row button on the Appointments view also lets staff manually push any specific chart note into the attachments page.
### Bug Fixes and Improvements
**Scheduling:**
* Scheduling reserve blocks can now be capped by appointment type, giving practices finer control over how many patients can be booked into reserved slots
**Chart Notes & Documentation:**
* Chart notes now automatically generate versioned PDF attachments at submission that can be downloaded, faxed, and assigned via tasking
* Providers can create configurable text shortcuts with variable dropdown options that insert structured content directly into chart note sections, reducing repetitive documentation
* Fixed a regression where chart note billing fields (minutes, units, CPT modifiers) could not be edited after unlocking a note
* Resolved an issue where chart note attachments were not being created on submission
* Fixed an issue where HEP could not be sent when a chart note was locked
**Messaging:**
* Unread patient message threads now appear in bold, and staff can manually mark conversations as unread to flag them for follow-up
**Orders & Letters:**
* Site logos now appear on all order types, and appointment date of service and facility fax number are available as template variables in custom letters
### \[Generally Available] Claims Page
The Claims Page is now available to all users, with a guided tour on first visit to help you get oriented. Claims can now be filtered by Billing Type (Federal, Commercial, Auto, or Workers' Comp), EHR ID, or WC/Auto, and exported as a CSV. Assignments also now work across parent and child sites, and views can be duplicated for easy reuse by right-clicking on a custom view. Copilot now has the ability to edit patient demographics, change insurances, trigger reviews, submit claims, and more.
To quickly copy a Claim ID, use `CMD` + `.` on Mac and `CTRL` + `.` on Windows. `CMD/CTRL` + `C` also copies a link to the claim to the clipboard.
To get started, check out the [Claims Page guide](/insights_biller/claim_details/claim_details_page).
### Appointments List Page
The new Appointments List page gives front desk and billing staff a focused view of the day's schedule. It supports filters and saved views, with "All Appointments" and "Check-in Today" available out of the box. Each appointment row includes an AI-generated summary of suggested charges and outstanding balance, along with inline alerts, charges, and notes with unread counts. Staff can tag appointments directly from the list, and hovering over a row surfaces key patient demographics without leaving the page.
### \[Beta Users Only] Patient Profile Update
The redesigned Patient Profile includes an improved charges and transactions view. The layout now surfaces cancelled charges while filtering out \$0 rows to reduce noise, and Charge Details have been expanded to include provider, facility, and encounter ID — each linking directly to Transaction Details.
Both tables support infinite scroll, a "Who facilitated the payment" column has been added for visibility into payment history, and staff can now reverse accidentally cancelled patient responsibilities. Payment terminology throughout Copilot has also been updated to be more patient-friendly.
### Bug fixes and improvements
**Patient Demographics:**
* You can now edit all patient demographic information including name, email, phone, address, gender, and date of birth.
**Reports:**
* Extended report download link expiration from 12 to 24 hours, giving staff more flexibility when sharing reports
* Added inline documentation links directly within the Aging AR, UDS 9D, and Provider Line Item reports for faster reference
**Collections:**
* Added automated alerts for payment plan failure rates, surfacing issues proactively before they impact collections
**Patient Data:**
* Fixed an issue where eligibility checks were overwriting a patient's date of birth on the Appointments page, causing incorrect demographic data to display
**Eligibility:**
* Fixed a bug where the "Other Payer Exists" eligibility condition wasn't evaluating correctly in all scenarios, causing pre-visit rules to apply incorrectly
### Claims Page
We've shipped a number of updates to the Claims Page this month, here's everything that's new:
#### Downloading All Claims
Added a bulk download button to let you download all rows in the table as a CSV (with the addition of a Facility column). If it takes longer than 10 seconds to generate, you will receive it by email once completed
Added CARC and RARC filters to quickly sort your denials
Added filters for Workers' Comp, Auto, and Commercial under the `Insurance Billing Type` filter
Added the ability to quickly duplicate views to start view creation from the baseline of another
Added a hotkey to trigger the Filters functionality with the `F` key
* Added an additional filter for Submission ID (referred to as Claim ID on the Denials Worklist and Rejections)
* Updated the logic of the Charges column to align with the Claim Charge Amount inside the claim itself for consistency
* Reduced the number of clicks it takes to save a custom view
* Parent/child sites now have the ability to assign claims to parent/child users
* Improved load times when filtering by insurance
#### Editing a Claim
* Updated Athelas Assistant to now support:
* Resubmission and submission
* Fetching the claim's financial summary
* Updating patient and claim information
* Reviewing the claim against CCI and billing rules
* And more
When previewing a submission, you can now quickly reference the type of submission that has been generated (Professional/Institutional/Dental) in the top right
Added a "Go to…" link on the Claim edit screen that links you to the relevant page in Claim Details, Patient Responsibility, Posting Tool, and Remittances
Added a hotkey to copy a claim's ID to your clipboard with `CTRL` + `.` (`CMD` + `.` on Mac)
Added the ability to drag-and-drop diagnosis code pointers on a procedure to make re-ordering much simpler
* Updated the main button on the Claim edit screen to say `Resubmit` instead of `Submit` if a submission already exists
* For sites using a charge master, you can now see the Charge Item in the Procedures table in its own column without clicking into the procedure
* Improved the assignee selection popover to be alphabetical and to filter out inactive users
* Improved the Diagnoses table by giving more space to the Description column for easier reading
* Added an error notification if a claim was imported from an external EHR with too many diagnosis codes
* Fixed a bug where you couldn't create a procedure after clearing all diagnosis pointers
* Improved the automatic collapsing behavior of the Properties and Controls panels on dynamic window sizes
* Fixed a bug where long comments without spaces did not wrap correctly in the Activity Feed
#### Institutional Claims
* Updated the logic behind the Discharge Date field to allow discharges after the claim's end date
* Updated the flow of adding diagnosis codes to simplify the addition of POA indicators and additional diagnosis labels
* Fixed a bug where you couldn't remove an occurrence code once added to an institutional claim
#### Dental Claims
* Updated dental claims to allow submission with no diagnoses
* Fixed an issue where duplicate diagnosis codes were appearing on dental claims, causing submission errors
### \[Beta user only] Patient Waitlist
On January 5, 2026, we launched Waitlist to select customers. Waitlist helps practices fill open schedules faster by automatically offering cancelled appointment slots to patients who couldn't find available times.
Patients can join the waitlist through the Patient Portal by specifying their provider, facility, appointment type, and time preferences. Staff can also manually add patients to the waitlist from the Calendar's Requests tab. When a cancellation occurs, the system automatically offers the slot to the first matching patient on the list via text and email.
Waitlist includes configurable settings for approval requirements, offer expiration times, minimum fill times, and automatic cancellation of duplicate appointments. Available to beta customers, contact your account manager if you are interested to join the beta.
### \[Beta user only] Custom Orders and Letters
We've completed development for Custom Orders and Letters, enabling practices to create reusable templates for medical orders that can be quickly filled out and sent to recipients. The feature includes:
* Template builder with rich text editor supporting formatting, tables, and interactive fields
* Variable system that automatically populates patient, provider, facility, and insurance information
* Auto-fill of diagnosis codes and procedures from appointments
* Interactive fields (text inputs, text areas, diagnosis code fields) for customizing each order
* Live preview panel to see how templates will appear when printed or sent
* Draft saving to continue editing orders later
### \[Beta user only] NPS Survey for post-visit feedback
We've launched NPS Survey workflows to collect patient feedback following visits. The workflow can be added to Outreach Flows, prompting patients to rate their experience and provide feedback via text or email.
Detractor responses automatically trigger email notifications to practice stakeholders for immediate follow-up, while promoter responses can direct patients to leave public reviews on Google, Yelp, or other review platforms. Survey responses are stored as PDFs in patient attachments for easy reference.
### Bug fixes and improvements
**Appointments & Scheduling:**
* Fixed an issue where waitlist pop-up messages didn't display the patient's name, making it unclear which patient was being offered an appointment
* Fixed a problem where external appointment type IDs were missing, causing scheduling errors when booking appointments through the patient portal
**Quality Measures:**
* Resolved multiple quality measure alerting issues affecting BMI screening, depression screening, diabetes mellitus, controlling high blood pressure, falls screening, medication documentation, and post-fracture communication, ensuring alerts now appear consistently in chart notes for proper patient care tracking
**Chart Notes & Orders:**
* Completed migration for Time In/Out storage in chart notes to support Medicare compliance requirements for documenting visit duration
* Fixed an issue where discharge notes didn't automatically discharge the patient case upon submission, requiring manual discharge steps
* Fixed KX modifier visibility in the flowsheet, ensuring that the auto-applied KX modifier for therapy cap exceptions is properly displayed
**User Interface:**
* Implemented automatic task creation for failed fax transmissions, ensuring staff are notified when faxes don't go through successfully
**Integrations:**
* Fixed an error where the prior authorization report was broken for a customer, preventing staff from viewing authorization statuses
* Resolved an issue where users were unable to create or save measurements in the EHR, blocking documentation of patient vitals and assessments
### \[Beta user only] Charge Master released to pilot customers
Charge Master is now available for selected pilot customers, a comprehensive tool to manage your charge masters across payers and facilities. The feature set includes:
* CSV upload with intelligent column mapping and payer identification
* Manual charge master creation for individual entries
* Bulk editing and retirement of charge masters
* Copy charge masters across facilities
* Complete activity logging for audit trails
* Multiple effective dates with date range management
* NDC (National Drug Code) support
* Search across main table and activity log
The tool includes comprehensive validation for CPT codes, billing types, and payer mappings. We've added payer mapping history tracking, downloadable CSV error reports, performance improvements for large file imports, and AI-powered bulk editing through Copilot. Contact your account manager for access.
### \[Beta user only] AI Report Builder beta release
We launched the AI Report Builder to selected external beta customers. Teams can ask questions in plain English and get instant reports backed by their data, with natural language queries, automatic SQL generation with security post-processing, patient-level security enforcement, saved reports library, CSV downloads, and quality checking system.
### \[Beta User Only] Patient Profile redesign
We've redesigned the Patient Profile page with a new 3-panel layout that makes it easier to understand patient balances and payment history.
The redesign includes separate tabs for Patient Details, Charges, and Touchpoints, enhanced activity feed showing payment events, improved transaction details display, and contextual Copilot suggestions that adapt to your current view.
### Improved eligibility infrastructure
We've completed major infrastructure improvements for eligibility:
* Historical eligibility records table storing full payload and parsed benefits
* Site and payer-level source configuration (choose Waystar, Change Healthcare, etc.)
* Rule change detection triggering automatic eligibility updates
* Unified benefit parsing across clearinghouses
These improvements reduce manual intervention, improve data consistency, and enable better troubleshooting when eligibility issues arise.
### Remittances Dashboard updates
We've added filtering capabilities to help you analyze payment patterns. New features include deposit source filters across Waterfall, Checks, and Deposits views, provider-based deposit breakdowns showing payouts per check by rendering provider, and improved empty states.
### Bug fixes and improvements
**Eligibility & Benefits:**
* Fixed an error where insurance deductibles and remaining benefits were being calculated incorrectly, causing inaccurate patient responsibility estimates
* Resolved an issue where appointment eligibility counts were displaying incorrect numbers to staff members
* Fixed eligibility timestamps to properly display in the user's local timezone instead of UTC
* Improved eligibility parsing to better handle complex scenarios with benefits from multiple insurance carriers, reducing errors when patients have secondary coverage
* Fixed query performance issues on the appointments endpoint, making appointment pages load significantly faster
**Collections & Reporting:**
* Fixed an error where outstanding balances in end-of-day emails were being calculated incorrectly
* Corrected patient exclusion logic in daily collections reports, ensuring the right patients are included in collection metrics
* Resolved A/R Report discrepancies where Insights calculations didn't match external reports, improving data accuracy for financial reconciliation
* Enhanced report documentation and migrated all reporting guides to our new documentation platform for easier access
**Claims & Encounter Details:**
* Fixed an error where diagnosis codes would fail to save properly in certain scenarios
* Resolved date range filtering issues across multiple pages, ensuring filters work consistently throughout the application
* Fixed various errors in the posting tool and encounter details pages that were preventing users from completing their workflows
**Payment Plans:**
* Added monitoring alerts for payment plan success rates to proactively identify and resolve issues, ensuring reliable automated payments for patients
### Accounts Receivable Report dramatically faster
We've achieved dramatic performance improvements on the A/R Report Page through query optimization and infrastructure changes.
The improvements use optimized query patterns while maintaining backwards compatibility for all calculation methods.
### Bug fixes and improvements
**Claims & EOB:**
* Fixed an error where currency values were being converted incorrectly during EOB remittance posting, causing payment amounts to be wrong
* Improved claims history query performance to load significantly faster, reducing wait times for users reviewing claim timelines
* Fixed a performance issue where claim form generation was taking too long, making it 2x faster to generate claim PDFs
* Resolved an error where EOB posting would fail or time out when processing large files, now successfully handles files with 2,800+ remittances
**User Interface:**
* Fixed an issue where the denials page would not scroll properly and navigation buttons were not working correctly
* Resolved an error where users were being logged out unexpectedly when working with deposit transactions
### Financially Responsible Party support
We've enhanced payment handling to properly support Financially Responsible Parties (FRP). This allows you to designate and manage different responsible parties for patient accounts, ensuring payments and statements go to the correct person or entity. The feature includes improved payment processing, statement routing, and balance tracking for FRP scenarios.
### \[Beta user only] Patient Responsibility Explainability: Charges Details
We've released Charges Details to pilot customers, helping patients understand exactly what they owe. The new view shows detailed procedure breakdowns for each date of service, current balance and payment history, available refund amounts, and direct access to payment and refund actions. Staff can now refund payments, write off charges, cancel patient responsibility requests, and view remittance details—all from a single interface.
### FQHC Revenue Activity Report
For FQHC customers, we've built a comprehensive Revenue Activity Report showing month-over-month financial performance:
* Charges, payments, and adjustments broken down by category
* Sliding fee adjustments properly categorized
* Contractual adjustments and net transfers
* Delta version showing changes versus absolute values
The report is available for use in monthly closes and federal reporting.
### UDS 9D federal reporting tool
We've created the UDS 9D report required for FQHC federal reporting submissions. The report properly splits charges across payers, handles bad debt and sliding fees according to federal guidelines, and excludes specific code ranges per UDS requirements.
### Bug fixes and improvements
**Payments & Refunds:**
* Fixed an error where credit card refunds were failing to process correctly, preventing staff from completing refund transactions
* Resolved an issue where subscription balances were calculating incorrectly, showing wrong amounts owed by patients
* Fixed an error that prevented staff from canceling patient responsibility requests when needed
**Patient Workflows:**
* Fixed a timing issue where verification codes were expiring too quickly, blocking patients from completing online payments
* Resolved workflow errors that were preventing patients from successfully completing the check-in process
### E-prescribing with controlled substances
We completed DEA certification for controlled substance prescribing through the Drummond Group.
You can now prescribe both controlled and non-controlled substances directly from the EHR with secure identity verification through ID.me. The system tracks prescription status, refills, and pharmacy submissions automatically.
### Scribe integration with redesigned EHR
The AI Scribe now works seamlessly with the redesigned EHR and dynamic template system. Notes generated by Scribe automatically populate the correct template sections, saving providers time on documentation. Existing customers can now migrate to the new EHR design with full Scribe functionality.
### Stripe Separate Charges & Transfers migration
We've migrated customers to Stripe's Separate Charges & Transfers (SC\&T) infrastructure, providing better payment handling and financial controls:
* Customer mapping for customers with Stripe accounts per facility or provider
* Auto-retry mechanism for failed transfers
* Race condition fixes when creating or reversing transfers
* Manual transfer capability for advanced payment scenarios
* Improved payout tracking in ledgers
These improvements reduce payment processing errors and give your team better visibility into financial transfers.
### Patient workflow improvements
We've enhanced patient workflows and intake forms with better validation and reliability:
* Improved validation error messages for patient intake forms
* Better network error handling and display
* Fixed form ordering alignment issues
* Enhanced patient update template submissions
These improvements make patient check-in and paperwork submission smoother and more reliable across all customers.
### Suggested charges automatically stay in sync
We rebuilt the suggested charges infrastructure to use event-driven architecture instead of queue-based processing. Now when eligibility changes, suggested charges update automatically through listeners rather than waiting in a queue.
This resolves the slow-draining queue issue from early October and ensures patients always see the most current cost estimates based on their latest eligibility information.
### Report performance optimizations
We've moved multiple resource-intensive operations to read replicas, reducing load on the primary database:
* All KPI metrics queries
* Revenue Analysis page endpoints (now fully cached)
* Patient Breakdown queries
* Claims count queries
We also added strategic database indexes to eliminate slow sequential scans, improving page load times across the reporting suite.
### Bug fixes and improvements
**Payments:**
* Fixed an error where patient account credits were being incorrectly applied to subscription balances instead of the intended charges
* Resolved timeout issues that were causing payment processing to fail, preventing patients from completing their transactions
* Fixed errors that prevented gift card payments from being processed successfully
**Patient Statements:**
* Resolved an issue where patients across multiple customers were not receiving their statements due to delivery failures
* Fixed a display problem where mailing addresses were showing incorrectly or incompletely on statements
* Fixed errors in the statement scheduling system that prevented statements from being sent on their scheduled dates
* Corrected calculation errors in batch history where balance amounts were displaying incorrectly
### Complete EHR redesign launched
We completed a major redesign of all core EHR pages with a modern, intuitive interface. The new design includes improved calendar views, streamlined patient search, cleaner demographics displays, organized attachments, and a completely rebuilt chart note system with dynamic templates.
### Labs ordering complete
Lab ordering is now fully integrated into the chart note. You can order labs from Quest, Pathgroup, and other vendors through HealthGorilla, with results automatically captured and displayed in the EHR. The system supports both third-party lab orders and in-house lab billing for practices with their own lab facilities.
### Messaging and tasking
Internal messaging allows your team to communicate within the practice, while external messaging connects directly to patients using the Interact system. The new tasking feature lets you create task lists for team members with status tracking and priority levels, including group-level task assignment.
### Patient Check-in and check-out
Streamlined patient check-in and check-out workflows help your front desk process patients faster. You can now copy and paste appointments for recurring visits, print upcoming appointment lists, and manage patient flow more efficiently.
### DME billing support
If your practice bills for Durable Medical Equipment (DME), Air EHR now supports DME billing codes and documentation. The system includes prior authorization tracking by billable units with the ability to override calculations when needed, plus soft alerts to flag potential issues.
### Data migration improvements
We've dramatically improved the data migration process for new customers. Migrations from WebPT, Raintree, and Empower now complete in 15-30 minutes instead of 6-8 hours. We've successfully migrated over 20,000 chart notes across 14 customers with minimal manual intervention.
### Performance improvements
Chart note pages load significantly faster with improved typing responsiveness. Flowsheets now load approximately 39% faster, and we've added batch update capabilities for more efficient data entry.
### Bug fixes and improvements
**Chart Notes:**
* Fixed an issue where chart notes were not auto-saving reliably, causing providers to lose their work
* Resolved errors that occurred when editing or converting chart note templates, which prevented template modifications
* Improved how dynamic templates render to eliminate display issues and ensure all fields show correctly
**Permissions:**
* Added the ability for billing managers and admins to edit and submit chart notes, expanding access beyond just providers
* Enhanced role-based access controls to provide more granular permission settings across the system
**Data Management:**
* Added the ability to delete and archive cases, insurances, and prior authorizations that are no longer needed
* Fixed errors that prevented users from editing appointment details after they were created
### \[Beta user only] Kiosk patient check-in
Your patients can now check in for appointments and pay outstanding balances using the self-service Kiosk. The Kiosk verifies patient identity, checks insurance eligibility in real-time, and processes payments—reducing front desk workload and improving patient flow.
Available at select customers. Contact your account manager to join the beta program.
### \[Beta user only] Check Deposit Manager
The Check Deposit Manager gives your team visibility into checks, deposits, and remittances. View check-level remittance data, track deposit sources, and understand cash flow through comprehensive tables and filtering. Features include deposit slip generation and CSV downloads.
Currently available to pilot customers.
### Patient Statements Redesign
We've redesigned patient statements to significantly reduce your mailing costs. The new black and white format uses fewer pages while maintaining clarity. Key improvements include:
* Mail check address added to first page
* Patient ID and name on every date of service
* Reduced page count to lower postage costs
* Revenue codes added for hospital statements
The redesign is feature-flagged for gradual rollout, allowing us to collect feedback before broader deployment.
### Performance improvements
We resolved a critical database connection pool issue that was causing timeouts across multiple services. The fix reduced mean query times from 15 seconds to sub-second performance, stabilizing the system during high-traffic periods.
We also stabilized the eligibility batch job queue after an overload incident, implementing better resource allocation and scheduling to prevent future backlogs.
### Bug fixes and improvements
**Patient Statements:**
* Fixed an issue where statements were not being sent to financial guarantors who had dependents, leaving families without billing information
* Resolved a problem where duplicate copies of the same statement were appearing in downloaded ZIP files
* Fixed errors that were preventing electronic statements from being delivered successfully to patients via email
**Payments & Billing:**
* Fixed an error where copay amounts were calculating incorrectly for self-pay appointments, showing wrong amounts due
* Corrected calculation errors in Stripe transaction fees that were resulting in incorrect fee amounts being recorded
* Improved the reliability of appointment reminder delivery to ensure patients consistently receive their reminders on time
### Template Builder
Create custom chart notes, patient intake forms, and scribe templates using the new Template Builder. This tool allows you to configure templates specific to your practice needs without requiring engineering support. The builder is now available across Scribe, EHR, and Interact products for flexible form creation.
### Patient outcome tracking
New functional outcome measurement tools let you track patient progress directly in the EHR. The patient activity tracker monitors engagement, while automatic KX Modifier calculation ensures compliance with Medicare requirements. You can now also add notes to patient demographics, appointments, and encounters for better documentation.
### Lead management and credentialing
A new lead management landing page helps organize and track incoming patient leads. Providers can now handle their own credentialing through the self-service credentialing interface, including managing credentialing groups without administrative assistance.
### Bug fixes and improvements
**Forms & Intake:**
* Added Spanish language versions of patient intake documents to better serve Spanish-speaking patients
* Fixed an error where duplicate insurance entries were being created when patients submitted intake forms
**Faxing:**
* Added the ability to send multiple files in a single fax transmission instead of requiring separate faxes
* Improved Plan of Care fax tracking and increased delivery success rates by addressing reliability issues
* Implemented a seamless zero-downtime fax service transition process for new customers migrating to the platform
**Insights now fully supports creating and updating the financially responsible party for any patient**
This means that you can designate a parent or guardian to be in charge of all outstanding balances for their dependent.
You can manage the financial guarantor-dependent relationships in Insights through the patient profile:
* Click on edit in the top right corner
* Select “Someone else is financially responsible”
* Select the parent or create a financially guarantor if they are not already a patient in our system
* Checking in families just got a whole lot easier! Once the relationship is established, you will be able to pay off the entire family’s balance anywhere you'd collect balances today
#### Provider user improvements
* **Flowsheets intervention search is now sorted by the user’s most-used interventions:** Vs. currently, it’s sorted by the global last-edited, which often returned results which felt random. This should significantly improve how long it takes a provider to get to the intervention they are actually looking for.
#### Admin user improvements
* **Bulk scheduling flow can now search an alternate provider in addition to the original provider:** You can now bulk-schedule with a primary and a backup (alternate) provider. The calendar shows availability for both, you can pick who covers each date, and the system creates the right appointments under the right provider. There’s a new, simple picker for choosing providers/patients, and (when your policy allows) you can note credentialing exceptions during scheduling.
**Provider Credential Groups replaces a tedious one-to-one credentialing workflow with a many-to-many**
Previously, the provider credentialing system only supported individual provider-to-insurance credentialing relationships, requiring users to manually create credentials for each provider-insurance pair. This approach became inefficient when managing multiple providers who needed identical credentialing across the same set of insurance companies. Users had to repeatedly select the same insurance companies for different providers, leading to time-consuming manual work and potential inconsistencies in credentialing management.
**New Workflows Enabled:**
1. **Bulk Credentialing Group Creation**: Users can create named groups of insurance companies and reuse them across multiple providers
2. **Group-Based Provider Credentialing**: When adding credentials for a provider, users can select credentialing groups instead of individual insurances, automatically creating credentials for all insurances within those groups
3. **Centralized Group Management**: Users can edit existing credentialing groups to add/remove insurance companies, with changes affecting future credentialing operations
4. **Advanced Filtering**: Users can filter the credentialing matrix by specific credentialing groups to focus on relevant provider-insurance relationships
[Product Guide here](/air_admin/manage_your_practice/provider_credentials)
**Assistant Chart Review gives providers a compliance consultant in their pocket**
**Voice mode lets you talk directly to Assistant**
**Create Tasks directly from Attachments page**
Tasks can now be created directly from the Attachments page. These attachments are then auto-linked to the task in the Task page, for easy access when the admin is working their Tasks.
* Tasks created from the Attachments page
* Attachments auto-linked to the Task page
**Air Functional Outcome measurement tool quantifies patient PT progress**
Functional outcomes are one of the most critical ways that PTs communicate to each other and insurers that the work they’re doing is justified and directly improving patient outcomes. Previously, Air did not support functional outcome tracking, so customers would either have to use un-integrated external third-parties (going through painful workflows like: during a visit, the patient goes to [https://orthotoolkit.com/](https://orthotoolkit.com/) > patient fills out the form in front of the provider > provider then downloads the response from orthoToolkit > provider uploads it to Air as an attachment. This was not a good experience.) or forego functional outcomes entirely.
But now, we have a natively built functional outcome measure tracking tool!
Feature capabilities:
* Providers send functional outcome forms to patients
* Patients fill out the form remotely
* Providers view the results from within the chart note
* Providers can see the longitudinal history of the measure
[Product guide here](/air_provider/fill_a_chart_note/functional_outcomes)
**Assistant workflow richness:** Assistant has been enhanced with additional data fetching support for common user flows, like appointment default, patient referrals, patient claims, patient prior auth, patient demographics, providers’ unsigned visits, and provider metrics.
**Scribe offline mode:** If a user loses their internet connection before the Scribe successfully completes or uploads, Scribe will be locally saved to their computer in order to be able to retry upload when the connection is regained.
**Flowsheet group interventions search improvements:** Users can now choose to only search individual interventions, excluding Groups. When included, Flowsheets interventions search will now also auto-collapse group interventions.
**Primary signature-required inbox filter:** Inbox can be filtered to only notes “Ready for Primary Signature”, meaning the signature of the credentialed rendering provider. This will make it much faster for providers to find the notes requiring their primary signature.
**Active Patient Tracker provider can now be an assigned “Case-owning provider”:** Instead of only the initial appointment’s rendering provider, the associated provider can be any assigned “Case owner”. Users will now be able to assign the correct provider for tracking, even if they were not the first rendering provider. This will additionally improve accuracy of retrospective performance metrics.
**Scribe “Fast mode” generates 5-7x faster**
In exchange for a very slight drop in accuracy, users can choose to generate their Scribe 5-7x faster than normal mode. Scribe will also stream the Scribe sections into the note as they are generated, so the perception of speed is faster as well.
**Provider credentials can be bulk edited**
Users can now update credentials in bulk, vs. one-by-one.
**Custom lead management landing page creates a home for potential new patients**
New custom landing page creates a beautiful entry point for potential new patients into our customers. This will also then create new Leads in our Lead Tracker, configurable in settings.
**AI text quick-editing accessed through “Command-K”**
Users can quickly AI edit highlighted text selections, simply by typing “Command-K” and their instructions or preferences for the text.
**Filter your inbox to notes requiring signature**
Inbox can now be filtered to only notes requiring the provider’s signature.
**Create tasks directly from your Fax page and refer back to those auto-linked faxes in the Tasks page**
Tasks can now be created directly from the Fax page. These faxes are then auto-linked to the task in the Task page, for easy access when you are working your Tasks.
Tasks created from the fax page below:
Faxes auto-linked to the Task page:
**Intelligent AI Fax ingestion will auto-generate leads from faxes**
Leads can now be auto-generated from faxes. Air will extract the referral information from inbound faxes, and automatically create leads in the Lead Tracker using the context, including `first_name`, `middle_name`, `last_name, date_of_birth `and `phone_number`
Leads created with this flow will default to “Fax” as the referral source, and the first stage will be assigned as “Lead”.
**Flowsheets are now 39% lower latency (faster) across the board**
Flowsheets are now meaningfully more performant.
Average Before time to request an endpoint was **2.023 s. Now it's 1.02 s.**
Average improvement is **39% faster response**.
Before, 95% of endpoint requests would take a full **4** s. This is now **1.6 s**
| Type of request | Before | After | % Improvement |
| :---------------------------- | :----- | :----- | :------------ |
| Mark all as Done | 1.7 s | 1.2 s | 29% |
| Mark all as Undone | 4 s | 1.9 s | 52% |
| Mark all as Done | 2.6 s | 1.2 s | 54% |
| Mark all as Undone | 2.9 s | 1.5 s | 48% |
| Mark 1 intervention Done | 507 ms | 504 ms | 1% |
| Mark 1 intervention Undone | 546 ms | 391 ms | 28% |
| Mark 2 interventions Done | 1.35 s | 722 ms | 47% |
| Mark all as Done | 2.1 s | 1.2 s | 43% |
| Mark 1 intervention Undone | 696 ms | 693 ms | 0% |
| Mark 2 intervention Undone | 660 ms | 565 ms | 14% |
| Mark all as Done | 1.3 s | 909 ms | 30% |
| Mark all as Undone | 3.57 s | 1.6 s | 55% |
| Mark all as Done | 2.9 s | 1.2 s | 59% |
| Mark all as Undone | 2.4 s | 1.6 s | 33% |
| Mark all as Done | 2.2 s | 1 s | 55% |
| Add 1 concurrent intervention | 3.1 s | 524 ms | 83% |
| Add 1 concurrent intervention | 630 ms | 489 ms | 22% |
| Add 1 concurrent intervention | 761 ms | 712 ms | 6% |
| Mark all as Undone | 2.4 s | 1.4 s | 42% |
| Mark all as Done | 4.13 s | 1.1 s | 73% |
**Calendar redesign creates quick-glance payer, eligibility, appointment status, key detail clarity**
This calendar update preserves all existing functionality while delivering a richer, more modern experience. Compact blocks now show patient, time, status, case, and alerts at a glance—letting you fit more context in the same space. Hovering opens a streamlined tooltip with status and actions. We’ve also refreshed colors and icons to match the clean, familiar feel of modern calendars.
Key improvements:
* Calendar blocks are more information dense
* Appointment status is clear upon first glance
* Hover over the appointment to see all key information (Appointment status, case and appointment type, eligibility and payer, authorization status, next visit scheduled status)
* Change the appointment status directly from the tooltip! No more needing to go to the drawer
* Alerts flag key information through icons and in the tooltip
* Look and feel is overhauled to be cleaner, modern, and intuitive
View our Blog post here.