yazzzon/mps-payment-library

library helps to integrate with MPS Payment Gateway

Maintainers

Package info

github.com/yazankaakeh/mps-payment-gateway

pkg:composer/yazzzon/mps-payment-library

Statistics

Installs: 0

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

dev-main 2025-07-30 09:53 UTC

This package is auto-updated.

Last update: 2026-03-29 01:13:15 UTC


README

A lightweight, secure, and easy-to-use PHP SDK for integrating with the MPS Payment Gateway.
This package allows you to authenticate using client credentials and create payments with full control and validation.

๐Ÿš€ Features

  • ๐ŸŒ Token-based authentication (Client Credentials)
  • ๐Ÿงพ Secure payment creation
  • โœ… Strong data validation with typed request DTO
  • โš™๏ธ Built with GuzzleHTTP
  • ๐Ÿ“ฆ PSR-4 autoloaded and Composer-ready

๐Ÿงฑ Installation

Install via Composer:

composer require yazzzon/mps-payment-library

Then run:

composer update

โš™๏ธ Environment Setup

Create a .env file in your project root:

PAYMENT_BASE_URL=https://your-gateway.com
PAYMENT_CLIENT_ID=your-client-id
PAYMENT_CLIENT_SECRET=your-client-secret

๐Ÿง  Usage

1. Authenticate

use Yazan\MpsLibrary\MpsPayment;

$gateway = new MpsPayment(); // values loaded from .env

if ($gateway->authenticate()) {
    echo "Authenticated successfully!";
} else {
    echo "Authentication failed!";
}

2. Create a Payment

use Yazan\MpsLibrary\DTO\PaymentRequest;

$request = new PaymentRequest(
    product: 'Pro Subscription',
    transactionFee: 2.5,
    recipientName: 'Zahraa Ali',
    recipientPhone: '07701234567',
    recipientEmail: 'zahraa@example.com',
    cardHolder: 'Zahraa Ali',
    cardNumber: '4111111111111111',
    cardExpiryDate: '12/26',
    cvc2: '123'
);

$response = $gateway->createPayment($request);
print_r($response);

๐Ÿ” All fields are validated before sending the request.

๐Ÿ“œ License

This project is licensed under the MIT License.

You are free to use, modify, and distribute this software with attribution.
See the full license text in the LICENSE file.

๐Ÿ‘ค Author

Yazan Kaakeh
๐Ÿ“ง yazanka187@gmail.com
๐Ÿ”— GitHub: yazankaakeh

๐Ÿค Contributions

Contributions, issues, and feature requests are welcome!
Please feel free to fork the repository and submit a pull request.

If you find a bug or have a suggestion, please open an issue on GitHub.

Let's build better tools together ๐Ÿš€