OpenIAB Unity Plugin for Android (Google Play, Samsung Apps, Amazon Appstore, SlideME, Nokia Store, Appland, Aptoide, AppMall, Yandex.Store, Fortumo), Windows Phone and iOS.
Clone or download
Latest commit 19b1719 Jan 11, 2017

Dear friends

Currently our small team doesn't have enough time to support and develop the project. I hope in the nearest future we will continue the work. Thank you!

OpenIAB Plugin. Open In-App Billing for Android, iOS and Windows Phone 8

##Releases The latest build is always available [here] (

##About Supporting in-app purchases for different platforms and stores is not a simple process. The developer has to study new API for each new store that he/she wants to use in an application.

OpenIAB plugin enables Unity developers to reduce integration and maintenance time. The plugin uses one common interface for 3 mobile platforms: Android, iOS and Windows Phone 8. It’s based on OpenIAB library developed by One Platform Foundation team.

OpenIAB plugin comes with full source code under Apache 2.0 license.

Supported Stores:
- Google Play
- Amazon Appstore
- Yandex.Store
- Samsung Apps
- Nokia Store
- SlideMe
- Appland
- Aptoide
- AppMall

iOS: Apple Store

Windows phone 8: Windows Phone Store

##Version The current version is

##Tutorial For a comprehensive tutorial, Check-out the complete turorial on master here.

##Sample project You can check out this sample project here.

##How to build plugin Plugin build view Gradle. You no need to download binary package of gradle tools, only requirements is installed JDK version 1.6 or great and setup JAVA_HOME environment variable.

Before build plugin you must:

  1. Install Unity, start it and accept license agreement.
  2. Unity must be closed while build is running.

For build project you must run from terminal in unity_plugin directory of project

../gradlew clean buildPlugin

On Windows run

..\gradlew.bat clean buildPlugin

If build was successfully, you can find output unitypackage file in directory


Build tools search unity by default path for OS. If you change default path, you need to set path unityExecutable property in file.

##Options Create Options object.

var options = new Options();

Set store search strategy.

options.storeSearchStrategy = SearchStrategy.INSTALLER_THEN_BEST_FIT;

Set available stores to restrict the set of stores to check.

options.availableStoreNames = new string[] { OpenIAB_Android.STORE_GOOGLE, OpenIAB_Android.STORE_YANDEX };

Set preferred store names (works only for store search strategy OpenIabHelper.Options.SEARCH_STRATEGY_BEST_FIT and OpenIabHelper.Options.SEARCH_STRATEGY_INSTALLER_THEN_BEST_FIT).

options.prefferedStoreNames = new string[] { OpenIAB_Android.STORE_GOOGLE, OpenIAB_Android.STORE_YANDEX };

Set store keys.

options.storeKeys = new Dictionary<string, string> { {OpenIAB_Android.STORE_GOOGLE, "publicKey"} };

Set verifying mode (applicable only for Google Play, Appland, Aptoide, AppMall, SlideMe, Yandex.Store).

options.verifyMode = OptionsVerifyMode.VERIFY_SKIP;

Init with specified options.


##Suggestions/Questions We seek to constantly improve our project and give Unity developers more power when working with in-app purchases. We are open to any comments and suggestions you may have regarding the additional features to be implemented in our plugin.

If you know about issues we missed, please let us know in
Issues on GitHub:
or by email:

If you detect some issues with integration into your project, please let us know in

When you post a question on stackoverlow, mark your post with the following tags
“in-app purchase”, “unity3d”, “openiab”. It will help you to get a faster response
from our community.

##License The source code of the OpenIAB Unity plugin and OpenIAB library are available under the terms of the Apache License, Version 2.0:

The OpenIAB API specification and the related texts are available under the terms of the Creative Commons Attribution 2.5 license: