Client SDKs — one API, every platform
These are the kits a customer drops into their app to sell subscriptions with SubSovereign — receipt validation, entitlements, paywalls and the EU withdrawal right, on every major platform. Each SDK is generated from a single API specification via Rosetta, so all 8 stay in lockstep.
Swift Package Manager / CocoaPodsimport SubSovereignStoreKit 2 receipts, entitlements, paywalls, EU withdrawal.
implementation("com.subsovereign:sdk:1.0.0")import com.subsovereign.sdk.SubSovereignPlay Billing + Amazon Appstore validation, entitlements, paywalls.
npm i @subsovereign/jsimport { SubSovereign } from '@subsovereign/js'Framework-agnostic core client for any JS runtime.
npm i @subsovereign/web<subsov-paywall app-id="…">Drop-in <subsov-paywall> element — no framework required.
npm i @subsovereign/reactconst { hasAccess } = useSubSovereign()Hooks + components for entitlements and paywalls.
npm i @subsovereign/react-nativeimport { SubSovereign } from '@subsovereign/react-native'iOS + Android in-app purchases from one RN codebase.
flutter pub add subsovereignimport 'package:subsovereign/subsovereign.dart';Cross-platform entitlements, purchases, paywalls, withdrawal.
Copy the SubSovereign component into your channelm.subsov = CreateObject("roSGNode", "SubSovereign")Roku Pay validation + entitlements for channels.
npm i @subsovereign/vegaimport { SubSovereign } from '@subsovereign/vega'Fire TV’s successor runtime — entitlements, paywall and EU withdrawal on Kepler.
Generated by Rosetta
Rather than hand-maintaining eight separate SDKs, one OpenAPI specification is compiled into all of them (plus an MCP interface for AI agents) by Rosetta — our sovereign code generator. Change the API once; every SDK regenerates in step.