private void OnPurchaseSucceded(Purchase purchase) { Debug.Log("Purchase succeded: " + purchase.Sku + "; Payload: " + purchase.DeveloperPayload); if (!VerifyDeveloperPayload(purchase.DeveloperPayload)) { return; } Debug.Log("Purchase JSON: " + purchase.OriginalJson); Debug.Log("Purchase Signature: " + purchase.Signature); // Check what was purchased and update game switch (purchase.Sku) { case SKU_SMALL_GEM: // Consume repair kit OpenIAB.consumeProduct(purchase); break; case SKU_MED_GEM: // _ship.IsGodMode = true; OpenIAB.consumeProduct(purchase); break;; case SKU_LARGE_GEM: // _ship.IsPremiumSkin = true; OpenIAB.consumeProduct(purchase); break; case SKU_XLARGE_GEM: OpenIAB.consumeProduct(purchase); break; case SKU_MEGA_GEM: OpenIAB.consumeProduct(purchase); break; case SKU_EPIC_GEM: OpenIAB.consumeProduct(purchase); break; default: Debug.LogWarning("Unknown SKU: " + purchase.Sku); break; } // _processingPayment = false; PF_Bridge.RaiseCallbackSuccess("IAB Purchase Success", PlayFabAPIMethods.MakePurchase, MessageDisplayStyle.none); if (Application.platform == RuntimePlatform.Android) { PF_Bridge.ValidateAndroidPurcahse(purchase.OriginalJson, purchase.Signature); } else if (Application.platform == RuntimePlatform.IPhonePlayer) { // I have chosen to put the reciept in the developer payload field as this was not being used, and seemed like a good place to pass this through PF_Bridge.ValidateIosPurchase(purchase.DeveloperPayload); } }