Stay organized with collections
Save and categorize content based on your preferences.
google::play::billing::ProductPurchaseDetails
#include <billing/models.h>
Details for a purchased product.
Summary
Public attributes
is_acknowledged
bool google::play::billing::ProductPurchaseDetails::is_acknowledged
The acknowledgement state of this purchase.
obfuscated_account_id
std::string google::play::billing::ProductPurchaseDetails::obfuscated_account_id
The obfuscated account id for the purchase.
An obfuscated version of the ID that is uniquely associated with the user's account in the game. Only present (non-empty) if specified when the purchase flow was launched.
See LaunchPurchaseFlowParams::obfuscated_account_id for more details.
obfuscated_profile_id
std::string google::play::billing::ProductPurchaseDetails::obfuscated_profile_id
The obfsucated profile id for the purchase.
An obfuscated version of the id that is uniquely associated with the user's profile in the game. Only present (non-empty) if specified when the purchase flow was launched.
See LaunchPurchaseFlowParams::obfuscated_profile_id for more details.
order_id
std::string google::play::billing::ProductPurchaseDetails::order_id
A unique order identifier for the transaction.
This identifier corresponds to the Google order ID.
The order ID will be an empty string if the purchase is in the PurchaseState::kPurchaseStatePending state and populated if the purchase has transitioned to the PurchaseState::kPurchaseStatePurchased state.
package_name
std::string google::play::billing::ProductPurchaseDetails::package_name
The package name of the game associated with this purchase.
product_id
std::string google::play::billing::ProductPurchaseDetails::product_id
Unique identifier for the product.
purchase_state
PurchaseState google::play::billing::ProductPurchaseDetails::purchase_state
purchase_time_epoch_seconds
int64_t google::play::billing::ProductPurchaseDetails::purchase_time_epoch_seconds
The time the purchase was made in seconds since the epoch.
purchase_token
std::string google::play::billing::ProductPurchaseDetails::purchase_token
Token representing the purchase.
quantity
int64_t google::play::billing::ProductPurchaseDetails::quantity
The quantity of the purchase.
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-04-10 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-04-10 UTC."],[],[],null,["# google::play::billing::ProductPurchaseDetails Struct Reference\n\ngoogle::play::billing::ProductPurchaseDetails\n=============================================\n\n\n`#include \u003cbilling/models.h\u003e`\n\nDetails for a purchased product.\n\nSummary\n-------\n\n| ### Public attributes ||\n|---------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------|\n| [is_acknowledged](#structgoogle_1_1play_1_1billing_1_1_product_purchase_details_1a826b8baf4eeaac8d6b7238a83e8c2ca9) | `bool` The acknowledgement state of this purchase. |\n| [obfuscated_account_id](#structgoogle_1_1play_1_1billing_1_1_product_purchase_details_1ad98dd29b3a2a64a5cfaec20fd4eadc35) | `std::string` The obfuscated account id for the purchase. |\n| [obfuscated_profile_id](#structgoogle_1_1play_1_1billing_1_1_product_purchase_details_1a192ffa5cbbeed689635cde7a855e50bc) | `std::string` The obfsucated profile id for the purchase. |\n| [order_id](#structgoogle_1_1play_1_1billing_1_1_product_purchase_details_1a72cd262de20f1172f597b4bdd289e8d0) | `std::string` A unique order identifier for the transaction. |\n| [package_name](#structgoogle_1_1play_1_1billing_1_1_product_purchase_details_1a85faec50318cea89f9755385cfe7a3df) | `std::string` The package name of the game associated with this purchase. |\n| [product_id](#structgoogle_1_1play_1_1billing_1_1_product_purchase_details_1a2be735fc8192498d20c5f4c351811c80) | `std::string` Unique identifier for the product. |\n| [purchase_state](#structgoogle_1_1play_1_1billing_1_1_product_purchase_details_1ab18b42b9c364ce940d3e8a53efae51ed) | `PurchaseState` State of the purchase. |\n| [purchase_time_epoch_seconds](#structgoogle_1_1play_1_1billing_1_1_product_purchase_details_1a1cf4ecc376bd31a64fd42a2ee134e1e1) | `int64_t` The time the purchase was made in seconds since the epoch. |\n| [purchase_token](#structgoogle_1_1play_1_1billing_1_1_product_purchase_details_1a8acdfa750ceab9b1c2411bf07ad8fa4c) | `std::string` Token representing the purchase. |\n| [quantity](#structgoogle_1_1play_1_1billing_1_1_product_purchase_details_1acece3229e173ada3f378a2ac82fc0b05) | `int64_t` The quantity of the purchase. |\n\nPublic attributes\n-----------------\n\n### is_acknowledged\n\n```scdoc\nbool google::play::billing::ProductPurchaseDetails::is_acknowledged\n``` \nThe acknowledgement state of this purchase. \n\n### obfuscated_account_id\n\n```scdoc\nstd::string google::play::billing::ProductPurchaseDetails::obfuscated_account_id\n``` \nThe obfuscated account id for the purchase.\n\nAn obfuscated version of the ID that is uniquely associated with the user's account in the game. Only present (non-empty) if specified when the purchase flow was launched.\n\nSee [LaunchPurchaseFlowParams::obfuscated_account_id](/games/playgames/native-pc/reference/struct/google/play/billing/launch-purchase-flow-params#structgoogle_1_1play_1_1billing_1_1_launch_purchase_flow_params_1a5fad067af07ff63cd4b03b8ccc18065d) for more details. \n\n### obfuscated_profile_id\n\n```scdoc\nstd::string google::play::billing::ProductPurchaseDetails::obfuscated_profile_id\n``` \nThe obfsucated profile id for the purchase.\n\nAn obfuscated version of the id that is uniquely associated with the user's profile in the game. Only present (non-empty) if specified when the purchase flow was launched.\n\nSee [LaunchPurchaseFlowParams::obfuscated_profile_id](/games/playgames/native-pc/reference/struct/google/play/billing/launch-purchase-flow-params#structgoogle_1_1play_1_1billing_1_1_launch_purchase_flow_params_1aaee08fdfa1051380d9eea657adef05a7) for more details. \n\n### order_id\n\n```scdoc\nstd::string google::play::billing::ProductPurchaseDetails::order_id\n``` \nA unique order identifier for the transaction.\n\nThis identifier corresponds to the Google order ID.\n\nThe order ID will be an empty string if the purchase is in the PurchaseState::kPurchaseStatePending state and populated if the purchase has transitioned to the PurchaseState::kPurchaseStatePurchased state. \n\n### package_name\n\n```carbon\nstd::string google::play::billing::ProductPurchaseDetails::package_name\n``` \nThe package name of the game associated with this purchase. \n\n### product_id\n\n```scdoc\nstd::string google::play::billing::ProductPurchaseDetails::product_id\n``` \nUnique identifier for the product. \n\n### purchase_state\n\n```scdoc\nPurchaseState google::play::billing::ProductPurchaseDetails::purchase_state\n``` \nState of the purchase. \n\n### purchase_time_epoch_seconds\n\n```scdoc\nint64_t google::play::billing::ProductPurchaseDetails::purchase_time_epoch_seconds\n``` \nThe time the purchase was made in seconds since the epoch. \n\n### purchase_token\n\n```scdoc\nstd::string google::play::billing::ProductPurchaseDetails::purchase_token\n``` \nToken representing the purchase. \n\n### quantity\n\n```scdoc\nint64_t google::play::billing::ProductPurchaseDetails::quantity\n``` \nThe quantity of the purchase."]]