Skip to main content

A user-owned account

Each user holds portfolio assets in their own smart account. Balances and positions belong to that account. Assets are not combined in a shared MyStacks vault. The first successful stack reservation binds one linked wallet as the owner for the user’s MyStacks identity. That owner stays fixed across all their stacks and after rejoining. Linking or unlinking wallets does not change the owner.

Permission to rebalance

Delegated permissions let an account owner authorise a session signer to carry out permitted actions. MyStacks uses this model so portfolio swaps can run without a fresh user signature for each trade. The intended MyStacks permission boundary is simple:
  • Custom permissions restrict automated interaction to approved swap aggregators.
  • Swap proceeds stay in the user’s smart account.
  • MyStacks and the portfolio manager have no authority to withdraw the user’s funds.

Ownership and delegation are separate

The user authorises the session. The backend uses a session signer to request delegated execution. Holding that signing capability does not make MyStacks the account owner. A key management service (KMS) protects the session signing key and signs execution requests. The smart account’s permissions determine what that signer is allowed to do.

Revocation and withdrawal

The user can revoke the session to stop future use of that permission. Revocation does not reverse trades that have already settled. With funds in the account, withdrawal requires the account owner’s signature. An already empty account can complete its exit without a signature. It is separate from the manager’s rebalance flow. The user-facing steps are covered by the withdrawal guide.