RepairPlugin
Delivery & LocationsScale plan onlyImproved in v3.1.1

Run every branch
from one dashboard.

Manage unlimited locations with independent hours, pricing, staff, and service methods, plus Google Maps nearest-location search and per-location repair visibility.

Unlimited
locations
Per-location
pricing
Auto
nearest store assignment
Enhanced Locations · Dashboard
4 branches · this week
Auto-assign on
Amsterdam
AMS56 bookings
Rotterdam
RTM42 bookings
Utrecht
UTR33 bookings
Pickup hub
Virtual
VRT16 bookings
Customer at Damrak 70 → Amsterdam (1.2 km)
Auto-assigned · Haversine distance
Routed
Per-branch
Pricing
Schedule
Groups
Shop
Managers
Why repair shops choose it

One config screen, every branch under control.

Per-location pricing, shared schedules, restricted staff access, virtual hubs, and Google Maps routing, the toolkit chains run on the same software your single-shop business already uses.

iPhone 15 Pro · screenPer-loc
Amsterdam€189
Rotterdam€169
Utrecht€149
Perlocation

Location-specific pricing and availability

Enable Pricing Based on Location to give each branch its own prices, durations, fallback values, and margins. A 'Selected Location' dropdown appears on Models & Repairs and Default Repairs pages so you can configure each branch independently. Customers must select a location first, and all pricing is then locked to that branch for the entire booking.

Nearest store
1.2 km
Auto-routed via Haversine
Autoassignment

Google Maps nearest-location search

Integrate with Google Maps so customers can search by address and get automatically routed to the closest store using the Haversine formula. For Pickup and Repair on Location flows, the nearest store can be assigned automatically, removing the manual selection step entirely.

Shop managers
S
Sara K.
Amsterdam only
Restricted
M
Marco V.
Rotterdam only
Restricted
I
Iris D.
Utrecht only
Restricted
Perbranch

Shop managers with restricted access

Assign WordPress users with the RepairPlugin role as shop managers for specific locations. They can only view and adjust prices and appointments for their branch, and they receive duplicate notification emails. Global settings, license management, permissions, import/export, and data reset stay restricted to full-access admins.

Schedule group
Standard 09-173 locations
Amsterdamlinked
Rotterdamlinked
Utrechtlinked
Sharedschedules

Schedule groups across locations

Create reusable schedule templates with daily opening hours, closing times, and break periods, then assign one schedule to multiple locations that share the same hours. Update the schedule group once and every assigned location changes at once. Location heads can convert a shared schedule into independent copies when a branch needs to deviate.

Rotterdam · service list
Screen replacement€169
Battery€89
Logic boardHidden · €0
Hide Price on Request
NEWhide unpriced repairs

Hide 'Price on Request' repairs per branch

When location-based pricing is enabled, each location has a 'Hide Price on Request Repairs' toggle. Repairs with a price of 0 are hidden from the frontend for that location, so customers only see services that branch actually offers, no awkward 'Price on Request' entries for repairs you don't perform there.

Virtual location
Pickup hub · EastVirtual
No storefront · routing only
Come by storeOff
Ship deviceOff
Pickup serviceOn
On-site repairOn
Virtuallocations

Virtual locations for pickup and on-site work

Mark a location as virtual to disable 'Come by our store' and 'Ship device' automatically. Only Pickup Service and Repair on Your Location remain. Virtual locations don't appear in the customer-facing location selector, they work as behind-the-scenes routing hubs for pickup and on-site bookings.

How it works

Four steps. From single shop to multi-branch chain.

Build reusable schedules, add and clone locations, wire Google Maps, and assign managers, every step is reversible and independent.

Step 1 · Schedule group
Mon - Fri09:00 - 17:00
Lunch13:00 - 14:00
Sat10:00 - 16:00
SunClosed
1

Create reusable schedules

Go to Enhanced Locations > Schedules and create schedule groups with daily start times, end times, and optional break periods (e.g., a lunch break from 13:00 to 14:00). Leave a day blank to mark it closed. Assign the same schedule to every location that shares those hours.

Step 2 · Locations
Amsterdam
Rotterdam
Utrecht (clone)
Clone to duplicate config
2

Add and configure locations

Go to Enhanced Locations > Locations and add each branch with name, telephone, address, Google Maps link, email, BCC email, schedule group, service methods, location image (recommended 500x125, 4:1 ratio), and shop managers. Use the clone icon to duplicate an existing location, schedule, service methods, virtual status, and pricing are all copied (shop managers are not).

Step 3 · Maps & pricing
API key
AIza···Y4QU
Search by nearest
Auto-assign nearest
Per-location pricing
3

Enable Google Maps and location-based pricing

In the Settings tab, enter your Google Maps API key (Maps JavaScript API, Places API, and Geocoding API), then enable Search by Nearest Location, Automatic Assign Nearest Location, and optionally Require Search Before Showing Locations. Switch on Enable Pricing Based on Location to unlock per-branch prices, durations, and margins.

Step 4 · Assign & embed
SSara K.Amsterdam
MMarco V.Rotterdam
[Repair_All location=2]
4

Assign managers and fine-tune visibility

Assign shop managers to give branch staff restricted access to their own data. Choose your distance unit (KM or miles), decide whether location images appear during selection, and let customers pick a location when shipping a device or generating a quote PDF. Use the per-location shortcode `[Repair_All location=X]` to embed a single branch's booking flow on a dedicated page.

Plan availability

Included on the Scale plan.

Enhanced Locations unlocks per-branch pricing, schedule groups, shop managers, Google Maps routing, and virtual locations. Available on Scale, with one-click upgrade from Essentials or Growth, no migration, no data loss.

EssentialsNot included

Single-config locations only

GrowthNot included

Single-config locations only

ScaleIncluded

Enhanced Locations included

FAQ

Common questions.

Is there a maximum number of locations?

No. With the Scale plan, you can create an unlimited number of locations. You always need at least one location.

How does automatic nearest location assignment work?

When a customer enters their address, RepairPlugin calculates the straight-line distance to each location using the Haversine formula via Google Maps. The nearest location is automatically assigned to the booking. A Google Maps API key is required.

What happens to existing appointments if I delete a location?

Existing appointments are not deleted or changed. Schedules and location-specific prices are removed, but all appointments linked to that location stay in the system. You always need to keep at least one location, and only full-access admins can delete locations.

Can shop managers edit global settings?

No. Shop managers can only access data for their assigned locations. Global settings, license management, permissions, import/export, and data reset are only available to full-access and top-level users.

What is a virtual location?

A virtual location only handles pickup and on-site repairs without a physical storefront. It does not appear in the location selector. 'Come by our store' and 'Ship device' are automatically disabled for virtual locations.

Can I hide 'Price on Request' repairs at specific locations?

Yes. When location-based pricing is enabled, each location has a 'Hide Price on Request Repairs' toggle. When turned on, repairs with a price of 0 are hidden from the frontend for that location.

Can a location head edit a shared schedule without affecting other branches?

Yes. From Enhanced Locations > Schedules, a location head can click 'Convert to Individual Schedule' to duplicate the shared group into separate schedules, one per location that was using it. Each location then gets its own independent copy that can be edited without affecting the others. Only location heads (not full-access admins) can perform this conversion.

Can I duplicate a location to save setup time?

Yes. Click the clone icon on any location row. A new form opens with all fields pre-filled, name has '(Copy)' appended. The duplicate includes schedule, address, contact details, service methods, virtual status, location image, and (if location-based pricing is enabled) all pricing. Shop managers are not copied.

Turn visitors into customers.

Join 500+ repair shops already fixing their massive drop-offs.
Easy to install and live on your WordPress site in minutes.