omnipay-payeer
, (*1)
Payeer gateway for Omnipay payment processing library., (*2)
Omnipay is a framework agnostic, multi-gateway payment
processing library for PHP 5.3+. This package implements Advcash support for Omnipay., (*3)
Installation
Omnipay is installed via Composer. To install, simply add it
to your composer.json file:, (*4)
{
"require": {
"aleksandrzhiliaev/omnipay-payeer": "*"
}
}
And run composer to update your dependencies:, (*5)
$ curl -s http://getcomposer.org/installer | php
$ php composer.phar update
Basic Usage
The following gateways are provided by this package:, (*6)
For general usage instructions, please see the main Omnipay
repository., (*7)
Example
- Purchase:
$gateway = Omnipay::create('Payeer');
$gateway->setAccount('P...');
$gateway->setShopId('');
$gateway->setShopSecret('');
$gateway->setCurrency('USD');
$gateway->setApiId('');
$gateway->setApiSecret('');
$response = $gateway->purchase([
'amount' => '0.1',
'currency' => 'USD',
'transactionId' => time(),
'description' => 'Order # 123',
'cancelUrl' => 'https://example.com',
'returnUrl' => 'https://example.com',
'notifyUrl' => 'https://example.com'
])->send();
if ($response->isSuccessful()) {
// success
} elseif ($response->isRedirect()) {
# Generate form to do payment
$hiddenFields = '';
foreach ($response->getRedirectData() as $key => $value) {
$hiddenFields .= sprintf(
'<input type="hidden" name="%1$s" value="%2$s" />',
htmlentities($key, ENT_QUOTES, 'UTF-8', false),
htmlentities($value, ENT_QUOTES, 'UTF-8', false)
)."\n";
}
$output = '
';
$output = sprintf(
$output,
htmlentities($response->getRedirectUrl(), ENT_QUOTES, 'UTF-8', false),
$hiddenFields
);
echo $output;
# End of generating form
} else {
echo $response->getMessage();
}
- Validate webhook
try {
$response = $gateway->completePurchase()->send();
$transactionId = $response->getTransactionId();
$amount = $response->getAmount();
$success = $response->isSuccessful();
$currency = $response->getCurrency();
if ($success) {
// success
}
} catch (\Exception $e) {
// check $e->getMessage()
}
- Do refund
try {
$response = $gateway->refund(
[
'payeeAccount' => '',
'amount' => 0.1,
'description' => 'Testing payeer',
'currency' => 'USD',
]
)->send();
if ($response->isSuccessful()) {
// success
} else {
// check $response->getMessage();
}
} catch (\Exception $e) {
// check $e->getMessage();
}
Support
If you are having general issues with Omnipay, we suggest posting on
Stack Overflow. Be sure to add the
omnipay tag so it can be easily found., (*8)
If you want to keep up to date with release anouncements, discuss ideas for the project,
or ask more detailed questions, there is also a mailing list which
you can subscribe to., (*9)
If you believe you have found a bug, please report it using the GitHub issue tracker., (*10)