<!--
{
  "availability" : [

  ],
  "documentType" : "symbol",
  "framework" : "SecureElementCredential",
  "identifier" : "/documentation/SecureElementCredential",
  "metadataVersion" : "0.1.0",
  "role" : "Framework",
  "symbol" : {
    "kind" : "Framework",
    "modules" : [
      "SecureElementCredential"
    ],
    "preciseIdentifier" : "SecureElementCredential"
  },
  "title" : "SecureElementCredential"
}
-->

# SecureElementCredential

Allow access to credentials inside the Secure Element on device.

## Overview

The SecureElementCredential framework allows your app to manage and use Secure Element credentials with contactless transaction capabilities. See [NFC & SE Platform for secure contactless transactions](https://developer.apple.com/support/nfc-se-platform) for information about requirements, availability, and requesting acccess to the platform.

Using this framework depends on having registered an applet bundle with the [Apple Business Register](https://register.apple.com/login) (ABR). The applet contains the cryptographic code required to complete a transaction. You use this framework to provision your applet and its credentials, which downloads a bundle from the ABR and installs it into the Secure Element. Provisioning returns an instance of [`CredentialSession.Credential`](/documentation/SecureElementCredential/CredentialSession/Credential), which you use with your calls to the framework.

The [`CredentialSession`](/documentation/SecureElementCredential/CredentialSession) class serves as the entry point to the framework. This class provides three major functions:

- Management: Allows your app to create, read, update, and delete credentials in the Secure Element.
- Wired actions: Allows your app to exchange data, given a credential, with an *applet* that corresponds to the credential.
- Card emulation: Allows the credential to communicate with a contactless reader.

The framework also provides SwiftUI and UIKit extensions that perform wired actions and card emulation while providing an appropriate user interface.

SecureElementCredential supports transactions for in-store payments, car keys, closed-loop transit, corporate badges, student IDs, home keys, hotel keys, merchant loyalty and rewards cards, and event tickets.

> Warning: In any file that imports a symbol from this framework’s SwiftUI extension, don’t also import UIKit. Similarly, if you use this framework’s UIKit extensions, don’t also import SwiftUI in the same file. Importing SwiftUI and UIKit in the same file results in ambiguity during compilation.

## Topics

### Essentials

[Accessing and using secure element credentials](/documentation/SecureElementCredential/Accessing-and-Using-Secure-Element-Credentials)

Manage and use payment cards and other credentials.

### Entitlements

  <doc://com.apple.documentation/documentation/BundleResources/Entitlements/com.apple.developer.secure-element-credential>

  <doc://com.apple.documentation/documentation/BundleResources/Entitlements/com.apple.developer.secure-element-credential.default-contactless-app>

### Credentials

[`CredentialSession`](/documentation/SecureElementCredential/CredentialSession)

A class for performing actions on a credential stored in the Secure Element.

### Transactions

[`CredentialTransaction`](/documentation/SecureElementCredential/CredentialTransaction)

A transaction object for performing wired and contactless operations in SwiftUI views.

### UIKit scene delegate

[`CredentialSessionWindowSceneDelegate`](/documentation/SecureElementCredential/CredentialSessionWindowSceneDelegate)

Delegate to notify your `UIWindowScene` that a CredentialSession event has occurred.



---

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)