Schedule WhatsApp messages for 12:00 AM sharp. Always be first to wish birthdays, festivals, or any occasion. Set it, forget it, never miss it.
Perfect For: Birthdays • Festivals • Team reminders • Family check-ins • Any scheduled message
- ⏰ Midnight Precision - Schedule to exact minute, especially 12:00 AM
- 📦 Smart Archives - Auto-archive sent wishes, reschedule for next year
- 👥 Group Messaging - Organize contacts, schedule bulk wishes
- 🔐 Security - Whitelist control, LID/JID support, bot stays hidden
- 💾 Data Management - JSON storage, backups, restore anytime
- 🌐 LID Support (v1.1) - Works with both old and new WhatsApp formats
# Clone
git clone https://github.com/TheStoicSpirit/Whatsapp-Wishing-Bot
cd Whatsapp-Wishing-Bot
# Install
npm install
# Configure
cp .env.example .env
nano .env # Set OWNER_NUMBER
# Run
npm start- Scan QR code with WhatsApp (Settings → Linked Devices)
- LID users: Save your number, message yourself for commands
- Test:
Bot, checkid- Verify your ID format - Secure: Set
REQUIRE_WHITELIST=truein .env
v1.1 introduces strict security mode:
# .env configuration
REQUIRE_WHITELIST=true # Strict: Only owner/whitelist (recommended)
REQUIRE_WHITELIST=false # Relaxed: Anyone uses help/checkid (setup only)First-Time Setup:
- Set
REQUIRE_WHITELIST=false - Run
Bot, checkidto get your ID - Add users:
Bot, whitelist [number] [name] - Enable:
REQUIRE_WHITELIST=true - Restart bot
Strict mode: Unauthorized users see nothing. Bot stays hidden. Maximum security.
| Command | Action | Example |
|---|---|---|
checkid |
Check your ID format | Bot, checkid |
addwish [date] [time] [jid] [msg] |
Schedule wish | Bot, addwish 25/12/2025 00:00 919876543210@s.whatsapp.net "Happy Birthday!" |
listwishes |
View scheduled | Bot, listwishes |
listarchives [filter] |
View sent wishes | Bot, listarchives sent |
reschedulewish [id] [date] [time] |
Reschedule from archive | Bot, reschedulewish 1234567890 25/12/2026 00:00 |
help |
All commands | Bot, help |
Formats: Date: DD/MM/YYYY • Time: HH:MM (24h) • Number: countrycode+number@s.whatsapp.net
📅 Wish Management
addwish- Schedule newlistwishes- View activedeletewish [id]- Delete scheduledarchivewish [id]- Manual archive
📦 Archives
listarchives [filter]- View (sent/manual/expired/send_failed)reschedulewish [id] [date] [time]- Reactivatedeletearchivedwish [id]- Permanent delete
👥 Groups
creategroup [name] [desc]- New groupaddtogroup [group] [jid] [name]- Add memberremovefromgroup [group] [jid]- Removelistgroups- View alllistgroupmembers [group]- View membersaddgroupwish [date] [time] [group] [msg]- Schedulesendgroupwishnow [group] [msg]- Send now
🔧 Admin (Owner Only)
start/stop- Bot controlstatus- Statisticswhitelist [jid] [name]- Add userlistwhitelist- View authorizedbackup- Create backuprestore [file]- Restore datacleararchives [keep_N]- Cleanup
Bot requires 24/7 uptime to send scheduled messages.
npm start # Keep terminal open, computer onFree: Railway.app • Render.com • Fly.io
Paid: DigitalOcean ($5/mo) • AWS EC2 • Heroku ($7/mo)
VPS Setup:
npm install -g pm2
pm2 start src/app.js --name birthday-bot
pm2 startup
pm2 saveRaspberry Pi or old computer = Perfect 24/7 bot server
Connection Issues
rm -rf auth_info_baileys
npm startCommands Not Working
- Check whitelist:
Bot, listwhitelist(owner) - Check security: See
REQUIRE_WHITELISTin .env - LID users: Message YOUR OWN number only
Scheduled Wishes Not Sending
- Bot running? Check terminal/server
- Computer on? (Local hosting)
- Format correct? DD/MM/YYYY HH:MM
- Wish active?
Bot, listwishes
Can't Find Sent Wishes
Bot, listarchives sent # Auto-archived after sendingLID Format (New WhatsApp)
- Your ID changes per chat
- Save your number as contact
- Message yourself for commands
- Check format:
Bot, checkid
Midnight Birthday:
Bot, addwish 25/12/2025 00:00 919876543210@s.whatsapp.net "Happy Birthday! 🎂"
Group Setup:
Bot, creategroup family "Family Members"
Bot, addtogroup family 919999999999@s.whatsapp.net "Mom"
Bot, addgroupwish 01/01/2026 00:00 family "Happy New Year! 🎊"
Reschedule Next Year:
Bot, listarchives sent
Bot, reschedulewish 1234567890 25/12/2026 00:00
Fork → Branch → Commit → Push → Pull Request
See CONTRIBUTING.md for guidelines.
AGPL v3.0 - Use freely, keep open source, share modifications.
Full license: LICENSE
Not affiliated with WhatsApp Inc. Use responsibly. Follow WhatsApp ToS.
Baileys • node-cron • All contributors
- 🐛 Issues
- 💬 Discussions
Star • Fork • Share • Contribute • Report bugs
