Skip to main content

Overview

Creating test tenants (also referred to as stores) allows internal teams and select partners to explore the Publica.la platform without impacting production data. Test environments are ideal for product demos, onboarding workshops, and feature validation before a live rollout.

A tenant is an isolated instance of the Publica.la platform that includes its own database, branding, and user base. Test tenants replicate this isolation while remaining fully independent from production tenants.

Business Value

  • Showcase upcoming or premium functionality during sales demos without exposing confidential customer information.
  • Validate new product configurations (plans, coupons, payment gateways) in a safe space.
  • Enable support and success teams to reproduce customer issues quickly.

Prerequisites

  1. User Role – An Admin role in the Platform Console (Nova) or access to the Tenant Management CLI.
  2. Environment – Decide whether to create the tenant in the Sandbox cluster (recommended) or in Production under a hidden sub-domain.
  3. Feature Flags – Know which platform features should be active for the demo (see Platform Feature Flags).

Step-by-Step Guide

1. Launch the Tenant Wizard

MethodNavigationWhen to Choose
Nova UIAdministration → Tenants → ➕ New TenantFor quick, one-off demos
CLIphp artisan tenants:createFor scripted or repeated setups

Both methods collect the same core information.

2. Enter Core Details

FieldDescriptionExample
Tenant NameInternal reference used across logs and dashboards.demo_july_2025
Sub-DomainPublic URL where the store is reachable.demo-july.publica.la
Owner EmailPrimary admin account automatically generated.demo.owner@publica.la
LocaleDefault language for the storefront and reader.en

Tip: Prefix the sub-domain with demo- or sandbox- to avoid collisions with production domains.

3. Select a Template (Optional)

If you frequently create demo tenants, save time by using a predefined Tenant Template. Templates automatically apply:

  • Default branding (logo, colors)
  • Sample publications and collections
  • Subscription plans
  • Enabled feature flags

Create or update templates in Administration → Tenant Templates.

4. Configure Feature Flags

After the core tenant is provisioned, open Settings → Platform Features inside the new store and toggle the flags needed for your scenario (e.g., Bookshop, Custom CSS, AI Dictionary).

5. Seed Sample Data

Run the built-in seeder to populate the tenant with publications and sample users:

php artisan tenants:seed demo_july_2025 --sample-data

Alternatively, upload real demo assets via the Content Manager in the Nova UI.

6. Verify Access

  1. Log in with the auto-generated admin credentials sent to the owner email.
  2. Browse the storefront at the configured sub-domain.
  3. Open a reader session to confirm content delivery.

Best Practices

  • Name Convention – Use demo_<yyyy-mm> for easy search and bulk cleanup.
  • Expiration Policy – Schedule a recurring job to archive or delete tenants older than 90 days.
  • Limited Payment Gateways – Disable real payment providers to avoid unintended charges. Use the built-in Test Card gateway instead.
  • GDPR/Data Privacy – Never import real customer data into test tenants.

Troubleshooting

SymptomRoot CauseResolution
"Domain already taken" errorSub-domain conflict with existing tenantChoose a unique sub-domain or delete the old test tenant
Seeder fails with "Missing Sample Assets"Local sample files removedRe-run tenants:seed --download-samples to regenerate assets
Storefront shows 503Provisioning incompleteWait up to 2 minutes or check the tenants:status command
X

Graph View