Problem identifying transaction related to pending renewal info

Originator:arik
Number:rdar://33866393 Date Originated:13/8/17
Status:open Resolved:
Product:iOS Product Version:
Classification:bug Reproducible:Always
 
Summary:
When validating a receipt against the validateReceipt endpoint, we receive a JSON response containing a new section called "pending renewal info". This section seems to include an entry for every original transaction ID of a subscription that exists in the latest receipt info section. However, while the latest receipt info includes the transaction and original transaction IDs, the entries in the latest receipt info do not which makes it very difficult to match a pending renewal info entry to the right receipt transaction.

Moreover, we've actively seen cases where the pending_renewal_info section includes several entries with the same product ID, i.e. entries of subscriptions from the same group (see attached files).

Note that the following possible timeline of subscriptions will incur 2 entries in the pending renewal info section:
- Start trial, disable auto renew and let trial expires.
- Couple of days after the trial ends, user subscribes with the same subscription group.

See attached base64 receipt and the response we got from the validation server.

Steps to Reproduce:
Validate a receipt with 2 distinct subscriptions from the same group that were bought one after the other (the first expired and then the second was bought) with the validateReceipt endpoint.

(e.g. see attached receipt.)

Expected Results:
the pending_renewal_info should include the TID and OTID of the associated transactions.

Observed Results:
No TID nor OTID are listed under the pending renewal info entries.

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!