Apple Pay

Specific information about the payment method Apple Pay.

The Apple Pay payment service allows consumers to make contactless and in-app payments as frictionless and secure as possible. Customers can securely store credit and debit card information in their Apple Pay wallets and confirm transactions by simply scanning their fingerprint with Apple's Touch ID or using Face ID. Apple Pay transactions are still MasterCard, Visa or American Express card transactions (as it is their cards that "sit" in the wallet). However, existing card processing connections and merchant acquiring connections may support these Apple Pay payments.

Apple Pay works on devices running iOS, watchOS and iPadOS both as an app and in Safari, and on macOS devices in Safari. Apple Pay uses device-specific tokenized credit or debit card credentials (DPAN) instead of a payment account number (PAN). When a customer confirms the payment using Face ID, Touch ID or passcode, the tokenized card data is returned by Apple Pay as reference. This token is used for further processing.

When using Apply Pay, you will have to take care of the following things for the integration:

  • To use Apple Pay, an Apple developer account is needed. It must be renewed on a yearly basis. The account can be created by an individual or by an organization.
  • Special requirements need to be fulfilled when using Apple Pay concerning the use of HTTPS, SSL and TLS as well as Apple Pay specific IP address whitelisting. Further details can be found here.
  • Make sure that have your Apple environment fully configured. You will have to configure your Merchant ID and Certificates.
  • For determining the best way of introducing the Apple Pay button on the shop website, it is recommended to check the Apple Pay Human Interface Guidelines.
  • To leverage Apple Pay-provided information and minimize data entry by the customer, the Apple Pay button should be placed as early as possible in the checkout process.
Basic process
  • The customer chooses to pay online via Apple Pay by selecting Apple Pay as their preferred payment method.
  • The customer checks the billing, shipping, and contact information to ensure the information is correct.
  • The customer can optionally set a different card than the default selection provided by Apple Pay.
  • If new billing, shipping or contact information is needed, the customer can make all relevant changes. Apple Pay will store the information for future purchases.
  • The customer confirms the payment.
  • The merchant can ship the order to the customer using the "normal" card payments flow.

Payment

For adding an Apple Pay button to your web shop, appropriate JavaScript APIs must be used to render the button to have it always up-to-date and localized. Apple Pay is capable to provide the web shop with all the customer information that is needed to fulfil an order (e.g. name, address, phone number, email address, etc). Please note, you are not allowed to customize the Apple Pay button. For Apple Pay button usage and design guidance, please refer to the Apple Pay Human Interface Guidelines.

To present the Apple Pay payment sheet, Apple Pay JS API is used. The payment sheet must immediately follow the user clicking the Apple Pay button, without any interim screens or pop up menus. The web shop specifies the contents of the payment sheet, but it does not control the user’s interaction with the sheet. So, it’s up to the merchant to decide whether to present shipping and billing information, shipping method, and other line items to the user or not. It’s recommended to request only necessary information to process and service the transaction.

To generate the payment sheet, required customer information (e.g. billing address, shipping address, name, email address, phone number) need to be flagged and specified by passing requiredShippingContactFields or requiredBillingContactFields.

Passing requiredShippingContactFields in the payment request with a postalAddress value leads to receiving redacted address information in a callback event. Using the redacted address information enables to calculate appropriate shipping methods or taxes to update the information in the payment sheet. The redaction rules protect the user’s privacy and vary based on geographic region (e.g. in the UK only half of the postal code is returned before customer authorizes the transaction).

In case a customer changes the address in the payment sheet, response and updates of shipping costs and methods will be done by using the onshippingcontactselected method.

For shipment of physical goods, the shipping options can be populated by using the shippingMethods array.

Integrating with Accounting as a Service (AaaS)

Apple Pay returns the unredacted requested customer data to the web shop in the PKPayment object after the customer has authenticated via Face ID, Touch ID, or passcode. This information is in free-form text and is not validated or verified by Apple.

With the help of the Apple Pay API, customers can correct the information in the payment sheet in case of errors. Apple provides more information on error handling and communicating errors to customers here.

Once customer information is verified and validated, you can use the values provided in the PKPayment-specific billing and shipping fields for the creation of an order in your fulfilment system.

When it comes to the integration with Accounting as a Service, all relevant payment information is passed by Apple to you in the form of the ApplePayPayment object. It contains unencrypted data, such as the billing and shipping address, or email and phone contacts, as well as encrypted payment credentials inside the ApplePayPaymentToken object. You can use this information in the scope of a payment request when handing over the information to Accounting as a Service. The resulting success or failure response must be passed back into the Apple Pay APIs (see here) to inform the customer if the payment was successful and to dismiss the payment sheet.

Once the payment has been authorized and the result has been passed into the Apple Pay payment sheet, the sheet will be dismissed, and a confirmation page should be displayed.

Please note, Apple Pay as well as Accounting as a Service generally support both payment execution options, authorize and capture in 2 steps or authorize and capture in 1 step. By default, authorize and capture will be applied in 1 step. In case you want to execute authorize and capture in 2 steps as your default flow, the related configuration is part of the onboarding procedure and can be found in the technical application. Should you already have been onboarded, please contact us or send us your request for configuration change.

Settlement

The settlement for Apple Pay payments follows the standard technical PSP model in Accounting as a Service. Apple Pay payments can not be differentiated from normal card payments.

Refund

In case of a refund to be handled as part of a return, you should follow our use case Return creation to trigger the refund procedure in Accounting as a Service. Alternatively, if the refund happens in the context of a goodwill procedure, please follow the use case Good will creation for triggering a goodwill credit within Accounting as a Service.

See also