Skip to content

subscription_purchase_test

An event that occurs when a test payment for a subscription product is made. You can use it to create metrics for verifying the payment integration, such as the number of test payments.


Attribute name Data type Description
dateTime TIMESTAMP Indicates the date and time when the event occurred. Recorded based on the event time, and can be used as the basis for aggregation by period unit (day/week/month/hour/minute) and date range queries. (Example: 2023-05-09 19:30:35)
eventName STRING Indicates the name that identifies the event. Because all events are loaded together into a single source log, this value identifies which event it is, and it can be used as the basis for querying data by event. (Example: app_login)
userId STRING Indicates the account-based identifier of the user who triggered the event. Recorded based on the user's unique ID in the app, and can be used to count unique users, such as AU, with a distinct count aggregation.
identifierProvider STRING Indicates the system that issued the user identifier. The value is always "hive".
deviceId STRING Indicates the device-based identifier of the user who triggered the event. Recorded based on the instance value issued for each device every time the app is installed, and can be used to count unique devices (such as the number of terms agreements) with a distinct count aggregation. (Example: 33333333)
appIdGroup STRING Indicates the project where the event occurred. Recorded based on the GAMEID value registered in Hive Console > Project Settings > App ID, and can be used to compare metrics by project when you query multiple projects together. (Example: com.sample.analytics)
appId STRING Indicates the unique ID of the app where the event occurred. Recorded based on the APPID registered in Hive Console > Project Settings > App ID, and can be used to distinguish metrics by app. (Example: com.sample.analytics.google.global.android.common)
country STRING Indicates the user's country identified when the event occurred. Recorded in ISO 3166-1 alpha-2 uppercase format, and can be used to compare the number of users, revenue, retention, and so on by country. (Example: KR, US)
serverId STRING Indicates the app server the user was connected to when the event occurred. Recorded based on the server identifier sent by the app, and can be used to compare the number of users, revenue, and retention by server. (Example: KR, GLOBAL)
model STRING Indicates the model name of the user's device when the event occurred. Recorded based on the device model value sent by the client, and can be used to compare metrics by device model. (Example: iPhone 12 Pro, SHW-M250S)
appVer STRING Indicates the app version when the event occurred. Recorded based on the app version information, and can be used with the os attribute to compare users by app version. (Example: 4.3.3, 1.6.5)
market STRING Indicates the market where the user installed the app when the event occurred. Recorded based on the market where the app is installed or serviced, and can be used to compare metrics by market. (Example: GO (Google Play), AP (Apple App Store), HS (direct distribution))
osVer STRING Indicates the OS version of the user's device when the event occurred. Recorded based on the device's operating system version, and can be used to compare metrics by OS version. (Example: 9.2, 16.3.1)
lang STRING Indicates the language value when the event occurred. Recorded based on the app or device language (ISO 639 alpha-2, lowercase), and can be used to compare metrics by language. (Example: ko, en)
os STRING Indicates the operating system of the user's device when the event occurred. Recorded based on the platform value sent by the client, and can be used to compare metrics by OS. (Example: A (Android), I (iOS))
clientIp STRING Indicates the IP of the user's device where the event occurred. Recorded with the last segment of the IP masked, and can be used to query data such as the number of devices by IP range. (Example: 127.0.0.x)
sdkVer STRING Indicates the Hive Axyl SDK version when the event occurred. Recorded based on the Hive Axyl SDK version applied to the client, and can be used to compare data collection status by SDK version. (Example: 1.0.0)
productPrice INT(FLOAT) Indicates the payment amount for a single product. Recorded based on the product price sent by the client at the time of payment (supplementing productId), and can be used to analyze product prices and payment volume with sum and average aggregations. (Example: 1.99)
currency STRING Indicates the payment currency at the time of purchase. Recorded based on the payment currency value, and can be used to separate revenue by currency. (Example: KRW, USD, JPY)
quantity INT(INTEGER) Indicates the quantity of products the user purchased. Recorded based on the quantity sent in the payment request or during purchase processing, and can be used to calculate the number of products sold and the average purchase quantity per user. (Example: 1, 20)
transactionId STRING Indicates the unique number that identifies a payment. Recorded based on the receipt ID issued by the market for regular payments and refunds, and on the identifier issued per subscription for subscriptions, and can be used to count payments with a distinct count aggregation or to link purchases with refund and cancellation events. (Example: GPA.1234-5678-9101-12345)
productId STRING Indicates the ID of the purchased product. Recorded based on the unique product ID registered in Hive Billing, and can be used to compare revenue and the number of purchases by product. (Example: com.sample.analytics.dia1000)
productName STRING Indicates the name of the purchased product. Recorded based on the unique product name registered in Hive Billing, and can be used to compare revenue by product name. (Example: Diamond 100)
level INT(INTEGER) Indicates the level value when the event occurred. Depending on the event, the level at that time, such as the account or character level, is recorded, and it can be used to calculate the average level and the final level reached with an average or maximum aggregation. (Example: 43)
characterId STRING Indicates the character ID at the time of purchase. Recorded based on the character ID sent in the app information (game_info) of the purchase event, and can be used to compare payment metrics by character.
characterTypeId STRING Indicates the character type ID at the time of purchase. Recorded based on the character type sent in the app information of the purchase event, and can be used to compare payment metrics by character type.
characterLevel STRING Indicates the character level at the time of purchase. Recorded based on the character level sent in the app information of the purchase event, and can be used to calculate the average character level of paying users with an average aggregation.
isEmulator STRING Indicates whether the client was running on an emulator when the event occurred. Recorded based on the emulator execution value sent in the app information, and can be used to compare metrics by emulator usage. (Example: 1 (emulator), 0 (physical device))
subStartDateTime STRING Indicates the start date and time of the subscription renewal. Recorded based on the start time of the subscription renewal for that renewal period (for Google and Amazon, the date and time of the receipt verification request), and can be used to analyze subscription periods and renewal cycles. (Example: 2026-07-21 15:16:17)
subEndDateTime STRING Indicates the end date and time of the subscription renewal. Recorded based on the end time of the subscription renewal for that renewal period, and can be used to analyze subscription periods and renewal cycles. (Example: 2026-07-20 15:16:17)
itemSendOk STRING Indicates whether the in-app item was actually delivered after payment. Recorded based on whether the item was received, and can be used to analyze successful and failed item deliveries separately. (Example: Y (delivered), N (undelivered), "" (unknown))
osVersionFixed STRING normalized version string x.x.x since 19.05.16
subPaymentState INT(INTEGER) Indicates the subscription payment status (Google subscription payments v1). Recorded based on the payment status value of Google subscriptions v1, and can be used to separate metrics by subscription payment status. (Example: 0 (payment pending), 1 (payment completed), 2 (free trial))
subPaymentStateV2 STRING Indicates the subscription payment status (all except Google subscription payments v1). Recorded based on the subscription payment status value of Google subscriptions v2, Galaxy Store, Huawei, and so on, and can be used to separate metrics by subscription status. (Example: SUBSCRIPTION_STATE_ACTIVE, SUBSCRIPTION_STATE_CANCELED)
serviceMarket STRING Indicates the service market where the purchase was made. Filled in automatically based on the market value registered in Project Settings > App ID, and can be used to compare revenue by market. (Example: Google, Apple)