---
title: CustomerEngagementSession
framework: proximityreader
role: symbol
role_heading: Class
path: proximityreader/customerengagementsession
---

# CustomerEngagementSession

The object you use to share and request customer information.

## Declaration

```swift
final class CustomerEngagementSession
```

## Mentioned in

Adding support for Tap to Share to your app

## Topics

### Configuring a session

- [CustomerEngagementSession.Configuration](proximityreader/customerengagementsession/configuration-swift.struct.md)
- [configuration](proximityreader/customerengagementsession/configuration-swift.property.md)
- [open(using:)](proximityreader/customerengagementsession/open(using:).md)
- [close()](proximityreader/customerengagementsession/close().md)
- [CustomerEngagementSession.Token](proximityreader/customerengagementsession/token-swift.struct.md)

### Getting customer configuration

- [CustomerEngagementSession.CustomerConfiguration](proximityreader/customerengagementsession/customerconfiguration-swift.struct.md)
- [customerConfiguration](proximityreader/customerengagementsession/customerconfiguration-swift.property.md)
- [CustomerEngagementSession.PeerClientType](proximityreader/customerengagementsession/peerclienttype.md)

### Getting events during a session

- [CustomerEngagementSession.Event](proximityreader/customerengagementsession/event.md)
- [events](proximityreader/customerengagementsession/events.md)

### Requesting and getting customer information

- [requestCustomerInfo(for:fields:message:)](proximityreader/customerengagementsession/requestcustomerinfo(for:fields:message:).md)
- [requestSignup(for:fields:message:emailConsent:smsConsent:termsAndConditions:)](proximityreader/customerengagementsession/requestsignup(for:fields:message:emailconsent:smsconsent:termsandconditions:).md)
- [requestAddress(for:fields:message:)](proximityreader/customerengagementsession/requestaddress(for:fields:message:).md)
- [requestPayment(for:using:delegate:)](proximityreader/customerengagementsession/requestpayment(for:using:delegate:).md)
- [CustomerEngagementSession.Purpose](proximityreader/customerengagementsession/purpose.md)
- [CustomerEngagementSession.Field](proximityreader/customerengagementsession/field.md)
- [CustomerEngagementSession.ConsentOption](proximityreader/customerengagementsession/consentoption.md)

### Updating the customer status and cart

- [updateStatus(_:)](proximityreader/customerengagementsession/updatestatus(_:).md)
- [updateShoppingCart(_:)](proximityreader/customerengagementsession/updateshoppingcart(_:).md)

### Adding a pass to Wallet

- [addPass(_:)](proximityreader/customerengagementsession/addpass(_:).md)

### Handling errors

- [CustomerEngagementSession.Error](proximityreader/customerengagementsession/error.md)

### Initializers

- [init(configuration:)](proximityreader/customerengagementsession/init(configuration:).md)

### Instance Properties

- [token](proximityreader/customerengagementsession/token-swift.property.md)

## Relationships

### Conforms To

- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Tap to Share

- [Adding support for Tap to Share to your app](proximityreader/adding-support-for-tap-to-share-to-your-app.md)
- [CustomerEngagement](proximityreader/customerengagement.md)
