DOCUMENTATION

Everything WhatSync does, explained.

Your team sells and supports customers on WhatsApp, and none of it reaches the CRM. WhatSync copies those conversations into Attio as they happen. Each message becomes a note on the right person, so anyone can see what was said without asking for a screenshot. Setup takes a couple of minutes.

Set up in 4 steps

Do these in order. Everything after this section is reference material you can come back to.

01

Connect Attio

Sign in with Attio. We create the WhatsApp fields on your People records for you. You do not have to add any fields by hand.

Open the app
02

Connect WhatsApp

Almost everyone scans a QR code with the phone they already message customers from. The next section is 30 seconds of reading that saves you picking the wrong one.

Which one do I need?
03

Decide which chats sync

By default every chat syncs except the numbers you exclude. If you would rather sync only a short list of numbers, switch to include mode.

See the settings
04

Check Attio

New messages start landing on People records within seconds. If you cannot see them, you almost certainly need to sort the People list.

Where to look

Which WhatsApp do I connect?

This is the one thing worth getting right, and it confuses nearly everyone, because Meta uses the words “WhatsApp Business” for two completely different products. Ignore the names and answer one question: do you just want to keep messaging customers yourself from the WhatsApp app, or do you want Attio to send marketing messages automatically?

You send the messages

Scan a QR code

You keep messaging exactly as you do now, from the WhatsApp already on your phone. We read the conversations and copy them into Attio. This is what almost every sales and customer success team wants.

Works with normal WhatsApp and with the WhatsApp Business app from the app store.

Connect with a QR code

Attio sends the messages

Connect through Meta

For marketing blasts, reminders and follow-ups that go out on their own, with nobody tapping send. You still use your own number and the WhatsApp Business app. The catch is that every message has to be a template Meta reviews and approves first, and Meta charges you per message at your country's rate.

Meta calls this the WhatsApp Business Platform or Cloud API. It is not the app you download.

Connect through Meta

Not sure? Take the QR code. It is the one nearly everybody needs, you can be running in two minutes, and it does not stop you setting up the Meta connection later when you actually need to send marketing.

 Scan a QR codeYour phone's WhatsAppConnect through MetaOfficial Business API
What you connectThe WhatsApp on your phoneYour own number, through the WhatsApp Business app
How you connect itScan a QR code, onceSign in with Meta and pick the number
Who taps sendYou or a teammate, from the appNobody. Attio sends it automatically
Your one-to-one chats sync to AttioYesYes
Group chats sync to AttioYes, the groups you pickNo. Meta does not expose them
Attio workflows can send messages on their ownNoYes
Marketing or bulk messages to a listNot supported. Use the official Business connection for campaignsYes, using Meta-approved templates
Meta has to approve your wordingNoYes, every template
What it costs youNothing extraMeta charges per message, at your country's rate
How long until you are runningA couple of minutesLonger. Meta reviews your business and your templates

Where your chats appear

Connected, but Attio looks empty? Read this before anything else. Your chats are almost certainly already there, just not at the top of the list.

Do this once

Sort People by Last WhatsApp Message At

Chats sync into the People object. Attio sorts that list its own way until you tell it otherwise, so recent WhatsApp activity can sit hundreds of rows down.

  1. Step 1

    Open the People object in Attio.

  2. Step 2

    Add a sort on Last WhatsApp Message At.

  3. Step 3

    Set it to descending. Newest chats now sit at the top.

Sorting the People table in Attio by Last WhatsApp Message At, descending

Open any of those people and you will find the conversation itself saved as Attio notes. The list is how you find the right contact; the record is where the history lives.

A WhatsApp conversation saved as notes inside an Attio person record

Sending this to a teammate? Link them straight here with #find-your-chats.

Every setting explained

These all live on your WhatsApp Business page in the app. The names below match the ones on screen, so you can read here and click there.

Which chats sync

Number Filter Mode

Decides which phone numbers are allowed to reach Attio.

Exclude mode (the default) syncs everything except the numbers on your list, so use it to keep family, friends and internal team chats out of the CRM. Include mode flips it: nothing syncs unless the number is on your list. You can add numbers one at a time or upload a CSV, and give each one a short reason so your team knows why it is there.

Auto-include Attio people

Keeps your include list in step with your CRM.

Only available in include mode. When it is on, any number that already exists as a person in Attio starts syncing on its own, so you are not copying numbers across by hand. Numbers added this way are labelled, so you can tell them apart from the ones you added yourself.

Group Sync

Logs the group chats you choose. Off until you turn it on.

Each group you tick gets its own person record in Attio, named after the group, and every message is logged there with the sender's name attached. Group sync only works on a QR-linked WhatsApp. The official Business API does not give apps access to group messages.

What gets written into Attio

Default Sharing

Decides whether message text is written into Attio.

Full access writes the conversation notes plus the WhatsApp fields. Metadata only writes the fields (dates, counts, direction, agent and chat link) and no message text at all. Pick metadata only when your team needs to see that a conversation happened without exposing what was said.

Note Destination

Chooses which Attio object receives conversation notes.

Notes go to People by default. Point them at another object, such as deals, and the note is written to every linked record, and falls back to the matched person if nothing is linked. The WhatsApp fields always stay on the matched person either way.

Phone match fields

Tells us where to look for a phone number in Attio.

We match an incoming WhatsApp number against Attio's standard phone field. If your workspace keeps numbers in a custom field as well (a second mobile, a WhatsApp-only field) add it here so fewer messages end up creating duplicate people.

Timezone

Sets the clock used in synced notes.

Every timestamp we write into a note is shown in the timezone you pick, so a note that says 9:14 AM means 9:14 AM to your team.

Access and teammates

Team Access

Lets your teammates sync into the same Attio workspace.

The owner holds the Attio connection and the sync settings. Each member connects their own WhatsApp, and everything lands in the same workspace. Invites are codes with a usage limit and an expiry between 1 and 30 days, and you can revoke one at any time.

Magic access link

Your password-free way back into the app.

Every account gets a private link that signs you in on any device or browser. Reveal it, copy it, then hide it again. Treat it exactly like a password. Anyone holding the link is holding your account.

Open your settings

Sending messages from Attio

Everything above is about messages coming in. You can also go the other way: have an Attio workflow send a WhatsApp message when a deal moves, a booking is confirmed or an invoice falls due.

Outbound sending runs on the official WhatsApp Business API, so it needs message templates that Meta has approved, not the QR-linked connection. Your workflow calls WhatSync with a template name and the values to fill in, and we hand it to Meta.

The full guide walks through creating a template, finding your connection ID and service key, and the exact API request, with copy-paste examples.

Read the sending guide

Connect your AI agent

Your WhatsApp history is useful to more than the CRM. WhatSync runs an MCP server, so you can point Claude, Codex, Cursor or any other MCP client at your messages and ask questions about them in plain language. This is a Max plan feature.

What MCP actually is

MCP is a standard way for an AI assistant to reach a tool it does not own. You add our server address to your assistant once, sign in, and from then on the assistant can look at your WhatsApp conversations when you ask it to. Nothing is copied anywhere new, and no data leaves until you ask a question.

It is read access. The agent can find and summarise messages. It cannot send WhatsApp messages on your behalf.

What people use it for

Ask what was actually said

Search your conversations in plain language.

Instead of scrolling WhatsApp, ask your agent things like what did we promise this customer about delivery, or find every chat where someone asked about the price. It reads the messages you have access to and answers from them.

Read across the whole team

Admins can pull every connected inbox at once.

An admin can list the teammates who have connected WhatsApp and read their conversations, so you can ask questions that span the whole team. What went quiet this week, which customers are still waiting on a reply, what are people being asked most often.

Write the follow-up for you

Let the agent draft from the real history.

Because the agent can read the thread, the draft it writes already knows what was agreed. You still send the message yourself from WhatsApp or from Attio; the MCP connection reads your messages, it does not send them.

Who can read what

The agent gets exactly the access the person connecting it already has. A member sees their own messages and nothing else. An admin sees the whole team. Connecting an AI agent never widens what somebody is allowed to read.

What the agent can doMemberAdmin
Read your own conversationsYesYes
Search across your own chatsYesYes
Read a teammate's conversationsNoYes
List everyone who has connected WhatsAppNoYes
Read the shared team inboxNoYes
Find attachment captions and document namesYesYes
Search inside documents or imagesNoNo
Transcribe and search voice notesNoNo
Chats you excluded with the number filterNoNo
Send a WhatsApp messageNoNo

Your existing settings still apply. Numbers you excluded with the number filter stay out of reach, and so do the groups you never ticked for group sync. If a chat does not sync to Attio, an agent cannot read it either.

Connecting it

Add this server address to your MCP client. Claude, Claude Code, Codex and Cursor all take a plain URL. You sign in with your WhatSync account the first time, and the connection remembers you after that.

Server URL

https://mcp.whatsync.app/mcp

Every client words it slightly differently, so we wrote the exact clicks out separately for the two most people use.

Attio fields reference

We create these 14 fields on your People records automatically the first time you connect, so you never add them by hand. Attio's interface shows the display name; API calls, filters and reports use the slug.

Field name in AttioAPI slugTypeWhat you would use it for
Last WhatsApp Message Atwhatsapp_last_message_at
Timestamp
Sort your People list by this to see the newest chats first
Last Contact By Clientwhatsapp_last_inbound_date
Date
The day the contact last messaged you
Last Contacted Clientwhatsapp_last_outbound_date
Date
The day you last messaged the contact
WhatsApp Conversation Startedwhatsapp_first_contact_date
Date
The first WhatsApp exchange we know about
Last Inbound WhatsApp Messagewhatsapp_last_inbound_message
Text
The most recent message received from the contact
Last Outbound WhatsApp Messagewhatsapp_last_outbound_message
Text
The most recent message you sent to the contact
Total WhatsApp Messageswhatsapp_total_messages
Number
Running count of messages in and out, useful for spotting quiet accounts
WhatsApp Conversationwhatsapp_conversation_link
Text
A wa.me link that opens the chat straight from Attio
WhatsApp Phone Number (Raw)whatsapp_phone_number
Text
The raw WhatsApp number, kept as a fallback matching key
WhatsApp Message Textwhatsapp_message_text
Text
The latest tracked message, formatted for reading at a glance
WhatsApp Message Datewhatsapp_message_date
Date
Date of that latest tracked message, for filters and reports
WhatsApp Message Directionwhatsapp_message_direction
Select
Whether that latest message was inbound or outbound
WhatsApp Agent Numberwhatsapp_agent_number
Text
Which of your numbers handled the conversation
WhatsApp Agent Namewhatsapp_agent_name
Text
Which teammate handled the conversation

Video walkthroughs

Prefer to watch someone do it? The short one covers connecting and syncing. The long one is the full tutorial, start to finish.

Quick walkthrough: connect and sync

Full tutorial on YouTube

Fixing common problems

Six things people write in about, and what actually causes them.

WhatsApp says connected, but Attio looks empty

Nine times out of ten the data is there and the list is sorted the wrong way. Open People in Attio and sort by Last WhatsApp Message At, descending.

How to sort

One contact never shows up

Check your number filter mode. In exclude mode the number may be on the excluded list; in include mode it only syncs if it is on the include list. Numbers must be stored with the country code.

Filter settings

Fields update, but the notes have no message text

Default Sharing is set to metadata only. That is the setting deliberately holding message content back. Switch it to full access if you want the conversation written out.

Sharing settings

Notes land on the wrong record, or a duplicate person appears

We could not match the number to an existing person, so a new one was created. Add the Attio field where you keep that number to your phone match fields, and check the note destination.

Matching settings

Group messages are not syncing

Group Sync is off by default, and even when it is on only the groups you tick will sync. It is also unavailable on the official WhatsApp Business API. You need a QR-linked WhatsApp.

Compare connections

A template send from a workflow fails

Almost always an unapproved template, a template name or language code that does not match Meta exactly, a missing media header, or parameters in the wrong order.

Sending guide

Still stuck? Message us on WhatsApp or email hello@appstronauts.shop. Tell us the number you were expecting to see and we can check it.

Questions people ask

The ones that come up before anyone signs up.

Ready to connect?

Connect Attio, scan a QR code, and watch the first message land.