PHPackages                             blacklinecloud/gowa-php-sdk - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [PSR &amp; Standards](/categories/psr-standards)
4. /
5. blacklinecloud/gowa-php-sdk

ActiveLibrary[PSR &amp; Standards](/categories/psr-standards)

blacklinecloud/gowa-php-sdk
===========================

Type-safe PHP SDK for Go WhatsApp Web MultiDevice (REST &amp; webhooks)

v1.0.0(7mo ago)34MITPHPPHP &gt;=8.2CI passing

Since Nov 24Pushed 7mo agoCompare

[ Source](https://github.com/BlacklineCloud/gowa-php-sdk)[ Packagist](https://packagist.org/packages/blacklinecloud/gowa-php-sdk)[ Docs](https://github.com/blacklinecloud/gowa-php-sdk)[ RSS](/packages/blacklinecloud-gowa-php-sdk/feed)WikiDiscussions master Synced today

READMEChangelog (1)Dependencies (8)Versions (2)Used By (0)

Gowa PHP SDK
============

[](#gowa-php-sdk)

[![Packagist](https://camo.githubusercontent.com/ff609d24d2f2a5d6cc933de905d3ffa48516fa02603a3664a25c25f050d7c84d/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f626c61636b6c696e65636c6f75642f676f77612d7068702d73646b)](https://packagist.org/packages/blacklinecloud/gowa-php-sdk) [![License: MIT](https://camo.githubusercontent.com/f8df3091bbe1149f398a5369b2c39e896766f9f6efba3477c63e9b4aa940ef14/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d677265656e)](LICENSE) [![coverage >= 90%](https://camo.githubusercontent.com/be1977f1d45c3803db5a40af6115e51c88a7db222afe7a64b8823388721fd0c2/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f636f7665726167652d25453225383925413525323039302532352d626c7565)](#coverage)

Typed, PSR-compliant PHP SDK for [Go WhatsApp Web MultiDevice](https://github.com/aldinokemal/go-whatsapp-web-multidevice). Root namespace: `BlacklineCloud\SDK\GowaPHP`.

Installation
------------

[](#installation)

```
composer require blacklinecloud/gowa-php-sdk
```

Quick Start
-----------

[](#quick-start)

```
use BlacklineCloud\SDK\GowaPHP\Client\AppClient;
use BlacklineCloud\SDK\GowaPHP\Client\SendClient;
use BlacklineCloud\SDK\GowaPHP\Config\ClientConfigBuilder;
use BlacklineCloud\SDK\GowaPHP\Http\ClientFactory;
use BlacklineCloud\SDK\GowaPHP\Support\NativeUuidGenerator;
use Nyholm\Psr7\Factory\Psr17Factory;
use Nyholm\Psr7\HttpClient\CurlClient;
use Psr\Log\NullLogger;

$config = ClientConfigBuilder::fromArray([
    'base_uri' => 'http://localhost:3000',
    'username' => 'admin',
    'password' => 'admin',
]);

$factory = new ClientFactory(
    requestFactory: $psr17 = new Psr17Factory(),
    streamFactory: $psr17,
    psr18: new CurlClient($psr17),
    logger: new NullLogger(),
    uuid: new NativeUuidGenerator(),
);

$app  = $factory->createAppClient($config);
$send = $factory->createSendClient($config);

// Login (QR)
$app->login();

// Send text
$send->text('628123456789@s.whatsapp.net', 'Hello from PHP');
// Send chat presence
$send->chatPresence('628123456789@s.whatsapp.net', \BlacklineCloud\SDK\GowaPHP\Domain\Enum\PresenceState::Composing);
```

Webhook Verification
--------------------

[](#webhook-verification)

See `docs/notes/webhook-verification.md` for signature verification, PSR-15 middleware example, and idempotency tips. In brief:

```
$raw = file_get_contents('php://input');
$sig = $_SERVER['HTTP_X_HUB_SIGNATURE_256'] ?? '';
$verifier = new \BlacklineCloud\SDK\GowaPHP\Webhook\WebhookVerifier('your-secret');
if (! $verifier->verify($raw, $sig)) {
    http_response_code(401);
    exit('invalid signature');
}
$event = (new \BlacklineCloud\SDK\GowaPHP\Webhook\WebhookEventHydrator())->hydrate(\BlacklineCloud\SDK\GowaPHP\Serialization\Json::decode($raw));
```

Supported PHP
-------------

[](#supported-php)

PHP 8.2+ (tested on 8.2/8.3/8.4).

Contributing
------------

[](#contributing)

- Follow SOLID/DRY/KISS/YAGNI and PSR standards.
- Use constructor injection; keep public APIs typed (no arrays in signatures).
- Run tests and static analysis: `composer lint && composer stan && composer psalm && composer test`.
- See `CONTRIBUTING.md` for the self-review checklist and upgrade workflow.

Releases
--------

[](#releases)

- Semantic versioning. Tags matching `v*` run CI, create a GitHub Release, and (optionally) ping Packagist if credentials are configured.
- See `RELEASING.md` for the exact checklist.

Security
--------

[](#security)

Please email  and do not open public issues for vulnerabilities. See `SECURITY.md`.

License
-------

[](#license)

MIT. See `LICENSE` for details.

Coverage
--------

[](#coverage)

CI enforces &gt;= 90% coverage via `bin/check-coverage` (see `composer coverage`). Enable Xdebug locally to avoid warnings.

### Run tests with Docker + Xdebug

[](#run-tests-with-docker--xdebug)

```
docker compose -f docker-compose.dev.yml build
# Run full suite with coverage (make sure Xdebug is active)
docker compose -f docker-compose.dev.yml run --rm php composer test -- --coverage-clover=build/logs/clover.xml
docker compose -f docker-compose.dev.yml run --rm php composer coverage
```

###  Health Score

34

—

LowBetter than 75% of packages

Maintenance64

Regular maintenance activity

Popularity7

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity48

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 50% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

221d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/a7ec1bcccefd732671aeb9b454a0d80941cd8ec99368f6eb42499d083e58c372?d=identicon)[BlacklineCloud](/maintainers/BlacklineCloud)

---

Top Contributors

[![BlacklineCloud](https://avatars.githubusercontent.com/u/47382711?v=4)](https://github.com/BlacklineCloud "BlacklineCloud (67 commits)")[![zekiayan](https://avatars.githubusercontent.com/u/47382711?v=4)](https://github.com/zekiayan "zekiayan (67 commits)")

---

Tags

go-whatsapp-web-multidevicegowaphprestrest-apiwhatsappwhatsapp-apiwhatsapp-automationwhatsapp-mult-devicewhatsapp-php-apiwhatsapp-php-sdkwoga-php-sdkpsrphpsdkwebhookapi clientwhatsappgowa

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan, Psalm

Code StylePHP CS Fixer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/blacklinecloud-gowa-php-sdk/health.svg)

```
[![Health](https://phpackages.com/badges/blacklinecloud-gowa-php-sdk/health.svg)](https://phpackages.com/packages/blacklinecloud-gowa-php-sdk)
```

###  Alternatives

[tempest/framework

The PHP framework that gets out of your way.

2.2k34.4k15](/packages/tempest-framework)[flow-php/flow

PHP ETL - Extract Transform Load - Data processing framework

85036.3k](/packages/flow-php-flow)[cakephp/cakephp

The CakePHP framework

8.9k19.5M1.8k](/packages/cakephp-cakephp)[drupal/core-recommended

Locked core dependencies; require this project INSTEAD OF drupal/core.

6942.5M421](/packages/drupal-core-recommended)[typo3/cms

TYPO3 CMS is a free open source Content Management Framework initially created by Kasper Skaarhoj and licensed under GNU/GPL.

1.2k1.9M122](/packages/typo3-cms)[aporat/store-receipt-validator

PHP receipt validator for Apple App Store and Amazon Appstore

6544.0M13](/packages/aporat-store-receipt-validator)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
