PHPackages                             shell/digital-payments-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. [CLI &amp; Console](/categories/cli)
4. /
5. shell/digital-payments-sdk

ActiveLibrary[CLI &amp; Console](/categories/cli)

shell/digital-payments-sdk
==========================

The APIs detailed within this SDK will enable Shell's Fleet Solutions Customers to digitalize Shell Card/s and use them to pay to refuel their vehicles at Shell Stations.

1.2.0(1y ago)18MITPHPPHP ^7.2 || ^8.0

Since Jun 6Pushed 1y agoCompare

[ Source](https://github.com/sdks-io/digital-payments-php-sdk)[ Packagist](https://packagist.org/packages/shell/digital-payments-sdk)[ Docs](https://www.shell.com/)[ RSS](/packages/shell-digital-payments-sdk/feed)WikiDiscussions main Synced 3w ago

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

Getting Started with Shell SmartPay API
=======================================

[](#getting-started-with-shell-smartpay-api)

Introduction
------------

[](#introduction)

The APIs detailed within this document will enable Shell's Fleet Solutions Customers to digitalize Shell Card/s and use them to pay to refuel their vehicles at Shell Stations.

Install the Package
-------------------

[](#install-the-package)

Run the following command to install the package and automatically add the dependency to your composer.json file:

```
composer require "shell/digital-payments-sdk:1.2.0"
```

Or add it to the composer.json file manually as given below:

```
"require": {
    "shell/digital-payments-sdk": "1.2.0"
}
```

You can also view the package at:

Test the SDK
------------

[](#test-the-sdk)

Unit tests in this SDK can be run using PHPUnit.

1. First install the dependencies using composer including the `require-dev` dependencies.
2. Run `vendor\bin\phpunit --verbose` from commandline to execute tests. If you have installed PHPUnit globally, run tests using `phpunit --verbose` instead.

You can change the PHPUnit test configuration in the `phpunit.xml` file.

Initialize the API Client
-------------------------

[](#initialize-the-api-client)

***Note:*** Documentation for the client can be found [here.](https://www.github.com/sdks-io/digital-payments-php-sdk/tree/1.2.0/doc/client.md)

The following parameters are configurable for the API Client:

ParameterTypeDescription`environment``Environment`The API environment.
 **Default: `Environment.TEST`**`timeout``int`Timeout for API calls in seconds.
*Default*: `0``enableRetries``bool`Whether to enable retries and backoff feature.
*Default*: `false``numberOfRetries``int`The number of retries to make.
*Default*: `0``retryInterval``float`The retry time interval between the endpoint calls.
*Default*: `1``backOffFactor``float`Exponential backoff factor to increase interval between retries.
*Default*: `2``maximumRetryWaitTime``int`The maximum wait time in seconds for overall retrying requests.
*Default*: `0``retryOnTimeout``bool`Whether to retry on request timeout.
*Default*: `true``httpStatusCodesToRetry``array`Http status codes to retry against.
*Default*: `408, 413, 429, 500, 502, 503, 504, 521, 522, 524``httpMethodsToRetry``array`Http methods to retry against.
*Default*: `'GET', 'PUT'``mppTokenCredentials`[`MppTokenCredentials`](https://www.github.com/sdks-io/digital-payments-php-sdk/tree/1.2.0/doc/auth/custom-header-signature.md)The Credentials Setter for Custom Header Signature`oAuthTokenPostCredentials`[`OAuthTokenPostCredentials`](https://www.github.com/sdks-io/digital-payments-php-sdk/tree/1.2.0/doc/auth/custom-header-signature-1.md)The Credentials Setter for Custom Header SignatureThe API client can be initialized as follows:

```
$client = ShellSmartPayAPIClientBuilder::init()
    ->mppTokenCredentials(
        MppTokenCredentialsBuilder::init(
            'Authorization'
        )
    )
    ->oAuthTokenPostCredentials(
        OAuthTokenPostCredentialsBuilder::init(
            'X-Apigee-Authorization'
        )
    )
    ->environment(Environment::TEST)
    ->build();
```

Environments
------------

[](#environments)

The SDK can be configured to use a different environment for making API calls. Available environments are:

### Fields

[](#fields)

NameDescriptionTest**Default**Production-Authorization
-------------

[](#authorization)

This API uses the following authentication schemes.

- [`MppToken (Custom Header Signature)`](https://www.github.com/sdks-io/digital-payments-php-sdk/tree/1.2.0/doc/auth/custom-header-signature.md)
- [`oAuthTokenPost (Custom Header Signature)`](https://www.github.com/sdks-io/digital-payments-php-sdk/tree/1.2.0/doc/auth/custom-header-signature-1.md)

List of APIs
------------

[](#list-of-apis)

- [Shell API Platform Security Authentication](https://www.github.com/sdks-io/digital-payments-php-sdk/tree/1.2.0/doc/controllers/shell-api-platform-security-authentication.md)
- [Digital Payment Enablement](https://www.github.com/sdks-io/digital-payments-php-sdk/tree/1.2.0/doc/controllers/digital-payment-enablement.md)
- [Station Locator](https://www.github.com/sdks-io/digital-payments-php-sdk/tree/1.2.0/doc/controllers/station-locator.md)
- [Partner Notification](https://www.github.com/sdks-io/digital-payments-php-sdk/tree/1.2.0/doc/controllers/partner-notification.md)
- [Fueling](https://www.github.com/sdks-io/digital-payments-php-sdk/tree/1.2.0/doc/controllers/fueling.md)

Classes Documentation
---------------------

[](#classes-documentation)

- [ApiException](https://www.github.com/sdks-io/digital-payments-php-sdk/tree/1.2.0/doc/api-exception.md)
- [HttpRequest](https://www.github.com/sdks-io/digital-payments-php-sdk/tree/1.2.0/doc/http-request.md)
- [HttpResponse](https://www.github.com/sdks-io/digital-payments-php-sdk/tree/1.2.0/doc/http-response.md)

###  Health Score

28

—

LowBetter than 52% of packages

Maintenance43

Moderate activity, may be stable

Popularity6

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity48

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

Total

3

Last Release

452d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/ef06f97b4ff5db714f2a124525216538f97338487cd4e2bca22baa32c0bf90cd?d=identicon)[developer-sdksio](/maintainers/developer-sdksio)

---

Top Contributors

[![developer-sdksio](https://avatars.githubusercontent.com/u/135820708?v=4)](https://github.com/developer-sdksio "developer-sdksio (3 commits)")

---

Tags

shellapimaticapisSDKsDigitalPayments

###  Code Quality

TestsPHPUnit

Code StylePHP\_CodeSniffer

### Embed Badge

![Health badge](/badges/shell-digital-payments-sdk/health.svg)

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

###  Alternatives

[psy/psysh

An interactive shell for modern PHP.

9.8k569.8M785](/packages/psy-psysh)[square/square

Use Square APIs to manage and run business including payment, customer, product, inventory, and employee management.

763.7M26](/packages/square-square)[mikehaertl/php-shellcommand

An object oriented interface to shell commands

32439.6M69](/packages/mikehaertl-php-shellcommand)[kevinlebrun/colors.php

Colors for PHP CLI scripts

3426.9M45](/packages/kevinlebrun-colorsphp)

PHPackages © 2026

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