Skip to main content

Production-ready Django WhatsApp Cloud Platform — Inbox, Campaigns, Templates, Analytics

Project description

django-meta-whatsapp logo

django-meta-whatsapp

A production-ready WhatsApp Cloud Platform engine for Django.

PyPI Latest on Django Packages Python Django License


django-meta-whatsapp is not just an API wrapper—it's a fully-featured, drop-in CRM and messaging platform that lives entirely within your existing Django project. It provides a beautiful Tailwind UI for managing conversations, blasting marketing campaigns, handling webhooks, and syncing contacts without requiring third-party SaaS subscriptions.


✨ Features

  • 📨 Live Unified Inbox: A sleek, real-time chat interface to talk to your customers directly from your Django admin dashboard.
  • 🚀 Marketing Campaigns: Schedule and send bulk messages using approved WhatsApp Templates. Track delivery, read rates, and bounce rates.
  • 👥 Contact Management: Import CSVs, assign dynamic colored Labels, and auto-sync users who subscribe via WhatsApp deep-links.
  • 🚫 Blocked User Sync: Automatically detect and sync users who block your business so you never waste API calls on blocked numbers.
  • 🧩 Template Sync: Pull all your approved WhatsApp message templates directly from Meta with one click.
  • 🔗 In-App Signups: Create and manage wa.me deep links so users can instantly opt-in to marketing messages.
  • Webhooks Engine: Built-in webhook endpoints to automatically ingest incoming messages, delivery receipts, and status updates.

📦 Installation

This package is fully managed via uv or pip.

# Using uv (Recommended)
uv add django-meta-whatsapp

# Using pip
pip install django-meta-whatsapp

⚙️ Configuration

Add the app to your INSTALLED_APPS in settings.py:

INSTALLED_APPS = [
    # ...
    "django_meta_whatsapp",
]

Include the URLs in your urls.py:

from django.urls import path, include

urlpatterns = [
    # ...
    path("whatsapp/", include("django_meta_whatsapp.urls", namespace="django_meta_whatsapp")),
]

Add your WhatsApp Cloud API credentials to settings.py:

# Required
WHATSAPP_API_TOKEN = "EAA..."
WHATSAPP_PHONE_NUMBER_ID = "1234567890"
WHATSAPP_WEBHOOK_VERIFY_TOKEN = "your_secure_random_string"

# Optional Customizations
WHATSAPP_DASHBOARD_NAME = "My Business CRM"
WHATSAPP_DASHBOARD_LOGO = "https://yourwebsite.com/logo.png"

Run migrations:

python manage.py migrate

🚀 Quickstart

  1. Visit /whatsapp/ in your browser.
  2. If you haven't set up your credentials in settings.py, the UI will prompt you to create a WhatsApp Account object via the dashboard.
  3. Configure your Meta App Webhook URL to point to https://yourdomain.com/whatsapp/webhook/ using your WHATSAPP_WEBHOOK_VERIFY_TOKEN.
  4. Sync your templates from the Templates tab.
  5. Start chatting from the Inbox!

📖 Full Documentation

For advanced setup, webhook handling, and UI customization, please see the full documentation at: https://rahul-baberwal.github.io/django-meta-whatsapp


Crafted with ❤️ by Rahul Baberwal

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django_meta_whatsapp-1.0.2.tar.gz (999.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

django_meta_whatsapp-1.0.2-py3-none-any.whl (3.8 kB view details)

Uploaded Python 3

File details

Details for the file django_meta_whatsapp-1.0.2.tar.gz.

File metadata

  • Download URL: django_meta_whatsapp-1.0.2.tar.gz
  • Upload date:
  • Size: 999.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for django_meta_whatsapp-1.0.2.tar.gz
Algorithm Hash digest
SHA256 2aeea2f3316d68645ba30ed03c6f61e55be17ecf2684ed9a56a17bd735cd1827
MD5 03f70efcbc700fe5d5258b63372c247f
BLAKE2b-256 d8a373c31ee53816123ff3e29bf44e61bbaa335ca93c1f7ff41c4131a8886f49

See more details on using hashes here.

Provenance

The following attestation bundles were made for django_meta_whatsapp-1.0.2.tar.gz:

Publisher: publish.yml on rahul-baberwal/django-meta-whatsapp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file django_meta_whatsapp-1.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for django_meta_whatsapp-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 bc45c822cf606fc8b31cf4766d70765d28b2db00c6dc60540cbda48d0a80669a
MD5 fa176fd6b60f14ccd053918ab93eca1e
BLAKE2b-256 55dea965af1d630054567195d6a3cafa175f5e92c2394f2dac3ed902160eaac9

See more details on using hashes here.

Provenance

The following attestation bundles were made for django_meta_whatsapp-1.0.2-py3-none-any.whl:

Publisher: publish.yml on rahul-baberwal/django-meta-whatsapp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page