Apple Pay leverages a sophisticated cryptographic scheme for passing payment data securely from the Secure Element on the device to Braintree's Vault.

Before you can use Apple Pay, you'll need to coordinate a number of identifiers and certificates.

Apple Pay certificate request and provisioning

In order to use Apple Pay on a real device, you must configure an Apple Pay Merchant ID and an Apple Pay certificate in Apple's Developer Center. Because our sandbox and production environments are separate, you'll need to complete these steps twice: once for each environment.

  1. Sign in to your Developer Center in Safari
  2. Create an Apple Pay Merchant ID
    • Note: We recommend using separate Apple Pay Merchant IDs for sandbox and production to ensure that your sandbox app can't create production transactions.
  3. Download your CSR (certificate signing request) from the Control Panel
    • Navigate to Settings > Processing > Apple Pay and click the toggle to enable this payment method
    • Select Options and click +Add to download the CSR from the certificate management page
      • Note: If you are unable to access this information, contact your Control Panel admin. You may need a different Control Panel role.
  4. Generate a new Apple Pay Certificate in Apple's developer portal
    • Select Apple Pay Certificate and click Continue
      • Note: Although this option appears under Production in Apple's developer portal, you'll select it when generating your sandbox certificate as well as your production certificate.
    • In the dropdown, choose the Merchant ID you created earlier and click Continue
    • Under Payment Processing Certificate, click Create Certificate
    • Answer the prompted question and click Continue
    • Upload the CSR that you downloaded from the Control Panel in step 3
      • Note: You must use the CSR we provide. Do not create a CSR file yourself.
  5. Download the new Apple Pay Certificate and upload it in the Control Panel by navigating to Settings > Processing > Apple Pay and clicking Options
  6. Click Add under Apple Merchant Certificates (iOS)
  7. Repeat for your production account

While you will need to generate and upload a Payment Processing Certificate, a Merchant Identity Certificate is not required to process Apple Pay in-app.

Certificate renewal

Apple Pay certificates expire after 25 months. To avoid any disruptions in processing, you'll need to generate a new certificate before your current one expires, and upload it to the Control Panel. As with the original request and provisioning, you'll need to complete this process for both sandbox and production.

  1. Download a new Certificate Signing Request (CSR) from the Control Panel
    • Navigate to Settings > Processing > Apple Pay
    • Click Options
    • Under Apple Merchant Certificates (iOS), click Add
    • Click Certificate Signing Request to download the CSR file
  2. Generate a new certificate from Apple
    • Log into the Apple Developer Portal
    • Click on Certificates, IDs & Profiles, then Merchant IDs
    • Select the appropriate Merchant ID and click Edit
    • Under Payment Processing Certificate, click Create Certificate, then click Continue
    • Upload the CSR file you downloaded from the Control Panel in step 1, and click Continue
    • Download the new certificate
  3. Upload the new certificate to your Control Panel
    • Return to the Control Panel, click Choose File to select the new certificate, and click Upload
  4. Activate the new certificate with Apple
    • Return to the Apple Developer Portal and click Edit under the same Merchant ID
    • Click Activate next to the new certificate
  5. Repeat for your production account

Xcode setup

In Xcode, enable Apple Pay under Capabilities in your Project Settings.

Then enable both Apple Pay Merchant IDs.

It is important that you compile your app with a provisioning profile for the Apple development team with an Apple Pay Merchant ID. Apple Pay does not support enterprise provisioning.

Next Page: Client-side →

Still have questions?

If you can’t find an answer, contact us