Capture Manual Eligibility
Save manually entered insurance eligibility details for a patient. Use this endpoint when automated eligibility checks are unavailable and a staff member has verified benefits by calling the payer directly.
Endpoint
POST /apis/eligibility/v2/insurance/eligibility/offline
Request Body
| Parameter |
Type |
Required |
Description |
patient_id |
integer |
Yes |
The unique identifier of the patient |
organisation_id |
integer |
Yes |
Organisation identifier |
clinic_id |
integer |
Yes |
Clinic identifier |
insurance_card_number |
string |
Yes |
Insurance member/policy number |
service_code |
string |
Yes |
Service type code. Typically PT for physical therapy. |
prior_authorization_required |
string |
Yes |
Whether prior auth is required (Y or N) |
physical_therapy_coverage |
string |
No |
Whether physical therapy is covered (Y or N) |
call_reference_number |
integer |
No |
Reference number from the payer phone call |
call_respondent |
string |
No |
Name of the payer representative spoken to |
last_eligibility_check_date |
string |
No |
Date the eligibility was verified (ISO 8601 datetime) |
notes |
string |
No |
Free-text notes about the eligibility verification |
appointment_id |
integer |
No |
Associate this eligibility record with a specific appointment |
subscriber_details |
object |
No |
Subscriber information (see Subscriber Details) |
plan_details |
object |
No |
Plan and payer information (see Plan Details) |
in_network |
object |
No |
In-network benefit amounts (see Network Benefits) |
out_of_network |
object |
No |
Out-of-network benefit amounts (same structure as in_network) |
Plan Details
| Parameter |
Type |
Required |
Description |
payer_name |
string |
No |
Insurance payer name |
payer_id |
string |
No |
Payer identifier |
active |
boolean |
No |
Whether the plan is currently active |
plan_start_date |
string (date) |
No |
Plan coverage start date (YYYY-MM-DD) |
plan_end_date |
string (date) |
No |
Plan coverage end date (YYYY-MM-DD) |
plan_name |
string |
No |
Plan name |
plan_type |
string |
No |
Plan type (e.g. PPO, HMO) |
Subscriber Details
| Parameter |
Type |
Required |
Description |
first_name |
string |
No |
Subscriber first name |
middle_name |
string |
No |
Subscriber middle name |
last_name |
string |
No |
Subscriber last name |
sex |
string |
No |
Subscriber sex |
date_of_birth |
string (date) |
No |
Subscriber date of birth (YYYY-MM-DD) |
address_line |
string |
No |
Street address |
city |
string |
No |
City |
state |
string |
No |
State code |
zip_code |
string |
No |
ZIP/postal code |
Network Benefits
Applies to both in_network and out_of_network.
| Parameter |
Type |
Required |
Description |
individual_deductible_year |
number |
No |
Annual individual deductible amount |
individual_deductible_remaining |
number |
No |
Remaining individual deductible |
family_deductible_year |
number |
No |
Annual family deductible amount |
family_deductible_remaining |
number |
No |
Remaining family deductible |
individual_out_of_pocket_year |
number |
No |
Annual individual out-of-pocket maximum |
individual_out_of_pocket_remaining |
number |
No |
Remaining individual out-of-pocket |
family_out_of_pocket_year |
number |
No |
Annual family out-of-pocket maximum |
family_out_of_pocket_remaining |
number |
No |
Remaining family out-of-pocket |
co_insurance |
number |
No |
Co-insurance percentage |
co_pay |
number |
No |
Copay amount in dollars |
limitation |
object |
No |
Visit and amount limits (see Limitation) |
Limitation
| Parameter |
Type |
Required |
Description |
no_of_total_visits |
integer |
No |
Total authorized visits for the benefit period |
no_of_visits_remaining |
integer |
No |
Remaining visits in the benefit period |
amount_remaining |
number |
No |
Remaining benefit amount |
Request
curl --location '{base_url}/apis/eligibility/v2/insurance/eligibility/offline' \
--header 'Authorization: Bearer JWT_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"patient_id": 12345,
"organisation_id": 67,
"clinic_id": 89,
"insurance_card_number": "W585965926",
"service_code": "PT",
"prior_authorization_required": "N",
"physical_therapy_coverage": "Y",
"call_reference_number": 9874561,
"call_respondent": "Sarah Johnson",
"last_eligibility_check_date": "2025-05-19T00:00:00",
"notes": "Verified PT coverage, 30 visits per year in-network.",
"plan_details": {
"payer_name": "Blue Cross Blue Shield",
"payer_id": "00010",
"active": true,
"plan_start_date": "2025-01-01",
"plan_end_date": "2025-12-31",
"plan_name": "PPO Gold",
"plan_type": "PPO"
},
"subscriber_details": {
"first_name": "Jane",
"last_name": "Doe",
"date_of_birth": "1985-04-15",
"sex": "FEMALE",
"city": "Chicago",
"state": "IL",
"zip_code": "60601",
"address_line": "123 Main St"
},
"in_network": {
"individual_deductible_year": 1500.00,
"individual_deductible_remaining": 800.00,
"family_deductible_year": 3000.00,
"family_deductible_remaining": 2000.00,
"individual_out_of_pocket_year": 5000.00,
"individual_out_of_pocket_remaining": 4200.00,
"family_out_of_pocket_year": 10000.00,
"family_out_of_pocket_remaining": 9000.00,
"co_insurance": 20.0,
"co_pay": 30.00,
"limitation": {
"no_of_total_visits": 30,
"no_of_visits_remaining": 28,
"amount_remaining": 20.0
}
},
"out_of_network": {
"individual_deductible_year": 3000.00,
"individual_deductible_remaining": 2500.00,
"family_deductible_year": 6000.00,
"family_deductible_remaining": 5500.00,
"individual_out_of_pocket_year": 8000.00,
"individual_out_of_pocket_remaining": 7500.00,
"family_out_of_pocket_year": 16000.00,
"family_out_of_pocket_remaining": 15000.00,
"co_insurance": 40.0,
"co_pay": 60.00,
"limitation": {
"no_of_total_visits": 20,
"no_of_visits_remaining": 18,
"amount_remaining": 40.0
}
}
}'
Response
Success Response
Code: 200 OK
{
"code": 2000,
"data": {
"eligibility_enquiry_id": "elig-abc123xyz",
"channel_id": "MANUAL_CAPTURE",
"patient_id": 12345,
"insurance_number": "W585965926",
"timestamp": "2025-05-19T10:30:00"
},
"message": "Success"
}
Response Fields
| Field |
Type |
Description |
code |
integer |
Response code. 2000 indicates success. |
data |
object |
Created eligibility enquiry record |
message |
string |
Human-readable status message |
Error Response
Code: 400 Bad Request
{
"code": 4000,
"message": "patient_id is required",
"data": null
}
Notes
- Records saved via this endpoint are stored with
channel_id = MANUAL_CAPTURE and can be retrieved using Get Eligibility History with channel_id=MANUAL_CAPTURE.
- Providing
appointment_id links the manual eligibility record to a specific appointment, which is used to pre-populate benefit details in billing workflows.
- All monetary fields (
co_pay, deductibles, out-of-pocket amounts) are in US dollars.
co_insurance is stored as a percentage value (e.g. 20 for 20%).
- Omitting
in_network or out_of_network saves the record without benefit details — the record can be retrieved and updated later.