Skip to main content

TimelinesAI + ServiceM8 Integration: WhatsApp for ServiceM8

The TimelinesAI WhatsApp add-on connects your WhatsApp numbers to ServiceM8. It works in two directions:

- **Inbound:** every WhatsApp message (sent or received on any connected WhatsApp number) is automatically logged in ServiceM8 as a note - on the client's open job when one exists, otherwise on the client card.

- **Outbound:** a **Send WhatsApp** action on client cards and job cards lets you send a WhatsApp message straight from ServiceM8.

Requirements:

- A TimelinesAI account with at least one connected WhatsApp number ([how to connect WhatsApp](https://timelines.ai)).

- A ServiceM8 account with permission to install add-ons.

Installation:

  • In ServiceM8, go to **Settings → ServiceM8 Add-ons** and activate **TimelinesAI WhatsApp**.

  • Open the add-on from the ServiceM8 menu (**TimelinesAI WhatsApp**) — the settings page opens.

  • Click **Connect ServiceM8** and approve the requested permissions.

  • That's it — the integration is active. New WhatsApp messages will start syncing to ServiceM8.

How inbound sync works:

  • When a WhatsApp message is sent or received in TimelinesAI:

  • The integration looks up the ServiceM8 **client (Company)** whose contact phone number matches the WhatsApp chat number. Phone numbers are matched in international format, tolerant of formatting differences.

  • If no client exists yet, the integration **creates a new client and contact** automatically, using the WhatsApp name and phone number.

    The message is logged as a **note**:

    - on the client's **most recent open job** (status *Quote* or *Work Order*) if one exists — so quotes and active work orders keep the full conversation history;

    - otherwise on the **client card** itself.

Each note shows the direction (incoming/outgoing), the WhatsApp number it went through, the sender name, and the message text.

How to send a WhatsApp message from ServiceM8:

  • Open any **client card** or **job card**.

  • Click the **Send WhatsApp** action.

  • A compose window opens showing the recipient (resolved from the client's contact phone number). Pick the WhatsApp number to send from (if you have several connected), type your message, and hit **Send**.

  • The message is delivered via WhatsApp through TimelinesAI, and is logged back into ServiceM8 as a note like any other message.

On a job card, the recipient is the client attached to that job.

Disconnecting:

Open **TimelinesAI WhatsApp** from the ServiceM8 menu and click **Disconnect**. Message sync stops immediately. Reconnecting at any time resumes the sync (reconnect is also the fix if job notes stop appearing after an add-on permissions update).

FAQ

Which messages are synced?

All incoming and outgoing WhatsApp messages on every WhatsApp number connected to your TimelinesAI workspace, whenever the chat's phone number matches (or creates) a ServiceM8 client.

Does it create duplicate clients?

No, the integration searches existing clients/contacts by phone number first and only creates a new client when no match is found.

Why did a message land on the client card instead of the job?

The client had no open job (*Quote* / *Work Order*) at the time the message arrived. Completed and unsuccessful jobs are not used.

Is message history imported?

No, syncing starts from the moment you connect.

Need help? - Contact [email protected].

Did this answer your question?