1. Go to this page and download the library: Download mlocati/payway library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
mlocati / payway example snippets
use MLocati\PayWay\Init\Request;
use MLocati\PayWay\Dictionary\TrType;
use MLocati\PayWay\Dictionary\Currency;
use MLocati\PayWay\Dictionary\Language;
$request = new Request();
$request
// Set your terminal ID
->setTID('YourTerminalID')
// Set an unique identifier (of your choiche) of the transaction
->setShopID('Order987Attempt1')
// Set your customer's email address (a notification email will be sent to this address)
->setShopUserRef('[email protected]')
// The user have to pay, without any back office authorization
->setTrType(TrType::CODE_PURCHASE)
// You can also call setAmountAsCents(12345), which accepts integer numbers instead of floating point numbers
->setAmountAsFloat(123.45)
// Set the currency: for the list of available currencies, use Currency::getDictionary()
->setCurrencyCode(Currency::CODE_EUR)
// Set the language to be displayed to the customer when filling-in the data: for the list of available language, use Language::getDictionary()
->setLangID(Language::CODE_ITALIAN)
// The page where the customer will be redirected to once your customer will have paid
->setNotifyURL('https://your.domain/process-completed?shopID=Order987Attempt1')
// A page to be called in case of technical issues (please remark that if the transaction failed, the customer will be still redirected to the notifyURL page)
->setErrorURL('https://your.domain/whoops')
// An optional page for Server2Server calls: it will receive a POST request with the transaction details
->setCallbackURL('https://your.domain/process-completed')
;
use MLocati\PayWay\Client;
use MLocati\PayWay\Dictionary\RC;
$client = new Client(
'https://your.bank.com/UNI_CG_SERVICES/services',
'Your kSig digital signature' //this is the number you receive from the Bank upon activation
);
$response = $client->init($request);
if ($response->getRc() !== RC::TRANSACTION_OK || $response->isError() || $response->getRedirectURL() === '') {
throw new \Exception('Transaction failed: ' . $response->getErrorDesc());
}
use MLocati\PayWay\Verify\Request;
use MLocati\PayWay\Dictionary\RC;
$shopID = isset($_GET['shopID']) && is_string($_GET['shopID']) ? $_GET['shopID'] : '';
$paymentID = retrieveStoredPaymentID($shopID);
if ($paymentID === '') {
throw new \Exception('Unexpected shopID parameter');
}
$request = new Request();
$request
// Set your terminal ID
->setTID('YourTerminalID')
// Set the unique identifier of the transaction
->setShopID($shopID)
// Set the remote server-assigned payment ID
->setPaymentID($paymentID)
;
//Connect to the bank again
$client = new Client(
'https://your.bank.com/UNI_CG_SERVICES/services',
'Your kSig digital signature' //this is the number you receive from the Bank upon activation
);
$response = $client->verify($request);
if ($response->getRc() !== RC::TRANSACTION_OK || $response->isError()) {
throw new \Exception('Transaction failed: ' . $response->getErrorDesc());
}
use MLocati\PayWay\Server2Server\RequestData;
$request = Server2Server\RequestData::createFromGlobals();
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.