---
title: "presentMultiSeatInvitationSheet(from:subscriptionGroupID:)"
framework: StoreKit
role: symbol
role_heading: Type Method
platforms: [iOS 27.3+, iPadOS 27.3+, Mac Catalyst 27.3+]
path: "storekit/appstore/presentmultiseatinvitationsheet(from:subscriptiongroupid:)-5cmtd"
---

# presentMultiSeatInvitationSheet(from:subscriptionGroupID:)

Presents the invitation sheet that the group purchaser uses to invite people to join a multiseat subscription.

## Declaration

```swift
@MainActor static func presentMultiSeatInvitationSheet(from controller: UIViewController, subscriptionGroupID: String) async throws
```

## Parameters

- `controller`: The view controller that StoreKit uses to present the sheet. The view controller needs to be in a window hierarchy.
- `subscriptionGroupID`: The identifier of the subscription group that contains the multiseat subscription.

## Mentioned in

Supporting multiseat purchases in your app

## Discussion

Discussion note: StoreKitError.userCancelled if the group purchaser dismisses the sheet without completing the invitation flow, StoreKitError.invalidPresentationContext if the view controller isn’t in a window hierarchy, StoreKitError.unsupported if an iOS app runs in visionOS, or another error if the system can’t present the sheet. Discussion Use this method to let the group purchaser invite people to join their multiseat subscription from within your app, for a subscription that uses Apple-hosted invitations. For a subscription that uses developer-hosted invitations, the method throws an error. The sheet handles choosing contacts and sending invitations, and your app doesn’t receive details about the invitations that the group purchaser sends. The method completes when the sheet is dismissed. It returns normally if the group purchaser completes the invitation flow. After a multiseat purchase, the system presents the sheet automatically unless you turn it off with multiSeatInvitationSheetSuppressed(_:). To present the sheet in SwiftUI, use the multiSeatInvitationSheet(isPresented:subscriptionGroupID:onCompletion:) view modifier. For more information, see Supporting multiseat purchases in your app.

## See Also

### Inviting people to a group

- [presentMultiSeatInvitationSheet(from:subscriptionGroupID:)](storekit/appstore/presentmultiseatinvitationsheet(from:subscriptiongroupid:)-ni0z.md)
- [multiSeatInvitationSheet(isPresented:subscriptionGroupID:onCompletion:)](swiftui/view/multiseatinvitationsheet(ispresented:subscriptiongroupid:oncompletion:).md)
