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

ActiveLibrary[Payment Processing](/categories/payments)

settle/settle-sdk-php
=====================

PHP SDK for connecting to the Settle Payment Platform.

v1.2.3(3y ago)245apache-2.0PHPPHP ^7.4|^8.0

Since Sep 29Pushed 3y ago3 watchersCompare

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

READMEChangelog (7)Dependencies (4)Versions (14)Used By (0)

[![License](https://camo.githubusercontent.com/0a0ca23a96ca48f9f74adc69c60c9bff98ac5e879272869ec158330b439c556e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d417061636865253230322d627269676874677265656e2e737667)](https://github.com/daniel-zahariev/music-codes/blob/master/COPYING)[![Build Status](https://camo.githubusercontent.com/2a971c3ff87504bcbf167a007c4882ebc7663b52707cca1f9f9c821dd7995f57/68747470733a2f2f6170702e7472617669732d63692e636f6d2f536574746c654150492f736574746c652d73646b2d7068702e7376673f6272616e63683d6d61696e)](https://app.travis-ci.com/github/daniel-zahariev/settle-sdk-php)[![Coverage Status](https://camo.githubusercontent.com/e4745b18f0cc990f7107bb1732f117890d078cf8f90bb065853dc3420474cd3e/68747470733a2f2f636f766572616c6c732e696f2f7265706f732f6769746875622f536574746c654150492f736574746c652d73646b2d7068702f62616467652e737667)](https://coveralls.io/github/SettleAPI/settle-sdk-php)

PHP SDK for connecting to the Settle Payment Platform
=====================================================

[](#php-sdk-for-connecting-to-the-settle-payment-platform)

**Start accepting payments via Settle in seconds** ✨

An easy to use **SDK** for **PHP** with all the best practices to kickstart your integration with the **Settle Payment Platform**.

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

[](#installation)

`composer require settle/settle-sdk-php`

Usage
-----

[](#usage)

The library provides a basic Client class that handles the communication with the Settel REST API:

```
$settle_client = new SettleApiClient(
    SETTLE_MERCHANT_ID,
    SETTLE_USER_ID,
    SETTLE_PUBLIC_KEY,
    SETTLE_PRIVATE_KEY,
    SETTLE_IN_SANDBOX
);
```

The library then provides an entry point class for each section in the [REST API](https://api.support.settle.eu/api/reference/rest/v1/). Currently, only MerchantsApi is available as Permissions and OAuth2 are pending breaking changes and will be added soon.

### Merchants API

[](#merchants-api)

The following class serves as an entry point for all the resources in the section:

```
$merchant_api = new MerchantApi($settle_client);
```

Each resource (class) can be accessed via magic property on the Merchants API object:

```
$merchant_api->api_keys->...;
$merchant_api->balance->...;
$merchant_api->payment_requests->...;
$merchant_api->payment_send->...;
$merchant_api->pos->...;
$merchant_api->profile->...;
$merchant_api->settlements->...;
$merchant_api->short_links->...;
$merchant_api->status_codes->...;
```

The methods that each class implements very closely matches the REST API specification:

```
$merchant_api->api_keys->list();
$merchant_api->api_keys->get($api_key_id);
$merchant_api->api_keys->create($api_key_data);
$merchant_api->api_keys->update($api_key_id, $api_key_data);
$merchant_api->api_keys->delete($api_key_id);
```

Only `PaymentRequests` class has a few extra helper methods:

```
$merchant_api->payment_requests->capture($payment_request_id,$currency,$amount)
$merchant_api->payment_requests->refund($payment_request_id, $currency, $amount);
$merchant_api->payment_requests->getLink($payment_request_id);
$merchant_api->payment_requests->getDeepLink($payment_request_id);
```

### Webhooks / Callbacks

[](#webhooks--callbacks)

In order to validate callback requests from Settle, both Apache and nginx servers require manual setup to pass the `Authorization` header to PHP.

Here's an example for Apache:

```
RewriteEngine On
RewriteRule .* - [e=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

```

Here's an example for nginx:

```
proxy_set_header Authorization $http_authorization;
proxy_pass_header  Authorization;

```

Two methods on the `SettleApiClient` class can be used in relation to the callbacks:

```
// the following will return
$is_valid = $settle_client->isValidCallback($callbackUrl, $body, $headers, $method);

// the following method will grab the data Settle sent in the current request
$settle_data = $settle_client->getCallbackData();
```

### Deep links

[](#deep-links)

The SettleApiClient class has a helper method for creating deep links from short links for use on mobile devices. They integrate directly with the Settle mobile app. Example:

```
$short_link = 'https://settle.eu/s/gSpEb/pos123/';
$deep_link = $settle_client->getDeepLink($short_link);
```

###  Health Score

29

—

LowBetter than 59% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity11

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity63

Established project with proven stability

 Bus Factor1

Top contributor holds 93% 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 ~19 days

Recently: every ~31 days

Total

13

Last Release

1459d ago

Major Versions

v0.1.5 → v1.0.02021-11-30

### Community

Maintainers

![](https://www.gravatar.com/avatar/3b5e9980d96bf1af6f24b533dd102bc8962a49b9b24d4735daddd6022d4f3436?d=identicon)[settle](/maintainers/settle)

---

Top Contributors

[![daniel-zahariev](https://avatars.githubusercontent.com/u/263063?v=4)](https://github.com/daniel-zahariev "daniel-zahariev (40 commits)")[![iamchriswick](https://avatars.githubusercontent.com/u/1186755?v=4)](https://github.com/iamchriswick "iamchriswick (3 commits)")

###  Code Quality

TestsPest

### Embed Badge

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

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

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