PHPackages                             chistel/multi-payment - 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. chistel/multi-payment

ActiveLibrary[Payment Processing](/categories/payments)

chistel/multi-payment
=====================

A multiple payment gateway adapter for laravel

v0.0.3(3y ago)023MITPHPPHP ^7.3|^8.0|^8.1

Since May 13Pushed 3y ago1 watchersCompare

[ Source](https://github.com/chistel/multi-payment)[ Packagist](https://packagist.org/packages/chistel/multi-payment)[ RSS](/packages/chistel-multi-payment/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (4)Versions (4)Used By (0)

Multi-payment for laravel
=========================

[](#multi-payment-for-laravel)

[![Latest Stable Version](https://camo.githubusercontent.com/3d83a2cabd7abddbfad4381324749f652a7519b6eafa4c93c1bb457f49d556d9/687474703a2f2f706f7365722e707567782e6f72672f6368697374656c2f6d756c74692d7061796d656e742f76)](https://packagist.org/packages/chistel/multi-payment) [![Total Downloads](https://camo.githubusercontent.com/c52aee304e9e09c7da6d9a8dc30e7cd205b8c4e67d6757507759fbb5ab4758d3/687474703a2f2f706f7365722e707567782e6f72672f6368697374656c2f6d756c74692d7061796d656e742f646f776e6c6f616473)](https://packagist.org/packages/chistel/multi-payment) [![Latest Unstable Version](https://camo.githubusercontent.com/5abf989709643e9d46633ab3f01e4e4330b45294f8749573d9a063cf92c2ada6/687474703a2f2f706f7365722e707567782e6f72672f6368697374656c2f6d756c74692d7061796d656e742f762f756e737461626c65)](https://packagist.org/packages/chistel/multi-payment) [![License](https://camo.githubusercontent.com/5c1d4109803f909a6fb08205f4f9d6249ebdc3c67be34fa922fd279c3b726aed/687474703a2f2f706f7365722e707567782e6f72672f6368697374656c2f6d756c74692d7061796d656e742f6c6963656e7365)](https://packagist.org/packages/chistel/multi-payment) [![PHP Version Require](https://camo.githubusercontent.com/36a180fac9fc7f9c93091ca5acb4cc9e5f8f0a8e34e03e86727f93d88e7afb2c/687474703a2f2f706f7365722e707567782e6f72672f6368697374656c2f6d756c74692d7061796d656e742f726571756972652f706870)](https://packagist.org/packages/chistel/multi-payment)

This is a very simple and light package that allows you to add multiple payment methods in your application without having to use lots of conditional statements and is library agnostic.

With this package, you can keep the uniformity of initiating and verifying payments.

Installation
------------

[](#installation)

This package can be installed through Composer.

```
composer require chistel/multi-payment

```

In Laravel 5.5 and above the service provider will automatically get registered. In older versions of the framework just add the service provider in `config/app.php` file:

```
'providers'=> [
    ...
    Chistel\MultiPayment\MultiPaymentServiceProvider::class,
];
```

Optionally you can publish the config file with:

```
php artisan vendor:publish --provider="Chistel\MultiPayment\MultiPaymentServiceProvider" --tag="config"
```

This is the content of the file that will be published in `config/multi-payment.php`

```
return [
  /*
   * An array of supported gateways
   */
  'gateways' => [
        'paystack' => [
            'name' => 'Paystack',
            'driver' => PaystackGateway::class
        ]
  ]
];
```

Usage
-----

[](#usage)

First create a gateway class of your choice with extends ` Chistel\MultiPayment\AbstractGateway` which should implement the purchase and complete method. A couple of action classes for initiating and completing payments were also made available.

Based on the action classes, there are also events which can be used for listeners after success or failed payments. They return the gateway name, payer and the gateway response.

The sample below shows how the events get used via the EventProvider

```
  PaymentWasSuccessful::class => [
            PaymentSuccessfulListener::class
        ],
        PaymentWasUnsuccessful::class => [
            PaymentUnsuccessfulListener::class
        ]
  ]
```

And your listener should be similar to the sample below

```
class PaymentSuccessfulListener
{
    public function handle(PaymentWasSuccessful $event)
    {
        $payer = $event->user;
        $response = $event->responses
        $provider = $event->gateway;

        // Other code you want to added
    }
}
```

check out a full usage in the [Comprehensive demo repository](https://github.com/chistel/payment-demo)

Tests
-----

[](#tests)

The test is currently not done

Security
--------

[](#security)

If you discover any security related issues, please email  instead of using the issue tracker.

Credits
-------

[](#credits)

- [Chistel](https://chistel.com)

###  Health Score

23

—

LowBetter than 27% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity49

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 87.5% 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.

###  Release Activity

Cadence

Every ~8 days

Total

3

Last Release

1441d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/7f4f9845cd645756cae3ab0489554ba1494d5f69f85e94e0056fded0403eae9e?d=identicon)[chistel](/maintainers/chistel)

---

Top Contributors

[![chistel](https://avatars.githubusercontent.com/u/46791424?v=4)](https://github.com/chistel "chistel (7 commits)")[![StyleCIBot](https://avatars.githubusercontent.com/u/11048387?v=4)](https://github.com/StyleCIBot "StyleCIBot (1 commits)")

---

Tags

laravelstripepaymentomnipaypaystackmulti-paymentmultiple-payment

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/chistel-multi-payment/health.svg)

```
[![Health](https://phpackages.com/badges/chistel-multi-payment/health.svg)](https://phpackages.com/packages/chistel-multi-payment)
```

###  Alternatives

[payum/payum-laravel-package

Rich payment solutions for Laravel framework. Paypal, payex, authorize.net, be2bill, omnipay, recurring paymens, instant notifications and many more

12842.5k](/packages/payum-payum-laravel-package)[musahmusah/laravel-multipayment-gateways

A Laravel Package that makes implementation of multiple payment Gateways endpoints and webhooks seamless

852.2k1](/packages/musahmusah-laravel-multipayment-gateways)[recca0120/laravel-payum

Rich payment solutions for Laravel framework. Paypal, payex, authorize.net, be2bill, omnipay, recurring paymens, instant notifications and many more

741.5k](/packages/recca0120-laravel-payum)

PHPackages © 2026

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