0

My receipt verification server is successfully using the Purchase Status API ( https://developers.google.com/android-publisher/v1_1/inapppurchases/get ) to verify an IAP receipt, but the response is missing the developerPayload.

I have been using the same API with the same server code for months and I've always gotten the developerPayload back. As of March 12 2014 it is missing.

My response:

{
  "kind": "androidpublisher#inappPurchase",
  "purchaseTime": "1394819545343",
  "purchaseState": 0,
  "consumptionState": 1
}

Expected:

{
  "kind": "androidpublisher#inappPurchase",
  "purchaseTime": long,
  "purchaseState": integer,
  "consumptionState": integer,
  "developerPayload": string
}

Any ideas why the developer payload could be missing?

Edit: this is the last order in my server logs that has a developer payload:

{
 "kind": "androidpublisher#inappPurchase",
 "purchaseTime": "1394658352037",
 "purchaseState": 0,
 "consumptionState": 1,
 "developerPayload": "cb9e60a2-1714-434c-ba40-e144f89a7e9f"
}

The date on that order is {3/12/2014 9:05:52 PM}

tayl0rs
  • 561
  • 2
  • 5
  • 14

2 Answers2

0

I observed the same behavior, but today it started working. Please check again. Google seems to be experimenting with the API and during this period, I observed that

  • First time verification returned dev payload (before consuming). But subsequent ones did not.

  • The purchase time changed after consuming. Earlier, purchase time stayed the same for an order.

  • API returned 400 (GoogleJsonResponseExeption (Invalid value) for canceled (consumed) purchases. Earlier, it used to return purchaseState : 1 for canceled (and consumed) ones for some time.

So, I am currently using it only for first time (before accepting the order). After that it does not seem to behave consistently (I have to manually handle cancelations :-( )

Kakatiyudu
  • 531
  • 5
  • 10
0

It is working again. Apparently it was a service outage.

tayl0rs
  • 561
  • 2
  • 5
  • 14