PHPackages                             edlugz/tanda - 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. [API Development](/categories/api)
4. /
5. edlugz/tanda

ActiveLibrary[API Development](/categories/api)

edlugz/tanda
============

This package provides you with the means to make requests to the Tanda API

v1.0.43(1y ago)0365MITPHPPHP ^8.1

Since Dec 18Pushed 1y ago1 watchersCompare

[ Source](https://github.com/edlugz/tanda)[ Packagist](https://packagist.org/packages/edlugz/tanda)[ Docs](https://github.com/edlugz/tanda)[ RSS](/packages/edlugz-tanda/feed)WikiDiscussions main Synced 2d ago

READMEChangelog (10)Dependencies (4)Versions (47)Used By (0)

Tanda
=====

[](#tanda)

[![Latest Version on Packagist](https://camo.githubusercontent.com/77fe67aff93ea537eb78b8539d86c7a087c36b5e44dffba2046b24ffb1bf2cff/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f65646c75677a2f74616e64612e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/edlugz/tanda)[![Total Downloads](https://camo.githubusercontent.com/65c21f0ec5d7f8c421594c678a78e1a76ab14440e70f93687e000f335f7bb9d7/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f65646c75677a2f74616e64612e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/edlugz/tanda)[![Build Status](https://camo.githubusercontent.com/cf6bd0ca0d371c2b96aa6db005493a949f462ab9edda562d96bc0bba6e60284b/68747470733a2f2f696d672e736869656c64732e696f2f7472617669732f65646c75677a2f74616e64612f6d61737465722e7376673f7374796c653d666c61742d737175617265)](https://travis-ci.org/edlugz/tanda)[![StyleCI](https://camo.githubusercontent.com/cb13a877afd1dbe223c631789c3f922d3ace958fdb334a9cce9b26afefbc2ebd/68747470733a2f2f7374796c6563692e696f2f7265706f732f31323334353637382f736869656c64)](https://styleci.io/repos/12345678)

This is where your description should go. Take a look at [contributing.md](contributing.md) to see a to do list.

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

[](#installation)

Via Composer

```
composer require edlugz/tanda
```

Publish Migration Files
-----------------------

[](#publish-migration-files)

```
php artisan vendor:publish --provider="EdLugz\Tanda\TandaServiceProvider" --tag="migrations"
```

Fill in all the details you will be requiring for your application. Here are the env variables for quick copy paste.

```
TANDA_RESULT_URL
TANDA_C2B_RESULT_URL
TANDA_CLIENT_ID
TANDA_CLIENT_SECRET
TANDA_ORG_ID
TANDA_BASE_URL=
```

Usage
-----

[](#usage)

Using the facade

Sub Wallet

```
Tanda::subwallet()->create($name, $ipnUrl, $username, $password, $customFieldsKeyValue = []);
Tanda::subwallet()->get();
Tanda::subwallet()->update($walletId, $name, $username, $password, $ipnUrl);
```

C2B - Fund Wallet (send stk push to mobile number)

```
Tanda::C2B()->request($serviceProviderId, $merchantWallet, $mobileNumber, $amount, $customFieldsKeyValue = []);
```

P2P - send to internal wallets

```
Tanda::P2P()->send($senderWallet, $receiverWallet, $amount, $customFieldsKeyValue = []);
```

B2C - send to bank accounts and mobile wallets

```
Tanda::B2C()->bank($merchantWallet, $bankCode, $amount, $accountNumber, $narration, $customFieldsKeyValue = []);
Tanda::B2C()->mobile($merchantWallet, $serviceProviderId, $amount, $mobileNumber, $customFieldsKeyValue = []);
```

B2B - to paybills and till numbers

```
Tanda::B2B()->buygoods($merchantWallet, $amount, $till, $contact, $customFieldsKeyValue = []);
Tanda::B2B()->paybill($merchantWallet, $amount, $paybill, $accountNumber, $contact, $customFieldsKeyValue = []);
```

Airtime - prepaid airtime (pinless topup)

```
Tanda::airtime()->prepaid($serviceProviderId, $amount, $mobileNumber, $customFieldsKeyValue = []);
```

Utility - kplc, nairobi water and paid tv

```
Tanda::utility()->postpaid($serviceProviderId, $amount, $accountNumber, $customFieldsKeyValue = []);
Tanda::utility()->prepaid($amount, $accountNumber, $contact, $customFieldsKeyValue = []);
Tanda::utility()->tv($serviceProviderId, $amount, $accountNumber, $customFieldsKeyValue = []);
```

Transaction - check status

```
Tanda::transaction()->status($transactionId);
```

Helper functions - get mno network based on mobile number

```
Tanda::helper()->serviceProvider($mobileNumber);
```

Helper functions - receive payout results

```
Tanda::helper()->payout($data);
```

Helper functions - receive c2b results

```
Tanda::helper()->c2b($data);
```

Change log
----------

[](#change-log)

Please see the [changelog](changelog.md) for more information on what has changed recently.

Contributing
------------

[](#contributing)

Please see [contributing.md](contributing.md) for details and a todolist.

Security
--------

[](#security)

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

Credits
-------

[](#credits)

- [Eddy Lugaye](https://github.com/edlugz)
- [All Contributors](../../contributors)

License
-------

[](#license)

MIT. Please see the [license file](license.md) for more information.

###  Health Score

34

—

LowBetter than 75% of packages

Maintenance37

Infrequent updates — may be unmaintained

Popularity12

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity64

Established project with proven stability

 Bus Factor1

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

45

Last Release

573d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/4479919?v=4)[Eddy Angano Lugaye](/maintainers/edlugz)[@edlugz](https://github.com/edlugz)

---

Top Contributors

[![edlugz](https://avatars.githubusercontent.com/u/4479919?v=4)](https://github.com/edlugz "edlugz (106 commits)")[![Henriquedn](https://avatars.githubusercontent.com/u/4680937?v=4)](https://github.com/Henriquedn "Henriquedn (10 commits)")[![StyleCIBot](https://avatars.githubusercontent.com/u/11048387?v=4)](https://github.com/StyleCIBot "StyleCIBot (1 commits)")

---

Tags

laravelTanda

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/edlugz-tanda/health.svg)

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

###  Alternatives

[craftcms/cms

Craft CMS

3.6k3.6M3.1k](/packages/craftcms-cms)[simplestats-io/laravel-client

Server-side analytics for Laravel that follows the full funnel from visit to registration to payment, attributed to the channel that drove it. Revenue, MRR, churn and ad-spend profit (ROAS/CAC) per channel. GDPR compliant, ad-blocker proof.

5022.0k](/packages/simplestats-io-laravel-client)[eslazarev/wildberries-sdk

Wildberries OpenAPI clients (generated).

273.0k](/packages/eslazarev-wildberries-sdk)

PHPackages © 2026

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