Skip to main content
Version: 3.4 (Current)

Prerequisites

IAPKit - In-App Purchase Solution

Before using expo-iap, ensure your environment meets the following requirements. This page is the single source of truth for all prerequisites — other pages link here instead of repeating this information.

Platform Requirements

RequirementDetails
Expo SDK53+ (React Native 0.79+)
iOSiOS 12+ (iOS 15+ required for StoreKit 2 features)
AndroidAPI level 21+
Node.js16 or later
Xcode16.4+ recommended (why?)

Android Kotlin Requirement

expo-iap 3.3+ uses Google Play Billing Library v8.2, which requires Kotlin 2.0+.

Expo SDK 54+ users

Expo SDK 54 and 55 ship with Kotlin 2.0+ by default. No manual configuration is needed — just install expo-iap and run prebuild.

Expo SDK 53 users

Expo SDK 53 includes Kotlin 2.0+ natively as well, but if you encounter build issues, you can explicitly set the Kotlin version:

{
"expo": {
"plugins": [
"expo-iap",
[
"expo-build-properties",
{
"android": {
"kotlinVersion": "2.2.0"
}
}
]
]
}
}
Expo SDK 52 or earlier

Expo SDK 52 (React Native 0.76.x) uses Kotlin 1.9.x, which is incompatible with Google Play Billing Library v8. See the Expo SDK 52 workaround in the installation guide.

Development Build Required

In-app purchases require native modules that are not available in Expo Go. You must use a custom development client.

# Build and run on a physical device
npx expo run:ios --device # iOS
npx expo run:android # Android

Real Device Required

In-app purchases cannot be tested on simulators or emulators. You need:

  • iOS: A physical iPhone/iPad with a sandbox Apple ID
  • Android: A physical Android device with a signed build installed from a testing track

Store Configuration

Before testing purchases, you must configure products in the respective app stores:

iOS (App Store Connect)

  1. Complete agreements, tax, and banking information
  2. Create in-app purchase products with unique product IDs
  3. Set up sandbox test accounts
  4. Ensure products are in "Ready to Submit" or approved status

Android (Google Play Console)

  1. Upload your app to at least the internal testing track
  2. Create in-app products with unique product IDs
  3. Add license test accounts
  4. Wait 6–12 hours after initial product creation for availability
info

For detailed platform setup, see:

Next Steps

Once prerequisites are met, proceed to Installation.