PHPackages                             caydeesoft/payments - 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. caydeesoft/payments

ActiveLibrary[Payment Processing](/categories/payments)

caydeesoft/payments
===================

Laravel mobile money payment gateway package for M-Pesa, Airtel Money, T-Kash, EazzyPay, MTN and Tigo callbacks, STK push, refunds, balances and disbursements.

v2.0.3(1mo ago)143[1 PRs](https://github.com/Caydeesoft/Mobile-Payments/pulls)MITPHPPHP ^7.4|^8.0|^8.1CI passing

Since Sep 28Pushed 1mo ago1 watchersCompare

[ Source](https://github.com/Caydeesoft/Mobile-Payments)[ Packagist](https://packagist.org/packages/caydeesoft/payments)[ Docs](https://github.com/caydeesoft/payments)[ RSS](/packages/caydeesoft-payments/feed)WikiDiscussions master Synced today

READMEChangelog (3)Dependencies (6)Versions (26)Used By (0)

Laravel Mobile Money Payments
=============================

[](#laravel-mobile-money-payments)

`caydeesoft/payments` is a Laravel package for M-Pesa, Airtel Money, T-Kash, EazzyPay, MTN Mobile Money and Tigo/Tigo Pesa.

It supports channel selection, sandbox/production config, callback routes, token generation, STK push, refunds, balances, B2C/B2B operations, M-Pesa Bill Manager, Ratiba, and endpoint overrides for partner-specific APIs.

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

[](#installation)

```
composer require caydeesoft/payments
php artisan vendor:publish --tag=payments-config
```

```
PAYMENTS_CHANNEL=mpesa
PAYMENTS_ENV=sandbox
```

Supported channels: `mpesa`, `airtel`, `tkash`, `eazzy`, `mtn`, `tigo`.

Usage
-----

[](#usage)

```
use Payments;

Payments::stkpush($request);
Payments::channel('airtel')->stkpush($request);
Payments::channel('mpesa', 'production')->balance($request);
```

Provider-specific or newly released APIs can use `api()`:

```
Payments::channel('mpesa')->api($request, '/your/provider/endpoint', 'post', [
    'amount' => 1000,
]);
```

M-Pesa
------

[](#m-pesa)

The M-Pesa driver includes STK Push, checkout query, C2B registration/simulation, B2C, B2B, tax remittance, transaction status, account balance, reversal, Dynamic QR, Bill Manager, and Ratiba helpers.

```
Payments::channel('mpesa')->billManagerSingleInvoice($request);
Payments::channel('mpesa')->billManagerBulkInvoice($request);
Payments::channel('mpesa')->ratibaCreate($request);
Payments::channel('mpesa')->taxRemittance($request);
Payments::channel('mpesa')->c2bSimulate($request);
```

MTN and Tigo
------------

[](#mtn-and-tigo)

```
Payments::channel('mtn')->requestToPay($request);
Payments::channel('mtn')->transfer($request);
Payments::channel('mtn')->requestToPayStatus($request);

Payments::channel('tigo')->stkpush($request);
Payments::channel('tigo')->transactionStatus($request);
Payments::channel('tigo')->b2c($request);
```

Use `endpoint` or `api()` for country-specific MTN/Tigo partner paths.

Callbacks
---------

[](#callbacks)

Callback routes load automatically when `PAYMENTS_CALLBACK_ROUTES=true`.

```
POST /api/payments/callbacks/{provider}/{event}

```

Examples:

```
POST /api/payments/callbacks/mpesa/stk
POST /api/payments/callbacks/airtel/stk
POST /api/payments/callbacks/tkash/c2b-confirmation
POST /api/payments/callbacks/mtn/transaction-status
POST /api/payments/callbacks/tigo/b2c

```

Legacy M-Pesa routes are also registered:

```
/api/c2bvalidation
/api/c2bconfirmation
/api/querystkcallback
/api/b2bcallback
/api/b2ccallback
/api/reversalcallback
/api/accountbalballback
/api/transstatcallback

```

Non-M-Pesa callbacks return normalized payloads with provider, event, headers, parsed payload and raw body.

AI Metadata
-----------

[](#ai-metadata)

This package includes `llms.txt` and `mcp.json` for AI-readable package context and MCP-style tool/resource metadata.

Security
--------

[](#security)

Use environment/config credentials for live traffic and enable callback verification before production:

```
PAYMENTS_CALLBACK_VERIFICATION=true
PAYMENTS_CALLBACK_SECRET=change-me
PAYMENTS_CALLBACK_ALLOWED_IPS=
```

Generic `api()` endpoint overrides require provider `allowed_endpoints` config entries. See [Security.md](Security.md) for the production checklist.

###  Health Score

46

—

FairBetter than 92% of packages

Maintenance90

Actively maintained with recent releases

Popularity9

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity66

Established project with proven stability

 Bus Factor1

Top contributor holds 100% 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 ~58 days

Recently: every ~325 days

Total

24

Last Release

48d ago

Major Versions

v1.1.5 → v2.0.02026-05-15

PHP version history (4 changes)v1.0.1PHP &gt;=7.2.5

v1.0.7PHP &gt;=8.1

v1.1.1PHP &gt;=8.0

v1.1.5PHP ^7.4|^8.0|^8.1

### Community

Maintainers

![](https://www.gravatar.com/avatar/b45f83595087e9d2a3e2af6b69cdb1867d10bba2edc06182e8a09e47fb73f2ea?d=identicon)[dennis.kiptoo](/maintainers/dennis.kiptoo)

---

Top Contributors

[![drudolpho](https://avatars.githubusercontent.com/u/45796605?v=4)](https://github.com/drudolpho "drudolpho (21 commits)")

---

Tags

b2bmpesamobile-moneyB2CMobile Paymentslaravel-paymentsequity bankm-pesac2bMTN Mobile Moneystk-pushairtel-moneytkashkenya-paymentssafaricom darajat-kasheazzypaytigo pesapayment callbacksafrica payments

### Embed Badge

![Health badge](/badges/caydeesoft-payments/health.svg)

```
[![Health](https://phpackages.com/badges/caydeesoft-payments/health.svg)](https://phpackages.com/packages/caydeesoft-payments)
```

###  Alternatives

[barryvdh/laravel-debugbar

PHP Debugbar integration for Laravel

19.3k133.0M757](/packages/barryvdh-laravel-debugbar)[fruitcake/laravel-debugbar

PHP Debugbar integration for Laravel

19.3k2.3M65](/packages/fruitcake-laravel-debugbar)[psalm/plugin-laravel

Psalm plugin for Laravel

3355.3M346](/packages/psalm-plugin-laravel)[api-platform/laravel

API Platform support for Laravel

58171.4k14](/packages/api-platform-laravel)[hasinhayder/tyro-login

Tyro Login - Beautiful, customizable authentication views for Laravel 12 &amp; 13

2464.9k6](/packages/hasinhayder-tyro-login)[sebdesign/laravel-viva-payments

A Laravel package for integrating the Viva Payments gateway

4851.0k](/packages/sebdesign-laravel-viva-payments)

PHPackages © 2026

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