Search packages, repositories and app categories

Package detailsv4.0.1

whatsapp

A Flutter package for integrating with the WhatsApp Business API. Send messages, products, media, and locations directly from your Flutter app.

AndroidiOSWebmacOSWindowsLinux
30-day downloads
196
Likes
212
Pub points
140

Install package

flutter pub add whatsapp

Package Overview

Package selection guidance compiled from public package information, community data, and project usage.

A Flutter package that enables integration with the WhatsApp Business API, allowing developers to send messages, product catalogs, media files, and location data directly from their Flutter applications. Designed for seamless cross-platform communication, it supports Android, iOS, Web, macOS, Windows, and Linux. The package simplifies sending rich content through WhatsApp, making it ideal for customer engagement, order confirmations, and automated notifications. It is built on top of the official WhatsApp Business API, ensuring reliable and secure messaging.

Use cases

  • Sending order confirmations
  • Automated customer notifications
  • Sharing product catalogs
  • Sending location updates
  • Sharing media files
  • Customer support messaging

Key features

  • Supports message types including text, media, and locations
  • Integrates with WhatsApp Business API
  • Cross-platform compatibility
  • Easy setup with Flutter pub
  • Real-time message delivery
  • Product catalog sharing

Suitable for

  • E-commerce apps
  • Customer service platforms
  • Business communication tools
  • Automated notification systems
  • Mobile apps requiring WhatsApp integration

Considerations

  • Requires WhatsApp Business API access
  • Needs proper authentication setup
  • May require business account verification
  • Rate limits apply
  • Depends on stable internet connection
  • Compliance with WhatsApp's policies

Original README

Original README snapshot from the linked source repository. Visit the repository for the latest content.

WhatsApp Flutter Banner

This Flutter package allows you to integrate the WhatsApp Business API into your Flutter applications. It enables sending messages, media, templates, managing business information, creating interactives and flows, sending catalog messages, and more. The package is updated to support the latest WhatsApp Business API v23.0.

Pub Likes Pub Points Pub Monthly Downloads GitHub Issues GitHub PRs GitHub Forks

Rohit Chouhan Sponsor


Documentation

Full documentation for the WhatsApp Flutter package is available at whatsapp-flutter.github.io.

You can switch the documentation version using the version selector at the top of the page (version:).

Other useful links:


New Features in v4

  • Performance Improvements – Optimized core methods, now up to 3x faster than previous versions.
  • Web Platform Support – Now supports fully compatibility with Flutter Web for most features.
  • Service-Specific Methods – Each service now provides dedicated getters for cleaner and more explicit usage.
  • Flow Messages – Added support for interactive flow messages to improve user engagement.
  • Catalog & Product Messages – Send product details and catalog messages for e-commerce use cases.
  • Resumable Uploads – Support for creating and managing resumable upload sessions for large files.
  • Error Handling Enhancements – Improved and added WhatsAppException handling with detailed error types.
  • Bug Fixes – Resolved multiple issues affecting stability and reliability.
  • API Upgrade – Updated to support WhatsApp Business API v23.0 (stable).

Basic Usage

// Access token provided by Meta for WhatsApp Cloud API
const accessToken = 'YOUR_ACCESS_TOKEN';

// Your WhatsApp Business phone number ID
const fromNumberId = 'YOUR_PHONE_NUMBER_ID';

// Create WhatsApp client instance
final whatsapp = WhatsApp(accessToken, fromNumberId);

try {
  // Send a simple text message
  var message = await whatsapp.sendMessage(
    phoneNumber: 'RECEIPT_NUMBER', // Recipient's phone number in international format
    text: 'Hi, how are you?',      // Message content
  );

  // Message sent successfully
  // Get and print the unique ID of the sent message
  print('Message ID: ${message.getMessageId()}');
  // Get and print the recipient number
  print('Message sent to: ${message.getContactId()}');
  // Get and print the full API response body
  print('API Response: ${message.getFullResponse()}');
} on WhatsAppException catch (e) {
  // Message failed to send
  // Print HTTP error code returned by the API
  print('HTTP Code: ${e.statusCode}');
  // Print exact error details from WhatsApp Cloud API
  print('API Error: ${e.message}');
  // Print type of request error (e.g., validation, authorization, etc.)
  print('Request Error: ${e.errorType}');
} catch (e) {
  print('Unexpected error: $e');
}

📌 Looking for a Better Example?

👉 Check out this working example here:
🔗 pub.dev WhatsApp Example

Contributors

chouhan-rahul

Have you found a bug or have a suggestion of how to enhance WhatsApp Package? Open an issue or pull request and we will take a look at it as soon as possible.

Report bugs or issues

You are welcome to open a ticket on github if any problems arise. New ideas are always welcome.

Copyright and License

Copyright © 2022 Rohit Chouhan. Licensed under the MIT LICENSE.

Categories

Dependencies

Dependency list 2 items

Source repository

Projects using this package

No data available yet.