Unity Analytics provides a flexible method for tracking monetization events through in-app purchases. This method should be called every time a player triggers a monetization event.
Currently, we support iOS and Android platforms for receipt verifications. The Transaction method requires a price parameter, a currency and an optional Apple iTunes / Google Play receipt string.
To validate Android monetization, please enter your Google Public Key HERE
// Reference the Unity Analytics SDK package
using UnityEngine.Cloud.Analytics;
// Use this call for each and every place that a player triggers a monetization event
UnityAnalytics.Transaction(string productId, decimal price,
string currency, string receipt,
string signature);
Name | Type | Description |
---|---|---|
productId | string | The id of the purchased item. |
price | decimal | The price of the item. |
currency | string | Abbreviation of the currency used for the transaction. For example “USD” (United States Dollars). See here for a standardized list of currency abbreviations. |
receipt | string | Receipt data (iOS) or receipt ID (Android) for in-app purchases to verify purchases with Apple iTunes or Google play. Use null in the absence of receipts. For more details see the Receipt Verification Guide on the forums. |
signature | string | Android receipt signature. If using native Android use the INAPP_DATA_SIGNATURE string containing the signature of the purchase data that was signed with the private key of the developer. The data signature uses the RSASSA-PKCS1-v1_5 scheme. Pass in null in the absence of a signature. |
The example below is for a $0.99 transaction in USD without receipt validation.
UnityAnalytics.Transaction("12345abcde", 0.99m, "USD", null, null);
If you are using In-App-Purchase plugins (that is Prime31 or Unibill) here are the implementation details:
Pass in null since this is not used.
Make sure you have entered your Google Public Key on your dashboard under