PHPackages                             porta/billing-guzzle - 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. [HTTP &amp; Networking](/categories/http)
4. /
5. porta/billing-guzzle

ActiveLibrary[HTTP &amp; Networking](/categories/http)

porta/billing-guzzle
====================

PortaOne billing and ESPF API wrappers, Guzzle bindings

0.1.1(2y ago)013MITPHPPHP ^7.4|^8.0|^8.1|^8.2

Since Jun 21Pushed 2y ago1 watchersCompare

[ Source](https://github.com/portabilling/billing-guzzle)[ Packagist](https://packagist.org/packages/porta/billing-guzzle)[ Docs](https://github.com/portabilling/billing-guzzle)[ RSS](/packages/porta-billing-guzzle/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (3)Versions (2)Used By (0)

PortaOne Billing API and ESPF wrapper for PHP, with Guzzle
==========================================================

[](#portaone-billing-api-and-espf-wrapper-for-php-with-guzzle)

Purpose
-------

[](#purpose)

This package includes Guzzle bindings for [porta/billing API wrapper](https://github.com/portabilling/billing) library and intended to make the billing lib easy to use with Guzzle. Please, refer to main package docs on use of the API wrapper. Just use `ConfigGuzzle` class as a configuration object instead of `Config`.

Using Guzzle allows faster high-volume concurent calls and async calls.

With this package library will use Guzzle PSR-7 implementation and client, these dependencies are hardcoded into ConfigGuzzle class. You still need to supply [PSR-16](https://www.php-fig.org/psr/psr-16) SimpleCache object to save session data and provide session persistance. Very basic implementations packaged into main lib, enough to handle session storage in not too high load ineronment.

Usage
-----

[](#usage)

Start with [usage example](https://github.com/portabilling/billing-guzzle/blob/master/examples/BillingUsage.php), check [phpDoc](https://portabilling.github.io/billing-guzzle/).

However, the primary source of usage information is the core [porta/billing](https://github.com/portabilling/billing) package, please refer to it's docs.

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

[](#installation)

In the Composer storage. Just add proper require section:

```
    "require": {
        "porta/billing-guzzle": "^0.1"
    }

```

Please, review the [changelog](https://github.com/portabilling/billing/blob/master/CHANGELOG.MD) before to change used version.

Dependencies
------------

[](#dependencies)

Composer dependencies:

- php: ^7.4|^8.0|^8.1|^8.2
- porta/billing: ^0.1
- guzzlehttp/guzzle": ^7.2

Mind no need to put core lib in the dependency separately, it will load by composer.

Testing
-------

[](#testing)

Tested with PHPUnit 9.6 on php 7.4 to 8.2, 100% coverage, which does not mean everything will work as intended.

Current testing and compatibility status check on [Github flows](https://github.com/portabilling/billing-guzzle/actions/workflows/Compatibility.yml)

To test, install in dev mode and use:

- `composer test` command from library root for run all standard modular tests
- `composer livetest` to run a test against live PortaOne billing server if you have one available.

For live testing run `livetest` once and it will create config file templeate. Then edit the file to provide host, username and password or token and run `livetest` again. Do not forget to remove the config file after tests!

Manualy tested and used with PortaBilling release MR100.

###  Health Score

21

—

LowBetter than 19% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity5

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity46

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

Unknown

Total

1

Last Release

1053d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/51fb7e1bfe1a741b842ccaffe58a95229f1afa531676dff7d14e61cda27a9ae7?d=identicon)[pavlyuts](/maintainers/pavlyuts)

---

Top Contributors

[![pavlyuts](https://avatars.githubusercontent.com/u/6569739?v=4)](https://github.com/pavlyuts "pavlyuts (11 commits)")

---

Tags

api-clientbillingguzzlehttpportaoneportastartapiGuzzlebillingportaoneportastart

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/porta-billing-guzzle/health.svg)

```
[![Health](https://phpackages.com/badges/porta-billing-guzzle/health.svg)](https://phpackages.com/packages/porta-billing-guzzle)
```

###  Alternatives

[antoinelemaire/aircall-php

Aircall API client built on top of Guzzle 6

1049.6k](/packages/antoinelemaire-aircall-php)

PHPackages © 2026

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