Question

I received an email from Google Wallet on Friday saying:

Our records indicate you are a Play Apps developer who may be using Google Checkout APIs for notifications or reporting. On May 20, we announced that we will be replacing these APIs.

We provided replacement Play APIs, as of July 25, and anyone using the Checkout >notifications or reporting APIs needs to implement the Play APIs by August 22 to prevent >disruption to your scripts.

If you used the Checkout API for notifications, use the Play Purchase Status API. If you >used the Checkout API for reporting, you can automate the download of your estimated sales >and earning reports via the gsutil utility

I assume that the Google Checkout APIs I must be using are in relation to the In-app Billing Version 2 implementation that I have. It relies on the Billing Service to share interprocess communications with the Google Play Store app via local notifications. So I believe that I am supposed to look into the Play Purchase Status API. I looked into it, but I wonder if there are any tutorials or better documentation for the process of transitioning from the old In-app Billing Version 2 to use the new Google Play Developer API.

The Play Purchase Status API page states:

The API is designed to be used from your backend servers as a way of securely managing in-app products and subscriptions, as well as extending and integrating them with other services.

That really adds confusion for me since all of the purchase requests and tokens are handled by the Android app on the device. My back-end server just records the information that my app sends to it via web service call. Is my back-end server now expected to periodically poll the Google Wallet servers via Play Purchase Status API?

Was it helpful?

Solution 2

This has nothing to do with in-app billing version 2, or what you are using in your app. This is about the Web services formerly offered by Google Checkout, which are being deprecated. Unless your app is accessing those Web services directly, you don't have to do anything at the app side. If you have your own Web application (for reporting,etc.) that pulls data from the Google Checkout API, you have to update it or stop using it.

OTHER TIPS

Google has now sent out emails that yes they ARE shutting down V2 of In-App Billing. I wrote a blog post discussing how to migrate (it's more like a re-write than a migration).

http://www.innodroid.com/blog/post/migrating-from-in-app-billing-v2-to-v3

Hopefully this helps others out. V3 is totally different (although much easier to understand and maintain, in my opinion).

Announcements section from Developer Console:


Beginning January 27, 2015, we will end support for the In-app Billing Version 2 API. In-app purchases made using the In-app Billing Version 2 API will be blocked.

To help ensure that users have time to update their apps, we recommend you migrate your applications to use the In-app Billing Version 3 API by November 2014.


It looks like we should still have until November.

For those of you looking for Server-To-Server API update instructions, the only noticeable difference is that you change the "v2" to "v3" in the endpoint path.

What was previously this:

https://www.googleapis.com/androidpublisher/v2/applications/packageName/purchases/products/productId/tokens/token

Is now this:

https://www.googleapis.com/androidpublisher/v3/applications/packageName/purchases/products/productId/tokens/token

They've also added a new field called "acknowledgementState", but this seems useless. If you were using it entirely to see if your purchase was consumed and valid, then the endpoint is essentially identical.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top