PHPackages                             eversend/eversend-php-sdk - 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. eversend/eversend-php-sdk

ActiveLibrary[API Development](/categories/api)

eversend/eversend-php-sdk
=========================

Eversend SDK for merchants

v1.0.1(3y ago)092MITPHP

Since Nov 3Pushed 2y ago2 watchersCompare

[ Source](https://github.com/eversend/eversend-php-sdk)[ Packagist](https://packagist.org/packages/eversend/eversend-php-sdk)[ Docs](https://github.com/eversend/eversend-php-sdk)[ RSS](/packages/eversend-eversend-php-sdk/feed)WikiDiscussions master Synced 1mo ago

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

Eversend PHP SDK
================

[](#eversend-php-sdk)

[![Packagist Version](https://camo.githubusercontent.com/eadc9f1a2ad0956e31deb6eed9a1ada5410d0903012c403eb740aaef07a1b05d/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6576657273656e642f6576657273656e642d7068702d73646b)](https://camo.githubusercontent.com/eadc9f1a2ad0956e31deb6eed9a1ada5410d0903012c403eb740aaef07a1b05d/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6576657273656e642f6576657273656e642d7068702d73646b) [![Packagist License](https://camo.githubusercontent.com/d82b86642feb621b2bdc71bb1d44b75ffaadcf52c4636c79e06d254c5f1f676c/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f6576657273656e642f6576657273656e642d7068702d73646b)](https://camo.githubusercontent.com/d82b86642feb621b2bdc71bb1d44b75ffaadcf52c4636c79e06d254c5f1f676c/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f6576657273656e642f6576657273656e642d7068702d73646b) [![Packagist Downloads](https://camo.githubusercontent.com/fe5afdf3f173fe8eee014b08778d9df46821100f5be31e33d16435a70a8318e6/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f646d2f6576657273656e642f6576657273656e642d7068702d73646b)](https://camo.githubusercontent.com/fe5afdf3f173fe8eee014b08778d9df46821100f5be31e33d16435a70a8318e6/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f646d2f6576657273656e642f6576657273656e642d7068702d73646b)

PHP SDK for Eversend payments API

Table of Contents
-----------------

[](#table-of-contents)

1. [Installation](#installation)
2. [Initialization](#initialization)
3. [Usage](#usage)
4. [Contribution Guidelines](#contribution-guidelines)
5. [License](#license)

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

[](#installation)

```
composer require eversend/eversend-php-sdk
```

Usage
-----

[](#usage)

```
use Eversend\Eversend

$eversendClient = new Eversend(
    clientId= 'clientId',
    clientSecret= 'clientSecret',
    version=1
);
```

You can get your clientId and clientSecret from the settings section in the [dashboard](https://business.eversend.co/settings)

Usage
-----

[](#usage-1)

### Wallets

[](#wallets)

**Get all wallets**

```
$wallets = eversendClient.wallets().list();
```

**Get one wallet**

```
$usdWallet = eversendClient.wallets().get(walletId: "USD");
```

### Transactions

[](#transactions)

**Get all transactions**

```
$transactions = eversendClient.transactions().list(page: 1, limit: 10);
```

If `page` and `limit` are not set, the default of `1` and `10` are used respectively.

**Get one transaction**

```
$transaction = eversendClient.transactions().get(
    transactionId: "EVS12345678"
);
```

### Exchange

[](#exchange)

To exchange from one wallet to another, you first have to generate a quotation. This returns a token with a 30s timeout that you can use to make the exchange.

**Get exchange quotation**

```
$quotation = eversendClient.exchange().createQuotation(
    from: "USD", to: "UGX", amount: 10.0
);
```

**Exchange currency**

```
$exchange = eversendClient.exchange().createExchange(
    token: "dhhsggajjshhdhdhd",
    transactionRef: "EVS-12345678", // optional field
);
```

### Beneficiaries

[](#beneficiaries)

**Get beneficiaries**

```
$beneficiaries = eversendClient.beneficiaries.list(
    page: 1,
    limit: 10,
);
```

If `page` and `limit` are not set, the default of `1` and `10` are used respectively.

**Search beneficiaries**

```
$beneficiaries = eversendClient.beneficiaries().list(
    search: "Okello",
    page: 1,
    limit: 10,
);
```

**Get single beneficiary**

```
$beneficiary = eversendClient.beneficiaries().get(
    beneficiaryId: 100
);
```

**Create a beneficiary**

```
$beneficiary = eversendClient.beneficiaries.create(
    firstName: "John",
    lastName: "Okello",
    country: "UG", // Alpha-2 country code
    phoneNumber: "+256712345678", // Should be in international format
    bankAccountName: "John Okello",
    bankAccountNumber: "12345678",
    bankName: "Stanbic Bank",
    bankCode: 1234 // You can get the bank code from payouts.getDeliveryBanks()
);
```

> Note that all bank fields are optional if bank payments will not be required

**Edit a beneficiary**

```
$beneficiary = eversendClient.beneficiaries.update(
    beneficiaryId: 100,
    firstName: "John",
    lastName: "Okello",
    country: "UG", // Alpha-2 country code
    phoneNumber: "+256712345678", // Should be in international format
    bankAccountName: "John Okello",
    bankAccountNumber: "12345678",
    bankName: "Stanbic Bank",
    bankCode: 1234 // You can get the bank code from payouts.getDeliveryBanks()
);
```

> Note that all bank fields are optional if bank payments will not be required

**Delete a beneficiary**

```
$beneficiary = eversendClient.beneficiaries.delete(
    beneficiaryId: 100
);
```

### Collections

[](#collections)

**Get collection fees**

```
$collectionFees = eversendClient.collections().getFees(
    amount: 1000,
    currency: "KES",
    method: "momo"
);
```

**Get collection OTP**

> Required when initiating mobile money collections

```
$collectionOTP = eversendClient.collections().getOTP(
    phone: "+256712345678"
);
```

**Initiate Mobile Money collection**

```
eversendClient.collections().initiateMomo(
    phone: "+256712345678",
    amount: 1000,
    country: "UG",
    currency: "UGX",
    pin: 123456, // From phone number passed in Get Collection OTP
    pinId: "dg524fhsgfde", // From Get Collection OTP
    transactionRef: "EVS-12345678", // Optional transaction ref generated by you
    customer: { name: "John Okello" } // Optional customer object with your metadata
);
```

### Payouts

[](#payouts)

**Get payout quotation**

```
$quotation = eversendClient.payouts.getQuotation(
    amount: 100,
    amountType: "SOURCE", // amountType can be SOURCE or DESTINATION
    sourceWallet: "USD",
    destinationCountry: "KE",
    destinationCurrency: "KES"
);
```

> `amountType` refers to whether you want amount to represent `sourceWallet` (SOURCE) or `destinationCurrency` (DESTINATION)

**Pay existing beneficiary**

```
$payout = eversendClient.payouts.initiate(
    beneficiaryId: 100,
    quotationToken: "token",
    transactionRef: "EVS-12345678" // Optional transaction ref generated by you
);
```

**Pay new beneficiary**

```
$payout = eversendClient.payouts.initiate({
    firstName: "John",
    lastName: "Okello",
    country: "UG", // Alpha-2 country code
    phoneNumber: "+256712345678", // Should be in international format
    bankAccountName: "John Okello",
    bankAccountNumber: "12345678",
    bankName: "Stanbic Bank",
    bankCode: 1234, // You can get the bank code from payouts.getDeliveryBanks()
    quotationToken: "token",
    transactionRef: "EVS-12345678" // Optional transaction ref generated by you
});
```

**Get delivery countries**

```
$countries = eversendClient.payouts.countries()
```

**Get delivery banks**

```
$banks = eversendClient.payouts.banks(
    country: "UG"
);
```

Contribution Guidelines
-----------------------

[](#contribution-guidelines)

Contributions are welcome and encouraged. Learn more about our contribution guidelines [here](/CONTRIBUTING.md)

License
-------

[](#license)

MIT © Eversend

###  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

Maturity51

Maturing project, gaining track record

 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 ~4 days

Total

6

Last Release

1270d ago

Major Versions

v0.1.3 → v1.0.02022-11-03

### Community

Maintainers

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

---

Top Contributors

[![fodongkara](https://avatars.githubusercontent.com/u/2143772?v=4)](https://github.com/fodongkara "fodongkara (9 commits)")

---

Tags

apisdkpaymentseversend

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/eversend-eversend-php-sdk/health.svg)

```
[![Health](https://phpackages.com/badges/eversend-eversend-php-sdk/health.svg)](https://phpackages.com/packages/eversend-eversend-php-sdk)
```

###  Alternatives

[transbank/transbank-sdk

Transbank SDK

62626.4k12](/packages/transbank-transbank-sdk)[invoiced/invoiced

Invoiced PHP Library

14117.1k](/packages/invoiced-invoiced)

PHPackages © 2026

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