You can put a Simplesat survey in a WHMCS email template, so it goes out with the emails WHMCS sends on support tickets. The survey works without connecting WHMCS.
If you connect WHMCS, you can also switch on two integrations. One brings your WHMCS contacts into Simplesat as customers. The other adds a WHMCS ticket's details to responses on surveys connected to WHMCS: Event-based and Web-embed surveys with Connected service set to WHMCS. Neither one writes anything to WHMCS.
What the WHMCS integrations do
Integration | Listed under | What it does | Where it shows |
Sync contacts from WHMCS to Simplesat | Account-wide integrations | Adds your WHMCS contacts to Simplesat as customers and updates them once a day | Customers, in Simplesat |
Pull ticket data when receiving new feedback | Ticket integrations | Adds the WHMCS ticket's subject, department, status, priority and submitter to a response, on Event-based and Web-embed surveys with Connected service set to WHMCS | The response, in Simplesat |
Before you start
The WHMCS integrations are available on every Simplesat plan. To set them up, you need:
The Manage integrations permission in Simplesat, so you can connect WHMCS and switch integrations on. Owner and Admin have it by default.
An admin account in WHMCS that can create API credentials.
Simplesat connects with a WHMCS API credential whose role allows two actions: GetContacts for the contact sync, and GetTicket for the ticket pull. A credential without a role can't do anything.
Unless you've set it up differently, WHMCS accepts API calls only from IP addresses you allow. Add the addresses listed in IP addresses and domains to the allowed IPs in WHMCS, under General Settings → Security.
Connect WHMCS
In WHMCS, go to Configuration → System Settings → Manage API Credentials.
On the API Roles tab, click Create API Role. Give it a name, such as Simplesat, allow
GetContactsandGetTicket, and click Save.On the API Credentials tab, click Generate New API Credential. Choose the admin user and the role you just created, then click Generate.
Copy the identifier and the secret. WHMCS shows the secret only once.
In Simplesat, go to the Integrations page, open WHMCS and click Authenticate.
Enter the identifier in Identifier and the secret in Secret. In WHMCS URL, enter your WHMCS address followed by
/includes/api.php, for examplehttps://example.com/whmcs/includes/api.php. Click Authenticate.When the page shows Authenticated with WHMCS, click Activate integration on each integration you want.
Before you rely on an integration, test it with a real ticket, as described in Testing an integration end to end.
Send surveys from WHMCS
To add a survey to the emails WHMCS sends on tickets:
Create or open the survey and choose External email embed.
Under Choose where to add your survey, choose WHMCS.
On Publish, click Generate embed code.
Choose Visual or HTML and click Copy survey.
In WHMCS, go to Configuration → System Settings → Email Templates and edit the support ticket email template you want the survey in.
Click Enable/Disable Rich Text Editor to switch to the HTML view, paste the survey code where you want the survey to appear, and click Save Changes.
To test it, open a ticket with yourself as the requester and answer the survey from the email.
When WHMCS sends the email, it fills in the placeholders in the survey links, so each response comes in with its ticket and customer. WHMCS fills in the ticket placeholders only in support ticket email templates.
What the link carries | WHMCS placeholder |
Ticket ID |
|
Ticket subject |
|
Customer email |
|
Customer ID |
|
Customer first name |
|
Customer last name |
|
Company |
|
Team member email |
|
Team member ID |
|
Team member first name |
|
Team member last name |
|
Department and priority, saved as the ticket fields |
|
Heads up: WHMCS has no team member merge fields of its own, so it fills in the team member placeholders only if your WHMCS has an EmailPreSend hook that adds merge fields with the same names. Without one, responses come in with no team member.
To learn more about how placeholders work, read Placeholders and merge fields.
Ticket, customer and agent details in Simplesat
Simplesat links each response to its ticket, customer and team member using the placeholders in its survey link (see Attribution: linking feedback to tickets, customers and agents), and the integrations below add to those details.
Pull ticket data when receiving new feedback
When a response arrives, and again whenever it changes, this integration looks up the WHMCS ticket by the response's ticket ID. It adds these details, but not a team member:
the ticket's subject
the ticket's department, status and priority, as the ticket fields
department,statusandprioritythe person who submitted the ticket, as the customer, with their name and email
It runs only for responses that came in with a ticket ID, on surveys connected to WHMCS. Those are Event-based and Web-embed surveys with Connected service set to WHMCS.
Heads up: Currently, a survey set to External email embed → WHMCS isn't connected to WHMCS, so the pull doesn't run on responses to the surveys in your WHMCS emails. Those responses keep the details from the placeholders.
Sync contacts from WHMCS to Simplesat
Once a day, at the time you switched it on, the sync reads your WHMCS contacts and adds or updates them in Simplesat as customers. Each customer gets the contact's name, email and WHMCS contact ID. Contacts without an email address are skipped.
Heads up: In WHMCS, contacts are the extra contacts you add to a client. The sync doesn't read a client's own details, so a client with no contacts doesn't become a Simplesat customer.
The general rules for contact syncs are in Contact sync from a connected tool.
Change the WHMCS connection
To use a new API credential, or to connect a WHMCS installation at a different address:
Note which integrations are on. Reconnecting doesn't switch them back on.
Click Revoke access.
Click Authenticate, enter the new identifier, secret and WHMCS URL, then click Authenticate.
Click Activate integration on each integration you noted.
Responses that arrive before you activate the ticket pull again don't get ticket details from WHMCS. Survey code in your WHMCS email templates keeps working.
If the credential is deleted in WHMCS, or its role loses GetContacts or GetTicket, the integrations stop working but the page still shows Authenticated with WHMCS. Fix the credential, then reconnect the same way.
Troubleshooting
I connected WHMCS, but nothing comes in from it
Check each of these:
WHMCS URL ends in
/includes/api.php, and includes your WHMCS folder if WHMCS isn't at the top level of your domain.The addresses in IP addresses and domains are in the allowed IPs in WHMCS, under General Settings → Security.
The credential's API role allows
GetContactsandGetTicket.Each integration you want shows as active.
If WHMCS URL or the credential needs changing, click Revoke access, then Authenticate with the new details, then Activate integration on each integration you use. If none of these explains it, contact us.
My responses don't get ticket details from WHMCS
Pull ticket data when receiving new feedback runs only on Event-based and Web-embed surveys with Connected service set to WHMCS. Currently, surveys in WHMCS emails aren't connected, so their responses keep the ticket ID, subject, department and priority from the placeholders.
If a survey link in a WHMCS email still shows {$ticket_id}, the survey is in a template that isn't a support ticket template.
My WHMCS responses don't show a team member
The team member comes only from the team member placeholders in the survey link. Pull ticket data when receiving new feedback doesn't add one.
WHMCS has no team member merge fields of its own, so it fills in those placeholders only if your WHMCS has an EmailPreSend hook that adds merge fields with the same names. A WHMCS developer can add the hook. If your WHMCS already has a hook that adds team member merge fields under other names, replace the team member placeholders in the survey code with your hook's merge fields.
Some of my WHMCS clients aren't in Simplesat
Sync contacts from WHMCS to Simplesat reads WHMCS contacts, the extra contacts on a client. It doesn't read a client's own details, so a client with no contacts isn't brought in. Contacts without an email address are skipped. The sync runs once a day, so a new contact can take up to a day to appear.
My WHMCS integrations stopped working, but the page still says Authenticated with WHMCS
Simplesat doesn't check the connection again after you connect. If the credential is deleted, its role changes, your WHMCS address changes, or WHMCS stops allowing Simplesat's IP addresses, the integrations fail but the page still reads Authenticated with WHMCS.
Fix the cause. Then note which integrations are on, click Revoke access, click Authenticate, and click Activate integration on each integration you use.
FAQ
Which WHMCS API permissions does the integration need?
An API role that allows GetContacts and GetTicket. Both only read. Simplesat doesn't create or change anything in WHMCS.
Do I need to connect WHMCS to send surveys?
No. The survey works in your WHMCS email templates without a connection. Connecting adds the contact sync and the ticket pull.