Hard Check

Refer to the Hard Check guide for result statuses, error handling, and lifecycle.

See the Demo Project for a working example.

For advanced use cases, see Advanced.

See Existing Patients for patients who already have a Policy

1

Create a Session

Obtain createHardEligibilitySession through useBridgeSdk. On first load, create a session and pass it into HardEligibilityProvider.

1export const SessionContainer = ({ children }) => {
2 const { createHardEligibilitySession } = useBridgeSdk();
3 const session = useMemo(() => {
4 return createHardEligibilitySession({ serviceTypeIds: ["svt_xxx"] });
5 }, [createHardEligibilitySession]);
6
7 return (
8 <HardEligibilityProvider session={session}>
9 {children}
10 </HardEligibilityProvider>
11 );
12};
2

Form Input

All Eligibility Fields may be required depending on the session. Implement each field with useEligibilityInputField. See Building Forms.

Drive your submit button with useHardEligibilitySubmit.

1export const HardEligibilityForm = () => {
2 const firstName = useEligibilityInputField("firstName");
3 const lastName = useEligibilityInputField("lastName");
4 const dateOfBirth = useEligibilityInputField("dateOfBirth");
5 const state = useEligibilityInputField("state");
6 const { isDisabled, submit } = useHardEligibilitySubmit();
7
8 return (
9 <div>
10 {/* Render fields, payer autocomplete, optional memberId */}
11 <button disabled={isDisabled} onClick={() => submit()}>
12 Submit
13 </button>
14 </div>
15 );
16};
3

Handling the result

Use useHardEligibilityState to monitor progress and outcome. Bridge re-enables the form and updates Member ID requirements based on the response.

When you reach INELIGIBLE or ELIGIBLE, redirect the patient to the next step.

If eligible, the patient responsibility estimate is at patientResponsibility.estimate. Use providers to filter your scheduling UX.

If INELIGIBLE, display ineligibilityReason.message to the patient.