One Year Payment Contract

The One Year Payment Contract endpoints allow the user to retrieve and create year-long payment contracts. They also allow the user to retrieve the contractual language that must be used. For more information, please refer Payment contracts.

Payment Contracts is an offering that allows us to automatically collect patient balances associated with claims up to the agreed-upon amount set by the patient covered by the contract. athenahealth aims to increase adoption of payment contracts through Digital Check-in capability.  

This documentation focuses on two types of Card-on-File Contracts that athenahealth supports: Single Appointment and One-Year Contract.

Single Appointment automatically charges a patient using the authorized card on file after the payers have completed adjudication for claims associated with this appointment. This contract type charges up to a designated dollar limit for just the single appointment for which the contract is signed. The API endpoint for this is /patients/{patientid}/collectpayment/singleappointment/{appointmentid}

One-Year Contract charges the patient for every outstanding charge after the payers have adjudicated claims incurred within 1 year of the contract date. This contract type charges up to a designated dollar limit for all appointments within 1 year of when the contract is signed. The API endpoint for this is /patients/{patientid}/collectpayment/oneyear/{appointmentid} 

Was this information helpful? Yes | No Thank you for your feedback! What went wrong? Incomplete or incorrect information | Irrelevant Content | Others
Submit

Get terms for 1-year contract

GET
/v1/{practiceid}/misc/oneyearcontractterms
Retrieves terms for one year payment contract
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
terms string The static contract terms.
Example Code

Get list of 1-year contract (department)

GET
/v1/{practiceid}/patients/{patientid}/collectpayment/oneyear
Retrieves one year payment contract 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
departmentid integer The ID of the department where the payment or contract is being collected. This parameter is currently not formally required. However, it will be in a future patch so it is highly recommended that this parameter is used.

Output Parameters

Expand all
appointmentid string
balance string The remaining balance for this contract.
endeddatetime string The mm/dd/yyyy hh24:mi:ss timestamp when this contract ends/ended.
epaymentcontractclass string The contract class, either ONEYEAR or SINGLEAPPOINTMENT.
epaymentid string The epayment ID associated with this contract. This is useful for getting a copy of the receipt.
maxamount string The maximum amount for this contract.
signeddatetime string The mm/dd/yyyy hh24:mi:ss timestamp when this contract was signed.
starteddatetime string The mm/dd/yyyy hh24:mi:ss timestamp when this contract was started.
status string The contract status (ACTIVE, PAID, CANCELLED, FAILED, EXPIRED).
Example Code

Submit authorizations for 1-year contract (appointment)

POST
/v1/{practiceid}/patients/{patientid}/collectpayment/oneyear/{appointmentid}
Creates a record of authorization for 1 year payment contract for a specific appointment
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
appointmentid integer appointmentid
Content-Type string Content type of the payload

Request Body

Expand all

Output Parameters

Expand all
epaymentid integer After a successful payment, this ID can be used to retrieve the receipt.
errortext string The error text returned by the credit card processor.
success string true for success. false for an error.
Example Code

View authorizations for 1-year contracts (appointment)

GET
/v1/{practiceid}/patients/{patientid}/collectpayment/oneyear/{appointmentid}
Retrieves any contracts currently on patient's file
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
appointmentid integer appointmentid
departmentid integer The ID of the department where the payment or contract is being collected. This parameter is currently not formally required. However, it will be in a future patch so it is highly recommended that this parameter is used.

Output Parameters

Expand all
appointmentid string
balance string The remaining balance for this contract.
endeddatetime string The mm/dd/yyyy hh24:mi:ss timestamp when this contract ends/ended.
epaymentcontractclass string The contract class, either ONEYEAR or SINGLEAPPOINTMENT.
epaymentid string The epayment ID associated with this contract. This is useful for getting a copy of the receipt.
maxamount string The maximum amount for this contract.
signeddatetime string The mm/dd/yyyy hh24:mi:ss timestamp when this contract was signed.
starteddatetime string The mm/dd/yyyy hh24:mi:ss timestamp when this contract was started.
status string The contract status (ACTIVE, PAID, CANCELLED, FAILED, EXPIRED).
Example Code

Send email containing 1-year contract agreement

POST
/v1/{practiceid}/patients/{patientid}/collectpayment/oneyear/{contractid}/emailagreement
Generate an email to the patient and send the Card on File Agreement for one year contracts.
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
contractid integer contractid
Content-Type string Content type of the payload

Output Parameters

Expand all
success string True if operation was sucessful, false otherwise.
Example Code