Contents

paymentAuthorizationViewController(_:didSelect:handler:)

Tells the delegate that the user selected a shipping method, and asks for an updated payment request.

Declaration

optional func paymentAuthorizationViewController(_ controller: PKPaymentAuthorizationViewController, didSelect shippingMethod: PKShippingMethod, handler completion: @escaping  @Sendable (PKPaymentRequestShippingMethodUpdate) -> Void)
optional func paymentAuthorizationViewController(_ controller: PKPaymentAuthorizationViewController, didSelect shippingMethod: PKShippingMethod) async -> PKPaymentRequestShippingMethodUpdate

Parameters

  • controller:

    The payment authorization view controller.

  • shippingMethod:

    The selected shipping method. This parameter contains one of the shipping methods specified in the payment request.

  • completion:

    The completion handler to call with the updated payment summary items.

Discussion

Use this method to update shipping costs based on the shipping address the user selected in a call to paymentAuthorizationViewController(_:didSelectShippingContact:handler:). If the user didn’t select an address, use the prepopulated address of the payment request.

When the system calls this method, you create a new array of PKPaymentSummaryItem objects that represent the updated cost including shipping. For more information on creating summary items, see the PKPaymentRequest class’s paymentSummaryItems property.

See Also

Handling shipping information