Skip to main content
Question

Purchase not working on watchOS (Errors: Unable to load receipt & The receipt is missing)


Forum|alt.badge.img+4

Hi,

I’m currently trying to let users purchase an IAP on watchOS, but with the exact same code as on iOS (which works), I’m getting some errors (SDK version 4.2.1):

 

2022-04-21 14:05:00.526782+0200 Anime Manga Tracker Watch App WatchKit Extension[338:26944] [Purchases] - DEBUG: ℹ️ Make purchase called: purchase(sk1Product:payment:package:completion:)

2022-04-21 14:05:00.532433+0200 Anime Manga Tracker Watch App WatchKit Extension[338:26944] [Purchases] - DEBUG: πŸ’° Purchasing product from package  - com.xxxxx.xxxxx.xxxx in Offering XXXXX

2022-04-21 14:05:00.534097+0200 Anime Manga Tracker Watch App WatchKit Extension[338:27113] [Purchases] - DEBUG: ℹ️ PaymentQueue updatedTransaction: com.xxxxx.xxxxx.xxxx 2000000012345678 () 2000000012345678 - 1

2022-04-21 14:05:00.553831+0200 Anime Manga Tracker Watch App WatchKit Extension[338:27113] [Purchases] - DEBUG: ℹ️ Unable to load receipt, ensure you are logged in to a valid Apple account.

2022-04-21 14:05:00.554048+0200 Anime Manga Tracker Watch App WatchKit Extension[338:27113] [Purchases] - DEBUG: ℹ️ Receipt empty, refreshing

2022-04-21 14:05:02.185744+0200 Anime Manga Tracker Watch App WatchKit Extension[338:27112] [Purchases] - DEBUG: ℹ️ Unable to load receipt, ensure you are logged in to a valid Apple account.

2022-04-21 14:05:02.185908+0200 Anime Manga Tracker Watch App WatchKit Extension[338:27112] [Purchases] - WARN: πŸŽβ€ΌοΈ Unable to load receipt, ensure you are logged in to a valid Apple account.

2022-04-21 14:05:02.186114+0200 Anime Manga Tracker Watch App WatchKit Extension[338:27112] [Purchases] - ERROR: πŸŽβ€ΌοΈ The receipt is missing.

2022-04-21 14:05:02.186737+0200 Anime Manga Tracker Watch App WatchKit Extension[338:26944] [Purchases] - ERROR: πŸ˜Ώβ€ΌοΈ Unexpected backend error when posting receipt. Make sure you are on latest SDK version and let us know if problem persists.

 

The watchOS app is able to receive product info (I can see the price being fetched):

DEBUG: 😻 SKProductsRequest request received response

DEBUG: 😻 SKProductsRequest did finish

DEBUG: 😻 CustomerInfo updated from network.

 

I can’t find a lot of docs on watchOS implementation, is there anything different to the iOS side that needs to be done on my end? Thanks!

This post has been closed for comments

2 replies

Forum|alt.badge.img+4
  • New Member
  • 2 replies
  • June 2, 2023

Hi Joost, did you manage to get anywhere with this?

We have a customer who is experiencing this and it’s hard to know how to support them.

Here’s some snippets from their logs

3:03:17.4430 πŸ“„: [πŸ’΅πŸ±] ℹ️ GetCustomerInfoOperation: Finished
13:03:17.4430 πŸ“„: [πŸ’΅πŸ±] ℹ️ Serial request done: GET subscribers/$RCAnonymousID%3A61554ec05530479b903077d5eff6f2d0, 0 requests left in the queue
13:03:17.4430 πŸ“„: [πŸ’΅πŸ±] ℹ️ GetOfferingsOperation: Started
13:03:17.4430 πŸ“„: [πŸ’΅πŸ±] ℹ️ There are no requests currently running, starting request GET subscribers/$RCAnonymousID%3A61554ec05530479b903077d5eff6f2d0/offerings
13:03:17.4450 πŸ“„: [πŸ’΅πŸ±] ℹ️ API request started: GET /v1/subscribers/$RCAnonymousID:61554ec05530479b903077d5eff6f2d0/offerings
13:03:17.5940 πŸ“„: [πŸ’΅πŸ±] ℹ️ API request completed: GET /v1/subscribers/$RCAnonymousID:61554ec05530479b903077d5eff6f2d0/offerings (200)
13:03:17.5950 πŸ“„: [πŸ’΅πŸ±] ℹ️ No existing products cached, starting store products request for: ["edition.sixmonthly", "pro_one_time", "edition", "edition.monthly"]
13:03:17.5950 πŸ“„: [πŸ’΅πŸ±] ℹ️ Found an existing request for products: ["edition.monthly", "pro_one_time", "edition.sixmonthly", "edition"], appending to completion
13:03:17.5950 πŸ“„: [πŸ’΅πŸ±] ℹ️ GetOfferingsOperation: Finished
13:03:17.5960 πŸ“„: [πŸ’΅πŸ±] ℹ️ Serial request done: GET subscribers/$RCAnonymousID%3A61554ec05530479b903077d5eff6f2d0/offerings, 0 requests left in the queue
13:03:17.5960 πŸ“„: [πŸ’΅πŸ±] ℹ️ No existing products cached, starting store products request for: ["edition.sixmonthly", "pro_one_time", "edition", "edition.monthly"]
13:03:17.6360 πŸ“„: [πŸ’΅πŸ±] 😻 Store products request finished
13:03:17.6360 πŸ“„: [πŸ’΅πŸ±] 😻 Store products request received response
13:03:17.6370 πŸ“„: [πŸ’΅πŸ±] 😻 Offerings updated from network.
13:03:17.6370 πŸ“„: [πŸ’΅πŸ±] 😻 Offerings updated from network.
13:03:17.6370 πŸ“„: [πŸ’΅] Offerings: <Offerings {
13:03:53.2150 πŸ“„: [πŸ’΅]  restore
13:03:53.2190 πŸ“„: [πŸ’΅πŸ±] ℹ️ Found 0 unsynced attributes for App User ID: $RCAnonymousID:61554ec05530479b903077d5eff6f2d0
13:03:53.2200 πŸ“„: [πŸ’΅πŸ±] ℹ️ Force refreshing the receipt to get latest transactions from Apple.
13:03:53.2240 πŸ“„: [πŸ’΅πŸ±] ℹ️ SKReceiptRefreshRequest started
13:04:05.4250 πŸ”΄: [πŸ’΅πŸ±] πŸŽβ€ΌοΈ SKRequest failed: An unknown error occurred
13:04:05.4370 ⚠️: [πŸ’΅πŸ±] πŸŽβ€ΌοΈ Unable to load receipt, ensure you are logged in to a valid Apple account.
13:04:05.4370 πŸ”΄: [πŸ’΅πŸ±] πŸŽβ€ΌοΈ The receipt is missing.
13:04:05.4400 πŸ“„: [πŸ’΅]  restore callback nil, The receipt is missing.
13:04:23.8350 πŸ“„: [πŸ’΅]  restore
13:04:23.8390 πŸ“„: [πŸ’΅πŸ±] ℹ️ Found 0 unsynced attributes for App User ID: $RCAnonymousID:61554ec05530479b903077d5eff6f2d0
13:04:23.8390 πŸ“„: [πŸ’΅πŸ±] ℹ️ Force refreshing the receipt to get latest transactions from Apple.
13:04:23.8430 πŸ“„: [πŸ’΅πŸ±] ℹ️ SKReceiptRefreshRequest started
13:04:24.3340 πŸ”΄: [πŸ’΅πŸ±] πŸŽβ€ΌοΈ SKRequest failed: An unknown error occurred
13:04:24.3550 ⚠️: [πŸ’΅πŸ±] πŸŽβ€ΌοΈ Unable to load receipt, ensure you are logged in to a valid Apple account.
13:04:24.3550 πŸ”΄: [πŸ’΅πŸ±] πŸŽβ€ΌοΈ The receipt is missing.
13:04:24.3590 πŸ“„: [πŸ’΅]  restore callback nil, The receipt is missing.
13:04:29.7100 πŸ“„: [πŸ’΅] purchase(Period(rawValue: 1))
13:04:29.7100 πŸ“„: [πŸ’΅πŸ±] πŸ’° Purchasing Product 'edition' from package in Offering 'pro'
13:04:29.7130 πŸ“„: [πŸ’΅πŸ±] ℹ️ Adding payment for product 'edition'. 0 transactions already in the queue.
13:04:29.7180 πŸ“„: [πŸ’΅πŸ±] ℹ️ StoreKit1Wrapper (0x17da2f60) updatedTransaction: edition 0
13:04:36.0860 πŸ“„: [πŸ’΅πŸ±] ℹ️ StoreKit1Wrapper (0x17da2f60) updatedTransaction: edition (An unknown error occurred) 2
13:04:36.0890 πŸ”΄: [πŸ’΅πŸ±] πŸŽβ€ΌοΈ This product is already active for the user.
13:04:36.0910 πŸ“„: [πŸ’΅πŸ±] πŸ’° Finishing transaction 'D18C9AAB-3FBC-4173-A750-281EB63665AD' for product 'edition'
13:04:36.0920 πŸ”΄: [πŸ’΅πŸ±] πŸ’° Product purchase for 'edition' failed with error: Error Domain=RevenueCat.ErrorCode Code=6 "This product is already active for the user." UserInfo={NSUnderlyingError=0x17d29910 {Error Domain=SKErrorDomain Code=0 "An unknown error occurred" UserInfo={NSUnderlyingError=0x17dc7e50 {Error Domain=ASDServerErrorDomain Code=3532 "You’re currently subscribed to this." UserInfo={NSLocalizedFailureReason=You’re currently subscribed to this.}}, NSLocalizedDescription=An unknown error occurred}}, source_function=productAlreadyPurchasedError(error:fileName:functionName:line:), source_file=RevenueCat/ErrorUtils.swift:399, readable_error_code=PRODUCT_ALREADY_PURCHASED, NSLocalizedDescription=This product is already active for the user.}
13:04:36.0920 πŸ“„: [πŸ’΅πŸ±] ℹ️ StoreKit1Wrapper (0x17da2f60) removedTransaction: edition (An unknown error occurred) ["NSLocalizedDescription": An unknown error occurred, "NSUnderlyingError": Error Domain=ASDServerErrorDomain Code=3532 "You’re currently subscribed to this." UserInfo={NSLocalizedFailureReason=You’re currently subscribed to this.}] 2
13:04:36.0930 πŸ“„: [πŸ’΅] fetchUser(thenFetchOfferings: false)
13:04:36.0950 πŸ“„: [πŸ’΅πŸ±] ℹ️ Vending CustomerInfo from cache.
13:04:36.1080 πŸ“„: [πŸ’΅] Purchaser info: <CustomerInfo:
13:04:36.1080 πŸ“„: [πŸ’΅] Cache: free Date: nil
13:04:36.1080 πŸ“„: [πŸ’΅] OG Version: -- OG Date: --
13:04:36.1080 πŸ“„: [πŸ’΅] Subscriber Level: free Date: nil
13:04:47.3970 πŸ“„: [πŸ’΅] purchase(Period(rawValue: 1))
13:04:47.3970 πŸ“„: [πŸ’΅πŸ±] πŸ’° Purchasing Product 'edition' from package in Offering 'pro'
13:04:47.3990 πŸ“„: [πŸ’΅πŸ±] ℹ️ Adding payment for product 'edition'. 0 transactions already in the queue.
13:04:47.4000 πŸ“„: [πŸ’΅πŸ±] ℹ️ StoreKit1Wrapper (0x17da2f60) updatedTransaction: edition 0
13:04:49.9700 πŸ“„: [πŸ’΅πŸ±] ℹ️ StoreKit1Wrapper (0x17da2f60) updatedTransaction: edition (An unknown error occurred) 2
13:04:49.9700 πŸ”΄: [πŸ’΅πŸ±] πŸŽβ€ΌοΈ This product is already active for the user.
13:04:49.9730 πŸ“„: [πŸ’΅πŸ±] πŸ’° Finishing transaction '55A90E01-A27D-44E6-A91B-1F1F9C040315' for product 'edition'
13:04:49.9740 πŸ”΄: [πŸ’΅πŸ±] πŸ’° Product purchase for 'edition' failed with error: Error Domain=RevenueCat.ErrorCode Code=6 "This product is already active for the user." UserInfo={NSUnderlyingError=0x17e15580 {Error Domain=SKErrorDomain Code=0 "An unknown error occurred" UserInfo={NSUnderlyingError=0x17e17a00 {Error Domain=ASDServerErrorDomain Code=3532 "You’re currently subscribed to this." UserInfo={NSLocalizedFailureReason=You’re currently subscribed to this.}}, NSLocalizedDescription=An unknown error occurred}}, NSLocalizedDescription=This product is already active for the user., readable_error_code=PRODUCT_ALREADY_PURCHASED, source_file=RevenueCat/ErrorUtils.swift:399, source_function=productAlreadyPurchasedError(error:fileName:functionName:line:)}
13:04:49.9750 πŸ“„: [πŸ’΅πŸ±] ℹ️ StoreKit1Wrapper (0x17da2f60) removedTransaction: edition (An unknown error occurred) ["NSLocalizedDescription": An unknown error occurred, "NSUnderlyingError": Error Domain=ASDServerErrorDomain Code=3532 "You’re currently subscribed to this." UserInfo={NSLocalizedFailureReason=You’re currently subscribed to this.}] 2
13:04:49.9760 πŸ“„: [πŸ’΅] fetchUser(thenFetchOfferings: false)
13:04:49.9780 πŸ“„: [πŸ’΅πŸ±] ℹ️ Vending CustomerInfo from cache.
13:04:49.9910 πŸ“„: [πŸ’΅] Purchaser info: <CustomerInfo:
13:04:49.9910 πŸ“„: [πŸ’΅] Cache: free Date: nil
13:04:49.9910 πŸ“„: [πŸ’΅] OG Version: -- OG Date: --
13:04:49.9910 πŸ“„: [πŸ’΅] Subscriber Level: free Date: nil
20:27:20.5970 πŸ“„: [πŸ’΅]  restore
20:27:20.6180 πŸ“„: [πŸ’΅πŸ±] ℹ️ Found 0 unsynced attributes for App User ID: $RCAnonymousID:61554ec05530479b903077d5eff6f2d0
20:27:20.6180 πŸ“„: [πŸ’΅πŸ±] ℹ️ Force refreshing the receipt to get latest transactions from Apple.
20:27:20.6210 πŸ“„: [πŸ’΅πŸ±] ℹ️ SKReceiptRefreshRequest started
20:27:22.2010 πŸ”΄: [πŸ’΅πŸ±] πŸŽβ€ΌοΈ SKRequest failed: An unknown error occurred
20:27:22.2200 ⚠️: [πŸ’΅πŸ±] πŸŽβ€ΌοΈ Unable to load receipt, ensure you are logged in to a valid Apple account.
20:27:22.2210 πŸ”΄: [πŸ’΅πŸ±] πŸŽβ€ΌοΈ The receipt is missing.
20:27:22.2250 πŸ“„: [πŸ’΅]  restore callback nil, The receipt is missing.
20:27:25.0020 πŸ“„: [πŸ’΅] purchase(Period(rawValue: 1))

 


Forum|alt.badge.img+4

Hi @Lewis 

Nope, I decided just not to let people purchase from the Watch. I don’t remember things I tried or if I got it working in the end. Sorry!


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings