PHP code example of getloy / getloy-php
1. Go to this page and download the library: Download getloy/getloy-php 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/ */
getloy / getloy-php example snippets
$gateway = new \Getloy\Gateway('YOUR GETLOY TOKEN');
$gateway->registerPaymentProvider(
\Getloy\PaymentProviders::PIPAY_KH,
[
'testMode' => true,
'merchantId' => 'YOUR PIPAY MERCHANT ID',
'storeId' => 'YOUR PIPAY STORE ID',
'deviceId' => 'YOUR PIPAY DEVICE ID',
]
);
$order = new \Getloy\TransactionDetails\OrderDetails(99.99, 'USD');
$payee = new \Getloy\TransactionDetails\PayeeDetails('John', 'Doe', '[email protected] ', '012345678');
echo $gateway->widgetHtml(
'ORDER-123',
\Getloy\PaymentProviders::PIPAY_KH,
$order,
$payee,
'https://mysite.com/payment-callback.php',
'https://mysite.com/pages/payment-complete/'
'https://mysite.com/pages/payment-failed/'
);
$orderItems = new \Getloy\TransactionDetails\OrderItems();
$orderItems->add(
new \Getloy\TransactionDetails\OrderItem('Item 1', 2, 19.98, 9.99)
);
$orderItems->add(
new \Getloy\TransactionDetails\OrderItem('Item 2', 1, 12.50, 12.50)
);
$order = new \Getloy\TransactionDetails\OrderDetails(32.48, 'USD', null, $orderItems);
$gateway = new \Getloy\Gateway('YOUR GETLOY TOKEN');
if ('POST' !== $_SERVER['REQUEST_METHOD']) {
// unsupported request type
return;
}
try {
$callbackDetails = $gateway->readCallbackBodyAndParse();
} catch (Exception $exception) {
// log invalid callback
return;
}
if (Getloy\CallbackDetails::STATUS_SUCCESS !== $callbackDetails->status()) {
// log invalid transaction status
return;
}
// look up the order details using the transaction ID
$order = lookupOrder($callbackDetails->transactionId());
if (
abs($order->amountPaid - $callbackDetails->amountPaid()) > 0.01
|| $order->currency !== $callbackDetails->currency()
) {
// log transaction amount/currency mismatch
return;
}
// update the order status to paid
$order->updateStatus('paid');
bash
composer