Configure WhatsApp Business Integration
Configure WhatsApp Business Integration
Send notifications and communicate with students via WhatsApp Business API.
Time: 30–45 minutes for setup Module: WhatsApp Core Permissions: Chat Manager or Administrator
Prerequisites
- WhatsApp Business API account
- Verified business number
- API credentials obtained
- Access to Discuss or WhatsApp menu
Overview
The WhatsApp Integration enables:
- Business messaging
- Student notifications
- Parent communication
- Contact management
- Message templates
- Chat history tracking
- Marketing opt-in management
Setup Workflow
Create WhatsApp Business Account ↓Get API Credentials ↓Configure in System ↓Verify Connection ↓Import Contacts ↓Start MessagingSteps
1. Obtain WhatsApp Business API
From Meta Business:
- Go to Meta Business Suite
- Create Business Account
- Add WhatsApp Product
- Verify business
- Get API credentials:
- Phone Number ID
- Access Token
- Business Account ID
2. Configure API Settings
In OpenEduCat:
- Navigate to Settings → WhatsApp
- Enter credentials:
| Field | Action |
|---|---|
| Phone Number ID | From Meta |
| Access Token | API token |
| Business ID | Account ID |
- Click Test Connection
- Click Save
3. Import Contacts
Add WhatsApp contacts:
- Navigate to WhatsApp → Contacts
- Click Import or New
- For each contact:
| Field | Action |
|---|---|
| Name | Contact name |
| Phone | WhatsApp number |
| Country | Phone country |
| Optional email | |
| Marketing Opt | Consent status |
- Click Save
4. Create Message Templates
For template messages:
- Navigate to WhatsApp → Templates
- Click New
- Design template:
| Field | Action |
|---|---|
| Template Name | Unique name |
| Category | Message type |
| Language | Message language |
| Body | Message content |
- Submit for approval
- Wait for Meta approval
Template Categories:
- Utility (transaction confirmations)
- Marketing (promotional)
- Authentication (OTP)
5. Send Individual Message
For one-on-one chat:
- Navigate to Discuss → Channels
- Find or create WhatsApp channel
- Select contact
- Compose message
- Send
6. Send Bulk Messages
For notifications:
-
Navigate to WhatsApp → Send Messages
-
Select recipients:
- All contacts
- By tag
- By student group
-
Choose template
-
Personalize with variables
-
Click Send
7. Manage Chat History
View conversations:
- Navigate to Discuss
- Filter WhatsApp channels
- View chat history
- Add notes for context
8. Handle Incoming Messages
When receiving messages:
- Notification appears
- Open channel
- View message
- Respond appropriately
- Update status
Field Reference
WhatsApp Contact (whatsapp.contact)
| Field | Technical Name | Type | Required | Description |
|---|---|---|---|---|
| Name | name | Char | No | Contact name |
| Sequence | sequence | Integer | No | Order |
| Active | active | Boolean | No | Active status |
| Date | date | Datetime | No | Created date |
| Profile | image_1920 | Binary | No | Profile picture |
| Phone | phone | Char | Yes | WhatsApp number |
| User Phone | phone1 | Char | No | Alternate |
| Country | country_id | Many2one | No | Country |
email | Char | No | Email address | |
| Marketing Opt | marketing_opt | Boolean | No | Marketing consent |
WhatsApp Note (whatsapp.note)
| Field | Technical Name | Type | Description |
|---|---|---|---|
| Name | name | Char | Note title |
| Date | date | Datetime | Created date |
| Note | note | Text | Note content |
| Created By | created_by | Many2one | Author |
| Contact | whatsapp_contact_id | Many2one | Related contact |
WhatsApp Tag (whatsapp.tag)
| Field | Technical Name | Type | Required | Description |
|---|---|---|---|---|
| Name | name | Char | Yes | Tag name |
| Contacts | whatsapp_contact_line | Many2many | No | Tagged contacts |
| Business Account | whatsapp_business_id | Many2one | Yes | Business account |
Discuss Channel Extension (discuss.channel)
| Field | Technical Name | Type | Description |
|---|---|---|---|
| Channel Type | channel_type | Selection | Channel type |
| WhatsApp Contact | whatsapp_contact | Many2one | Linked contact |
Message Templates
Fee Reminder
Template: fee_reminderCategory: Utility
Hello {{1}},
This is a reminder that your fee payment of {{2}} is due on {{3}}.
Please make the payment to avoid late fees.
Thank you,{{4}}Exam Notification
Template: exam_scheduleCategory: Utility
Dear {{1}},
Your examination schedule:Subject: {{2}}Date: {{3}}Time: {{4}}Venue: {{5}}
All the best!Attendance Alert
Template: attendance_alertCategory: Utility
Dear Parent,
This is to inform you that {{1}} was absent from class on {{2}}.
Please contact us if you have any concerns.
Regards,{{3}}Views Available
| View | Features |
|---|---|
| List | All contacts |
| Form | Contact details |
| Chat | Conversation view |
| Kanban | Contact cards |
WhatsApp Dashboard
Shows:
- Total contacts
- Messages sent
- Active conversations
- Delivery rates
Compliance Notes
Marketing Consent
- Always obtain opt-in
- Honor opt-out requests
- Document consent
- Regular consent refresh
Message Limits
- 24-hour messaging window
- Template required for new conversations
- Rate limits apply
- Quality rating matters
Troubleshooting
| Issue | Cause | Solution |
|---|---|---|
| Connection failed | Wrong credentials | Verify API keys |
| Template rejected | Policy violation | Revise template |
| Message not delivered | Invalid number | Verify phone format |
| Rate limited | Too many messages | Slow down sending |
| No response | Outside window | Use template |
Best Practices
- Get consent: Always obtain permission
- Use templates: For initiating conversations
- Timely responses: Reply within 24 hours
- Professional tone: Maintain formality
- Don’t spam: Respect message limits
- Track delivery: Monitor message status
Security Notes
| Role | Capabilities |
|---|---|
| Chat Manager | Full messaging access |
| Chat Agent | Respond to messages |
| Administrator | Configuration |
Data Privacy
- Encrypt conversations
- Secure API credentials
- Audit message logs
- Comply with regulations
Integration Features
Student Integration
- Student contact sync
- Fee reminders
- Attendance alerts
- Result notifications
Parent Integration
- Parent contact sync
- Child updates
- Meeting reminders
- Emergency alerts
Admission Integration
- Inquiry follow-up
- Application status
- Document requests
- Interview scheduling