RepairPluginDocs

Enhanced Locations

Discover how Enhanced Locations in RepairPlugin lets you manage multiple repair shops with independent hours, pricing, staff, and service methods.

enhanced-locationsmulti-locationschedulesgoogle-mapsshop-manager

What can you do with this?

  • Run multiple locations from one dashboard -- set up separate opening hours, contact details, service methods, and pricing for each branch.
  • Help customers find the nearest store -- integrate with Google Maps so customers can search by address and get automatically routed to the closest location.
  • Set location-specific pricing -- charge different prices at different branches, with each location maintaining its own rates and margins.
  • Assign shop managers per location -- give staff members access to only their branch's appointments and pricing.
  • Create virtual locations -- set up locations that only handle pickup and on-site repairs without a physical storefront.

Enhanced Locations is included in the Scale plan. It provides unlimited locations and requires an active RepairPlugin installation.

Where to find it

  1. In your WordPress admin, go to RepairPlugin in the left sidebar.
  2. Click Settings.
  3. Open the Enhanced Locations section.
  4. You'll see three main tabs:
    • Schedules -- create and manage opening hour templates
    • Locations -- add, edit, duplicate, reorder, and delete individual stores
    • Settings -- configure global behavior (Google Maps, pricing, distance, display)
  5. A fourth tab, License, is available for license activation and deactivation.
https://www.repairplugin.com/wp-admin/admin.php?page=wp_repair_settings&section=enhanced_locations
The Enhanced Locations settings page showing the Schedules, Locations, and Settings tabs

How to set it up

Activate Enhanced Locations

  1. Go to RepairPlugin > Settings > Enhanced Locations > License.
  2. Enter your license key and click Activate.
  3. The system validates the key against your Scale plan.
  4. Once activated, the Schedules, Locations, and Settings tabs become fully functional.

Create a schedule

https://www.repairplugin.com/wp-admin/admin.php?page=wp_repair_settings&section=enhanced_locations
The Schedules tab showing existing schedule groups with their assigned locations
  1. Go to Enhanced Locations > Schedules.
  2. Click Create New or edit an existing schedule.
  3. Enter a Schedule Group Name (e.g., "Standard Hours" or "Weekend Schedule").
  4. For each day (Monday through Sunday), set:
    • Start time and End time (e.g., 09:00 AM to 06:00 PM).
    • Break time (optional) -- a period when bookings are blocked (e.g., 13:00 to 14:00 for lunch).
  5. Leave hours blank for days the location is closed.
  6. Click Update to save.
  7. You can assign a single schedule to multiple locations that share the same operating hours.
https://www.repairplugin.com/wp-admin/admin.php?page=wp_repair_settings&section=enhanced_locations
The schedule editor form showing daily time fields for opening, closing, and break times

Create a location

https://www.repairplugin.com/wp-admin/admin.php?page=wp_repair_settings&section=enhanced_locations
The Locations tab showing the list of store locations with name, address, service methods, and action buttons
  1. Go to Enhanced Locations > Locations.
  2. Click Add New to create a location, or click an existing location to edit it.
  3. Fill in the required fields (see Settings reference below for all fields).
  4. Assign a Schedule Group to set opening hours.
  5. Turn service methods on or off per location (Come by our store, Ship device, Pickup service, Repair on your location).
  6. Optionally assign Shop Managers (WordPress users with the RepairPlugin role).
  7. Click Update to save.
https://www.repairplugin.com/wp-admin/admin.php?page=wp_repair_settings&section=enhanced_locations
The location editor form showing name, contact, address, schedule group, service methods, and image fields

Set up a virtual location

https://www.repairplugin.com/wp-admin/admin.php?page=wp_repair_settings&section=enhanced_locations
The Virtual Location toggle on a location form, switching between physical and virtual mode
  1. When creating or editing a location, switch Virtual Location to ON.
  2. This automatically disables "Come by our store" and "Ship device" service methods.
  3. Only "Pickup service" and "Repair on your location" remain available.
  4. The location won't appear as a selectable storefront for your customers.
  5. Virtual locations are labeled "Virtual" in the Locations overview.

Share a schedule across locations

A single schedule group can be assigned to multiple locations that have the same operating hours:

  1. Go to Enhanced Locations > Schedules.
  2. Create a schedule (e.g., "Standard Hours").
  3. Go to Enhanced Locations > Locations.
  4. Open each location that shares these hours and set the Schedule Group to the same schedule.

When you update that schedule group, all assigned locations change at once.

Convert a schedule group to individual schedules

If a location head needs to manage their own schedule independently (without affecting other locations that share the same schedule group), they can convert it:

  1. Go to Enhanced Locations > Schedules.
  2. Click the schedule group assigned to your location(s).
  3. Click Convert to Individual Schedule.
  4. The shared schedule is duplicated into separate schedules -- one per location that was using it. Each location gets its own independent copy that can be edited without affecting the others.

Note: Only location heads (not full-access admins) can perform this conversion. It's designed for situations where a branch needs to deviate from the shared schedule.

Duplicate a location

https://www.repairplugin.com/wp-admin/admin.php?page=wp_repair_settings&section=enhanced_locations
The action icons on a location row showing clone, delete, and reorder buttons
  1. Go to Enhanced Locations > Locations.
  2. Click the clone icon on the location row you want to duplicate.
  3. A new location form opens with all fields pre-filled from the original -- the name has (Copy) appended.
  4. Edit any fields you want to change (name, address, email, etc.).
  5. Click Update to save the new location.

The duplicate includes the schedule, address, contact details, service methods, virtual status, and location image. If location-based pricing is enabled, all pricing is also copied. Shop managers are not copied -- you'll need to assign them separately.

Delete a location

  1. Go to Enhanced Locations > Locations.
  2. Click the trash icon on the location row you want to remove.
  3. Confirm the deletion in the popup dialog.

You must keep at least one location -- the system won't let you delete your last remaining location. Only full-access admins can delete locations. Deleting a location permanently removes its schedules and location-based pricing.

Reorder locations

The order in which locations appear to customers during booking can be customized:

  1. Go to Enhanced Locations > Locations.
  2. Drag locations into the desired order using the handle on each row.
  3. Click Save Order.

The main location always appears first and can't be moved. Only full-access admins can reorder locations.

Enable location-based pricing

https://www.repairplugin.com/wp-admin/admin.php?page=wp_repair_settings&section=enhanced_locations
The Enhanced Locations Settings tab showing Google Maps, pricing, distance, and display options
  1. Go to Enhanced Locations > Settings.
  2. Switch Enable Pricing Based on Location to ON.
  3. A "Selected Location" dropdown now appears on the Models & Repairs and Default Repairs pages.
  4. Use the dropdown to switch between locations and configure different prices, durations, fallback values, and margins per location.
  5. Your customers must select a location before proceeding. All pricing, time slots, and service methods are locked to the selected location for the entire booking.

Assign shop managers

  1. Create a WordPress user with the RepairPlugin role under WordPress > Users.
  2. Go to Enhanced Locations > Locations and select a location.
  3. Assign the user to the location.
  4. The shop manager can view and adjust prices for their location, access only their location's appointments, and receive duplicate notification emails.
  5. To give a user full access to all locations, add them to RepairPlugin > Settings > Permissions instead.
https://www.repairplugin.com/wp-admin/admin.php?page=wp_repair_settings&section=enhanced_locations
The shop manager assignment panel showing assigned WordPress users for a location
https://www.repairplugin.com/book-a-repair#locations
Location selection step on the frontend where customers pick their nearest store

Settings reference

Schedules tab

SettingDescriptionDefaultCustomers see
Schedule Group NameNames the schedule template so you can identify it when assigning it to locationsemptyNothing directly -- this is for your own organization.
Opening Hours (per day)Sets when the location is open and available for bookings for each day of the weekempty (closed)Only the time slots within these hours are available when they select this location.
Break Time (per day)Blocks a period within the working day from bookings (e.g., a lunch break from 13:00 to 14:00)empty (no break)No time slots are available during break periods.

Locations tab

SettingDescriptionDefaultCustomers see
NameSets the display name for the locationemptyThis name appears in the location selection step during booking.
TelephoneStores the contact phone number for the locationemptyThe phone number may appear in location details and communications.
Address, Zipcode, CitySets the physical address, used for display and Google Maps integrationemptyThe address appears during location selection and is used for nearest-location calculations.
Google Maps LinkLinks to the Google Maps page for the locationemptyA direct maps link they can use for navigation.
EmailSets the email address that receives booking notifications for this locationemptyNothing directly -- this controls where notifications are sent.
BCC EmailAdds an extra email address that receives a blind copy of all location notificationsemptyNothing -- this is for internal use only.
Schedule GroupLinks the location to a specific schedule, setting its opening hours and break timesnoneOnly the time slots from the assigned schedule are available when they select this location.
Shop ManagersAssigns WordPress users as managers for this location. They can only access this location's data (prices and appointments)noneNothing directly -- this controls who manages the location behind the scenes.
Location ImageUploads a photo or image for the locationnone. Recommended size: 500px x 125px (4:1 ratio)The image appears during location selection if "Show Location Image on Frontend" is turned on in Settings.
Virtual LocationMarks the location as virtual, which disables "Come by our store" and "Ship device." Only pickup and on-location repair remain availableoffVirtual locations don't appear in the location selection. They work as behind-the-scenes routing hubs for pickup and on-site services.
Service Methods (per location)Controls which service methods are available at this specific locationall enabledOnly the service methods you've enabled for their selected location.
Location ShortcodeGenerates a shortcode that shows the repair booking flow filtered to this specific location. Format: [Repair_All location=X] (where X is the location ID)When you place this shortcode on a WordPress page, it shows only this location's repair flow -- useful for dedicated store pages.

Settings tab

SettingDescriptionDefaultCustomers see
Google Maps API KeyEnables Google Maps integration for nearest-location search and auto-assignment. You'll need the Maps JavaScript API, Places API, and Geocoding API enabled in Google Cloud ConsoleemptyAddress-based location search and automatic nearest-store assignment (when other Google Maps settings are turned on).
Enable Search by Nearest Location on FrontendLets customers find the closest store based on their address. Requires a Google Maps API keyonAn address search field appears in the location selection step that sorts or highlights the nearest store.
Automatically Assign Nearest LocationAutomatically assigns the nearest store for Pickup Service and Repair on Location service methods, removing the manual location selection step from those flows. Requires a Google Maps API keyonWhen using pickup or on-location repair, they're automatically routed to the closest store without having to choose manually.
Require Search Before Showing LocationsHides the full location list until the customer enters a search query (address or zipcode)offThey must search before seeing available locations -- useful if you have many branches.
Preferred Distance UnitSets the unit used for distance calculations and displayKMDistances shown in the location selection use the unit you've chosen.
Enable Pricing Based on LocationMakes pricing fully location-specific. Adds a "Selected Location" dropdown to Models & Repairs and Default Repairs pages. Each location maintains independent prices, durations, and margins. This is also required for shop manager access restrictionsoffA mandatory location selection step appears as the first step in the booking flow. All pricing and availability are locked to the selected location.
Show Location Image on FrontendShows the uploaded location image during the booking process location selection steponStore images appear alongside location names, making it easier to recognize each branch.
Allow Customers to Choose Location for ShippingLets customers select which store they want to ship their device to when using the "Ship Device" service methodonA location selection option appears during the Ship Device booking flow.
Allow Customers to Choose Location for Quote PDFLets customers choose a specific location when generating a quote PDFonA location selection option appears in the quote/PDF generation process.

Frequently asked questions

Is there a maximum number of locations?

No. With the Scale plan (which includes Enhanced Locations), 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 of your locations using the Haversine formula (via Google Maps). The nearest location is then 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. When you delete a location, its schedules and location-specific prices are removed, but all appointments that were linked to that location stay in the system. You always need to keep at least one location.

Can Location Managers edit global settings?

No. Location 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.

Command Palette

Search for a command to run...