<!--
{
  "availability" : [
    "iOS: 8.0.0 -",
    "iPadOS: 8.0.0 -",
    "macCatalyst: 13.1.0 -",
    "macOS: 11.0.0 -",
    "visionOS: 1.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "PassKit",
  "identifier" : "/documentation/PassKit/PKPaymentAuthorizationViewController/canMakePayments()",
  "metadataVersion" : "0.1.0",
  "role" : "Type Method",
  "symbol" : {
    "kind" : "Type Method",
    "modules" : [
      "PassKit (Apple Pay and Wallet)"
    ],
    "preciseIdentifier" : "c:objc(cs)PKPaymentAuthorizationViewController(cm)canMakePayments"
  },
  "title" : "canMakePayments()"
}
-->

# canMakePayments()

Returns whether the user can make payments.

```
nonisolated class func canMakePayments() -> Bool
```

## Return Value

<doc://com.apple.documentation/documentation/Swift/true> if the device supports making payments; otherwise, <doc://com.apple.documentation/documentation/Swift/false>.

## Discussion

User may not be able to make payments for a variety of reasons. For example, this functionality may not be supported by their hardware, or it may be restricted by parental controls.

On devices that support making payments but don’t have any payment cards configured, the [`canMakePayments()`](/documentation/PassKit/PKPaymentAuthorizationViewController/canMakePayments()) method returns <doc://com.apple.documentation/documentation/Swift/true> because the hardware and parental controls allow making payments, but the [`canMakePayments(usingNetworks:)`](/documentation/PassKit/PKPaymentAuthorizationViewController/canMakePayments(usingNetworks:)) method returns <doc://com.apple.documentation/documentation/Swift/false> regardless of network.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)