EEmmanuel Oladoyin
Back to all work

SaaS for cleaning businesses

CleanSera

A multi-tenant SaaS for cleaning companies: branded booking, smart dispatch, recurring schedules, payroll and a cleaner app, sold as a flat subscription with no commission.

CleanSera preview
55
Data models
38
API modules
200+
API routes
64
Backend test files

Overview

CleanSera gives a cleaning business everything it needs to run on one platform: a booking site under its own brand, a dashboard for scheduling and dispatch, and a mobile app for its cleaners. Customer payments go straight to the business through Stripe Connect, and the business pays a flat subscription instead of a commission.

I designed and built the whole product: the API, the web dashboard with its storefront and customer portal, and the cleaner app.

What I built

  • Branded booking and storefront

    An embeddable booking widget, a branded storefront on a subdomain or custom domain, and a customer portal.

  • Scheduling and dispatch

    A calendar, assignment conflict checks, and auto-assign that ranks cleaners by distance and workload.

  • Recurring care plans

    Recurring schedules with frequency discounts, deposits and cancellation policies, charged automatically.

  • Running the business

    Customers, services and add-ons, checklists, reviews, coupons and gift cards, payroll, inventory and compliance tracking.

  • Invoicing and payments

    Stripe Connect payments to the business's own account, VAT-aware invoices with gapless numbering, and a UBL export.

  • Cleaner mobile app

    Jobs, availability, calendar sync, documents, messages and earnings, with on-my-way and check-in steps, offline queueing and push notifications.

Engineering notes

  • Multi-tenancy on a shared database: every request resolves its business and membership, and cross-tenant tests guard payroll and reviews.
  • Custom domains verified by DNS record, with on-demand TLS certificates issued for verified domains only.
  • Bookings run through a state machine with locking, so two people cannot take the same slot.
  • Stripe Connect onboarding and webhooks; payments go to the business as merchant of record, and the platform fee defaults to zero.
  • Subscription plans with feature flags and a trial, background workers for deposits and recurring jobs, and a CI pipeline that runs tests and builds.

Screenshots

CleanSera screenshot 1
CleanSera screenshot 2
CleanSera screenshot 3
CleanSera screenshot 4
CleanSera screenshot 5
CleanSera screenshot 6
CleanSera screenshot 7
CleanSera screenshot 8
CleanSera screenshot 9