@available(iOSApplicationExtension, unavailable) @objc public class STPApplePayContext : NSObject, PKPaymentAuthorizationViewControllerDelegate
A helper class that implements Apple Pay. Usage looks like this:
- Initialize this class with a PKPaymentRequest describing the payment request (amount, line items, required shipping info, etc)
- Call presentApplePayOnViewController:completion: to present the Apple Pay sheet and begin the payment process 3 (optional): If you need to respond to the user changing their shipping information/shipping method, implement the optional delegate methods
- When the user taps ‘Buy’, this class uses the PaymentIntent that you supply in the applePayContext:didCreatePaymentMethod:completion: delegate method to complete the payment
- After payment completes/errors and the sheet is dismissed, this class informs you in the applePayContext:didCompleteWithStatus: delegate method
Seealsohttps://stripe.com/docs/apple-pay#native for a full guide
SeealsoApplePayExampleViewController for an example
Initializes this class. @note This may return nil if the request is invalid e.g. the user is restricted by parental controls, or can’t make payments on any of the request’s supported networks
@objc(initWithPaymentRequest:delegate:) public required init?(paymentRequest: PKPaymentRequest, delegate: STPApplePayContextDelegate?)
The payment request to use with Apple Pay.
Presents the Apple Pay sheet, starting the payment process. @note This method should only be called once; create a new instance of STPApplePayContext every time you present Apple Pay.
@objc(presentApplePayOnViewController:completion:) public func presentApplePay(on viewController: UIViewController, completion: STPVoidBlock? = nil)
The UIViewController instance to present the Apple Pay sheet on
Called after the Apple Pay sheet is presented