I’m currently writing an API endpoint for use by an Android app, to interface with the “Restore a Google Play purchase by order ID” REST API endpoint. This is due to well-known “consumed purchase” misconfiguration issue. It’s hard to test it due to the nature of the issue, and therefore I have a few questions.
- If the restoration succeeds (i.e. the response code is 200), can I immediately query the customer info (using the app SDK) and expect the entitlement that wasn’t present before to now be immediately present, or does it take time? I will disable caching for the request.
- If the customer entered an invalid order_id (the GPA… value) what response code should I expect from the API? I’m seeing 404, is that correct?
- What safeguards are there for customers restoring to multiple devices, for example if their order_id became public? Once an order is restored can it be restored to other users? How much protection should I build into my API?
- Are there any other potential vectors for abuse I should be aware of?
- Is the {customer_id} path segment in the REST API URL the full, URI-encoded “$RCAnonymousID:...” value, or just the numbers after $RCAnonymousID:?
Also, are there any other common response codes?
