Apple Pay Essentials - Ernest Bruce - E-Book

Apple Pay Essentials E-Book

Ernest Bruce

0,0
26,39 €

-100%
Sammeln Sie Punkte in unserem Gutscheinprogramm und kaufen Sie E-Books und Hörbücher mit bis zu 100% Rabatt.

Mehr erfahren.
Beschreibung

Harness the power of Apple Pay in your iOS apps and integrate it with global payment gateways

About This Book

  • Be it adding an Apple Pay button to your app or calculating sales tax with Apple Pay- this book gives you all the information you need to build a fully-functional Apply Pay application
  • Paying within iOS Apps made easier and secure with this no nonsense and powerful guide
  • Escape tedious payment options by creating compelling product card screens that present the Pay button, which your customers can tap to quickly order your products

Who This Book Is For

This book is for anyone who wants to integrate Apple Pay in their applications. Basic familiarity with programming and the Xcode developer tools is expected.

What You Will Learn

  • Design a product card that includes the Apple Pay button
  • Implement the Apple Pay workflow in an efficient way
  • Use NSDecimalNumber objects to perform financial calculations accurately
  • Manage custom order information in the Apple Pay workflow and your custom order management system
  • Extract payment information from a payment token
  • Implement a secure, server-side payment-processor program
  • Find out everything you wanted to know about Apple Pay in iOS 9

In Detail

Apple Pay, one of the most talked about offerings of the latest iOS 9 release, is a digital wallet and electronic payment system developed by Apple Inc. Paying in stores or within apps has never been easier or safer. Gone are the days of searching for your wallet, and the wasted moments finding the right card! Now you can use your credit cards and rewards cards with just a touch.

It allows payment to merchants, using Near field Communication (NFC), and within iOS apps. Implementing Apple Pay within apps for payment is a bit tricky, but our book solves this problem for you.

Whether you are a brand new iOS app developer or a seasoned expert, this book arms you with necessary skills to successfully implement Apple Pay in your online-payment workflow.

Whether you are a brand new iOS app developer or a seasoned expert, this book arms you with the necessary skills to successfully implement Apple Pay. We start off by teaching you how to obtain the certificates necessary to encrypt customers' payment information. We will use Xcode and Objective C for the interface and Node.js for server side code. You will then learn how to determine whether the customer can use Apple Pay, and how to create payment requests. You will come to grips with designing a payment-processor program to interact with the payment gateway. Finally, we take a look at a business-focused view of Apple Pay protocols and classes.

By the end of this book, you will be able to build a fully functional Apple Pay-integrated iOS app

Style and approach

This is an easy-to-follow guide on integrating Apple Pay in your iOS Application. With step by step instructions along with excellent screen shots you will be able to learn everything that you wanted to know about Passbook and Apple Pay in iOS 8.

Sie lesen das E-Book in den Legimi-Apps auf:

Android
iOS
von Legimi
zertifizierten E-Readern

Seitenzahl: 116

Veröffentlichungsjahr: 2016

Bewertungen
0,0
0
0
0
0
0
Mehr Informationen
Mehr Informationen
Legimi prüft nicht, ob Rezensionen von Nutzern stammen, die den betreffenden Titel tatsächlich gekauft oder gelesen/gehört haben. Wir entfernen aber gefälschte Rezensionen.



Table of Contents

Apple Pay Essentials
Credits
About the Author
About the Reviewer
www.PacktPub.com
eBooks, discount offers, and more
Why subscribe?
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Errata
Piracy
Questions
1. Getting Started with Apple Pay
An overview of the online payment process
The Apple Pay payment workflow
Presenting the Apple Pay button
Creating the payment request
Presenting the payment sheet
Responding to order changes and payment authorization
Submitting the payment information to the payment gateway
Enabling Apple Pay in your app
Creating your app's Apple Pay merchant identifier
Installing your app's Apple Pay merchant certificate on your Mac
Enabling Apple Pay in your app's Xcode project
Summary
2. Payment Request Workflow
Getting information from an inventory service
Getting inventory information
Getting shipping information
Displaying the product card
Presenting product information
Presenting the Apple Pay button
Creating the payment request
Specifying payment details
Country and currency code
Merchant identifier and capabilities
Requiring shipping and billing information
Requiring shipping or billing addresses
Specifying shipping or billing addresses
Specifying shipping methods
Specifying summary items
Specifying custom information tied to the order
Summary
3. Payment Authorization Workflow
Actors and operations in the authorization workflow
Implementing a shared method to compute summary items
Responding to user interactions with the payment sheet
User changes shipping information
User changes shipping method
User authorizes payment request
Summary
4. Payment Processing Workflow
Actors and operations in the processing workflow
The preprocess phase
The merchant app receives the payment token
The merchant app receives the charge token from the payment gateway
The merchant app sends the order information to the order processing system
The process phase
The postprocess phase
The merchant app receives the transaction status from the order processing web app
The merchant app conveys the transaction status to the user
The merchant app dismisses the payment sheet
Summary
5. Designing an Order Management Server
Configuring an order management server web app
Defining order management data structures
Providing inventory information to clients
Processing orders from clients
Implementing secure communication
Summary
6. Apple Pay API Summary
Main classes
The PKPaymentButton class
Creating the button
+buttonWithType:style
The PKPaymentRequest class
Payment processing information
countryCode (NSString*)
currencyCode (NSString*)
merchantCapabilities (PKMerchantCapability)
merchantIdentifier (NSString*)
supportedNetworks (NSArray<NSString*>*)
Payment summary items
paymentSummaryItems (NSArray<PKPaymentSummaryItem*>*)
The required address fields
requiredBillingAddressFields (PKAddressField), requiredShippingAddressFields (PKAddressField)
Billing and shipping contacts
billingContact (PKContact*), shippingContact (PKContact*)
Shipping methods
shippingMethods (NSArray<PKShippingMethod*>*)
Shipping type
shippingType (PKShippingType)
Application data
applicationData (NSData*)
The PKPaymentSummaryItem class
Creating a summary item
+summaryItemWithLabel:amount:
+summaryItemWithLabel:amount:type:
Summary item components
label (NSString*)
amount (NSDecimalNumber*)
Pending or final
type (PKPaymentSummaryItemType)
The PKPaymentMethod class
Card tame
displayName (NSString*)
Card type
type (PKPaymentMethodType)
Payment network
network (NSString*)
Payment pass
paymentPass (PKPaymentPass*)
The PKShippingMethod class
User-friendly description
detail (NSString*)
App-level identifier
identifier (NSString*)
The PKPaymentAuthorizationViewController class
Determining Apple Pay support
+canMakePayments
+canMakePaymentsUsingNetworks:
+canMakePaymentsUsingNetworks:capabilities:
Initializing and presenting
-initWithPaymentRequest:
-initWithPaymentRequest:
Payment sheet delegate
delegate id <PKPaymentAuthorizationViewControllerDelegate>
The PKPayment class
Payment information
token (PKPaymentToken*)
Billing and shipping contacts
billingContact (PKContact*)
shippingContact (PKContact*)
shippingMethod
The PKPaymentToken class
Encrypted payment information
paymentData (NSData*)
Payment method and transaction identifier
paymentMethod (PKPaymentMethod*)
transactionIdentifier (NSString*)
Payment sheet user event protocol
The PKPaymentAuthorizationViewControllerDelegate protocol
The user chooses a payment card
-paymentAuthorizationViewController:didSelectPaymentMethod: completion:
The user selects a shipping address
-paymentAuthorizationViewController:didSelectShippingContact: completion:
The user selects a shipping method
-paymentAuthorizationViewController:didSelectShippingMethod: completion:
The user authorizes the payment request
-paymentAuthorizationViewControllerWillAuthorizePayment:
-paymentAuthorizationViewController:didAuthorizePayment: completion:
The payment sheet is done
-paymentAuthorizationViewControllerDidFinish:
Auxiliary classes
The PKContact class
Contact address components
emailAddress (NSString*)
name (NSPersonNameComponents*)
phoneNumber (CNPhoneNumber*)
postalAddress (CNPostalAddress*)
The NSPersonNameComponents class
Person name components
namePrefix (NSString*)
givenName (NSString*)
middleName (NSString*)
familyName (NSString*)
nameSuffix (NSString*)
nickname (NSString)
phoneticRepresentation (NSPersonNameComponents*)
The CNPhoneNumber class
Creating a phone number
+phoneNumberWithStringValue:
Phone number string
stringValue (NSString*)
The CNPostalAddress class
Postal address components
street (NSString*)
city (NSString*)
state (NSString*)
postalCode (NSString*)
country (NSString*)
ISOCountryCode (NSString*)
Summary
Index

Apple Pay Essentials

Apple Pay Essentials

Copyright © 2016 Packt Publishing

All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.

Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book.

Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.

First published: February 2016

Production reference: 1190216

Published by Packt Publishing Ltd.

Livery Place

35 Livery Street

Birmingham B3 2PB, UK.

ISBN 978-1-78588-638-6

www.packtpub.com

Credits

Author

Ernest Bruce

Reviewer

Zeeshan Chawdhary

Commissioning Editor

Veena Pagare

Acquisition Editor

Kirk D'Costa

Content Development Editor

Preeti Singh

Technical Editor

Siddhesh Patil

Copy Editors

Shruti Iyer

Priyanka Ravi

Project Coordinator

Shweta H Birwatkar

Proofreader

Safis Editing

Indexer

Rekha Nair

Production Coordinator

Aparna Bhagat

Cover Work

Aparna Bhagat

About the Author

Ernest Bruce is an accomplished technical writer and software engineer. He has worked for 13 years at Apple, Inc., where he held the position of Senior Technical Writer writing developer documentation. At Apple, Ernest specialized in writing documentation for the Xcode toolset, focusing on the Xcode user guide, and Xcode overview, as well as unit testing documentation and sample code. He also worked extensively on API documentation for the OS X and iOS platforms. Ernest helped design and develop the Xcode help articles that aid developers in getting around the user interface of the Xcode app. Before his years at Apple, Ernest worked as a programmer for Ping, Inc., where he helped manage the manufacturing processes using APL (A Programming Language). Ernest also has extensive experience in customer service, which has been instrumental to him developing content that readers find clear and easy to read, and that makes complex concepts more approachable.

Ernest is the head of Nerd Brawn, LLC, a software development company that focuses on developing platforms that help people learn about their environment and each other in innovative ways. The company is also working on new techniques to present content on desktop computers, tablets, and mobile phones.

About the Reviewer

Zeeshan Chawdhary has been dabbling with location-based technologies since 2007, having working with industry leaders like Foursquare, Google, and Yahoo in the LBS space. He is been working with startups for the past few years; e-commerce, location-based services, mobile apps – he has built them all, and scaled up for millions of users.

He is also an author, having written three books for Packt Publishing on iOS, Windows Phone, and iBooks Author respectively. He is currently writing another book on Ubuntu and getting his hands dirty with Android.

I would like to thank Packt Publishing for generously offering me books to review; it not only helps me learn new technologies but helps me strengthen what I know, as well as learn how other programmers work.

www.PacktPub.com

eBooks, discount offers, and more

Did you know that Packt offers eBook versions of every book published, with PDF and ePub files available? You can upgrade to the eBook version at www.PacktPub.com and as a print book customer, you are entitled to a discount on the eBook copy. Get in touch with us at <[email protected]> for more details.

At www.PacktPub.com, you can also read a collection of free technical articles, sign up for a range of free newsletters and receive exclusive discounts and offers on Packt books and eBooks.

https://www2.packtpub.com/books/subscription/packtlib

Do you need instant solutions to your IT questions? PacktLib is Packt's online digital book library. Here, you can search, access, and read Packt's entire library of books.

Why subscribe?

Fully searchable across every book published by PacktCopy and paste, print, and bookmark contentOn demand and accessible via a web browser

Preface

Whether you are relatively new to iOS app development or a seasoned expert, Apple Pay Essentials provides the skills that you need to easily incorporate Apple Pay into the payment workflows of your apps. This book shows you how to obtain the certificates that ensure payment information is securely transmitted between the user's iOS device, your payment gateway, and the banks involved in an Apple Pay transaction. The book teaches you how to provide a simple and consistent user experience, which expedites the time between desire and acquire. You learn how to respond to changes that the user makes to your preconfigured payment sheet, which is where the user confirms or modifies order and payment details. This book guides you through the interactions that your app makes with your payment gateway and your order-processing system. Finally, this book shows you how to design a simple order-processing web app that processes orders and payments submitted by client apps.

What this book covers

Chapter 1, Getting Started with Apple Pay, describes how online payments work in general, and it introduces Apple Pay—a simpler and more secure online payment model. This chapter also shows you how to obtain the Apple Pay merchant certificates that ensure that only the appropriate entities have access to sensitive payment information.

Chapter 2, Payment Request Workflow, describes how to create a payment request, which is an object that stores information that is critical to payment processing (such as currency and payment network requirements) and details about the customer's order. It also shows you how to manage the main elements of the Apple Pay user experience: the Apple Pay button, and the payment sheet. This chapter also explains how to get inventory details from an order-processing web app, and how to present product information to the user.

Chapter 3, Payment Authorization Workflow, shows you how your app should respond to payment sheet events, such as shipping address change, and user authorization of the payment.

Chapter 4, Payment Processing Workflow, describes the actors and operations involved in processing a payment, including your order processing web app.

Chapter 5, Designing an Order Management Server, describes the main components of an order management server, including its data structure, and client API.

Chapter 6, Apple Pay API Summary, summarizes the API that is used for Apple Pay transactions.

What you need for this book

To follow along with the content presented in this book, which is based on the book's example code, you need the hardware and software needed for iOS development: a development Mac, an iOS device that supports Apple Pay, and a recent version of the Xcode developer tools. You need to be able to build apps on your Mac and run them on the iOS device, which requires a wired connection between the computer and the device (so that Xcode can install the app on the device). When running the example app on iOS Simulator, the example app connects to the order management web app running on the computer through a URI that targets the appropriate process. When running the app on the iOS device, however, the connection must be done wirelessly. Therefore, you need to configure your development Mac as a proxy server so that HTTP requests to the order management web app from the iOS device are resolved by the web app on the computer and do not go to the wider network. The documentation in the example code explains how to configure your development Mac as a proxy server using the SquidMan proxy-server software.

Who this book is for

This book is intended for people who want to learn how to incorporate Apple Pay into their iOS apps so that their customers can pay for goods and services quickly and securely. A moderate knowledge of the iOS API and the Xcode developer tools is required.

Reader feedback

Feedback from our readers is always welcome. Let us know what you think about this book—what you liked or disliked. Reader feedback is important for us as it helps us develop titles that you will really get the most out of.

To send us general feedback, simply e-mail <[email protected]>, and mention the book's title in the subject of your message.

If there is a topic that you have expertise in and you are interested in either writing or contributing to a book, see our author guide at www.packtpub.com/authors.

Customer support

Now that you are the proud owner of a Packt book, we have a number of things to help you to get the most from your purchase.

Downloading the example code

You can download the example code files from your account at http://www.packtpub.com