com.unity.purchasing 5.0.0-pre.7

com.unity.purchasing

Source docs
Notes: processedReleased June 17, 2025

Browse versions

PreviousNext

Unity Compatibility

Minimum Unity: 2021.3

Package Dependencies

Features

  • Added `UnityIAPServies.StoreController` as a wrapper around the other services obtained through UnityIAPServices.
  • - Added `StoreController.PurchaseProduct(string productId)` to initiate a purchase using only the productId.
  • Added messages to `[Obsolete]` attributes on deprecated APIs, test methods, and internal classes.
  • Samples - Added Minimal Coded IAP 5.0.0 Sample to demonstrate a very basic implementation of Coded IAP.
  • Added documentation note in `UpgradeV5.md` clarifying the singleton behavior of `ConfigurationBuilder.Instance` and the use of its constructor as a workaround for scenarios requiring multiple initializations.
  • Added backwards compatibility support for `IAPListener` and `CodelessIAPButton` callbacks. When updating from an older IAP version, your scripts will continue to work without modification.
  • Apple - Added `IAppleStoreExtendedPurchaseService.SetRefreshAppReceipt` to refresh the receipt when a purchase succeeds (true by default). This is useful if are using a backwards compatible implementation or if you use `IOrderInfo.PurchasedProductInfo.subscriptionInfo`.
  • Added `IOrderInfo.Google` to provide access to information specific to orders coming from the Google Play Store.
  • Added `Orders.DeferredOrders` to provide access to deferred orders fetched from the store.
  • Added back `useFakeStoreUIMode` and `useFakeStoreAlways` variables to `StandardPurchasingModule` for backwards compatibility.
  • - Important: neither setting is respected by the FakeStore. Functionality has not been reimplemented.
  • Added back `Instance(AppStore androidStore)` call to `StandardPurchasingModule` for backwards compatibility. Calling `Instance(AppStore androidStore)` will return the same results as `Instance()` regardless of the provided AppStore.

📈 Improvements

  • IAP Catalog - Renamed `Automatically initialize UnityPurchasing (recommended)` to `Automatically initialize UnityIAPServices (recommended)`.
  • - Brought back `Apple Configuration`, `Google Configuration` and `Catalog Export` in IAP Catalog.
  • - Updated translation locales for Google Play Store and Apple App Store
  • Renamed APIs introduced since 5.0.0-pre.1 to improve consistency:
  • - `IStoreService.ConnectAsync` to `IStoreService.Connect`
  • - `IPurchaseService.ConfirmOrder` to `IPurchaseService.ConfirmPurchase`
  • - `IPurchaseService.IsProductEntitled` to `IPurchaseService.CheckEntitlement`
  • - `Entitlement.ProductChecked` to `Entitlement.Product`
  • - `Entitlement.EntitlementOrder` to `Entitlement.Order`
  • - `ConfirmOrderException` to `ConfirmPurchaseException`
  • - `INativeStore.RetrieveProducts` to `INativeStore.FetchProducts`
  • Callbacks introduced since 5.0.0-pre.1 were changed to events:
  • - `IProductService.AddProductsUpdatedAction` and `IProductService.RemoveProductsUpdatedAction` were replaced with `IProductService.OnProductsUpdated`
  • - `IProductService.AddProductsFetchFailedAction` and `IProductService.RemoveProductsFetchFailedAction` were replaced with `IProductService.OnProductsFetchFailed`
  • - `IPurchaseService.AddPendingOrderUpdatedAction` and `IPurchaseService.RemovePendingOrderUpdatedAction` were replaced with `IPurchaseService.OnPurchasePending`
  • - `IPurchaseService.AddConfirmedOrderUpdatedAction` and `IPurchaseService.RemoveConfirmedOrderUpdatedAction` were replaced with `IPurchaseService.OnPurchaseConfirmed`
  • - `IPurchaseService.AddPurchaseFailedAction` and `IPurchaseService.RemovePurchaseFailedAction` were replaced with `IPurchaseService.OnPurchaseFailed`
  • - `IPurchaseService.AddPurchaseDeferredAction` and `IPurchaseService.RemovePurchaseDeferredAction` were replaced with `IPurchaseService.OnPurchaseDeferred`
  • - `IPurchaseService.AddFetchedPurchasesAction` and `IPurchaseService.RemoveFetchedPurchasesAction` were replaced with `IPurchaseService.OnPurchasesFetched`
  • - `IPurchaseService.AddFetchPurchasesFailedAction` and `IPurchaseService.RemoveFetchPurchasesFailedAction` were replaced with `IPurchaseService.OnPurchasesFetchFailed`
  • - `IPurchaseService.AddCheckEntitlementAction` and \`IPurchaseService.RemoveCheckEntitlementActio