ČSOB
This is small Nette Framework wrapper for ČSOB payment gateway., (*1)
Installation
The easiest way to install library is via Composer., (*2)
$ composer require lzaplata/csobpaymentgateway: dev-master
or edit composer.json
in your project, (*3)
"require": {
"lzaplata/csobpaymentgateway": "dev-master"
}
You have to register the library as extension in config.neon
file., (*4)
extensions:
csobPaymentGateway: LZaplata\CsobPaymentGateway\DI\Extension
Now you can set parameters..., (*5)
csobPaymentGateway:
merchantId : *
sandbox : true
currency : CZK
privateKey:
path : *
password : *
publicKey : *
...and autowire library to presenter, (*6)
use LZaplata\CsobPaymentGateway\Service;
/** @var Service @inject */
public $csobPaymentGateway;
Usage
Create cart instance and add items., (*7)
$cart = new Cart();
$cart->setItem(
$name,
$quantity,
$amount, // item price * quantity in lowest currency unit (1 CZK = 100)
$description
);
Create payment., (*8)
$payment = $this->csobPaymentGateway->createPayment(
$orderNo,
$totalAmount, // payment price + transport price in lowest currency unit (1 CZK = 100)
$returnUrl,
$cart, // cart instace from step above
$payOperation // type of payment operation - default Payment::NORMAL_PAYMENT
);
Send payment., (*9)
$response = $payment->send();
Get payment ID and save it to database., (*10)
$payId = $response->getPayId();
Redirect to payment gateway., (*11)
$this->sendResponse($response->getRedirectResponse());
...or get redirect url., (*12)
$response->getRedirectUrl();
After return from gateway
Get response and check if payment was successful, (*13)
$response = $this->csobPaymentGateway->getReturnResponse();
if ($response->isOk()) {
// do something
}
Reverse payment
Sometimes you must reverse your payment, (*14)
$response = $this->csobPaymentGateway->reversePayment($payId);
if ($response->isReversed()) {
// do something
}