Skip to content

ServiceM8 Integration

This guide walks an admin through connecting Brix to ServiceM8, choosing which data to sync, mapping users, and running an initial client sync. Once connected, day-to-day syncing happens automatically or from the Transfers page.

A short overview: connecting the integration, building and approving a quote, and linking the approved quote to a ServiceM8 job so it’s ready to invoice.

You will need:

  • Admin access to Brix (so the Manage area is visible).
  • An active ServiceM8 account with permission to authorise third-party apps.
  • The ServiceM8 login credentials of the user who will authorise the connection. You sign in to ServiceM8 directly; no separate key is required.
  • A clear idea of which data you want to flow between Brix and ServiceM8 (clients, notes, photos, quotes, in either direction). You can change this later.
  1. Sign in to Brix as an admin.
  2. From the top bar or sidebar open Manage.
  3. Choose Settings → Integrations.

The Integrations page shows Available and Connected tabs at the top, each with a count, and a search box below them. Each integration appears as a card with its logo, a short description, and a Connect or Configure button. ServiceM8 appears on the Available tab, and on Connected once it is connected for your workspace.

The Integrations page showing the Available and Connected tabs with ServiceM8 as a card

Click Configure (or Connect if it is not yet connected) on the ServiceM8 card. The ServiceM8 integration page opens.

If your workspace has not yet connected ServiceM8 you will see:

  • A short description and the ServiceM8 logo.
  • An Enable Integration toggle.
  • A Features section with one switch per data flow.
  • A Connect with ServiceM8 button.

If ServiceM8 is already connected, skip to Step 6: Manage the connection. The connected page looks like this:

ServiceM8 integration page when connected, showing the Connection section with the green Connected chip and Re-authorize button, the Connect users section, the Bulk import from ServiceM8 section, and the top of the Configuration section

Tick Enable Integration, then turn on the features you want. Each feature is independent and can be turned on or off later.

FeatureWhat it does
Push ClientsSends Brix clients into ServiceM8 (creates or updates the matching company).
Pull ClientsPulls ServiceM8 companies into Brix as clients.
Push NotesSends notes added in Brix into the linked ServiceM8 record.
Pull NotesBrings notes added in ServiceM8 back into the Brix record.
Push Document PhotosUploads photos attached to a Brix document into ServiceM8.
Pull Document PhotosPulls photos attached in ServiceM8 into the matching Brix document.
Push QuotesSends Brix quotes into ServiceM8.
Pull QuoteWhen a quote is created in ServiceM8, Brix automatically creates a matching quote request.

There is also an Enable All Features switch at the top of the section that turns every feature on or off in one click.

You must select at least one feature before you can connect.

The Features section with all eight push/pull toggles and the Enable All Features switch

  1. Click Connect with ServiceM8.
  2. Brix redirects you to ServiceM8’s sign-in page in the same window.
  3. Sign in with the ServiceM8 account that should own the connection.
  4. Review the permissions ServiceM8 displays (these match the features chosen in Step 3) and click Allow.
  5. ServiceM8 redirects back to Brix automatically. You should see a green ServiceM8 connected successfully notification.

If the redirect fails or you click Deny in ServiceM8, Brix shows a red error notification with a short reason. You can simply click Connect with ServiceM8 again to retry.

Once connected, the page now shows:

  • A green Connected chip and the message “ServiceM8 is connected”.
  • A Granted scopes list: small chips showing each permission ServiceM8 returned. If a feature is missing a required scope, that feature will not work; use Reconnect (top right) to grant the missing scopes.

After the connection is established, the page exposes the controls you will use day to day.

The ServiceM8 integration settings page showing the connected state with configuration controls visible

Once the integration is live, you can link individual ServiceM8 jobs to quote requests directly from the request detail page. See Linking Jobs for the step-by-step walkthrough.

Use Reconnect if you need to re-authorise (for example after revoking access in ServiceM8, after a connection expiry, or to grant additional scopes). Reconnect re-runs the sign-in flow with the features that are currently enabled.

Below the connection details there is a second Configuration section with:

  • An Enable Integration toggle. Turning this off keeps the credentials but stops Brix from syncing. You will be asked to confirm because Brix will no longer be able to talk to ServiceM8 until you turn it back on.
  • The same Features switches as Step 3, so you can change which data flows without disconnecting.
  • A Save button (only enabled once you change something).

Save your changes whenever you adjust features or the enabled state.

Many ServiceM8 records (jobs, notes, time entries) are attributed to a staff member. To make sure activity from Brix is attributed to the right person, link each Brix user to a ServiceM8 staff member.

  1. On the ServiceM8 integration page, click Map users.
  2. The Map users dialog opens with a row per Brix user and a dropdown showing the ServiceM8 staff list.
  3. Brix suggests a match for each user based on email and name. Review each suggestion and adjust if needed.
  4. Use the search box at the top to filter the list when you have many users.
  5. Click Save to apply the mappings.

Repeat this any time you add new Brix users or new ServiceM8 staff.

Step 8: Run an initial client sync (optional)

Section titled “Step 8: Run an initial client sync (optional)”

If you turned on Pull Clients, you can backfill all existing ServiceM8 companies into Brix in one go.

  1. On the ServiceM8 integration page, scroll to Bulk import from ServiceM8.
  2. Click Sync all clients from ServiceM8.
  3. Confirm the action in the dialog. Brix queues an import for each active ServiceM8 company.
  4. A notification reports how many companies were queued and how many errors occurred (if any).
  5. Click Open transfer logs (or open Transfers from the sidebar) to watch the progress.

Confirmation dialog before queuing the bulk client sync from ServiceM8

The Transfers page lists every queued import grouped by status (Pending, In Progress, Success, Failed, Cancelled), with a record-type filter (Client or Quote Request) and a search box. Click a row to open the transfer details and view logs. Failed transfers can be retried from there. See Managing transfers.

Transfers page filtered to ServiceM8 with status tabs on the left and the record-type selector on the right

After the initial sync (or after enabling a push/pull feature), verify the integration end-to-end:

  1. Clients: Open a recently transferred client in Brix, then open the matching record in ServiceM8 and confirm the contact details match.
  2. Notes: Add a note in Brix to a synced client. After a short delay, confirm the same note appears in ServiceM8 (and vice versa for Pull Notes).
  3. Quotes: Create or send a quote in Brix and confirm it appears in ServiceM8 if Push Quotes is on. If Pull Quote is on, create a quote in ServiceM8 and confirm a new quote request appears in Brix.
  4. Photos: Attach a photo to a document in Brix and confirm it appears in ServiceM8 (and vice versa).

If something does not appear, open the Transfers page, filter by Failed, and use the Transfer logs to see the error message.

Why a ServiceM8 quote might not sync to Brix

Section titled “Why a ServiceM8 quote might not sync to Brix”

When Pull Quote is turned on, Brix creates a matching quote request as soon as a job reaches Quote status in ServiceM8. By default a new ServiceM8 job starts in Quote status, so most quotes flow across on their own. If a new quote is not showing up in Brix, check the ServiceM8 job against the list below. A job that misses any of these is skipped, often without an obvious error.

  • Pull Quote is enabled. Open the ServiceM8 integration page and confirm Pull Quote is on (see Step 3).
  • The job is in Quote status. Only jobs in Quote status create a quote request. Jobs in Work Order, Completed, or Unsuccessful status are ignored.
  • The job is active. A job that has been deleted in ServiceM8 is skipped.
  • The job has a client. Brix needs the company on the job to create the quote request. A job with no client attached is skipped until you add one.
  • The client has contact details. The company on the job needs at least one of an email, mobile, or phone number. If it has none, Brix skips the job.
  • The job’s staff is mapped to a Brix user. Brix assigns the new quote request to the Brix user that matches the job’s ServiceM8 staff member, so map your staff first (see Step 7).

If the job meets every point above and the quote still does not appear, open Transfers, filter by Failed, and read the transfer log for the quote request to see the reason.

  • Pause syncing: Turn off Enable Integration in the Configuration section and click Save. Brix keeps your settings but stops syncing.
  • Change which data syncs: Turn individual feature switches on or off and click Save.
  • Revoke access entirely: Sign in to ServiceM8 and remove the Brix app from your authorised connections. After that, use Reconnect in Brix to re-authorise from scratch when needed.
SymptomWhat to check
Red Connection failed notification after sign-inThe ServiceM8 user did not approve all requested scopes, or closed the window before the redirect completed. Click Connect with ServiceM8 to retry.
A feature is enabled but nothing syncsCheck Granted scopes on the integration page. If a scope is missing, click Reconnect.
New ServiceM8 staff are not selectable in Map usersReopen the Map users dialog so the staff list reloads, then re-save.
Transfers stuck in PendingOpen Transfers, select the rows and use Start Transfer. If they fail, open the row to read the Transfer logs.
A pushed client did not appear in ServiceM8Confirm Push Clients is on in Configuration, and check the transfer log for that client on the Transfers page.
A new ServiceM8 quote did not create a quote request in BrixConfirm Pull Quote is enabled, and that the job is active, in Quote status, and has a client with an email, mobile, or phone. Check the job’s staff is mapped to a Brix user. See Why a ServiceM8 quote might not sync to Brix.
Do I need to reconnect if I change the features in Configuration?

No. Changing individual feature switches in Configuration does not require reconnecting. Just update the switches and click Save.

What happens if I disconnect the integration?

Your settings are kept but syncing stops. Records already transferred remain in both systems. To reconnect, sign in with ServiceM8 again using Connect with ServiceM8.

A feature is enabled but nothing syncs

Check Granted scopes on the integration page. If a scope is missing, click Reconnect to re-authorise.

Transfers stuck in Pending

Open Transfers, select the rows and use Start Transfer. If they fail, open the row to read the transfer logs.