Back to work
/sas-cleaning-suite
SAS Cleaning Suite
A full-stack SaaS platform for Australian cleaning businesses — marketing website, Stripe billing, ABN-verified signup, and a complete admin operations dashboard.

Full Description
SAS Cleaning Suite is a cloud-based cleaning business management ecosystem. This project covers the public marketing website and the admin/operations platform that sits around the core product: customer acquisition, self-serve signup with Australian ABN verification, Stripe subscriptions and trials, content and support management, and real-time admin tools. It is built for commercial, residential, medical, strata, hospitality, and franchise cleaning companies that need one system for leads, jobs, staff, payroll, invoicing, and compliance.
Problem
Cleaning companies typically run on disconnected tools — spreadsheets, WhatsApp, paper forms, separate payroll software, and manual invoicing. That causes missed leads, double bookings, poor staff visibility, late payments, and weak compliance tracking. Generic field-service software also fails to cover Australian-specific needs like STP payroll and ABN-based business registration.
Solution
We built a unified web platform that markets the product, onboards verified Australian businesses, handles Stripe billing and trials, and gives the SAS team a full admin command center. Businesses get a cleaning-specific operational product surface covering CRM, quoting, bookings, scheduling, workforce, payroll/STP, invoicing, compliance, reporting, customer portal, mobile access, and franchise/white-label capabilities. Internally, admins manage subscriptions, leads, support, blogs, FAQs, newsletters, tickets, and analytics from one dashboard.
Key Features
- Interactive product page with module tabs covering CRM, quoting, booking, scheduling, workforce, payroll/STP, invoicing, reporting, compliance, portal, mobile, and franchise features
- Self-serve Get Started signup with live ABN and business name verification through ABR lookup
- Duplicate ABN protection with notification email sent to the existing business owner
- Stripe subscriptions, trials, invoices, payment methods, and webhook-driven billing emails
- Manual VIP subscription provisioning with six-month trials using the same ABN validation rules
- Admin dashboard for subscriptions, payments, blogs, FAQs, pricing, demos, register-interest, contacts, newsletters, tickets, and chat
- Support knowledge base with categories, articles, FAQs, and ticket submission
- OTP-secured admin login with device and GeoIP request details
- Role-based access control (RBAC) for admin users
- Real-time admin chat using Socket.IO
- Newsletter broadcasting and engagement and visitor analytics
- AWS S3 media storage and Nodemailer multi-transporter branded emails
- SEO-ready public website with metadata, sitemap, and robots configuration
My Contributions
- Worked across the full stack. Rebuilt marketing pages including product and register-interest pages to match the brand design. Implemented ABN validation and duplicate-ABN flows for public signup and manual admin provisioning. Built register-interest capture and admin review interfaces. Integrated Stripe-backed subscription and payment dashboards. Improved FAQ and database-driven content sections. Refined support and blog administration experiences. Maintained Express and MongoDB APIs
- email notification workflows
- and deployment configurations using Docker and AWS.
Tech Stack
Next.js 16React 19Tailwind CSS v4TypeScriptJavaScriptReact Hook FormZodFramer MotionRechartsExpress 5Node.jsMongoDBMongooseStripeSocket.IOJWTbcryptNodemailerAWS S3SharpPDFKitjsPDFgeoip-liteDockerAWS App RunnerAWS ECS
Architecture
The application follows a monorepo-style architecture split into a Next.js frontend and an Express backend API. The frontend uses the Next.js App Router and contains the public marketing website and administrative dashboard. Both public and admin interfaces communicate with REST APIs exposed by the Express backend. Billing is Stripe-first, with webhook handlers responsible for processing payment lifecycle events and triggering transactional emails. Authentication uses JWT and OTP-based email verification. Media uploads are stored in AWS S3. Real-time communication is implemented using Socket.IO. Content including FAQs, blogs, support articles, pricing, privacy policies, and terms is CMS-driven through MongoDB and rendered dynamically on the public website. Australian ABN verification combines ABR lookup with local uniqueness checks against registered StripeUser records.
Challenges & Solutions
Maintaining consistent ABN verification rules across public signup and admin manual provisioning. Preventing duplicate business registrations while notifying the rightful account owner without creating unnecessary email spam. Syncing accurate Stripe subscription and revenue data into administrative charts instead of relying on newsletter or subscriber proxies. Securing administrative access with OTP authentication and device and request metadata without negatively affecting the user experience. Delivering a brand-consistent marketing interface while communicating a large multi-module product ecosystem and supporting CMS-managed content.
Applications
Public Marketing Website
livewww
Customer-facing website for product education, pricing, blogs, support, demos, register-interest lead capture, and self-serve signup and payment.
- Product overview with interactive feature modules
- Pricing and Get Started payment flow
- Support knowledge base and ticket form
- Blog and FAQ content
- Demo request and register-interest lead capture
- ABN-verified account creation
Admin Dashboard
liveadmin
Internal operations console for SAS staff to manage customers, billing, content, support, and engagement.
- Subscription and payment management
- Manual six-month VIP trial provisioning
- Blog, FAQ, pricing, and announcement CMS
- Demo requests and register-interest inbox
- Support tickets and live chat
- Newsletter and analytics
- User and role management with OTP login
Backend API
liveapi
Express and MongoDB API powering authentication, Stripe customers and subscriptions, CMS content, support, email workflows, analytics, and webhooks.
- REST APIs for website and admin applications
- Stripe customer, subscription, and webhook handlers
- ABN availability checks and signup guards
- Multi-purpose email transporters
- AWS S3 uploads and PDF generation
- Socket.IO real-time endpoints