PassKit iOS 15.5 to 16.0 API Differences

PKAddCarKeyPassConfiguration.h
Added PKAddCarKeyPassConfiguration.manufacturerIdentifier
Added PKAddCarKeyPassConfiguration.provisioningTemplateIdentifier
PKAddSecureElementPassViewController.h
Modified -[PKAddSecureElementPassViewControllerDelegate addSecureElementPassViewController:didFinishAddingSecureElementPass:error:]
Optional
FromRequired
ToOptional

PKAddShareablePassConfiguration.h
Added PKShareablePassMetadataPreview
Added -[PKShareablePassMetadataPreview initWithPassThumbnail:localizedDescription:]
Added -[PKShareablePassMetadataPreview initWithTemplateIdentifier:]
Added +[PKShareablePassMetadataPreview previewWithPassThumbnail:localizedDescription:]
Added +[PKShareablePassMetadataPreview previewWithTemplateIdentifier:]
Added PKShareablePassMetadataPreview.passThumbnailImage
Added PKShareablePassMetadataPreview.localizedDescription
Added PKShareablePassMetadataPreview.ownerDisplayName
Added PKShareablePassMetadataPreview.provisioningTemplateIdentifier
Added -[PKShareablePassMetadata initWithProvisioningCredentialIdentifier:sharingInstanceIdentifier:cardTemplateIdentifier:preview:]
Added -[PKShareablePassMetadata initWithProvisioningCredentialIdentifier:sharingInstanceIdentifier:cardConfigurationIdentifier:preview:]
Added PKShareablePassMetadata.cardTemplateIdentifier
Added PKShareablePassMetadata.serverEnvironmentIdentifier
Added PKShareablePassMetadata.preview
Added +[PKAddShareablePassConfiguration configurationForPassMetadata:primaryAction:completion:]
Modified -[PKShareablePassMetadata initWithProvisioningCredentialIdentifier:cardConfigurationIdentifier:sharingInstanceIdentifier:passThumbnailImage:ownerDisplayName:localizedDescription:]
AvailabilityDeprecation Message
FromAvailablenone
ToDeprecatedUse initWithProvisioningCredentialIdentifier:sharingInstanceIdentifier:cardConfigurationIdentifier:passPreviewMetadata:

Modified -[PKShareablePassMetadata initWithProvisioningCredentialIdentifier:sharingInstanceIdentifier:passThumbnailImage:ownerDisplayName:localizedDescription:accountHash:templateIdentifier:relyingPartyIdentifier:requiresUnifiedAccessCapableDevice:]
AvailabilityDeprecation Message
FromAvailablenone
ToDeprecatedUse initWithProvisioningCredentialIdentifier:sharingInstanceIdentifier:cardTemplateIdentifier:passPreviewMetadata:

Modified PKShareablePassMetadata.templateIdentifier
AvailabilityReplacement
FromAvailablenone
ToDeprecatedcardTemplateIdentifier

Modified PKShareablePassMetadata.requiresUnifiedAccessCapableDevice
Declaration
From@property (nonatomic, readonly, assign) BOOL requiresUnifiedAccessCapableDevice
To@property (nonatomic, assign) BOOL requiresUnifiedAccessCapableDevice

Modified PKShareablePassMetadata.passThumbnailImage
AvailabilityReplacement
FromAvailablenone
ToDeprecatedpreview.passThumbnailImage

Modified PKShareablePassMetadata.localizedDescription
AvailabilityReplacement
FromAvailablenone
ToDeprecatedpreview.localizedDescription

Modified PKShareablePassMetadata.ownerDisplayName
AvailabilityReplacement
FromAvailablenone
ToDeprecatedpreview.ownerDisplayName

Modified PKShareablePassMetadata.accountHash
Declaration
From@property (nonatomic, readonly, strong) NSString *accountHash
To@property (nonatomic, strong) NSString *accountHash

Modified PKShareablePassMetadata.relyingPartyIdentifier
Declaration
From@property (nonatomic, readonly, strong) NSString *relyingPartyIdentifier
To@property (nonatomic, strong) NSString *relyingPartyIdentifier

Modified +[PKAddShareablePassConfiguration configurationForPassMetadata:provisioningPolicyIdentifier:primaryAction:completion:]
AvailabilityDeprecation Message
FromAvailablenone
ToDeprecatedUse configurationForPassMetadata:primaryAction:completion:

Modified PKAddShareablePassConfiguration.provisioningPolicyIdentifier
AvailabilityDeprecation Message
FromAvailablenone
ToDeprecatedprovisioningPolicyIdentifier has been deprecated. You can stop setting this property in the init with no repercussions.

PKAutomaticReloadPaymentRequest.h
Added PKAutomaticReloadPaymentRequest
Added PKAutomaticReloadPaymentRequest.paymentDescription
Added PKAutomaticReloadPaymentRequest.automaticReloadBilling
Added PKAutomaticReloadPaymentRequest.billingAgreement
Added PKAutomaticReloadPaymentRequest.managementURL
Added PKAutomaticReloadPaymentRequest.tokenNotificationURL
Added -[PKAutomaticReloadPaymentRequest initWithPaymentDescription:automaticReloadBilling:managementURL:]
PKAutomaticReloadPaymentSummaryItem.h
Added PKAutomaticReloadPaymentSummaryItem
Added PKAutomaticReloadPaymentSummaryItem.thresholdAmount
PKError.h
Added PKAddSecureElementPassOSVersionNotSupportedError
Added PKShareSecureElementPassErrorDomain
Added PKShareSecureElementPassErrorCode
Added PKShareSecureElementPassUnknownError
Added PKShareSecureElementPassSetupError
PKIdentityAuthorizationController.h
Added PKIdentityAuthorizationController
Added -[PKIdentityAuthorizationController init]
Added -[PKIdentityAuthorizationController checkCanRequestDocument:completion:]
Added -[PKIdentityAuthorizationController requestDocument:completion:]
Added -[PKIdentityAuthorizationController cancelRequest]
PKIdentityButton.h
Added PKIdentityButtonStyle
Added PKIdentityButtonStyleBlack
Added PKIdentityButtonStyleBlackOutline
Added PKIdentityButtonLabel
Added PKIdentityButtonLabelVerifyIdentity
Added PKIdentityButtonLabelVerify
Added PKIdentityButtonLabelVerifyAge
Added PKIdentityButtonLabelContinue
Added PKIdentityButton
Added +[PKIdentityButton buttonWithLabel:style:]
Added -[PKIdentityButton initWithLabel:style:]
Added PKIdentityButton.cornerRadius
PKIdentityDocument.h
Added PKIdentityDocument
Added PKIdentityDocument.encryptedData
PKIdentityDocumentDescriptor.h
Added PKIdentityDocumentDescriptor
Added PKIdentityDocumentDescriptor.elements
Added -[PKIdentityDocumentDescriptor intentToStoreForElement:]
Added -[PKIdentityDocumentDescriptor addElements:withIntentToStore:]
Added PKIdentityDriversLicenseDescriptor
PKIdentityElement.h
Added PKIdentityElement
Added PKIdentityElement.givenNameElement
Added PKIdentityElement.familyNameElement
Added PKIdentityElement.portraitElement
Added PKIdentityElement.addressElement
Added PKIdentityElement.issuingAuthorityElement
Added PKIdentityElement.documentExpirationDateElement
Added PKIdentityElement.documentNumberElement
Added PKIdentityElement.drivingPrivilegesElement
Added PKIdentityElement.ageElement
Added PKIdentityElement.dateOfBirthElement
Added +[PKIdentityElement ageThresholdElementWithAge:]
PKIdentityError.h
Added PKIdentityErrorDomain
Added PKIdentityError
Added PKIdentityErrorUnknown
Added PKIdentityErrorNotEntitled
Added PKIdentityErrorCancelled
Added PKIdentityErrorNetworkUnavailable
Added PKIdentityErrorNoElementsRequested
Added PKIdentityErrorRequestAlreadyInProgress
Added PKIdentityErrorInvalidNonce
Added PKIdentityErrorInvalidElement
Added PKIdentityErrorInvalidMerchantID
PKIdentityIntentToStore.h
Added PKIdentityIntentToStore
Added PKIdentityIntentToStore.willNotStoreIntent
Added PKIdentityIntentToStore.mayStoreIntent
Added +[PKIdentityIntentToStore mayStoreIntentForDays:]
PKIdentityRequest.h
Added PKIdentityRequest
Added PKIdentityRequest.descriptor
Added PKIdentityRequest.nonce
Added PKIdentityRequest.merchantIdentifier
PKPassLibrary.h
Added -[PKPassLibrary encryptedServiceProviderDataForSecureElementPass:completion:]
PKPaymentRequest.h
Added PKPaymentRequest.multiTokenContexts
Added PKPaymentRequest.recurringPaymentRequest
Added PKPaymentRequest.automaticReloadPaymentRequest
PKPaymentRequestStatus.h
Added PKPaymentAuthorizationResult.orderDetails
Added PKPaymentRequestUpdate.multiTokenContexts
Added PKPaymentRequestUpdate.recurringPaymentRequest
Added PKPaymentRequestUpdate.automaticReloadPaymentRequest
Added PKPaymentOrderDetails
Added -[PKPaymentOrderDetails initWithOrderTypeIdentifier:orderIdentifier:webServiceURL:authenticationToken:]
Added PKPaymentOrderDetails.orderTypeIdentifier
Added PKPaymentOrderDetails.orderIdentifier
Added PKPaymentOrderDetails.webServiceURL
Added PKPaymentOrderDetails.authenticationToken
PKPaymentTokenContext.h
Added PKPaymentTokenContext
Added PKPaymentTokenContext.merchantIdentifier
Added PKPaymentTokenContext.externalIdentifier
Added PKPaymentTokenContext.merchantName
Added PKPaymentTokenContext.merchantDomain
Added PKPaymentTokenContext.amount
Added -[PKPaymentTokenContext initWithMerchantIdentifier:externalIdentifier:merchantName:merchantDomain:amount:]
PKRecurringPaymentRequest.h
Added PKRecurringPaymentRequest
Added PKRecurringPaymentRequest.paymentDescription
Added PKRecurringPaymentRequest.regularBilling
Added PKRecurringPaymentRequest.trialBilling
Added PKRecurringPaymentRequest.billingAgreement
Added PKRecurringPaymentRequest.managementURL
Added PKRecurringPaymentRequest.tokenNotificationURL
Added -[PKRecurringPaymentRequest initWithPaymentDescription:regularBilling:managementURL:]
PKShareSecureElementPassViewController.h
Added PKShareSecureElementPassResult
Added PKShareSecureElementPassResultCanceled
Added PKShareSecureElementPassResultShared
Added PKShareSecureElementPassResultFailed
Added PKShareSecureElementPassViewControllerDelegate
Added -[PKShareSecureElementPassViewControllerDelegate shareSecureElementPassViewController:didFinishWithResult:]
Added -[PKShareSecureElementPassViewControllerDelegate shareSecureElementPassViewController:didCreateShareURL:activationCode:]
Added PKShareSecureElementPassViewController
Added -[PKShareSecureElementPassViewController initWithSecureElementPass:delegate:]
Added PKShareSecureElementPassViewController.delegate
Added PKShareSecureElementPassViewController.promptToShareURL