Test IDs
Canned 990- answers on the production host, and how a v4 test check behaves.
v4 answers test IDs on the production host, with your normal key, clinic and
tenant. A test ID is a member ID that starts with 990-; the number after it picks a canned answer
copied from a production case; every test ID is listed below. No payer is contacted and nothing is
stored.
curl -X POST "$HOST/v4/eligibility-checks" \
-H "X-Api-Key: Bearer $API_KEY" \
-H "X-Clinic-Id: $CLINIC_ID" \
-H "X-Client-ID: $TENANT" \
-H "Content-Type: application/json" \
-d '{"tpa_name": "TPA002", "identifiers": [{"id_type": "EMIRATESID", "id_value": "990-01"}], "visit_type": "OUTPATIENT"}'- Send the test ID inside
identifiers, like any other ID. The request shape is still checked: a missingvisit_typeor an unknown field is 422. - It finishes after 10 seconds. The check reads
IN_QUEUEfor the first 3 seconds,NAVIGATING_WEBSITEuntil 5 seconds andEXTRACTING_DATAuntil 10, with both answer lists empty. Then it isCOMPLETEwith the case's answer, and stays that way.
- Payer rules are skipped.
tpa_name,id_type,visit_typeand the doctor are not checked against the payer, so even an emptytpa_nameis accepted, and the784Emirates ID format does not apply. is_search_allfollows the case, nottpa_name.990-30is a search-all whatever you send, and990-01with"tpa_name": "BOTH"is a single-payer check.requestechoes your own request,extra_argsincluded. Keys you did not send keep the case's sample values, for exampleemirates_idor a sampleid_typebeside youridentifiers. Match an answer to your request by the checkid, not byrequest.- Test checks are never listed.
GET /v4/eligibility-checksdoes not show them, andqdoes not find them. - Cancel runs the real rules but keeps no state. Cancelling
990-40(Daman) is 202 every time, and the check staysCOMPLETE; cancelling990-01(TPA002) is 409NOT_SUBMITTED_TO_PAYER. Nothing is sent to a payer. - One test ID makes the whole check a test check. With several entries in
identifiers, the first one that names a known case picks it, and the other entries are not searched. Test checks do not carrymatched_identifieroridentifier_attempts. - An unknown case is 400
VALIDATION_FAILEDonidentifiers[0].id_value, and the message lists every valid case number. - Another clinic's test check is 404
CHECK_NOT_FOUND, as for a real check. POST /v4/appointment-checksrefuses test IDs with a 400.990-90to990-99are v4 only. They return benefit plans.
A test ID proves your client, not your payer setup
A test check never checks whether your clinic is configured for a payer or whether its portal credentials work. Before go-live, run one real check per payer you depend on.
Every test ID
Each ID below works on POST /v4/eligibility-checks, sent as the id_value of an identifiers
entry. The case page explains the answer it returns. To watch one run, use Try it.
| ID | Case page | Sample | Shape | Result |
|---|---|---|---|---|
990-01 | Eligible response structure | eligible | Single | found, eligible |
990-10 | Networks and plans | two-networks | Single | found, eligible |
990-11 | Networks and plans | a1-a3 | Single | found, eligible |
990-12 | Networks and plans | raw-vs-normalised | Single | found, eligible |
990-13 | Networks and plans | enaya-gold | Single | found, eligible |
990-14 | Networks and plans | sentence-network | Search all | 1 found of 18 |
990-15 | Networks and plans | unmapped-plan | Single | found, eligible |
990-20 | Copay | single-benefit | Single | found, eligible |
990-21 | Copay | by-benefit | Single | found, eligible |
990-22 | Copay | by-location | Single | found, eligible |
990-30 | Search-all | two-eligible | Search all | 2 found of 18 |
990-31 | Search-all | two-eligible-with-backoff | Search all | 2 found, 1 backoff |
990-32 | Search-all | four-statuses | Search all | 1 found, 4 failed |
990-33 | Search-all | none-eligible | Search all | No found |
990-34 | Search-all | not-configured | Search all | 1 found, 3 tpa_not_configured |
990-40 | Daman multi-card | daman-two-packages | Single | found, eligible |
990-41 | Daman multi-card | daman-gold-silver | Single | found, eligible |
990-42 | Daman multi-card | daman-ultrasound | Single | found, eligible |
990-43 | Daman multi-card | daman-with-error | Single | found, eligible |
990-44 | Daman multi-card | two-cards | Search all | 1 found, 1 member_not_found |
990-45 | Daman multi-card | two-cards-b | Single | found, eligible |
990-50 | Failures | invalid-credentials | Single | invalid_credentials |
990-51 | Failures | both-credentials | Single | failed |
990-52 | Failures | error-timeout | Single | error |
990-53 | Failures | error-keyerror | Single | error |
990-54 | Failures | failed-bad-request | Search all | 3 failed, no found |
990-55 | Failures | backoff | Search all | 4 failed, 1 error, 1 backoff |
990-56 | Failures | three-classes | Search all | 1 found, 1 failed, 1 invalid_credentials |
990-57 | Failures | clinician-licence-primary | Single | failed |
990-58 | Failures | clinician-licence-name | Search all | 3 failed, no found |
990-60 | Emirates ID not linked | eid-not-found | Single | member_not_found |
990-61 | Emirates ID not linked | card-eligible | Single | found, eligible |
990-62 | Emirates ID not linked | counter-first | Single | member_not_found |
990-63 | Emirates ID not linked | counter-later | Single | found, eligible |
990-70 | Visit types | maternity-not-eligible | Single | member_not_found |
990-71 | Visit types | chronic-out | Single | member_not_found |
990-72 | Visit types | daman-ultrasound | Single | found, eligible |
990-80 | Documents and warnings | gatekeeper | Single | found, eligible |
990-81 | Documents and warnings | referral-dropdown | Single | found, eligible |
990-82 | Documents and warnings | special-remarks | Single | found, eligible |
990-90 | Benefit plans (v4) | outpatient-stamped | Single | found, eligible; plan STAMPED |
990-91 | Benefit plans (v4) | two-visit-types-stamped | Single | 2 found; both plans STAMPED |
990-92 | Benefit plans (v4) | second-leg-not-covered | Single | 1 found, 1 member_not_found |
990-93 | Benefit plans (v4) | inpatient-stamped | Single | found, eligible; plan STAMPED |
990-94 | Benefit plans (v4) | no-rate-found | Single | found, eligible; plan NO_RATE_FOUND |
990-95 | Benefit plans (v4) | no-single-plan-match | Single | found, eligible; NO_SINGLE_PLAN_MATCH |
990-96 | Benefit plans (v4) | member-not-found | Single | member_not_found |
990-97 | Benefit plans (v4) | unknown-encounter-value | Single | found, eligible; plan STAMPED |
990-98 | Benefit plans (v4) | portal-error | Single | error; plan CHECK_FAILED |
990-99 | Benefit plans (v4) | health-plan-not-mapped | Single | found, eligible; plan STAMPED |