Online booking & scheduling software built just for home service businesses.
Whether you’re in the office or in the field, Zenbooker makes it easy to manage your schedule, assign jobs to team members, and accept online bookings from your website.
Build and host your website on Zenbooker.
An AI design agent with the control of a real web design editor. Describe it. Refine it. Book jobs from it.
Explore the website builder
Let customers book your services from your website, any time.
Embeddable booking widgets
Easily embed our customizable booking widgets directly on your website and let customers book without ever leaving your page.
Booking & quote requests
Give customers an easy way to request your services online. Respond by sending a quote or confirming a time that works best for your team's schedule.
Dynamic service pricing
Easily create custom service options and extras to allow customers to see real time price quotes depending on what options they select.
Price adjustment rules
Charge different prices for services based on things like the customer’s location, the time and day being booked, and how far in advance the job is scheduled.
Collect all the important details when services are scheduled
Add custom fields and questions to your services for customers or staff to fill out when booking new jobs.
Coupon codes
Create and share discounts that customers can apply when booking online.
Offer recurring services
Let customers schedule recurring services online. Even offer discounts for certain frequencies.
Online canceling and rescheduling
Allow customers to cancel or reschedule their jobs online without having to contact you. Control how much notice is required for cancellations.
Quote the job, invoice it, and get paid online.
Collect and charge cards
Accept credit cards with online bookings using the Stripe integration. Save cards to customers for future bookings, to charge deposits, or process payments after the job is complete.
Send bookable estimates
Create and send custom quotes that customers can easily review and book with just a few clicks.
Invoice payment links
When you send an invoice, Zenbooker can include a secure payment link for the customer to view and pay their invoice online.
Invoices & receipts
With Zenbooker, you can easily send customers branded invoices and payment receipts.
Assign work and keep everyone on schedule.
Unlimited team member accounts at no extra cost
Give all of your field service providers and back office staff their own login credentials. You can set per-user permissions to control exactly what each team member can access.
Service territories
Manage the locations where you provide services and do work. You can create multiple service territories with unique hours, services, pricing, and service providers. Zenbooker can also prevent jobs from being booked at locations you don't service.
Drive-time aware availability
Turn on drive-time aware scheduling and Zenbooker factors travel time between each provider's jobs into the times customers can book online, so nobody is offered a slot your team can't reach. You can also cap the drive time or distance between jobs.
Available on the Enterprise plan.
Assign and dispatch jobs
See your whole team's real-time availability, and assign jobs to staff members with a click.
Mobile web app for service providers
Let your service providers use their phone to see their assigned work, mark jobs as 'en-route', 'started', and 'complete'.
Every customer, every job, and every note in one place.
Full customer history
View past and upcoming jobs, contact info, addresses, and saved payment methods for all of your customers.
Save internal notes and files directly to customer profiles, and they'll automatically be added to all future jobs for the customer.
Send text message notifications to customers
Keep customers in the loop with automatic, fully customizable text message confirmations and reminders.
And when a service provider marks a job as en-route, Zenbooker can send the customer an 'on my way' text message with their realtime ETA.
Monitor service quality with customer feedback requests
Zenbooker can automatically send post-job follow up emails to customers, asking them to rate their service.
Fully customizable
With Zenbooker, it's easy to make your booking page and emails match your company's brand and voice. You can customize colors, text, icons, and more.
Connect Zenbooker to the rest of your tools.
Developer API
Build booking into software you already run. Check availability for an address, create the job, and read it back, all following the same scheduling rules as your booking page.
Jobs, customers, invoices, team members, and services are available through a REST API that returns JSON.
Read the API reference{
"territory_id": "terr_eastside",
"timezone": "America/New_York",
"days": [
{
"date": "2026-09-08",
"timeslots": [
{
"id": "slot_1788872400_1788886800",
"type": "arrival_window",
"start": "2026-09-08T13:00:00.000Z",
"end": "2026-09-08T17:00:00.000Z",
"estimated_job_end": "2026-09-08T16:00:00.000Z",
"formatted": "9:00 AM - 1:00 PM"
},
{
"id": "slot_1788886800_1788901200",
"type": "arrival_window",
"start": "2026-09-08T17:00:00.000Z",
"end": "2026-09-08T21:00:00.000Z",
"estimated_job_end": "2026-09-08T20:00:00.000Z",
"formatted": "1:00 PM - 5:00 PM"
}
]
},
… 2 more days
],
"next_date": "2026-09-11",
"booking_limits": {
"earliest_date_for_booking": "2026-09-08",
"latest_date_for_booking": null,
"potentially_more_dates_available": true
},
"booking_constraints": {
"territory_id": "terr_eastside",
"duration": 180,
"min_providers_needed": 1,
"required_skill_ids": [],
"timeslot_template_id": null,
"service_provider_ids": [],
"customer_location": {
"lat": 39.2833,
"lng": -76.5744
}
}
}
POST https://api.zenbooker.com/v1/jobs Authorization: Bearer {YOUR_API_KEY} { "territory_id": "terr_eastside", "customer_id": "cus_rpatel", "address_id": "addr_2237clinton", "timeslot_id": "slot_1788872400_1788886800", "services": [ { "service_id": "svc_deep_clean" } ], "duration": 180, "assignment_method": "auto", "sms_notifications": true, "email_notifications": true }
{
"job_id": "job_88214",
"status": "scheduled",
"territory_id": "terr_eastside",
"customer_id": "cus_rpatel",
"address": {
"id": "addr_2237clinton",
"formatted": "2237 S Clinton St, Baltimore, MD 21224, USA",
"line1": "2237 South Clinton Street",
"city": "Baltimore",
"state": "Maryland",
"postal_code": "21224",
"lat": 39.2641,
"lng": -76.5674
},
"timeslot": {
"type": "arrival_window",
"start": "2026-09-08T13:00:00.000Z",
"end": "2026-09-08T17:00:00.000Z"
},
"duration": 180,
"services": [
{
"id": "item_1788871267",
"service_id": "svc_deep_clean",
"service_name": "Deep clean",
"service_total_price": "334.00",
"service_total_duration": 180,
"service_selections": []
}
],
"pricing": {
"subtotal": "334.00",
"total_tax_amount": "52.25",
"total": "386.25",
"tax_summary": [
…
],
"line_items": [
…
],
"adjustments_applied": [],
"discounts_applied": []
},
"created_at": "2026-09-04T18:41:07.061Z"
}
Webhooks
Zenbooker can notify your other systems as work happens. Choose the events you care about, like a new booking, a completed job, or a paid invoice, and each one is sent to your endpoint the moment it occurs. Failed deliveries are retried automatically.
See the webhook events- job.createdjust now
- job.service_providers.assigned2m
- job.enroute1h
- job.completed3h
- invoice_payment.succeeded1d
Your schedule.
Your rules.
Set your services, your prices, your availability — Zenbooker handles the rest. Try it free for 14 days.
No credit card required.