مرجع نسخه دوم API توسعهدهنده
بررسی وضعیت خرید درونبرنامهای
برای بررسی وضعیت خرید درونبرنامهای برنامه خود از این متد استفاده کنید:
https://pardakht.cafebazaar.ir/devapi/v2/api/validate/<package_name>/inapp/<product_id>/purchases/<purchase_token>/
مقادیر داخل پرانتز شکسته – <> – باید با توجه به درخواست جایگزین شوند:
نام | مقدار |
---|---|
package_name | نام بستهای که محصول از آن خریداری شدهاست. |
product_id | SKU محصول خریداری شده. |
purchase_token | token خرید که پس از خرید از بازار به برنامه فرستاده شدهاست. |
توجه کنید که برای استفاده از این متد به access_token معتبر نیاز دارید.
نتیجه موفق این درخواست، در قالب JSON و به شکل زیر خواهد بود:
{
"consumptionState": 1,
"purchaseState": 0,
"kind": "androidpublisher#inappPurchase",
"developerPayload": "something",
"purchaseTime": 1414181378566
}
محتوای فیلدهای پاسخ به این قرار است:
نام | مقدار |
---|---|
consumptionState | وضعیت مصرف محصول. در صورتی که محصول مصرف شده باشد، مقدار آن برابر با ۰ و در غیر اینصورت برابر ۱ خواهد بود. |
purchaseState | وضعیت خرید محصول. در حالت عادی مقدار آن برابر ۰ است، در صورت بازگشت خرید (Refund) مقدار آن ۱ خواهد بود. |
kind | نوع منبع مورد دسترسی. مقدار آن در این متد همیشه برابر androidpublisher#inappPurchase است. |
developerPayload | payload ارسال شده توسط برنامه فروشنده در هنگام خرید. |
purchaseTime | زمان خرید بر حسب میلیثانیه از مبدا ۱۹۷۰/۱/۱ میلادی. |
در صورتی که به هر دلیل، درخواست معتبر نباشد، پاسخی با کد وضعیت 40X و در قالب JSON دریافت خواهید کرد که دارای یک کلید error با محتوای خطای ایجاد شده و کلید error_desciption با شرحی بیشتر درباره خطا است. به عنوان مثال در صورتی که خرید موردنظر یافت نشود، پاسخ بازگشتی با کد وضعیت 404 و به صورت زیر خواهد بود:
{
"error": "not_found",
"error_description": "The requested purchase is not found!",
}
توجه: تنها اگر error برابر با مقدار not_found باشد، خرید موردنظر انجام نشده است. این مورد میتواند بر اثر تلاش کاربر برای جعل خرید باشد.