VoidhashDocs
DocumentationAPI reference
Dashboard
Get started
Introduction
Quickstart
Setup
Setup overview
Create a project
Products and perks
Paywall locations
CLI
Paywall components
Components
Develop a component
Editor panels
Component definition
Publishing
Installing and capabilities
SDKs
Swift
Kotlin
React Native
Web
Store setup
Connect the App Store
Connect Google Play
Connect Stripe
Record payments from other sources
API libraries
Node.js
PHP
Rust
Go
Resources
MCP server
Ad measurement
Meta ads
Migrate in observer mode
Delete a person's data

Client SDKs

Choose the Voidhash client SDK for React Native, Swift, Kotlin, or the web.

Voidhash ships four client SDKs: React Native, Swift, and Kotlin for mobile apps, and a web SDK for websites and web apps. All four share one project, one event model, and one identity, so a person who visits your website and uses your app is one person in Voidhash.

The web SDK records page views, product events, sessions, and the campaign or ad that brought each visitor, and identifies them as your users. Purchases on the web go through Stripe and reach Voidhash from Stripe itself; the web SDK attributes them to the visitor and their campaign. See Web.

The mobile SDKs add paywalls and flows, purchases, entitlements, feature flags, and analytics to your app. By default the SDK owns purchases: it starts them, records them with Voidhash, and finishes them with the store.

An app that already ships another billing SDK can run Voidhash in observer mode instead. The SDK then watches the store transactions your existing integration makes and submits them to Voidhash for revenue analytics, but never starts, finishes, or acknowledges one. All three mobile SDKs expose reportTransaction(...) for store values captured from the other billing SDK's successful purchase or restore result, and syncPurchases() as a fallback scan when it exposes no transaction values. Automatic observers and scans can miss purchases, especially consumables the other SDK already finished or consumed. A valid report is persisted before it returns and delivered in the background, so a network or service outage delays reporting without interrupting the purchase flow. See Migrate in observer mode to move ownership to Voidhash step by step.

Each SDK integrates with the store for its platform. The React Native SDK runs on iOS and Android and reaches StoreKit 2 and Google Play Billing through native modules. The Swift SDK runs on iOS and uses StoreKit 2. The Kotlin SDK runs on Android and uses Google Play Billing.

Pick your platform

React Native

Expo development builds and bare React Native apps on iOS and Android.

Swift

Native iOS apps with StoreKit 2. Requires iOS 15+.

Kotlin

Native Android apps with Google Play Billing. Requires minSdk 23+.

Web

Websites and web apps: page views, campaign attribution, identity, and Stripe revenue.

Choose your platform above. Then connect a store in Store setup or Connect Google Play, or connect Stripe for web purchases.

On this page

Pick your platform