📚 Complete User Guide

Everything you need to know to use WhatsApp Sender Pro effectively

1. Introduction

What is WhatsApp Sender Pro?

WhatsApp Sender Pro is a professional bulk messaging platform that allows you to send WhatsApp messages to thousands of contacts using Meta's official WhatsApp Cloud API.

Important: This application sends WhatsApp messages, not SMS. Recipients must have WhatsApp installed.

Key Features

  • Bulk WhatsApp messaging
  • Campaign management
  • Contact organization
  • Scheduled campaigns
  • Message templates
  • Real-time analytics
  • Delivery tracking
  • Rate limiting
  • CSV/Excel import
  • Message personalization

2. Getting Started

System Requirements

  • Framework: .NET 8 SDK
  • Database: SQL Server (LocalDB or full version)
  • IDE: Visual Studio 2022 or VS Code
  • WhatsApp: Meta Business Account + WhatsApp Cloud API

Installation Steps

Step 1: Open Project

Open the project in Visual Studio 2022 or VS Code

File ? Open ? Project/Solution

Navigate to the WhatsAppAPISender folder

Step 2: Restore Packages
dotnet restore
Step 3: Build Project
dotnet build

3. WhatsApp API Setup

Prerequisites: You need a Meta (Facebook) Business Account and WhatsApp Business API access.

Step-by-Step Configuration

Step 1: Create Meta App
  1. Go to: Meta for Developers
  2. Click "Create App"
  3. Select "Business" type
  4. Fill in app details and create
Step 2: Add WhatsApp Product
  1. In your app dashboard, find "WhatsApp"
  2. Click "Set Up"
  3. Complete WhatsApp setup wizard
Step 3: Get API Credentials

Navigate to: WhatsApp ? API Setup

A. Phone Number ID
  • Found in the "From" section
  • Example: 889506114249186
  • Copy this number
B. Access Token
  • Click "Generate access token" button
  • Token starts with EAA...
  • Copy entire token
  • Note: Temporary tokens expire in 60 minutes
For Production: Generate a permanent System User Token that doesn't expire.
Step 4: Update Configuration File

Open appsettings.json and update:

{
  "WhatsAppSettings": {
    "PhoneNumberId": "YOUR_PHONE_NUMBER_ID",
    "AccessToken": "YOUR_ACCESS_TOKEN",
    "WebhookVerifyToken": "YourSecureToken123",
    "ApiVersion": "v18.0",
    "BaseUrl": "https://graph.facebook.com"
  }
}

4. Database Setup

Create Database
cd WhatsAppAPISender
dotnet ef migrations add InitialCreate
dotnet ef database update

This will:

  • Create SQL Server database
  • Create all required tables
  • Seed initial data
  • Create default admin user
Default Admin Account Created:
Email: admin@whatsappsender.com
Password: Admin@123

5. First Login

Step 1: Start Application
dotnet run

Or press F5 in Visual Studio

Application will start at: https://localhost:7154

Step 2: Login

Navigate to: https://localhost:7154/Account/Login

Email admin@whatsappsender.com
Password Admin@123

6. Contact Management

Add Single Contact

  1. Go to Contacts in sidebar
  2. Click "Add Contact" button
  3. Fill in:
    • Name: John Smith (required)
    • Phone: +12345678900 (with country code +1 for USA)
    • Email: john.smith@example.com (optional)
    • Tags: customer, vip (comma-separated)
  4. Click "Save Contact"
Phone Number Format is Critical!
? Correct: +12345678900 (USA), +447911123456 (UK), +61412345678 (Australia)
? Wrong: 2345678900 (missing +1), (234) 567-8900 (has formatting), +1-234-567-8900 (has dashes)

Import Bulk Contacts (CSV)

Create a CSV file with this format:

Name,PhoneNumber,Email,Tags
John Smith,+12345678900,john@example.com,customer
Sarah Johnson,+19876543210,sarah@example.com,vip
Michael Brown,+15555555555,michael@example.com,lead

Then:

  1. Go to Contacts ? Import
  2. Upload CSV file
  3. Review and confirm

7. Campaign Creation & Sending

Create Campaign

  1. Go to Campaigns ? Create New
  2. Fill in campaign details:
    • Name: Summer Sale 2024
    • Description: Promotional campaign for summer sale
  3. Write message with variables:
    Hello {name}! 🌞
    Get 30% OFF all items this week!
    Visit us at example.com or call +1-800-555-0123
    Your customer ID: {phone}
  4. Select recipients (group or individual)
  5. Schedule (optional)
  6. Click "Create Campaign"

Available Variables:

  • {name} - Contact's name (e.g., "John Smith")
  • {phone} - Phone number (e.g., "+12345678900")
  • {email} - Email address (e.g., "john@example.com")

11. Best Practices

? Do's
  • Use international phone format
  • Personalize with {name}
  • Test with small batch first
  • Respect rate limits
  • Only message opted-in contacts
  • Monitor delivery rates
  • Keep messages under 1,000 chars
? Don'ts
  • Don't send spam
  • Don't use incorrect formats
  • Don't exceed rate limits
  • Don't send without opt-in
  • Don't ignore failed messages
  • Don't use expired tokens
  • Don't violate WhatsApp policies

12. Troubleshooting

Check:
  • Campaign status is "InProgress"
  • Background service is running
  • Access token is valid
  • Phone numbers are correct format
  • Check ErrorLogs table

Solution:
  1. Go to Meta API Testing page
  2. Generate new access token
  3. Update appsettings.json
  4. Restart application

13. FAQ

Is this SMS or WhatsApp?

This sends WhatsApp messages only. Recipients must have WhatsApp installed.

How many messages can I send?

WhatsApp limits by tier:

  • Tier 1: 1,000 conversations/day
  • Tier 2: 10,000 conversations/day
  • Tier 3: 100,000+ conversations/day
Can I send to international numbers?

Yes! Use correct format: +countrycode + number

Examples:

  • USA: +12345678900
  • UK: +447911123456
  • India: +918812345678
  • Australia: +61412345678
  • Canada: +14165551234