<!--
{
  "availability" : [
    "iOS: 18.1.0 -",
    "iPadOS: 18.1.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "SecureElementCredential",
  "identifier" : "/documentation/SecureElementCredential/CredentialSession/acquirePresentmentAssertion()",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Method",
  "symbol" : {
    "kind" : "Instance Method",
    "modules" : [
      "SecureElementCredential"
    ],
    "preciseIdentifier" : "s:23SecureElementCredential0C7SessionC27acquirePresentmentAssertionAC0f6IntentG0CyYaKF"
  },
  "title" : "acquirePresentmentAssertion()"
}
-->

# acquirePresentmentAssertion()

Indicates that the app intends to present a credential to a contactless interface.

```
func acquirePresentmentAssertion() async throws -> CredentialSession.PresentmentIntentAssertion
```

## Return Value

A [`CredentialSession.PresentmentIntentAssertion`](/documentation/SecureElementCredential/CredentialSession/PresentmentIntentAssertion) object, representing exclusive access to presentment intent for a short time.

## Discussion

Call this method when your app is in the foreground and showing a user interface appropriate for connecting to a contactless reader.

When you acquire this assertion, your app’s credential presentment can’t be interrupted by other entities’ presentment intents. Specifically, this prevents a default NFC app from interrupting when it detects an NFC reader’s RF field.

If another entity is already presenting a credential, calling this method throws an error. In this case, try calling the method again later.

Hold on to this instance as long as you need it (up to 60 seconds) to complete your credential presentment activity. When you’re done, call [`relinquish()`](/documentation/SecureElementCredential/CredentialSession/PresentmentIntentAssertion/relinquish()) to end the presentment assertion.

Repetitive acquisition of the assertion mechanism may result in a cooldown before being able to acquire the next assertion.

The exclusive use of the presentment intent expires after a predetermined timeout period. When this happens, the credential session’s event stream produces a [`CredentialSession.Event.presentmentIntentAssertionTimeout`](/documentation/SecureElementCredential/CredentialSession/Event/presentmentIntentAssertionTimeout) event.

- The most common errors are:
  - [`CredentialSession.ErrorCode.resourceUnavailable`](/documentation/SecureElementCredential/CredentialSession/ErrorCode/resourceUnavailable): The system service is unavailable, or another entity is currently presenting a credential.

---

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)