Payment-method icon

Apple Pay Component integration

Add Apple Pay to an existing Components integration.

On this page, you can find additional configuration for adding Apple Pay to your Components integration.

Before you begin

Choose which server-side flow your integration uses:

Set up Apple Pay

Enable Apple Pay with your own or Adyen's Apple Pay certificate.

API reference

When you make the /sessions request, Apple Pay does not require any additional fields.

In case of errors, set your server up to handle Apple Pay errors.

Components configuration

When you create the configuration object, you must add additional properties for Apple Pay.

Property Description
merchantID Your Apple Pay merchant identifier.
merchantName Your merchant name. This is used to generate PKPaymentSummaryItem .

Create a configuration object for the Apple Pay Component and pass the configuration for Apple Pay to it.

Optional configuration

You can include the following parameters in the configuration object:

Parameter Description
allowOnboarding Set to true to let the shopper add new cards to their Apple Pay wallet if there are none or if their cards are not supported for the payment.
By default this is set to false, and Apple Pay isn't shown as an available payment method if there are no cards in their Apple Pay wallet.
applePaySummaryItems An array of the items included in the purchase that summarize the payment amount. The last item must have the same value as the amount you send in your /payments request.
requiredBillingContactFields Billing information fields that you require from the shopper to process the transaction. Refer to Apple Pay documentation for sample values.
billingContact A prefilled billing address.
requiredShippingContactFields Shipping information fields that you require from the shopper to fulfill the order. Refer to Apple Pay documentation for sample values.
applePayShippingType The type of shipping displayed, for example Pick Up, Ship To, or Deliver To. This is localized.
Default: PKShippingTypeShipping = .shipping.
allowShippingContactEditing Indicates if the shopper can edit fields of the shipping address.
shippingMethods List of available methods for shipping physical goods. Refer to Apple Pay documentation for sample values.
applicationData A Base64-encoded string for application-specific data.
supportedCountries Specify the ISO 3166 country codes if you only support payments from cards issued in specific countries.
merchantCapability The payment capabilities the merchant supports.

You can refer to the ApplePayConfiguration class in Github.

After adding the configuration object for Apple Pay, initialize and show the Component.

Test and go live

Use Apple's test card numbers to test your integration.

For a full list of test cards and instructions how to add these to your test device, see Sandbox testing on Apple's Developer website.

Check the status of an Apple Pay test payment in your Customer Area > Transactions >  Payments.

Going live

To process live Apple Pay payments, your API credential needs to have the API Clientside Encryption Payments role. You can check this in your live Customer Area or ask your Admin user to verify.

Make sure you follow Apple's guidelines on:

  • Designing your Apple Pay integration.
    1. Enable Apple Pay on your Apple Pay Developer account for your live merchant identifier.

    2. Configure your firewall's allow-list:

    We do not provide a list of IP addresses for allow-listing, because over time the list may change for various reasons, for example, due to ISP configuration changes.

    If you are unable to configure your firewall with a domain allow-list, attempt to resolve our IP addresses by performing a DNS lookup on, and then add those IP addresses to your allow-list. Beware that you still run the risk of a disruption if the IP addresses change.

See also