Availity Integration: Eligibility and Cost Estimation
Our platform integrates with Availity to automate two critical insurance operations:
- Eligibility Checks
- Institutional Cost Estimation
Workflow Overview
Whenever an insurance card is added — whether via manual entry or file upload — we need to verify the insurance details. This verification is handled by submitting the data to our eligibility check endpoint, which is powered by the Availity integration.
1. Eligibility Check
- The platform sends the insurance information to Availity to verify:
- Whether the insurance is valid
- Whether the policy is still active
2. Background Job Processing
- A background job system is in place that processes eligibility checks using Availity.
- Every one minute, a scheduled job runner:
- Pulls unprocessed or retriable jobs from the database (typically from a table like
jobs_coverages_fetch) - Filters jobs where the retry count is less than or equal to 3
- Binds each job to the relevant appointment in order to extract the provider’s NPI (National Provider Identifier)
- Pulls unprocessed or retriable jobs from the database (typically from a table like
📌 The NPI is essential — without it, Availity cannot return a valid eligibility response.
3. Handling "In Progress" Responses
- Sometimes, Availity returns a status of
"in progress"instead of a final eligibility result. - This typically means Availity is still awaiting a response from the payer.
- In such cases, the job is polled and retried every minute until:
- A valid response is received, or
- The retry limit (3 attempts) is reached
4. Retry Logic
- Each job includes a timestamp (
updated_ator similar). - If the job’s last update was more than one minute ago, and the retry count is < 3, it becomes eligible for another retry.
Summary
The integration with Availity ensures timely and accurate insurance verification through automated background jobs. By controlling retry limits and polling intervals, the system maintains reliability without overloading the Availity API or our database.