husail / movingpay-sdk
MovinPay PHP SDK
Requires
- php: ^8.1
- ext-json: *
- cuyz/valinor: ^1.14
- php-http/client-common: ^2.7
- php-http/discovery: ^1.19
- psr/http-client: ^1.0
- psr/http-factory: ^1.0
- psr/http-message: ^1.0|^2.0
- psr/log: ^1.0|^2.0|^3.0
Requires (Dev)
- ext-pcntl: *
- friendsofphp/php-cs-fixer: ^3.60
- laminas/laminas-diactoros: ^3.3
- orchestra/testbench: 9.x-dev
- php-http/curl-client: ^2.3
- php-http/mock-client: ^1.6
- phpstan/phpstan: ^2.1.2
- symfony/var-dumper: ^7.0
This package is auto-updated.
Last update: 2025-02-14 22:21:19 UTC
README
The MovingPay PHP SDK allows integration with the MovingPay API in any PHP project. It also provides Facades and a Service Provider for enhanced Laravel integration.
📦 Installation
composer require husail/movingpay-sdk
🔧 Usage Example
For Non-Laravel PHP Projects:
Basic Usage:
require 'vendor/autoload.php'; use Husail\MovingPay\Client; use Husail\MovingPay\Authentication; $client = new Client( new Authentication(token: 'your-token', customerId: 'your-customer-id') ); $response = $client->estabelecimento->all(); if ($response->successful()) { // Handle the response }
With Logging:
require 'vendor/autoload.php'; use Monolog\Logger; use Husail\MovingPay\Client; use Monolog\Handler\StreamHandler; use Husail\MovingPay\Authentication; use Husail\MovingPay\HttpClient\Message\Formatter\SimpleFormatter; $logger = new Logger('my_logger'); $logger->pushHandler(new StreamHandler(__DIR__ . '/movingpay.log')); $client = new Client( new Authentication(token: 'your-token', customerId: 'your-customer-id'), logger: $logger, formatter: new SimpleFormatter(true) // 'true' enables pretty-printed JSON logs ); $response = $client->estabelecimento->all(); if ($response->successful()) { // Handle the response }
For Laravel:
-
Publish the configuration:
php artisan vendor:publish --provider="Husail\MovingPay\MovingPayServiceProvider"
-
Add environment variables in your
.env
file:MOVINGPAY_TOKEN=your-token MOVINGPAY_CUSTOMER_ID=your-customer-id # Optional logging settings: MOVINGPAY_LOG_ENABLED=false # Enable or disable request/response logging MOVINGPAY_LOG_FORMATTER_EXPANDED=false # Pretty-print JSON in logs if enabled
-
Use the Facade to interact with the API:
use MovingPay; $response = MovingPay::client()->estabelecimento->all(); if ($response->successful()) { // Handle the response }
-
Configure Logging
When
MOVINGPAY_LOG_ENABLED
is set totrue
, the SDK logs request and response details via Laravel's default logging channel. By default, logs output compact JSON. If you want the JSON output to be more readable (pretty-printed), setMOVINGPAY_LOG_FORMATTER_EXPANDED
totrue
.
🤝 Contributing
We welcome contributions! Feel free to submit issues or pull requests to help improve the SDK.
📜 License
Licensed under the MIT License.