We have aware of this problem and currently investigating it. In addition, could you double-check the IAP version you are using? The lasted IAP version should be 2.1.0 for now. Thanks.
I used it for validating Google’s Server Notification on the server-side while having a subscription upgraded or downgraded.
Step:
On the client-side, purchase the subscription A, and then set UserID in DeveloperPayload and upgrade to subscription B.
At the same time, the server will receive Google’s Server Notification when having a subscription upgraded.
The server can carefully validate UserID in DeveloperPayload and purchase token to ensure this userID did purchase a subscription.
The server can update the subscription state properly for this User in DB.
It is better to be able to get UserID from DeveloperPayload in Server Notification because the server does not know the received purchase token in Google’s Server Notification belonging to which user.
Note:
This problem only occurred in upgrade/downgrade subscription while purchasing a subscription is fine.