This is the second in a series of posts about new iOS 8 features that apps can take advantage of. While there has been a lot of talk about some of these, our goal is to take an in-depth look at the big impact that some of these new features in iOS 8 will have. Here we’ll take a look at Touch ID and Apple Pay. For the first post, which covers iOS8’s new App Exensions, go here.
iOS8 brought a number of important changes to the iOS platform. Two of the most important changes were the introduction of the Touch ID API and the subsequent release of Apple Pay. These two features are, of course, related, as Touch ID plays a crucial role in how Apple Pay works. To help you get started with both of these new features, we’ll review how Touch ID works and what you’ll need to know to include Apple Pay in your app.
When it was first introduced with the iPhone 5s, Touch ID was only used for unlocking your iPhone and confirming App Store purchases. Now, the Touch ID API will allow developers to use the technology to protect and secure purchases, notes, passwords and other kinds of app data. In addition, Touch ID is now supported on the iPad Air 2, iPad Mini 3 and the recently introduced iPhone 6 and 6+.
The UI for touch ID is pretty simple, with not much for a developer to worry about or control. It displays the app name, provides the option of entering a passcode/password and displays the task that will be attempted if authentication succeeds.
If you want to see this in action, some examples include:
As you can see in the examples, the use of Touch ID does not need to be limited to a primary access point for the app. Anything that you want to protect with an authentication barrier can make use of TouchID.
So…the big news, which is a major type of authentication, and then some…the ability to pay with Apple Pay!
First, let’s clarify what Apple Pay actually is: it’s a service that allows you to pay with your mobile device. You can pay both at a physical store and online. However, Apple Pay is not Apple trying to be a new credit-card processor; note the inclusion of all the major payments industry players on Apple Pay – Apple isn’t competing with any of the major card issuers or credit-card networks.
There are countless articles, tutorials, and reviews focused on the user experience of Apple Pay, regarding how a user sets it up on their phone, the flow in a physical store, etc. We aren’t going to repeat that here, since when you develop an app you don’t get to touch those experiences.
So here are the basics: right now Apple Pay only for Phone 6 and 6 Plus because it requires the Secure Element chip and NFC chip in these new phones. This new technology allows users to check out securely after providing billing, shipping, contact, and payment info for physical goods. It uses API’s in PassKit framework (different than In-App purchase, those API’s are in StoreKit).
To set up, Apple has a lot of documentation that calls out pre-requisites, and a separate set of Human Interface Guidelines (HIG) to follow. Prep includes setting up an account with a payment processor or gateway. The actual implementation may differ, but Apple provides a list of suggested processes and strongly advises against going outside them. Next, you need to register a Merchant Identifier via Certificates, Identifiers and Profiles, as well as submit a Certificate Signing Request to obtain Public and Private keys that will be used to encrypt and decrypt Payment Tokens. Lastly, you need to include an Apple Pay Entitlement in the app.
Apple Pay basically removes a credit-card number from your payment flow. Once authorized by the user with Touch ID, your app receives a payment token from PassKit. The actual authentication is done separately, just letting Apple Pay know if the transaction has been approved or not.
As for the HIG, Apple provides a lot of details. Because there are accounts that are made solely to store credit-card information, Apple suggests dropping the need for a user to create an account to pay, as Apple Pay will be providing everything needed for a transaction. You may not be ready to do this, but know that it is an option.
Anything like a redemption or discount is handled before starting the Apple Pay process. Where you actually invoke the payment process depends on if there’s just one shipping address or multiple ones.
The UI requires prominent display on the button, and only if the device supports Apple Pay (don’t confuse an iPhone 5 user!) . On the Apple Pay Sheet itself, you can control some of the content, but it is required to display in all caps. Apple recommends that you only request the minimum info needed, and if you have to add line items, that they are easily understood and that your labels fit on one line.
The brand identity of Apple Pay itself is simple enough, but Apple provides many “don’ts” just in case. In one download you can grab all the artwork needed to place a button, which should be the same in portrait and landscape, have sufficient contrast to the background and must always invoke the payment sheet. They even have a logo-only version for non-English interfaces. However, you don’t always have to use Apple’s buttons — there are text Payment options (Two words with upper case) or a payment mark – whatever fits with how other payments are displayed and selected in your app’s flow.
Note that there is also new section (2) in Apple Store Review Guidelines focused on Apple Pay, so the review team will definitely be paying close attention to how you implement it if you add Apple Pay to your app. If you also manage the marketing for your product, there are strong guidelines about how you can and cannot promote the use of Apple Pay.
At the time of this writing, it’s not yet clear how Apple Pay may work with loyalty programs. For example, you can already pay with your phone with the Starbucks app and accumulate points; if you pay with Apple Pay, what happens to your points? There are rumors that a solution will surface in time for holiday shopping, but we’ll have to wait and see.
If you haven’t tried the in-app experience yet, go ahead and check out Target, Uber, Groupon, or Open Table and see what you think.
Don’t have an iPhone6 or 6 plus? Well, if you splurge on an Apple Watch in 2015, authenticating there will let you use Apple Pay with your iPhone 5, 5s and 5c. And keep an eye out, because Siri should be able to control Apple Pay soon, too!
Interested in applying to Applico? Check out our job openings here!
Filed under: Product Engineering | Topics: apple pay, iOS, IOS 8, ios developer, ios development, Touch ID