dev-master
9999999-devWirecard gateway for Omnipay payment processing library
MIT
The Requires
The Development Requires
by Tamas Erdelyi
payment pay gateway wirecard merchant purchase omnipay
Wallogit.com
2017 © Pedro Peláez
Wirecard gateway for Omnipay payment processing library
Wirecard gateway for Omnipay payment processing library., (*1)
This library only supports Wirecard Checkout Page payment yet. You can read more about the Checkout Page solution here., (*2)
Gateway is installed via Composer:, (*3)
composer require terdelyi/omnipay-wirecard
or add it to your composer.json file:, (*4)
"require": {
"terdelyi/omnipay-wirecard": "dev-master"
}
It will also install the Omnipay package if it's not available in the autoload., (*5)
The following gateways are provided by this package:, (*6)
For general usage instructions, please see the main Omnipay repository., (*7)
Firstly create the gateway:, (*8)
$gateway = Omnipay\Omnipay::create('Wirecard_Checkout');
$gateway->setCustomerId('D200001'); // this is a valid demo customer id
$gateway->setSecret('B8AKTPWBRMNBV455FG6M2DANE99WU2'); // this is also valid for developing
Secondly prepare the required parameters:, (*9)
$parameters = [
'paymentType' => 'CCARD',
'shopId' => '1234', // optional
'currency' => 'EUR',
'description' => 'Awesome Product',
'language' => 'EN',
'successUrl' => 'http://your-website.com/response?type=success',
'failureUrl' => 'http://your-website.com/response?type=failure',
'cancelUrl' => http://your-website.com/response?type=cancel,
'serviceUrl' => http://your-website.com/response?type=service,
'amount' => '100.00' // must be contains decimals
];
If any required parameter is missing you will get an InvalidRequestException when you create the request:, (*10)
$request = $gateway->purchase($parameters);
Send the request:, (*11)
$response = $request->send();
Lastly handle the response:, (*12)
if ($response->isRedirect()) {
$response->redirect(); // redirect the browser to the Wirecard Checkout Page
} else {
echo 'Error: '.$response->getMessage();
}
If you would like to handle return urls from the Checkout page use this on your response page:, (*13)
$gateway = Omnipay\Omnipay::create('Wirecard_Checkout');
$gateway->setCustomerId('D200001');
$gateway->setSecret('B8AKTPWBRMNBV455FG6M2DANE99WU2');
$request = $gateway->completePurchase();
$response = $request->send();
if ($response->isSuccessful()) {
echo 'Succesful payment!';
} else if ($response->isCanceled()) {
echo 'Payment has been cancelled.';
} else if ($response->isPending()) {
echo 'Your payment is in pending status.';
} else {
echo $response->getMessage();
}
The getMessage() and getData() methods are available in the response object for further actions., (*14)
Payment type is highly depended on your contract with Wirecard, but these are the currently available values:, (*15)
| Type | Description |
|---|---|
| BANCONTACT_MISTERCASH | Bancontact/Mister Cash |
| C2P | CLICK2PAY |
| CCARD | Credit Card |
| CCARD-MOTO | Credit Card Mail Order, Telephone Order |
| EKONTO | eKonto |
| SEPA-DD | SEPA Direct Debit |
| EPS | EPS |
| GIROPAY | giropay |
| IDL | iDEAL |
| INSTALLMENT | Installment |
| INVOICE | Invoice |
| MAESTRO | Maestro SecureCode |
| MONETA | moneta.ru |
| MPASS | mpass |
| PRZELEWY24 | Przelewy24 |
| PAYPAL | PayPal |
| PBX | Paybox |
| POLI | POLi payments |
| PSC | Paysafecard |
| QUICK | @Quick |
| SKRILLDIRECT | Skrill Direct |
| SKRILLWALLET | Skrill Digital Wallet |
| SOFORTUEBERWEISUNG | sofort.com |
| TRUSTLY | Trustly |
Wirecard gateway for Omnipay payment processing library
MIT
payment pay gateway wirecard merchant purchase omnipay