Skip to content

Product documentation

Laundrix is a multi-tenant laundry management platform from Numi Innovations LTD. One installation serves many separate laundry companies, each with its own staff, customers, prices and data.

Overview

Laundrix covers the whole life of a laundry order: taking it at the counter, tagging and tracking every garment, moving garments through production and quality control, delivering or handing over, and billing. It also gives owners analytics, a customer portal and an optional AI assistant.

  • For a laundry owner: a complete operating system for one or more branches.
  • For a software business: a ready multi-tenant foundation you can host and offer to many laundries (needs the Extended Licence).

Architecture and technology

LayerTechnology
Web applicationNext.js 15 (App Router), React 19, TypeScript, Tailwind CSS
DatabasePostgreSQL 14+ (16 recommended) through Prisma 6
ValidationZod on every input
PaymentsPaystack, behind a provider interface
FilesLocal disk, or any S3-compatible bucket (AWS S3, Cloudflare R2, Backblaze B2, MinIO)
Email, SMS, WhatsApp, AISMTP; Termii SMS; Meta WhatsApp Cloud API; Anthropic or OpenAI. All optional.
TestsVitest against a real PostgreSQL database, plus Playwright browser scripts

Multi-tenancy and data isolation

Every business record carries a company identifier. All reads and writes go through a company-scoped data client that adds that identifier automatically and refuses cross-company references, so a developer cannot forget a filter. The scoped client is the only data access most of the code may use, and an automated test fails the build if other code imports the unscoped client.

Why this matters
Isolation is enforced on the server, never by hiding things in the interface. Automated tests actively try to read and change another company’s data and expect to be refused.

Roles and permissions

Permissions live in one central catalogue (84 permissions). Every action calls the same check, so there are no scattered role-name conditions. Sixteen role templates ship with the product, and a company can create its own roles. A person can only grant permissions they hold themselves.

RoleTypical use
Laundry OwnerFull control including billing
Company AdminEverything except billing
Branch ManagerRuns one branch end to end
Front Desk / ReceptionistOrders, payments and hand-overs
Laundry, Washing, Dry Cleaning and Pressing operatorsProduction stages
Quality ControlInspects finished garments
Inventory ManagerStock, suppliers and equipment
Accountant / FinancePayments, invoices, expenses, reports
Customer ServiceTickets, customers, messages
Delivery Manager and Driver / RiderDispatch and doorstep jobs
Customer and Corporate CustomerCustomer portal only

What is included

Operations

  • Orders and point of sale: prices calculated on the server from your configured rules; rush tiers; discounts that need manager approval above a threshold.
  • Garments: every item has a tag with a QR code and a Code 128 barcode, an inspection record with photos, and a timeline.
  • Production: configurable stages (intake, tag, sort, wash, dry clean, dry, press, fold, quality control, pack, ready), workstation queues, scan to advance, pause, issue and transfer.
  • Quality control: checklists, pass, rework or fail, and rework counted in analytics. Damage, lost-item and complaint cases are kept and never silently deleted.
  • Pickup and delivery: dispatch board, driver assignment, signature and OTP-verified delivery, and updates that sync safely after a connection drop.
  • Inventory, equipment, expenses, attendance, documents: stock movements with reorder alerts, maintenance schedules, expense approval, clock-in and clock-out, and expiry tracking.

Customers and finance

  • Customers: profiles, addresses, loyalty tiers and referrals, wallet and account credit, corporate accounts with credit terms, recurring orders and subscription plans.
  • Payments: cash, transfer, card terminal, wallet, account credit and online card payment through Paystack. An online payment is marked paid only after the server verifies it with the provider.
  • Invoices and receipts: numbered invoices, statements and PDF receipts that carry the company logo.
  • Customer-facing pages: public order tracking by tracking code, an online booking page for each company, and a signed-in customer portal.

Insight and platform

  • Analytics and reports: a live dashboard, turnaround, on-time rate, rewash and loss rates, branch comparison, and CSV, Excel or PDF export.
  • Notifications: an attention list computed from your data, with email, SMS and WhatsApp channels when configured.
  • AI assistant (optional): answers from your own records within the signed-in person’s permissions. Actions it proposes need a human to confirm.
  • Plans and billing: plans, limits, trials and feature gating stored in the database, a grace period, then read-only mode. A platform admin area manages companies, plans and payments.
  • Public API and webhooks: see Developer resources.

Integrations and what “not configured” means

Anything that depends on an outside provider is optional. If a provider’s keys are missing, the screen says Integration not configured instead of pretending to work. Nothing is faked and nothing is sent.

Known limitations

  • Push notifications are not implemented.
  • The SMS and WhatsApp adapters follow the providers’ public documentation but have not been exercised with live accounts.
  • Customer subscription plans are not charged automatically, and company plan renewals use a manual checkout.
  • There is no live driver map.
  • The mobile wrapper (capacitor.config.json) is configuration only; you build and sign the native apps yourself.