Page Summary
-
A ProductPurchase resource provides information about a user's in-app product purchase status.
-
The JSON representation of a ProductPurchase includes details like purchase time, state, consumption state, order ID, and product ID.
-
The resource includes methods to acknowledge, consume, and get the status of an in-app item purchase.
Resource: ProductPurchase
A ProductPurchase resource indicates the status of a user's inapp product purchase.
| JSON representation |
|---|
{ "kind" : string , "purchaseTimeMillis" : string , "purchaseState" : integer , "consumptionState" : integer , "developerPayload" : string , "orderId" : string , "purchaseType" : integer , "acknowledgementState" : integer , "purchaseToken" : string , "productId" : string , "quantity" : integer , "obfuscatedExternalAccountId" : string , "obfuscatedExternalProfileId" : string , "regionCode" : string , "refundableQuantity" : integer } |
| Fields | |
|---|---|
kind
|
This kind represents an inappPurchase object in the androidpublisher service. |
purchaseTimeMillis
|
The time the product was purchased, in milliseconds since the epoch (Jan 1, 1970). |
purchaseState
|
The purchase state of the order. Possible values are: 0. Purchased 1. Canceled 2. Pending |
consumptionState
|
The consumption state of the inapp product. Possible values are: 0. Yet to be consumed 1. Consumed |
developerPayload
|
A developer-specified string that contains supplemental information about an order. |
orderId
|
The order id associated with the purchase of the inapp product. |
purchaseType
|
The type of purchase of the inapp product. This field is only set if this purchase was not made using the standard in-app billing flow. Possible values are: 0. Test (i.e. purchased from a license testing account) 1. Promo (i.e. purchased using a promo code). Does not include Play Points purchases. 2. Rewarded (i.e. from watching a video ad instead of paying) |
acknowledgementState
|
The acknowledgement state of the inapp product. Possible values are: 0. Yet to be acknowledged 1. Acknowledged |
purchaseToken
|
The purchase token generated to identify this purchase. May not be present. |
productId
|
The inapp product SKU. May not be present. |
quantity
|
The quantity associated with the purchase of the inapp product. If not present, the quantity is 1. |
obfuscatedExternalAccountId
|
An obfuscated version of the id that is uniquely associated with the user's account in your app. Only present if specified using https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedaccountid when the purchase was made. |
obfuscatedExternalProfileId
|
An obfuscated version of the id that is uniquely associated with the user's profile in your app. Only present if specified using https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedprofileid when the purchase was made. |
regionCode
|
ISO 3166-1 alpha-2 billing region code of the user at the time the product was granted. |
refundableQuantity
|
The quantity eligible for refund, i.e. quantity that hasn't been refunded. The value reflects quantity-based partial refunds and full refunds. |
Methods |
|
|---|---|
|
Acknowledges a purchase of an inapp item. |
|
Consumes a purchase for an inapp item. |
|
Checks the purchase and consumption status of an inapp item. |
Error codes
The operations of this resource, return the following HTTP error codes:
| Error code | Reason | Description | Resolution |
|---|

