Iâm getting a successful âresponseâ from the native iOS purchase dialog (it gives me the check and the happy ding sound) but RevenueCat fails. Unfortunately, the failure also takes like 30 seconds to be responded to so beyond it failing, the failure is a bad UX and itâs not really clear how to handle it. Below are the debug logs. This is in our sandbox environment:
[Purchases] - DEBUG: âšī¸ Debug logging enabled
[Purchases] - DEBUG: âšī¸ SDK Version - 3.12.6
[Purchases] - DEBUG: đ¤ Initial App User ID - (null)
[Purchases] - DEBUG: đ¤ Identifying App User ID: $RCAnonymousID:aa5680df790640a0823e5cd15d8d05ed
[Purchases] - DEBUG: âšī¸ Delegate set
[Purchases] - DEBUG: âšī¸ There are no requests currently running, starting request GET /subscribers/$RCAnonymousID0X0P+0aa5680df790640a0823e5cd15d8d05ed
[Purchases] - DEBUG: âšī¸ API request started: GET /v1/subscribers/$RCAnonymousID:aa5680df790640a0823e5cd15d8d05ed
[Purchases] - DEBUG: âšī¸ There's a request currently running and 0 requests left in the queue, queueing GET /subscribers/$RCAnonymousID0X0P+0aa5680df790640a0823e5cd15d8d05ed/offerings
[Purchases] - DEBUG: âšī¸ There's a request currently running and 1 requests left in the queue, queueing POST /subscribers/identify
[Purchases] - DEBUG: âšī¸ collectDeviceIdentifiers called
[Purchases] - DEBUG: âšī¸ setAttributes called
[Purchases] - DEBUG: âšī¸ setFBAnonymousID called
[Purchases] - DEBUG: âšī¸ API request completed with status: GET /v1/subscribers/$RCAnonymousID:aa5680df790640a0823e5cd15d8d05ed 201
[Purchases] - DEBUG: âšī¸ Sending latest PurchaserInfo to delegate.
[Purchases] - DEBUG: âšī¸ Serial request done: GET /subscribers/$RCAnonymousID0X0P+0aa5680df790640a0823e5cd15d8d05ed, 2 requests left in the queue
[Purchases] - DEBUG: âšī¸ Starting the next request in the queue, <RCHTTPRequest: httpMethod=GET
[Purchases] - DEBUG: âšī¸ There are no requests currently running, starting request GET /subscribers/$RCAnonymousID0X0P+0aa5680df790640a0823e5cd15d8d05ed/offerings
[Purchases] - DEBUG: âšī¸ API request started: GET /v1/subscribers/$RCAnonymousID:aa5680df790640a0823e5cd15d8d05ed/offerings
[Purchases] - DEBUG: âšī¸ Vending PurchaserInfo from cache.
[Purchases] - DEBUG: âšī¸ API request completed with status: GET /v1/subscribers/$RCAnonymousID:aa5680df790640a0823e5cd15d8d05ed/offerings 200
[Purchases] - DEBUG: âšī¸ Requesting products from the store with identifiers: {(
[Purchases] - DEBUG: âšī¸ Serial request done: GET /subscribers/$RCAnonymousID0X0P+0aa5680df790640a0823e5cd15d8d05ed/offerings, 1 requests left in the queue
[Purchases] - DEBUG: âšī¸ Starting the next request in the queue, <RCHTTPRequest: httpMethod=POST
[Purchases] - DEBUG: âšī¸ There are no requests currently running, starting request POST /subscribers/identify
[Purchases] - DEBUG: âšī¸ API request started: POST /v1/subscribers/identify
[Purchases] - DEBUG: âšī¸ API request completed with status: POST /v1/subscribers/identify 200
[Purchases] - DEBUG: đ¤ Log in successful
[Purchases] - DEBUG: âšī¸ Serial request done: POST /subscribers/identify, 0 requests left in the queue
[Purchases] - DEBUG: âšī¸ There are no requests currently running, starting request GET /subscribers/980c4e30-5acb-11ec-bffd-aa665a180610/offerings
[Purchases] - DEBUG: âšī¸ API request started: GET /v1/subscribers/980c4e30-5acb-11ec-bffd-aa665a180610/offerings
[Purchases] - DEBUG: âšī¸ Vending PurchaserInfo from cache.
[Purchases] - DEBUG: âšī¸ setEmail called
[Purchases] - DEBUG: âšī¸ API request completed with status: GET /v1/subscribers/980c4e30-5acb-11ec-bffd-aa665a180610/offerings 200
[Purchases] - DEBUG: âšī¸ Serial request done: GET /subscribers/980c4e30-5acb-11ec-bffd-aa665a180610/offerings, 0 requests left in the queue
[Purchases] - DEBUG: âšī¸ Products request finished.
[Purchases] - DEBUG: đ° Retrieved SKProducts:
[Purchases] - DEBUG: đ° jsdev_12_1m - <SKProduct: 0x282df7e60>
[Purchases] - DEBUG: đ° jsdev_59_1y_1w0 - <SKProduct: 0x282df7e20>
[Purchases] - DEBUG: âšī¸ 2 completion handlers waiting on products
[Purchases] - WARN: â ī¸ The appUserID passed to logIn is the same as the one already cached. No action will be taken.
[Purchases] - DEBUG: âšī¸ Vending PurchaserInfo from cache.
[Purchases] - DEBUG: âšī¸ There are no requests currently running, starting request GET /subscribers/980c4e30-5acb-11ec-bffd-aa665a180610/offerings
[Purchases] - DEBUG: âšī¸ API request started: GET /v1/subscribers/980c4e30-5acb-11ec-bffd-aa665a180610/offerings
[Purchases] - DEBUG: âšī¸ Vending PurchaserInfo from cache.
[Purchases] - DEBUG: âšī¸ setEmail called
[Purchases] - DEBUG: âšī¸ API request completed with status: GET /v1/subscribers/980c4e30-5acb-11ec-bffd-aa665a180610/offerings 200
[Purchases] - DEBUG: âšī¸ Serial request done: GET /subscribers/980c4e30-5acb-11ec-bffd-aa665a180610/offerings, 0 requests left in the queue
[Purchases] - WARN: â ī¸ The appUserID passed to logIn is the same as the one already cached. No action will be taken.
[Purchases] - DEBUG: âšī¸ Vending PurchaserInfo from cache.
[Purchases] - DEBUG: âšī¸ There are no requests currently running, starting request GET /subscribers/980c4e30-5acb-11ec-bffd-aa665a180610/offerings
[Purchases] - DEBUG: âšī¸ API request started: GET /v1/subscribers/980c4e30-5acb-11ec-bffd-aa665a180610/offerings
[Purchases] - DEBUG: âšī¸ Vending PurchaserInfo from cache.
[Purchases] - DEBUG: âšī¸ setEmail called
[Purchases] - DEBUG: âšī¸ API request completed with status: GET /v1/subscribers/980c4e30-5acb-11ec-bffd-aa665a180610/offerings 200
[Purchases] - DEBUG: âšī¸ Serial request done: GET /subscribers/980c4e30-5acb-11ec-bffd-aa665a180610/offerings, 0 requests left in the queue
[Purchases] - DEBUG: âšī¸ There are no requests currently running, starting request POST /subscribers/980c4e30-5acb-11ec-bffd-aa665a180610/attributes
[Purchases] - DEBUG: âšī¸ API request started: POST /v1/subscribers/980c4e30-5acb-11ec-bffd-aa665a180610/attributes
[Purchases] - DEBUG: âšī¸ There's a request currently running and 0 requests left in the queue, queueing POST /subscribers/$RCAnonymousID0X0P+0aa5680df790640a0823e5cd15d8d05ed/attributes
[Purchases] - DEBUG: âšī¸ API request completed with status: POST /v1/subscribers/980c4e30-5acb-11ec-bffd-aa665a180610/attributes 200
[Purchases] - INFO: âšī¸ Marking the following attributes as synced for App User ID: 980c4e30-5acb-11ec-bffd-aa665a180610: {
[Purchases] - DEBUG: đģ Subscriber attributes synced successfully for App User ID: 980c4e30-5acb-11ec-bffd-aa665a180610
[Purchases] - DEBUG: âšī¸ Serial request done: POST /subscribers/980c4e30-5acb-11ec-bffd-aa665a180610/attributes, 1 requests left in the queue
[Purchases] - DEBUG: âšī¸ Starting the next request in the queue, <RCHTTPRequest: httpMethod=POST
[Purchases] - DEBUG: âšī¸ There are no requests currently running, starting request POST /subscribers/$RCAnonymousID0X0P+0aa5680df790640a0823e5cd15d8d05ed/attributes
[Purchases] - DEBUG: âšī¸ API request started: POST /v1/subscribers/$RCAnonymousID:aa5680df790640a0823e5cd15d8d05ed/attributes
[Purchases] - DEBUG: âšī¸ API request completed with status: POST /v1/subscribers/$RCAnonymousID:aa5680df790640a0823e5cd15d8d05ed/attributes 400
[Purchases] - ERROR: đŋâŧī¸ One or more of the attributes sent could not be saved.
[Purchases] - INFO: âšī¸ Marking the following attributes as synced for App User ID: $RCAnonymousID:aa5680df790640a0823e5cd15d8d05ed: {
[Purchases] - ERROR: đŋâŧī¸ Error when syncing subscriber attributes. Details: One or more of the attributes sent could not be saved.
[Purchases] - DEBUG: âšī¸ Serial request done: POST /subscribers/$RCAnonymousID0X0P+0aa5680df790640a0823e5cd15d8d05ed/attributes, 0 requests left in the queue
[Purchases] - DEBUG: âšī¸ applicationDidBecomeActive
[Purchases] - DEBUG: âšī¸ Vending Offerings from cache
[Purchases] - DEBUG: âšī¸ Vending Offerings from cache
[Purchases] - DEBUG: âšī¸ makePurchase
[Purchases] - DEBUG: đ° Purchasing product from package - jsdev_59_1y_1w0 in Offering default
[Purchases] - DEBUG: âšī¸ PaymentQueue updatedTransaction: jsdev_59_1y_1w0 (null) ((null)) (null) - 0
[Purchases] - DEBUG: âšī¸ applicationDidBecomeActive
[Purchases] - DEBUG: âšī¸ PaymentQueue updatedTransaction: jsdev_59_1y_1w0 (null) (Error Domain=SKErrorDomain Code=0 "An unknown error occurred" UserInfo={NSLocalizedDescription=An unknown error occurred, NSUnderlyingError=0x28214d020 {Error Domain=ASDErrorDomain Code=500 "Unhandled exception" UserInfo={NSUnderlyingError=0x28214f960 {Error Domain=AMSErrorDomain Code=100 "Authentication Failed" UserInfo={NSLocalizedFailureReason=The verify credentials call failed., NSLocalizedDescription=Authentication Failed, NSUnderlyingError=0x28214e640 {Error Domain=AMSErrorDomain Code=15 "An unknown error occurred. Please try again." UserInfo=0x28292e500 (not displayed)}}}, NSLocalizedFailureReason=An unknown error occurred, NSLocalizedDescription=Unhandled exception}}}) (null) - 2
[Purchases] - ERROR: đâŧī¸ There was a problem with the App Store.
[Purchases] - DEBUG: đ° Finishing transaction jsdev_59_1y_1w0 (null) ((null))
[Purchases] - DEBUG: âšī¸ PaymentQueue removedTransaction: jsdev_59_1y_1w0 (null) ((null) Error Domain=SKErrorDomain Code=0 "An unknown error occurred" UserInfo={NSLocalizedDescription=An unknown error occurred, NSUnderlyingError=0x28214d020 {Error Domain=ASDErrorDomain Code=500 "Unhandled exception" UserInfo={NSUnderlyingError=0x28214f960 {Error Domain=AMSErrorDomain Code=100 "Authentication Failed" UserInfo={NSLocalizedFailureReason=The verify credentials call failed., NSLocalizedDescription=Authentication Failed, NSUnderlyingError=0x28214e640 {Error Domain=AMSErrorDomain Code=15 "An unknown error occurred. Please try again." UserInfo=0x28292e500 (not displayed)}}}, NSLocalizedFailureReason=An unknown error occurred, NSLocalizedDescription=Unhandled exception}}}) {
Solved
ERROR: đâŧī¸ There was a problem with the App Store.
Best answer by tina
Hey
Taking a look at that SKErrorDomain Code=0
, Apple docs suggest that it can be an issue with the sandbox account. Have you tried creating a new sandbox account and testing on a real device yet?
This post has been closed for comments
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.