Skip to content
This repository has been archived by the owner on Feb 14, 2024. It is now read-only.

Apple Pay Integration

Daniel Bauke edited this page Feb 14, 2024 · 2 revisions

(Taken from #533 and redacted a little)

I have read through Apple Pay integration and found that there are no ways to get the addresses without displaying the Apple Pay sheet.

So this what the Apple Pay flow could be that I can imagine now:

  1. We display Apple Pay button beside the regular checkout button if the device is supported and configured (Apple require that the Apple Pay button to be the same size or bigger than the regular checkout button - I suggest something like the attached image)
  2. We can initialize Apple Pay with optional shipping and billing addresses and also supported payment network (e.g. VISA, MasterCard, Amex, ...)
  3. The user can update these addresses directly from Apple Pay screen and with each update the user make to the addresses, Apple pay would ask us to validate the new address the user provided and return the new shipping price for the new address.
  4. The user can choose the payment network and then authorize the payment.
  5. Once the payment is authorized, Apple Pay would return a token to us which we would use to process the payment with it (probably we need the experience from the Fashion Store for this)
  6. In the payment confirmation page, we could ask the user if he wants to save the address with us as Zalando for future orders.

Also these are some User interface guideline that I found for Apple pay which may be interesting:

  • Don't disable or hide an Apple Pay button.
    • If an Apple Pay button can’t be used, such as because a product size or color hasn’t been selected, gracefully point out the problem after the button is tapped.
  • Collect optional information before checkout begins.
    • There’s no way to input data on the payment sheet, neither collect any optional information such as promo codes, redemption codes, gift messages, and delivery instructions ahead of time.
  • Prefer information from Apple Pay.
    • Assume that Apple Pay information is complete and up to date. Even if your app has existing contact, shipping, and payment information, consider fetching the latest from Apple Pay during checkout to increase the likelihood of accuracy and reduce possible corrections.
  • Don't require account creation before purchase.
    • If you want people to register for an account, ask them to do so on the order confirmation or thank you page. Prepopulate as many registration fields as possible using information provided by the payment sheet during checkout.
    • (This means that we need Guest Checkout to be implemented before implementing Apple Pay)

Integrate

Quick start

full flow in Demo App

Advanced usage

Contribute

Clone this wiki locally