marinasundstrom / YourBrand

Prototype enterprise system for e-commerce and consulting services
77 stars 13 forks source link

Tenant setup experience #13

Open marinasundstrom opened 5 months ago

marinasundstrom commented 5 months ago

This issue is about adding a registration experience for new tenants.

Background

A Tenant represents a client that uses the system as part of their business. The concept encompasses the organization and its users. As well as the resources distributed across the services provided by YourBrand.

The service that keeps track of the tenants, along with their orgs and users, is Identity Management.

This service owns all the general information, such as system-wide permissions.

A new tenant must be registered with Identity Management, together with at least one Organization, and an initial User.

When Tenants, Organizations, and Users are either added, updated, or deleted, Identity Management will publish notifications telling what happened and to what. The other services are free to consume and act on these events.

Task

Build a UI. An existing one can be built on.

Create API for the initial setup. Where should it live? What service?

Steps for registration:

  1. Create tenant
  2. Create organization
  3. Create user (admin)
  4. Add the user to the organization