Thank you for the sharing this finding about the ambiguity in the release note, and for reaching out for clarification @James15478 .
We expect fully complete receipts will be seen by apps which trivially upgrade to 1.23.3+.
These abbreviated receipts may appear with 1.23.2 however as that release has this feature as “always-on”, and 1.23.3 changed this feature to be “opt-in”.
In more detail:
Generally nothing has changed with Google, and internally all receipts will contain packageName when purchase details are fetched via the “primary” Google purchase query API or are collected as a side-effect of the normal purchase flow. Unity IAP 1.23.3 uses these flows to collect receipts by default.
Recently (1.23.2+) Unity IAP added a feature to make heavier use a different Google API, which acts as more of a historical query, to recover from interrupted purchases.
Google Play 的帳單系統 | Google Play's billing system | Android Developers On that web page Google documents the responses for that API with a set of documentation tables. (Aside, some references seem to me to be crossed - in one field a reference is made to “table 6” which does not appear to match the referenced contents.) Importantly, the “getPurchaseHistory” tables show no “packageName”. This corresponds to the INAPP_PURCHASE_DATA_LIST key. Scrolling up the table documenting the responses to the “getPurchases” API, this does have packageName in its INAPP_PURCHASE_DATA definition. These are for the historical and what I’m calling the “primary” APIs, respectively. Unity IAP uses the getPurchaseHistory for its 1.23.2+ feature.
I expect receipts WITHOUT packageName might appear when a) a developer opts-in to the 1.23.3 feature using the Unity IAP API: bool IGooglePlayConfiguration.aggressivelyRecoverLostPurchases = true, and b) a player triggers this recovery behavior by experiencing a purchase which is both interrupted and successful. Anecdotally I have heard this interrupt may occur for one tenth of a percentage of purchases though I don’t have statistics to prove that. I can provide a reproduction scenario if that would be of help, using two phones and some quick “on/off” of the wifi hotspot setting.
Getting back to your question, to reiterate, unless your app is following the opt-in usage with 1.23.3, or it is using 1.23.2, that app will see full receipts, with packageName. Does this overlook an aspect of your question, @James15478 ?