GoHighLevel
Bring WhatsApp into GoHighLevel Conversations with the Wappfy app: install, use, workflow actions and troubleshooting.
The Wappfy - WhatsApp Integration app connects a WhatsApp number you connected in Wappfy to a GoHighLevel sub-account. No code and no API key are needed: installation is a standard OAuth flow.
What it does
- Incoming WhatsApp messages appear in GoHighLevel Conversations, under the Wappfy channel. If the sender is not a contact yet, Wappfy creates the contact with their WhatsApp profile name.
- Replies sent from GoHighLevel on the Wappfy channel go out from your WhatsApp number, and their delivered and read status comes back to GoHighLevel.
- Workflow actions send WhatsApp text, images and audio from your GoHighLevel workflows.
Requirements
- A Wappfy account at app.wappfy.io, with your WhatsApp number connected (Connections, status Connected). You must be the owner of that connection.
- An active Wappfy plan or free trial.
- A GoHighLevel sub-account where you can install marketplace apps.
Install from Wappfy
This is the recommended path: you start from the connection, so it is linked to the sub-account automatically.
Open the GoHighLevel card in Wappfy
In app.wappfy.io, go to Connections, open your connection and the Integrations tab. On the GoHighLevel card, click Activate.

Open GoHighLevel
In the Connect with GoHighLevel dialog, click Open GoHighLevel. GoHighLevel opens in a new tab; sign in if it asks.

Review the permissions
GoHighLevel shows what the app can access: Conversations and Contacts. The reason for each permission is in Permissions.

Choose the sub-account
Pick the sub-account this WhatsApp number will serve.
Check the Wappfy provider
On the screen Select which providers you would like to install, check Wappfy, then click Proceed.

Wappfy comes unchecked. If you click Proceed without checking it, the installation still finishes, but no WhatsApp message reaches GoHighLevel. If that happens, install again and check Wappfy.
Back in Wappfy: Connected!
GoHighLevel sends you back to Wappfy, which shows Connected! and the sub-account linked to your connection. Messages now flow in both directions.

Installed straight from the marketplace?
If you installed the app from the GoHighLevel Marketplace instead of starting in Wappfy, GoHighLevel sends you to Wappfy at the end with the screen Pick the connection to finish:
- Click Sign in to Wappfy if you aren't signed in.
- Choose the WhatsApp connection that will serve this sub-account and click Connect.
Until you choose a connection, nothing flows between WhatsApp and that sub-account. The same Wappfy provider rule applies: it must be checked during the installation.
Using it
- Incoming messages appear in Conversations, on the contact's conversation, marked with the Wappfy channel.
- To reply, open the conversation and pick Wappfy in the channel selector of the reply box, then send as usual.

Anything sent on the SMS channel does not go through Wappfy and is not delivered on WhatsApp. Always check that Wappfy is selected in the reply box.
What is supported
| Direction | Supported |
|---|---|
| WhatsApp → GoHighLevel | Text, photos (with caption), documents, voice notes, locations, contact cards and replies quoting a message |
| GoHighLevel → WhatsApp | Text and attachments sent from the reply box |
| Status in GoHighLevel | Delivered and read |
- If the number you reply to has no WhatsApp account, the message is marked as failed in GoHighLevel, with the reason.
- Group messages and WhatsApp Status updates are not sent to GoHighLevel: only one-to-one chats are.
Workflow actions
The app adds actions you can use in GoHighLevel workflows. The message is created in the contact's conversation and delivered through the Wappfy channel, just like a reply typed by an agent, so it shows up in Conversations with its status.
| Action | Fields |
|---|---|
| Send Text Message | contact_phone, text (required) |
| Send Image Message | contact_phone, image (required), caption |
| Send WhatsApp Audio | contact_phone, audio (required) |
contact_phone: the recipient's number with country code, such as+5581999999999. Leave it empty to send to the contact the workflow is running for.imageandaudio: a publichttpsURL of the file. For audio, use an OGG (Opus) file so it arrives as a voice note.caption: optional text shown under the image.- The sub-account must be linked to a Wappfy connection (installed as above). Otherwise the action returns an error and nothing is sent.
Send Audio With AI is listed in the app but is not available yet.
Uninstall and reinstall
- Uninstall: in GoHighLevel, uninstall the Wappfy app from the sub-account (from the app's page in the Marketplace, choose Uninstall and select the sub-account). Wappfy marks the integration as Uninstalled and stops sending messages to that sub-account.
- Turn it off on the Wappfy side only: open the GoHighLevel card on the connection and click Disconnect.
- Reinstall: open the GoHighLevel card on the connection again and follow Install from Wappfy, picking the same sub-account and checking Wappfy. On a connected card, the Reconnect button takes you through the same steps.
Troubleshooting
- The Wappfy provider was not checked during installation. This is the most common cause: the installation shows Connected!, but every message is refused by GoHighLevel. Open the GoHighLevel card on the connection in Wappfy: Last error shows the reason. Reinstall, pick the same sub-account and check Wappfy on the providers screen.
- The WhatsApp connection is disconnected. The card shows a warning. Reconnect the number in Connections.
- The free trial reached its limit. The card shows a warning. Messages go to GoHighLevel again once you subscribe to a plan.
- The app was uninstalled, or GoHighLevel refused access. The card is marked Uninstalled or Reauthorize. Install again on the same sub-account.
- It is a group message or a Status update. These are not sent to GoHighLevel.
- The reply went out on the wrong channel, usually SMS. Pick Wappfy in the reply box and send again. If no reply has come through since the link, the GoHighLevel card in Wappfy warns about it.
- The number has no WhatsApp account. The message is marked as failed in GoHighLevel, with the reason.
The app was installed from the marketplace and the installation ended before a Wappfy connection was chosen. Nothing flows to that sub-account yet. Open the GoHighLevel card on the connection that should serve it and follow Install from Wappfy, picking that sub-account and checking Wappfy.
Permissions
The app asks GoHighLevel for six permissions, and uses each one only for the following:
| Scope | Used for |
|---|---|
contacts.readonly | Finding the contact by phone number, and reading the phone number when GoHighLevel only sends the contact id. |
contacts.write | Creating the contact for someone who wrote on WhatsApp, with their WhatsApp profile name. |
conversations.readonly | Finding the contact's conversation. |
conversations.write | Creating the conversation when it doesn't exist yet. |
conversations/message.readonly | Reading the messages GoHighLevel delivers to the Wappfy provider, to send them on WhatsApp. |
conversations/message.write | Adding incoming WhatsApp messages to the conversation, and updating the delivered and read status of the messages you send. |
Wappfy does not access any other data in your GoHighLevel account.

