> For the complete documentation index, see [llms.txt](https://docs.voveid.com/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.voveid.com/docs/sdks/compatibility.md).

# Compatibility matrix

Choose the VOVE ID SDK for your client platform.

Use the SDK guide for your client platform and install the package version your team has tested and approved. Check that version's release notes for version-specific changes.

| Platform     | Installation                         | Guide                                          |
| ------------ | ------------------------------------ | ---------------------------------------------- |
| Web          | npm or Yarn                          | [Web SDK](/docs/sdks/web-sdk.md)               |
| iOS          | CocoaPods or Swift Package Manager   | [iOS SDK](/docs/sdks/ios-sdk.md)               |
| Android      | Gradle with JitPack                  | [Android SDK](/docs/sdks/android-sdk.md)       |
| React Native | npm or Yarn with native installation | [React Native SDK](/docs/sdks/react-native.md) |
| Flutter      | pub with native platform setup       | [Flutter SDK](/docs/sdks/flutter.md)           |

## Shared lifecycle

1. Your backend creates a session with `POST /v2/sessions`.
2. The intended client receives the short-lived token and matching public key.
3. The client initializes its SDK and starts the journey.
4. Your backend receives and verifies the webhook.
5. Your backend retrieves `GET /v2/users/{refId}` before applying the final decision.

Each SDK uses its own enum names and casing. Follow the platform guide and the declarations shipped with the installed package.

## Upgrades

Before upgrading, review the SDK release notes, pin the chosen version, compile a minimal integration, test permissions on physical devices, exercise every documented result branch, and repeat the webhook and result-retrieval flow.
