pismile

PHP — pismile/pismile-php

Pages de paiement, demandes de paiement et vérification des webhooks pour PHP 8.1+. Aucune dépendance ; PHP simple, Laravel, WordPress.

1 min de lecture · Mis à jour le · API v1

Connectez-vous pour voir vos propres identifiants sandbox dans les exemples.

pismile/pismile-php fonctionne en PHP simple, avec Laravel, Symfony ou WordPress. Aucune dépendance, PHP 8.1 ou plus ; utilise curl s'il est disponible.

Terminal
composer require pismile/pismile-php

Utilisation#

PHP
$pismile = Pismile\Pismile::depuisEnvironnement();   // PISMILE_CLIENT_ID, PISMILE_CLIENT_SECRET, PISMILE_WEBHOOK_SECRET

// Page de paiement (bouton « Payer avec Alias PI-SPI »)
$page = $pismile->sessions()->creer(25000, 'cmd-42', 'https://votre-site.com/merci.php?commande=42', 'Commande 42');
header('Location: ' . $page->url, true, 303);

// Webhook
$e = $pismile->webhooks()->verifier(file_get_contents('php://input'), $_SERVER['HTTP_PISMILE_SIGNATURE'] ?? null);
if ($e->estSessionPayee()) { marquerPayee($e->reference()); }

// Demande à un utilisateur connecté (scope pismile:payment)
$pismile->paiements()->creer($sub, 5000, 'facture-1042', 'Abonnement octobre');

Laravel#

routes/web.php
Route::get('/commandes/{commande}/payer', function (Commande $commande, Pismile\Pismile $pismile) {
    $page = $pismile->sessions()->creer($commande->total, 'cmd-' . $commande->id,
        route('commandes.merci', $commande), 'Commande ' . $commande->id);
    return redirect()->away($page->url);
});
// AppServiceProvider : $this->app->singleton(Pismile\Pismile::class, fn () => Pismile\Pismile::depuisEnvironnement());

WordPress#

Le webhook peut passer par l'API REST de WordPress (/wp-json/pismile/v1/webhook) et déclencher une action pismile_paiement_recu que votre extension de boutique écoute. Exemple complet dans le README du paquet.

Les erreurs sont des Pismile\PismileException (codeErreur(), statut(), getMessage()). Le SDK réessaie de lui-même après une coupure réseau ou une erreur serveur temporaire.

Exemple complet : Le bouton « Payer avec Alias PI-SPI ».

Cette page vous a-t-elle aidé ?