PHPackages                             lisosoft/lisopay-gates-laravel-payment-gateway - 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. [Payment Processing](/categories/payments)
4. /
5. lisosoft/lisopay-gates-laravel-payment-gateway

ActiveLibrary[Payment Processing](/categories/payments)

lisosoft/lisopay-gates-laravel-payment-gateway
==============================================

A comprehensive payment gateway package for Laravel with support for multiple payment providers including PayFast, PayStack, PayPal, Stripe, Ozow, Zapper, Crypto, EFT, QR Code, VodaPay, and SnapScan

00PHP

Since Dec 31Pushed 4mo agoCompare

[ Source](https://github.com/lisosoftza/lisopay-gates)[ Packagist](https://packagist.org/packages/lisosoft/lisopay-gates-laravel-payment-gateway)[ RSS](/packages/lisosoft-lisopay-gates-laravel-payment-gateway/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

Lisosoft Laravel Payment Gateway
================================

[](#lisosoft-laravel-payment-gateway)

A comprehensive payment gateway package for Laravel with support for multiple payment providers including PayFast, PayStack, PayPal, Stripe, Ozow, Zapper, Crypto, EFT, QR Code, VodaPay, and SnapScan.

🎯 Features
----------

[](#-features)

- **Multi-Gateway Support**: 10+ payment gateways including international and South African providers
- **Unified API**: Consistent interface across all payment gateways
- **Subscription Management**: Recurring payments and subscription handling
- **Webhook Support**: Real-time payment notifications
- **Transaction Management**: Complete transaction history and reporting
- **Security**: Built-in security features and encryption
- **Analytics**: Payment analytics and reporting dashboard
- **Extensible**: Easy to add custom payment gateways

📦 Supported Gateways
--------------------

[](#-supported-gateways)

### International Gateways

[](#international-gateways)

- ✅ **PayPal** - Global payment processing
- ✅ **PayStack** - African payment gateway
- ✅ **Stripe** - International cards &amp; payments
- ✅ **Cryptocurrency** - Bitcoin, Ethereum, USDT, USDC

### South African Gateways

[](#south-african-gateways)

- ✅ **PayFast** - Leading SA payment gateway
- ✅ **Ozow** - Instant EFT payments
- ✅ **Zapper** - QR code payments
- ✅ **SnapScan** - Mobile QR payments
- ✅ **VodaPay** - Mobile wallet payments
- ✅ **EFT/Bank Transfer** - Manual bank deposits

🚀 Quick Start
-------------

[](#-quick-start)

### Installation

[](#installation)

```
composer require lisosoft/laravel-payment-gateway
```

### Publish Configuration

[](#publish-configuration)

```
php artisan vendor:publish --tag=payment-gateway-config
```

### Run Migrations

[](#run-migrations)

```
php artisan migrate
```

### Configure Environment Variables

[](#configure-environment-variables)

Add to your `.env` file:

```
# Default Gateway
PAYMENT_GATEWAY_DEFAULT=payfast

# PayFast Configuration
PAYFAST_ENABLED=true
PAYFAST_MERCHANT_ID=your_merchant_id
PAYFAST_MERCHANT_KEY=your_merchant_key
PAYFAST_PASSPHRASE=your_passphrase
PAYFAST_TEST_MODE=true

# PayStack Configuration
PAYSTACK_ENABLED=true
PAYSTACK_PUBLIC_KEY=your_public_key
PAYSTACK_SECRET_KEY=your_secret_key
PAYSTACK_MERCHANT_EMAIL=your_email

# PayPal Configuration
PAYPAL_ENABLED=true
PAYPAL_CLIENT_ID=your_client_id
PAYPAL_CLIENT_SECRET=your_client_secret
PAYPAL_MODE=sandbox

# Stripe Configuration
STRIPE_ENABLED=true
STRIPE_PUBLISHABLE_KEY=your_publishable_key
STRIPE_SECRET_KEY=your_secret_key
STRIPE_WEBHOOK_SECRET=your_webhook_secret
```

💼 Basic Usage
-------------

[](#-basic-usage)

### Initialize a Payment

[](#initialize-a-payment)

```
use Lisosoft\PaymentGateway\Facades\Payment;

// Initialize payment
$result = Payment::initializePayment('payfast', [
    'amount' => 100.00,
    'currency' => 'ZAR',
    'description' => 'Product Purchase',
    'customer' => [
        'email' => 'customer@example.com',
        'name' => 'John Doe',
        'phone' => '+27123456789',
    ],
    'metadata' => [
        'order_id' => 12345,
        'product_id' => 67890,
    ],
]);

// Redirect user to payment page
return redirect($result['payment_url']);
```

### Verify Payment Status

[](#verify-payment-status)

```
use Lisosoft\PaymentGateway\Facades\Payment;

$status = Payment::getPaymentStatus('payfast', 'TXN-123456');
if (Payment::isPaymentSuccessful('payfast', 'TXN-123456')) {
    // Payment successful
}
```

### Handle Webhooks

[](#handle-webhooks)

```
// Webhook routes are automatically registered
// Handle callbacks in your controller
public function handlePayFastWebhook(Request $request)
{
    $result = Payment::processCallback('payfast', $request->all());
    // Process the result
}
```

🔧 Advanced Features
-------------------

[](#-advanced-features)

### Custom Payment Gateway

[](#custom-payment-gateway)

Create your own payment gateway by extending the abstract class:

```
namespace App\PaymentGateways;

use Lisosoft\PaymentGateway\Gateways\AbstractGateway;

class CustomGateway extends AbstractGateway
{
    protected function getDefaultConfig(): array
    {
        return [
            'enabled' => true,
            'api_key' => '',
            'api_secret' => '',
            // ... other configuration
        ];
    }

    protected function processInitializePayment(array $paymentData): array
    {
        // Your payment initialization logic
    }

    // ... implement other required methods
}
```

### Event Listeners

[](#event-listeners)

Listen to payment events for business logic:

```
// In your EventServiceProvider
protected $listen = [
    \Lisosoft\PaymentGateway\Events\PaymentCompleted::class => [
        \App\Listeners\ProcessOrder::class,
        \App\Listeners\SendConfirmationEmail::class,
    ],
    \Lisosoft\PaymentGateway\Events\PaymentFailed::class => [
        \App\Listeners\NotifyAdmin::class,
        \App\Listeners\RetryPayment::class,
    ],
];
```

### Subscription Management

[](#subscription-management)

```
use Lisosoft\PaymentGateway\Facades\Payment;

// Create subscription
$subscription = Payment::gateway('payfast')->createSubscription([
    'amount' => 99.99,
    'currency' => 'ZAR',
    'description' => 'Monthly Subscription',
    'customer_email' => 'customer@example.com',
    'frequency' => 'monthly',
    'cycles' => 12, // 12 months
]);

// Cancel subscription
Payment::gateway('payfast')->cancelSubscription($subscription['id']);
```

📊 Analytics Dashboard
---------------------

[](#-analytics-dashboard)

Access payment analytics through the built-in dashboard:

```
# Visit the dashboard at
/admin/payments/dashboard
```

🛡️ Security Features
--------------------

[](#️-security-features)

- **Encryption**: Sensitive data encryption at rest
- **Signature Verification**: Webhook signature validation
- **Rate Limiting**: Built-in rate limiting for API endpoints
- **IP Whitelisting**: Optional IP whitelisting for webhooks
- **HTTPS Enforcement**: Requires HTTPS for production
- **Data Masking**: Sensitive data masking in logs

📈 Performance
-------------

[](#-performance)

- **Caching**: Intelligent caching of gateway configurations
- **Queue Support**: Webhook processing via queues
- **Retry Logic**: Automatic retry for failed payments
- **Bulk Operations**: Efficient batch processing
- **Async Processing**: Non-blocking payment verification

🧪 Testing
---------

[](#-testing)

```
# Run tests
composer test

# Generate test coverage
composer test-coverage
```

📚 Documentation
---------------

[](#-documentation)

Complete documentation is available in the `docs/` directory:

- [Installation Guide](docs/INSTALLATION.md)
- [API Reference](docs/API.md)
- [Deployment Guide](docs/DEPLOYMENT.md)
- [Advanced Usage](docs/ADVANCED.md)

🤝 Support
---------

[](#-support)

### Get Help

[](#get-help)

- **GitHub Issues**: [Report bugs or request features](https://github.com/lisosoft/laravel-payment-gateway/issues)
- **Documentation**: Complete API reference and guides
- **Examples**: Real-world integration examples

### Commercial Support

[](#commercial-support)

For enterprise support, custom integrations, or consulting services, contact .

📄 License
---------

[](#-license)

This package is open-source software licensed under the [MIT license](LICENSE).

🌟 Why Choose Lisosoft Payment Gateway?
--------------------------------------

[](#-why-choose-lisosoft-payment-gateway)

- **Enterprise Ready**: Built for high-volume, mission-critical applications
- **South African Focus**: Optimized for South African payment ecosystems
- **Developer Friendly**: Clean API, comprehensive documentation, and examples
- **Active Maintenance**: Regular updates and security patches
- **Community Support**: Active community and commercial support options

🚀 Getting Started with Development
----------------------------------

[](#-getting-started-with-development)

```
# Clone the repository
git clone https://github.com/lisosoft/laravel-payment-gateway.git

# Install dependencies
composer install

# Run tests
composer test

# Start development server
php artisan serve
```

📞 Contact
---------

[](#-contact)

- **Website**:
- **Email**:
- **GitHub**: [lisosoft/laravel-payment-gateway](https://github.com/lisosoft/laravel-payment-gateway)

---

**Lisosoft Payment Gateway** - Powering payments for modern Laravel applications.

###  Health Score

18

—

LowBetter than 8% of packages

Maintenance52

Moderate activity, may be stable

Popularity0

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity12

Early-stage or recently created project

 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.

### Community

Maintainers

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

---

Top Contributors

[![lisosoftza](https://avatars.githubusercontent.com/u/252319835?v=4)](https://github.com/lisosoftza "lisosoftza (1 commits)")[![umsuka](https://avatars.githubusercontent.com/u/6017402?v=4)](https://github.com/umsuka "umsuka (1 commits)")

### Embed Badge

![Health badge](/badges/lisosoft-lisopay-gates-laravel-payment-gateway/health.svg)

```
[![Health](https://phpackages.com/badges/lisosoft-lisopay-gates-laravel-payment-gateway/health.svg)](https://phpackages.com/packages/lisosoft-lisopay-gates-laravel-payment-gateway)
```

###  Alternatives

[omnipay/paypal

PayPal gateway for Omnipay payment processing library

3156.8M53](/packages/omnipay-paypal)[eduardokum/laravel-boleto

Biblioteca com boletos para o laravel

626351.9k2](/packages/eduardokum-laravel-boleto)[tbbc/money-bundle

This is a Symfony bundle that integrates moneyphp/money library (Fowler pattern): https://github.com/moneyphp/money.

1961.9M](/packages/tbbc-money-bundle)[2checkout/2checkout-php

2Checkout PHP Library

83740.3k2](/packages/2checkout-2checkout-php)[smhg/sepa-qr-data

Generate QR code data for SEPA payments

61717.2k5](/packages/smhg-sepa-qr-data)[omnipay/dummy

Dummy driver for the Omnipay payment processing library

271.2M33](/packages/omnipay-dummy)

PHPackages © 2026

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