
AI OCR Software Scales Gas Station Operations With 20K+ Transactions
- 20K+
- 40+
- 70%
Custom software for plumbing contractors, multi-location plumbing businesses, and field service companies who need job scheduling, technician dispatch, and customer management tools built for how a plumbing operation actually runs.
Job scheduling and dispatch with real-time technician location and job status
Field technician mobile apps for work orders, photos, and on-site quoting and invoicing
Customer history and CRM with full job and equipment service records
Maintenance plan programs and loyalty rewards that drive repeat residential business
Recognition
Dispatching technicians by phone and whiteboard with no real-time visibility into who is where, how long jobs are taking, or which calls need to be rescheduled?
Losing repeat residential customers to competitors because you have no structured maintenance plan or loyalty program to keep them on the books?
In short
RaftLabs builds custom plumbing business software. We ship job scheduling and dispatch systems, field technician mobile apps, work order management, customer history and CRM, quoting and invoicing tools, parts inventory management, GPS tracking, and loyalty and maintenance plan programs. We've shipped a plumbing loyalty app that's in production. Most projects deliver in 12 to 14 weeks at a fixed cost agreed before work starts.
01 Diagnosis
Emergency jobs dispatched slowly because there's no real-time view of who is available
When dispatch runs from a whiteboard, the dispatcher has no live picture of who is on a job, how long it's running, or which technician is closest to the next urgent call. Emergency jobs wait while someone makes phone calls. Customers who can't get a fast response call the next company on Google. That lost call is also a lost relationship.
Invoices going out days late because paper job cards come back incomplete
Paper job cards filled out at the end of a long day miss details: parts used, time on site, customer notes. That data is lost or takes an admin hour to reconstruct. Invoices go out with items missing, or don't go out at all until the week is over. Every day an invoice sits unsent is a day payment is delayed.
Maintenance contract renewals slipping through because there's no automated follow-up
A customer on a maintenance plan has no reason to renew unless someone contacts them at the right time. Without automated renewal reminders and a simple re-sign flow, those contracts expire quietly. According to industry cost analysis by State Industrial Products (2024), emergency plumbing services typically cost 1.5 to 2 times more than scheduled visits, making maintenance contract renewal the highest-margin work a plumbing business can protect. A competitor with a reminder workflow and a service agreement picks them up at renewal.
Technicians driving inefficient routes because scheduling doesn't account for location
When jobs are assigned without looking at where each technician already is, two technicians cross town to reach jobs the other could have covered. Drive time eats into billable hours. Fuel costs climb. Jobs run late, which pushes the next appointment and frustrates customers who were given a time window.
02 What we ship
Scheduling board with drag-and-drop job assignment, technician availability management, and job duration estimates by work type. Real-time dispatch view showing job status, technician location, and estimated completion time. Automated customer notification when the technician is en route, with name, photo, and ETA. Emergency job insertion with automatic schedule rebalancing for urgent call-outs. Recurring job management for maintenance plan customers with automated scheduling at the contracted interval. Zone-based dispatch logic routes technicians by geography to cut drive time and get the right person to each job faster.
Mobile app for technicians to accept jobs, view job details and customer history, navigate to site, log arrival and departure, photograph work before and after, and complete digital work orders without paper. Job notes have structured fields for fault description, work completed, materials used, and recommendations. Offline mode keeps the app working in areas with poor signal, and data syncs when connectivity returns. Digital signature capture confirms work completion on site. On-site quote creation uses pre-loaded labour rates and parts pricing. Payment collection by card or digital wallet closes the job at the door. Push notifications handle new job assignments and schedule changes as they happen.
Work order management with job status tracking from booking through completion. Every previous job, every piece of equipment serviced, every quote and invoice is visible to the technician in the field and to the office at the same time. Equipment records include installation date, service history, warranty status, and manufacturer details. Service recommendations are logged against the equipment record so follow-up work doesn't fall through the cracks. Automated appointment confirmation, reminder, and completion summaries handle customer communication. Property management for commercial customers covers multiple locations or units under one account.
On-site and office-based quote generation with itemised labour, parts, and callout charges applied from pre-loaded rate cards. Good-better-best quote presentation supports repair vs. replace decisions. Quote approval workflow captures digital customer sign-off before work begins. Invoices are generated from the completed work order with no double entry. Payment processing is integrated into the mobile app with card, digital wallet, and finance option support. Invoice delivery by email or SMS includes an online payment link. Integration with Xero and QuickBooks handles automatic accounting reconciliation. Aged debtors reporting tracks commercial accounts with outstanding balances.
Per-truck inventory tracking with stock levels for the parts each technician carries. Parts usage is logged automatically when added to a job, so there's no manual stock reconciliation. Low-stock alerts trigger automated purchase orders to your preferred suppliers. Parts return and damaged stock management is built in. Supplier price list management propagates cost updates to your quote rate cards. Central warehouse stock management covers businesses with a depot. Parts consumption reporting by technician, job type, and period informs purchasing decisions before stock runs short.
Maintenance plan management for residential customers: annual service agreements with contracted visit scheduling, priority booking, and discounted rates. Automated renewal reminders and direct debit billing for plan subscribers keep revenue predictable. Loyalty programme for repeat residential customers, with points for every completed job, rewards for referrals, and priority status for high-frequency customers. Customer portal lets homeowners view their service history, schedule a job, manage their maintenance plan, and track loyalty rewards. We've shipped a plumbing loyalty app and know the retention mechanics that work for trade service businesses. See our Loyalty Programme Development page.
03 How we work
We spend the first two weeks understanding your dispatch process, job types, maintenance plan model, and customer retention mechanics. We talk to the dispatcher, at least one technician, and the person who manages customer relationships. The output is a requirements document and a clear decision on what to build versus what an existing platform already handles, so budget goes to work that delivers value.
We design the data model before writing code. This covers how recurring jobs are generated, how truck inventory is tracked against jobs, how customer history flows to the mobile app in the field, and which integrations are required: Xero, Stripe, GPS. You sign off on the architecture before the build begins.
Development runs in two-week sprints with a working demo after each sprint. We build dispatch and scheduling first, then the technician mobile app, then quoting, invoicing, and the customer-facing layers. You test with real workflow scenarios as each module completes, not at the end of the project.
Go-live starts with one or two technicians running on the new system in parallel with the existing process. When the data is confirmed accurate, the full team migrates. We monitor the first month, fix any issues at no extra cost, and hand over documentation. Subsequent changes are scoped and priced as discrete work items.
Companies we've built for


04 Track record
05 Case studies
06 Client voices
Three-year average engagement. Founders and operators describing the work in their own words. No marketing varnish.

All of the sprints were completed on schedule and on budget. We highly recommend RaftLabs!
01 / 02
07 Why us
Every feature ties to a specific business goal. You get what you need to launch. Not a bloated spec that takes twice as long and ships half-baked.
Production fire at 11pm? We're there. We take ownership, fix fast, and keep your business running when it matters. No hiding behind tickets.
If the idea won't work, we say so before a line of code is written. Honest advice saves you more than a team that nods along.
08 Questions
Platforms like ServiceTitan and Jobber handle the core scheduling, dispatch, and invoicing workflow well for most plumbing businesses. Custom software is the right choice when your dispatch logic, maintenance plan model, or customer loyalty mechanics are specific enough that you're spending significant time working around the platform's assumptions; when you want to own the customer relationship through a branded app rather than a white-label module; or when you're building a field service software product to sell to other trade contractors. The wrong choice is building custom when a well-configured standard platform would solve the same problem at a fraction of the cost. We'll tell you honestly which situation you're in during discovery.
Yes. We've built a loyalty app for a plumbing business covering points accrual per completed job, maintenance plan subscription management, referral tracking, and customer-facing reward redemption. The mechanics for trade service loyalty are different from retail loyalty: visit frequency is lower, job values are higher, and the retention lever is the maintenance plan rather than the repeat purchase. We design loyalty programmes around those specifics, not a generic points-per-dollar model that doesn't map to how plumbing customers actually behave.
Yes. Accounting integration with Xero and QuickBooks is standard on every invoicing platform we build: invoices created in the field sync automatically without double entry. Payment processing covers Stripe, Square, or your existing processor for card and digital wallet collection in the field. GPS and mapping integration supports real-time technician location and route optimisation. Integration with parts supplier catalogues pulls in pricing data. The specific integrations depend on your current stack, and we scope them during discovery because complexity varies by system and data flow.
A focused job scheduling and dispatch platform with a technician mobile app typically runs $35,000 to $70,000. A full platform covering scheduling, field mobile app, work order management, quoting, invoicing, parts inventory, and a loyalty or maintenance plan programme typically runs $80,000 to $150,000. Multi-location plumbing businesses with complex dispatch and inventory requirements are scoped individually. Cost depends on the number of technicians, locations, integration requirements, and whether you need a customer-facing mobile app alongside the operational platform. We price every project at fixed cost, agreed before development starts.
Tell us the operational challenge: dispatch, field operations, customer retention, or maintenance plans. We'll tell you what we'd build and how.