PHPackages                             wikimedia/smash-pig - 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. wikimedia/smash-pig

ActiveLibrary[Payment Processing](/categories/payments)

wikimedia/smash-pig
===================

The open source PHP flexible payments library and frontend/backend mediator.

v1.2.3.11(1mo ago)630.1k↓29.2%41GPL-2.0-or-laterPHPPHP &gt;=8.2

Since Sep 11Pushed 1mo ago9 watchersCompare

[ Source](https://github.com/wikimedia/wikimedia-fundraising-SmashPig)[ Packagist](https://packagist.org/packages/wikimedia/smash-pig)[ Docs](https://www.mediawiki.org/wiki/Fundraising_Tech/SmashPig)[ RSS](/packages/wikimedia-smash-pig/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (32)Versions (356)Used By (1)

```
SmashPig payments library

This project uses Composer [https://getcomposer.org] to manage dependencies.
Upon first install and any upgrade please run composer install.

SmashPig uses two types of configuration files.

Global configuration files define settings shared across all payment providers,
including database and queue settings. Default global configuration values are
located in config/main.yaml. These are overridden by values in
/etc/smashpig/main.yaml, then by values in ~/.smashpig/main.yaml.

Provider configurations files contain settings which may differ between payment
providers, such as account credentials and HTTP request settings. Defaults are
in config/provider-defaults.yaml. They are overridden in a similar cascade by
the same file in /etc/smashpig and ~/.smashpig, then overridden by settings in
subdirectories named for the relevant payment processor. So for example, to
enable debug logging only for paypal, you would add the 'logging:' top-level
key to /etc/smashpig/paypal/main.yaml, then 'log-level: 7' nested under that.

If you need to deploy provider configuration files in a separate directory from
the global /etc/smashpig/main.yaml, set the provider-configuration-directory
key in that global configuration file to point to your alternate directory.

Command-line maintenance scripts have some common options:
    --help
    --memory-limit overrides the limit specified in php.ini
    --config-path specifies a top-priority override configuration file path
    --config-node specifies which processor-specific configuration to use

-- 3rd Party Licences --
The favicon is licenced under CC Attribution. http://creativecommons.org/licenses/by/3.0/legalcode
It was obtained from http://www.iconspedia.com/icon/piggy-bank-icon-37074.html and then modified to fit the favicon
format. The original author was DesignContest, http://www.designcontest.com/.
```

###  Health Score

66

—

FairBetter than 99% of packages

Maintenance91

Actively maintained with recent releases

Popularity35

Limited adoption so far

Community29

Small or concentrated contributor base

Maturity95

Battle-tested with a long release history

 Bus Factor1

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

Recently: every ~0 days

Total

354

Last Release

52d ago

Major Versions

v0.9.12.7 → v1.0.02025-11-21

PHP version history (8 changes)0.5.0PHP &gt;=5.3.3

v0.5.1PHP &gt;=5.4

v0.5.3PHP &gt;=5.6

v0.6.0PHP &gt;=7.0

v0.7.0PHP &gt;=7.3

v0.8.7PHP &gt;=7.4

v0.9.0PHP &gt;=8.0

v1.2.3.3PHP &gt;=8.2

### Community

Maintainers

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

![](https://www.gravatar.com/avatar/716c86d71cbf921e7912a505f89d799de398fc0a3af0bd4c8862834b2d642bd7?d=identicon)[wikimedia](/maintainers/wikimedia)

![](https://www.gravatar.com/avatar/8e7e01be46c83d46e28910e48c66549a1dee319f219eae366f6f8f0cb4f2c7b6?d=identicon)[ejegg](/maintainers/ejegg)

![](https://www.gravatar.com/avatar/814c0148b13653c4ef03b3c2367da7c5919f202785ff224964c20f6b566603d5?d=identicon)[jackgleeson](/maintainers/jackgleeson)

![](https://www.gravatar.com/avatar/5f962ad00fe46ceb7f263c5341eb94aae520d174804c1827fc288f0cebca3e9a?d=identicon)[XenoRyet](/maintainers/XenoRyet)

![](https://www.gravatar.com/avatar/4f26c6bccc9e5cedfae15eedd08d0d589ebdb5748038efe1c82f90f306208ff9?d=identicon)[mepps](/maintainers/mepps)

![](https://www.gravatar.com/avatar/0faa9b51a636c6429ab9b835fbf8c465ec4b52866f7e2e25667611d94ffdff61?d=identicon)[cstone](/maintainers/cstone)

![](https://www.gravatar.com/avatar/536eb3483cb92a8e325481f03d4b24792350de6d81b41e0fe3ba5e2a98707fe6?d=identicon)[andyrussg](/maintainers/andyrussg)

![](https://www.gravatar.com/avatar/63148d77bd8b6dbd601e55cd42ff3b961e097af3d753247d040efdc5f2b3437b?d=identicon)[damilare](/maintainers/damilare)

![](https://www.gravatar.com/avatar/2e1deb74b67316d03c4894e77eefbdf11a7c8c6c6f916d40d1acd0a4fc3c834e?d=identicon)[wfan](/maintainers/wfan)

---

Top Contributors

[![ejegg](https://avatars.githubusercontent.com/u/1018606?v=4)](https://github.com/ejegg "ejegg (895 commits)")[![jackgleeson](https://avatars.githubusercontent.com/u/8114138?v=4)](https://github.com/jackgleeson "jackgleeson (249 commits)")[![eileenmcnaughton](https://avatars.githubusercontent.com/u/336308?v=4)](https://github.com/eileenmcnaughton "eileenmcnaughton (159 commits)")[![Damilare1](https://avatars.githubusercontent.com/u/29501113?v=4)](https://github.com/Damilare1 "Damilare1 (150 commits)")[![wikimediaWfan](https://avatars.githubusercontent.com/u/96108825?v=4)](https://github.com/wikimediaWfan "wikimediaWfan (110 commits)")[![ceec](https://avatars.githubusercontent.com/u/1641243?v=4)](https://github.com/ceec "ceec (83 commits)")[![caseydentinger](https://avatars.githubusercontent.com/u/143348?v=4)](https://github.com/caseydentinger "caseydentinger (36 commits)")[![mattofak](https://avatars.githubusercontent.com/u/1670010?v=4)](https://github.com/mattofak "mattofak (29 commits)")[![AndrewGreen](https://avatars.githubusercontent.com/u/857492?v=4)](https://github.com/AndrewGreen "AndrewGreen (7 commits)")[![FanWenjun](https://avatars.githubusercontent.com/u/13824597?v=4)](https://github.com/FanWenjun "FanWenjun (5 commits)")[![umherirrender](https://avatars.githubusercontent.com/u/1174884?v=4)](https://github.com/umherirrender "umherirrender (3 commits)")[![hashar](https://avatars.githubusercontent.com/u/281689?v=4)](https://github.com/hashar "hashar (1 commits)")

---

Tags

paymentsdonations

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/wikimedia-smash-pig/health.svg)

```
[![Health](https://phpackages.com/badges/wikimedia-smash-pig/health.svg)](https://phpackages.com/packages/wikimedia-smash-pig)
```

###  Alternatives

[shopware/platform

The Shopware e-commerce core

3.3k1.5M3](/packages/shopware-platform)[sylius/sylius

E-Commerce platform for PHP, based on Symfony framework.

8.4k5.6M651](/packages/sylius-sylius)[nelmio/api-doc-bundle

Generates documentation for your REST API from attributes

2.3k63.6M233](/packages/nelmio-api-doc-bundle)[sulu/sulu

Core framework that implements the functionality of the Sulu content management system

1.3k1.3M152](/packages/sulu-sulu)[simplesamlphp/simplesamlphp

A PHP implementation of a SAML 2.0 service provider and identity provider.

1.1k12.4M193](/packages/simplesamlphp-simplesamlphp)[contao/core-bundle

Contao Open Source CMS

1231.6M2.4k](/packages/contao-core-bundle)

PHPackages © 2026

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