Apple Pay shows an error message if server is processing the payment more than 27 seconds on iOS 11
Originator: | xfreebird | ||
Number: | rdar://34301443 | Date Originated: | 07.09.2017 |
Status: | Open | Resolved: | No |
Product: | iOS+SDK | Product Version: | 11 |
Classification: | Reproducible: | Always |
Area: PassKit Summary: When testing Apple Pay with sandbox test accounts, the Apple Pay payment sheet would show whether I'm using a sandbox account or not. On iOS 10, is always shown (see attachment ios10.png) When paying, it always works and no error message is shown. On iOS 11, is not shown (see attachment ios11.mov) When paying, it shows that payment is not completed message with no error provided at code level, and the token is created and can be decrypted by the server. I used the same sandbox test accounts on iOS 10 and iOS 11 ******@gmail.com ******@gmail.com Steps to Reproduce: 1) Use iOS 11 beta 10 2) Use iOS app compiled with iOS SDK 10 or 11 3) Make an Apple Pay payment with a sandbox account and test card Expected Results: The Apple Pay sheet should show (Apple Pay Sandbox) And the payment should have no errors Actual Results: The Apple Pay sheet doesn't should show that a Sandbox account is used And the payment fails with a valid payment token Version/Build: iOS 11 beta 10 15A5372a (iPhone 6S, iPhone SE) Configuration: Apple Pay sandbox account with test card
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!
It looks this is a new behaviour for apple pay since iOS 11. confirmed by apple. If the server request takes more that 30s it will show the payment as failure. The recommendation is to not wait for the server request to complete, just dismiss the apple pay sheet as soon as the token in obtained.