Organizations and Teams

Organizations help you manage your Projects and Teams in Composable Commerce.

  • After completing this page, you should be able to:

    • Describe what an Organization and a Team in Composable Commerce is.
    • Create your own Organizations and Teams.
    • Describe how permissions work with Teams.
    • Set permissions for a User and a Team in your own Project.
  • Along with Regions and Projects, Organizations play an important role. Together, the three of them store all of your commerce data.

    What is an Organization?

    Organizations help you manage your Projects and Teams. We store very little data in Organizations, it just gives you a place to manage and create Projects and Teams of Users.

    Your actual organization or company may create more than one Composable Commerce Organization to contain their various Project environments.

    Organizations act as a parent to Teams and Projects. When creating a new Project, you can assign it to an Organization of your choice. Teams within an Organization help you manage access permissions for a Project.

    Users can belong to multiple Organizations, but Projects and Teams can only belong to one Organization.

    How can you create an Organization?

    To create an Organization, see the directions here.

    What is a Team?

    Teams allow you to define access rights to resources for each Project. An Organization can have many Teams but each Team only exists within one Organization. Teams cannot exist outside of an Organization.

    A single Team may have access to many Projects within an Organization - and those access rights can differ. For example, a Developers Team may have full access to all of the resources in a Project used for development, but that same Team may only have read access to a Project used for performance testing within the same Organization.

    Some types of Teams you might define:

    • Marketing/Promotions Team to create discount campaigns and product merchandising
    • Customer service Team to review customer questions and help create orders
    • Product managers Team to create and edit products but never to update configuration data

    Every Organization will have an Administrators Team. Creating an Organization automatically creates the default Administrators Team, which will automatically assign the User that created it. The Administrators Team has full access to all of the resources within that Organization. An Administrator is able to:

    • Access the Account section of the Merchant Center to manage Projects, Organizations, etc.
    • Create, modify, or delete a Project.
    • Create, modify, and delete Teams in the Organization.
    • Add new members to any Team in the Organization, including the Administrator Team.
    • Set the permissions for any Team and Project in an Organization.

    You cannot modify the Administrator Team's permissions. We strongly recommend adding at least one other user to the Administrator Team immediately after creating a new Organization.

    How can you create a Team?

    To create a Team, follow the directions here.

    After you have created a Team, you can invite Users to become members of the Team by following the directions here.

    Permissions

    The Merchant Center grants access based on a User's Team's permissions. Permissions let you choose which parts of a Merchant Center Project a Team's members can view and edit. Applying permissions properly to your Teams will mean that the right people in your Projects have access to the right data.

    Keep in mind: user accounts exist within a Region, and can be assigned to more than one Team in more than one Organization in that Region.

    When you assign permissions to a Team, you first select which Project within the Team's Organization you are assigning permissions to. You can define permissions for one Team for multiple Projects in an Organization.

    Diagram shows how different Teams can have different permissions granted for different Projects.

    Think of the kinds of teams that you might have in your environment. You might have business teams - like a customer service team, a merchandising team and a product catalog team. Think about the resources that they would need access to. Let's have a look at some examples.

    A customer service team would need to be able to access:

    • Customers and
    • Customer Orders.

    A merchandising team would need to be able to:

    • create and view Product Discounts, Cart Discounts, Discount Codes, Products and Categories.
    • view Orders and Customers.

    Depending on how your product catalog teams are set up, there may be one team that:

    • would have full access to Products.
    • would be able to create and delete Products, including Product Prices,
    • would be able to create and delete Categories.

    In a different environment, you may have a product entry team that is able to create and edit Products, but not edit Prices or publish or unpublish Products. In that environment, there may be separate teams; one that handles pricing and another that publishes Products after they have been reviewed for correctness. All of those teams may be able to view Categories, but perhaps only the team that can publish Products would be able to create new Categories.

    You may also have technical teams - Teams of developers, testers, functional architects and solution architects. Think about which resources they would need access to in the Merchant Center.

    Each of these Teams may have permissions to access resources in several Projects in their Organization - and those permissions can be defined differently across Projects.

    Available permissions

    For Teams other than the Administrators Team, you can assign the following permissions:

    • View permissions: members of the Team can view, but not edit or delete.
    • View and edit permissions: members of the Team can view, edit, and delete.
    • Action Rights: some permissions have additional action rights, which control specific editing actions in a permission group. Action rights are a subset of view and edit permissions, scoping view and edit permissions to specific aspects of a particular area in the Merchant Center.
    • Menu item permissions: hides navigation items from the main menu.

    For a list of all the permissions and actions rights, see info here.

    A Team can have view or edit permissions to a section of the Merchant Center, even if it is hidden from their menus.

    View and edit permissions are workflow-based. If users have permissions to access a workflow, the permissions are configured to ensure that all related data relationships needed for the workflow are fulfilled. For example, Orders permission grants access to several APIs such as Customers, Payments, States, Discount Codes, etc.

    To assign access permissions for a Team to a Project, follow the directions here.

    Merchant Center permissions are also used in our ImpEx tool, including the API Playground and GraphQL IDE.

    A User on multiple Teams

    If a User is a member of multiple Teams, their access rights to a particular Project will be additive. For example, if they have full access to Products and Categories based on their membership in one team and read only access to Cart Discounts, Discount Codes and Product Discounts from their membership in a second Team, then they will have all of those rights combined. If they had restricted rights and less restrictive rights to one resource based on different Team membership, for example full access to Product from one Team and read only access from another Team, the result would be the least restrictive access - therefore, they would have full access to Products.

    Test your knowledge