Hi Haley, thanks for your help!
I’ve tried creating a brand new sandbox user and repeating the process (installing the app, making a consumable purchase, uninstalling the app, installing it again, and finally trying to restore my entitlement)
This still didn’t work.
My app doesn’t have subscription products so I wasn't able to test that, however, I have tried to restore while in debug loglevel. here is my output:
I’ve added my sandbox user in Settings > App Store > Sandbox Account.
I hope this helps.
2023-07-24 12:15:36.355618+0000 EventFinderTerceiran65220:7087569] 2Purchases] - DEBUG: API request completed: GET /v1/subscribers/$RCAnonymousID:0bf9ad2a5d0a48d6af04afbadccc4807 (201)
2023-07-24 12:15:36.367896+0000 EventFinderTerceiran65220:7087569] [Purchases] - DEBUG: Sending latest CustomerInfo to delegate.
2023-07-24 12:15:36.367974+0000 EventFinderTerceira 65220:7087569] ePurchases] - DEBUG: CustomerInfo updated from network.
2023-07-24 12:15:36.368002+0000 EventFinderTerceira065220:7087184] ePurchases] - DEBUG: Detected active subscriptions changed. Clearing trial or intro eligibility cache.
2023-07-24 12:15:36.368907+0000 EventFinderTerceira065220:7087569] dPurchases] - DEBUG: CustomerInfo updated from network.
2023-07-24 12:15:36.368948+0000 EventFinderTerceira665220:7087569] FPurchases] - DEBUG: GetCustomerInfoOperation: Finished
2023-07-24 12:15:36.369043+0000 EventFinderTerceira365220:7087569] vPurchases] - DEBUG: Serial request done: GET subscribers/$RCAnonymousID%3A0bf9ad2a5d0a48d6af04afbadccc4807, 0 requests left in the queue
2023-07-24 12:15:36.369084+0000 EventFinderTerceira:65220:7087634] 0Purchases] - DEBUG: GetOfferingsOperation: Started
2023-07-24 12:15:36.369153+0000 EventFinderTerceira465220:7087634] 3Purchases] - DEBUG: There are no requests currently running, starting request GET subscribers/$RCAnonymousID%3A0bf9ad2a5d0a48d6af04afbadccc4807/offerings
2023-07-24 12:15:36.369857+0000 EventFinderTerceira065220:7087634] 6Purchases] - DEBUG: API request started: GET /v1/subscribers/$RCAnonymousID:0bf9ad2a5d0a48d6af04afbadccc4807/offerings
2023-07-24 12:15:36.581784+0000 EventFinderTerceira065220:7087569] 3Purchases] - DEBUG: API request completed: GET /v1/subscribers/$RCAnonymousID:0bf9ad2a5d0a48d6af04afbadccc4807/offerings (200)
2023-07-24 12:15:36.586350+0000 EventFinderTerceiran65220:7087569] :Purchases] - DEBUG: No existing products cached, starting store products request for: i"2022_01_02", "2022_01_03", "2022_01_04", "2022_01_01"]
2023-07-24 12:15:36.586568+0000 EventFinderTerceiras65220:7087569] 4Purchases] - DEBUG: Found an existing request for products: a"2022_01_02", "2022_01_04", "2022_01_03", "2022_01_01"], appending to completion
2023-07-24 12:15:36.586644+0000 EventFinderTerceirad65220:7087569] 0Purchases] - DEBUG: GetOfferingsOperation: Finished
2023-07-24 12:15:36.587105+0000 EventFinderTerceira>65220:7087569] 0Purchases] - DEBUG: Serial request done: GET subscribers/$RCAnonymousID%3A0bf9ad2a5d0a48d6af04afbadccc4807/offerings, 0 requests left in the queue
Custom: Found an error with The operation couldn’t be completed. Universal link URL could not be parsed by Dynamic Links.
2023-07-24 12:15:36.646409+0000 EventFinderTerceira<65220:7087629] rPurchases] - DEBUG: Store products request received response
2023-07-24 12:15:36.647220+0000 EventFinderTerceirad65220:7087629] Store products request finished
2023-07-24 12:15:49.899130+0000 EventFinderTerceira<65220:7087184] oPurchases] - DEBUG: Found 0 unsynced attributes for App User ID: $RCAnonymousID:0bf9ad2a5d0a48d6af04afbadccc4807
2023-07-24 12:15:49.899826+0000 EventFinderTerceirao65220:7087184] pPurchases] - DEBUG: Force refreshing the receipt to get latest transactions from Apple.
2023-07-24 12:15:49.899972+0000 EventFinderTerceira/65220:7087634] /Purchases] - DEBUG: SKReceiptRefreshRequest started
2023-07-24 12:15:50.842051+0000 EventFinderTerceirat65220:7087184] dPurchases] - DEBUG: SKReceiptRefreshRequest finished
2023-07-24 12:15:50.845944+0000 EventFinderTerceirai65220:7087184] Loaded receipt from url file:///private/var/mobile/Containers/Data/Application/6C0481DD-8BF0-4693-85A9-7CDCFAF6AB34/StoreKit/sandboxReceipt
2023-07-24 12:15:50.846248+0000 EventFinderTerceirad65220:7087803] oPurchases] - INFO: Parsing receipt
2023-07-24 12:15:50.850529+0000 EventFinderTerceiraP65220:7087803] /Purchases] - INFO: Receipt parsed successfully
2023-07-24 12:15:50.851463+0000 EventFinderTerceirap65220:7087803] lPurchases] - INFO: Parsing receipt
2023-07-24 12:15:50.853190+0000 EventFinderTerceira 65220:7087803] rPurchases] - INFO: Receipt parsed successfully
2023-07-24 12:15:50.859193+0000 EventFinderTerceiraR65220:7087804] uPurchases] - DEBUG: PostReceiptDataOperation: Started
2023-07-24 12:15:50.859335+0000 EventFinderTerceiras65220:7087804] rPurchases] - INFO: Parsing receipt
2023-07-24 12:15:50.860606+0000 EventFinderTerceiras65220:7087804] Purchases] - INFO: Receipt parsed successfully
2023-07-24 12:15:50.861490+0000 EventFinderTerceiraN65220:7087804] iPurchases] - DEBUG: PostReceiptDataOperation: Posting receipt (note: the contents might not be up-to-date, but it will be refreshed with Apple's servers):
{
"opaque_value" : "us\/O2gaW1NMbN6Lu+2I8tw==",
"original_application_version" : "1.0",
"bundle_id" : "projectTest.EventFinderTerceira",
"sha1_hash" : "\/CZKyW9lXBbodBDu\/iM7sz4NR7Q=",
"application_version" : "12",
"creation_date" : "2023-07-24T12:15:50Z",
"in_app_purchases" : r
]
}
2023-07-24 12:15:50.861584+0000 EventFinderTerceirae65220:7087804] sPurchases] - DEBUG: There are no requests currently running, starting request POST receipts
2023-07-24 12:15:50.864907+0000 EventFinderTerceiraq65220:7087804] Purchases] - DEBUG: API request started: POST /v1/receipts
2023-07-24 12:15:51.820502+0000 EventFinderTerceiraa65220:7087803] Purchases] - DEBUG: API request completed: POST /v1/receipts (200)
2023-07-24 12:15:51.825808+0000 EventFinderTerceira]65220:7087803] Purchases] - DEBUG: PostReceiptDataOperation: Finished
2023-07-24 12:15:51.826656+0000 EventFinderTerceira765220:7087803] ]Purchases] - DEBUG: Serial request done: POST receipts, 0 requests left in the queue
2023-07-24 12:15:51.830464+0000 EventFinderTerceira 65220:7087184] ePurchases] - DEBUG: Sending updated CustomerInfo to delegate.
2023-07-24 12:15:51.830762+0000 EventFinderTerceira865220:7087184] sPurchases] - DEBUG: Detected active subscriptions changed. Clearing trial or intro eligibility cache.
2023-07-24 12:16:05.958694+0000 EventFinderTerceirae65220:7087184] Could not signal service com.apple.WebKit.WebContent: 113: Could not find specified service
2023-07-24 12:16:21.952604+0000 EventFinderTerceirai65220:7087634] mtcp] tcp_input eC1.1.1:3] flags=oR] seq=1663446357, ack=0, win=0 state=LAST_ACK rcv_nxt=1663446357, snd_una=3675651385
2023-07-24 12:16:21.955496+0000 EventFinderTerceiraq65220:7087634] ktcp] tcp_input =C1.1.1:3] flags==R] seq=1663446357, ack=0, win=0 state=CLOSED rcv_nxt=1663446357, snd_una=3675651385
2023-07-24 12:16:21.959671+0000 EventFinderTerceiras65220:7087634] atcp] tcp_input tC1.1.1:3] flags==R] seq=1663446357, ack=0, win=0 state=CLOSED rcv_nxt=1663446357, snd_una=3675651385
Hi, updating here with the answer:
The issue here is that you are using consumables with entitlements, which we recommend against. You should either tie the entitlements to a non-consumable or an auto-renewable subscription. You will not see consumables restore as they do not show up on the receipt after its transaction is finished, just like non-renewing subscriptions, so if you uninstall or try on a different device, the receipt will be considered a brand new one for a brand new user, with nothing on it (unless there are subscriptions or non-consumables on it).
To resolve this, you should use non-consumable or subscription products. If you want to keep your existing consumable products, you would need to use an accounts system and only allowing purchases for logged in users.