Solved

SKPaymentTransaction missing a transaction date + identifier

  • 21 June 2022
  • 4 replies
  • 32 views

Badge

I’m invoking Purchases.shared.purchase on a new iOS app I’m building and all is connected and configured properly (I think), this is what I get:

 

022-06-21 15:00:24.660227+0100 Mindworks[29422:726454] [Purchases] - DEBUG: ℹ️ API request completed: GET /v1/subscribers/$RCAnonymousID:1001512f67bb474d872e2adbe6ef3a22 304
2022-06-21 15:00:24.664658+0100 Mindworks[29422:726454] [Purchases] - DEBUG: ℹ️ Sending latest CustomerInfo to delegate.
2022-06-21 15:00:24.664755+0100 Mindworks[29422:726454] [Purchases] - DEBUG: 😻 CustomerInfo updated from network.
2022-06-21 15:00:24.664820+0100 Mindworks[29422:726454] [Purchases] - DEBUG: ℹ️ GetCustomerInfoOperation: Finished
2022-06-21 15:00:24.664994+0100 Mindworks[29422:726454] [Purchases] - DEBUG: ℹ️ Serial request done: GET subscribers/$RCAnonymousID%3A1001512f67bb474d872e2adbe6ef3a22, 0 requests left in the queue
2022-06-21 15:00:24.665013+0100 Mindworks[29422:726540] [Purchases] - DEBUG: ℹ️ GetOfferingsOperation: Started
2022-06-21 15:00:24.665164+0100 Mindworks[29422:726540] [Purchases] - DEBUG: ℹ️ There are no requests currently running, starting request GET subscribers/$RCAnonymousID%3A1001512f67bb474d872e2adbe6ef3a22/offerings
2022-06-21 15:00:24.665882+0100 Mindworks[29422:726540] [Purchases] - DEBUG: ℹ️ API request started: GET /v1/subscribers/$RCAnonymousID:1001512f67bb474d872e2adbe6ef3a22/offerings
2022-06-21 15:00:24.973425+0100 Mindworks[29422:726454] [Purchases] - DEBUG: ℹ️ API request completed: GET /v1/subscribers/$RCAnonymousID:1001512f67bb474d872e2adbe6ef3a22/offerings 304
2022-06-21 15:00:24.974596+0100 Mindworks[29422:726454] [Purchases] - DEBUG: ℹ️ GetOfferingsOperation: Finished
2022-06-21 15:00:24.974827+0100 Mindworks[29422:726454] [Purchases] - DEBUG: ℹ️ Serial request done: GET subscribers/$RCAnonymousID%3A1001512f67bb474d872e2adbe6ef3a22/offerings, 0 requests left in the queue
2022-06-21 15:00:24.974839+0100 Mindworks[29422:726481] [Purchases] - DEBUG: ℹ️ No existing requests and products not cached, starting SKProducts request for: ["com.mindworks.new.monthly.2022"]
2022-06-21 15:00:24.989809+0100 Mindworks[29422:726453] [Purchases] - DEBUG: 😻 SKProductsRequest did finish
2022-06-21 15:00:24.989820+0100 Mindworks[29422:726481] [Purchases] - DEBUG: 😻 SKProductsRequest request received response
2022-06-21 15:00:25.832554+0100 Mindworks[29422:726316] [Process] 0x130058018 - [pageProxyID=14, webPageID=15, PID=29426] WebPageProxy::didFailProvisionalLoadForFrame: frameID=3, domain=NSURLErrorDomain, code=-999, isMainFrame=1
2022-06-21 15:00:26.938198+0100 Mindworks[29422:726316] [Process] 0x1328bb018 - [pageProxyID=24, webPageID=25, PID=29427] WebPageProxy::didFailProvisionalLoadForFrame: frameID=3, domain=NSURLErrorDomain, code=-999, isMainFrame=1
message: subscribe
2022-06-21 15:00:34.058149+0100 Mindworks[29422:726316] [Purchases] - DEBUG: ℹ️ Vending Offerings from cache
2022-06-21 15:00:34.058320+0100 Mindworks[29422:726316] [Purchases] - INFO: 💰 Purchasing product from package 'com.mindworks.new.monthly.2022' in Offering 'test.offering'
2022-06-21 15:00:34.060259+0100 Mindworks[29422:726316] [Purchases] - DEBUG: ℹ️ PaymentQueue updatedTransaction: com.mindworks.new.monthly.2022 0
2022-06-21 15:00:34.060384+0100 Mindworks[29422:726316] [Purchases] - WARN: 🍎‼️ There is a problem with the SKPaymentTransaction missing a transaction date - this is an issue with the App Store.
2022-06-21 15:00:34.060483+0100 Mindworks[29422:726316] [Purchases] - WARN: 🍎‼️ There is a problem with the SKPaymentTransaction missing a transaction identifier - this is an issue with the App Store.

Note the SKPaymentTransaction missing a transaction date + identifier messages. 

What am I doing wrong? 

Thanks!

icon

Best answer by JohnC 29 June 2022, 16:17

View original

4 replies

Userlevel 5
Badge +9

Hey @Marcel Schmitz,

 

Very strange, never seen that before myself. Are you testing on a physical device or with a simulator? I would make sure you’re on a physical device to rule out any issues there.

Another good general debugging step for App Store problems is to try setting up a new sandbox account in App Store Connect. Sometimes sandbox accounts appear to enter a weird state. 

Badge +1

Hi @ryan and @Marcel Schmitz - I too was getting the above errors.  i.e. testing my code on a physical iphone device… invoked the SwiftUI code to purchase a subscription via RevenueCat, and the target subscription product was found as expected… was then prompted for the AppleID and password, entered the details for my App Store Connect sandbox account, but then got the same error in my debug logs as that which @Marcel Schmitz mentioned above… i.e. 

 

2022-06-29 13:00:34.876388+0100 MyApp[559:77965] [Purchases] - WARN: 🍎‼️ There is a problem with the SKPaymentTransaction missing a transaction date - this is an issue with the App Store.

2022-06-29 13:00:34.876459+0100 MyApp[559:77965] [Purchases] - WARN: 🍎‼️ There is a problem with the SKPaymentTransaction missing a transaction identifier - this is an issue with the App Store.

2022-06-29 13:01:18.672600+0100 MyApp[559:77965] [Purchases] - DEBUG: ℹ️ applicationDidBecomeActive

2022-06-29 13:02:23.875486+0100 MyApp[559:79055] <SKPaymentQueue: 0x282aac1d0>: Payment completed with error: Error Domain=ASDErrorDomain Code=500 "Unhandled exception" UserInfo={NSUnderlyingError=0x2827a51a0 {Error Domain=AMSErrorDomain Code=100 "Authentication Failed" UserInfo={NSLocalizedFailureReason=The verify credentials call failed., NSLocalizedDescription=Authentication Failed, NSUnderlyingError=0x2827a5b90 {Error Domain=AMSErrorDomain Code=15 "An unknown error occurred. Please try again." UserInfo={NSLocalizedDescription=An unknown error occurred. Please try again.}}}}, NSLocalizedFailureReason=An unknown error occurred, NSLocalizedDescription=Unhandled exception}

 

Per Ryan’s suggestion, I created a second App Store Connect sandbox user but this time, I remembered to verify the email address (I don’t believe I did that with the 1st sandbox user, which I guess could have been the issue, particularly as I see an ‘Authentication failed’ message above). 

 

Using the 2nd sandbox user worked for me and I was successfully able to execute a test subscription payment, which was great to see.  Hopefully the above helps @Marcel Schmitz ?

 

Thanks,

J.

Badge

Thanks John, I just did the same thing, new account, and it worked fine, although I did manage to make the purchase modal appear with the first account and register a payment using a real device. 

 

We can safely ignore that for now, I would guess?

 

-- Marcel

Badge +1

I’d say so @Marcel Schmitz - sounds like things are working now for both of us. (I suspect your issue was that you maybe weren’t using a physical device, whereas I hadn’t used a verified email address.)

Best of luck with your app Marcel!

J.

Reply