> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.usebridge.com/documentation/getting-started/eligibility-sdk/react/soft-check/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.usebridge.com/_mcp/server. Refer to the [Soft Check](../soft-check) guide for what a soft check returns. See the [Demo Project](https://github.com/use-bridge/sdk-typescript/blob/main/examples/react-demo/src/app/soft-eligibility/page.tsx) for a working example. ### Create a Session Create the SoftEligibilitySession by calling `createSoftEligibilitySession` on the SDK, nested within your `BridgeSdkProvider`. You must provide at least one ServiceType ID. Render `SoftEligibilityProvider` with the session as a parent of your eligibility form. ```typescript export const SessionContainer = ({ children }) => { const { createSoftEligibilitySession } = useBridgeSdk(); const session = useMemo(() => { return createSoftEligibilitySession({ serviceTypeIds: ["svt_xxx"] }); }, [createSoftEligibilitySession]); return ( {children} ); }; ``` ### Form Input Soft checks require the `state` and `payer` fields, never any other information. Use [Building Forms](./building-forms) for payer autocomplete and field hooks. ```typescript const payer = useEligibilityInputField("payer"); const state = useEligibilityInputField("state"); ``` ### Submission Bridge manages the loading state and validation of your inputs. Use `useSoftEligibilitySubmit` for `isDisabled` and `submit`. ```typescript export const SoftEligibilitySubmitButton = () => { const { isDisabled, submit } = useSoftEligibilitySubmit(); return ( ); }; ``` ### Handle the result Use `useSoftEligibilityState` to read `status` and `providers`. See the [Soft Check](../soft-check) guide for status values. --- #### [Hard Check](./hard-check) Full eligibility checks, cost estimates, and provider eligibility