Skip to main content
Payor Detection lets you discover which payors a patient has active coverage with. Given a patient, Silna will query the payors configured for the patient’s provider and return which ones have an active plan for that patient along with the plan details.

How It Works

  1. Create a run using the POST endpoint, passing the patient ID.
  2. Poll for results using the GET endpoint with the returned run ID. Results are typically fast.
  3. Inspect detections once the run status is COMPLETE. Each detection tells you whether coverage was found, and if so, with which payor.

Understanding Results

Each detection in the response has two key fields that work together: status and confidence_level.

Confidence Levels

confidence_level is a high-level summary that tells you how to act on the result:
Confidence LevelMeaningAction
COVERAGE_FOUNDConfirmed active coverage with a known payor and member numberActionable. Create a patient plan using the Patient Plan API.
POTENTIAL_COVERAGECoverage was found but something is missing (e.g., no member number or unknown payor)Review recommended. You may need to obtain additional information before creating a plan.
NO_COVERAGENo actionable coverage was foundNo action needed.

Detailed Statuses

status provides a more specific explanation for each detection. Each status maps to one of the confidence levels above: COVERAGE_FOUND:
  • ACTIVE_PLAN — An active plan was found for this patient with a known payor and member number.
POTENTIAL_COVERAGE:
  • ACTIVE_PLAN_NO_MEMBER_NUMBER — A plan was found but no member number was returned. The plan may still be valid, but you will need to obtain the member number before creating a patient plan.
  • ACTIVE_PLAN_OTHER_PAYOR — A plan was found, but the detected payor could not be identified. The detected_payor_entity_id and detected_payor_entity_name fields will be empty.
NO_COVERAGE:
  • NO_ACTIVE_PLAN — No active plan was found for this patient with this payor.
  • ACTIVE_PLAN_EXPIRED — A plan was found but it has already expired.
  • ACTIVE_PLAN_DENTAL_OR_VISION — A plan was found but it is a dental or vision plan, not medical.
  • ACTIVE_PLAN_RELATED_PAYOR — A plan was found, but the patient already has an existing plan with a related payor (e.g., a subsidiary or parent organization of the same payor family).
  • ACTIVE_PLAN_MEDICAID_DUPLICATE — A Medicaid plan was found, but the patient already has an active Medicaid plan on file.

Queried Payor vs Detected Payor

Each detection includes both a queried payor and a detected payor. Understanding the difference is important:
  • Queried payor (queried_payor_entity_id, queried_payor_entity_name) — The payor that Silna asked about the patient’s coverage. This is informational.
  • Detected payor (detected_payor_entity_id, detected_payor_entity_name) — The payor that actually covers the patient. This is the payor you care about. The detected payor may differ from the queried payor. For example, querying a large national payor may reveal that the patient’s plan is actually administered by a regional subsidiary.
When creating a patient plan from a detection, use the detected_payor_entity_id.

Other Payors (Coordination of Benefits)

The other_payors field lists additional payors identified in the response. If present, this indicates the patient may have coordination of benefits with other insurance. The names in this field are raw strings from the eligibility response and may not match Silna payor entity names exactly, but they can be a useful signal that the patient has additional coverage worth investigating.

Patient Identity Confirmation

Each detection returns patient_first_name, patient_last_name, and patient_date_of_birth as reported by the payor. These fields are useful for confirming that the correct patient was matched during the eligibility check.

Creating a Patient Plan from a Detection

When you find a detection with confidence_level of COVERAGE_FOUND, you have everything you need to create a patient plan:
  1. Use the detected_payor_entity_id as the payor for the plan
  2. Use the member_number as the member/subscriber number
  3. Call the Create Patient Plan API with these details