Skip to content

Onboarding a Tenant

Onboarding stands a new customer up on Veona: you create their organisation and tenant, assign the edition they’ve bought, and provision it so the modules light up in their clinical app.

Who can do this: onboarding and super_admin. (Capabilities: clients.write, onboarding.run, registry.write, entitlements.write, license.issue, tenant_admins.manage.)

  • An organisation (client) is the customer.
  • A tenant belongs to the organisation and maps to a deployment of the EHR.
  • A facility is a physical site within the tenant.
  • An edition (Health Centre, Hospital, Network, Public Health) defines the default set of modules the tenant gets.
  1. Create the organisation. In the Organizations area (clients/), add the new client.
  2. Create the tenant under it. Open the tenant detail (clients/tenant/:id).
  3. Choose an edition. Onboarding blueprints (onboarding/blueprints) show the editions and the modules each one bundles. See Entitlements and editions for what each edition includes.
  4. Provision the tenant. From the tenant detail, run Provision (POST /tenants/:id/provision). This creates the EHR facility and staff and projects the edition’s module list into the tenant.
  5. Confirm the EHR is up. Read the tenant’s EHR status (GET /tenants/:id/ehr-status) to verify the facility and staff exist and the clinical app is reachable.
  6. Project entitlements. The edition’s modules become FacilityEntitlement rows in the EHR (via the canonical module-key mapper). Adjust them on the entitlements screen if the customer bought à-la-carte modules — see Entitlements and editions.
  7. Issue the licence if this is an on-prem or licensed deployment — see Licensing.
  8. Invite tenant admins. In Tenant Admins (users/tenant-admins), create and send the admin invite so the customer can sign in and assign clinical roles.
  • Entitlement changes are live: disabling a module makes the EHR return 403 on its routes immediately; re-granting restores access in the same transaction.
  • Subscriptions and billing are set up separately — see Billing operations.