A WhatsApp business automation bot for Kimchi Restaurant, built using the WhatsApp Cloud API. This bot allows customers to interact with the restaurant via WhatsApp for ordering food, tracking orders, and contacting support. It features location-based service areas and an interactive menu system.
- Interactive Menu: Browse and order from various categories including meals, desserts, proteins, pastries, beverages, and traditional swallow & soups.
- Location-Based Services: Automatically detects user's location and suggests nearby restaurant branches in supported areas (Lagos, Abuja, Port Harcourt, Umuahia).
- Order Tracking: (Feature in development) Track the status of your orders.
- Customer Support: (Feature in development) Contact support directly through the bot.
- Webhook Integration: Secure webhook verification and message handling via WhatsApp Cloud API.
- Lagos: Lekki, Ajah, Victoria Island, Yaba
- Abuja: Wuse, Gwarinpa
- Port Harcourt: GRA, Rumuola
- Umuahia: Ahiaeke, Okpara Square
-
Clone the repository:
git clone https://github.com/devbigsam/kimchi-whatsapp-bot.git cd kimchi-whatsapp-bot -
Install dependencies:
npm install
-
Create a
.envfile in the root directory with the following variables:WHATSAPP_TOKEN=your_whatsapp_cloud_api_token VERIFY_TOKEN=your_webhook_verify_token PHONE_NUMBER_ID=your_phone_number_id PORT=3000 # Optional, defaults to 3000 -
Start the server:
node server.js
-
Set up ngrok or similar tunneling service to expose the local server to the internet for webhook configuration in WhatsApp Cloud API.
- Start a conversation with the bot by sending "hi".
- Choose from options: Order Food, Track Order, or Contact Support.
- For ordering: Share your location to find nearby branches, then select a restaurant and browse the menu.
- The bot will guide you through the ordering process.
- Node.js
- Express.js
- Axios
- WhatsApp Cloud API
- Ngrok (for development tunneling)
This project is open-source and contributions are welcome! Since it's still in development, feel free to:
- Report bugs or issues
- Suggest new features
- Submit pull requests for improvements
Please ensure your contributions align with the project's goals and follow best practices.
This project is licensed under the ISC License - see the LICENSE file for details.
Samuel (Big Sam)
This bot is currently in testing mode. Some features may not be fully implemented or may contain bugs. Use at your own discretion.