Summary and recommendation
commercetools user management can be run manually, but complexity usually increases with role models, licensing gates, and offboarding dependencies. This guide gives the exact mechanics and where automation has the biggest impact.
commercetools manages Merchant Center access through a team-based, role-driven model. Users are invited into an organization and then added to one or more teams, each scoped to specific projects. Built-in roles (Viewer, Editor, Key User, Developer, Administrator) control access at the resource-type level - orders, products, customers, discounts, and stores each carry separate read/write toggles.
Custom granular permission sets extend this further, letting administrators define exactly which resource types a user can read or write within a given team. A user's effective permissions are the union of all roles assigned across every team they belong to.
API client credentials are governed entirely separately via OAuth 2.0 scopes and are not linked to Merchant Center user accounts.
Quick facts
| Admin console path | Merchant Center → Organization Settings → Teams & Permissions |
| Admin console URL | Official docs |
| SCIM available | No |
| SCIM tier required | Enterprise |
| SSO prerequisite | No |
User types and roles
| Role | Permissions | Cannot do | Plan required | Seat cost | Watch out for |
|---|---|---|---|---|---|
| Organization Admin | Full access to all projects within the organization; can manage teams, invite users, configure SSO, and manage billing settings. | Cannot act as a project-level developer API client by default; API client credentials are separate from Merchant Center user accounts. | There must always be at least one Organization Admin; the last admin cannot be removed or demoted. | ||
| Team Member (built-in roles) | Access is determined by the built-in roles assigned within a team: e.g., 'Viewer', 'Editor', 'Key User', 'Developer', 'Administrator'. Each role grants read and/or write access to specific resource groups (orders, products, customers, etc.). | Cannot access resources outside the projects the team is scoped to. Cannot manage organization-level settings unless also an Organization Admin. | A user can belong to multiple teams across multiple projects, and their effective permissions are the union of all team roles assigned to them. | ||
| Custom Role (via Granular Permissions) | Administrators can define custom roles with fine-grained read/write permissions per resource type (e.g., only read access to Orders, write access to Products). | Custom roles are scoped to the Merchant Center UI; they do not directly control API client OAuth scopes, which are managed separately. | Available on all plans; granular permissions feature availability may vary by contract. | Custom roles are configured at the team level within a project, not globally at the organization level. |
Permission model
- Model type: hybrid
- Description: commercetools uses a team-based, role-driven permission model within the Merchant Center. Users are invited into an organization and then added to one or more teams. Each team is scoped to one or more projects. Within a team, users are assigned built-in roles (Viewer, Editor, Key User, Developer, Administrator) or custom granular permission sets that control access to specific resource types. API access (for integrations) is governed separately via OAuth 2.0 API clients with explicit scopes, independent of Merchant Center user roles.
- Custom roles: Yes
- Custom roles plan: Not documented
- Granularity: Resource-type level (e.g., Orders, Products, Customers, Discounts, Stores) with separate read and write toggles per resource.
How to add users
- Log in to the Merchant Center at https://mc.commercetools.com/.
- Navigate to the Organization Settings (top-right organization menu).
- Select 'Teams & Permissions'.
- Select the team you want to add the user to, or create a new team.
- Click 'Invite member' (or 'Add member' if the user already exists in the organization).
- Enter the user's email address.
- Select the role(s) to assign within that team.
- Click 'Send invitation'. The user receives an email invitation to join.
Required fields: Email address of the invitee, Team selection, Role assignment within the team
Watch out for:
- Invited users must accept the email invitation before they can log in; pending invitations can be resent or cancelled from the team settings.
- If SSO is enforced for the organization, users must authenticate via the configured IdP; password-based login is disabled for those users.
- A user must be added to at least one team with at least one role to access any project resources.
- Inviting a user to a team does not automatically grant them access to other projects; separate team membership is required per project.
| Bulk option | Availability | Notes |
|---|---|---|
| CSV import | No | Not documented |
| Domain whitelisting | No | Automatic domain-based user add |
| IdP provisioning | Yes | SSO (OIDC) is available; automatic user provisioning via SCIM is not officially documented. IdP-initiated login is supported with Okta and Microsoft Entra ID via OIDC. |
How to remove or deactivate users
- Can delete users: Yes
- Delete/deactivate behavior: A user can be removed from a team (revoking their project access) without deleting their organization account. Full removal from the organization is also possible. Users can delete their own accounts from their profile settings. Organization Admins can remove users from teams and from the organization entirely via the Teams & Permissions settings.
- Log in to the Merchant Center at https://mc.commercetools.com/.
- Navigate to Organization Settings → Teams & Permissions.
- Select the team the user belongs to.
- Locate the user in the team member list.
- Click the remove/delete icon next to the user's name.
- Confirm the removal. The user immediately loses access to that team's project(s).
- Repeat for each team the user is a member of to fully revoke all project access.
- To remove the user from the organization entirely, navigate to the organization member list and remove them there.
| Data impact | Behavior |
|---|---|
| Owned records | Records created by the user (orders, products, etc.) are retained in the platform; commercetools stores creator/modifier references by user ID but data is not deleted when a user is removed. |
| Shared content | All content (products, orders, customer records) remains intact and accessible to other team members after user removal. |
| Integrations | API clients are separate from Merchant Center user accounts; removing a Merchant Center user does not revoke or affect any API client credentials the user may have created. |
| License freed | Removing a user from all teams and the organization frees their seat. commercetools pricing is order-based rather than per-seat, so the direct billing impact of removing a user is minimal unless contract terms specify user-count limits. |
Watch out for:
- Removing a user from a team does not remove them from the organization; they retain the ability to be re-added to teams until fully removed from the organization.
- The last Organization Admin cannot be removed; a replacement admin must be designated first.
- If SSO is configured, deprovisioning in the IdP prevents login but does not automatically remove the user from the Merchant Center organization; manual removal in the Merchant Center is still required (SCIM auto-deprovisioning is not documented as available).
- Pending invitations that have not been accepted should be cancelled separately if the invitation was sent in error.
License and seat management
| Seat type | Includes | Cost |
|---|---|---|
| Merchant Center User | Access to the Merchant Center UI across assigned projects and teams. No separate per-seat fee is publicly documented; pricing is order-volume based. | Included in platform subscription; no publicly documented per-seat charge. |
| API Client | OAuth 2.0 credentials for programmatic API access. Not a named user seat; scoped independently of Merchant Center users. | Included in platform subscription; no publicly documented per-client charge. |
- Where to check usage: Merchant Center → Organization Settings → Teams & Permissions (view all members and team assignments across the organization).
- How to identify unused seats: No built-in last-login reporting is documented in the Merchant Center UI. Administrators must manually review team member lists to identify users who may no longer need access. Activity logs are available via the Change History API for audit purposes.
- Billing notes: commercetools uses order-volume-based pricing (not GMV, not per-seat). Published starting prices are approximately $40,000/year for standard tiers and $150,000/year for premium tiers. User seat count does not directly drive billing under the standard pricing model, but enterprise contracts may include user-count terms. Pricing details require direct engagement with commercetools sales.
The cost of manual management
commercetools does not expose a last-login timestamp or built-in activity report in the Merchant Center UI. Identifying stale accounts requires manually reviewing team member lists across every project - there is no single organization-wide view that surfaces inactivity.
Change history is available via the Change History API for audit purposes, but that requires a separate query workflow rather than a dashboard scan.
Users must be added to each team per project individually; there is no global role assignment that propagates across all projects automatically. For organizations running multiple storefronts or regions as separate projects, this means every app requires its own team membership review during offboarding.
Pending invitations do not expire automatically, leaving open access windows for departed employees unless cancelled manually.
What IT admins are saying
The most consistently reported friction point is the absence of SCIM support. When an employee is deprovisioned in an IdP, their Merchant Center session is blocked at login - but their organization membership and team assignments remain intact until an admin manually removes them.
This creates a gap between IdP offboarding and actual access revocation that requires a separate cleanup step every time.
Administrators also flag the identity model transition complexity when migrating from legacy commercetools identity to the current organization/team structure. The lack of per-user activity data compounds this: without last-login visibility, periodic access reviews rely entirely on manual cross-referencing against HR or directory systems.
Common complaints:
- Identity transition complexity when migrating from legacy commercetools identity to the newer organization/team model.
- No SCIM support documented, meaning IdP deprovisioning does not automatically remove users from the Merchant Center; manual cleanup is required.
- No built-in last-login or user activity reporting in the Merchant Center, making it difficult to identify stale accounts.
- Users must be manually added to each team per project; there is no global role assignment that spans all projects automatically.
- Pending invitations do not expire automatically, which can leave open invitations for departed employees.
The decision
The manual approach is workable for small, stable teams where project count is low and user churn is infrequent. The Merchant Center UI at Merchant Center → Organization Settings → Teams & Permissions covers the full invite, role assignment, and removal workflow without requiring any tooling beyond browser access.
The model breaks down at scale. Every app in a multi-project commercetools setup requires separate team membership management, and without SCIM or last-login data, offboarding accuracy depends entirely on process discipline rather than system enforcement. Organizations with frequent headcount changes or strict access review requirements will find the manual overhead significant.
Bottom line
commercetools gives administrators fine-grained control over who can access what within each project, but the absence of SCIM, last-login reporting, and cross-project role propagation means that access hygiene is a manual discipline.
Offboarding requires touching every team in every project the departing user belongs to, and IdP deprovisioning alone does not clean up Merchant Center membership.
For organizations where access review cadence matters, the gap between what the IdP knows and what the Merchant Center reflects is the central operational risk.
Automate commercetools workflows without one-off scripts
Stitchflow builds and maintains end-to-end IT automation across your SaaS stack, including apps without APIs. Built for exactly how your company works, with human approvals where they matter.