dev-master
9999999-devAmeria Bank Package
MIT
The Requires
by Hayk Karapetyan
Ameria Bank Package
Ameriabank driver for the Omnipay Laravel payment processing library, (*1)
Omnipay is a framework agnostic, multi-gateway payment processing library for PHP 5.5+. This package implements iDram support for Omnipay., (*2)
Omnipay is installed via Composer. To install, simply add it
to your composer.json
file:, (*3)
{ "require": { "haykkarapetyan/omnipay-ameriabank": "dev-master" } }
And run composer to update your dependencies:, (*4)
composer update
Or you can simply run, (*5)
composer require haykkarapetyan/omnipay-ameriabank
use Omnipay\Omnipay;
$gateway = Omnipay::create('Ameriabank'); $gateway->setClientId('Client_ID'); // Shoud be your Ameriabank Client ID (e.g. 7e7ef8ff-6300-4a78-bb31-3ad1a8c67d5f) $gateway->setUsername('Username'); // Should be your Ameria Username $gateway->setPassword('Password'); // Should be your Ameria password $gateway->setOpaque('Opaque'); // Is not mandatory field and used as additional information during information exchange $gateway->setOrderId('Order_ID'); // Is randomly generated ID. Integer which is generated by using system local time e.g. time() $gateway->setCurrency('AMD'); // Uses national currency e.g. AMD, USD, EUR $gateway->setTestMode(false); // Boolean and can be only true or false $payment = $gateway->purchase([ 'amount' => '100', 'returnUrl' => 'http://example.com/xxx', // The URL to which you will be redirected after completing the purchase. Please also refer to poin 4 below 'description' => 'Description ...' ] )->createPaymentRequest();
if (empty($payment->GetPaymentIDResult->PaymentID) || $payment->GetPaymentIDResult->Respmessage != 'OK') { return $payment->GetPaymentIDResult; // in case if response was negative (rejected). } else { $gateway->setPaymentId($payment->GetPaymentIDResult->PaymentID); //if positive, call receive payment ID $gateway->setClientUrl("http://example.com/ameriarequestframe.aspx"); // Setting /ameriarequestframe.aspx inside your site $gateway->setLanguage('en'); $response = $gateway->purchase()->send(); // generate unique URL return [ 'redirectUrl' => $response->getRedirectUrl() // redirection to previously generated unique URL ]; }
$gateway = Omnipay::create('Ameriabank'); $gateway->setClientId('Client_ID'); // Shoud be your Ameriabank Client ID (e.g. 7e7ef8ff-6300-4a78-bb31-3ad1a8c67d5f) $gateway->setUsername('Username'); // Should be your Ameria Username $gateway->setPassword('Password'); // Should be your Ameria password $gateway->setOrderId('Order_ID'); // Is randomly generated ID. Integer which is generated by using system local time e.g. time() $gateway->setTestMode(false); // Boolean and can be only true or false $$webService = $gateway->completePurchase([ 'amount' => '100' ] )->getPaymentFields(); if ($paymentFields = $webService->GetPaymentFieldsResult) { // Your logic return $paymentFields; } return $webService; // Return error text in case of connection errors
For testing puposes you should use only AMD currency and charge not more than 10 AMD, (*6)
For general usage instructions, please see the main Omnipay repository., (*7)
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, or better yet, fork the library and submit a pull request., (*10)
Ameria Bank Package
MIT