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

# Business Accounts

> Share embedded wallets across a team from your iOS app, with separate control over who manages the account and who can sign.

<Note>
  **Business Accounts are in early access.** [Talk to us](https://www.dynamic.xyz/talk-to-us) if you'd like to build with them.
</Note>

A **business account** lets a team share embedded wallets (for example a company treasury or an org-owned wallet) instead of tying each wallet to one person. On top of that, it adds flexible administration: you decide who can manage the account and who can sign, independently.

In the Swift SDK, every business account operation lives on `DynamicSDK.instance().businessAccounts`.

## Prerequisites

* `DynamicSDK` initialized with your environment ID (see the [quickstart](/docs/swift/quickstart))
* An authenticated user, because account operations act on behalf of the signed-in user
* Business Accounts enabled for your environment

## The model

A business account owns wallets. Access is configured at two levels, **Members** and **Signers**.

**Members** administer the account:

* **Owner**: full control, including transferring ownership. Exactly one per account.
* **Admin**: add and remove members and signers, and link wallets.
* **Viewer**: read-only access to the account.

**Signers** approve transactions and messages for a specific wallet. Removing a signer only revokes that person's ability to sign, and the wallet and other signers stay intact.

<Note>
  Being an admin does **not** let someone sign, and being a signer does **not** grant admin rights. Grant each explicitly.
</Note>

## How it fits with embedded wallets

A business-account wallet **is** a Dynamic embedded wallet. The difference is ownership and access: it belongs to the account, and you add people as signers instead of tying it to one user. Once you are a signer, you [sign transactions and messages](/docs/swift/business-accounts/signing) the same way as with any embedded wallet.

## Who can call what

Every method acts on behalf of the signed-in user. Reads require membership, and mutations such as adding members or signers, linking wallets, and transferring ownership require the owner or admin role. A call made without the required role fails, so check `detail.members` for the caller's role before you show those actions in your UI.

## Next steps

<CardGroup cols={2}>
  <Card title="Create an account" icon="plus" href="/docs/swift/business-accounts/create-an-account">
    Create an account and read back its details.
  </Card>

  <Card title="Add wallets" icon="wallet" href="/docs/swift/business-accounts/add-wallets">
    Link a wallet to the account, or remove one.
  </Card>

  <Card title="Manage signers" icon="key" href="/docs/swift/business-accounts/manage-signers">
    Grant and revoke signing access.
  </Card>

  <Card title="Members and roles" icon="users" href="/docs/swift/business-accounts/members-and-roles">
    Administer membership and transfer ownership.
  </Card>
</CardGroup>
