samueltarus / laravel-pesapal
A Laravel package for PesaPal integration
dev-main
2024-09-21 10:00 UTC
Requires
- php: ^7.3|^8.0
- guzzlehttp/guzzle: ^7.0
- illuminate/support: ^8.0|^9.0
Requires (Dev)
- orchestra/testbench: ^6.0|^7.0
- phpunit/phpunit: ^9.0
This package is auto-updated.
Last update: 2025-06-21 11:44:37 UTC
README
This package provides an easy way to integrate PesaPal payment gateway into your Laravel application.
Installation
You can install the package via composer:
composer require samueltarus/laravel-pesapal
Configuration
Publish the config file with:
php artisan vendor:publish --provider="samueltarus\LaravelPesaPal\PesaPalServiceProvider" --tag="config"
Then, add your PesaPal credentials to your .env
file:
PESAPAL_CONSUMER_KEY=your_consumer_key_here
PESAPAL_CONSUMER_SECRET=your_consumer_secret_here
PESAPAL_ENDPOINT=https://endpoints.mikaappliances.com
Usage
This package provides two main routes:
- Process Payment:
POST /pesapal/process-payment
- Check Status:
GET /pesapal/check-status
You can also use the PesaPal
facade in your code:
use samueltarus\LaravelPesaPal\Facades\PesaPal; // Process a payment $result = PesaPal::submitOrder([ 'amount' => 1000, 'currency' => 'USD', 'description' => 'Test payment', 'callback_url' => 'https://your-callback-url.com', ]); // Check status of a transaction $status = PesaPal::getTransactionStatus('order_tracking_id');
License
The MIT License (MIT). Please see License File for more information.# laravel-pesapal