Integrate WhatsApp with ServiceDesk Plus to help users connect with help desk technicians, receive notifications, and access support seamlessly right from their WhatsApp.
The following is a step by step guide on how to integrate WhatsApp with ServiceDesk Plus On-Premises.
Pre-Requisites :
Facebook account to create a business account.
Ensure that your ServiceDesk Plus instance is hosted publicly with a valid SSL certificate.
A Meta developer account.
Meta Business account.
A WhatsApp business account.
A valid ID proof for the Meta review process.
A WhatsApp business number or a number that is not associated with a WhatsApp business yet.
To create a Meta business account, head to https://business.facebook.com and log in with the Facebook account. Once logged in, click Create an account to proceed with the business account creation.
Enter the business details, such as business name, business email, and etc. Click Submit.
If there's trouble signing up for the business account or the registration throws an error, try verifying the mobile number associated with the Facebook account. To verify, install the WhatsApp business app on a mobile and create an account using this mobile number.
Once verified, try creating a business account again on business.facebook.com.
Once the account gets created, it will be redirected to the business's landing page as shown below.

(Business Account landing page)
Once the business account is created, head to https://developers.facebook.com and click on My Apps on the top-right corner.
Under the My Apps section, click Create App in the top-right corner.
Once inside the app creation page, choose Other and click Next.

On the next page, choose Business as the type of the app and click Next.

10. On the next page, enter the app name as "ServiceDesk Plus". The app contact email is the address where all communications related to this app will be sent. Please enter the address accordingly.

11. Once all the details are entered, click on Create app. Once created, it will be redirected to the app's configuration page. Click Set Up in the WhatsApp product.

12. On the WhatsApp product configuration page, create a WhatsApp business account. Follow the on-screen instructions to create one.

(In case there's an error saying that the business account has been restricted, please check your mail for any intimations from Meta regarding the same. The mail will have an option to appeal the restriction. You'll be asked to submit a valid ID proof for the appealing process)
13. Once the WhatsApp product is added to the app, you can proceed with the API setup.
14. Click on API setup under WhatsApp in the left pane. In the send and receive messages section, click on the From number drop-down and choose Add phone number.


15. Enter the details of the WhatsApp business profile. Enter the name as ServiceDesk Plus and choose the business category as Other. Click on Next.

16. In the next step, enter the business number. Choose how to verify the number and click on Next to initiate the verification process.

17. After the number is verified, it'll get added to the app, and you can use it now to send or receive messages.
18. Now, on the API setup page, copy both Phone Number ID and Business account ID and save them. They'll be required later.

19. Now click on Webhooks in the left pane. Choose WhatsApp Business Account in the drop-down and click on Subscribe to this object.

20. In the callback URL, provide the URL in the below format :
https://<sdp_hosted_domain>/AppIntegrations?serviceName=whatsapp
where <sdp_hosted_domain> is the URL of you ServiceDesk Plus domain.
For example, if the hosted domain is https://servicedeskplus.com, then the callback URL will be
https://servicedeskplus.com/AppIntegrations?serviceName=whatsapp
21. In the verify token field, provide the value as "sdpTokenVerification". Once both are filled, click on verify and save.

22. Once saved, scroll down and subscribe to the 'messages' event.

23. Now click on App settings in the left pane and choose Basic. On the settings page, copy the App secret and keep it stored somewhere as it'll be required later.

24. Now head to business.facebook.com and click on Business settings in the bottom-left corner. You'll be redirected to your business settings page.
25. Now, inside business settings, under Users, click on System users and click on Add.
26. Provide the name of the user as "ServiceDesk Plus" and system user role as "employee".
27. Now click on Assign assets and choose Apps. Choose the ServiceDesk Plus app and enable Full control.

28. Now click on Generate New Token and under the App drop-down, select the ServiceDesk Plus app.
29. Under Expiry, choose Never and under Permissions, select "whatsapp_business_management" and "whatsapp_business_messaging" permissions. Click on Generate Token.

30. Once the token has been generated, copy and keep it stored.
Go to Admin > Apps & Add-ons > Integrations > Third party > WhatsApp.
Enter the Phone Number ID copied from step 18 of the previous section.
Enter your WhatsApp Business Phone Number.
Enter the Access Token value copied from step 30.
Paste the App Secret value copied from step 23.
In the SDP Hosted Domain field, if your ServiceDesk Plus instance uses a publicly hosted alias URL, you can leave this field empty. It is auto-populated after you save the configuration. If not, enter the publicly hosted domain of your ServiceDesk Plus instance.
Click Save.

Once you save, the following tabs are available: Setup, Feature Configurations, and Template Configurations.
Update the configuration.
.png?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9kemY4dnF2MjRlcWhnLmNsb3VkZnJvbnQubmV0L3VzZXJmaWxlcy84NjYvMTQyNjIvY2tmaW5kZXIvaW1hZ2VzL3F1LzIwMjYvdW5rbm93bigzMikucG5nIiwiQ29uZGl0aW9uIjp7IkRhdGVMZXNzVGhhbiI6eyJBV1M6RXBvY2hUaW1lIjoxNzkwODI1MzYzfX19XX0_&Signature=aqSRDDonFXqWS9e4Zjm7IAdtGdTZGy80SoyYwM9EgafeLfftNBqEmwfAa1omCbbAc5nG96xC5xWQ79-mVjQKLQb5Xn3hXyan9kwteEGB-m-oS9VmuRomScbccC1tudCgyFtSTvBDMzzJu8RNmTjmhVefS3QS1mmY2qSXgxYLk8Dep2SyOONqK949IXnZr7n3NDshYMmeIfnCOaX70yBNhUaeIXw3dMj1BnjPB7PnL8EQAniuBsZeEwCNjKqR6-yJxH9IrJeJD6l7Ctvr6Rnm-5Z2o4dzhOBu2IodM0FsSvD9Kq6lz1IelJdnd3OjMHlVhv6rKFRwacLpCLtRPBHs2w__&Key-Pair-Id=K2TK3EG287XSFC)
Enable or disable features available in this integration. All options are enabled by default.
Enable Integration: Enable this option to turn on the WhatsApp integration.
Bot Commands: Enable this option to allow users to interact with the bot using commands.
Request Notifications: Enable this option to send WhatsApp notifications when a request is assigned or when an approval is raised.
Chat with Technician: Enable this option to allow users to initiate chats with available technicians from WhatsApp.
Authentication via Email OTP:
Enable this option to allow users to authenticate using a one-time password sent to their primary email address. Disable it to prevent email-based OTP authentication.
If the outgoing mail server is not configured, users are prompted to log in using their ServiceDesk Plus credentials. Disable Authentication via Email OTP option to use login credentials for authentication instead of email OTP.
Allow users to add attachments from WhatsApp: Enable this option to allow users to attach images, videos, and documents when creating requests from WhatsApp.
Send surveys to requesters after request closure: Enable this option to send feedback surveys to requesters from WhatsApp after a request is closed.
.png?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9kemY4dnF2MjRlcWhnLmNsb3VkZnJvbnQubmV0L3VzZXJmaWxlcy84NjYvMTQyNjIvY2tmaW5kZXIvaW1hZ2VzL3F1LzIwMjYvdW5rbm93bigzMykucG5nIiwiQ29uZGl0aW9uIjp7IkRhdGVMZXNzVGhhbiI6eyJBV1M6RXBvY2hUaW1lIjoxNzkwODI1MzYzfX19XX0_&Signature=i3h7~B3FttFy~vmvkM~92P2YsuD-gv2Bl0Hw4MrfLzYkiQT1AsekCzbeLNHs5eYujh3iKW8H65wLsRMjE1ygLHopYWfdsjSWWKj0uedJJuPr-FHb7iJSrpmJEM3~b4jm6rQ9f81LCBm0aVCK4pr0jsUBM2~oBvXpBa6ZFgQtNnWU0u8f74ROHBNoc-wq4S05M65nsM-IeZVd-tLQ16ngDZzCXemU8WbxiY10o54PFMz1RYj8OGhi4vitpsC30lG0eWf~gzstRkCioFt9QNmeGNPJDhEHFrpohOK7seD5sfbgs8eZVxgDqkZ~11OaNbzlRu2WUzTgIsfzJHPnucv-Vw__&Key-Pair-Id=K2TK3EG287XSFC)
Control mandatory fields for requests created from WhatsApp and select the required template.
Toggle the Skip mandatory fields when creating a request from WhatsApp, to control whether requests created from WhatsApp can skip mandatory fields, similar to requests created from email. This option is enabled by default.
Select the required request template from the Create request in Template drop-down.
.png?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9kemY4dnF2MjRlcWhnLmNsb3VkZnJvbnQubmV0L3VzZXJmaWxlcy84NjYvMTQyNjIvY2tmaW5kZXIvaW1hZ2VzL3F1LzIwMjYvdW5rbm93bigzNCkucG5nIiwiQ29uZGl0aW9uIjp7IkRhdGVMZXNzVGhhbiI6eyJBV1M6RXBvY2hUaW1lIjoxNzkwODI1MzYzfX19XX0_&Signature=EFHgkr1Gs2h8wzrcJdl43FO85t6Hm7~eLRBWGJcG7MA0UUjqaE9m4YScrE-dTbr6Wt1-a6zXN~6qlIu~4sMKclfBO6JmRM2L1I4d-1f9m3u2qmXi2DIljB0lNvtMoF1xq49eISfiTFBRQX5kyjqrbl8xu92czSnFSAULGUD7N6e6dKWm-qr-90BY7CCbltQWztOYdSBbHA21JplL5XC0hrCl3DLDzrT8oRTn-LzF1EdxRlMl7qJNWabepQeig3BCAuB8S3yb1vixoR6c3sO-FPHSgCPeCN~5GVBbBXcTAUMDUNncrpj1wjkZdLXccdJXpuFqn0prer8aq~kPAKmOFQ__&Key-Pair-Id=K2TK3EG287XSFC)
Enter the mobile number with the country code, without the plus sign (for example, 91xxxxxxxxxx, where 91 is the country code).
Send a message to your business phone number to initiate the authentication process.
Please refer to the screenshots below for the initial authentication process:
1. Send a message to the Business Phone Number:

2. Check your primary mail for the mail with a One-Time Password:

3. Reply to the bot with the OTP to authenticate:

4. Once authenticated, you'll be shown an option to choose your desired instance; if you want to perform the operations in another instance than the default, click on Next Portal and then select that portal.
5. Once done, you'll have a welcome message with the Bot commands option:

The bot commands that are being offered to the users are:
1. Create a New Request
2. My Open Requests
3. My pending approvals
4. Change instance
5. Chat with Technician

Create New Request: This option allows the user to create a request right from their WhatsApp. The user will be asked to enter the subject of the request first and then the description in detail subsequently. Once both are filled, a request will be created in the ServiceDesk Plus instance.

You can click on View Details to check the status of your request along with the other details. You'll also have an option to add a note to the request or initiate a chat with an available technician in ServiceDesk Plus:

My Open Requests: This will return the list of open requests for the user. On the details card, the user will have an option to view more details of the request or move to the next open request if available.

My pending approvals: As the name suggests, this option will list the pending approvals of the user. The user will have an option to approve/reject the approvals in the details card.


Change Instance: Change Instance will allow users to set their instance/portal to perform their actions on. On the details card, Clicking on Select this portal button will set the instance, whereas Next portal will show the next available instance to choose.

Chat with Technician: (Available to requesters alone) This button will initiate a chat in ServiceDesk Plus with technicians. Once an available technician accepts your chat, further messages from your WhatsApp will be considered as chat messages, until the chat session ends. Use the command '/end chat' to end the chat session.

Request Notifications: Technicians will get notified when a request is assigned to them, provided that their WhatsApp number is mapped to the ServiceDesk Plus user. Similarly, when an approval request is raised, the user/technician will get notified in their WhatsApp. The /disable_notifications command disables notifications for that specific user, while the /enable_notifications command turns them back on.

1. Revoking user authentication :
To revoke the authentication mapped between the WhatsApp user and the ServiceDesk Plus user, '/revoke' command will do the job. The next time the revoked user sends a message to the bot, the initial authentication process will happen.
As per Meta, a valid payment method is required to be associated with the business account to ensure constant delivery of notifications. If not, the notifications will not be delivered after 3 days until the end user messages the bot again.

1. Getting started with Business APIs
2. Meta developer account creation
4. Access tokens and System users
6. Business Management APIs all references
7. WhatsApp Business Platform pricing details