User Accounts (Smart Accounts)

Learn about user accounts.

As you are implementing Openfort into your product, the first interaction you will most likely have with our SDKs/APIs are with Players. 'Players' are the users of Openfort. Every time a user registers on your platform, a player is registered under an Id. These players serve a dual purpose:

  1. Identification of users.
  2. Enabling interaction within your game.

We recommend creating a player as soon as your user is authenticated. Once created, Openfort returns a unique playerId. This is how it works when you register a new player:


After creating a player, you can register a counterfactual address. This address remains the same across other EVM chains for each player and doesn't cost gas to create.

The Custody Model#

A common misconception is that smart accounts are always non-custodial. In reality, the custody of a wallet hinges on the custody of its signers

Simply put:

  • If only the user can sign transactions: it's non-custodial.
  • If third-parties other than the user can sign transactions: it's custodial.

Openfort offers both approaches to the custodial model based on your preference and supports shifting from one to the other.