PHPackages                             payplug/unified-plugin-core - 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. payplug/unified-plugin-core

ActiveLibrary

payplug/unified-plugin-core
===========================

Core foundations shared library for Payplug e-commerce plugins.

1.0.0(2w ago)0264↑483.3%[1 PRs](https://github.com/payplug/unified-plugin-core/pulls)MITPHPPHP &gt;=7.4CI passing

Since Jul 3Pushed 1w agoCompare

[ Source](https://github.com/payplug/unified-plugin-core)[ Packagist](https://packagist.org/packages/payplug/unified-plugin-core)[ RSS](/packages/payplug-unified-plugin-core/feed)WikiDiscussions master Synced 1w ago

READMEChangelog (10)Dependencies (20)Versions (24)Used By (0)

unified-plugin-core
===================

[](#unified-plugin-core)

[![Coverage](https://camo.githubusercontent.com/ff1b3b5941a6749209bb11072ad0a3e4cecd76e37b8a73bb8d192ff15f1d6d81/68747470733a2f2f736f6e6172636c6f75642e696f2f6170692f70726f6a6563745f6261646765732f6d6561737572653f70726f6a6563743d6769746875622d706179706c75672d756e69666965642d706c7567696e2d636f7265266d65747269633d636f76657261676526746f6b656e3d33633063323863396437623134383632616136373532333863386636643036356264343966333633)](https://sonarcloud.io/summary/new_code?id=github-payplug-unified-plugin-core)

**The shared foundation for every Payplug e-commerce plugin** — PrestaShop, WooCommerce, and beyond.

Every Payplug plugin ends up rebuilding the same pieces: OAuth2 authentication, calls to the Unified API, webhook verification, amount and phone-number formatting quirks. `unified-plugin-core`builds them once, tests them thoroughly, and lets every plugin share the same dependable core — so plugin teams can focus on their CMS-specific integration instead of reinventing payment plumbing.

What's inside
-------------

[](#whats-inside)

- **Authentication** — OAuth2 + PKCE against Payplug's identity provider, with token caching and automatic refresh handled for you.
- **Unified API client** — fetch payments and create hosted-fields payments (including 3DS/SCA authentication), through typed, validated objects instead of raw arrays.
- **Webhooks** — signature verification and payload parsing, ready to drop into your CMS's own controller and persistence layer.
- **Helpers** — amount rounding, phone number normalization, and PKCE generation: the fiddly details every plugin used to reimplement on its own.
- **A focused exception hierarchy** so your plugin can catch exactly the failure it cares about, not a generic `\Exception`.
- **PHP 7.1+ compatible** — built and tested on modern PHP, but safe to bundle straight into a plugin ZIP running on a legacy merchant server.

Quick look
----------

[](#quick-look)

```
use PayplugUnifiedCore\Auth\OAuth2Client;
use PayplugUnifiedCore\Auth\TokenManager;
use PayplugUnifiedCore\Services\UnifiedApiPaymentService;

$oauth2Client = new OAuth2Client($httpClient, $baseUrl, $redirectUri, $scope, $audience);
$tokenManager = new TokenManager($tokenCache, $oauth2Client);

$paymentService = new UnifiedApiPaymentService($httpClient, $tokenManager, $baseUrl, $clientId, $clientSecret);
$payment = $paymentService->getPayment($paymentId);
```

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

[](#installation)

```
composer require payplug/unified-plugin-core
```

Requirements
------------

[](#requirements)

- PHP 7.1+ at runtime — this library ships bundled directly into a plugin ZIP, not installed via a live `vendor/` on the merchant's server, so it has to run on whatever PHP version the merchant is actually on.
- Docker for local development — no local PHP/Composer install needed, see **Development** below.

Documentation
-------------

[](#documentation)

Full architecture, API reference, and integration guides live on the **[wiki](https://github.com/payplug/unified-plugin-core/wiki)**.

Development
-----------

[](#development)

```
make install
```

builds the dev Docker image and installs dependencies. Other useful targets: `make test`, `make stan`, `make cs-fix`, `make quality`. See `CLAUDE.md` for the full contributor guide.

License
-------

[](#license)

MIT

###  Health Score

44

—

FairBetter than 90% of packages

Maintenance98

Actively maintained with recent releases

Popularity17

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity43

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 93.3% 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 ~2 days

Total

19

Last Release

15d ago

Major Versions

0.1.0 → 1.0.0-rc02026-08-10

### Community

Maintainers

![](https://www.gravatar.com/avatar/028cae0550b0f77b3975c2a91860f21a00640e1639d77cc0a4800df5e853a6cd?d=identicon)[adumont-payplug](/maintainers/adumont-payplug)

---

Top Contributors

[![adumont-payplug](https://avatars.githubusercontent.com/u/265221091?v=4)](https://github.com/adumont-payplug "adumont-payplug (28 commits)")[![ilajili](https://avatars.githubusercontent.com/u/88539515?v=4)](https://github.com/ilajili "ilajili (1 commits)")[![jhoaraupp](https://avatars.githubusercontent.com/u/93672369?v=4)](https://github.com/jhoaraupp "jhoaraupp (1 commits)")

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Code StylePHP CS Fixer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/payplug-unified-plugin-core/health.svg)

```
[![Health](https://phpackages.com/badges/payplug-unified-plugin-core/health.svg)](https://phpackages.com/packages/payplug-unified-plugin-core)
```

###  Alternatives

[giggsey/libphonenumber-for-php

A library for parsing, formatting, storing and validating international phone numbers, a PHP Port of Google's libphonenumber.

5.1k167.1M606](/packages/giggsey-libphonenumber-for-php)[symfony/console

Eases the creation of beautiful and testable command line interfaces

10.0k1.2B15.7k](/packages/symfony-console)[symfony/symfony

The Symfony PHP framework

31.4k87.7M2.3k](/packages/symfony-symfony)[symfony/http-foundation

Defines an object-oriented layer for the HTTP specification

8.6k950.4M7.5k](/packages/symfony-http-foundation)[symfony/var-dumper

Provides mechanisms for walking through any arbitrary PHP variable

7.6k941.6M10.5k](/packages/symfony-var-dumper)[symfony/framework-bundle

Provides a tight integration between Symfony components and the Symfony full-stack framework

3.6k263.2M12.8k](/packages/symfony-framework-bundle)

PHPackages © 2026

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