Role model
Calypso uses roles to define what a company user can see and do in the UI. A user can have one or more roles. The final access level depends on the roles assigned to the user and on the account where the user works.
Use roles to separate financial operations, technical integration work, read-only audit access, and team administration.
Role scope
Calypso roles can be used at company level or account level.
| Scope | What it means | Example |
|---|---|---|
| Company-level access | The user can work across the company according to the assigned company role. | A Company Admin can manage company operations and invite users to company accounts. |
| Account-level access | The user can work only within the account where the role is assigned. | An Account Admin can manage users and operations only inside the available account. |
If your company has several accounts, assign roles only for the accounts where the user needs access. For example, a finance specialist may be a Payout Manager in one account and have no access to another account.
Available roles
| Role | Main access | Typical use case |
|---|---|---|
Company Admin | Access to all company operations and all accounts. Can create accounts and invite users. | Company owner, operations lead, or administrator responsible for the whole Calypso workspace. |
Account Admin | Access to all operations within a specific account. Can invite users to that account. | Manager responsible for one account, business unit, or merchant project. |
Company Auditor | Read-only access to company sections. | Compliance, audit, finance review, or management reporting. |
Account Auditor | Read-only access within a specific account. | External reviewer or internal specialist who needs visibility without making changes. |
Developer | Access to integration tools such as API keys, webhooks, and widgets. Can perform financial operations as part of integration and testing. | Backend or integration engineer setting up API flows, webhooks, widgets, or MCP access. |
Invoice User | Invoice functionality, reports, and read access to assets. | Employee who creates and monitors invoices but does not manage payouts. |
Crypto-to-Crypto User | Crypto exchange functionality, reports, and read access to assets. | Treasury or operations employee who performs crypto exchange operations. |
Payout User | Payout functionality, reports, and read access to assets. | Employee who creates payouts but should not be the final approver in a controlled payout process. |
Payout Manager | Payout functionality, ability to confirm payouts, reports, and read access to assets. | Senior finance or operations employee who reviews and confirms payouts. |
Combining roles
A user may need more than one role if their responsibilities cover several workflows.
Examples:
| Scenario | Recommended roles |
|---|---|
| A finance employee creates invoices and payouts in one account. | Invoice User and Payout User for that account. |
| A senior finance employee creates and confirms payouts. | Payout Manager for the account where payouts are managed. |
| A developer configures webhooks and API keys for integration testing. | Developer for a dedicated test or integration account. |
| A compliance user reviews invoices, payouts, balances, and reports without changing data. | Company Auditor or Account Auditor, depending on the required scope. |
| A manager administers one account but should not manage the whole company. | Account Admin for that account. |
We recommend using the minimum set of roles required for the user's job. If a user only needs to review data, use an auditor role instead of an operational role.
Team management permissions
Only users with administrative permissions can invite users or manage team access.
| Role | Team management access |
|---|---|
Company Admin | Can invite new users and edit or delete profiles for all roles except Company Admin and Company Auditor. |
Account Admin | Can invite new users and edit or delete profiles within the available account, except users with Company Admin, Company Auditor, or Account Admin roles. |
If a user tries to remove or edit a role that is equal to or higher than their own access level, Calypso rejects the action. Such changes must be handled through support.
Payout roles and payout confirmations
Payout roles define what the user is allowed to do with payouts. Payout confirmations define whether another team member must review a payout before it is sent.
These are related, but they are not the same setting.
| Concept | What it controls |
|---|---|
Payout User / Payout Manager roles | Whether the user can create or confirm payouts. |
| Payout confirmations | Whether payouts require approval from one or more team members before processing. |
| 2FA payout confirmation | Whether the current user must enter an authenticator code when creating a payout. |
Example:
- A user with
Payout Usercreates a payout. - If payout confirmations are enabled, the payout is not sent immediately.
- A user with the required payout permissions, usually
Payout Manager, reviews and confirms the payout. - After the required number of confirmations is reached, the payout can continue to processing.
If a Payout Manager creates a payout in a flow with additional signatures, another eligible user may still be required to confirm it. This helps keep payout creation and payout approval separated.
Recommended role setups
Small team
| User type | Roles |
|---|---|
| Business owner | Company Admin |
| Finance operator | Invoice User, Payout Manager |
| Developer | Developer on a separate integration account |
| Accountant or auditor | Account Auditor or Company Auditor |
Company with several accounts
| User type | Roles |
|---|---|
| Central administrator | Company Admin |
| Account manager | Account Admin only for the managed account |
| Finance user for Account A | Invoice User and/or Payout User for Account A |
| Finance user for Account B | Invoice User and/or Payout User for Account B |
| Read-only reviewer | Account Auditor for selected accounts |
Integration team
| User type | Roles |
|---|---|
| Integration developer | Developer |
| Finance validator | Invoice User, Payout User, or Payout Manager, depending on the tested flow |
| Reviewer | Account Auditor |
For integration and testing, create a separate account where possible. This keeps technical testing separate from production financial operations.
Practical examples
Invite a user who can create invoices only
Assign Invoice User for the required account. The user can work with invoices, reports, and asset data, but does not receive payout management access.
Invite a user who can create payouts but should not approve them
Assign Payout User. If payout confirmations are enabled, another team member with the required permissions can review and approve the payout.
Invite a user who can approve payouts
Assign Payout Manager. Use this role for trusted finance or operations users who are allowed to review and confirm payouts.
Give a developer access to API settings
Assign Developer. Use this role for API keys, webhooks, widgets, and integration setup. For security, avoid giving developers company-wide admin access unless they also need to manage users or accounts.
Give read-only access
Assign Company Auditor for company-wide read-only access or Account Auditor for read-only access to one account. This is useful for compliance, accounting, or external review.
Security recommendations
- Give users only the roles they need for their daily work.
- Separate payout creation and payout confirmation between different users when possible.
- Use auditor roles for read-only access.
- Use a separate account for development and integration testing.
- Review team roles regularly, especially after team changes.
- Remove users from accounts they no longer work with.
- Keep API keys and webhook management limited to users who need integration access.