A tenant represents a single organization or storefront running on your Meneja platform. Every piece of data — vendors, products, orders, users, and billing records — belongs to a specific tenant. Tenants are fully isolated from one another, meaning that an admin managing one storefront cannot see or affect another tenant’s data. As a super admin, you have visibility across all tenants; as an admin, you manage the tenant your account belongs to.
Key tenant fields
Each tenant record contains the following fields:
| Field | Type | Description |
|---|
tenant_id | string | The unique identifier for the tenant. Used in API requests and across all related records. |
name | string | The display name of the tenant organization. |
domain | string | The domain this tenant operates on (e.g., store.example.com). |
country_code | string | The country where the tenant is based, used for locale and compliance purposes. |
currency | string | The currency the tenant transacts in (e.g., KES, TZS, USD). |
languages | string[] | The languages this tenant supports (e.g., ["en", "sw"]). |
plan | string | null | The subscription plan the tenant is on. null if no plan is assigned. |
trial_ends_at | string | null | The date the tenant’s trial period expires. null if not on a trial. |
is_active | boolean | Whether the tenant is currently active. Deactivating a tenant suspends access for its users. |
modules | object | The set of optional feature modules enabled for this tenant. See Tenant modules below. |
branding | object | null | The tenant’s visual identity, including logo URLs and color theme. |
metadata | object | Additional operational data such as support contact details and legal document URLs. |
admin_email | string | The primary admin email address for the tenant. |
admin_phone | string | The primary admin phone number for the tenant. |
Tenant modules
Modules are optional features that you can toggle on or off for each tenant. Each module is a boolean flag. Enabling a module unlocks the corresponding section of the dashboard for that tenant’s admins.
| Module | Field | Description |
|---|
| Payments | payments | Enables payment processing features for the tenant’s storefront. |
| Promotions | promotions | Enables promotional campaigns, discount codes, and offer management. |
| Inventory | inventory | Enables inventory tracking and stock management across the tenant’s products. |
You can toggle modules for a tenant at any time from the tenant detail page. Disabling a module hides it from the tenant’s admins immediately but does not delete any existing data.
Tenant branding
Each tenant can have its own visual identity configured in its branding settings. This includes:
- Logo URLs — primary logo, secondary logo, and an icon variant
- Color theme — primary, secondary, and accent colors, along with text, background, and border color values
Branding settings control how the tenant’s storefront appears to its own users and are managed separately from the platform-level theme.
The Metadata section holds supplementary information for the tenant:
| Field | Description |
|---|
terms_conditions | URL to the tenant’s terms and conditions document. |
privacy_policy | URL to the tenant’s privacy policy document. |
support_email | The support email address shown to the tenant’s customers. |
support_phone | The support phone number shown to the tenant’s customers. |
banners | A list of promotional banner images displayed on the storefront. |
Tenant isolation
Each tenant’s data is scoped by tenant_id. When you view products, orders, vendors, or users in the dashboard, you only see records that belong to the active tenant context. Super admins can switch between tenants to inspect or manage any storefront on the platform. Standard admins always operate within the bounds of their own tenant.
Tenant isolation applies to billing as well. Each tenant has its own billing configuration and invoice history, independent of other tenants on the platform.