Download the PHP package bootdesk/chat-sdk-adapter-whatsapp without Composer

On this page you can find all versions of the php package bootdesk/chat-sdk-adapter-whatsapp. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package chat-sdk-adapter-whatsapp

bootdesk/chat-sdk-adapter-whatsapp

WhatsApp Business API adapter for the laravel-bootdesk multi-platform messaging framework.

Install

Requires a PSR-18 HTTP client (guzzlehttp/guzzle, symfony/http-client, etc.) and a PSR-17 factory (nyholm/psr7 bundled).

Configuration

Variable Description Example
access_token WhatsApp Cloud API Access Token EAAx...
http_client PSR-18 HTTP client instance new GuzzleHttp\Client
phone_number_id Phone Number ID 9876543210
app_secret Meta App Secret abc123...
verify_token Webhook Verify Token my-verify-token

Laravel

The ChatServiceProvider auto-binds Psr\Http\Client\ClientInterface to GuzzleHttp\Client. Add to config/chat.php:

Quick Example

Text Formatting

WhatsApp supports *bold*, _italic_, ~strikethrough~, `monospace`, code blocks, bullet lists (*/-), numbered lists (1.), and quotes (>). The SDK's WhatsAppFormatConverter automatically converts standard markdown (**bold**, ~~strike~~) to WhatsApp format when sending, and converts WhatsApp syntax back to standard markdown when receiving.

Template Messages

WhatsApp supports pre-approved message templates for notifications, alerts, and marketing. Send them via PostableMessage::template():

WhatsAppTemplate API

Method Description
create(string $name, string $language) Factory with template name and language code
positional() Use positional {{1}}, {{2}} format (default)
named() Use named {{first_name}} format; bodyParam() then takes (text, parameterName)
bodyParam(string $text, ?string $parameterName = null) Adds a body parameter; pass parameterName for named format
headerImage(string $link) Header image media
headerVideo(string $link) Header video media
headerDocument(string $link, ?string $filename) Header document media
headerText(string $text) Header text parameter
buttonParam(string $label, string $payload = '', string $subtype = 'quick_reply') Button parameter; payload defaults to label if omitted

Serializes to WhatsApp API format:

Named parameters

Templates using {{first_name}} instead of {{1}}:

Sends parameter_name on each parameter and parameter_format: "named" at the template level. Omit ->named() (or call ->positional()) for positional {{1}} format.

Falls back to markdown text via __toString() when an adapter doesn't support templates.

Thread ID Format

Format Description
whatsapp:{phoneNumberId} One thread per phone number (missing user ID uses fallback)
whatsapp:{phoneNumberId}:{userPhoneNumber} Thread with known phone number
whatsapp:{phoneNumberId}:{bsuid} Thread identified by Business-Scoped User ID

Webhook

WhatsApp Cloud API sends webhook payloads. Verify requests using HMAC signature verification with the app secret.

BSUID (Business-Scoped User ID) Support

As of May 2026, WhatsApp supports BSUIDs — a user identifier independent of phone numbers. The adapter transparently handles both identifiers:

Feature Matrix

Feature Supported
Post messages ✓
Edit messages ✗
Delete messages ✗
Reactions ✓
Slash commands ✓
Typing indicator ✓
Fetch messages ✓
Fetch thread info ✗
Fetch channel info ✗
Get user ✗
Open DM ✗
Stream ✓

Notes

WhatsApp Business API only. No edit or delete support in the WhatsApp Cloud API.

Documentationn

Full API documentation: https://bootdesk.github.io/chat-sdk

License

MIT


All versions of chat-sdk-adapter-whatsapp with dependencies

PHP Build Version
Package Version
Requires php Version >=8.2
bootdesk/chat-sdk-core Version 0.4.47
ext-json Version *
psr/http-client Version ^1.0
psr/http-factory Version ^1.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package bootdesk/chat-sdk-adapter-whatsapp contains the following files

Loading the files please wait ...