Skip to content

About

Unity in-app purchases and subscriptions made easy.

Topics

Resources

Contributing

Stars

120 stars

Watchers

13 watching

Forks

Latest commit

 

History

991 Commits

Folders and files

Repository files navigation

RevenueCat
Unity in-app subscriptions made easy

openupm

What is purchases-unity?

Purchases Unity is a client for the RevenueCat subscription and purchase tracking system. It is an open source framework that provides a wrapper around StoreKit, Google Play Billing and the RevenueCat backend to make implementing in-app purchases in Unity easy.

Features

RevenueCat
✅ Server-side receipt validation
➡️ Webhooks - enhanced server-to-server communication with events for purchases, renewals, cancellations, and more
🎯 Subscription status tracking - know whether a user is subscribed whether they're on iOS or Android
📊 Analytics - automatic calculation of metrics like conversion, mrr, and churn
📝 Online documentation up to date
🔀 Integrations - over a dozen integrations to easily send purchase data where you need it
💯 Well maintained - frequent releases
📮 Great support - Help Center

Getting Started

For more detailed information, you can view our complete documentation at docs.revenuecat.com.

Dependencies and Unity IAP

We use StoreKit for iOS and BillingClient for Android. This plugin also depends on purchases-ios, purchases-android and purchases-hybrid-common.

VERSIONS.md contains the dependencies versions for each release.

If using this plugin alongside Unity IAP, please check the specific instructions in our observer mode docs.

Native dependency management

The native iOS and Android libraries are declared in *Dependencies.xml files and resolved at build time by an External Dependency Manager. Starting with v10, the plugin uses Unity's official External Dependency Manager (com.unity.external-dependency-manager), which requires Unity 2022.3.33 or newer.

  • Unity Package Manager / OpenUPM: Unity's External Dependency Manager is a dependency of the package and is installed automatically.
  • .unitypackage: on first import, if the project has no dependency manager, the plugin installs Unity's External Dependency Manager through the Package Manager. This needs an interactive Editor session with access to the Unity registry. You can also install it beforehand from Window > Package Manager > Unity Registry.
  • Projects already using Google's EDM4U: nothing changes. Google's EDM4U keeps working with this plugin, but it is deprecated and no longer maintained by Google. To migrate, install Unity's External Dependency Manager, choose it when prompted, and remove EDM4U once no other package depends on it. You can switch at any time from Assets > External Dependency Manager.

Keep a single dependency manager active in a project. In particular, projects built in batch mode (CI) must declare exactly one, since the selection prompt cannot be answered there.

About

Unity in-app purchases and subscriptions made easy.

Topics

Resources

Contributing

Stars

120 stars

Watchers

13 watching

Forks

Releases

Packages

Used by

Contributors

Languages