I made a video explaining how to do Whatsapp automation using Javascript. Someone has asked this question in the comments of that video. Let’s find out!


Here’s the example source code to send a list of products in which users can select one product. After selecting a product, an automatic message will be sent with the message “You’ve select X product”

I’m sending the list to a group named “Source Group” in this example. You can change the group name or modify the code to send it to a contact based on your requirement.
const { Client, LocalAuth, Buttons, List } = require("whatsapp-web.js");
const qrcode = require("qrcode-terminal");
const myGroupName = "Source Group";
const client = new Client({
authStrategy: new LocalAuth(),
});
client.on("qr", (qr) => {
qrcode.generate(qr, { small: true });
});
client.on("ready", () => {
console.log("Client is ready!");
client.getChats().then((chats) => {
myGroup = chats.find((chat) => chat.name === myGroupName);
const productsList = new List(
"Here's our list of products at 50% off",
"View all products",
[
{
title: "Products list",
rows: [
{ id: "apple", title: "Apple" },
{ id: "mango", title: "Mango" },
{ id: "banana", title: "Banana" },
],
},
],
"Please select a product"
);
client.sendMessage(myGroup.id._serialized, productsList);
});
});
client.on("message", (message) => {
if(message.type === 'list_response'){
message.reply(`You've selected ${message.body}`);
}
});
client.initialize();
Latest posts by Ranjith kumar (see all)
- 5 easy ways to center an element with CSS - April 5, 2022
- How to add participants to a WhatsApp group using whatsapp-web.js - March 31, 2022
- How to send a PDF to multiple contacts/groups using WhatsApp API - March 29, 2022
how to integrate With Google Sheet !! thank you for your Help
Can you explain the requirement clearly?
Hi,
Can you please, Help us to show products in whatsApp
Hi, Did you mean sending products from your business catalogue?
what if each list row has a different answer?
Hi, You can just write a switch case in the line number 40 and return a different answer based on the response. This is related to programming basics and not related to this library.