Xcode caches old Apple Pay certificate

Originator:bg
Number:rdar://24077729 Date Originated:06-Jan-2016
Status:Open Resolved:
Product:Developer Tools Product Version:
Classification: Reproducible:
 
Summary:
When first getting started with Apple Pay, merchants sometimes make a mistake registering for a certificate from Apple – for example, they might use a self-generated CSR, rather than downloading a CSR from Stripe.

Unfortunately, even after they fix this by creating a new certificate, Xcode will often incorrectly cache the old certificate if they're using the same Apple Merchant ID. The only real workaround here is to start from scratch, creating a brand-new Apple Merchant ID and certificate.

Steps to Reproduce:
* Create a new Apple Merchant ID.
* Create a CSR in Keychain Access (rather than downloading it from Stripe).
* Use the CSR to create a (bad) certificate for the merchant ID.
* Go to https://dashboard.stripe.com/account/apple_pay and upload the bad certificate to Stripe.
* Create a token using Apple Pay, following the instructions at https://stripe.com/docs/mobile/ios#applepay.
* As expected, Stripe returns an invalid certificate error.

* Go to https://dashboard.stripe.com/account/apple_pay and delete the bad certificate.
* Revoke the bad certificate on https://developer.apple.com.
* Download a CSR from Stripe and create a new certificate for the merchant ID.
* Upload the good certificate to Stripe.
* Create a token using Apple Pay.
* Due to what appears to be Xcode caching the old certificate, Stripe will still return an invalid certificate error.

Version:
Xcode 7.2 (7C68)
OSX 10.11.2 (15C50)

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!