Separate your product catalog from commerce.

Users and organizations

To get started with Commerce Layer, a user needs to create a single account. This user can create and manage one or more organizations. In this section, you will learn more about users and how to structure a new organization.


Users are individuals who create an account in Commerce Layer. A user can create or join one or more organizations to manage memberships, assign, or be assigned specific roles and permissions. To become a user, you have to create an account using an email address or the other available options.


An organization is an independent group that comprises members with assigned roles and permissions. A user can manage many companies, clients, or merchants within a single account with an organization. With the appropriate permission, members of an organization can create new merchants, markets, and business models for each market without any data duplication.


Each organization is completely independent. You can invite one or more users to join an organization. You can also assign members with a role (one of Admin or Member). The new member(s) will receive the invitation by email and will be prompted to create an account if they don’t already have one.

Roles and permissions

To allow a seamless collaborative workflow, Enterprise users can define custom roles and assign permissions to each role created. This allows different members to have different privileges.


Applications define the credentials you use to authenticate and interact with Commerce Layer APIs. Three different types of applications are currently available. Each of them has a role which grants them different permissions. Which one to use depends on your specific use case:

  • Sales channelnon-confidential (public) API credentials you can use to build any customer touchpoint. Their permissions are restricted so that they can be safely used client-side and their tokens exposed to the public without any risks.
  • Integrationconfidential API credentials you can use to develop backend integrations with any 3rd-party system. They can have one of two roles: Read-only or Admin.
  • Webapp — used to develop custom web apps or services for your users, extending Commerce Layer backend with any functionality that is not provided out of the box. They don't come with their own roles and permissions, since they get the set of permissions of the authenticated user.