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. To validate Android monetization, please enter your Google Public Key in Unity Analytics Project Form.
The Transaction method requires a price parameter, a currency and an optional Apple iTunes / Google Play receipt string.
// 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 setion below. |
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);
Here are the implementation details:
To track monetization in the SDK you need to call the Transaction method and pass in the necessary parameters.
The Transaction method looks like this:
UnityAnalytics.Transaction(string productId, decimal price, string currency, string receipt, string signature);
example:
UnityAnalytics.Transaction("PRODUCT_ID", 0.99m, "USD", null, null);
We currently support both iOS and Android platforms and also support receipt verification.
With receipt verification, you’ll have the ability to differentiate fraud and real transactions on your dashboard.
Pass in null since this is not used.
Make sure you have entered your Google Public Key on your dashboard under
You can get your Google Public Key under Google Play Developer console > All applications > Services & APIs > Your License Key For This Application