Introducing Zenpresa: Everything Your Service Business Runs On, Under Your Own Brand
Most service businesses run on five subscriptions that have never met. One app takes bookings. Another sends invoices. A third collects the payment. A spreadsheet holds the customer list, and a page builder somebody set up in 2021 holds the website. Every one of those tools carries someone else’s logo, sends email from someone else’s domain, and charges a flat monthly fee whether you use ten percent of it or all of it. Add them up and a two-person cleaning company or a solo massage therapist is paying enterprise money for a stack that still needs a human to copy data between the pieces.
We built Zenpresa to collapse that stack into one platform that carries your brand, on your domain, and charges only for the modules you actually switch on. Today it is open for anyone to try free for fourteen days, no card required.
What Zenpresa is
Zenpresa is a modular business platform for service businesses: salons, clinics, tutors, contractors, consultants, studios, coaches, and anyone else who sells time and expertise rather than shelf inventory. The core idea is that the tools you already need should share one customer record, one brand, and one login, and that you should be able to turn each tool on or off independently.
Under the hood it is a single platform. From your customer’s point of view it is your business. The booking page, the invoice PDF, the payment receipt, the reminder email, the customer portal, and the public website all show your name, your colours, and your domain. Zenpresa’s own name does not appear anywhere your customers look.
Six things it does
Smart scheduling
Define services, staff, and shared resources like rooms or equipment. Publish a booking page where customers pick a slot that respects real availability, including staff hours, overrides for holidays, and the rooms a service needs. Automated reminders go out ahead of each appointment, which is the single cheapest way any service business has ever cut no-shows.
Professional invoicing
Estimates that convert to invoices in one click. Branded PDFs delivered by email. Recurring billing for retainers and memberships. Late-fee rules that apply themselves so you stop having the awkward conversation. Everything lands in the customer’s record, so history is never in a separate inbox.
Seamless payments
Card and bank payments on every invoice and booking, settled directly into your own account. Customers pay from the invoice email or the booking confirmation without creating an account. Refunds, partial payments, and deposits are handled in the same place the invoice lives.
Customer hub
One record per customer: contact details, appointment history, invoices, payments, notes, and follow-up tasks. A lightweight pipeline for businesses that quote before they book. Portal access so customers can see their own history and pay outstanding balances without emailing you.
Your brand, everywhere
Upload a logo, pick a palette or start from a theme built for your business type, and connect your own domain. That single setup flows through the booking page, emails, invoices, the customer portal, and the website. If you rename “appointments” to “sessions” or “clients” to “patients”, the whole platform follows.
Website builder
Launch a fast, search-friendly site from templates designed for service businesses, with drag-and-drop sections, built-in contact forms, and a booking widget that drops straight onto any page. The site and the booking system are the same product, so there is nothing to embed, sync, or keep in step.
Pay for the modules you use
Zenpresa is priced à la carte. Scheduling, invoicing, payments, the customer hub, marketing, the website builder, and the AI assistant are each a module you can enable or disable from your settings. A tutor who only needs booking and payments pays for booking and payments. A clinic that adds invoicing later switches it on when it is ready, and the existing customers, staff, and branding are already there waiting.
That is the difference between a bundle and a platform. A bundle makes you pay for the whole box. A platform lets you build the box you need.
Your brand, your domain
White-label is not a checkbox for us; it is the reason the product exists. Every service business we talked to before building Zenpresa had the same quiet complaint: the tools they paid for were advertising to their own customers. The booking confirmation said “powered by” someone else. The invoice footer promoted the invoicing vendor. The customer portal lived on a subdomain of a company the customer had never heard of.
With Zenpresa you point your own domain at your account, and from that moment every touchpoint is yours. Email goes out from your address. The portal lives on your domain. The booking page is a page on your site. Your customers never learn what software you use, which is exactly how it should be.
Built for isolation from day one
Here is something most platforms do not tell you: in the majority of business software, your data and every other customer’s data live in the same database tables, separated by a column that says which rows are yours. That works until a bug forgets to check the column.
Zenpresa takes a different approach. Every business on the platform gets its own database. Your appointments, invoices, and customer records are not rows next to somebody else’s; they are in a separate database that only your account can reach. Backups and restores happen per business. If you ever leave, exporting your data is a copy of one database, not a filtered query across a shared one. We will go deeper on how and why we built it this way in an upcoming engineering post.
An AI assistant that works inside your account
The optional AI assistant is not a chatbot bolted onto the side. It can act on your account: book an appointment for a customer who emailed you, draft and send an invoice, find every customer who has not visited in three months, apply a theme, update your website copy, or explain why last Tuesday was slow. It does this through the same permissions and validation rules that apply when you click the buttons yourself, so it can never do something your login could not.
Anything with real consequences, like moving money or sending a campaign to your whole list, requires you to confirm it explicitly. The assistant works for you, not the other way around. There is a great deal of engineering underneath that sentence, and it will get its own posts in this series.
Start free
Zenpresa is live today at zenpresa.com. Sign up, pick your business type, and you will have a branded booking page and a working website before your coffee cools. The trial runs fourteen days with every module enabled and no card on file, so you can see what the whole platform feels like before deciding which pieces to keep.
If you want the shorter overview first, the Zenpresa page on this site lists the modules side by side, and the apps page shows how it fits alongside the other things we build.
Over the next couple of weeks we will publish the engineering side of the story: how one-database-per-business works on Laravel, how the AI assistant is wired to real tools with the Anthropic SDK, how we keep an agent from being tricked into spending your money, and which continuous-integration checks caught the bugs our linters never could. If you build software for a living, those are for you. If you run a service business, the product is.
The engineering series behind Zenpresa:
- Database-per-Tenant on Laravel 12: How Zenpresa Isolates Every Business and Ships Modules as Composer Packages
- Building an Agentic Assistant in Laravel with the Anthropic PHP SDK: Tools, Model Lanes, Prompt Caching, and Per-Tenant Metering
- Agent Tool Safety: Prompt Injection, Out-of-Band Confirmation Codes, and Idempotency Keys for Money-Moving Tools
- CI Checks Linters Can’t Do: API Contract Checks, Mobile-Pattern Checks, Warning Ratchets, and Tests That Pin Stripe Bugs
Related Articles
Database-per-Tenant on Laravel 12: How Zenpresa Isolates Every Business and Ships Modules as Composer Packages
Why Zenpresa gives every tenant its own Postgres database on Laravel 12, how modules ship as Composer packages, and the trade-offs and bug classes that survive.
CI Checks Linters Can't Do: API Contract Checks, Mobile-Pattern Checks, Warning Ratchets, and Tests That Pin Stripe Bugs
Four CI checks Zenpresa added after shipped bugs: an API contract check, a mobile-pattern check, a lint-warning ratchet, and tests that pin Stripe bugs.
Agent Tool Safety: Prompt Injection, Out-of-Band Confirmation Codes, and Idempotency Keys for Money-Moving Tools
How Zenpresa stops its AI assistant being tricked into refunds: a threat model for untrusted text, out-of-band confirmation codes, and idempotent tools.