Subscription Purchase Verification
This API allows you to verify the credibility of a subscription purchase. It is useful for a final verification before delivering the item to the user, ensuring the purchase is correct and preventing fraud. This API does not require authentication.
Endpoint
| Method | URL |
|---|---|
| GET | https://api.catappult.io/productv2/8.20250505/google/inapp/v3/applications/{packageName}/purchases/subscriptions/{sku}/tokens/{purchaseToken} |
Authentication
No authentication required.
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
packageName | string | Required | Package name of the application. |
sku | string | Required | The SKU associated to the purchase. |
purchaseToken | string | Required | Purchase ID defined as token in the Purchase class of the SDK. |
Response
| Status | Description |
|---|---|
200 | Success. Returns the subscription purchase details. |
Success (200) Response Fields
| Name | Type | Description |
|---|---|---|
kind | String | Type of purchase made. |
startTimeMillis | String | Start time of the subscription in milliseconds. |
expiryTimeMillis | String | Expiry time of the subscription in milliseconds. |
autoRenewing | Boolean | Specifies if the subscription will renew automatically. If true, the subscription remains active and is scheduled to renew on the upcoming billing date. If false, the subscription has been canceled and access will end on the next billing date unless the user restores automatic renewal or completes a manual renewal. |
priceCurrencyCode | String | The price currency, as an ISO 4217 alphabetic code. Example: USD |
priceAmountMicros | Long | The price in micro-units (millionths of the price currency). Example: 4990000 (for 4.99) |
countryCode | String | Country code following ISO-3166-1-A2 guidelines. Example: US |
developerPayload | String | String-based payload specified by the developer when initiating this purchase. |
paymentState | Int | State of the payment. |
orderId | String | The order UID (Unique Identifier) used internally in Aptoide. |
acknowledgementState | Int | State of the acknowledgment. |
Example Response
{
"kind": "androidpublisher#subscriptionPurchase",
"startTimeMillis": "1745418985333",
"expiryTimeMillis": "1746023785333",
"autoRenewing": false,
"priceCurrencyCode": "EUR",
"priceAmountMicros": 200000,
"countryCode": "PT",
"developerPayload": "6414c947-47cf-4fcb-bb2c-ac29e58a2d2d",
"paymentState": 1,
"orderId": "JWIR5I5NVI6JMC44",
"acknowledgementState": 1
}
paymentState
| Value | Title | Description |
|---|---|---|
| 0 | Pending | Payment is still pending. |
| 1 | Received | Payment has been received. |
acknowledgementState
| Value | Title | Description |
|---|---|---|
| 0 | Pending | Purchase is still not acknowledged. |
| 1 | Acknowledged | Purchase has been acknowledged. |