CCM Enrollment

The Chronic Care Management (CCM) Enrollment feature allows the user to view the enrollment and modifications of patients with CCM eligible insurances.

The Chronic Care Management CCM Enrollment Status Changed Subscription feature will allow the user to retrieve any changes to the enrollment status. The user will need to subscribe. For more information about subscriptions, please refer Changed Data Subscriptions. 

Chronic Care Management (CCM) is a Medicare-based reimbursement plan that provides a non-visit-based payment for chronically ill Medicare patients. CCM payment is available to medical practices that provide care to patients who have two or more chronic conditions that are expected to last a year or longer and who are at risk for death or functional decline. 

To set enrollment status and determine patient enrollment status, partners use the GET and PUT APIs listed below. For CCM partners, we allow you to set the CCM Enrollment status for patients. The CCM Enrollment status for a patient controls a claim rule that can kick claims for procedure code 99490 into Hold if the patient is not set to enrolled status. You can set the status for a patient based on the patient’s insurance. If the insurance is deemed to be ineligible for CCM enrollment, you may not set the enrollment status for the patient. Insurance eligibility is currently restricted to the patient having Medicare Type B insurance in athenaNet. 

Available CCM Enrollment statuses are specified in this call: PUT/patients/{patientid}/insurances/{insuranceid}/ccmenrollmentstatus

From a reporting standpoint, practices can run the CCM Eligible Patients Report, which can be filtered by enrollment status. They may also run the “Medicare CCM claims eligible to be created report,” which surfaces all patients with a valid CCM Enrollment Status for the timeframe the report is run and who haven’t had a claim billed. 

Recordkeeping
athenaNet does not have a way to programmatically determine if a CCM Authorization form has been signed for a given patient. When setting this status, practices need to make sure an authorization form is signed and stored in the patient’s chart for audit purposes.

API calls: 
PUT /patients/{patientid}/insurances/{insuranceid}/ccmenrollmentstatus 
GET /patients/{patientid}/insurances/{insuranceid}/ccmenrollmentstatus

Was this information helpful? Yes | No Thank you for your feedback! What went wrong? Incomplete or incorrect information | Irrelevant Content | Others
Submit
Get CCM enrollment status for an insurance
GET
/v1/{practiceid}/patients/{patientid}/insurances/{insuranceid}/ccmenrollmentstatus
Retrieves the Chronic Care Management enrollment status of a patient's specific insurance package
Was this information helpful? Yes | No Thank you for your feedback! What went wrong? Incomplete or incorrect information | Irrelevant Content | Others
Submit
Try in Postman

Input Parameters

Expand all

required

practiceid integer practiceid
patientid integer patientid
insuranceid integer insuranceid
departmentid integer The current department ID.

Output Parameters

Expand all
currenteffectivedate string The effective date for the current status of CCM enrollment. Only applicable for "Enrolled."
currentexpirationdate string The expiration date for the current status of CCM enrollment. Only applicable for "Enrolled."
currentstatusid integer Current status ID of CCM enrollment.
currentstatusname string Current status of CCM enrollment.
eligibleinsurance string This field is true if the insurance is eligible for CCM.
history object
insuranceid integer ID of insurance policy.
Example Code
Update CCM enrollment status for an insurance
PUT
/v1/{practiceid}/patients/{patientid}/insurances/{insuranceid}/ccmenrollmentstatus
Modifies the Chronic Care Management enrollment status for a specific patient
Was this information helpful? Yes | No Thank you for your feedback! What went wrong? Incomplete or incorrect information | Irrelevant Content | Others
Submit
Try in Postman

Input Parameters

Expand all

required

practiceid integer practiceid
patientid integer patientid
insuranceid integer insuranceid
Content-Type string Content type of the payload

Output Parameters

Expand all
success string Returns whether or not the change to CCM enrollment was successful.
Example Code
Get list of change events for CCM enrollment status
GET
/v1/{practiceid}/ccmenrollmentstatus/changed/subscription/events
Retrieve list of all events that can be input for this subscription.
Was this information helpful? Yes | No Thank you for your feedback! What went wrong? Incomplete or incorrect information | Irrelevant Content | Others
Submit
Try in Postman

Input Parameters

Expand all

required

practiceid integer practiceid

Output Parameters

Expand all
departmentids array List of Departmentids subscribed
status string Will return one of following statuses: ACTIVE, INACTIVE, or PARTIAL. The PARTIAL status means that not all events are subscribed to. In the event of a problem, UNKNOWN may be returned.
subscriptions array List of events you are subscribed to.
Example Code
Subscribe to all/specific change events for CCM enrollment status
POST
/v1/{practiceid}/ccmenrollmentstatus/changed/subscription
Subscribes for changed CCM enrollment status events
Was this information helpful? Yes | No Thank you for your feedback! What went wrong? Incomplete or incorrect information | Irrelevant Content | Others
Submit
Try in Postman

Input Parameters

Expand all

required

practiceid integer practiceid
Content-Type string Content type of the payload

Output Parameters

Expand all
success string Returns if the call to manipulate subscriptions for ccm enrollment was successful.
Example Code
Get list of subscribed events for changes in CCM enrollment status
GET
/v1/{practiceid}/ccmenrollmentstatus/changed/subscription
Retrieves list of events applicable for CCM enrollment status changed
Was this information helpful? Yes | No Thank you for your feedback! What went wrong? Incomplete or incorrect information | Irrelevant Content | Others
Submit
Try in Postman

Input Parameters

Expand all

required

practiceid integer practiceid

Output Parameters

Expand all
departmentids array List of Departmentids subscribed
status string Will return one of following statuses: ACTIVE, INACTIVE, or PARTIAL. The PARTIAL status means that not all events are subscribed to. In the event of a problem, UNKNOWN may be returned.
subscriptions array List of events you are subscribed to.
Example Code
Get list of changes in CCM enrollment status
GET
/v1/{practiceid}/ccmenrollmentstatus/changed
Retrieve list of records whose enrollment status is modified
Was this information helpful? Yes | No Thank you for your feedback! What went wrong? Incomplete or incorrect information | Irrelevant Content | Others
Submit
Try in Postman

Input Parameters

Expand all

required

practiceid integer practiceid
leaveunprocessed boolean For testing purposes, do not mark records as processed.
showprocessedenddatetime string See showprocessedstartdatetime.
showprocessedstartdatetime string Show already processed changes. This will show changes that you previously retrieved at some point after this datetime mm/dd/yyyy hh24:mi:ss (Eastern). Can be used to refetch data if there was an error, such as a timeout, and records are marked as already retrieved. This is intended to be used with showprocessedenddatetime and for a short period of time only. Also note that all messages will eventually be deleted.
limit integer Number of entries to return (default 1000, max 10000)Please note that this endpoint has a different default and max than normal.
offset integer Starting point of entries; 0-indexed

Output Parameters

Expand all
ccmenrollmentstatus string The new, human-readable CCM Enrollment status.
ccmenrollmentstatusid integer The new CCM Enrollment status ID.
departmentid integer The department ID related to this patient and the chart sharing group this insurance is a part of.
insuranceid integer The athena-specific insurance ID.
patientid integer The ID of the patient that just received an update to their CCM Enrollment status.
Example Code
Unsubscribe to all/specific events for changes in CCM enrollment status
DELETE
/v1/{practiceid}/ccmenrollmentstatus/changed/subscription
Delete an specific event which is no longer required
Was this information helpful? Yes | No Thank you for your feedback! What went wrong? Incomplete or incorrect information | Irrelevant Content | Others
Submit
Try in Postman

Input Parameters

Expand all

required

practiceid integer practiceid
eventname string By default, you are unsubscribed from all possible events. If you only wish to unsubscribe from an individual event, pass the event name with this argument.

Output Parameters

Expand all
success string Returns if the call to manipulate subscriptions for ccm enrollment was successful.
Example Code