pavlyuts / porta-api
PortaOne billing API wrapper
Requires
- php: ^7.2
- guzzlehttp/guzzle: ^7.0
Requires (Dev)
- firebase/php-jwt: *
- phpunit/phpunit: ^8.5
README
Purpose
This package intended to simplify communication to PortaOne billing system while creating user portal applications, integration and provisioning code. Build for composer with PSR-4 autoload.
Classes:
- Billing class wrapping PortaBilling API. Used to create, read, change and remove objects in the billing system.
- ESPF class wrapping ESPF API
Please, refer project Wiki for details and usage example.
Installation
In the Composer storage. Just add proper require section:
"require": {
"pavlyuts/porta-api": "^0.1"
}
It is a good idea to fix the version you use. Don't use next version without review, I can't promose backward compatibility even will try to keep it. Please, review the changelog before to change used version.
Dependencies
- php: ^7.2
- guzzlehttp/guzzle: ^7.0
PortaOne documentation
Your API documentatnin is always available on your PortaBilling SIP server, same host as billing admin interface, at /doc/api/
path.
Please, also refer to PortaOne documentation. Mind your release!
Testing
Tested with PHPUnit 8.5 on php 7.2 and 7.4, up to 100% coverage, which does not mean everything will work as intended.
To test, install in dev mode and use:
composer test
command from library root for run all standard modular testscomposer livetest
to run a test against live PortaBilling server.
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.