---
title: "paymentAuthorizationViewControllerWillAuthorizePayment(_:)"
framework: passkit
role: symbol
role_heading: Instance Method
path: "passkit/pkpaymentauthorizationviewcontrollerdelegate/paymentauthorizationviewcontrollerwillauthorizepayment(_:)"
---

# paymentAuthorizationViewControllerWillAuthorizePayment(_:)

Tells the delegate that the user is authorizing the payment request.

## Declaration

```swift
optional func paymentAuthorizationViewControllerWillAuthorizePayment(_ controller: PKPaymentAuthorizationViewController)
```

## Parameters

- `controller`: The payment authorization view controller.

## Discussion

Discussion This method is called before the payment request is authorized but after the user has authenticated by using either a passcode, Touch ID, or Face ID.

## See Also

### Related Documentation

- [Wallet Developer Guide](apple-archive/documentation/UserExperience/Conceptual/PassKit_PG.md)

### Handling user’s payment authorization

- [paymentAuthorizationViewController(_:didRequestMerchantSessionUpdate:)](passkit/pkpaymentauthorizationviewcontrollerdelegate/paymentauthorizationviewcontroller(_:didrequestmerchantsessionupdate:).md)
- [paymentAuthorizationViewController(_:didAuthorizePayment:handler:)](passkit/pkpaymentauthorizationviewcontrollerdelegate/paymentauthorizationviewcontroller(_:didauthorizepayment:handler:).md)
- [paymentAuthorizationViewController(_:didAuthorizePayment:completion:)](passkit/pkpaymentauthorizationviewcontrollerdelegate/paymentauthorizationviewcontroller(_:didauthorizepayment:completion:).md)
- [paymentAuthorizationViewControllerDidFinish(_:)](passkit/pkpaymentauthorizationviewcontrollerdelegate/paymentauthorizationviewcontrollerdidfinish(_:).md)
- [paymentAuthorizationViewController(_:didSelect:handler:)](passkit/pkpaymentauthorizationviewcontrollerdelegate/paymentauthorizationviewcontroller(_:didselect:handler:)-3bex6.md)
- [paymentAuthorizationViewController(_:didSelect:completion:)](passkit/pkpaymentauthorizationviewcontrollerdelegate/paymentauthorizationviewcontroller(_:didselect:completion:)-30s85.md)
