Blog
Automation & Integrations

How to Set Up Automated Insurance Verification (Step-by-Step)

April 19, 2026 · Claire Whitfield

Formisoft

From the team at Formisoft, the HIPAA-ready platform for patient intake, scheduling, and payments. Learn more →

Insurance verification is where workflows go to die. Your front desk calls the payer, gets transferred three times, waits on hold, writes down the eligibility details, then manually enters them into your EHR. It takes 15-20 minutes per patient and it happens every single day.

Automated insurance verification setup changes the equation. Instead of making phone calls, your system queries the payer's eligibility API, retrieves the coverage details, and writes them directly into your patient record. The whole thing runs in the background before the patient shows up.

This guide walks through the technical steps to build that automation: which APIs to use, how to structure the data flow, and how to handle the edge cases that trip up most implementations.

Why Automation Matters for Insurance Verification

The 270/271 EDI transaction standard exists specifically for eligibility checks, but most practices still verify coverage manually because connecting to payer APIs feels complicated. It isn't. Modern clearinghouses like Availity, Change Healthcare, and Waystar expose REST APIs that abstract the EDI layer. You send a JSON request, you get a JSON response. No X12 parsing required.

The ROI is immediate. A practice that verifies 30 patients per day spends 7.5 hours on phone calls. Automation cuts that to zero. Your staff reviews the results instead of gathering them.

Formisoft's workflow automation system can trigger verification checks when a patient books an appointment or submits intake forms. You're not replacing your EHR, you're filling in the gaps where manual processes still exist.

Step 1: Choose Your Eligibility API

You need an API that connects to the major payers in your region. Most practices use one of three options:

Clearinghouse APIs (Availity, Change Healthcare, Waystar): These services aggregate multiple payers into a single API. You send one eligibility request and they route it to the correct payer. Pricing varies, typically $0.10-$0.25 per check.

Direct payer APIs (Anthem, UnitedHealthcare, Aetna): Some payers offer their own eligibility APIs. Faster response times, but you need separate integrations for each payer. Only worth it if 80%+ of your patients use the same insurance.

Practice management system APIs: If your PM system already has payer connections, you might expose eligibility checks via their API instead of building direct integrations. Check their documentation. Some systems (like Kareo and AdvancedMD) support this. Others don't.

Formisoft integrates with clearinghouse APIs via webhooks. When a patient completes your intake form, we trigger an eligibility check and store the response alongside their record.

Step 2: Map Your Data Flow

Insurance verification requires three pieces of information: patient demographics (name, date of birth), insurance details (member ID, payer), and the date of service. Your intake form collects the first two. The appointment system provides the third.

Here's the architecture:

  1. Patient fills out your insurance verification form
  2. Form submission triggers a webhook to your clearinghouse API
  3. Clearinghouse queries the payer and returns eligibility data
  4. Your system parses the response and writes it to the patient record
  5. Front desk reviews the verification status before check-in

The key technical decision is where the eligibility data lives. Some practices write it directly into their EHR via API. Others store it in their intake platform (like Formisoft) and display it during check-in. Both work. The first option requires EHR API access. The second option requires less integration work but adds a second place to check coverage details.

Step 3: Handle the 270/271 Response Structure

Even if you're using a REST API wrapper, you need to understand what the 271 response contains. The eligibility transaction returns:

Active coverage: Is the patient currently covered? (Yes/No/Unknown) Benefit details: Copay amounts, deductible status, out-of-pocket max Service-specific coverage: Does the plan cover the CPT codes you're billing? Primary vs. Secondary: Is this the primary payer or a coordination of benefits scenario?

Most clearinghouse APIs return this as nested JSON. Here's a simplified example:

{
 "eligibility": "active",
 "effectiveDate": "2026-01-01",
 "copay": {
 "office_visit": 25.00,
 "specialist": 50.00
 },
 "deductible": {
 "individual": 1500.00,
 "met": 300.00
 }
}

Your automation needs to handle three response states:

  1. Verified active: Coverage confirmed, benefits retrieved
  2. Not found: Payer has no record of this member ID
  3. Error: API timeout, invalid request, or payer system down

Flag the second and third cases for manual review. Don't assume every check returns clean data.

Step 4: Automate the Trigger

The best time to verify insurance is when the patient books the appointment. That gives you 24-48 hours to resolve any issues before they arrive. If your appointment scheduling system supports it, trigger the eligibility check immediately after booking confirmation.

If you collect insurance details during intake (which most practices do), trigger the check when the patient submits their intake form. Formisoft's automation engine can fire a webhook on form submission, passing the insurance data to your clearinghouse API. The verification runs in the background while the patient moves on with their day.

For recurring patients, verify at booking but also re-check 7-30 days before the visit. Coverage changes. Plans renew. A verification from three months ago isn't reliable.

Step 5: Build Your Error Handling

Insurance verification fails more often than you'd expect. Common failure modes:

Member ID typos: Patient enters "ABC123456" when the real ID is "ABC-123456". Your automation should strip spaces and hyphens before sending the request.

Payer ID mismatches: Clearinghouses use different payer IDs than what appears on the insurance card. Maintain a mapping table or use the clearinghouse's payer search API to match the plan name to the correct ID.

Effective date issues: Patient books for next week, but their new plan doesn't start until next month. Your automation needs to check the effective date range, not just active/inactive status.

API timeouts: Payer systems go down. Your automation should retry once after a 5-second delay, then flag for manual review if it fails again.

Store the raw API response in your database. When something breaks, you need the original data to debug it.

Step 6: Integrate With Your EHR

The last step is writing the verified insurance data into your EHR. This requires your EHR to support an API that accepts insurance updates. Not all systems do.

If your EHR has an API, you'll typically use a PUT or PATCH request to update the patient record with the eligibility data. The exact structure depends on your EHR's data model. Epic's FHIR API uses Coverage resources. Athenahealth uses custom endpoints. Check your vendor's documentation.

If your EHR doesn't support API updates (many smaller systems don't), you have two options: display the verification results in your intake platform for manual entry, or export the data as a CSV and bulk-upload to your EHR. Neither is ideal, but both are better than phone calls.

Formisoft's team management system can assign verification tasks to specific staff members when manual review is required. The automation handles the successful checks. Your team handles the exceptions.

Real-World Implementation Notes

A few things I've learned from setting up these workflows:

Don't automate patient responsibility calculations. The eligibility API tells you the deductible and copay amounts, but calculating what the patient owes for a specific visit requires claims data and benefit rules that vary by plan. Verify coverage automatically. Calculate patient responsibility manually or with dedicated revenue cycle software.

Log everything. Store the full API request and response for every eligibility check. When a claim denies three months later because the verification was wrong, you need an audit trail.

Ready to digitize your intake?

Start building HIPAA-ready patient intake forms in minutes.

Get Started