expo-iap
v4.2.1
Published
In App Purchase module in Expo
Maintainers
Readme
Expo IAP
Expo IAP is a powerful in-app purchase solution for Expo and React Native applications that conforms to the Open IAP specification. It provides a unified API for handling in-app purchases across iOS and Android platforms with comprehensive error handling and modern TypeScript support.
If you're shipping an app with expo-iap, we’d love to hear about it—please share your product and feedback in Who's using Expo IAP?. Community stories help us keep improving the ecosystem.
🎨 Promotion
Compile-time CSS-in-JS for React Native
✨ Experience the next generation of styling with kstyled - a blazing-fast, fully type-safe CSS-in-JS solution with zero runtime overhead.
📚 Documentation
📖 Visit our comprehensive documentation site →
Using with AI Assistants
expo-iap provides AI-friendly documentation for Cursor, GitHub Copilot, Claude, and ChatGPT.
Quick links:
- llms.txt - Quick reference
- llms-full.txt - Full API reference
- Onside Integration - Using Onside marketplace payments on iOS
Notice
The expo-iap module has been migrated from react-native-iap. While we initially considered fully merging everything into react-native-iap, we ultimately decided to maintain the two libraries in parallel, each tailored to its own ecosystem.
react-native-iap→ a Nitro Modules–based implementation for React Native.expo-iap→ an Expo Module with tighter integration and smoother compatibility in the Expo ecosystem.
Both libraries will continue to be maintained in parallel going forward.
📖 See the Future Roadmap and Discussion for more details.
👉 Stay updated via the Current Project Status comment.
Installation
npx expo install expo-iapFor platform-specific configuration (Android Kotlin version, iOS deployment target, etc.), see the Installation Guide.
Contributing
We welcome contributions! Please see our Contributing Guide for details on:
- Development setup
- Running the example app
- Testing guidelines
- Code style and conventions
- Submitting pull requests
For detailed usage examples and error handling, see the documentation.
Sharing your thoughts—any feedback would be greatly appreciated!
Powered by OpenIAP
Expo IAP conforms to the OpenIAP specification — an open, vendor-neutral interoperability standard for in-app purchases. OpenIAP provides:
- Shared specification — Common types, error codes, and purchase flows across all platforms
- Generated type-safe bindings — Swift, Kotlin, Dart, and GDScript from a single GraphQL schema
- Platform implementations — openiap-apple (StoreKit 2) and openiap-google (Play Billing 8.x)
- Verification profiles — Standardized receipt validation and purchase verification patterns
Other libraries built on OpenIAP: react-native-iap · flutter_inapp_purchase · kmp-iap · godot-iap
Learn more about the OpenIAP standard →
Community
Have a question or need help? Ask in expo-iap Q&A Discussions.
For bug reports, please open an issue.
