wpay-bj/php-sdk

WPay PHP SDK —Vérification de transactions WebcoomPay

Maintainers

Package info

gitlab.com/hkraservices/webcoompay-sdk

Homepage

Issues

pkg:composer/wpay-bj/php-sdk

Statistics

Installs: 1

Dependents: 0

Suggesters: 0

Stars: 0

v1.0.0 2026-05-19 15:54 UTC

This package is auto-updated.

Last update: 2026-05-19 17:37:12 UTC


README

Latest Version PHP Version License

SDK PHP officiel pour l'API WPay — vérification de transactions, orders et webhooks.

Installation

composer require webcoompay-bj/php-sdk

Prérequis : PHP 8.1+ avec les extensions json et hash.

Configuration

Tout ce dont vous avez besoin pour démarrer :

use WPay\WPay;

WPay::setSecretKey($_ENV['WPay_SECRET_KEY']);

C'est tout. Le SDK cible la production par défaut.

Variables d'environnement recommandées

# Obligatoires
WPay_SECRET_KEY=sk_live_xxxxxxxxxxxx

🔒 Stockez toujours la secret key dans un .env (jamais en dur dans le code, jamais dans git).

Transactions

// Récupérer une transaction
$tx = WPay::transaction()->retrieve('01kmryyv98aw0mja47zp6h55tk');

// ✅ Vérification complète d'un paiement (statut + montant)
$valid = WPay::transaction()->verifyPayment($txId, expectedAmount: 5000);

// Vérifications séparées
$ok       = WPay::transaction()->isSuccessful($txId);
$amountOk = WPay::transaction()->verifyAmount($txId, 5000.00);

// Liste paginée
$list = WPay::transaction()->list([
    'status'   => 'success',
    'from'     => '2026-01-01',
    'per_page' => 20,
]);

Webhooks — vérification de signature

Le SDK supporte deux formats de signature dans l'en-tête X-WPay-Signature :

FormatHeaderAnti-replay
Horodaté (recommandé)t=1715610000,v1=<hex_hmac>✅ rejette les requêtes > 5 min
Legacy<hex_hmac>

Exceptions

ExceptionCodeCause
AuthenticationException401/403Secret key invalide ou révoquée
NotFoundException404Ressource introuvable
WebhookSignatureException400Signature HMAC invalide, manquante ou expirée
WPayvariableAutre erreur (5xx, réseau, etc.)

Toutes héritent de WPay qui hérite elle-même de RuntimeException — un seul catch (WPay $e) capture tout.

Sécurité

  • ✅ HMAC SHA-256 avec hash_equals (timing-safe)
  • ✅ Anti-replay via timestamp signé (tolérance 5 min)
  • ✅ Vérification SSL forcée
  • ✅ Retry exponentiel sur erreurs réseau transitoires

Pour signaler une vulnérabilité : security@webcoompay.com

Licence

MIT — voir LICENSE.