nelsius-pay-laravel maintained by nelsius
Description
The official Laravel package and Service Provider for Nelsius Pay API V2
Author
Last update
2026/11/06 15:18
(dev-main)
License
Downloads
0
Tags
checkout - payments - laravel - africa - cameroon - mobile-money - mtn-momo - orange-money - nelsius - nelsiuspay
Nelsius Pay for Laravel (V2)
Package Laravel officiel pour intégrer en quelques lignes la passerelle de paiement Nelsius Pay V2 (Mobile Money Orange & MTN, Carte bancaire).
📦 Installation
composer require nelsius/nelsius-pay-laravel
⚙️ Configuration
Ajoutez vos identifiants dans votre fichier .env :
NELSIUS_PUBLIC_KEY=pk_live_xxxxxxxxxxxxxxxx
NELSIUS_SECRET_KEY=sk_live_xxxxxxxxxxxxxxxx
NELSIUS_WEBHOOK_SECRET=whsec_xxxxxxxxxxxx
Optionnel : Publiez le fichier de configuration :
php artisan vendor:publish --tag=nelsius-config
🚀 Utilisation
Créer une session de paiement hébergée (Hosted Checkout)
use Nelsius\Laravel\Facades\Nelsius;
$session = Nelsius::checkout()->createSession([
'amount' => 5000,
'currency' => 'XAF',
'description' => 'Paiement commande #1042',
'customer_name' => 'Alice Dupont',
'customer_email' => 'alice@example.com',
'customer_phone' => '+237699001122',
'default_country' => 'CM', // Cameroun pré-sélectionné
'allowed_countries' => ['CM', 'CI', 'SN'],
'return_url' => route('order.success'),
'cancel_url' => route('order.cancel'),
'metadata' => [
'order_id' => 1042,
],
]);
return redirect($session['payment_url']);
🔒 Vérifier les Webhooks
use Nelsius\Utils\WebhookSignature;
public function handleWebhook(Request $request)
{
$signature = $request->header('X-Nelsius-Signature');
$secret = config('nelsius.webhook_secret');
if (!WebhookSignature::verify($request->getContent(), $signature, $secret)) {
abort(401, 'Signature invalide');
}
$event = $request->json()->all();
if ($event['event'] === 'payment.success') {
// Valider la commande
}
return response()->json(['received' => true]);
}
📄 Licence
MIT © Nelsius