tpay-com/tpay-php

Tpay.com library

2.4.5 2024-04-09 09:14 UTC

README

Library for all payment methods available in Tpay.

Latest stable version PHP version License CI status Type coverage

Polish version 🇵🇱 wersja polska

Installation

Install via Composer:

composer require tpay-com/tpay-php

Install via Git over SSH:

git clone git@github.com:tpay-com/tpay-php.git

Install via Git over HTTPS:

git clone https://github.com/tpay-com/tpay-php.git

Manual download: https://github.com/tpay-com/tpay-php/archive/master.zip

Configuration

The only thing you need to do is to set your API access data via $this-> (see examples). You can generate access keys in Tpay's merchant panel.

The loader.php file handles all required class loading, so you can include this file to any file you are editing. (remember to configure your current working path correctly).

All methods described in Tpay documentation can be easily executed by extending required class in main src directory (see examples).

Basic Payments and bank selection forms

Example of usages: basic, bank selection HTML form, bank selection API form, BLIK form.

Transaction API / create, get, refund, report

Example of usages: create transaction, refund transaction, refund transaction status.

Card Basic / Card On-Site

Example of usages: card basic form, card on-site gateway, card payment links builder, card on-site gateway with saved cards.

Logs

Library has own logging system to save all confirmations and notifications sent by Tpay.com server, outgoing requests and exceptions. Be sure that file src/Logs directory is writable and add rule to Apache .htaccess or NGINX to deny access to this area from browser. The log files are created for each day separately under Logs directory.

The logging is enabled by default, but you can disable this feature with:

Logger::disableLogging();

You can also set your own logging path by this command:

Logger::setLogPath('/my/own/path/Logs/');

You can also set you own Logger by this command it has to be compatible with Psr\Log\LoggerInterface:

Logger::setLogger(new CustomLogger());

The logs file names will be assigned automatically.

Custom templates path

You can set your own templates path, so you can copy and modify the phtml template files from this library.

Util::$customTemplateDirectory = '/my/own/templates/path/';

Language

Currently, the library supports two languages (English and Polish). Default language is English. Changing language example:

// All Tpay class constructors load Lang class
$tpay = new BankSelectionExample();

// After this line all static messages (input labels, buttons titles etc.) will be displayed in Polish
(new Util())->setLanguage('pl');

// If you want to access translations manually, use:
$language = new Lang();
$language->setLang('pl'); // for setting language
$language->l('pay'); // to echo translated key

License

This library is released under the MIT License, but uses third party libraries that are distributed under their own terms (see LICENSE-3RD-PARTY.md).