> ## Documentation Index
> Fetch the complete documentation index at: https://docs.crossmint.com/llms.txt
> Use this file to discover all available pages before exploring further.

# CrossmintCheckoutController

> Swift Class

**Class**

The observable order state of one embedded checkout session.

```swift theme={null}
@MainActor final class CrossmintCheckoutController
```

Give an instance to `CrossmintEmbeddedCheckout`. Observe the instance to react to order changes. `identityVerificationCredentials` has a value when the order needs identity verification. Call `clear()` before you use one controller for a new checkout session.

## Initializers

### init()

Creates a controller with no order.

```swift theme={null}
@MainActor init()
```

## Instance Properties

| Property | Type | Description |
| - | - | - |
| `identityVerificationCredentials` | `IdentityVerificationCredentials?` | The credentials for the pending identity verification. |
| `order` | `CheckoutOrder?` | The order in its latest state. |
| `orderClientSecret` | `String?` | The secret that authorizes reads of the order. |

## Instance Methods

### clear()

Removes the stored order state.

```swift theme={null}
@MainActor func clear()
```
