Version: 2023.2
LanguageEnglish
  • C#

Analytics.Transaction

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

Declaration

public static Analytics.AnalyticsResult Transaction(string productId, Decimal amount, string currency);

Declaration

public static Analytics.AnalyticsResult Transaction(string productId, Decimal amount, string currency, string receiptPurchaseData, string signature);

Declaration

public static Analytics.AnalyticsResult Transaction(string productId, Decimal amount, string currency, string receiptPurchaseData, string signature, bool usingIAPService);

Parameters

productId The id of the purchased item.
amount The price of the item.
currency Abbreviation of the currency used for the transaction. For example “USD” (United States Dollars). See http://en.wikipedia.org/wiki/ISO_4217 for a standardized list of currency abbreviations.
receiptPurchaseData Receipt data (iOS) / receipt ID (android) / for in-app purchases to verify purchases with Apple iTunes / Google Play. Use null in the absence of receipts.
signature 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 absence of a signature.
usingIAPService Set to true when using UnityIAP.

Description

Tracking Monetization (optional).

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.

The Transaction method requires a price parameter, a currency and an optional Apple iTunes / Google Play receipt string.

using System;
using UnityEngine;

#if ENABLE_CLOUD_SERVICES_ANALYTICS using UnityEngine.Analytics;

public class GamePurchaseMonoBehaviour : MonoBehaviour { public void OnPurchase() { Analytics.Transaction("12345abcde", 0.99m, "USD", null, null); } } #endif