WhatsApp Bot is an app that allows your Homey Pro to communicate with a dedicated WhatsApp bot using the official Meta WhatsApp Cloud API. This integration enables you to control your smart home by sending and receiving text messages directly within your WhatsApp chat.
TIP: By pairing this app with Gemini AI, you can unlock Natural Language control for your entire home via WhatsApp. Simply route your incoming messages to Gemini AI in your flows to experience a truly intelligent chat interface.
Interactive Messaging with Homey
The app is built around two core Flow cards that turn WhatsApp into a powerful interface for your smart home.
Send WhatsApp Message (Action)
Stay informed about your home in real-time. Whether it’s a security alert or a simple household reminder, Homey can now “text” you directly.
Security: “Presence detected in the garage while you’re away!”
Appliances: “The laundry is ready! ”
Notifications: “Energy consumption is exceeding 3kW, please turn something off.”
Message Received (Trigger)
Control your home by simply sending a message to your bot.
Remote Execution: Text “Lock everything” to arm your security system and turn off all lights.
Status Inquiry: Text “Is the oven on?” to get an instant reply.
Conversational Flows: Use the incoming message text as a variable to trigger complex logic or search for information.
Professional Setup (Meta Cloud API)
Unlike unofficial solutions, this app relies on the official Meta Developer Portal. This ensures your messages are delivered instantly and securely.
Direct Connection: You connect directly to Meta. No middle-man servers, no data sniffing.
Permanent Access: No more QR code scanning every few weeks. Once configured with a Permanent Access Token, it works forever.
Setup Guide Included: I know Meta’s portal can be daunting, so I’ve built a step-by-step Setup Guide directly inside the app settings to walk you through the process.
Download it now on the Homey App Store! I’d love to hear your feedback, see your flows, and help with any questions.
In the left menu, open the Users section and choose System users.
Click “Add”, choose a name (e.g., HomeyBot), select the “Admin” role, and click “Create system user”.
Click “Assign assets”, select your App, enable “Full control”, and save.
Click “Generate token”, select your App, and in the permissions list, you must check:
whatsapp_business_messaging
whatsapp_business_management
Copy the generated Token and keep it safe (it will only be shown once).
4. Configuration on Homey
Open the WhatsApp Bot app settings on Homey and enter:
Access Token: The permanent token generated in step 3.
Phone Number ID: The ID obtained in step 2.
Verify Token: A string of your choice (no spaces, e.g., my_secret_token). This string will be used both to verify the Homey app within the Meta portal and for the initial bot registration (it is the secret code required by the bot).
Save the settings and take note of the Webhook URL that appears.
5. Webhook Configuration on Meta
Go back to the Meta Developer Portal, in the WhatsApp menu select “Configuration”.
Click “Edit” next to Webhook:
Callback URL: Paste the Webhook URL provided by Homey.
Verify token: Enter the string you chose on Homey in step 4.
Ciao Caesar, You must repeat step six of the guide for each new user.
Essentially, in Meta for developer you must add the number of the person you want to add to the “to” field and then send them the test message. Once that person receives the test message, he must respond with:
/register [your_token]
where [your_token] is the Verify Token chosen in step 4.
From that moment, he will be able to use the bot, and the phone number will appear in the users section of the app settings.
My meta web interface is a bit different than described:
Section is called “API Testing”
Temp token is generated as described
2. Select a ‘From’ phone number is kept as is (random US number)
3. Add a recipient phone number I added my personal number
4. Turn on webhook listening I tested with both On and Off
5. Choose a type of message to send I chose “Plain Text”
6. Send messages with the API sends me the text “Welcome to Jasper’s Market, your local grocery store providing farm-fresh produce and high-quality goods!”
I respond in the chat “/register” “/register handshake” “/register [handshake]” but all three responses don’t register in the app