In-App Payment

Receipt Object

This object is provided for on-device app information. It is NOT the "signedReceipt" field used for purchase verification of off-site content.
{
    "version"         : string,
    "receiptId"       : int,
    "orderNo"         : int,
    "purchaseTime"    : number,
    "type"            : string,
    "appId"           : string,
    "itemId"          : string,
    "quantity"        : int,
    "vendorData"      : string BLOB,
    "accountUniqueId" : string BLOB,
    "deviceUniqueId"  : string BLOB
}
Attribute Type Description
version string Receipt version.
receiptId int Receipt ID. Uniquely identifies the receipt.
orderNo int Order number. Can be used correlate the receipt to a payment transaction.
purchaseTime number Time of purchase denoted in milliseconds since Epoch (January 1, 1970), aka Unix time.
type string "P" (perishable) or "N" (non-perishable). Subscriptions are not currently supported.
appId string Application ID.
itemId string Item ID. 64 characters maximum.
quantity int Number of this item. Relevant for perishable items, always 1 for non-perishable items.
vendorData string BLOB Sent from vendor when purchasing an item. Developers can use this field to add their own security features. 256 bytes maximum. Sample uses for this field could include: encoding purchase metadata, subscription information (start date, expiration date), or an app-specific user-account.
accountUniqueId string BLOB Account BLOB. An uncorrelated account identifier, unique to the developer selling the item. This can be used to differentiate receipts belonging to different users without revealing the user's identity.
deviceUniqueId string BLOB Device BLOB. Identifies the device where the receipt was requested. Based on the developer ID and the device's NDUID (a 20-byte (160 bit) SHA-1 digest unique to each device).