Version Notes
Adyen Payment 2.5.0
See release note:
https://github.com/Adyen/magento/releases/tag/2.5.0
Download this release
Release Info
Developer | Adyen |
Extension | Adyen_Payment |
Version | 2.5.0 |
Comparing to | |
See all releases |
Code changes from version 2.4.0 to 2.5.0
- app/code/community/Adyen/Payment/.DS_Store +0 -0
- app/code/community/Adyen/Payment/Block/Adminhtml/System/Config/Fieldset/Payment.php +54 -0
- app/code/community/Adyen/Payment/Block/Form/Cc.php +10 -1
- app/code/community/Adyen/Payment/Block/Redirect.php +5 -5
- app/code/community/Adyen/Payment/Block/SavedCards.php +55 -0
- app/code/community/Adyen/Payment/Exception.php +1 -1
- app/code/community/Adyen/Payment/Helper/Data.php +51 -7
- app/code/community/Adyen/Payment/Model/Adyen/Abstract.php +45 -7
- app/code/community/Adyen/Payment/Model/Adyen/Cc.php +15 -5
- app/code/community/Adyen/Payment/Model/Adyen/Data/Classmap.php +4 -4
- app/code/community/Adyen/Payment/Model/Adyen/Data/NotificationClassmap.php +1 -1
- app/code/community/Adyen/Payment/Model/Adyen/Data/PaymentRequest.php +26 -9
- app/code/community/Adyen/Payment/Model/Adyen/Hpp.php +32 -19
- app/code/community/Adyen/Payment/Model/Adyen/Ideal.php +6 -2
- app/code/community/Adyen/Payment/Model/Adyen/Oneclick.php +15 -0
- app/code/community/Adyen/Payment/Model/Adyen/Openinvoice.php +56 -20
- app/code/community/Adyen/Payment/Model/Adyen/PayByMail.php +1 -1
- app/code/community/Adyen/Payment/Model/Adyen/Pos.php +1 -1
- app/code/community/Adyen/Payment/Model/Billing/Agreement.php +15 -4
- app/code/community/Adyen/Payment/Model/Billing/Agreement/Observer.php +5 -7
- app/code/community/Adyen/Payment/Model/Cronjob.php +4 -8
- app/code/community/Adyen/Payment/Model/GetPosOrderStatus.php +3 -3
- app/code/community/Adyen/Payment/Model/Observer.php +5 -3
- app/code/community/Adyen/Payment/Model/ProcessNotification.php +227 -164
- app/code/community/Adyen/Payment/Model/System/Config/Backend/Trim.php +33 -0
- app/code/community/Adyen/Payment/Model/ValidateResultUrl.php +0 -11
- app/code/community/Adyen/Payment/controllers/Adminhtml/Adyen/Event/QueueController.php +37 -1
- app/code/community/Adyen/Payment/controllers/ProcessController.php +28 -26
- app/code/community/Adyen/Payment/controllers/SavedCardController.php +117 -0
- app/code/community/Adyen/Payment/data/adyen_setup/data-upgrade-2.4.0-2.4.0.1.php +51 -0
- app/code/community/Adyen/Payment/docs/.DS_Store +0 -0
- app/code/community/Adyen/Payment/docs/httpauthentication/cgihtaccess.patch +15 -0
- app/code/community/Adyen/Payment/docs/httpauthentication/howto +7 -0
- app/code/community/Adyen/Payment/docs/readme +221 -0
- app/code/community/Adyen/Payment/docs/test-cards +47 -0
- app/code/community/Adyen/Payment/docs/translation/Adyen_Payment.csv +53 -0
- app/code/community/Adyen/Payment/docs/translation/Mage_Checkout.csv +1 -0
- app/code/community/Adyen/Payment/docs/translation/howto +12 -0
- app/code/community/Adyen/Payment/etc/config.xml +7 -5
- app/code/community/Adyen/Payment/etc/system.xml +63 -65
- app/code/community/Adyen/Payment/sql/adyen_setup/mysql4-upgrade-2.3.1.1-2.3.1.2.php +2 -2
- app/design/adminhtml/default/default/layout/adyen.xml +2 -1
- app/design/adminhtml/default/default/template/adyen/form/sepa.phtml +16 -2
- app/design/adminhtml/default/default/template/adyen/info/hpp.phtml +3 -0
- app/design/frontend/base/default/template/adyen/form/ideal.phtml +30 -20
- app/design/frontend/base/default/template/adyen/form/sepa.phtml +1 -1
- app/design/frontend/base/default/template/adyen/info/cc.phtml +5 -4
- app/design/frontend/base/default/template/adyen/info/pay_by_mail.phtml +1 -1
- app/design/frontend/base/default/template/adyen/saved_cards.phtml +157 -0
- app/locale/de_DE/Adyen_Payment.csv +16 -1
- app/locale/es_ES/Adyen_Payment.csv +17 -2
- app/locale/fr_FR/Adyen_Payment.csv +16 -1
- app/locale/nl_NL/Adyen_Payment.csv +13 -2
- app/locale/pt_BR/Adyen_Payment.csv +71 -0
- package.xml +6 -6
- shell/adyen.php +9 -5
- skin/frontend/base/default/css/adyenstyle.css +16 -1
- skin/frontend/base/default/images/adyen/cartebancaire.png +0 -0
- skin/frontend/base/default/images/adyen/vvvgiftcard.png +0 -0
- skin/frontend/base/default/images/adyen/vvvgiftcard_small.png +0 -0
- skin/frontend/base/default/images/adyen/vvvgiftcard_tiny.png +0 -0
app/code/community/Adyen/Payment/.DS_Store
CHANGED
Binary file
|
app/code/community/Adyen/Payment/Block/Adminhtml/System/Config/Fieldset/Payment.php
ADDED
@@ -0,0 +1,54 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Adyen Payment Module
|
4 |
+
*
|
5 |
+
* NOTICE OF LICENSE
|
6 |
+
*
|
7 |
+
* This source file is subject to the Open Software License (OSL 3.0)
|
8 |
+
* that is bundled with this package in the file LICENSE.txt.
|
9 |
+
* It is also available through the world-wide-web at this URL:
|
10 |
+
* http://opensource.org/licenses/osl-3.0.php
|
11 |
+
* If you did not receive a copy of the license and are unable to
|
12 |
+
* obtain it through the world-wide-web, please send an email
|
13 |
+
* to license@magentocommerce.com so we can send you a copy immediately.
|
14 |
+
*
|
15 |
+
* @category Adyen
|
16 |
+
* @package Adyen_Payment
|
17 |
+
* @copyright Copyright (c) 2011 Adyen (http://www.adyen.com)
|
18 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
19 |
+
*/
|
20 |
+
/**
|
21 |
+
* @category Payment Gateway
|
22 |
+
* @package Adyen_Payment
|
23 |
+
* @author Adyen
|
24 |
+
* @property Adyen B.V
|
25 |
+
* @copyright Copyright (c) 2014 Adyen BV (http://www.adyen.com)
|
26 |
+
*/
|
27 |
+
/**
|
28 |
+
* Fieldset renderer for Adyen export settings button
|
29 |
+
*
|
30 |
+
* @category Mage
|
31 |
+
* @package Mage_Paypal
|
32 |
+
* @author Magento Core Team <core@magentocommerce.com>
|
33 |
+
*/
|
34 |
+
class Adyen_Payment_Block_Adminhtml_System_Config_Fieldset_Payment
|
35 |
+
extends Mage_Adminhtml_Block_System_Config_Form_Fieldset
|
36 |
+
{
|
37 |
+
|
38 |
+
protected function _getHeaderHtml($element) {
|
39 |
+
$header = parent::_getHeaderHtml($element);
|
40 |
+
|
41 |
+
|
42 |
+
$url = Mage::helper('adminhtml')->getUrl('adminhtml/ExportAdyenSettings');
|
43 |
+
|
44 |
+
$header .= '<div class="button-container"><button type="button"'
|
45 |
+
. ' class="button'
|
46 |
+
. '" id="' . $element->getHtmlId()
|
47 |
+
. '-head" onclick="location.href = \''.$url.'\' "'
|
48 |
+
. $this->getUrl('*/*/state') . '\'); return false;"><span class="state-closed">'
|
49 |
+
. $this->__('Export Settings') . '</span><span class="state-opened">';
|
50 |
+
|
51 |
+
|
52 |
+
return $header;
|
53 |
+
}
|
54 |
+
}
|
app/code/community/Adyen/Payment/Block/Form/Cc.php
CHANGED
@@ -97,12 +97,21 @@ class Adyen_Payment_Block_Form_Cc extends Mage_Payment_Block_Form_Cc
|
|
97 |
}
|
98 |
|
99 |
/**
|
100 |
-
*
|
101 |
*
|
102 |
* @return boolean
|
103 |
*/
|
104 |
public function hasVerification()
|
105 |
{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
106 |
return true;
|
107 |
}
|
108 |
|
97 |
}
|
98 |
|
99 |
/**
|
100 |
+
* If MOTO for backend orders is turned on don't show CVC field in backend order creation
|
101 |
*
|
102 |
* @return boolean
|
103 |
*/
|
104 |
public function hasVerification()
|
105 |
{
|
106 |
+
|
107 |
+
// if backend order and moto payments is turned on don't show cvc
|
108 |
+
if(Mage::app()->getStore()->isAdmin() && $this->getMethod()->getCode() == "adyen_cc") {
|
109 |
+
$store = Mage::getSingleton('adminhtml/session_quote')->getStore();
|
110 |
+
if(Mage::getStoreConfigFlag('payment/adyen_cc/enable_moto', $store)) {
|
111 |
+
return false;
|
112 |
+
}
|
113 |
+
}
|
114 |
+
|
115 |
return true;
|
116 |
}
|
117 |
|
app/code/community/Adyen/Payment/Block/Redirect.php
CHANGED
@@ -112,12 +112,12 @@ class Adyen_Payment_Block_Redirect extends Mage_Core_Block_Abstract {
|
|
112 |
$html .= "<div id=\"pos-redirect-page\">
|
113 |
<div class=\"logo\"></div>
|
114 |
<div class=\"grey-header\">
|
115 |
-
<h1>POS Payment</h1>
|
116 |
</div>
|
117 |
<div class=\"amount-box\">".
|
118 |
$adyFields['paymentAmountGrandTotal'] .
|
119 |
-
"<a id=\"launchlink\" href=\"".$launchlink ."\" >Payment</a> ".
|
120 |
-
"<span id=\"adyen-redirect-text\">If you stuck on this page please press the payment button</span></div>";
|
121 |
|
122 |
$html .= '<script type="text/javascript">
|
123 |
//<![CDATA[
|
@@ -132,7 +132,7 @@ class Adyen_Payment_Block_Redirect extends Mage_Core_Block_Abstract {
|
|
132 |
// redirect to success page
|
133 |
window.location.href = "'. Mage::getBaseUrl()."adyen/process/successPosRedirect" . '";
|
134 |
} else {
|
135 |
-
window.location.href = "'. Mage::getBaseUrl()."adyen/process/cancel" . '";
|
136 |
}
|
137 |
}
|
138 |
});
|
@@ -157,7 +157,7 @@ class Adyen_Payment_Block_Redirect extends Mage_Core_Block_Abstract {
|
|
157 |
};
|
158 |
|
159 |
// test
|
160 |
-
|
161 |
checkStatus();
|
162 |
}, 1000);';
|
163 |
$html .= 'url = document.getElementById(\'launchlink\').href;';
|
112 |
$html .= "<div id=\"pos-redirect-page\">
|
113 |
<div class=\"logo\"></div>
|
114 |
<div class=\"grey-header\">
|
115 |
+
<h1>{$this->__('POS Payment')}</h1>
|
116 |
</div>
|
117 |
<div class=\"amount-box\">".
|
118 |
$adyFields['paymentAmountGrandTotal'] .
|
119 |
+
"<a id=\"launchlink\" href=\"".$launchlink ."\" >{$this->__('Payment')}</a> ".
|
120 |
+
"<span id=\"adyen-redirect-text\">{$this->__('If you stuck on this page please press the payment button')}</span></div>";
|
121 |
|
122 |
$html .= '<script type="text/javascript">
|
123 |
//<![CDATA[
|
132 |
// redirect to success page
|
133 |
window.location.href = "'. Mage::getBaseUrl()."adyen/process/successPosRedirect" . '";
|
134 |
} else {
|
135 |
+
window.location.href = "'. Mage::getBaseUrl()."adyen/process/cancel" . '";
|
136 |
}
|
137 |
}
|
138 |
});
|
157 |
};
|
158 |
|
159 |
// test
|
160 |
+
setTimeout(function () {
|
161 |
checkStatus();
|
162 |
}, 1000);';
|
163 |
$html .= 'url = document.getElementById(\'launchlink\').href;';
|
app/code/community/Adyen/Payment/Block/SavedCards.php
ADDED
@@ -0,0 +1,55 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/**
|
4 |
+
* Adyen Payment Module
|
5 |
+
*
|
6 |
+
* NOTICE OF LICENSE
|
7 |
+
*
|
8 |
+
* This source file is subject to the Open Software License (OSL 3.0)
|
9 |
+
* that is bundled with this package in the file LICENSE.txt.
|
10 |
+
* It is also available through the world-wide-web at this URL:
|
11 |
+
* http://opensource.org/licenses/osl-3.0.php
|
12 |
+
* If you did not receive a copy of the license and are unable to
|
13 |
+
* obtain it through the world-wide-web, please send an email
|
14 |
+
* to license@magentocommerce.com so we can send you a copy immediately.
|
15 |
+
*
|
16 |
+
* @category Adyen
|
17 |
+
* @package Adyen_Payment
|
18 |
+
* @copyright Copyright (c) 2011 Adyen (http://www.adyen.com)
|
19 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
20 |
+
*/
|
21 |
+
/**
|
22 |
+
* @category Payment Gateway
|
23 |
+
* @package Adyen_Payment
|
24 |
+
* @author Adyen
|
25 |
+
* @property Adyen B.V
|
26 |
+
* @copyright Copyright (c) 2014 Adyen BV (http://www.adyen.com)
|
27 |
+
*/
|
28 |
+
|
29 |
+
class Adyen_Payment_Block_SavedCards extends Mage_Core_Block_Template {
|
30 |
+
|
31 |
+
|
32 |
+
public function getlistRecurringDetails() {
|
33 |
+
|
34 |
+
|
35 |
+
$storeId = Mage::app()->getStore()->getStoreId();
|
36 |
+
$customer = Mage::registry('current_customer');
|
37 |
+
$customerId = $customer->getId();
|
38 |
+
$merchantAccount = Mage::getStoreConfig("payment/adyen_abstract/merchantAccount", $storeId);
|
39 |
+
$recurringType = Mage::getStoreConfig("payment/adyen_abstract/recurringtypes", $storeId);
|
40 |
+
|
41 |
+
return Mage::helper('adyen')->getRecurringCards($merchantAccount, $customerId, $recurringType);
|
42 |
+
|
43 |
+
}
|
44 |
+
|
45 |
+
public function getBackUrl()
|
46 |
+
{
|
47 |
+
if ($this->getRefererUrl()) {
|
48 |
+
return $this->getRefererUrl();
|
49 |
+
}
|
50 |
+
return $this->getUrl('customer/account/', array('_secure'=>true));
|
51 |
+
}
|
52 |
+
|
53 |
+
|
54 |
+
|
55 |
+
}
|
app/code/community/Adyen/Payment/Exception.php
CHANGED
@@ -25,7 +25,7 @@
|
|
25 |
* @copyright Copyright (c) 2014 Adyen BV (http://www.adyen.com)
|
26 |
*/
|
27 |
|
28 |
-
class Adyen_Payment_Exception extends
|
29 |
{
|
30 |
/**
|
31 |
* Throw an Adyen_Payment_Exception and log it.
|
25 |
* @copyright Copyright (c) 2014 Adyen BV (http://www.adyen.com)
|
26 |
*/
|
27 |
|
28 |
+
class Adyen_Payment_Exception extends Mage_Core_Exception
|
29 |
{
|
30 |
/**
|
31 |
* Throw an Adyen_Payment_Exception and log it.
|
app/code/community/Adyen/Payment/Helper/Data.php
CHANGED
@@ -261,7 +261,7 @@ class Adyen_Payment_Helper_Data extends Mage_Payment_Helper_Data
|
|
261 |
* @param $amount
|
262 |
* @param $currency
|
263 |
*
|
264 |
-
* @return
|
265 |
*/
|
266 |
public function formatAmount($amount, $currency)
|
267 |
{
|
@@ -301,7 +301,7 @@ class Adyen_Payment_Helper_Data extends Mage_Payment_Helper_Data
|
|
301 |
break;
|
302 |
}
|
303 |
|
304 |
-
return number_format($amount, $format, '', '');
|
305 |
}
|
306 |
|
307 |
public function originalAmount($amount, $currency)
|
@@ -491,10 +491,10 @@ class Adyen_Payment_Helper_Data extends Mage_Payment_Helper_Data
|
|
491 |
* @param type $address
|
492 |
* @return Varien_Object
|
493 |
*/
|
494 |
-
public function getStreet($address)
|
495 |
{
|
496 |
if (empty($address)) return false;
|
497 |
-
$street =
|
498 |
$streetName = $street['0'];
|
499 |
unset($street['0']);
|
500 |
// $streetNr = implode('',$street);
|
@@ -509,12 +509,25 @@ class Adyen_Payment_Helper_Data extends Mage_Payment_Helper_Data
|
|
509 |
* @param type $street
|
510 |
* @return type $street
|
511 |
*/
|
512 |
-
|
513 |
{
|
514 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
515 |
return $street;
|
516 |
}
|
517 |
-
|
|
|
518 |
if(!empty($houseNumber['0'])) {
|
519 |
$_houseNumber = trim($houseNumber['0']['0']);
|
520 |
$position = $houseNumber['0']['1'];
|
@@ -524,4 +537,35 @@ class Adyen_Payment_Helper_Data extends Mage_Payment_Helper_Data
|
|
524 |
return $street;
|
525 |
}
|
526 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
527 |
}
|
261 |
* @param $amount
|
262 |
* @param $currency
|
263 |
*
|
264 |
+
* @return int
|
265 |
*/
|
266 |
public function formatAmount($amount, $currency)
|
267 |
{
|
301 |
break;
|
302 |
}
|
303 |
|
304 |
+
return (int)number_format($amount, $format, '', '');
|
305 |
}
|
306 |
|
307 |
public function originalAmount($amount, $currency)
|
491 |
* @param type $address
|
492 |
* @return Varien_Object
|
493 |
*/
|
494 |
+
public function getStreet($address, $klarna = false)
|
495 |
{
|
496 |
if (empty($address)) return false;
|
497 |
+
$street = $this->formatStreet($address->getStreet(), $klarna);
|
498 |
$streetName = $street['0'];
|
499 |
unset($street['0']);
|
500 |
// $streetNr = implode('',$street);
|
509 |
* @param type $street
|
510 |
* @return type $street
|
511 |
*/
|
512 |
+
protected function formatStreet($street, $klarna)
|
513 |
{
|
514 |
+
$formatStreetOnMultiStreetLines = false;
|
515 |
+
|
516 |
+
/*
|
517 |
+
* If ignore second line steet is enabled for klarna only look at the first addressfield
|
518 |
+
* and try to substract housenumber
|
519 |
+
*/
|
520 |
+
if($klarna) {
|
521 |
+
if($this->getConfigData('ignore_second_address_field','adyen_openinvoice')) {
|
522 |
+
$formatStreetOnMultiStreetLines = true;
|
523 |
+
}
|
524 |
+
}
|
525 |
+
|
526 |
+
if (!$formatStreetOnMultiStreetLines && count($street) != 1) {
|
527 |
return $street;
|
528 |
}
|
529 |
+
|
530 |
+
preg_match('/\s(\d+.*)$/i', $street['0'], $houseNumber, PREG_OFFSET_CAPTURE);
|
531 |
if(!empty($houseNumber['0'])) {
|
532 |
$_houseNumber = trim($houseNumber['0']['0']);
|
533 |
$position = $houseNumber['0']['1'];
|
537 |
return $street;
|
538 |
}
|
539 |
|
540 |
+
/**
|
541 |
+
* @desc Tax Percentage needs to be in minor units for Adyen
|
542 |
+
* @param $taxPercent
|
543 |
+
* @return int
|
544 |
+
*/
|
545 |
+
public function getMinorUnitTaxPercent($taxPercent)
|
546 |
+
{
|
547 |
+
$taxPercent = (int)$taxPercent;
|
548 |
+
return $taxPercent * 100;
|
549 |
+
}
|
550 |
+
|
551 |
+
/**
|
552 |
+
* @desc Calculate the tax rate for tax class based on order details
|
553 |
+
* @param $order
|
554 |
+
* @param $taxClass
|
555 |
+
* @return mixed
|
556 |
+
*/
|
557 |
+
public function getTaxRate($order, $taxClass)
|
558 |
+
{
|
559 |
+
// load the customer so we can retrieve the correct tax class id
|
560 |
+
$customer = Mage::getModel('customer/customer')->load($order->getCustomerId());
|
561 |
+
$calculation = Mage::getModel('tax/calculation');
|
562 |
+
|
563 |
+
$request = $calculation->getRateRequest(
|
564 |
+
$order->getShippingAddress(),
|
565 |
+
$order->getBillingAddress(),
|
566 |
+
$customer->getTaxClassId(),
|
567 |
+
$order->getStore()
|
568 |
+
);
|
569 |
+
return $calculation->getRate($request->setProductClassId($taxClass));
|
570 |
+
}
|
571 |
}
|
app/code/community/Adyen/Payment/Model/Adyen/Abstract.php
CHANGED
@@ -80,7 +80,7 @@ abstract class Adyen_Payment_Model_Adyen_Abstract extends Mage_Payment_Model_Met
|
|
80 |
protected $_paymentMethodType = 'api';
|
81 |
|
82 |
public function getPaymentMethodType() {
|
83 |
-
return $this
|
84 |
}
|
85 |
|
86 |
public function __construct()
|
@@ -140,6 +140,17 @@ abstract class Adyen_Payment_Model_Adyen_Abstract extends Mage_Payment_Model_Met
|
|
140 |
|
141 |
$order = $payment->getOrder();
|
142 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
143 |
// by zero authentication payment is authorised when api responds is succesfull
|
144 |
if($order->getGrandTotal() == 0) {
|
145 |
$payment->setIsTransactionPending(false);
|
@@ -361,12 +372,26 @@ abstract class Adyen_Payment_Model_Adyen_Abstract extends Mage_Payment_Model_Met
|
|
361 |
}
|
362 |
switch ($responseCode) {
|
363 |
case "RedirectShopper":
|
364 |
-
|
365 |
-
|
366 |
-
$
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
367 |
Mage::getSingleton('customer/session')->setRedirectUrl("adyen/process/validate3d");
|
368 |
$this->_addStatusHistory($payment, $responseCode, $pspReference, $this->_getConfigData('order_status'));
|
369 |
break;
|
|
|
370 |
case "Refused":
|
371 |
|
372 |
if($response->paymentResult->refusalReason) {
|
@@ -386,13 +411,14 @@ abstract class Adyen_Payment_Model_Adyen_Abstract extends Mage_Payment_Model_Met
|
|
386 |
$errorMsg = Mage::helper('adyen')->__('The payment is REFUSED because the saved card is removed. Please try an other payment method.');
|
387 |
break;
|
388 |
default:
|
389 |
-
$errorMsg = Mage::helper('adyen')->__('The payment is REFUSED
|
390 |
break;
|
391 |
}
|
392 |
} else {
|
393 |
-
$errorMsg = Mage::helper('adyen')->__('The payment is REFUSED
|
394 |
}
|
395 |
|
|
|
396 |
Adyen_Payment_Exception::throwException($errorMsg);
|
397 |
break;
|
398 |
case "Authorised":
|
@@ -414,11 +440,14 @@ abstract class Adyen_Payment_Model_Adyen_Abstract extends Mage_Payment_Model_Met
|
|
414 |
$this->_addStatusHistory($payment, $responseCode, $pspReference);
|
415 |
break;
|
416 |
case "Error":
|
|
|
417 |
$errorMsg = Mage::helper('adyen')->__('System error, please try again later');
|
418 |
Adyen_Payment_Exception::throwException($errorMsg);
|
419 |
break;
|
420 |
default:
|
421 |
-
$this->
|
|
|
|
|
422 |
break;
|
423 |
}
|
424 |
|
@@ -435,6 +464,15 @@ abstract class Adyen_Payment_Model_Adyen_Abstract extends Mage_Payment_Model_Met
|
|
435 |
return $this;
|
436 |
}
|
437 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
438 |
/**
|
439 |
* @since 0.0.3
|
440 |
* @param Varien_Object $payment
|
80 |
protected $_paymentMethodType = 'api';
|
81 |
|
82 |
public function getPaymentMethodType() {
|
83 |
+
return $this->_paymentMethodType;
|
84 |
}
|
85 |
|
86 |
public function __construct()
|
140 |
|
141 |
$order = $payment->getOrder();
|
142 |
|
143 |
+
/*
|
144 |
+
* ReserveOrderId for this quote so payment failed notification
|
145 |
+
* does not interfere with new successful orders
|
146 |
+
*/
|
147 |
+
$incrementId = $order->getIncrementId();
|
148 |
+
$quoteId = $order->getQuoteId();
|
149 |
+
$quote = Mage::getModel('sales/quote')
|
150 |
+
->load($quoteId)
|
151 |
+
->setReservedOrderId($incrementId)
|
152 |
+
->save();
|
153 |
+
|
154 |
// by zero authentication payment is authorised when api responds is succesfull
|
155 |
if($order->getGrandTotal() == 0) {
|
156 |
$payment->setIsTransactionPending(false);
|
372 |
}
|
373 |
switch ($responseCode) {
|
374 |
case "RedirectShopper":
|
375 |
+
|
376 |
+
|
377 |
+
$paRequest = $response->paymentResult->paRequest;
|
378 |
+
$md = $response->paymentResult->md;
|
379 |
+
$issuerUrl = $response->paymentResult->issuerUrl;
|
380 |
+
|
381 |
+
if(!empty($paRequest) && !empty($md) && !empty($issuerUrl)) {
|
382 |
+
$payment->setAdditionalInformation('paRequest', $response->paymentResult->paRequest);
|
383 |
+
$payment->setAdditionalInformation('md', $response->paymentResult->md);
|
384 |
+
$payment->setAdditionalInformation('issuerUrl', $response->paymentResult->issuerUrl);
|
385 |
+
} else {
|
386 |
+
// log exception
|
387 |
+
$errorMsg = Mage::helper('adyen')->__('3D secure is not valid');
|
388 |
+
Adyen_Payment_Exception::throwException($errorMsg);
|
389 |
+
}
|
390 |
+
|
391 |
Mage::getSingleton('customer/session')->setRedirectUrl("adyen/process/validate3d");
|
392 |
$this->_addStatusHistory($payment, $responseCode, $pspReference, $this->_getConfigData('order_status'));
|
393 |
break;
|
394 |
+
case "Cancelled":
|
395 |
case "Refused":
|
396 |
|
397 |
if($response->paymentResult->refusalReason) {
|
411 |
$errorMsg = Mage::helper('adyen')->__('The payment is REFUSED because the saved card is removed. Please try an other payment method.');
|
412 |
break;
|
413 |
default:
|
414 |
+
$errorMsg = Mage::helper('adyen')->__('The payment is REFUSED.');
|
415 |
break;
|
416 |
}
|
417 |
} else {
|
418 |
+
$errorMsg = Mage::helper('adyen')->__('The payment is REFUSED.');
|
419 |
}
|
420 |
|
421 |
+
$this->resetReservedOrderId();
|
422 |
Adyen_Payment_Exception::throwException($errorMsg);
|
423 |
break;
|
424 |
case "Authorised":
|
440 |
$this->_addStatusHistory($payment, $responseCode, $pspReference);
|
441 |
break;
|
442 |
case "Error":
|
443 |
+
$this->resetReservedOrderId();
|
444 |
$errorMsg = Mage::helper('adyen')->__('System error, please try again later');
|
445 |
Adyen_Payment_Exception::throwException($errorMsg);
|
446 |
break;
|
447 |
default:
|
448 |
+
$this->resetReservedOrderId();
|
449 |
+
$errorMsg = Mage::helper('adyen')->__('Unknown data type by Adyen');
|
450 |
+
Adyen_Payment_Exception::throwException($errorMsg);
|
451 |
break;
|
452 |
}
|
453 |
|
464 |
return $this;
|
465 |
}
|
466 |
|
467 |
+
/**
|
468 |
+
* @desc Reset the reservedOrderId so Adyen notification will not interfere with
|
469 |
+
* the next payment
|
470 |
+
*/
|
471 |
+
protected function resetReservedOrderId()
|
472 |
+
{
|
473 |
+
Mage::getSingleton('checkout/session')->getQuote()->setReservedOrderId(null);
|
474 |
+
}
|
475 |
+
|
476 |
/**
|
477 |
* @since 0.0.3
|
478 |
* @param Varien_Object $payment
|
app/code/community/Adyen/Payment/Model/Adyen/Cc.php
CHANGED
@@ -34,6 +34,7 @@ class Adyen_Payment_Model_Adyen_Cc extends Adyen_Payment_Model_Adyen_Abstract
|
|
34 |
protected $_paymentMethod = 'cc';
|
35 |
protected $_canCreateBillingAgreement = true;
|
36 |
protected $_ccTypes;
|
|
|
37 |
|
38 |
/**
|
39 |
* 1) Called everytime the adyen_cc is called or used in checkout
|
@@ -105,12 +106,21 @@ class Adyen_Payment_Model_Adyen_Cc extends Adyen_Payment_Model_Adyen_Abstract
|
|
105 |
/**
|
106 |
* @desc Helper functions to get config data
|
107 |
*/
|
108 |
-
public function isCseEnabled()
|
|
|
|
|
|
|
|
|
|
|
|
|
109 |
return Mage::getStoreConfig("payment/adyen_cc/cse_enabled");
|
110 |
}
|
111 |
|
112 |
-
|
113 |
-
|
|
|
|
|
|
|
114 |
if (Mage::app()->getStore()->isAdmin()) {
|
115 |
$quote = Mage::getSingleton('adminhtml/session_quote')->getQuote();
|
116 |
$storeId = $quote->getStoreId();
|
@@ -119,9 +129,9 @@ class Adyen_Payment_Model_Adyen_Cc extends Adyen_Payment_Model_Adyen_Abstract
|
|
119 |
}
|
120 |
|
121 |
if (Mage::helper('adyen')->getConfigDataDemoMode($storeId)) {
|
122 |
-
return trim(Mage::getStoreConfig("payment/adyen_cc/cse_publickey_test"));
|
123 |
}
|
124 |
-
return trim(Mage::getStoreConfig("payment/adyen_cc/cse_publickey"));
|
125 |
}
|
126 |
|
127 |
/**
|
34 |
protected $_paymentMethod = 'cc';
|
35 |
protected $_canCreateBillingAgreement = true;
|
36 |
protected $_ccTypes;
|
37 |
+
protected $_canUseForMultishipping = true;
|
38 |
|
39 |
/**
|
40 |
* 1) Called everytime the adyen_cc is called or used in checkout
|
106 |
/**
|
107 |
* @desc Helper functions to get config data
|
108 |
*/
|
109 |
+
public function isCseEnabled()
|
110 |
+
{
|
111 |
+
if (Mage::app()->getStore()->isAdmin()) {
|
112 |
+
$quote = Mage::getSingleton('adminhtml/session_quote')->getQuote();
|
113 |
+
$storeId = $quote->getStoreId();
|
114 |
+
return Mage::getStoreConfig("payment/adyen_cc/cse_enabled", $storeId);
|
115 |
+
}
|
116 |
return Mage::getStoreConfig("payment/adyen_cc/cse_enabled");
|
117 |
}
|
118 |
|
119 |
+
/**
|
120 |
+
* @return string
|
121 |
+
*/
|
122 |
+
public function getCsePublicKey()
|
123 |
+
{
|
124 |
if (Mage::app()->getStore()->isAdmin()) {
|
125 |
$quote = Mage::getSingleton('adminhtml/session_quote')->getQuote();
|
126 |
$storeId = $quote->getStoreId();
|
129 |
}
|
130 |
|
131 |
if (Mage::helper('adyen')->getConfigDataDemoMode($storeId)) {
|
132 |
+
return trim(Mage::getStoreConfig("payment/adyen_cc/cse_publickey_test", $storeId));
|
133 |
}
|
134 |
+
return trim(Mage::getStoreConfig("payment/adyen_cc/cse_publickey",$storeId));
|
135 |
}
|
136 |
|
137 |
/**
|
app/code/community/Adyen/Payment/Model/Adyen/Data/Classmap.php
CHANGED
@@ -27,9 +27,9 @@
|
|
27 |
*/
|
28 |
class Adyen_Payment_Model_Adyen_Data_Classmap extends Adyen_Payment_Model_Adyen_Data_Abstract {
|
29 |
|
30 |
-
public $
|
31 |
public $capture;
|
32 |
-
public $
|
33 |
-
public $
|
34 |
|
35 |
-
}
|
27 |
*/
|
28 |
class Adyen_Payment_Model_Adyen_Data_Classmap extends Adyen_Payment_Model_Adyen_Data_Abstract {
|
29 |
|
30 |
+
public $amount;
|
31 |
public $capture;
|
32 |
+
public $modificationRequest;
|
33 |
+
public $modificationResult;
|
34 |
|
35 |
+
}
|
app/code/community/Adyen/Payment/Model/Adyen/Data/NotificationClassmap.php
CHANGED
@@ -27,7 +27,7 @@
|
|
27 |
*/
|
28 |
class Adyen_Payment_Model_Adyen_Data_NotificationClassmap extends Varien_Object {
|
29 |
|
30 |
-
public $
|
31 |
public $notificationRequest;
|
32 |
public $notificationRequestItem;
|
33 |
|
27 |
*/
|
28 |
class Adyen_Payment_Model_Adyen_Data_NotificationClassmap extends Varien_Object {
|
29 |
|
30 |
+
public $amount;
|
31 |
public $notificationRequest;
|
32 |
public $notificationRequestItem;
|
33 |
|
app/code/community/Adyen/Payment/Model/Adyen/Data/PaymentRequest.php
CHANGED
@@ -79,7 +79,15 @@ class Adyen_Payment_Model_Adyen_Data_PaymentRequest extends Adyen_Payment_Model_
|
|
79 |
$orderCurrencyCode = $order->getOrderCurrencyCode();
|
80 |
// override amount because this amount uses the right currency
|
81 |
$amount = $order->getGrandTotal();
|
|
|
82 |
$customerId = $order->getCustomerId();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
83 |
$realOrderId = $order->getRealOrderId();
|
84 |
|
85 |
$this->reference = $incrementId;
|
@@ -112,6 +120,10 @@ class Adyen_Payment_Model_Adyen_Data_PaymentRequest extends Adyen_Payment_Model_
|
|
112 |
} elseif($payment->getAdditionalInformation("store_cc") == "1") {
|
113 |
$this->recurring = new Adyen_Payment_Model_Adyen_Data_Recurring();
|
114 |
$this->recurring->contract = $recurringType;
|
|
|
|
|
|
|
|
|
115 |
}
|
116 |
} else {
|
117 |
$this->recurring = new Adyen_Payment_Model_Adyen_Data_Recurring();
|
@@ -123,8 +135,13 @@ class Adyen_Payment_Model_Adyen_Data_PaymentRequest extends Adyen_Payment_Model_
|
|
123 |
* Browser info
|
124 |
* @var unknown_type
|
125 |
*/
|
126 |
-
$
|
127 |
-
|
|
|
|
|
|
|
|
|
|
|
128 |
|
129 |
switch ($paymentMethod) {
|
130 |
case "elv":
|
@@ -163,12 +180,12 @@ class Adyen_Payment_Model_Adyen_Data_PaymentRequest extends Adyen_Payment_Model_
|
|
163 |
if($deliveryAddress)
|
164 |
{
|
165 |
$this->deliveryAddress = new Adyen_Payment_Model_Adyen_Data_DeliveryAddress();
|
166 |
-
$this->deliveryAddress->street = $helper->getStreet($
|
167 |
-
$this->deliveryAddress->houseNumberOrName = $helper->getStreet($
|
168 |
-
$this->deliveryAddress->city = $
|
169 |
-
$this->deliveryAddress->postalCode = $
|
170 |
-
$this->deliveryAddress->stateOrProvince = $
|
171 |
-
$this->deliveryAddress->country = $
|
172 |
}
|
173 |
|
174 |
if($paymentMethod == "oneclick") {
|
@@ -217,7 +234,7 @@ class Adyen_Payment_Model_Adyen_Data_PaymentRequest extends Adyen_Payment_Model_
|
|
217 |
} else {
|
218 |
if($paymentMethod == 'cc') {
|
219 |
// For CC encrypted data is needed if you use CSE
|
220 |
-
|
221 |
Mage::helper('adyen')->__('Missing the encrypted data value. Make sure the Client Side Encryption(CSE) script did encrypt the Credit Card details')
|
222 |
);
|
223 |
}
|
79 |
$orderCurrencyCode = $order->getOrderCurrencyCode();
|
80 |
// override amount because this amount uses the right currency
|
81 |
$amount = $order->getGrandTotal();
|
82 |
+
|
83 |
$customerId = $order->getCustomerId();
|
84 |
+
if ($customerId) {
|
85 |
+
$customer = Mage::getModel('customer/customer')->load($order->getCustomerId());
|
86 |
+
$customerId = $customer->getData('adyen_customer_ref')
|
87 |
+
?: $customer->getData('increment_id')
|
88 |
+
?: $customerId;
|
89 |
+
}
|
90 |
+
|
91 |
$realOrderId = $order->getRealOrderId();
|
92 |
|
93 |
$this->reference = $incrementId;
|
120 |
} elseif($payment->getAdditionalInformation("store_cc") == "1") {
|
121 |
$this->recurring = new Adyen_Payment_Model_Adyen_Data_Recurring();
|
122 |
$this->recurring->contract = $recurringType;
|
123 |
+
} elseif($recurringType == "RECURRING") {
|
124 |
+
// recurring permission is not needed from shopper so just save it as recurring
|
125 |
+
$this->recurring = new Adyen_Payment_Model_Adyen_Data_Recurring();
|
126 |
+
$this->recurring->contract = "RECURRING";
|
127 |
}
|
128 |
} else {
|
129 |
$this->recurring = new Adyen_Payment_Model_Adyen_Data_Recurring();
|
135 |
* Browser info
|
136 |
* @var unknown_type
|
137 |
*/
|
138 |
+
if(isset($_SERVER['HTTP_ACCEPT'])) {
|
139 |
+
$this->browserInfo->acceptHeader = $_SERVER['HTTP_ACCEPT'];
|
140 |
+
}
|
141 |
+
|
142 |
+
if(isset($_SERVER['HTTP_USER_AGENT'])) {
|
143 |
+
$this->browserInfo->userAgent = $_SERVER['HTTP_USER_AGENT'];
|
144 |
+
}
|
145 |
|
146 |
switch ($paymentMethod) {
|
147 |
case "elv":
|
180 |
if($deliveryAddress)
|
181 |
{
|
182 |
$this->deliveryAddress = new Adyen_Payment_Model_Adyen_Data_DeliveryAddress();
|
183 |
+
$this->deliveryAddress->street = $helper->getStreet($deliveryAddress)->getName();
|
184 |
+
$this->deliveryAddress->houseNumberOrName = $helper->getStreet($deliveryAddress)->getHouseNumber();
|
185 |
+
$this->deliveryAddress->city = $deliveryAddress->getCity();
|
186 |
+
$this->deliveryAddress->postalCode = $deliveryAddress->getPostcode();
|
187 |
+
$this->deliveryAddress->stateOrProvince = $deliveryAddress->getRegionCode();
|
188 |
+
$this->deliveryAddress->country = $deliveryAddress->getCountryId();
|
189 |
}
|
190 |
|
191 |
if($paymentMethod == "oneclick") {
|
234 |
} else {
|
235 |
if($paymentMethod == 'cc') {
|
236 |
// For CC encrypted data is needed if you use CSE
|
237 |
+
Adyen_Payment_Exception::throwException(
|
238 |
Mage::helper('adyen')->__('Missing the encrypted data value. Make sure the Client Side Encryption(CSE) script did encrypt the Credit Card details')
|
239 |
);
|
240 |
}
|
app/code/community/Adyen/Payment/Model/Adyen/Hpp.php
CHANGED
@@ -45,7 +45,7 @@ class Adyen_Payment_Model_Adyen_Hpp extends Adyen_Payment_Model_Adyen_Abstract
|
|
45 |
protected $_paymentMethodType = 'hpp';
|
46 |
|
47 |
public function getPaymentMethodType() {
|
48 |
-
return $this
|
49 |
}
|
50 |
|
51 |
/**
|
@@ -87,7 +87,7 @@ class Adyen_Payment_Model_Adyen_Hpp extends Adyen_Payment_Model_Adyen_Abstract
|
|
87 |
$config = Mage::getStoreConfig("payment/adyen_hpp/disable_hpptypes");
|
88 |
if (empty($hppType) && empty($config)) {
|
89 |
Mage::throwException(
|
90 |
-
Mage::helper('adyen')->__('Payment Method is
|
91 |
);
|
92 |
}
|
93 |
return $this;
|
@@ -206,6 +206,19 @@ class Adyen_Payment_Model_Adyen_Hpp extends Adyen_Payment_Model_Adyen_Abstract
|
|
206 |
$adyFields['shopperEmail'] = $shopperEmail;
|
207 |
// recurring
|
208 |
$recurringType = trim($this->_getConfigData('recurringtypes', 'adyen_abstract'));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
209 |
$adyFields['recurringContract'] = $recurringType;
|
210 |
$adyFields['shopperReference'] = (!empty($customerId)) ? $customerId : self::GUEST_ID . $realOrderId;
|
211 |
//blocked methods
|
@@ -224,10 +237,19 @@ class Adyen_Payment_Model_Adyen_Hpp extends Adyen_Payment_Model_Adyen_Abstract
|
|
224 |
) {
|
225 |
$adyFields['billingAddressType'] = "1";
|
226 |
$adyFields['deliveryAddressType'] = "1";
|
227 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
228 |
} else {
|
229 |
-
|
230 |
-
$adyFields['
|
|
|
231 |
$adyFields['shopperType'] = "";
|
232 |
}
|
233 |
//the data that needs to be signed is a concatenated string of the form data
|
@@ -252,16 +274,16 @@ class Adyen_Payment_Model_Adyen_Hpp extends Adyen_Payment_Model_Adyen_Abstract
|
|
252 |
$adyFields['merchantSig'] = base64_encode(pack('H*', $signMac));
|
253 |
// get extra fields
|
254 |
$adyFields = Mage::getModel('adyen/adyen_openinvoice')->getOptionalFormFields($adyFields, $this->_order);
|
255 |
-
|
|
|
256 |
if (strpos($this->getInfoInstance()->getCcType(), "ideal") !== false) {
|
257 |
$bankData = $this->getInfoInstance()->getPoNumber();
|
258 |
if (!empty($bankData)) {
|
259 |
$id = explode(DS, $bankData);
|
260 |
-
$adyFields['
|
261 |
-
$adyFields['brandCode'] = $this->getInfoInstance()->getCcType();
|
262 |
-
$adyFields['idealIssuerId'] = $id['0'];
|
263 |
}
|
264 |
}
|
|
|
265 |
// if option to put Return Url in request from magento is enabled add this in the request
|
266 |
$returnUrlInRequest = $this->_getConfigData('return_url_in_request', 'adyen_hpp');
|
267 |
if ($returnUrlInRequest) {
|
@@ -298,7 +320,6 @@ class Adyen_Payment_Model_Adyen_Hpp extends Adyen_Payment_Model_Adyen_Abstract
|
|
298 |
/**
|
299 |
* @desc Get url of Adyen payment
|
300 |
* @return string
|
301 |
-
* @todo add brandCode here
|
302 |
*/
|
303 |
public function getFormUrl()
|
304 |
{
|
@@ -325,15 +346,7 @@ class Adyen_Payment_Model_Adyen_Hpp extends Adyen_Payment_Model_Adyen_Abstract
|
|
325 |
}
|
326 |
break;
|
327 |
}
|
328 |
-
|
329 |
-
$idealBankUrl = false;
|
330 |
-
$bankData = $this->getInfoInstance()->getPoNumber();
|
331 |
-
if ($brandCode == 'ideal' && !empty($bankData)) {
|
332 |
-
$idealBankUrl = ($isConfigDemoMode == true)
|
333 |
-
? 'https://test.adyen.com/hpp/redirectIdeal.shtml'
|
334 |
-
: 'https://live.adyen.com/hpp/redirectIdeal.shtml';
|
335 |
-
}
|
336 |
-
return (!empty($idealBankUrl)) ? $idealBankUrl : $url;
|
337 |
}
|
338 |
|
339 |
|
45 |
protected $_paymentMethodType = 'hpp';
|
46 |
|
47 |
public function getPaymentMethodType() {
|
48 |
+
return $this->_paymentMethodType;
|
49 |
}
|
50 |
|
51 |
/**
|
87 |
$config = Mage::getStoreConfig("payment/adyen_hpp/disable_hpptypes");
|
88 |
if (empty($hppType) && empty($config)) {
|
89 |
Mage::throwException(
|
90 |
+
Mage::helper('adyen')->__('Payment Method is compulsory in order to process your payment')
|
91 |
);
|
92 |
}
|
93 |
return $this;
|
206 |
$adyFields['shopperEmail'] = $shopperEmail;
|
207 |
// recurring
|
208 |
$recurringType = trim($this->_getConfigData('recurringtypes', 'adyen_abstract'));
|
209 |
+
|
210 |
+
// Paypal does not allow ONECLICK,RECURRING will be fixed on adyen platform but this is the quickfix for now
|
211 |
+
if($this->getInfoInstance()->getMethod() == "adyen_hpp_paypal" && $recurringType == 'ONECLICK,RECURRING') {
|
212 |
+
$recurringType = "RECURRING";
|
213 |
+
}
|
214 |
+
|
215 |
+
if ($customerId) {
|
216 |
+
$customer = Mage::getModel('customer/customer')->load($order->getCustomerId());
|
217 |
+
$customerId = $customer->getData('adyen_customer_ref')
|
218 |
+
?: $customer->getData('increment_id')
|
219 |
+
?: $customerId;
|
220 |
+
}
|
221 |
+
|
222 |
$adyFields['recurringContract'] = $recurringType;
|
223 |
$adyFields['shopperReference'] = (!empty($customerId)) ? $customerId : self::GUEST_ID . $realOrderId;
|
224 |
//blocked methods
|
237 |
) {
|
238 |
$adyFields['billingAddressType'] = "1";
|
239 |
$adyFields['deliveryAddressType'] = "1";
|
240 |
+
|
241 |
+
// get shopperType setting
|
242 |
+
$shopperType = $this->_getConfigData("shoppertype", "adyen_openinvoice");
|
243 |
+
if($shopperType == '1') {
|
244 |
+
$adyFields['shopperType'] = "";
|
245 |
+
} else {
|
246 |
+
$adyFields['shopperType'] = "1";
|
247 |
+
}
|
248 |
+
|
249 |
} else {
|
250 |
+
// for other payment methods like creditcard don't show avs address field in skin
|
251 |
+
$adyFields['billingAddressType'] = "2";
|
252 |
+
$adyFields['deliveryAddressType'] = "2";
|
253 |
$adyFields['shopperType'] = "";
|
254 |
}
|
255 |
//the data that needs to be signed is a concatenated string of the form data
|
274 |
$adyFields['merchantSig'] = base64_encode(pack('H*', $signMac));
|
275 |
// get extra fields
|
276 |
$adyFields = Mage::getModel('adyen/adyen_openinvoice')->getOptionalFormFields($adyFields, $this->_order);
|
277 |
+
|
278 |
+
// For IDEAL add isuerId into request so bank selection is skipped
|
279 |
if (strpos($this->getInfoInstance()->getCcType(), "ideal") !== false) {
|
280 |
$bankData = $this->getInfoInstance()->getPoNumber();
|
281 |
if (!empty($bankData)) {
|
282 |
$id = explode(DS, $bankData);
|
283 |
+
$adyFields['issuerId'] = $id['0'];
|
|
|
|
|
284 |
}
|
285 |
}
|
286 |
+
|
287 |
// if option to put Return Url in request from magento is enabled add this in the request
|
288 |
$returnUrlInRequest = $this->_getConfigData('return_url_in_request', 'adyen_hpp');
|
289 |
if ($returnUrlInRequest) {
|
320 |
/**
|
321 |
* @desc Get url of Adyen payment
|
322 |
* @return string
|
|
|
323 |
*/
|
324 |
public function getFormUrl()
|
325 |
{
|
346 |
}
|
347 |
break;
|
348 |
}
|
349 |
+
return $url;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
350 |
}
|
351 |
|
352 |
|
app/code/community/Adyen/Payment/Model/Adyen/Ideal.php
CHANGED
@@ -52,9 +52,13 @@ class Adyen_Payment_Model_Adyen_Ideal
|
|
52 |
);
|
53 |
}
|
54 |
|
55 |
-
if
|
56 |
-
|
|
|
|
|
|
|
57 |
}
|
|
|
58 |
ksort($issuers);
|
59 |
return $issuers;
|
60 |
}
|
52 |
);
|
53 |
}
|
54 |
|
55 |
+
// check if auto select is turned on in the settings
|
56 |
+
if ($this->_getConfigData('autoselect_stored_ideal_bank', 'adyen_ideal')) {
|
57 |
+
if (isset($issuers[$this->getInfoInstance()->getPoNumber()])) {
|
58 |
+
$issuers[$this->getInfoInstance()->getPoNumber()]['selected'] = true;
|
59 |
+
}
|
60 |
}
|
61 |
+
|
62 |
ksort($issuers);
|
63 |
return $issuers;
|
64 |
}
|
app/code/community/Adyen/Payment/Model/Adyen/Oneclick.php
CHANGED
@@ -33,6 +33,7 @@ class Adyen_Payment_Model_Adyen_Oneclick extends Adyen_Payment_Model_Adyen_Cc {
|
|
33 |
protected $_paymentMethod = 'oneclick';
|
34 |
protected $_canUseInternal = true; // not possible through backoffice interface
|
35 |
protected $_customerInteraction;
|
|
|
36 |
|
37 |
|
38 |
public function isAvailable($quote=null) {
|
@@ -166,6 +167,20 @@ class Adyen_Payment_Model_Adyen_Oneclick extends Adyen_Payment_Model_Adyen_Cc {
|
|
166 |
return $this->_getConfigData('recurring_payment_type', 'adyen_oneclick');
|
167 |
}
|
168 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
169 |
/**
|
170 |
* @param Adyen_Payment_Model_Billing_Agreement $billingAgreement
|
171 |
* @param Mage_Sales_Model_Quote_Payment $paymentInfo
|
33 |
protected $_paymentMethod = 'oneclick';
|
34 |
protected $_canUseInternal = true; // not possible through backoffice interface
|
35 |
protected $_customerInteraction;
|
36 |
+
protected $_canUseForMultishipping = true;
|
37 |
|
38 |
|
39 |
public function isAvailable($quote=null) {
|
167 |
return $this->_getConfigData('recurring_payment_type', 'adyen_oneclick');
|
168 |
}
|
169 |
|
170 |
+
|
171 |
+
/**
|
172 |
+
* @return Adyen_Payment_Model_Billing_Agreement
|
173 |
+
*/
|
174 |
+
public function getBillingAgreement()
|
175 |
+
{
|
176 |
+
$subscriptionReference = str_replace('adyen_oneclick_', '', $this->getCode());
|
177 |
+
|
178 |
+
return Mage::getModel('adyen/billing_agreement')->getCollection()
|
179 |
+
->addFieldToFilter('reference_id', $subscriptionReference)
|
180 |
+
->getFirstItem();
|
181 |
+
}
|
182 |
+
|
183 |
+
|
184 |
/**
|
185 |
* @param Adyen_Payment_Model_Billing_Agreement $billingAgreement
|
186 |
* @param Mage_Sales_Model_Quote_Payment $paymentInfo
|
app/code/community/Adyen/Payment/Model/Adyen/Openinvoice.php
CHANGED
@@ -191,9 +191,20 @@ class Adyen_Payment_Model_Adyen_Openinvoice extends Adyen_Payment_Model_Adyen_Hp
|
|
191 |
|
192 |
$billingAddress = $order->getBillingAddress();
|
193 |
$adyFields['shopper.firstName'] = $billingAddress->getFirstname();
|
|
|
|
|
|
|
|
|
|
|
194 |
$adyFields['shopper.lastName'] = $billingAddress->getLastname();
|
195 |
-
$adyFields['billingAddress.street'] = $helper->getStreet($billingAddress)->getName();
|
196 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
197 |
$adyFields['billingAddress.city'] = $billingAddress->getCity();
|
198 |
$adyFields['billingAddress.postalCode'] = $billingAddress->getPostcode();
|
199 |
$adyFields['billingAddress.stateOrProvince'] = $billingAddress->getRegionCode();
|
@@ -213,8 +224,13 @@ class Adyen_Payment_Model_Adyen_Openinvoice extends Adyen_Payment_Model_Adyen_Hp
|
|
213 |
$deliveryAddress = $order->getShippingAddress();
|
214 |
if($deliveryAddress != null)
|
215 |
{
|
216 |
-
$adyFields['deliveryAddress.street'] = $helper->getStreet($deliveryAddress)->getName();
|
217 |
-
$
|
|
|
|
|
|
|
|
|
|
|
218 |
$adyFields['deliveryAddress.city'] = $deliveryAddress->getCity();
|
219 |
$adyFields['deliveryAddress.postalCode'] = $deliveryAddress->getPostcode();
|
220 |
$adyFields['deliveryAddress.stateOrProvince'] = $deliveryAddress->getRegionCode();
|
@@ -237,8 +253,8 @@ class Adyen_Payment_Model_Adyen_Openinvoice extends Adyen_Payment_Model_Adyen_Hp
|
|
237 |
|
238 |
$customer = Mage::getModel('customer/customer')->load($adyFields['shopperReference']);
|
239 |
|
240 |
-
if($
|
241 |
-
$adyFields['shopper.gender'] =
|
242 |
} else {
|
243 |
// fix for OneStepCheckout (guest is not logged in but uses email that exists with account)
|
244 |
$_customer = Mage::getModel('customer/customer');
|
@@ -249,10 +265,9 @@ class Adyen_Payment_Model_Adyen_Openinvoice extends Adyen_Payment_Model_Adyen_Hp
|
|
249 |
$payment = $order->getPayment();
|
250 |
$customerGender = $payment->getAdditionalInformation('customerGender');
|
251 |
}
|
252 |
-
$adyFields['shopper.gender'] =
|
253 |
}
|
254 |
|
255 |
-
$adyFields['shopper.infix'] = $customer->getPrefix();
|
256 |
$dob = $customer->getDob();
|
257 |
|
258 |
if (!empty($dob)) {
|
@@ -271,8 +286,7 @@ class Adyen_Payment_Model_Adyen_Openinvoice extends Adyen_Payment_Model_Adyen_Hp
|
|
271 |
} else {
|
272 |
// checkout as guest use details from the order
|
273 |
$_customer = Mage::getModel('customer/customer');
|
274 |
-
$adyFields['shopper.gender'] =
|
275 |
-
$adyFields['shopper.infix'] = $order->getCustomerPrefix();
|
276 |
$dob = $order->getCustomerDob();
|
277 |
if (!empty($dob)) {
|
278 |
$adyFields['shopper.dateOfBirthDayOfMonth'] = $this->getDate($dob, 'd');
|
@@ -291,7 +305,6 @@ class Adyen_Payment_Model_Adyen_Openinvoice extends Adyen_Payment_Model_Adyen_Hp
|
|
291 |
if($order->getPayment()->getMethod() == "adyen_openinvoice" || $order->getPayment()->getMethodInstance()->getInfoInstance()->getCcType() == "klarna" || $order->getPayment()->getMethodInstance()->getInfoInstance()->getCcType() == "afterpay_default" ) {
|
292 |
// initialize values if they are empty
|
293 |
$adyFields['shopper.gender'] = (isset($adyFields['shopper.gender'])) ? $adyFields['shopper.gender'] : "";
|
294 |
-
$adyFields['shopper.infix'] = (isset($adyFields['shopper.infix'])) ? $adyFields['shopper.infix'] : "";
|
295 |
$adyFields['shopper.dateOfBirthDayOfMonth'] = (isset($adyFields['shopper.dateOfBirthDayOfMonth'])) ? $adyFields['shopper.dateOfBirthDayOfMonth'] : "";
|
296 |
$adyFields['shopper.dateOfBirthMonth'] = (isset($adyFields['shopper.dateOfBirthMonth'])) ? $adyFields['shopper.dateOfBirthMonth'] : "";
|
297 |
$adyFields['shopper.dateOfBirthYear'] = (isset($adyFields['shopper.dateOfBirthYear'])) ? $adyFields['shopper.dateOfBirthYear'] : "";
|
@@ -316,8 +329,16 @@ class Adyen_Payment_Model_Adyen_Openinvoice extends Adyen_Payment_Model_Adyen_Hp
|
|
316 |
$additional_data_sign['openinvoicedata.' . $linename . '.description'] = $item->getName();
|
317 |
$additional_data_sign['openinvoicedata.' . $linename . '.itemAmount'] = $helper->formatAmount($item->getPrice(), $currency);
|
318 |
$additional_data_sign['openinvoicedata.' . $linename . '.itemVatAmount'] = ($item->getTaxAmount() > 0 && $item->getPriceInclTax() > 0) ? $helper->formatAmount($item->getPriceInclTax(), $currency) - $helper->formatAmount($item->getPrice(), $currency):$helper->formatAmount($item->getTaxAmount(), $currency);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
319 |
$additional_data_sign['openinvoicedata.' . $linename . '.numberOfItems'] = (int) $item->getQtyOrdered();
|
320 |
|
|
|
321 |
if(($order->getPayment()->getMethod() == "adyen_openinvoice" && $openinvoiceType == "afterpay_default") || ($order->getPayment()->getMethodInstance()->getInfoInstance()->getCcType() == "afterpay_default")) {
|
322 |
$additional_data_sign['openinvoicedata.' . $linename . '.vatCategory'] = "High";
|
323 |
} else {
|
@@ -335,6 +356,7 @@ class Adyen_Payment_Model_Adyen_Openinvoice extends Adyen_Payment_Model_Adyen_Hp
|
|
335 |
$additional_data_sign['openinvoicedata.' . $linename . '.description'] = $helper->__('Total Discount');
|
336 |
$additional_data_sign['openinvoicedata.' . $linename . '.itemAmount'] = $helper->formatAmount($order->getDiscountAmount(), $currency);
|
337 |
$additional_data_sign['openinvoicedata.' . $linename . '.itemVatAmount'] = "0";
|
|
|
338 |
$additional_data_sign['openinvoicedata.' . $linename . '.numberOfItems'] = 1;
|
339 |
if(($order->getPayment()->getMethod() == "adyen_openinvoice" && $openinvoiceType == "afterpay_default") || ($order->getPayment()->getMethodInstance()->getInfoInstance()->getCcType() == "afterpay_default")) {
|
340 |
$additional_data_sign['openinvoicedata.' . $linename . '.vatCategory'] = "High";
|
@@ -352,7 +374,14 @@ class Adyen_Payment_Model_Adyen_Openinvoice extends Adyen_Payment_Model_Adyen_Hp
|
|
352 |
$additional_data_sign['openinvoicedata.' . $linename . '.description'] = $order->getShippingDescription();
|
353 |
$additional_data_sign['openinvoicedata.' . $linename . '.itemAmount'] = $helper->formatAmount($order->getShippingAmount(), $currency);
|
354 |
$additional_data_sign['openinvoicedata.' . $linename . '.itemVatAmount'] = $helper->formatAmount($order->getShippingTaxAmount(), $currency);
|
|
|
|
|
|
|
|
|
|
|
|
|
355 |
$additional_data_sign['openinvoicedata.' . $linename . '.numberOfItems'] = 1;
|
|
|
356 |
if(($order->getPayment()->getMethod() == "adyen_openinvoice" && $openinvoiceType == "afterpay_default") || ($order->getPayment()->getMethodInstance()->getInfoInstance()->getCcType() == "afterpay_default")) {
|
357 |
$additional_data_sign['openinvoicedata.' . $linename . '.vatCategory'] = "High";
|
358 |
} else {
|
@@ -366,7 +395,9 @@ class Adyen_Payment_Model_Adyen_Openinvoice extends Adyen_Payment_Model_Adyen_Hp
|
|
366 |
$additional_data_sign['openinvoicedata.' . $linename . '.description'] = $helper->__('Payment Fee');
|
367 |
$additional_data_sign['openinvoicedata.' . $linename . '.itemAmount'] = $helper->formatAmount($order->getPaymentFeeAmount(), $currency);
|
368 |
$additional_data_sign['openinvoicedata.' . $linename . '.itemVatAmount'] = "0";
|
|
|
369 |
$additional_data_sign['openinvoicedata.' . $linename . '.numberOfItems'] = 1;
|
|
|
370 |
if(($order->getPayment()->getMethod() == "adyen_openinvoice" && $openinvoiceType == "afterpay_default") || ($order->getPayment()->getMethodInstance()->getInfoInstance()->getCcType() == "afterpay_default")) {
|
371 |
$additional_data_sign['openinvoicedata.' . $linename . '.vatCategory'] = "High";
|
372 |
} else {
|
@@ -410,15 +441,20 @@ class Adyen_Payment_Model_Adyen_Openinvoice extends Adyen_Payment_Model_Adyen_Hp
|
|
410 |
return $adyFields;
|
411 |
}
|
412 |
|
413 |
-
|
414 |
-
|
415 |
-
|
416 |
-
|
417 |
-
|
418 |
-
|
419 |
-
|
420 |
-
$
|
421 |
-
|
|
|
|
|
|
|
|
|
|
|
422 |
}
|
423 |
|
424 |
/**
|
191 |
|
192 |
$billingAddress = $order->getBillingAddress();
|
193 |
$adyFields['shopper.firstName'] = $billingAddress->getFirstname();
|
194 |
+
|
195 |
+
if($billingAddress->getMiddlename() != "") {
|
196 |
+
$adyFields['shopper.infix'] = $billingAddress->getMiddlename();
|
197 |
+
}
|
198 |
+
|
199 |
$adyFields['shopper.lastName'] = $billingAddress->getLastname();
|
200 |
+
$adyFields['billingAddress.street'] = $helper->getStreet($billingAddress,true)->getName();
|
201 |
+
|
202 |
+
if($helper->getStreet($billingAddress,true)->getHouseNumber() == "") {
|
203 |
+
$adyFields['billingAddress.houseNumberOrName'] = "NA";
|
204 |
+
} else {
|
205 |
+
$adyFields['billingAddress.houseNumberOrName'] = $helper->getStreet($billingAddress,true)->getHouseNumber();
|
206 |
+
}
|
207 |
+
|
208 |
$adyFields['billingAddress.city'] = $billingAddress->getCity();
|
209 |
$adyFields['billingAddress.postalCode'] = $billingAddress->getPostcode();
|
210 |
$adyFields['billingAddress.stateOrProvince'] = $billingAddress->getRegionCode();
|
224 |
$deliveryAddress = $order->getShippingAddress();
|
225 |
if($deliveryAddress != null)
|
226 |
{
|
227 |
+
$adyFields['deliveryAddress.street'] = $helper->getStreet($deliveryAddress,true)->getName();
|
228 |
+
if($helper->getStreet($deliveryAddress,true)->getHouseNumber() == "") {
|
229 |
+
$adyFields['deliveryAddress.houseNumberOrName'] = "NA";
|
230 |
+
} else {
|
231 |
+
$adyFields['deliveryAddress.houseNumberOrName'] = $helper->getStreet($deliveryAddress,true)->getHouseNumber();
|
232 |
+
}
|
233 |
+
|
234 |
$adyFields['deliveryAddress.city'] = $deliveryAddress->getCity();
|
235 |
$adyFields['deliveryAddress.postalCode'] = $deliveryAddress->getPostcode();
|
236 |
$adyFields['deliveryAddress.stateOrProvince'] = $deliveryAddress->getRegionCode();
|
253 |
|
254 |
$customer = Mage::getModel('customer/customer')->load($adyFields['shopperReference']);
|
255 |
|
256 |
+
if($customer->getGender()) {
|
257 |
+
$adyFields['shopper.gender'] = $this->getGenderText($customer->getGender());
|
258 |
} else {
|
259 |
// fix for OneStepCheckout (guest is not logged in but uses email that exists with account)
|
260 |
$_customer = Mage::getModel('customer/customer');
|
265 |
$payment = $order->getPayment();
|
266 |
$customerGender = $payment->getAdditionalInformation('customerGender');
|
267 |
}
|
268 |
+
$adyFields['shopper.gender'] = $this->getGenderText($customerGender);
|
269 |
}
|
270 |
|
|
|
271 |
$dob = $customer->getDob();
|
272 |
|
273 |
if (!empty($dob)) {
|
286 |
} else {
|
287 |
// checkout as guest use details from the order
|
288 |
$_customer = Mage::getModel('customer/customer');
|
289 |
+
$adyFields['shopper.gender'] = $this->getGenderText($order->getCustomerGender());
|
|
|
290 |
$dob = $order->getCustomerDob();
|
291 |
if (!empty($dob)) {
|
292 |
$adyFields['shopper.dateOfBirthDayOfMonth'] = $this->getDate($dob, 'd');
|
305 |
if($order->getPayment()->getMethod() == "adyen_openinvoice" || $order->getPayment()->getMethodInstance()->getInfoInstance()->getCcType() == "klarna" || $order->getPayment()->getMethodInstance()->getInfoInstance()->getCcType() == "afterpay_default" ) {
|
306 |
// initialize values if they are empty
|
307 |
$adyFields['shopper.gender'] = (isset($adyFields['shopper.gender'])) ? $adyFields['shopper.gender'] : "";
|
|
|
308 |
$adyFields['shopper.dateOfBirthDayOfMonth'] = (isset($adyFields['shopper.dateOfBirthDayOfMonth'])) ? $adyFields['shopper.dateOfBirthDayOfMonth'] : "";
|
309 |
$adyFields['shopper.dateOfBirthMonth'] = (isset($adyFields['shopper.dateOfBirthMonth'])) ? $adyFields['shopper.dateOfBirthMonth'] : "";
|
310 |
$adyFields['shopper.dateOfBirthYear'] = (isset($adyFields['shopper.dateOfBirthYear'])) ? $adyFields['shopper.dateOfBirthYear'] : "";
|
329 |
$additional_data_sign['openinvoicedata.' . $linename . '.description'] = $item->getName();
|
330 |
$additional_data_sign['openinvoicedata.' . $linename . '.itemAmount'] = $helper->formatAmount($item->getPrice(), $currency);
|
331 |
$additional_data_sign['openinvoicedata.' . $linename . '.itemVatAmount'] = ($item->getTaxAmount() > 0 && $item->getPriceInclTax() > 0) ? $helper->formatAmount($item->getPriceInclTax(), $currency) - $helper->formatAmount($item->getPrice(), $currency):$helper->formatAmount($item->getTaxAmount(), $currency);
|
332 |
+
|
333 |
+
// Calculate vat percentage
|
334 |
+
$id = $item->getProductId();
|
335 |
+
$product = $this->_loadProductById($id);
|
336 |
+
$taxRate = $helper->getTaxRate($order, $product->getTaxClassId());
|
337 |
+
$additional_data_sign['openinvoicedata.' . $linename . '.itemVatPercentage'] = $helper->getMinorUnitTaxPercent($taxRate);
|
338 |
+
|
339 |
$additional_data_sign['openinvoicedata.' . $linename . '.numberOfItems'] = (int) $item->getQtyOrdered();
|
340 |
|
341 |
+
// afterpay_default_nl ?
|
342 |
if(($order->getPayment()->getMethod() == "adyen_openinvoice" && $openinvoiceType == "afterpay_default") || ($order->getPayment()->getMethodInstance()->getInfoInstance()->getCcType() == "afterpay_default")) {
|
343 |
$additional_data_sign['openinvoicedata.' . $linename . '.vatCategory'] = "High";
|
344 |
} else {
|
356 |
$additional_data_sign['openinvoicedata.' . $linename . '.description'] = $helper->__('Total Discount');
|
357 |
$additional_data_sign['openinvoicedata.' . $linename . '.itemAmount'] = $helper->formatAmount($order->getDiscountAmount(), $currency);
|
358 |
$additional_data_sign['openinvoicedata.' . $linename . '.itemVatAmount'] = "0";
|
359 |
+
$additional_data_sign['openinvoicedata.' . $linename . '.itemVatPercentage'] = "0";
|
360 |
$additional_data_sign['openinvoicedata.' . $linename . '.numberOfItems'] = 1;
|
361 |
if(($order->getPayment()->getMethod() == "adyen_openinvoice" && $openinvoiceType == "afterpay_default") || ($order->getPayment()->getMethodInstance()->getInfoInstance()->getCcType() == "afterpay_default")) {
|
362 |
$additional_data_sign['openinvoicedata.' . $linename . '.vatCategory'] = "High";
|
374 |
$additional_data_sign['openinvoicedata.' . $linename . '.description'] = $order->getShippingDescription();
|
375 |
$additional_data_sign['openinvoicedata.' . $linename . '.itemAmount'] = $helper->formatAmount($order->getShippingAmount(), $currency);
|
376 |
$additional_data_sign['openinvoicedata.' . $linename . '.itemVatAmount'] = $helper->formatAmount($order->getShippingTaxAmount(), $currency);
|
377 |
+
|
378 |
+
// Calculate vat percentage
|
379 |
+
$taxClass = Mage::getStoreConfig('tax/classes/shipping_tax_class', $order->getStoreId());
|
380 |
+
$taxRate = $helper->getTaxRate($order, $taxClass);
|
381 |
+
$additional_data_sign['openinvoicedata.' . $linename . '.itemVatPercentage'] = $helper->getMinorUnitTaxPercent($taxRate);
|
382 |
+
|
383 |
$additional_data_sign['openinvoicedata.' . $linename . '.numberOfItems'] = 1;
|
384 |
+
|
385 |
if(($order->getPayment()->getMethod() == "adyen_openinvoice" && $openinvoiceType == "afterpay_default") || ($order->getPayment()->getMethodInstance()->getInfoInstance()->getCcType() == "afterpay_default")) {
|
386 |
$additional_data_sign['openinvoicedata.' . $linename . '.vatCategory'] = "High";
|
387 |
} else {
|
395 |
$additional_data_sign['openinvoicedata.' . $linename . '.description'] = $helper->__('Payment Fee');
|
396 |
$additional_data_sign['openinvoicedata.' . $linename . '.itemAmount'] = $helper->formatAmount($order->getPaymentFeeAmount(), $currency);
|
397 |
$additional_data_sign['openinvoicedata.' . $linename . '.itemVatAmount'] = "0";
|
398 |
+
$additional_data_sign['openinvoicedata.' . $linename . '.itemVatPercentage'] = "0";
|
399 |
$additional_data_sign['openinvoicedata.' . $linename . '.numberOfItems'] = 1;
|
400 |
+
|
401 |
if(($order->getPayment()->getMethod() == "adyen_openinvoice" && $openinvoiceType == "afterpay_default") || ($order->getPayment()->getMethodInstance()->getInfoInstance()->getCcType() == "afterpay_default")) {
|
402 |
$additional_data_sign['openinvoicedata.' . $linename . '.vatCategory'] = "High";
|
403 |
} else {
|
441 |
return $adyFields;
|
442 |
}
|
443 |
|
444 |
+
protected function _loadProductById($id)
|
445 |
+
{
|
446 |
+
return Mage::getModel('catalog/product')->load($id);
|
447 |
+
}
|
448 |
+
|
449 |
+
protected function getGenderText($genderId)
|
450 |
+
{
|
451 |
+
$result = "";
|
452 |
+
if($genderId == '1') {
|
453 |
+
$result = 'MALE';
|
454 |
+
} elseif($genderId == '2') {
|
455 |
+
$result = 'FEMALE';
|
456 |
+
}
|
457 |
+
return $result;
|
458 |
}
|
459 |
|
460 |
/**
|
app/code/community/Adyen/Payment/Model/Adyen/PayByMail.php
CHANGED
@@ -38,7 +38,7 @@ class Adyen_Payment_Model_Adyen_PayByMail extends Adyen_Payment_Model_Adyen_Abst
|
|
38 |
protected $_paymentMethodType = 'hpp';
|
39 |
|
40 |
public function getPaymentMethodType() {
|
41 |
-
return $this
|
42 |
}
|
43 |
|
44 |
/**
|
38 |
protected $_paymentMethodType = 'hpp';
|
39 |
|
40 |
public function getPaymentMethodType() {
|
41 |
+
return $this->_paymentMethodType;
|
42 |
}
|
43 |
|
44 |
/**
|
app/code/community/Adyen/Payment/Model/Adyen/Pos.php
CHANGED
@@ -42,7 +42,7 @@ class Adyen_Payment_Model_Adyen_Pos extends Adyen_Payment_Model_Adyen_Abstract {
|
|
42 |
protected $_paymentMethodType = 'pos';
|
43 |
|
44 |
public function getPaymentMethodType() {
|
45 |
-
return $this
|
46 |
}
|
47 |
|
48 |
/*
|
42 |
protected $_paymentMethodType = 'pos';
|
43 |
|
44 |
public function getPaymentMethodType() {
|
45 |
+
return $this->_paymentMethodType;
|
46 |
}
|
47 |
|
48 |
/*
|
app/code/community/Adyen/Payment/Model/Billing/Agreement.php
CHANGED
@@ -96,7 +96,9 @@ class Adyen_Payment_Model_Billing_Agreement
|
|
96 |
public function getCustomerReference()
|
97 |
{
|
98 |
if (! $this->hasData('customer_reference')) {
|
99 |
-
$customerReference = $this->getCustomer()->getData('adyen_customer_ref')
|
|
|
|
|
100 |
$this->setData('customer_reference', $customerReference);
|
101 |
}
|
102 |
|
@@ -111,7 +113,7 @@ class Adyen_Payment_Model_Billing_Agreement
|
|
111 |
protected $_paymentMethodInstance = null;
|
112 |
|
113 |
/**
|
114 |
-
*
|
115 |
*
|
116 |
* @return Mage_Payment_Model_Method_Abstract
|
117 |
*/
|
@@ -119,9 +121,18 @@ class Adyen_Payment_Model_Billing_Agreement
|
|
119 |
{
|
120 |
if (is_null($this->_paymentMethodInstance)) {
|
121 |
$methodCode = $this->getMethodCode();
|
122 |
-
|
123 |
-
|
|
|
|
|
|
|
|
|
|
|
124 |
$this->_paymentMethodInstance = Mage::helper('payment')->getMethodInstance($methodInstanceName);
|
|
|
|
|
|
|
|
|
125 |
}
|
126 |
if ($this->_paymentMethodInstance) {
|
127 |
$this->_paymentMethodInstance->setStore($this->getStoreId());
|
96 |
public function getCustomerReference()
|
97 |
{
|
98 |
if (! $this->hasData('customer_reference')) {
|
99 |
+
$customerReference = $this->getCustomer()->getData('adyen_customer_ref')
|
100 |
+
?: $this->getCustomer()->getData('increment_id')
|
101 |
+
?: $this->getCustomerId();
|
102 |
$this->setData('customer_reference', $customerReference);
|
103 |
}
|
104 |
|
113 |
protected $_paymentMethodInstance = null;
|
114 |
|
115 |
/**
|
116 |
+
* Retrieve payment method instance
|
117 |
*
|
118 |
* @return Mage_Payment_Model_Method_Abstract
|
119 |
*/
|
121 |
{
|
122 |
if (is_null($this->_paymentMethodInstance)) {
|
123 |
$methodCode = $this->getMethodCode();
|
124 |
+
if ($this->getMethodCode() == 'adyen_oneclick') {
|
125 |
+
$referenceId = $this->getReferenceId();
|
126 |
+
$methodInstanceName = $methodCode . "_" . $referenceId;
|
127 |
+
}
|
128 |
+
else {
|
129 |
+
$methodInstanceName = $methodCode;
|
130 |
+
}
|
131 |
$this->_paymentMethodInstance = Mage::helper('payment')->getMethodInstance($methodInstanceName);
|
132 |
+
|
133 |
+
if (! $this->_paymentMethodInstance) {
|
134 |
+
$this->_paymentMethodInstance = Mage::helper('payment')->getMethodInstance($this->getMethodCode());
|
135 |
+
}
|
136 |
}
|
137 |
if ($this->_paymentMethodInstance) {
|
138 |
$this->_paymentMethodInstance->setStore($this->getStoreId());
|
app/code/community/Adyen/Payment/Model/Billing/Agreement/Observer.php
CHANGED
@@ -67,16 +67,14 @@ class Adyen_Payment_Model_Billing_Agreement_Observer
|
|
67 |
$baCollection = Mage::getResourceModel('adyen/billing_agreement_collection');
|
68 |
$baCollection->addFieldToFilter('customer_id', $customer->getId());
|
69 |
$baCollection->addFieldToFilter('store_id', $store->getId());
|
|
|
70 |
$baCollection->addActiveFilter();
|
71 |
|
72 |
foreach ($baCollection as $billingAgreement) {
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
$this->_createPaymentMethodFromBA($billingAgreement, $store);
|
79 |
-
|
80 |
}
|
81 |
|
82 |
Varien_Profiler::stop(__CLASS__.'::'.__FUNCTION__);
|
67 |
$baCollection = Mage::getResourceModel('adyen/billing_agreement_collection');
|
68 |
$baCollection->addFieldToFilter('customer_id', $customer->getId());
|
69 |
$baCollection->addFieldToFilter('store_id', $store->getId());
|
70 |
+
$baCollection->addFieldToFilter('method_code', 'adyen_oneclick');
|
71 |
$baCollection->addActiveFilter();
|
72 |
|
73 |
foreach ($baCollection as $billingAgreement) {
|
74 |
+
// only create payment method when label is set
|
75 |
+
if($billingAgreement->getAgreementLabel() != null) {
|
76 |
+
$this->_createPaymentMethodFromBA($billingAgreement, $store);
|
77 |
+
}
|
|
|
|
|
|
|
78 |
}
|
79 |
|
80 |
Varien_Profiler::stop(__CLASS__.'::'.__FUNCTION__);
|
app/code/community/Adyen/Payment/Model/Cronjob.php
CHANGED
@@ -41,13 +41,9 @@ class Adyen_Payment_Model_Cronjob {
|
|
41 |
*/
|
42 |
public function updateNotificationQueue()
|
43 |
{
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
$this->_debugData = Mage::getModel('adyen/processNotification')->updateNotProcessedNotifications();
|
48 |
-
|
49 |
-
$this->_debug(null);
|
50 |
-
}
|
51 |
}
|
52 |
|
53 |
/**
|
@@ -59,7 +55,7 @@ class Adyen_Payment_Model_Cronjob {
|
|
59 |
protected function _debug($storeId)
|
60 |
{
|
61 |
if ($this->_getConfigData('debug', 'adyen_abstract', $storeId)) {
|
62 |
-
$file = '
|
63 |
Mage::getModel('core/log_adapter', $file)->log($this->_debugData);
|
64 |
}
|
65 |
}
|
41 |
*/
|
42 |
public function updateNotificationQueue()
|
43 |
{
|
44 |
+
// call ProcessNotifications
|
45 |
+
$this->_debugData = Mage::getModel('adyen/processNotification')->updateNotProcessedNotifications();
|
46 |
+
$this->_debug(null);
|
|
|
|
|
|
|
|
|
47 |
}
|
48 |
|
49 |
/**
|
55 |
protected function _debug($storeId)
|
56 |
{
|
57 |
if ($this->_getConfigData('debug', 'adyen_abstract', $storeId)) {
|
58 |
+
$file = 'adyen_process_notification_cron.log';
|
59 |
Mage::getModel('core/log_adapter', $file)->log($this->_debugData);
|
60 |
}
|
61 |
}
|
app/code/community/Adyen/Payment/Model/GetPosOrderStatus.php
CHANGED
@@ -84,7 +84,7 @@ class Adyen_Payment_Model_GetPosOrderStatus extends Mage_Core_Model_Abstract {
|
|
84 |
{
|
85 |
$this->_debugData['getOrderStatus count: '.$count . ' pending'] = 'order has the status: '.$order->getStatus() . ' lets wait a second';
|
86 |
|
87 |
-
sleep(
|
88 |
++$count;
|
89 |
|
90 |
if($count > 5) {
|
@@ -100,7 +100,7 @@ class Adyen_Payment_Model_GetPosOrderStatus extends Mage_Core_Model_Abstract {
|
|
100 |
|
101 |
$this->_debugData['getOrderStatus count: '.$count . ' pending'] = 'order has the status: '.$order->getStatus() . ' lets wait a second';
|
102 |
|
103 |
-
sleep(
|
104 |
++$count;
|
105 |
|
106 |
if($count > 5) {
|
@@ -139,4 +139,4 @@ class Adyen_Payment_Model_GetPosOrderStatus extends Mage_Core_Model_Abstract {
|
|
139 |
return Mage::helper('adyen')->getConfigData($code, $paymentMethodCode, $storeId);
|
140 |
}
|
141 |
|
142 |
-
}
|
84 |
{
|
85 |
$this->_debugData['getOrderStatus count: '.$count . ' pending'] = 'order has the status: '.$order->getStatus() . ' lets wait a second';
|
86 |
|
87 |
+
sleep(2);
|
88 |
++$count;
|
89 |
|
90 |
if($count > 5) {
|
100 |
|
101 |
$this->_debugData['getOrderStatus count: '.$count . ' pending'] = 'order has the status: '.$order->getStatus() . ' lets wait a second';
|
102 |
|
103 |
+
sleep(2);
|
104 |
++$count;
|
105 |
|
106 |
if($count > 5) {
|
139 |
return Mage::helper('adyen')->getConfigData($code, $paymentMethodCode, $storeId);
|
140 |
}
|
141 |
|
142 |
+
}
|
app/code/community/Adyen/Payment/Model/Observer.php
CHANGED
@@ -56,6 +56,9 @@ class Adyen_Payment_Model_Observer {
|
|
56 |
{
|
57 |
Varien_Profiler::start(__CLASS__.'::'.__FUNCTION__);
|
58 |
|
|
|
|
|
|
|
59 |
if(!Mage::getStoreConfigFlag('payment/adyen_hpp/disable_hpptypes', $store)) {
|
60 |
$sortOrder = Mage::getStoreConfig('payment/adyen_hpp/sort_order', $store);
|
61 |
foreach ($this->_fetchHppMethods($store) as $methodCode => $methodData) {
|
@@ -64,8 +67,6 @@ class Adyen_Payment_Model_Observer {
|
|
64 |
}
|
65 |
|
66 |
$store->setConfig('payment/adyen_hpp/active', 0);
|
67 |
-
} else {
|
68 |
-
$store->setConfig('payment/adyen_ideal/active', 0);
|
69 |
}
|
70 |
|
71 |
Varien_Profiler::stop(__CLASS__.'::'.__FUNCTION__);
|
@@ -80,8 +81,9 @@ class Adyen_Payment_Model_Observer {
|
|
80 |
$methodNewCode = 'adyen_hpp_'.$methodCode;
|
81 |
|
82 |
if ($methodCode == 'ideal') {
|
83 |
-
unset($methodData['title']);
|
84 |
$methodNewCode = 'adyen_ideal';
|
|
|
|
|
85 |
} else {
|
86 |
$methodData = $methodData + Mage::getStoreConfig('payment/adyen_hpp', $store);
|
87 |
$methodData['model'] = 'adyen/adyen_hpp';
|
56 |
{
|
57 |
Varien_Profiler::start(__CLASS__.'::'.__FUNCTION__);
|
58 |
|
59 |
+
// by default disable adyen_ideal only if IDeal is in directoryLookup result show this payment method
|
60 |
+
$store->setConfig('payment/adyen_ideal/active', 0);
|
61 |
+
|
62 |
if(!Mage::getStoreConfigFlag('payment/adyen_hpp/disable_hpptypes', $store)) {
|
63 |
$sortOrder = Mage::getStoreConfig('payment/adyen_hpp/sort_order', $store);
|
64 |
foreach ($this->_fetchHppMethods($store) as $methodCode => $methodData) {
|
67 |
}
|
68 |
|
69 |
$store->setConfig('payment/adyen_hpp/active', 0);
|
|
|
|
|
70 |
}
|
71 |
|
72 |
Varien_Profiler::stop(__CLASS__.'::'.__FUNCTION__);
|
81 |
$methodNewCode = 'adyen_hpp_'.$methodCode;
|
82 |
|
83 |
if ($methodCode == 'ideal') {
|
|
|
84 |
$methodNewCode = 'adyen_ideal';
|
85 |
+
// enable adyen Ideal
|
86 |
+
$store->setConfig('payment/adyen_ideal/active', 1);
|
87 |
} else {
|
88 |
$methodData = $methodData + Mage::getStoreConfig('payment/adyen_hpp', $store);
|
89 |
$methodData['model'] = 'adyen/adyen_hpp';
|
app/code/community/Adyen/Payment/Model/ProcessNotification.php
CHANGED
@@ -87,28 +87,14 @@ class Adyen_Payment_Model_ProcessNotification extends Mage_Core_Model_Abstract {
|
|
87 |
$incrementId = $params->getData('merchantReference');
|
88 |
|
89 |
if($incrementId) {
|
90 |
-
$
|
91 |
-
|
92 |
-
// set StoreId for retrieving debug log setting
|
93 |
-
$storeId = $order->getStoreId();
|
94 |
-
|
95 |
-
$this->_updateOrder($order, $params);
|
96 |
-
} else {
|
97 |
-
$this->_debugData['error'] = 'Order does not exists with increment_id: ' . $incrementId;
|
98 |
-
$this->_addNotificationToQueue($params);
|
99 |
-
}
|
100 |
} else {
|
101 |
$this->_debugData['error'] = 'Empty merchantReference';
|
102 |
}
|
103 |
} else {
|
104 |
$this->_debugData['processResponse info'] = 'Skipping duplicate notification';
|
105 |
}
|
106 |
-
|
107 |
-
// update the queue if it is not processed by cronjob
|
108 |
-
if(!$this->_getConfigData('update_notification_cronjob')) {
|
109 |
-
$this->_updateNotProcessedNotifications();
|
110 |
-
}
|
111 |
-
|
112 |
$this->_debug($storeId);
|
113 |
}
|
114 |
|
@@ -153,8 +139,19 @@ class Adyen_Payment_Model_ProcessNotification extends Mage_Core_Model_Abstract {
|
|
153 |
* @param $order
|
154 |
* @param $params
|
155 |
*/
|
156 |
-
public function updateOrder($order, $params)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
157 |
$this->_updateOrder($order, $params);
|
|
|
|
|
|
|
|
|
158 |
}
|
159 |
/**
|
160 |
* @param $order
|
@@ -162,6 +159,11 @@ class Adyen_Payment_Model_ProcessNotification extends Mage_Core_Model_Abstract {
|
|
162 |
*/
|
163 |
protected function _updateOrder($order, $params)
|
164 |
{
|
|
|
|
|
|
|
|
|
|
|
165 |
$this->_debugData['_updateOrder'] = 'Updating the order';
|
166 |
|
167 |
Mage::dispatchEvent('adyen_payment_process_notifications_before', array('order' => $order, 'adyen_response' => $params));
|
@@ -180,25 +182,16 @@ class Adyen_Payment_Model_ProcessNotification extends Mage_Core_Model_Abstract {
|
|
180 |
// update order details
|
181 |
$this->_updateAdyenAttributes($order, $params);
|
182 |
|
183 |
-
// check if success is true of false
|
184 |
-
if (strcmp($this->_success, 'false') == 0 || strcmp($this->_success, '0') == 0) {
|
185 |
// Only cancel the order when it is in state pending, payment review or if the ORDER_CLOSED is failed (means split payment has not be successful)
|
186 |
if($order->getState() === Mage_Sales_Model_Order::STATE_PENDING_PAYMENT || $order->getState() === Mage_Sales_Model_Order::STATE_PAYMENT_REVIEW || $this->_eventCode == Adyen_Payment_Model_Event::ADYEN_EVENT_ORDER_CLOSED) {
|
187 |
$this->_debugData['_updateOrder info'] = 'Going to cancel the order';
|
188 |
|
189 |
-
// if payment is API check
|
190 |
if($this->_eventCode == Adyen_Payment_Model_Event::ADYEN_EVENT_AUTHORISATION && $this->_getPaymentMethodType($order) == 'api') {
|
191 |
-
|
192 |
-
|
193 |
-
if($previousAdyenEventCode != "AUTHORISATION : TRUE") {
|
194 |
-
$this->_holdCancelOrder($order, false);
|
195 |
-
} else {
|
196 |
-
$order->setAdyenEventCode($previousAdyenEventCode); // do not update the adyenEventCode
|
197 |
-
$this->_debugData['_updateOrder warning'] = 'order is not cancelled because previous notification was a authorisation that succeeded';
|
198 |
-
}
|
199 |
-
} else {
|
200 |
-
$this->_debugData['_updateOrder warning'] = 'order is not cancelled because pspReference does not match with the order';
|
201 |
-
}
|
202 |
} else {
|
203 |
// don't cancel the order if previous state is authorisation with success=true
|
204 |
if($previousAdyenEventCode != "AUTHORISATION : TRUE") {
|
@@ -216,12 +209,12 @@ class Adyen_Payment_Model_ProcessNotification extends Mage_Core_Model_Abstract {
|
|
216 |
$this->_processNotification($order);
|
217 |
}
|
218 |
|
219 |
-
// save event for duplication
|
220 |
-
$this->_storeNotification();
|
221 |
-
|
222 |
// update the order with status/adyen event and comment history
|
223 |
$order->save();
|
224 |
|
|
|
|
|
|
|
225 |
Mage::dispatchEvent('adyen_payment_process_notifications_after', array('order' => $order, 'adyen_response' => $params));
|
226 |
}
|
227 |
|
@@ -265,9 +258,16 @@ class Adyen_Payment_Model_ProcessNotification extends Mage_Core_Model_Abstract {
|
|
265 |
$this->_fraudManualReview = false;
|
266 |
}
|
267 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
268 |
$modification = isset($additionalData['modification']) ? $additionalData['modification'] : null;
|
269 |
if($modification && is_array($modification)) {
|
270 |
-
$this->_modificationResult = isset($
|
271 |
}
|
272 |
$additionalData2 = isset($additionalData['additionalData']) ? $additionalData['additionalData'] : null;
|
273 |
if($additionalData2 && is_array($additionalData2)) {
|
@@ -285,6 +285,31 @@ class Adyen_Payment_Model_ProcessNotification extends Mage_Core_Model_Abstract {
|
|
285 |
$this->_debugData['_updateAdyenAttributes'] = 'Updating the Adyen attributes of the order';
|
286 |
|
287 |
$additionalData = $params->getData('additionalData');
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
288 |
if($additionalData && is_array($additionalData)) {
|
289 |
$avsResult = (isset($additionalData['avsResult'])) ? $additionalData['avsResult'] : "";
|
290 |
$cvcResult = (isset($additionalData['cvcResult'])) ? $additionalData['cvcResult'] : "";
|
@@ -295,50 +320,40 @@ class Adyen_Payment_Model_ProcessNotification extends Mage_Core_Model_Abstract {
|
|
295 |
$authCode = (isset($additionalData['authCode'])) ? $additionalData['authCode'] : "";
|
296 |
}
|
297 |
|
298 |
-
$paymentObj = $order->getPayment();
|
299 |
-
$_paymentCode = $this->_paymentMethodCode($order);
|
300 |
-
|
301 |
// if there is no server communication setup try to get last4 digits from reason field
|
302 |
if(!isset($ccLast4) || $ccLast4 == "") {
|
303 |
$ccLast4 = $this->_retrieveLast4DigitsFromReason($this->_reason);
|
304 |
}
|
305 |
-
$paymentObj->setLastTransId($this->_merchantReference)
|
306 |
-
->setCcType($this->_paymentMethod);
|
307 |
|
308 |
-
|
309 |
-
|| $this->_eventCode == Adyen_Payment_Model_Event::ADYEN_EVENT_HANDLED_EXTERNALLY
|
310 |
-
|| ($this->_eventCode == Adyen_Payment_Model_Event::ADYEN_EVENT_CAPTURE && $_paymentCode == "adyen_pos"))
|
311 |
-
{
|
312 |
-
$paymentObj->setAdyenPspReference($this->_pspReference);
|
313 |
-
if($this->_klarnaReservationNumber != "") {
|
314 |
-
$paymentObj->setAdyenKlarnaNumber($this->_klarnaReservationNumber);
|
315 |
-
}
|
316 |
-
if(isset($ccLast4) && $ccLast4 != "") {
|
317 |
-
$paymentObj->setccLast4($ccLast4);
|
318 |
-
}
|
319 |
-
if(isset($avsResult) && $avsResult != "") {
|
320 |
-
$paymentObj->setAdyenAvsResult($avsResult);
|
321 |
-
}
|
322 |
-
if(isset($cvcResult) && $cvcResult != "") {
|
323 |
-
$paymentObj->setAdyenCvcResult($cvcResult);
|
324 |
-
}
|
325 |
-
if($this->_boletoPaidAmount != "") {
|
326 |
-
$paymentObj->setAdyenBoletoPaidAmount($this->_boletoPaidAmount);
|
327 |
-
}
|
328 |
-
if(isset($totalFraudScore) && $totalFraudScore != "") {
|
329 |
-
$paymentObj->setAdyenTotalFraudScore($totalFraudScore);
|
330 |
-
}
|
331 |
-
if(isset($refusalReasonRaw) && $refusalReasonRaw != "") {
|
332 |
-
$paymentObj->setAdyenRefusalReasonRaw($refusalReasonRaw);
|
333 |
-
}
|
334 |
-
if(isset($acquirerReference) && $acquirerReference != "") {
|
335 |
-
$paymentObj->setAdyenAcquirerReference($acquirerReference);
|
336 |
-
}
|
337 |
-
if(isset($authCode) && $authCode != "") {
|
338 |
-
$paymentObj->setAdyenAuthCode($authCode);
|
339 |
-
}
|
340 |
-
}
|
341 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
342 |
}
|
343 |
|
344 |
/**
|
@@ -441,7 +456,7 @@ class Adyen_Payment_Model_ProcessNotification extends Mage_Core_Model_Abstract {
|
|
441 |
if($_paymentCode != "adyen_pos") {
|
442 |
// ignore capture if you are on auto capture (this could be called if manual review is enabled and you have a capture delay)
|
443 |
if (!$this->_isAutoCapture($order)) {
|
444 |
-
$this->_setPaymentAuthorized($order, false, true);
|
445 |
}
|
446 |
} else {
|
447 |
|
@@ -467,9 +482,9 @@ class Adyen_Payment_Model_ProcessNotification extends Mage_Core_Model_Abstract {
|
|
467 |
$this->_setRefundAuthorized($order);
|
468 |
}
|
469 |
} else {
|
470 |
-
|
471 |
-
|
472 |
-
|
473 |
$this->_debugData['_processNotification info'] = 'try to cancel the order';
|
474 |
$this->_holdCancelOrder($order, true);
|
475 |
} else {
|
@@ -575,7 +590,7 @@ class Adyen_Payment_Model_ProcessNotification extends Mage_Core_Model_Abstract {
|
|
575 |
*/
|
576 |
protected function _uncancelOrder($order) {
|
577 |
|
578 |
-
if($order->isCanceled()) {
|
579 |
|
580 |
$this->_debugData['_uncancelOrder'] = 'Uncancel the order because could be that it is cancelled in a previous notification';
|
581 |
|
@@ -673,10 +688,29 @@ class Adyen_Payment_Model_ProcessNotification extends Mage_Core_Model_Abstract {
|
|
673 |
protected function _setRefundAuthorized($order)
|
674 |
{
|
675 |
$this->_debugData['_setRefundAuthorized'] = 'Status update to default status or refund_authorized status if this is set';
|
676 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
677 |
$status = (!empty($status)) ? $status : $order->getStatus();
|
678 |
$order->addStatusHistoryComment(Mage::helper('adyen')->__('Adyen Refund Successfully completed'), $status);
|
679 |
$order->sendOrderUpdateEmail((bool) $this->_getConfigData('send_update_mail', 'adyen_abstract', $order->getStoreId()));
|
|
|
|
|
|
|
|
|
680 |
}
|
681 |
|
682 |
/**
|
@@ -691,7 +725,6 @@ class Adyen_Payment_Model_ProcessNotification extends Mage_Core_Model_Abstract {
|
|
691 |
|
692 |
$fraudManualReviewStatus = $this->_getFraudManualReviewStatus($order);
|
693 |
|
694 |
-
|
695 |
// If manual review is active and a seperate status is used then ignore the pre authorized status
|
696 |
if($this->_fraudManualReview != true || $fraudManualReviewStatus == "") {
|
697 |
$this->_setPrePaymentAuthorized($order);
|
@@ -726,6 +759,10 @@ class Adyen_Payment_Model_ProcessNotification extends Mage_Core_Model_Abstract {
|
|
726 |
if(!empty($status)) {
|
727 |
$order->addStatusHistoryComment(Mage::helper('adyen')->__('Payment is pre authorised waiting for capture'), $status);
|
728 |
$order->sendOrderUpdateEmail((bool) $this->_getConfigData('send_update_mail', 'adyen_abstract', $order->getStoreId()));
|
|
|
|
|
|
|
|
|
729 |
$this->_debugData['_setPrePaymentAuthorized'] = 'Order status is changed to Pre-authorised status, status is ' . $status;
|
730 |
} else {
|
731 |
$this->_debugData['_setPrePaymentAuthorized'] = 'No pre-authorised status is used so ignore';
|
@@ -761,6 +798,10 @@ class Adyen_Payment_Model_ProcessNotification extends Mage_Core_Model_Abstract {
|
|
761 |
$status = $fraudManualReviewStatus;
|
762 |
$comment = "Adyen Payment is in Manual Review check the Adyen platform";
|
763 |
$order->addStatusHistoryComment(Mage::helper('adyen')->__($comment), $status);
|
|
|
|
|
|
|
|
|
764 |
}
|
765 |
}
|
766 |
|
@@ -868,9 +909,21 @@ class Adyen_Payment_Model_ProcessNotification extends Mage_Core_Model_Abstract {
|
|
868 |
$invoice->register()->pay();
|
869 |
}
|
870 |
|
871 |
-
$invoice->save();
|
872 |
|
873 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
874 |
} catch (Exception $e) {
|
875 |
$this->_debugData['_createInvoice error'] = 'Error saving invoice. The error message is: ' . $e->getMessage();
|
876 |
Mage::logException($e);
|
@@ -945,7 +998,7 @@ class Adyen_Payment_Model_ProcessNotification extends Mage_Core_Model_Abstract {
|
|
945 |
}
|
946 |
|
947 |
protected function _getPaymentMethodType($order) {
|
948 |
-
return $order->getPayment()->getPaymentMethodType();
|
949 |
}
|
950 |
|
951 |
/**
|
@@ -964,7 +1017,7 @@ class Adyen_Payment_Model_ProcessNotification extends Mage_Core_Model_Abstract {
|
|
964 |
/**
|
965 |
* @param $order
|
966 |
*/
|
967 |
-
protected function _setPaymentAuthorized($order, $manualReviewComment = true, $createInvoice = false)
|
968 |
{
|
969 |
$this->_debugData['_setPaymentAuthorized start'] = 'Set order to authorised';
|
970 |
|
@@ -976,13 +1029,31 @@ class Adyen_Payment_Model_ProcessNotification extends Mage_Core_Model_Abstract {
|
|
976 |
// create invoice for the capture notification if you are on manual capture
|
977 |
if($createInvoice == true && $amount == $orderAmount) {
|
978 |
$this->_debugData['_setPaymentAuthorized amount'] = 'amount notification:'.$amount . ' amount order:'.$orderAmount;
|
|
|
979 |
$this->_createInvoice($order);
|
980 |
}
|
981 |
|
982 |
-
|
|
|
983 |
$captureOnShipment = $this->_getConfigData('capture_on_shipment', 'adyen_abstract', $order->getStoreId());
|
984 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
985 |
$status = $this->_getConfigData('payment_authorized', 'adyen_abstract', $order->getStoreId());
|
|
|
|
|
|
|
|
|
|
|
986 |
}
|
987 |
|
988 |
// virtual order can have different status
|
@@ -991,6 +1062,10 @@ class Adyen_Payment_Model_ProcessNotification extends Mage_Core_Model_Abstract {
|
|
991 |
$virtual_status = $this->_getConfigData('payment_authorized_virtual');
|
992 |
if($virtual_status != "") {
|
993 |
$status = $virtual_status;
|
|
|
|
|
|
|
|
|
994 |
}
|
995 |
}
|
996 |
|
@@ -1038,7 +1113,11 @@ class Adyen_Payment_Model_ProcessNotification extends Mage_Core_Model_Abstract {
|
|
1038 |
$status = (!empty($status)) ? $status : $order->getStatus();
|
1039 |
$order->addStatusHistoryComment(Mage::helper('adyen')->__($comment), $status);
|
1040 |
$order->sendOrderUpdateEmail((bool) $this->_getConfigData('send_update_mail', 'adyen_abstract', $order->getStoreId()));
|
1041 |
-
|
|
|
|
|
|
|
|
|
1042 |
}
|
1043 |
|
1044 |
/**
|
@@ -1119,6 +1198,11 @@ class Adyen_Payment_Model_ProcessNotification extends Mage_Core_Model_Abstract {
|
|
1119 |
$pendingStatus = $this->_getConfigData('pending_status', 'adyen_abstract', $order->getStoreId());
|
1120 |
if($pendingStatus != "") {
|
1121 |
$order->addStatusHistoryComment($comment, $pendingStatus);
|
|
|
|
|
|
|
|
|
|
|
1122 |
$this->_debugData['_addStatusHistoryComment'] = 'Created comment history for this notification with status change to: ' . $pendingStatus;
|
1123 |
return;
|
1124 |
}
|
@@ -1130,6 +1214,10 @@ class Adyen_Payment_Model_ProcessNotification extends Mage_Core_Model_Abstract {
|
|
1130 |
{
|
1131 |
$manualReviewAcceptStatus = $this->_getFraudManualReviewAcceptStatus($order);
|
1132 |
$order->addStatusHistoryComment($comment, $manualReviewAcceptStatus);
|
|
|
|
|
|
|
|
|
1133 |
$this->_debugData['_addStatusHistoryComment'] = 'Created comment history for this notification with status change to: ' . $manualReviewAcceptStatus;
|
1134 |
return;
|
1135 |
}
|
@@ -1184,60 +1272,27 @@ class Adyen_Payment_Model_ProcessNotification extends Mage_Core_Model_Abstract {
|
|
1184 |
|
1185 |
$eventCode = trim($params->getData('eventCode'));
|
1186 |
$success = (trim($params->getData('success')) == 'true' || trim($params->getData('success')) == '1') ? true : false;
|
1187 |
-
|
1188 |
-
if($
|
1189 |
-
|
1190 |
-
$pspReference = $params->getData('pspReference');
|
1191 |
-
if(is_numeric($pspReference)) {
|
1192 |
-
$this->_debugData['AddNotificationToQueue Step1'] = 'Going to add notification to queue';
|
1193 |
-
|
1194 |
-
$incrementId = $params->getData('merchantReference');
|
1195 |
-
$pspReference = $params->getData('pspReference');
|
1196 |
-
$eventCode = $params->getData('eventCode');
|
1197 |
|
1198 |
-
|
1199 |
-
|
1200 |
-
|
1201 |
-
|
1202 |
-
|
1203 |
-
|
1204 |
-
|
1205 |
-
|
1206 |
-
|
|
|
|
|
|
|
|
|
|
|
1207 |
|
1208 |
-
if($eventQueue) {
|
1209 |
-
$this->_debugData['AddNotificationToQueue Step2'] = 'Notification already in the queue';
|
1210 |
-
$attempt = (int)$eventQueue->getAttempt();
|
1211 |
-
try{
|
1212 |
-
$eventQueue->setAttempt(++$attempt);
|
1213 |
-
$eventQueue->save();
|
1214 |
-
$this->_debugData['AddNotificationToQueue Step3'] = 'Updated the attempt of the Queue to ' . $eventQueue->getAttempt();
|
1215 |
-
} catch(Exception $e) {
|
1216 |
-
$this->_debugData['AddNotificationToQueue error'] = 'Could not update the notification to queue, reason: ' . $e->getMessage();
|
1217 |
-
Mage::logException($e);
|
1218 |
-
}
|
1219 |
-
} else {
|
1220 |
-
try {
|
1221 |
-
// add current request to the queue
|
1222 |
-
$eventQueue = Mage::getModel('adyen/event_queue');
|
1223 |
-
$eventQueue->setPspReference($pspReference);
|
1224 |
-
$eventQueue->setAdyenEventCode($eventCode);
|
1225 |
-
$eventQueue->setIncrementId($incrementId);
|
1226 |
-
$eventQueue->setAttempt(1);
|
1227 |
-
$eventQueue->setResponse(serialize($params));
|
1228 |
-
$eventQueue->setCreatedAt(now());
|
1229 |
-
$eventQueue->save();
|
1230 |
-
$this->_debugData['AddNotificationToQueue Step2'] = 'Notification is added to the queue';
|
1231 |
-
} catch(Exception $e) {
|
1232 |
-
$this->_debugData['AddNotificationToQueue error'] = 'Could not save the notification to queue, reason: ' . $e->getMessage();
|
1233 |
-
Mage::logException($e);
|
1234 |
-
}
|
1235 |
-
}
|
1236 |
-
} else {
|
1237 |
-
$this->_debugData['AddNotificationToQueue'] = 'Notification is a TEST Notification so do not add to queue';
|
1238 |
-
}
|
1239 |
} else {
|
1240 |
-
$this->_debugData['AddNotificationToQueue'] = 'Notification is
|
1241 |
}
|
1242 |
}
|
1243 |
|
@@ -1264,47 +1319,55 @@ class Adyen_Payment_Model_ProcessNotification extends Mage_Core_Model_Abstract {
|
|
1264 |
protected function _updateNotProcessedNotifications() {
|
1265 |
|
1266 |
$this->_debugData['UpdateNotProcessedEvents Step1'] = 'Going to update Notifications from the queue';
|
|
|
1267 |
// try to update old notifications that did not processed yet
|
1268 |
$collection = Mage::getModel('adyen/event_queue')->getCollection()
|
1269 |
-
->addFieldToFilter('attempt', array('lteq' => '4'))
|
|
|
|
|
|
|
|
|
|
|
1270 |
|
1271 |
if($collection->getSize() > 0) {
|
1272 |
foreach($collection as $event){
|
1273 |
-
if($event->getAdyenEventCode() == Adyen_Payment_Model_Event::ADYEN_EVENT_AUTHORISATION) {
|
1274 |
|
1275 |
-
|
1276 |
|
1277 |
-
|
1278 |
|
1279 |
-
|
1280 |
-
|
1281 |
|
1282 |
-
|
1283 |
-
|
1284 |
-
|
1285 |
|
1286 |
-
|
1287 |
|
|
|
|
|
1288 |
$this->_updateOrder($order, $params);
|
1289 |
-
|
1290 |
-
// update event that it is processed
|
1291 |
-
try{
|
1292 |
-
// @codingStandardsIgnoreStart
|
1293 |
-
$event->delete();
|
1294 |
-
// @codingStandardsIgnoreEnd
|
1295 |
-
$this->_debugData['UpdateNotProcessedEvents Step4'] = 'Notification is processed and removed from the queue';
|
1296 |
-
} catch(Exception $e) {
|
1297 |
-
Mage::logException($e);
|
1298 |
-
}
|
1299 |
} else {
|
1300 |
-
//
|
1301 |
-
$
|
1302 |
-
|
|
|
|
|
|
|
1303 |
// @codingStandardsIgnoreStart
|
1304 |
-
$event->
|
1305 |
// @codingStandardsIgnoreEnd
|
1306 |
-
$this->_debugData['UpdateNotProcessedEvents
|
|
|
|
|
1307 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
1308 |
}
|
1309 |
}
|
1310 |
} else {
|
@@ -1344,4 +1407,4 @@ class Adyen_Payment_Model_ProcessNotification extends Mage_Core_Model_Abstract {
|
|
1344 |
{
|
1345 |
return Mage::app()->getRequest();
|
1346 |
}
|
1347 |
-
}
|
87 |
$incrementId = $params->getData('merchantReference');
|
88 |
|
89 |
if($incrementId) {
|
90 |
+
$this->_debugData['error'] = 'Add this notification with Order increment_id to queue: ' . $incrementId;
|
91 |
+
$this->_addNotificationToQueue($params);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
92 |
} else {
|
93 |
$this->_debugData['error'] = 'Empty merchantReference';
|
94 |
}
|
95 |
} else {
|
96 |
$this->_debugData['processResponse info'] = 'Skipping duplicate notification';
|
97 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
98 |
$this->_debug($storeId);
|
99 |
}
|
100 |
|
139 |
* @param $order
|
140 |
* @param $params
|
141 |
*/
|
142 |
+
public function updateOrder($order, $params)
|
143 |
+
{
|
144 |
+
$this->_debugData = array();
|
145 |
+
|
146 |
+
$this->_debugData['processPosResponse begin'] = 'Begin to process this specific notification from the queue';
|
147 |
+
|
148 |
+
$this->_debugData['params'] = $params;
|
149 |
+
|
150 |
$this->_updateOrder($order, $params);
|
151 |
+
|
152 |
+
$this->_debugData['processPosResponse end'] = 'end of process notification';
|
153 |
+
|
154 |
+
return $this->_debugData;
|
155 |
}
|
156 |
/**
|
157 |
* @param $order
|
159 |
*/
|
160 |
protected function _updateOrder($order, $params)
|
161 |
{
|
162 |
+
if (!($order->getPayment()->getMethodInstance() instanceof Adyen_Payment_Model_Adyen_Abstract)) {
|
163 |
+
// This method only applies to Adyen orders
|
164 |
+
return;
|
165 |
+
}
|
166 |
+
|
167 |
$this->_debugData['_updateOrder'] = 'Updating the order';
|
168 |
|
169 |
Mage::dispatchEvent('adyen_payment_process_notifications_before', array('order' => $order, 'adyen_response' => $params));
|
182 |
// update order details
|
183 |
$this->_updateAdyenAttributes($order, $params);
|
184 |
|
185 |
+
// check if success is true of false or empty
|
186 |
+
if (strcmp($this->_success, 'false') == 0 || strcmp($this->_success, '0') == 0 || strcmp($this->_success, '') == 0) {
|
187 |
// Only cancel the order when it is in state pending, payment review or if the ORDER_CLOSED is failed (means split payment has not be successful)
|
188 |
if($order->getState() === Mage_Sales_Model_Order::STATE_PENDING_PAYMENT || $order->getState() === Mage_Sales_Model_Order::STATE_PAYMENT_REVIEW || $this->_eventCode == Adyen_Payment_Model_Event::ADYEN_EVENT_ORDER_CLOSED) {
|
189 |
$this->_debugData['_updateOrder info'] = 'Going to cancel the order';
|
190 |
|
191 |
+
// if payment is API check and if notification is an authorisation
|
192 |
if($this->_eventCode == Adyen_Payment_Model_Event::ADYEN_EVENT_AUTHORISATION && $this->_getPaymentMethodType($order) == 'api') {
|
193 |
+
// don't cancel the order becasue order was successfull through api
|
194 |
+
$this->_debugData['_updateOrder warning'] = 'order is not cancelled because api result was succesfull';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
195 |
} else {
|
196 |
// don't cancel the order if previous state is authorisation with success=true
|
197 |
if($previousAdyenEventCode != "AUTHORISATION : TRUE") {
|
209 |
$this->_processNotification($order);
|
210 |
}
|
211 |
|
|
|
|
|
|
|
212 |
// update the order with status/adyen event and comment history
|
213 |
$order->save();
|
214 |
|
215 |
+
// save event for duplication
|
216 |
+
$this->_storeNotification();
|
217 |
+
|
218 |
Mage::dispatchEvent('adyen_payment_process_notifications_after', array('order' => $order, 'adyen_response' => $params));
|
219 |
}
|
220 |
|
258 |
$this->_fraudManualReview = false;
|
259 |
}
|
260 |
|
261 |
+
// modification.action is it for JSON
|
262 |
+
$modificationActionJson = isset($additionalData['modification.action']) ? $additionalData['modification.action'] : null;
|
263 |
+
if($modificationActionJson != "") {
|
264 |
+
$this->_modificationResult = $modificationActionJson;
|
265 |
+
}
|
266 |
+
|
267 |
+
// HTTP POST and SOAP have this in a array
|
268 |
$modification = isset($additionalData['modification']) ? $additionalData['modification'] : null;
|
269 |
if($modification && is_array($modification)) {
|
270 |
+
$this->_modificationResult = isset($modification['action']) ? trim($modification['action']) : "";
|
271 |
}
|
272 |
$additionalData2 = isset($additionalData['additionalData']) ? $additionalData['additionalData'] : null;
|
273 |
if($additionalData2 && is_array($additionalData2)) {
|
285 |
$this->_debugData['_updateAdyenAttributes'] = 'Updating the Adyen attributes of the order';
|
286 |
|
287 |
$additionalData = $params->getData('additionalData');
|
288 |
+
$paymentObj = $order->getPayment();
|
289 |
+
$_paymentCode = $this->_paymentMethodCode($order);
|
290 |
+
|
291 |
+
$paymentObj->setLastTransId($this->_merchantReference)
|
292 |
+
->setCcType($this->_paymentMethod);
|
293 |
+
|
294 |
+
if ($this->_eventCode == Adyen_Payment_Model_Event::ADYEN_EVENT_AUTHORISATION
|
295 |
+
|| $this->_eventCode == Adyen_Payment_Model_Event::ADYEN_EVENT_HANDLED_EXTERNALLY
|
296 |
+
|| ($this->_eventCode == Adyen_Payment_Model_Event::ADYEN_EVENT_CAPTURE && $_paymentCode == "adyen_pos"))
|
297 |
+
{
|
298 |
+
|
299 |
+
// if current notification is authorisation : false and the previous notification was authorisation : true do not update pspreference
|
300 |
+
if (strcmp($this->_success, 'false') == 0 || strcmp($this->_success, '0') == 0 || strcmp($this->_success, '') == 0) {
|
301 |
+
$previousAdyenEventCode = $order->getAdyenEventCode();
|
302 |
+
if ($previousAdyenEventCode != "AUTHORISATION : TRUE") {
|
303 |
+
$this->_updateOrderPaymentWithAdyenAttributes($paymentObj, $additionalData);
|
304 |
+
}
|
305 |
+
} else {
|
306 |
+
$this->_updateOrderPaymentWithAdyenAttributes($paymentObj, $additionalData);
|
307 |
+
}
|
308 |
+
}
|
309 |
+
}
|
310 |
+
|
311 |
+
protected function _updateOrderPaymentWithAdyenAttributes($paymentObj, $additionalData)
|
312 |
+
{
|
313 |
if($additionalData && is_array($additionalData)) {
|
314 |
$avsResult = (isset($additionalData['avsResult'])) ? $additionalData['avsResult'] : "";
|
315 |
$cvcResult = (isset($additionalData['cvcResult'])) ? $additionalData['cvcResult'] : "";
|
320 |
$authCode = (isset($additionalData['authCode'])) ? $additionalData['authCode'] : "";
|
321 |
}
|
322 |
|
|
|
|
|
|
|
323 |
// if there is no server communication setup try to get last4 digits from reason field
|
324 |
if(!isset($ccLast4) || $ccLast4 == "") {
|
325 |
$ccLast4 = $this->_retrieveLast4DigitsFromReason($this->_reason);
|
326 |
}
|
|
|
|
|
327 |
|
328 |
+
$paymentObj->setAdyenPspReference($this->_pspReference);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
329 |
|
330 |
+
if($this->_klarnaReservationNumber != "") {
|
331 |
+
$paymentObj->setAdyenKlarnaNumber($this->_klarnaReservationNumber);
|
332 |
+
}
|
333 |
+
if(isset($ccLast4) && $ccLast4 != "") {
|
334 |
+
$paymentObj->setccLast4($ccLast4);
|
335 |
+
}
|
336 |
+
if(isset($avsResult) && $avsResult != "") {
|
337 |
+
$paymentObj->setAdyenAvsResult($avsResult);
|
338 |
+
}
|
339 |
+
if(isset($cvcResult) && $cvcResult != "") {
|
340 |
+
$paymentObj->setAdyenCvcResult($cvcResult);
|
341 |
+
}
|
342 |
+
if($this->_boletoPaidAmount != "") {
|
343 |
+
$paymentObj->setAdyenBoletoPaidAmount($this->_boletoPaidAmount);
|
344 |
+
}
|
345 |
+
if(isset($totalFraudScore) && $totalFraudScore != "") {
|
346 |
+
$paymentObj->setAdyenTotalFraudScore($totalFraudScore);
|
347 |
+
}
|
348 |
+
if(isset($refusalReasonRaw) && $refusalReasonRaw != "") {
|
349 |
+
$paymentObj->setAdyenRefusalReasonRaw($refusalReasonRaw);
|
350 |
+
}
|
351 |
+
if(isset($acquirerReference) && $acquirerReference != "") {
|
352 |
+
$paymentObj->setAdyenAcquirerReference($acquirerReference);
|
353 |
+
}
|
354 |
+
if(isset($authCode) && $authCode != "") {
|
355 |
+
$paymentObj->setAdyenAuthCode($authCode);
|
356 |
+
}
|
357 |
}
|
358 |
|
359 |
/**
|
456 |
if($_paymentCode != "adyen_pos") {
|
457 |
// ignore capture if you are on auto capture (this could be called if manual review is enabled and you have a capture delay)
|
458 |
if (!$this->_isAutoCapture($order)) {
|
459 |
+
$this->_setPaymentAuthorized($order, false, true, true);
|
460 |
}
|
461 |
} else {
|
462 |
|
482 |
$this->_setRefundAuthorized($order);
|
483 |
}
|
484 |
} else {
|
485 |
+
if ($order->isCanceled() || $order->getState() === Mage_Sales_Model_Order::STATE_HOLDED) {
|
486 |
+
$this->_debugData['_processNotification info'] = 'Order is already cancelled or holded so do nothing';
|
487 |
+
} else if ($order->canCancel() || $order->canHold()) {
|
488 |
$this->_debugData['_processNotification info'] = 'try to cancel the order';
|
489 |
$this->_holdCancelOrder($order, true);
|
490 |
} else {
|
590 |
*/
|
591 |
protected function _uncancelOrder($order) {
|
592 |
|
593 |
+
if($order->isCanceled() && $this->_getConfigData('uncancelorder', 'adyen_abstract')) {
|
594 |
|
595 |
$this->_debugData['_uncancelOrder'] = 'Uncancel the order because could be that it is cancelled in a previous notification';
|
596 |
|
688 |
protected function _setRefundAuthorized($order)
|
689 |
{
|
690 |
$this->_debugData['_setRefundAuthorized'] = 'Status update to default status or refund_authorized status if this is set';
|
691 |
+
|
692 |
+
|
693 |
+
// check if it is a full or partial refund
|
694 |
+
$amount = $this->_value;
|
695 |
+
$currency = $order->getOrderCurrencyCode();
|
696 |
+
$orderAmount = (int) Mage::helper('adyen')->formatAmount($order->getGrandTotal(), $currency);
|
697 |
+
|
698 |
+
if($amount == $orderAmount) {
|
699 |
+
$status = $this->_getConfigData('refund_authorized', 'adyen_abstract', $order->getStoreId());
|
700 |
+
$this->_debugData['_setRefundAuthorized full'] = 'This is a full refund. Status selected is:'.$status;
|
701 |
+
} else {
|
702 |
+
$status = $this->_getConfigData('refund_partial_authorized', 'adyen_abstract', $order->getStoreId());
|
703 |
+
$this->_debugData['_setRefundAuthorized partial'] = 'This is a partial refund. Status selected is:'.$status;
|
704 |
+
}
|
705 |
+
|
706 |
+
// if no status is selected don't change the status and use current status
|
707 |
$status = (!empty($status)) ? $status : $order->getStatus();
|
708 |
$order->addStatusHistoryComment(Mage::helper('adyen')->__('Adyen Refund Successfully completed'), $status);
|
709 |
$order->sendOrderUpdateEmail((bool) $this->_getConfigData('send_update_mail', 'adyen_abstract', $order->getStoreId()));
|
710 |
+
/**
|
711 |
+
* save the order this is needed for older magento version so that status is not reverted to state NEW
|
712 |
+
*/
|
713 |
+
$order->save();
|
714 |
}
|
715 |
|
716 |
/**
|
725 |
|
726 |
$fraudManualReviewStatus = $this->_getFraudManualReviewStatus($order);
|
727 |
|
|
|
728 |
// If manual review is active and a seperate status is used then ignore the pre authorized status
|
729 |
if($this->_fraudManualReview != true || $fraudManualReviewStatus == "") {
|
730 |
$this->_setPrePaymentAuthorized($order);
|
759 |
if(!empty($status)) {
|
760 |
$order->addStatusHistoryComment(Mage::helper('adyen')->__('Payment is pre authorised waiting for capture'), $status);
|
761 |
$order->sendOrderUpdateEmail((bool) $this->_getConfigData('send_update_mail', 'adyen_abstract', $order->getStoreId()));
|
762 |
+
/**
|
763 |
+
* save the order this is needed for older magento version so that status is not reverted to state NEW
|
764 |
+
*/
|
765 |
+
$order->save();
|
766 |
$this->_debugData['_setPrePaymentAuthorized'] = 'Order status is changed to Pre-authorised status, status is ' . $status;
|
767 |
} else {
|
768 |
$this->_debugData['_setPrePaymentAuthorized'] = 'No pre-authorised status is used so ignore';
|
798 |
$status = $fraudManualReviewStatus;
|
799 |
$comment = "Adyen Payment is in Manual Review check the Adyen platform";
|
800 |
$order->addStatusHistoryComment(Mage::helper('adyen')->__($comment), $status);
|
801 |
+
/**
|
802 |
+
* save the order this is needed for older magento version so that status is not reverted to state NEW
|
803 |
+
*/
|
804 |
+
$order->save();
|
805 |
}
|
806 |
}
|
807 |
|
909 |
$invoice->register()->pay();
|
910 |
}
|
911 |
|
|
|
912 |
|
913 |
+
// set the state to pending because otherwise magento will automatically set it to processing when you save the order
|
914 |
+
$order->setState(Mage_Sales_Model_Order::STATE_PENDING_PAYMENT);
|
915 |
+
|
916 |
+
/*
|
917 |
+
* Save the order otherwise in old magento versions our status is not updated the
|
918 |
+
* processing status that it gets here because the invoice is created.
|
919 |
+
*/
|
920 |
+
$transactionSave = Mage::getModel('core/resource_transaction')
|
921 |
+
->addObject($invoice)
|
922 |
+
->addObject($invoice->getOrder());
|
923 |
+
|
924 |
+
$transactionSave->save();
|
925 |
+
|
926 |
+
$this->_debugData['_createInvoice done'] = 'Created invoice status is: ' . $order->getStatus() . ' state is:' . $order->getState();
|
927 |
} catch (Exception $e) {
|
928 |
$this->_debugData['_createInvoice error'] = 'Error saving invoice. The error message is: ' . $e->getMessage();
|
929 |
Mage::logException($e);
|
998 |
}
|
999 |
|
1000 |
protected function _getPaymentMethodType($order) {
|
1001 |
+
return $order->getPayment()->getMethodInstance()->getPaymentMethodType();
|
1002 |
}
|
1003 |
|
1004 |
/**
|
1017 |
/**
|
1018 |
* @param $order
|
1019 |
*/
|
1020 |
+
protected function _setPaymentAuthorized($order, $manualReviewComment = true, $createInvoice = false, $captureNotification = false)
|
1021 |
{
|
1022 |
$this->_debugData['_setPaymentAuthorized start'] = 'Set order to authorised';
|
1023 |
|
1029 |
// create invoice for the capture notification if you are on manual capture
|
1030 |
if($createInvoice == true && $amount == $orderAmount) {
|
1031 |
$this->_debugData['_setPaymentAuthorized amount'] = 'amount notification:'.$amount . ' amount order:'.$orderAmount;
|
1032 |
+
// call createInvoice (this flow can be improved
|
1033 |
$this->_createInvoice($order);
|
1034 |
}
|
1035 |
|
1036 |
+
$autoCapture = $this->_isAutoCapture($order);
|
1037 |
+
$createPendingInvoice = (bool) $this->_getConfigData('create_pending_invoice', 'adyen_abstract', $order->getStoreId());
|
1038 |
$captureOnShipment = $this->_getConfigData('capture_on_shipment', 'adyen_abstract', $order->getStoreId());
|
1039 |
+
|
1040 |
+
/**
|
1041 |
+
* - if create pending invoice is not set just update the status
|
1042 |
+
* - if create pending invoice is set and the payment method is auto capture update the order
|
1043 |
+
* - if create pending invoice is set and payment method is manual capture but the notificaiton is a capture notification update the order
|
1044 |
+
*/
|
1045 |
+
if($captureOnShipment && !$autoCapture) {
|
1046 |
+
// if capture on shipment is enabled and it is a manual capture payment method do not update the order
|
1047 |
+
} else if(!$createPendingInvoice ||
|
1048 |
+
($createPendingInvoice && $autoCapture) ||
|
1049 |
+
($createPendingInvoice && !$autoCapture && $captureNotification))
|
1050 |
+
{
|
1051 |
$status = $this->_getConfigData('payment_authorized', 'adyen_abstract', $order->getStoreId());
|
1052 |
+
|
1053 |
+
$this->_debugData['_setPaymentAuthorized selected status'] = 'The status that is selected is:' . $status;
|
1054 |
+
|
1055 |
+
// set the state to processing
|
1056 |
+
$order->setState(Mage_Sales_Model_Order::STATE_PROCESSING);
|
1057 |
}
|
1058 |
|
1059 |
// virtual order can have different status
|
1062 |
$virtual_status = $this->_getConfigData('payment_authorized_virtual');
|
1063 |
if($virtual_status != "") {
|
1064 |
$status = $virtual_status;
|
1065 |
+
|
1066 |
+
// set the state to complete
|
1067 |
+
$order->setState(Mage_Sales_Model_Order::STATE_COMPLETE);
|
1068 |
+
|
1069 |
}
|
1070 |
}
|
1071 |
|
1113 |
$status = (!empty($status)) ? $status : $order->getStatus();
|
1114 |
$order->addStatusHistoryComment(Mage::helper('adyen')->__($comment), $status);
|
1115 |
$order->sendOrderUpdateEmail((bool) $this->_getConfigData('send_update_mail', 'adyen_abstract', $order->getStoreId()));
|
1116 |
+
/**
|
1117 |
+
* save the order this is needed for older magento version so that status is not reverted to state NEW
|
1118 |
+
*/
|
1119 |
+
$order->save();
|
1120 |
+
$this->_debugData['_setPaymentAuthorized end'] = 'Order status is changed to authorised status, status is ' . $status . ' and state is: ' . $order->getState();
|
1121 |
}
|
1122 |
|
1123 |
/**
|
1198 |
$pendingStatus = $this->_getConfigData('pending_status', 'adyen_abstract', $order->getStoreId());
|
1199 |
if($pendingStatus != "") {
|
1200 |
$order->addStatusHistoryComment($comment, $pendingStatus);
|
1201 |
+
/**
|
1202 |
+
* save order needed for old magento version so that status is not reverted to state NEW
|
1203 |
+
*/
|
1204 |
+
$order->save();
|
1205 |
+
|
1206 |
$this->_debugData['_addStatusHistoryComment'] = 'Created comment history for this notification with status change to: ' . $pendingStatus;
|
1207 |
return;
|
1208 |
}
|
1214 |
{
|
1215 |
$manualReviewAcceptStatus = $this->_getFraudManualReviewAcceptStatus($order);
|
1216 |
$order->addStatusHistoryComment($comment, $manualReviewAcceptStatus);
|
1217 |
+
/**
|
1218 |
+
* save order needed for old magento version so that status is not reverted to state NEW
|
1219 |
+
*/
|
1220 |
+
$order->save();
|
1221 |
$this->_debugData['_addStatusHistoryComment'] = 'Created comment history for this notification with status change to: ' . $manualReviewAcceptStatus;
|
1222 |
return;
|
1223 |
}
|
1272 |
|
1273 |
$eventCode = trim($params->getData('eventCode'));
|
1274 |
$success = (trim($params->getData('success')) == 'true' || trim($params->getData('success')) == '1') ? true : false;
|
1275 |
+
$pspReference = $params->getData('pspReference');
|
1276 |
+
if(is_numeric($pspReference)) {
|
1277 |
+
$this->_debugData['AddNotificationToQueue Step1'] = 'Going to add notification to queue';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1278 |
|
1279 |
+
$incrementId = $params->getData('merchantReference');
|
1280 |
+
$pspReference = $params->getData('pspReference');
|
1281 |
+
$eventCode = $params->getData('eventCode');
|
1282 |
+
|
1283 |
+
// add current request to the queue
|
1284 |
+
$eventQueue = Mage::getModel('adyen/event_queue');
|
1285 |
+
$eventQueue->setPspReference($pspReference);
|
1286 |
+
$eventQueue->setAdyenEventCode($eventCode);
|
1287 |
+
$eventQueue->setIncrementId($incrementId);
|
1288 |
+
$eventQueue->setAttempt(1);
|
1289 |
+
$eventQueue->setResponse(serialize($params));
|
1290 |
+
$eventQueue->setCreatedAt(now());
|
1291 |
+
$eventQueue->save();
|
1292 |
+
$this->_debugData['AddNotificationToQueue Step2'] = 'Notification is added to the queue';
|
1293 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1294 |
} else {
|
1295 |
+
$this->_debugData['AddNotificationToQueue'] = 'Notification is a TEST Notification so do not add to queue';
|
1296 |
}
|
1297 |
}
|
1298 |
|
1319 |
protected function _updateNotProcessedNotifications() {
|
1320 |
|
1321 |
$this->_debugData['UpdateNotProcessedEvents Step1'] = 'Going to update Notifications from the queue';
|
1322 |
+
|
1323 |
// try to update old notifications that did not processed yet
|
1324 |
$collection = Mage::getModel('adyen/event_queue')->getCollection()
|
1325 |
+
->addFieldToFilter('attempt', array('lteq' => '4'))
|
1326 |
+
->addFieldToFilter('created_at', array(
|
1327 |
+
'from' => strtotime('-1 day', time()),
|
1328 |
+
'to' => strtotime('-5 minutes', time()),
|
1329 |
+
'datetime' => true))
|
1330 |
+
->addOrder('created_at', 'asc');
|
1331 |
|
1332 |
if($collection->getSize() > 0) {
|
1333 |
foreach($collection as $event){
|
|
|
1334 |
|
1335 |
+
$incrementId = $event->getIncrementId();
|
1336 |
|
1337 |
+
$this->_debugData['UpdateNotProcessedEvents Step2'] = 'Going to update notification with incrementId: ' . $incrementId;
|
1338 |
|
1339 |
+
$order = Mage::getModel('sales/order')->loadByIncrementId($incrementId);
|
1340 |
+
if ($order->getId()) {
|
1341 |
|
1342 |
+
$this->_debugData['UpdateNotProcessedEvents Step3'] = 'Order exists going to update it';
|
1343 |
+
// try to process it now
|
1344 |
+
$params = unserialize($event->getResponse());
|
1345 |
|
1346 |
+
$this->_debugData['UpdateNotProcessedEvents params'] = $params->debug();
|
1347 |
|
1348 |
+
// check if notification is already processed
|
1349 |
+
if(!$this->_isDuplicate($params)) {
|
1350 |
$this->_updateOrder($order, $params);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1351 |
} else {
|
1352 |
+
// already processed so ignore this notification
|
1353 |
+
$this->_debugData['UpdateNotProcessedEvents duplicate'] = "This notification is already processed so ignore this one";
|
1354 |
+
}
|
1355 |
+
|
1356 |
+
// update event that it is processed
|
1357 |
+
try{
|
1358 |
// @codingStandardsIgnoreStart
|
1359 |
+
$event->delete();
|
1360 |
// @codingStandardsIgnoreEnd
|
1361 |
+
$this->_debugData['UpdateNotProcessedEvents Step4'] = 'Notification is processed and removed from the queue';
|
1362 |
+
} catch(Exception $e) {
|
1363 |
+
Mage::logException($e);
|
1364 |
}
|
1365 |
+
} else {
|
1366 |
+
// order does not exists remove this from the queue
|
1367 |
+
// @codingStandardsIgnoreStart
|
1368 |
+
$event->delete();
|
1369 |
+
// @codingStandardsIgnoreEnd
|
1370 |
+
$this->_debugData['UpdateNotProcessedEvents Step3'] = 'The Notification still does not exists so it does not have an order remove the notification';
|
1371 |
}
|
1372 |
}
|
1373 |
} else {
|
1407 |
{
|
1408 |
return Mage::app()->getRequest();
|
1409 |
}
|
1410 |
+
}
|
app/code/community/Adyen/Payment/Model/System/Config/Backend/Trim.php
ADDED
@@ -0,0 +1,33 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Adyen Payment Module
|
4 |
+
*
|
5 |
+
* NOTICE OF LICENSE
|
6 |
+
*
|
7 |
+
* This source file is subject to the Open Software License (OSL 3.0)
|
8 |
+
* that is bundled with this package in the file LICENSE.txt.
|
9 |
+
* It is also available through the world-wide-web at this URL:
|
10 |
+
* http://opensource.org/licenses/osl-3.0.php
|
11 |
+
* If you did not receive a copy of the license and are unable to
|
12 |
+
* obtain it through the world-wide-web, please send an email
|
13 |
+
* to license@magentocommerce.com so we can send you a copy immediately.
|
14 |
+
*
|
15 |
+
* @category Adyen
|
16 |
+
* @package Adyen_Payment
|
17 |
+
* @copyright Copyright (c) 2011 Adyen (http://www.adyen.com)
|
18 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
19 |
+
*/
|
20 |
+
|
21 |
+
class Adyen_Payment_Model_System_Config_Backend_Trim extends Mage_Core_Model_Config_Data
|
22 |
+
{
|
23 |
+
|
24 |
+
/**
|
25 |
+
* Trim data before save
|
26 |
+
*/
|
27 |
+
protected function _beforeSave()
|
28 |
+
{
|
29 |
+
$value = trim($this->getValue());
|
30 |
+
$this->setValue($value);
|
31 |
+
}
|
32 |
+
|
33 |
+
}
|
app/code/community/Adyen/Payment/Model/ValidateResultUrl.php
CHANGED
@@ -131,14 +131,6 @@ class Adyen_Payment_Model_ValidateResultUrl extends Mage_Core_Model_Abstract {
|
|
131 |
->setOrder($order);
|
132 |
$history->save();
|
133 |
|
134 |
-
// Update the Adyen Event Code if notification is not yet received
|
135 |
-
if(!(substr($order->getAdyenEventCode(), 0, 13) == Adyen_Payment_Model_Event::ADYEN_EVENT_AUTHORISATION && $authResult == Adyen_Payment_Model_Event::ADYEN_EVENT_AUTHORISED)){
|
136 |
-
$order->setAdyenEventCode($authResult);
|
137 |
-
$this->_debugData['Step3'] = 'Updating the adyen event code with ' . $authResult;
|
138 |
-
} else {
|
139 |
-
$this->_debugData['Step3'] = 'Not updating the adyen event code with ' . $authResult . 'because notification is already received';
|
140 |
-
}
|
141 |
-
|
142 |
switch ($authResult) {
|
143 |
|
144 |
case Adyen_Payment_Model_Event::ADYEN_EVENT_AUTHORISED:
|
@@ -165,9 +157,6 @@ class Adyen_Payment_Model_ValidateResultUrl extends Mage_Core_Model_Abstract {
|
|
165 |
$result = false;
|
166 |
break;
|
167 |
}
|
168 |
-
|
169 |
-
$order->save();
|
170 |
-
|
171 |
return $result;
|
172 |
}
|
173 |
|
131 |
->setOrder($order);
|
132 |
$history->save();
|
133 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
134 |
switch ($authResult) {
|
135 |
|
136 |
case Adyen_Payment_Model_Event::ADYEN_EVENT_AUTHORISED:
|
157 |
$result = false;
|
158 |
break;
|
159 |
}
|
|
|
|
|
|
|
160 |
return $result;
|
161 |
}
|
162 |
|
app/code/community/Adyen/Payment/controllers/Adminhtml/Adyen/Event/QueueController.php
CHANGED
@@ -28,6 +28,14 @@
|
|
28 |
|
29 |
class Adyen_Payment_Adminhtml_Adyen_Event_QueueController extends Mage_Adminhtml_Controller_Action {
|
30 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
31 |
public function indexAction() {
|
32 |
|
33 |
Mage::getSingleton('adminhtml/session')->addNotice(Mage::helper('adyen')->__('If you are using Adyen CreditCard payment method it could be that the notifcation that is send from the Adyen Platform is faster then Magento saves the order. The notification is saved and when a new notification is send it will try to update the previous notification as well. You can see here what notifications did not processed yet and you can proccess it here manual if you want to by selecting "Execute" under the Actions column '));
|
@@ -80,7 +88,10 @@ class Adyen_Payment_Adminhtml_Adyen_Event_QueueController extends Mage_Adminhtml
|
|
80 |
$order->loadByIncrementId($incrementId);
|
81 |
|
82 |
// process it
|
83 |
-
Mage::getModel('adyen/processNotification')->updateOrder($order, $varienObj);
|
|
|
|
|
|
|
84 |
|
85 |
// remove it from queue
|
86 |
$eventQueue->delete();
|
@@ -161,4 +172,29 @@ class Adyen_Payment_Adminhtml_Adyen_Event_QueueController extends Mage_Adminhtml
|
|
161 |
return Mage::getSingleton('admin/session')->isAllowed('sales/adyen_payment');
|
162 |
}
|
163 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
164 |
}
|
28 |
|
29 |
class Adyen_Payment_Adminhtml_Adyen_Event_QueueController extends Mage_Adminhtml_Controller_Action {
|
30 |
|
31 |
+
|
32 |
+
/**
|
33 |
+
* Collected debug information
|
34 |
+
*
|
35 |
+
* @var array
|
36 |
+
*/
|
37 |
+
protected $_debugData = array();
|
38 |
+
|
39 |
public function indexAction() {
|
40 |
|
41 |
Mage::getSingleton('adminhtml/session')->addNotice(Mage::helper('adyen')->__('If you are using Adyen CreditCard payment method it could be that the notifcation that is send from the Adyen Platform is faster then Magento saves the order. The notification is saved and when a new notification is send it will try to update the previous notification as well. You can see here what notifications did not processed yet and you can proccess it here manual if you want to by selecting "Execute" under the Actions column '));
|
88 |
$order->loadByIncrementId($incrementId);
|
89 |
|
90 |
// process it
|
91 |
+
$this->_debugData = Mage::getModel('adyen/processNotification')->updateOrder($order, $varienObj);
|
92 |
+
|
93 |
+
// log it
|
94 |
+
$this->_debug(null);
|
95 |
|
96 |
// remove it from queue
|
97 |
$eventQueue->delete();
|
172 |
return Mage::getSingleton('admin/session')->isAllowed('sales/adyen_payment');
|
173 |
}
|
174 |
|
175 |
+
/**
|
176 |
+
* Log debug data to file (use cron log so everything is together)
|
177 |
+
*
|
178 |
+
* @param $storeId
|
179 |
+
* @param mixed $debugData
|
180 |
+
*/
|
181 |
+
protected function _debug($storeId)
|
182 |
+
{
|
183 |
+
if ($this->_getConfigData('debug', 'adyen_abstract', $storeId)) {
|
184 |
+
$file = 'adyen_process_notification_cron.log';
|
185 |
+
Mage::getModel('core/log_adapter', $file)->log($this->_debugData);
|
186 |
+
}
|
187 |
+
}
|
188 |
+
|
189 |
+
/**
|
190 |
+
* @param $code
|
191 |
+
* @param null $paymentMethodCode
|
192 |
+
* @param null $storeId
|
193 |
+
* @return mixed
|
194 |
+
*/
|
195 |
+
protected function _getConfigData($code, $paymentMethodCode = null, $storeId = null)
|
196 |
+
{
|
197 |
+
return Mage::helper('adyen')->getConfigData($code, $paymentMethodCode, $storeId);
|
198 |
+
}
|
199 |
+
|
200 |
}
|
app/code/community/Adyen/Payment/controllers/ProcessController.php
CHANGED
@@ -152,22 +152,15 @@ class Adyen_Payment_ProcessController extends Mage_Core_Controller_Front_Action
|
|
152 |
return $this;
|
153 |
}
|
154 |
|
155 |
-
//redirect to
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
$session->unsQuoteId();
|
165 |
-
}
|
166 |
-
//continue shopping
|
167 |
-
else {
|
168 |
-
$this->_redirect('/');
|
169 |
-
return $this;
|
170 |
-
}
|
171 |
} catch (Exception $e) {
|
172 |
$session->addException($e, Mage::helper('adyen')->__($e->getMessage()));
|
173 |
$this->cancel();
|
@@ -175,9 +168,11 @@ class Adyen_Payment_ProcessController extends Mage_Core_Controller_Front_Action
|
|
175 |
}
|
176 |
|
177 |
public function validate3dAction() {
|
|
|
|
|
|
|
|
|
178 |
try {
|
179 |
-
// get current order
|
180 |
-
$session = $this->_getCheckout();
|
181 |
$order = $this->_getOrder();
|
182 |
$session->setAdyenQuoteId($session->getQuoteId());
|
183 |
$session->setAdyenRealOrderId($session->getLastRealOrderId());
|
@@ -213,8 +208,7 @@ class Adyen_Payment_ProcessController extends Mage_Core_Controller_Front_Action
|
|
213 |
|
214 |
// check if authorise3d was successful
|
215 |
if ($result == 'Authorised') {
|
216 |
-
$order->
|
217 |
-
Mage::helper('adyen')->__('3D-secure validation was successful.'))->save();
|
218 |
$this->_redirect('checkout/onepage/success');
|
219 |
}
|
220 |
else {
|
@@ -224,10 +218,9 @@ class Adyen_Payment_ProcessController extends Mage_Core_Controller_Front_Action
|
|
224 |
}
|
225 |
}
|
226 |
else {
|
227 |
-
$
|
228 |
-
|
229 |
}
|
230 |
-
|
231 |
}
|
232 |
|
233 |
// otherwise, redirect to the external URL
|
@@ -238,13 +231,14 @@ class Adyen_Payment_ProcessController extends Mage_Core_Controller_Front_Action
|
|
238 |
$this->getLayout()->createBlock($this->_redirectBlockType)->setOrder($order)->toHtml()
|
239 |
);
|
240 |
}
|
241 |
-
|
242 |
}
|
243 |
else {
|
244 |
-
|
245 |
-
|
|
|
246 |
}
|
247 |
} catch (Exception $e) {
|
|
|
248 |
$session->addException($e, Mage::helper('adyen')->__($e->getMessage()));
|
249 |
$this->cancel();
|
250 |
}
|
@@ -355,6 +349,8 @@ class Adyen_Payment_ProcessController extends Mage_Core_Controller_Front_Action
|
|
355 |
$params = $this->getRequest()->getParams();
|
356 |
if(isset($params['authResult']) && $params['authResult'] == Adyen_Payment_Model_Event::ADYEN_EVENT_CANCELLED) {
|
357 |
$session->addError($this->__('You have cancelled the order. Please try again'));
|
|
|
|
|
358 |
} else {
|
359 |
$session->addError($this->__('Your payment failed, Please try again later'));
|
360 |
}
|
@@ -397,6 +393,12 @@ class Adyen_Payment_ProcessController extends Mage_Core_Controller_Front_Action
|
|
397 |
return $this;
|
398 |
}
|
399 |
|
|
|
|
|
|
|
|
|
|
|
|
|
400 |
$notificationMode = isset($response['live']) ? $response['live'] : "";
|
401 |
|
402 |
if($notificationMode != "" && $this->_validateNotificationMode($notificationMode))
|
152 |
return $this;
|
153 |
}
|
154 |
|
155 |
+
// redirect to payment page
|
156 |
+
$this->getResponse()->setBody(
|
157 |
+
$this->getLayout()
|
158 |
+
->createBlock($this->_redirectBlockType)
|
159 |
+
->setOrder($order)
|
160 |
+
->toHtml()
|
161 |
+
);
|
162 |
+
$session->unsQuoteId();
|
163 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
164 |
} catch (Exception $e) {
|
165 |
$session->addException($e, Mage::helper('adyen')->__($e->getMessage()));
|
166 |
$this->cancel();
|
168 |
}
|
169 |
|
170 |
public function validate3dAction() {
|
171 |
+
|
172 |
+
// get current order
|
173 |
+
$session = $this->_getCheckout();
|
174 |
+
|
175 |
try {
|
|
|
|
|
176 |
$order = $this->_getOrder();
|
177 |
$session->setAdyenQuoteId($session->getQuoteId());
|
178 |
$session->setAdyenRealOrderId($session->getLastRealOrderId());
|
208 |
|
209 |
// check if authorise3d was successful
|
210 |
if ($result == 'Authorised') {
|
211 |
+
$order->addStatusHistoryComment(Mage::helper('adyen')->__('3D-secure validation was successful'))->save();
|
|
|
212 |
$this->_redirect('checkout/onepage/success');
|
213 |
}
|
214 |
else {
|
218 |
}
|
219 |
}
|
220 |
else {
|
221 |
+
$errorMsg = Mage::helper('adyen')->__('3D secure validation error');
|
222 |
+
Adyen_Payment_Exception::throwException($errorMsg);
|
223 |
}
|
|
|
224 |
}
|
225 |
|
226 |
// otherwise, redirect to the external URL
|
231 |
$this->getLayout()->createBlock($this->_redirectBlockType)->setOrder($order)->toHtml()
|
232 |
);
|
233 |
}
|
|
|
234 |
}
|
235 |
else {
|
236 |
+
// log exception
|
237 |
+
$errorMsg = Mage::helper('adyen')->__('3D secure went wrong');
|
238 |
+
Adyen_Payment_Exception::throwException($errorMsg);
|
239 |
}
|
240 |
} catch (Exception $e) {
|
241 |
+
Mage::logException($e);
|
242 |
$session->addException($e, Mage::helper('adyen')->__($e->getMessage()));
|
243 |
$this->cancel();
|
244 |
}
|
349 |
$params = $this->getRequest()->getParams();
|
350 |
if(isset($params['authResult']) && $params['authResult'] == Adyen_Payment_Model_Event::ADYEN_EVENT_CANCELLED) {
|
351 |
$session->addError($this->__('You have cancelled the order. Please try again'));
|
352 |
+
} elseif($order->getPayment()->getMethod() == "adyen_openinvoice") {
|
353 |
+
$session->addError($this->__('Your openinvoice payment failed'));
|
354 |
} else {
|
355 |
$session->addError($this->__('Your payment failed, Please try again later'));
|
356 |
}
|
393 |
return $this;
|
394 |
}
|
395 |
|
396 |
+
if(isset($response['magento_version'])) {
|
397 |
+
$version = Mage::getVersion();
|
398 |
+
$this->getResponse()->setBody($version);
|
399 |
+
return $this;
|
400 |
+
}
|
401 |
+
|
402 |
$notificationMode = isset($response['live']) ? $response['live'] : "";
|
403 |
|
404 |
if($notificationMode != "" && $this->_validateNotificationMode($notificationMode))
|
app/code/community/Adyen/Payment/controllers/SavedCardController.php
ADDED
@@ -0,0 +1,117 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/**
|
4 |
+
* Adyen Payment Module
|
5 |
+
*
|
6 |
+
* NOTICE OF LICENSE
|
7 |
+
*
|
8 |
+
* This source file is subject to the Open Software License (OSL 3.0)
|
9 |
+
* that is bundled with this package in the file LICENSE.txt.
|
10 |
+
* It is also available through the world-wide-web at this URL:
|
11 |
+
* http://opensource.org/licenses/osl-3.0.php
|
12 |
+
* If you did not receive a copy of the license and are unable to
|
13 |
+
* obtain it through the world-wide-web, please send an email
|
14 |
+
* to license@magentocommerce.com so we can send you a copy immediately.
|
15 |
+
*
|
16 |
+
* @category Adyen
|
17 |
+
* @package Adyen_Payment
|
18 |
+
* @copyright Copyright (c) 2011 Adyen (http://www.adyen.com)
|
19 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
20 |
+
*/
|
21 |
+
/**
|
22 |
+
* @category Payment Gateway
|
23 |
+
* @package Adyen_Payment
|
24 |
+
* @author Adyen
|
25 |
+
* @property Adyen B.V
|
26 |
+
* @copyright Copyright (c) 2014 Adyen BV (http://www.adyen.com)
|
27 |
+
*/
|
28 |
+
class Adyen_Payment_SavedCardController extends Mage_Core_Controller_Front_Action
|
29 |
+
{
|
30 |
+
|
31 |
+
/**
|
32 |
+
*
|
33 |
+
* @var Mage_Customer_Model_Session
|
34 |
+
*/
|
35 |
+
protected $_session = null;
|
36 |
+
|
37 |
+
/**
|
38 |
+
* Make sure customer is logged in and put it into registry
|
39 |
+
*/
|
40 |
+
public function preDispatch()
|
41 |
+
{
|
42 |
+
parent::preDispatch();
|
43 |
+
if (!$this->getRequest()->isDispatched()) {
|
44 |
+
return;
|
45 |
+
}
|
46 |
+
$this->_session = Mage::getSingleton('customer/session');
|
47 |
+
if (!$this->_session->authenticate($this)) {
|
48 |
+
$this->setFlag('', 'no-dispatch', true);
|
49 |
+
}
|
50 |
+
Mage::register('current_customer', $this->_session->getCustomer());
|
51 |
+
}
|
52 |
+
|
53 |
+
/**
|
54 |
+
* Profiles listing
|
55 |
+
*/
|
56 |
+
public function indexAction()
|
57 |
+
{
|
58 |
+
// check if there is a submit on card delete
|
59 |
+
if ($this->getRequest()->isPost()) {
|
60 |
+
$recurringDetailReference = $this->getRequest()->getParam('recurringDetailReference');
|
61 |
+
if($recurringDetailReference != "") {
|
62 |
+
$storeId = Mage::app()->getStore()->getStoreId();
|
63 |
+
$merchantAccount = Mage::getStoreConfig("payment/adyen_abstract/merchantAccount", $storeId);
|
64 |
+
$customer = Mage::registry('current_customer');
|
65 |
+
$shopperReference = $customer->getId();
|
66 |
+
// do api call to delete this card
|
67 |
+
$success = Mage::helper('adyen')->removeRecurringCard($merchantAccount, $shopperReference, $recurringDetailReference);
|
68 |
+
|
69 |
+
// show result message
|
70 |
+
if($success) {
|
71 |
+
$this->_getSession()->addSuccess(Mage::helper('adyen')->__('The card has been deleted.'));
|
72 |
+
|
73 |
+
// remove the billing agreement
|
74 |
+
$agreement = Mage::getModel('sales/billing_agreement')->load($recurringDetailReference, 'reference_id');
|
75 |
+
|
76 |
+
if ($agreement && $agreement->getAgreementId() > 0 && $agreement->isValid()) {
|
77 |
+
$agreement->delete();
|
78 |
+
}
|
79 |
+
|
80 |
+
/*
|
81 |
+
* clear the cache for recurring payments so new card will be added
|
82 |
+
*/
|
83 |
+
$recurringType = Mage::getStoreConfig('payment/adyen_abstract/recurringtypes', $storeId);
|
84 |
+
$customer = Mage::registry('current_customer');
|
85 |
+
$shopperReference = $customer->getId();
|
86 |
+
|
87 |
+
$cacheKey = $merchantAccount . "|" . $shopperReference . "|" . $recurringType;
|
88 |
+
Mage::app()->getCache()->remove($cacheKey);
|
89 |
+
|
90 |
+
} else {
|
91 |
+
$this->_getSession()->addError(Mage::helper('adyen')->__('The card has not been deleted, please contact us.'));
|
92 |
+
}
|
93 |
+
}
|
94 |
+
}
|
95 |
+
|
96 |
+
$this->_title($this->__('Saved Cards'));
|
97 |
+
$this->loadLayout();
|
98 |
+
$this->_initLayoutMessages('customer/session');
|
99 |
+
$block = $this->getLayout()->getBlock('adyen.savedCards');
|
100 |
+
if ($block) {
|
101 |
+
$block->setRefererUrl($this->_getRefererUrl());
|
102 |
+
}
|
103 |
+
$this->renderLayout();
|
104 |
+
}
|
105 |
+
|
106 |
+
/**
|
107 |
+
* Retrieve customer session object
|
108 |
+
*
|
109 |
+
* @return Mage_Customer_Model_Session
|
110 |
+
*/
|
111 |
+
protected function _getSession()
|
112 |
+
{
|
113 |
+
return Mage::getSingleton('customer/session');
|
114 |
+
}
|
115 |
+
|
116 |
+
|
117 |
+
}
|
app/code/community/Adyen/Payment/data/adyen_setup/data-upgrade-2.4.0-2.4.0.1.php
ADDED
@@ -0,0 +1,51 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Adyen Payment Module
|
4 |
+
*
|
5 |
+
* NOTICE OF LICENSE
|
6 |
+
*
|
7 |
+
* This source file is subject to the Open Software License (OSL 3.0)
|
8 |
+
* that is bundled with this package in the file LICENSE.txt.
|
9 |
+
* It is also available through the world-wide-web at this URL:
|
10 |
+
* http://opensource.org/licenses/osl-3.0.php
|
11 |
+
* If you did not receive a copy of the license and are unable to
|
12 |
+
* obtain it through the world-wide-web, please send an email
|
13 |
+
* to license@magentocommerce.com so we can send you a copy immediately.
|
14 |
+
*
|
15 |
+
* @category Adyen
|
16 |
+
* @package Adyen_Payment
|
17 |
+
* @copyright Copyright (c) 2011 Adyen (http://www.adyen.com)
|
18 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
19 |
+
*/
|
20 |
+
/**
|
21 |
+
* @category Payment Gateway
|
22 |
+
* @package Adyen_Payment
|
23 |
+
* @author Adyen
|
24 |
+
* @property Adyen B.V
|
25 |
+
* @copyright Copyright (c) 2014 Adyen BV (http://www.adyen.com)
|
26 |
+
*/
|
27 |
+
|
28 |
+
|
29 |
+
/*
|
30 |
+
* clear the field payment/adyen_hpp/allowspecific because this is not a setting anymore
|
31 |
+
*/
|
32 |
+
|
33 |
+
$notificationPath = "payment/adyen_hpp/allowspecific";
|
34 |
+
updateConfigValue($notificationPath);
|
35 |
+
|
36 |
+
|
37 |
+
function updateConfigValue($path) {
|
38 |
+
try {
|
39 |
+
$collection = Mage::getModel('core/config_data')->getCollection()
|
40 |
+
->addFieldToFilter('path', array('like' => $path ));
|
41 |
+
|
42 |
+
if ($collection->count() > 0) {
|
43 |
+
foreach ($collection as $coreConfig) {
|
44 |
+
$coreConfig->setValue('0')->save();
|
45 |
+
}
|
46 |
+
}
|
47 |
+
} catch (Exception $e) {
|
48 |
+
Mage::log($e->getMessage(), Zend_Log::ERR);
|
49 |
+
}
|
50 |
+
}
|
51 |
+
|
app/code/community/Adyen/Payment/docs/.DS_Store
ADDED
Binary file
|
app/code/community/Adyen/Payment/docs/httpauthentication/cgihtaccess.patch
ADDED
@@ -0,0 +1,15 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
diff --git a/.htaccess b/.htaccess
|
2 |
+
index 6fbbd49..4d93121 100755
|
3 |
+
--- a/.htaccess
|
4 |
+
+++ b/.htaccess
|
5 |
+
@@ -127,7 +127,9 @@ setEnv MAGE_IS_DEVELOPER_MODE true
|
6 |
+
## workaround for HTTP authorization
|
7 |
+
## in CGI environment
|
8 |
+
|
9 |
+
- RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
|
10 |
+
+## RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
|
11 |
+
+ RewriteCond %{HTTP:Authorization} !^$
|
12 |
+
+ RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}]
|
13 |
+
|
14 |
+
############################################
|
15 |
+
## always send 404 on missing files in these folders
|
app/code/community/Adyen/Payment/docs/httpauthentication/howto
ADDED
@@ -0,0 +1,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
INTRODUCTION (Only if you are using Apache in CGI Mode):
|
2 |
+
HTTP AUTHENTICATION on Apache CGI Mode is known not to work out of the Box, use the patch in the directory to get around the problem.
|
3 |
+
|
4 |
+
WALK AROUND:
|
5 |
+
Upload the patch to the <web_root>, followed by the following bash commands
|
6 |
+
$ cd <web_root>
|
7 |
+
$ patch -p0 < cgihtaccess.patch
|
app/code/community/Adyen/Payment/docs/readme
ADDED
@@ -0,0 +1,221 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
* Adyen Payment Module
|
3 |
+
*
|
4 |
+
* NOTICE OF LICENSE
|
5 |
+
*
|
6 |
+
* This source file is subject to the Open Software License (OSL 3.0)
|
7 |
+
* that is bundled with this package in the file LICENSE.txt.
|
8 |
+
* It is also available through the world-wide-web at this URL:
|
9 |
+
* http://opensource.org/licenses/osl-3.0.php
|
10 |
+
* If you did not receive a copy of the license and are unable to
|
11 |
+
* obtain it through the world-wide-web, please send an email
|
12 |
+
* to license@magentocommerce.com so we can send you a copy immediately.
|
13 |
+
*
|
14 |
+
* @category Adyen
|
15 |
+
* @package Adyen_Payment
|
16 |
+
* @copyright Copyright (c) 2011 Adyen (http://www.adyen.com)
|
17 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
18 |
+
*/
|
19 |
+
/**
|
20 |
+
* @category Payment Gateway
|
21 |
+
* @package Adyen_Payment
|
22 |
+
* @author Adyen
|
23 |
+
* @property Adyen B.V
|
24 |
+
* @copyright Copyright (c) 2014 Adyen BV (http://www.adyen.com)
|
25 |
+
*/
|
26 |
+
|
27 |
+
USAGE:
|
28 |
+
1.Authorize only:
|
29 |
+
Authorize only, if set via the backend it means the plugin will just authorize and nothing more.That means users will have to place invoice manually and adyen backoffice manually
|
30 |
+
capture payments.
|
31 |
+
|
32 |
+
2.Authorize and Capture:
|
33 |
+
This can be set via the backend of the Adyen CC.If set to this option, order will be placed and capture in adyen will be started.
|
34 |
+
Simply might means Automatic capture payment.
|
35 |
+
|
36 |
+
|
37 |
+
Log changes
|
38 |
+
##0.0.1
|
39 |
+
1.Adding Direct payment methods Elv && Cc support via
|
40 |
+
|
41 |
+
##0.0.2
|
42 |
+
1.Configurations on backend classified to add efficiency
|
43 |
+
2.Landing pages on Adyen System on HPP
|
44 |
+
3.Refund reviewed or added
|
45 |
+
4.Capture && Authorization reviewe
|
46 |
+
|
47 |
+
|
48 |
+
##0.0.3
|
49 |
+
See 0004208
|
50 |
+
|
51 |
+
Date 8th November 2010
|
52 |
+
##v0.0.4
|
53 |
+
|
54 |
+
##Fixes Notification fixes for elv && cc
|
55 |
+
##Fixes Elv exchange of bank code && bank name
|
56 |
+
##Order status for both cc
|
57 |
+
##Added limit on text fields on ELV PM
|
58 |
+
|
59 |
+
Date 18-02-2011
|
60 |
+
Version 007
|
61 |
+
##Fixes the Customer edit error on the backend of magento
|
62 |
+
##Compatibility/tests with 1.4.1.2
|
63 |
+
|
64 |
+
|
65 |
+
Date 22-03-2011
|
66 |
+
Version 008
|
67 |
+
@todo
|
68 |
+
1.Re-write hpp model
|
69 |
+
2.Re-write controller and fix all notification issues
|
70 |
+
|
71 |
+
|
72 |
+
Date 31-03-2011
|
73 |
+
Version 009
|
74 |
+
##Fixes
|
75 |
+
|
76 |
+
|
77 |
+
Date 04-04-2011
|
78 |
+
Version 0091
|
79 |
+
##Added mail notifications in order states
|
80 |
+
##Added manual capture support
|
81 |
+
##Added payment method in customer mails && Backend
|
82 |
+
##Fixes the auto_capture
|
83 |
+
##Fixes cgi authentication failures
|
84 |
+
##Fixes bank transfer notifications
|
85 |
+
##Fixes several confussions backend configuration settings
|
86 |
+
##Fixes auto capture, now more magento friendliness
|
87 |
+
|
88 |
+
Date 05-04-2011
|
89 |
+
0.0.9.2
|
90 |
+
##Added partial refund support from Magento to Adyen psp
|
91 |
+
##Fixes redundant requests in offline refund
|
92 |
+
##Fixes cancelation request from Adyen psp
|
93 |
+
##Removal of complex backend settings, more magento friendly work flow
|
94 |
+
|
95 |
+
|
96 |
+
Date 19-04-2011
|
97 |
+
Version 0.0.9.4
|
98 |
+
##Fixes order status
|
99 |
+
|
100 |
+
Date 02-05-2011
|
101 |
+
Version 0.0.9.5
|
102 |
+
##Fixes the translation on the checkout
|
103 |
+
##Fixes the order overview on the psp
|
104 |
+
|
105 |
+
Date : 04-05-2011
|
106 |
+
|
107 |
+
Version 0.0.9.6
|
108 |
+
##Adding locale info under docs
|
109 |
+
|
110 |
+
Version 0.0.9.7
|
111 |
+
##Adding adding nl_NL as standard translation file on locale
|
112 |
+
|
113 |
+
Date : 12-05-2011
|
114 |
+
Version 0.0.9.8
|
115 |
+
##Adding PENDING notifications support, now 'pending_payment' status for bank transfers
|
116 |
+
##Adding ONECLICK payment support on hpp
|
117 |
+
##Modifying the notifications to include Payment method and amphasizing notifications vs posts responses
|
118 |
+
##Adds logs on unsupported posts events
|
119 |
+
|
120 |
+
|
121 |
+
Date : 29-09-2011
|
122 |
+
Version 0.0.9.9
|
123 |
+
##Enterprise 1.11.x compatibility
|
124 |
+
##Testing 1.6.x
|
125 |
+
##MC 2.x compatibility
|
126 |
+
##Adding pre-fix support
|
127 |
+
|
128 |
+
Date:29-09-2011
|
129 |
+
Version:0.0.9.9r1
|
130 |
+
##Adding order link to Adyen Backoffice using search
|
131 |
+
|
132 |
+
Version:0.1.0.0
|
133 |
+
##Adding partial refund from Adyen backoffice
|
134 |
+
##Adding Soap support in the notifications
|
135 |
+
##Adding pre-select payment methods in the HPP.
|
136 |
+
##Adding fallbacks for shopperReference && shopperEmail
|
137 |
+
|
138 |
+
Version:0.1.0.3
|
139 |
+
Date:10-11-2011
|
140 |
+
##Fixes missing some of the missing payment methods
|
141 |
+
##Improves payment methods configurations
|
142 |
+
##Fixes few post data in order comments
|
143 |
+
##Testing compatibility with 1.6.1.0
|
144 |
+
|
145 |
+
Version:0.1.0.3r1-r2
|
146 |
+
##Addressing hard order state changes
|
147 |
+
##Fixing country settings/config
|
148 |
+
|
149 |
+
Version:0.1.0.3r3
|
150 |
+
##Fixes creditmemo && refund on the observer.
|
151 |
+
|
152 |
+
Version:0.1.0.4
|
153 |
+
##Fixes duplicate notifications, now robust mechanism
|
154 |
+
##Adding disable button for checkout options
|
155 |
+
##Removing the add to history deprecated method by magento 1.4.0.0-alpha3
|
156 |
+
##Fixes address street + housenr
|
157 |
+
##Fixes dummy items on the invoiceline
|
158 |
+
##Fixes provincie field on the billing address
|
159 |
+
##Added Openinvoice implimentation on hpp and standalone
|
160 |
+
|
161 |
+
Version:0.1.0.5
|
162 |
+
Date:02-01-2012
|
163 |
+
##Fixes manual/complete payment status notifications processing
|
164 |
+
##Adding pre-authorise configu for manual mode
|
165 |
+
##Fixes broken psp on admin panel
|
166 |
+
|
167 |
+
Version:0.1.0.6
|
168 |
+
Date:05-01-2012
|
169 |
+
##Fixes success flag on the HTTP notification mode.
|
170 |
+
|
171 |
+
Version:0.1.0.7
|
172 |
+
Date:06-01-2012
|
173 |
+
##Fixes the back button from a browser, now continue shopping in this case.
|
174 |
+
|
175 |
+
Version:0.1.0.8
|
176 |
+
Date:11-01-2012
|
177 |
+
##Adding 2 extra status configurations for refund and pre refund authorisation
|
178 |
+
##Detection of refund-received will skip creditmemmo from Adyen.
|
179 |
+
##Adding an exceptional to failed refunds on holdCancel events
|
180 |
+
|
181 |
+
Version:v0.1.0.8r1
|
182 |
+
##Fixes the broken configuration in handling URL result 'REFUSED' 'CANCELLED' 'ERROR'
|
183 |
+
##Fixes some pdf paths in templates
|
184 |
+
0.1.0.8r2
|
185 |
+
##Code refactoring, introducing adyen/process
|
186 |
+
0.1.0.8r3-r4
|
187 |
+
##Adding an exception to the CANCEL on bankTransfer
|
188 |
+
|
189 |
+
Date:23-04-2012
|
190 |
+
Vesion:0.1.0.9
|
191 |
+
##Adding Admin Sales Adyen Status Column
|
192 |
+
##Adding ideal bank selection in the checkout
|
193 |
+
##Adding a stylesheet for styling
|
194 |
+
|
195 |
+
Fixes:
|
196 |
+
##Fixed orderData
|
197 |
+
|
198 |
+
Version:v0.1.0.9r1
|
199 |
+
Date 29-05-2012
|
200 |
+
#Fixing demoMode configuration
|
201 |
+
#Fixing default configuration demoMode
|
202 |
+
#Fixing ideal list on file_get_contents, now using curl
|
203 |
+
#Compatibility test on enteriprise 1.12.x.x && community 1.7.0.0
|
204 |
+
|
205 |
+
Version:0.1.0.10v
|
206 |
+
Date:13-07-2012
|
207 |
+
#Fixing broken grid update in 1.7.x.x
|
208 |
+
#Code refactoring in process model
|
209 |
+
#Adding better authorisation detection on the return url
|
210 |
+
#Improving redirect action by internal record check
|
211 |
+
|
212 |
+
Version:v0.1.0.11
|
213 |
+
Date:13-09-2012
|
214 |
+
##Fixing demo-mode configuration handling
|
215 |
+
|
216 |
+
Version:0.1.0.11r1
|
217 |
+
##Fixing spelling in the configuration fields
|
218 |
+
##Remove sort order in the default group configuration
|
219 |
+
|
220 |
+
Version:0.1.0.12
|
221 |
+
##Migrating upgrade user from previous demoMode (namely production), back to their original setting.
|
app/code/community/Adyen/Payment/docs/test-cards
ADDED
@@ -0,0 +1,47 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
TESTING THE PLUGIN:
|
2 |
+
**Use the data on this url https://support.adyen.com/index.php?_m=knowledgebase&_a=viewarticle&kbarticleid=2
|
3 |
+
**Sample used in testing:
|
4 |
+
|
5 |
+
CC:
|
6 |
+
5555444433331111
|
7 |
+
MasterCard
|
8 |
+
CVC 737
|
9 |
+
Date:12/2012
|
10 |
+
|
11 |
+
VISA
|
12 |
+
4111111111111111 (Consumer)
|
13 |
+
4444333322221111 (Corporate)
|
14 |
+
|
15 |
+
Elv
|
16 |
+
Account Number / Kontonummer: 1234567890
|
17 |
+
Bank Location ID/Bankleitzahl: 12345678
|
18 |
+
|
19 |
+
|
20 |
+
MAGENTO CC TO ADYEN:
|
21 |
+
magento cc
|
22 |
+
[AE] => American Express
|
23 |
+
[VI] => Visa
|
24 |
+
[MC] => Master Card
|
25 |
+
[DI] => Discover
|
26 |
+
[DC] => Diners Club
|
27 |
+
[SS] => Switch/Solo
|
28 |
+
[MO] => Maestro
|
29 |
+
[JC] => JCB
|
30 |
+
[CB] => CarteBleue
|
31 |
+
|
32 |
+
adyen cc
|
33 |
+
American Express amex
|
34 |
+
Bank Transfer (NL) bankTransfer_NL
|
35 |
+
DIRECTebanking directEbanking
|
36 |
+
Direct Debit (NL) / Eenmalige machtiging directdebit_NL
|
37 |
+
Electronic Direct Debit (DE) / Lastschrift (ELV) elv
|
38 |
+
iDEAL iDEAL ideal
|
39 |
+
Maestro UK Maestro UK maestrouk
|
40 |
+
MasterCard MasterCard mc
|
41 |
+
Solo Solo solo
|
42 |
+
VISA VISA visa
|
43 |
+
|
44 |
+
|
45 |
+
Openinvoice
|
46 |
+
43.27.366.70
|
47 |
+
12.34.567.89
|
app/code/community/Adyen/Payment/docs/translation/Adyen_Payment.csv
ADDED
@@ -0,0 +1,53 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
"You will be redirected to Adyen website when you place an order."
|
2 |
+
"%s ( Qty: %s ) (Price: %s %s ) <br />"
|
3 |
+
"Adyen %s <br /> authResult: %s <br /> pspReference: %s"
|
4 |
+
"Adyen %s <br /> eventCode: %s <br /> pspReference: %s <br /> success: %s"
|
5 |
+
"Adyen response(s): %s <br /> pspReference: %s"
|
6 |
+
"Authorize Only"
|
7 |
+
"Authorize and Capture"
|
8 |
+
"Can not connect payment service. Please try again later."
|
9 |
+
"Capture Mode set to Manual"
|
10 |
+
"Customer was redirected to Adyen."
|
11 |
+
"Order can not Hold"
|
12 |
+
"Order can not be canceled"
|
13 |
+
"Order rows: <br />"
|
14 |
+
"Shipment cost: %s %s <br />"
|
15 |
+
"System error, please try again later"
|
16 |
+
"System error, please try again later: %s"
|
17 |
+
"The payment is REFUSED by Adyen."
|
18 |
+
"You will be redirected to Adyen in a few seconds."
|
19 |
+
"Your payment failed, Please try again later"
|
20 |
+
"--Please Select--"
|
21 |
+
"Account Number"
|
22 |
+
"Account holder name"
|
23 |
+
"Account holder: %s"
|
24 |
+
"Account number: xxx%s"
|
25 |
+
"Bank Location"
|
26 |
+
"Bank Location (City)"
|
27 |
+
"Bank Location ID"
|
28 |
+
"Bank Name"
|
29 |
+
"Bank code: %s"
|
30 |
+
"Bank name: %s"
|
31 |
+
"Card Verification Number"
|
32 |
+
"Credit Card Number"
|
33 |
+
"Credit Card Number: xxxx-%s"
|
34 |
+
"Credit Card Type"
|
35 |
+
"Credit Card Type: %s"
|
36 |
+
"Expiration Date"
|
37 |
+
"Expiration Date: %s/%s"
|
38 |
+
"Name on Card"
|
39 |
+
"Name on the Card: %s"
|
40 |
+
"Payment Method: %s"
|
41 |
+
"Submitting payment information..."
|
42 |
+
"What is this?","Wat is dit?"
|
43 |
+
"Order email sent to shopper."
|
44 |
+
"The payment is PENDING by Adyen."
|
45 |
+
"The payment is AUTHORIZED by Adyen."
|
46 |
+
"There has an error occurred with your Adyen payment."
|
47 |
+
"There was an error with your payment."
|
48 |
+
"You will be redirected to Adyen website when you place an order."
|
49 |
+
"Your payment is cancelled."
|
50 |
+
"Your payment is CANCELLED"
|
51 |
+
"Your payment is pending."
|
52 |
+
"Your payment is refused."
|
53 |
+
"Your payment is authorized."
|
app/code/community/Adyen/Payment/docs/translation/Mage_Checkout.csv
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
"Your payment failed. Please try again later"
|
app/code/community/Adyen/Payment/docs/translation/howto
ADDED
@@ -0,0 +1,12 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
USAGE:
|
2 |
+
File:Mage_Checkout.csv
|
3 |
+
Copy the content of the file Mage_Checkout.csv and paste it into locale/nl_NL/ or other language dir.
|
4 |
+
|
5 |
+
File name:Adyen_Payment.csv
|
6 |
+
Translate this file into your language by separating the strings in the quote and separate them by comma.
|
7 |
+
|
8 |
+
Example:
|
9 |
+
"You will be redirected to Adyen website when you place an order.","U wordt doorverwezen naar Adyen na het plaatsen van de order."
|
10 |
+
|
11 |
+
Notice:
|
12 |
+
The first line has been done for you as an example on how to translate.Available samples ready for use are also available under their country code e.g nl_NL
|
app/code/community/Adyen/Payment/etc/config.xml
CHANGED
@@ -29,7 +29,7 @@
|
|
29 |
<config>
|
30 |
<modules>
|
31 |
<Adyen_Payment>
|
32 |
-
<version>2.
|
33 |
</Adyen_Payment>
|
34 |
</modules>
|
35 |
<global>
|
@@ -288,6 +288,7 @@
|
|
288 |
<ws_password_live></ws_password_live>
|
289 |
<demoMode>Y</demoMode>
|
290 |
<debug>1</debug>
|
|
|
291 |
<order_status>pending</order_status>
|
292 |
<payment_authorized>processing</payment_authorized>
|
293 |
<payment_authorized_virtual>complete</payment_authorized_virtual>
|
@@ -302,7 +303,6 @@
|
|
302 |
<ignore_refund_notification>0</ignore_refund_notification>
|
303 |
</adyen_abstract>
|
304 |
<adyen_hpp translate="title" module="adyen">
|
305 |
-
<customer_id backend_model="adminhtml/system_config_backend_encrypted"/>
|
306 |
<currency>EUR</currency>
|
307 |
<model>adyen/adyen_hpp</model>
|
308 |
<group>adyen</group>
|
@@ -325,6 +325,7 @@
|
|
325 |
<group>adyen</group>
|
326 |
<title>Adyen iDEAL</title>
|
327 |
<show_ideal_logos>0</show_ideal_logos>
|
|
|
328 |
<sort_order>35</sort_order>
|
329 |
<allowspecific>1</allowspecific>
|
330 |
<specificcountry>NL</specificcountry>
|
@@ -370,6 +371,7 @@
|
|
370 |
<gender_show>0</gender_show>
|
371 |
<dob_show>0</dob_show>
|
372 |
<telephone_show>0</telephone_show>
|
|
|
373 |
<different_address_disable>0</different_address_disable>
|
374 |
<sort_order>40</sort_order>
|
375 |
</adyen_openinvoice>
|
@@ -587,14 +589,14 @@
|
|
587 |
</default>
|
588 |
<crontab>
|
589 |
<jobs>
|
590 |
-
<
|
591 |
<schedule>
|
592 |
-
<cron_expr>*/
|
593 |
</schedule>
|
594 |
<run>
|
595 |
<model>adyen/cronjob::updateNotificationQueue</model>
|
596 |
</run>
|
597 |
-
</
|
598 |
</jobs>
|
599 |
</crontab>
|
600 |
</config>
|
29 |
<config>
|
30 |
<modules>
|
31 |
<Adyen_Payment>
|
32 |
+
<version>2.5.0</version>
|
33 |
</Adyen_Payment>
|
34 |
</modules>
|
35 |
<global>
|
288 |
<ws_password_live></ws_password_live>
|
289 |
<demoMode>Y</demoMode>
|
290 |
<debug>1</debug>
|
291 |
+
<uncancelorder>1</uncancelorder>
|
292 |
<order_status>pending</order_status>
|
293 |
<payment_authorized>processing</payment_authorized>
|
294 |
<payment_authorized_virtual>complete</payment_authorized_virtual>
|
303 |
<ignore_refund_notification>0</ignore_refund_notification>
|
304 |
</adyen_abstract>
|
305 |
<adyen_hpp translate="title" module="adyen">
|
|
|
306 |
<currency>EUR</currency>
|
307 |
<model>adyen/adyen_hpp</model>
|
308 |
<group>adyen</group>
|
325 |
<group>adyen</group>
|
326 |
<title>Adyen iDEAL</title>
|
327 |
<show_ideal_logos>0</show_ideal_logos>
|
328 |
+
<autoselect_stored_ideal_bank>1</autoselect_stored_ideal_bank>
|
329 |
<sort_order>35</sort_order>
|
330 |
<allowspecific>1</allowspecific>
|
331 |
<specificcountry>NL</specificcountry>
|
371 |
<gender_show>0</gender_show>
|
372 |
<dob_show>0</dob_show>
|
373 |
<telephone_show>0</telephone_show>
|
374 |
+
<shoppertype>1</shoppertype>
|
375 |
<different_address_disable>0</different_address_disable>
|
376 |
<sort_order>40</sort_order>
|
377 |
</adyen_openinvoice>
|
589 |
</default>
|
590 |
<crontab>
|
591 |
<jobs>
|
592 |
+
<adyen_payment_process_notification_queue>
|
593 |
<schedule>
|
594 |
+
<cron_expr>*/1 * * * *</cron_expr>
|
595 |
</schedule>
|
596 |
<run>
|
597 |
<model>adyen/cronjob::updateNotificationQueue</model>
|
598 |
</run>
|
599 |
+
</adyen_payment_process_notification_queue>
|
600 |
</jobs>
|
601 |
</crontab>
|
602 |
</config>
|
app/code/community/Adyen/Payment/etc/system.xml
CHANGED
@@ -59,8 +59,9 @@
|
|
59 |
<li><a target="_blank" href="https://www.adyen.com/home/payment-services/plug-ins/magento#form"><strong>Sign</strong> up for a test account</a></li>
|
60 |
<li>The latest version of the <a target="_blank" href="https://github.com/adyenpayments/magento/releases">Adyen Magento module is also available through GitHub</a>.</li>
|
61 |
</ul>
|
62 |
-
<p>
|
63 |
-
<p>
|
|
|
64 |
<p>If you have any further questions, please visit the <a target="_blank" href="http://www.adyen.com">Adyen.com</a> website or email <a href="mailto:magento@adyen.com">magento@adyen.com</a>.</p>
|
65 |
]]>
|
66 |
</comment>
|
@@ -89,7 +90,9 @@
|
|
89 |
<merchantAccount translate="label comment tooltip">
|
90 |
<label>Merchant Account</label>
|
91 |
<tooltip><![CDATA[The merchant account identifier you want to process the (transaction) request with. Find this at the top of the screen in the Adyen Customer Area, where you will see [YourCompanyAccount] > [YourMerchantAccount] . Please note that the merchant account is different from the company account; a company account can have one or more merchant accounts.]]></tooltip>
|
|
|
92 |
<frontend_type>text</frontend_type>
|
|
|
93 |
<config_path>payment/adyen_abstract/merchantAccount</config_path>
|
94 |
<sort_order>10</sort_order>
|
95 |
<show_in_default>1</show_in_default>
|
@@ -158,7 +161,7 @@
|
|
158 |
<sort_order>90</sort_order>
|
159 |
<show_in_default>1</show_in_default>
|
160 |
<show_in_website>1</show_in_website>
|
161 |
-
<show_in_store
|
162 |
</ws_test_button>
|
163 |
<ws_username_live translate="label">
|
164 |
<label>Live: Web Service User Name</label>
|
@@ -190,7 +193,7 @@
|
|
190 |
<frontend_model>adyen/adminhtml_system_config_testWebserverConfiguration</frontend_model>
|
191 |
<sort_order>120</sort_order>
|
192 |
<show_in_default>1</show_in_default>
|
193 |
-
<show_in_website>
|
194 |
</ws_live_button>
|
195 |
<capture_mode translate="label">
|
196 |
<label>Capture Delay</label>
|
@@ -305,7 +308,7 @@
|
|
305 |
</payment_authorized_virtual>
|
306 |
<refund_authorized translate="label">
|
307 |
<label>Order status: Adyen Refunded</label>
|
308 |
-
<tooltip>Status given to order after a
|
309 |
<frontend_type>select</frontend_type>
|
310 |
<config_path>payment/adyen_abstract/refund_authorized</config_path>
|
311 |
<source_model>adyen/source_status_refund</source_model>
|
@@ -314,6 +317,17 @@
|
|
314 |
<show_in_website>1</show_in_website>
|
315 |
<show_in_store>0</show_in_store>
|
316 |
</refund_authorized>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
317 |
<pending_status>
|
318 |
<label>Order status: pending Bank Transfer/SEPA orders</label>
|
319 |
<tooltip>By default, Adyen does not inform your Magento store about pending payments. If you want these notifications to be received, Go to Adyen Customer Area => Server Communication and add BankTransfer Pending Notification and Direct-Debit Pending Notification.</tooltip>
|
@@ -358,6 +372,17 @@
|
|
358 |
<show_in_website>1</show_in_website>
|
359 |
<show_in_store>0</show_in_store>
|
360 |
</capture_on_shipment>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
361 |
<send_invoice_update_mail translate="label">
|
362 |
<label>Invoice email (deprecated)</label>
|
363 |
<frontend_type>select</frontend_type>
|
@@ -412,17 +437,6 @@
|
|
412 |
<show_in_website>1</show_in_website>
|
413 |
<show_in_store>1</show_in_store>
|
414 |
</ignore_refund_notification>
|
415 |
-
<update_notification_cronjob>
|
416 |
-
<label>Update notification queue by cronjob (every 5 minutes)</label>
|
417 |
-
<tooltip>If you are using API methods(CC, SEPA, ELV or Boleto) and your Magento order processing is slow, it could be that the notification is faster then Magento saves the order. The notification will then be saved in a queue. This is processed on default when next notification is received. If you want to update the notification queue every 5 minutes activate this and make sure cronjob of Magento is called by your web server</tooltip>
|
418 |
-
<frontend_type>select</frontend_type>
|
419 |
-
<source_model>adminhtml/system_config_source_yesno</source_model>
|
420 |
-
<config_path>payment/adyen_abstract/update_notification_cronjob</config_path>
|
421 |
-
<sort_order>240</sort_order>
|
422 |
-
<show_in_default>1</show_in_default>
|
423 |
-
<show_in_website>0</show_in_website>
|
424 |
-
<show_in_store>0</show_in_store>
|
425 |
-
</update_notification_cronjob>
|
426 |
<multiple_merchants translate="label">
|
427 |
<label>Allow multiple merchants</label>
|
428 |
<tooltip><![CDATA[Allow notifications sent from other Adyen merchant accounts. Keep in mind that the Notification user name and password should be the same for all the merchant accounts]]></tooltip>
|
@@ -450,13 +464,14 @@
|
|
450 |
The shopper is present for the subsequent transaction, for cards the security code (CVC/CVV) is required.
|
451 |
</p>
|
452 |
<p>
|
453 |
-
<strong>RECURRING
|
454 |
code (CVC/CVV) is not required for subsequent payments.
|
455 |
</p>
|
456 |
<p>
|
457 |
-
<strong>ONECLICK, RECURRING
|
458 |
the stored payment details regardless of whether the shopper is on your site or not.
|
459 |
</p>
|
|
|
460 |
]]>
|
461 |
</comment>
|
462 |
<fields>
|
@@ -998,7 +1013,7 @@
|
|
998 |
</fields>
|
999 |
</adyen_hpp>
|
1000 |
<adyen_ideal translate="label" module="adyen">
|
1001 |
-
<label>HPP iDEAL</label>
|
1002 |
<frontend_type>text</frontend_type>
|
1003 |
<sort_order>340</sort_order>
|
1004 |
<show_in_default>1</show_in_default>
|
@@ -1007,23 +1022,6 @@
|
|
1007 |
<frontend_model>adyen/adminhtml_system_config_fieldset_method</frontend_model>
|
1008 |
<activity_path>payment/adyen_ideal/active</activity_path>
|
1009 |
<fields>
|
1010 |
-
<active translate="label">
|
1011 |
-
<label>Enabled</label>
|
1012 |
-
<frontend_type>select</frontend_type>
|
1013 |
-
<source_model>adminhtml/system_config_source_yesno</source_model>
|
1014 |
-
<sort_order>10</sort_order>
|
1015 |
-
<show_in_default>1</show_in_default>
|
1016 |
-
<show_in_website>1</show_in_website>
|
1017 |
-
<show_in_store>1</show_in_store>
|
1018 |
-
</active>
|
1019 |
-
<title translate="label">
|
1020 |
-
<label>Title</label>
|
1021 |
-
<frontend_type>text</frontend_type>
|
1022 |
-
<sort_order>20</sort_order>
|
1023 |
-
<show_in_default>1</show_in_default>
|
1024 |
-
<show_in_website>1</show_in_website>
|
1025 |
-
<show_in_store>1</show_in_store>
|
1026 |
-
</title>
|
1027 |
<show_ideal_logos>
|
1028 |
<label>Show iDEAL bank logos</label>
|
1029 |
<tooltip>Show iDEAL bank logos (radio buttons) instead of in a drop-down list.</tooltip>
|
@@ -1043,39 +1041,21 @@
|
|
1043 |
<show_in_store>1</show_in_store>
|
1044 |
<validate>validate-number</validate>
|
1045 |
</fee>
|
1046 |
-
<
|
1047 |
-
<label>
|
1048 |
-
|
1049 |
-
<frontend_type>
|
1050 |
-
<
|
1051 |
-
<
|
1052 |
-
<show_in_website>1</show_in_website>
|
1053 |
-
<show_in_store>1</show_in_store>
|
1054 |
-
</sort_order>
|
1055 |
-
<allowspecific translate="label">
|
1056 |
-
<label>Payment from applicable countries</label>
|
1057 |
-
<frontend_type>allowspecific</frontend_type>
|
1058 |
-
<sort_order>49</sort_order>
|
1059 |
-
<source_model>adminhtml/system_config_source_payment_allspecificcountries</source_model>
|
1060 |
-
<show_in_default>1</show_in_default>
|
1061 |
-
<show_in_website>1</show_in_website>
|
1062 |
-
<show_in_store>1</show_in_store>
|
1063 |
-
</allowspecific>
|
1064 |
-
<specificcountry translate="label">
|
1065 |
-
<label>Payment from specific countries</label>
|
1066 |
-
<frontend_type>multiselect</frontend_type>
|
1067 |
-
<sort_order>50</sort_order>
|
1068 |
-
<source_model>adminhtml/system_config_source_country</source_model>
|
1069 |
<show_in_default>1</show_in_default>
|
1070 |
<show_in_website>1</show_in_website>
|
1071 |
<show_in_store>1</show_in_store>
|
1072 |
-
|
1073 |
-
</specificcountry>
|
1074 |
</fields>
|
1075 |
</adyen_ideal>
|
1076 |
<!-- @Openinvoice only -->
|
1077 |
<adyen_openinvoice translate="label" module="adyen">
|
1078 |
-
<label>HPP OpenInvoice</label>
|
1079 |
<frontend_type>text</frontend_type>
|
1080 |
<sort_order>350</sort_order>
|
1081 |
<show_in_default>1</show_in_default>
|
@@ -1146,10 +1126,19 @@
|
|
1146 |
<show_in_website>1</show_in_website>
|
1147 |
<show_in_store>1</show_in_store>
|
1148 |
</telephone_show>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1149 |
<fee translate="label">
|
1150 |
<label>Fee</label>
|
1151 |
<frontend_type>text</frontend_type>
|
1152 |
-
<sort_order>
|
1153 |
<show_in_default>1</show_in_default>
|
1154 |
<show_in_website>1</show_in_website>
|
1155 |
<show_in_store>1</show_in_store>
|
@@ -1160,7 +1149,7 @@
|
|
1160 |
<tooltip>Klarna will probably reject payments which have differing billing and delivery addresses. Setting this to 'Yes' will disable this payment method when that is the case.</tooltip>
|
1161 |
<frontend_type>select</frontend_type>
|
1162 |
<source_model>adminhtml/system_config_source_yesno</source_model>
|
1163 |
-
<sort_order>
|
1164 |
<show_in_default>1</show_in_default>
|
1165 |
<show_in_website>1</show_in_website>
|
1166 |
<show_in_store>1</show_in_store>
|
@@ -1175,6 +1164,16 @@
|
|
1175 |
<show_in_website>1</show_in_website>
|
1176 |
<show_in_store>1</show_in_store>
|
1177 |
</failed_attempt_disable>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1178 |
<allowspecific translate="label">
|
1179 |
<label>Payment from applicable countries</label>
|
1180 |
<frontend_type>allowspecific</frontend_type>
|
@@ -1497,7 +1496,6 @@
|
|
1497 |
<show_in_default>1</show_in_default>
|
1498 |
<show_in_website>1</show_in_website>
|
1499 |
<show_in_store>1</show_in_store>
|
1500 |
-
<depends><express_checkout>1</express_checkout></depends>
|
1501 |
</express_checkout_redirect_connect>
|
1502 |
<express_checkout_kiosk_mode>
|
1503 |
<label>Kiosk mode</label>
|
59 |
<li><a target="_blank" href="https://www.adyen.com/home/payment-services/plug-ins/magento#form"><strong>Sign</strong> up for a test account</a></li>
|
60 |
<li>The latest version of the <a target="_blank" href="https://github.com/adyenpayments/magento/releases">Adyen Magento module is also available through GitHub</a>.</li>
|
61 |
</ul>
|
62 |
+
<p>In the test modus you need to use test cards. <a target="_blank" href="http://adyen.com/test-card-numbers">Test cards can be found here</a>
|
63 |
+
<p>In the test environment you can test with refused cards, for more information <a target="_blank" href="https://docs.adyen.com/display/TD/Error+code+testing">click here</a></p>
|
64 |
+
<p>You can find this in the Adyen backoffice. The Adyen backoffice can be found on <a target="_blank" href="https://ca-test.adyen.com">https://ca-test.adyen.com</a> for test or <a target="_blank" href="https://ca-live.adyen.com">https://ca-live.adyen.com</a> for live.</p>
|
65 |
<p>If you have any further questions, please visit the <a target="_blank" href="http://www.adyen.com">Adyen.com</a> website or email <a href="mailto:magento@adyen.com">magento@adyen.com</a>.</p>
|
66 |
]]>
|
67 |
</comment>
|
90 |
<merchantAccount translate="label comment tooltip">
|
91 |
<label>Merchant Account</label>
|
92 |
<tooltip><![CDATA[The merchant account identifier you want to process the (transaction) request with. Find this at the top of the screen in the Adyen Customer Area, where you will see [YourCompanyAccount] > [YourMerchantAccount] . Please note that the merchant account is different from the company account; a company account can have one or more merchant accounts.]]></tooltip>
|
93 |
+
<comment><![CDATA[<a target="_blank" href="https://docs.adyen.com/display/TD/Prepare+the+settings+in+the+Adyen+Customer+Area">Click here for explanation.</a>]]></comment>
|
94 |
<frontend_type>text</frontend_type>
|
95 |
+
<backend_model>adyen/system_config_backend_trim</backend_model>
|
96 |
<config_path>payment/adyen_abstract/merchantAccount</config_path>
|
97 |
<sort_order>10</sort_order>
|
98 |
<show_in_default>1</show_in_default>
|
161 |
<sort_order>90</sort_order>
|
162 |
<show_in_default>1</show_in_default>
|
163 |
<show_in_website>1</show_in_website>
|
164 |
+
<show_in_store>0</show_in_store>
|
165 |
</ws_test_button>
|
166 |
<ws_username_live translate="label">
|
167 |
<label>Live: Web Service User Name</label>
|
193 |
<frontend_model>adyen/adminhtml_system_config_testWebserverConfiguration</frontend_model>
|
194 |
<sort_order>120</sort_order>
|
195 |
<show_in_default>1</show_in_default>
|
196 |
+
<show_in_website>0</show_in_website>
|
197 |
</ws_live_button>
|
198 |
<capture_mode translate="label">
|
199 |
<label>Capture Delay</label>
|
308 |
</payment_authorized_virtual>
|
309 |
<refund_authorized translate="label">
|
310 |
<label>Order status: Adyen Refunded</label>
|
311 |
+
<tooltip>Status given to order after a refund has been made on the order. This is triggered when the REFUND notification is received</tooltip>
|
312 |
<frontend_type>select</frontend_type>
|
313 |
<config_path>payment/adyen_abstract/refund_authorized</config_path>
|
314 |
<source_model>adyen/source_status_refund</source_model>
|
317 |
<show_in_website>1</show_in_website>
|
318 |
<show_in_store>0</show_in_store>
|
319 |
</refund_authorized>
|
320 |
+
<refund_partial_authorized translate="label">
|
321 |
+
<label>Order status: Adyen partial Refunded</label>
|
322 |
+
<tooltip>Status given to order after a partial refund has been made on the order. This is triggered when the REFUND notification is received. We advise to don't set this status and let Magento decide the status</tooltip>
|
323 |
+
<frontend_type>select</frontend_type>
|
324 |
+
<config_path>payment/adyen_abstract/refund_partial_authorized</config_path>
|
325 |
+
<source_model>adminhtml/system_config_source_order_status_processing</source_model>
|
326 |
+
<sort_order>41</sort_order>
|
327 |
+
<show_in_default>1</show_in_default>
|
328 |
+
<show_in_website>1</show_in_website>
|
329 |
+
<show_in_store>0</show_in_store>
|
330 |
+
</refund_partial_authorized>
|
331 |
<pending_status>
|
332 |
<label>Order status: pending Bank Transfer/SEPA orders</label>
|
333 |
<tooltip>By default, Adyen does not inform your Magento store about pending payments. If you want these notifications to be received, Go to Adyen Customer Area => Server Communication and add BankTransfer Pending Notification and Direct-Debit Pending Notification.</tooltip>
|
372 |
<show_in_website>1</show_in_website>
|
373 |
<show_in_store>0</show_in_store>
|
374 |
</capture_on_shipment>
|
375 |
+
<uncancelorder translate="label">
|
376 |
+
<label>Enable Uncancel Order</label>
|
377 |
+
<tooltip>If an order is cancelled for some reason but it received a notification that the payment is authorised this will automatically uncancel the order</tooltip>
|
378 |
+
<frontend_type>select</frontend_type>
|
379 |
+
<config_path>payment/adyen_abstract/uncancelorder</config_path>
|
380 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
381 |
+
<sort_order>90</sort_order>
|
382 |
+
<show_in_default>1</show_in_default>
|
383 |
+
<show_in_website>0</show_in_website>
|
384 |
+
<show_in_store>0</show_in_store>
|
385 |
+
</uncancelorder>
|
386 |
<send_invoice_update_mail translate="label">
|
387 |
<label>Invoice email (deprecated)</label>
|
388 |
<frontend_type>select</frontend_type>
|
437 |
<show_in_website>1</show_in_website>
|
438 |
<show_in_store>1</show_in_store>
|
439 |
</ignore_refund_notification>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
440 |
<multiple_merchants translate="label">
|
441 |
<label>Allow multiple merchants</label>
|
442 |
<tooltip><![CDATA[Allow notifications sent from other Adyen merchant accounts. Keep in mind that the Notification user name and password should be the same for all the merchant accounts]]></tooltip>
|
464 |
The shopper is present for the subsequent transaction, for cards the security code (CVC/CVV) is required.
|
465 |
</p>
|
466 |
<p>
|
467 |
+
<strong>RECURRING*</strong>: Payment details are stored for future use. For cards, the security
|
468 |
code (CVC/CVV) is not required for subsequent payments.
|
469 |
</p>
|
470 |
<p>
|
471 |
+
<strong>ONECLICK, RECURRING*</strong>: Payment details are stored for future use. This allows the use of
|
472 |
the stored payment details regardless of whether the shopper is on your site or not.
|
473 |
</p>
|
474 |
+
<p>* keep in mind you need the recurring permission enabled. You can contact magento@adyen.com to enable this for your account.
|
475 |
]]>
|
476 |
</comment>
|
477 |
<fields>
|
1013 |
</fields>
|
1014 |
</adyen_hpp>
|
1015 |
<adyen_ideal translate="label" module="adyen">
|
1016 |
+
<label>HPP iDEAL - Requires Adyen HPP</label>
|
1017 |
<frontend_type>text</frontend_type>
|
1018 |
<sort_order>340</sort_order>
|
1019 |
<show_in_default>1</show_in_default>
|
1022 |
<frontend_model>adyen/adminhtml_system_config_fieldset_method</frontend_model>
|
1023 |
<activity_path>payment/adyen_ideal/active</activity_path>
|
1024 |
<fields>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1025 |
<show_ideal_logos>
|
1026 |
<label>Show iDEAL bank logos</label>
|
1027 |
<tooltip>Show iDEAL bank logos (radio buttons) instead of in a drop-down list.</tooltip>
|
1041 |
<show_in_store>1</show_in_store>
|
1042 |
<validate>validate-number</validate>
|
1043 |
</fee>
|
1044 |
+
<autoselect_stored_ideal_bank>
|
1045 |
+
<label>Auto select Ideal bank</label>
|
1046 |
+
<tooltip>If you have problems that the wrong ideal bank is selected turn this option off. This is a common problem in the onestepcheckout module</tooltip>
|
1047 |
+
<frontend_type>select</frontend_type>
|
1048 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
1049 |
+
<sort_order>39</sort_order>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1050 |
<show_in_default>1</show_in_default>
|
1051 |
<show_in_website>1</show_in_website>
|
1052 |
<show_in_store>1</show_in_store>
|
1053 |
+
</autoselect_stored_ideal_bank>
|
|
|
1054 |
</fields>
|
1055 |
</adyen_ideal>
|
1056 |
<!-- @Openinvoice only -->
|
1057 |
<adyen_openinvoice translate="label" module="adyen">
|
1058 |
+
<label>HPP OpenInvoice - Requires Adyen HPP</label>
|
1059 |
<frontend_type>text</frontend_type>
|
1060 |
<sort_order>350</sort_order>
|
1061 |
<show_in_default>1</show_in_default>
|
1126 |
<show_in_website>1</show_in_website>
|
1127 |
<show_in_store>1</show_in_store>
|
1128 |
</telephone_show>
|
1129 |
+
<shoppertype>
|
1130 |
+
<label>Allow Shopper information to be changed on HPP</label>
|
1131 |
+
<frontend_type>select</frontend_type>
|
1132 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
1133 |
+
<sort_order>38</sort_order>
|
1134 |
+
<show_in_default>1</show_in_default>
|
1135 |
+
<show_in_website>1</show_in_website>
|
1136 |
+
<show_in_store>1</show_in_store>
|
1137 |
+
</shoppertype>
|
1138 |
<fee translate="label">
|
1139 |
<label>Fee</label>
|
1140 |
<frontend_type>text</frontend_type>
|
1141 |
+
<sort_order>39</sort_order>
|
1142 |
<show_in_default>1</show_in_default>
|
1143 |
<show_in_website>1</show_in_website>
|
1144 |
<show_in_store>1</show_in_store>
|
1149 |
<tooltip>Klarna will probably reject payments which have differing billing and delivery addresses. Setting this to 'Yes' will disable this payment method when that is the case.</tooltip>
|
1150 |
<frontend_type>select</frontend_type>
|
1151 |
<source_model>adminhtml/system_config_source_yesno</source_model>
|
1152 |
+
<sort_order>40</sort_order>
|
1153 |
<show_in_default>1</show_in_default>
|
1154 |
<show_in_website>1</show_in_website>
|
1155 |
<show_in_store>1</show_in_store>
|
1164 |
<show_in_website>1</show_in_website>
|
1165 |
<show_in_store>1</show_in_store>
|
1166 |
</failed_attempt_disable>
|
1167 |
+
<ignore_second_address_field>
|
1168 |
+
<label>Ignore the second address line field</label>
|
1169 |
+
<tooltip>If you do not want to send the second line address field to Klarna set this setting to 'Yes'</tooltip>
|
1170 |
+
<frontend_type>select</frontend_type>
|
1171 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
1172 |
+
<sort_order>47</sort_order>
|
1173 |
+
<show_in_default>1</show_in_default>
|
1174 |
+
<show_in_website>1</show_in_website>
|
1175 |
+
<show_in_store>1</show_in_store>
|
1176 |
+
</ignore_second_address_field>
|
1177 |
<allowspecific translate="label">
|
1178 |
<label>Payment from applicable countries</label>
|
1179 |
<frontend_type>allowspecific</frontend_type>
|
1496 |
<show_in_default>1</show_in_default>
|
1497 |
<show_in_website>1</show_in_website>
|
1498 |
<show_in_store>1</show_in_store>
|
|
|
1499 |
</express_checkout_redirect_connect>
|
1500 |
<express_checkout_kiosk_mode>
|
1501 |
<label>Kiosk mode</label>
|
app/code/community/Adyen/Payment/sql/adyen_setup/mysql4-upgrade-2.3.1.1-2.3.1.2.php
CHANGED
@@ -60,11 +60,11 @@ $oAttribute->setData('sort_order', $attributeSortOrder);
|
|
60 |
$oAttribute->save();
|
61 |
|
62 |
|
63 |
-
$connection->addColumn($this->getTable('sales/billing_agreement'), 'agreement_data',
|
64 |
'type' => Varien_Db_Ddl_Table::TYPE_TEXT,
|
65 |
'nullable' => true,
|
66 |
'comment' => 'Agreement Data'
|
67 |
-
|
68 |
|
69 |
|
70 |
$installer->endSetup();
|
60 |
$oAttribute->save();
|
61 |
|
62 |
|
63 |
+
$connection->addColumn($this->getTable('sales/billing_agreement'), 'agreement_data', array(
|
64 |
'type' => Varien_Db_Ddl_Table::TYPE_TEXT,
|
65 |
'nullable' => true,
|
66 |
'comment' => 'Agreement Data'
|
67 |
+
));
|
68 |
|
69 |
|
70 |
$installer->endSetup();
|
app/design/adminhtml/default/default/layout/adyen.xml
CHANGED
@@ -35,6 +35,7 @@
|
|
35 |
<arguments module="ordergrid" translate="header">
|
36 |
<header>Adyen Status</header>
|
37 |
<index>adyen_event_code</index>
|
|
|
38 |
<width>50px</width>
|
39 |
<type>options</type>
|
40 |
<filter>adyen/adminhtml_sales_order_filter_adyen</filter>
|
@@ -73,4 +74,4 @@
|
|
73 |
</reference>
|
74 |
</adminhtml_sales_order_create_index>
|
75 |
|
76 |
-
</layout>
|
35 |
<arguments module="ordergrid" translate="header">
|
36 |
<header>Adyen Status</header>
|
37 |
<index>adyen_event_code</index>
|
38 |
+
<filter_index>main_table.adyen_event_code</filter_index>
|
39 |
<width>50px</width>
|
40 |
<type>options</type>
|
41 |
<filter>adyen/adminhtml_sales_order_filter_adyen</filter>
|
74 |
</reference>
|
75 |
</adminhtml_sales_order_create_index>
|
76 |
|
77 |
+
</layout>
|
app/design/adminhtml/default/default/template/adyen/form/sepa.phtml
CHANGED
@@ -66,12 +66,26 @@ $_code=$this->getMethodCode();
|
|
66 |
|
67 |
<li>
|
68 |
<div class="input-box">
|
69 |
-
<
|
70 |
-
|
|
|
|
|
71 |
</div>
|
72 |
</li>
|
73 |
</ul>
|
74 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
75 |
<div>
|
76 |
<span id="ipayment-sepa-please-wait" style="display:none;" class="opc-please-wait">
|
77 |
<img src="<?php echo $this->getSkinUrl('images/opc-ajax-loader.gif') ?>" class="v-middle" alt=""/> <?php echo $this->__('Submitting payment information...') ?>
|
66 |
|
67 |
<li>
|
68 |
<div class="input-box">
|
69 |
+
<label for="<?php echo $_code ?>_accept_sepa">
|
70 |
+
<input class="required-entry" type="checkbox" value="1" name="payment[accept_sepa]" id="<?php echo $_code ?>_accept_sepa" />
|
71 |
+
<?php echo $this->__('I agree that the above amount will be debited from my bank account.') ?>
|
72 |
+
</label>
|
73 |
</div>
|
74 |
</li>
|
75 |
</ul>
|
76 |
|
77 |
+
<script type="text/javascript">
|
78 |
+
var $fields = $('payment_form_<?=$_code;?>').select('input[type=text]', 'select', 'textarea');
|
79 |
+
|
80 |
+
$fields.each(function(field) {
|
81 |
+
field.value = localStorage.getItem(field.id);
|
82 |
+
|
83 |
+
field.observe('change', function() {
|
84 |
+
localStorage.setItem(field.id, field.value);
|
85 |
+
});
|
86 |
+
});
|
87 |
+
</script>
|
88 |
+
|
89 |
<div>
|
90 |
<span id="ipayment-sepa-please-wait" style="display:none;" class="opc-please-wait">
|
91 |
<img src="<?php echo $this->getSkinUrl('images/opc-ajax-loader.gif') ?>" class="v-middle" alt=""/> <?php echo $this->__('Submitting payment information...') ?>
|
app/design/adminhtml/default/default/template/adyen/info/hpp.phtml
CHANGED
@@ -50,6 +50,9 @@
|
|
50 |
<?php echo $this->__('Bank: %s', $this->htmlEscape($label)) ?><br/>
|
51 |
<?php endif; ?>
|
52 |
<?php endif; ?>
|
|
|
|
|
|
|
53 |
<?php if($_info->getAdyenKlarnaNumber() != null && $_info->getAdyenKlarnaNumber() != ""): ?>
|
54 |
<?php echo Mage::helper('adyen')->__('Klarna reservation number: %s', $this->htmlEscape($_info->getAdyenKlarnaNumber())) ?> <br/>
|
55 |
<?php endif; ?>
|
50 |
<?php echo $this->__('Bank: %s', $this->htmlEscape($label)) ?><br/>
|
51 |
<?php endif; ?>
|
52 |
<?php endif; ?>
|
53 |
+
<?php if($this->htmlEscape($this->getInfo()->getAdyenTotalFraudScore()) != ""): ?>
|
54 |
+
<?php echo Mage::helper('adyen')->__('Total fraud score: %s', $this->htmlEscape($this->getInfo()->getAdyenTotalFraudScore())) ?><br/>
|
55 |
+
<?php endif; ?>
|
56 |
<?php if($_info->getAdyenKlarnaNumber() != null && $_info->getAdyenKlarnaNumber() != ""): ?>
|
57 |
<?php echo Mage::helper('adyen')->__('Klarna reservation number: %s', $this->htmlEscape($_info->getAdyenKlarnaNumber())) ?> <br/>
|
58 |
<?php endif; ?>
|
app/design/frontend/base/default/template/adyen/form/ideal.phtml
CHANGED
@@ -31,29 +31,39 @@
|
|
31 |
<?php $_code = $this->getMethodCode() ?>
|
32 |
|
33 |
<ul class="form-list" id="payment_form_<?php echo $_code ?>" style="display:none">
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
</label>
|
38 |
<?php if($this->getShowIdealLogos()): ?>
|
39 |
-
|
40 |
-
<label
|
41 |
-
|
42 |
-
name="payment[adyen_ideal_type]" value="<?php echo $_issueId ?>"
|
43 |
-
<?php if (isset($_issuerData['selected'])): ?>checked<?php endif; ?> />
|
44 |
-
<img src="<?php echo $this->getIssuerImageUrl($_issuerData); ?>"
|
45 |
-
alt="<?php echo $_issuerData['label'] ?>" />
|
46 |
</label>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
47 |
<?php endforeach; ?>
|
48 |
<?php else:?>
|
49 |
-
<
|
50 |
-
<
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
|
|
|
|
|
|
|
|
|
|
57 |
<?php endif; ?>
|
58 |
-
</li>
|
59 |
</ul>
|
31 |
<?php $_code = $this->getMethodCode() ?>
|
32 |
|
33 |
<ul class="form-list" id="payment_form_<?php echo $_code ?>" style="display:none">
|
34 |
+
|
35 |
+
|
36 |
+
|
|
|
37 |
<?php if($this->getShowIdealLogos()): ?>
|
38 |
+
<li>
|
39 |
+
<label for="payment[adyen_ideal_type]">
|
40 |
+
<?php echo $this->__('Choose Your Bank') ?>
|
|
|
|
|
|
|
|
|
41 |
</label>
|
42 |
+
</li>
|
43 |
+
<?php foreach ($this->getIssuers() as $_issueId => $_issuerData): ?>
|
44 |
+
<li>
|
45 |
+
<label class="adyen-ideal-image-label">
|
46 |
+
<input type="radio" id="adyen_ideal_type_<?php echo $_issueId ?>"
|
47 |
+
name="payment[adyen_ideal_type]" value="<?php echo $_issueId ?>"
|
48 |
+
<?php if (isset($_issuerData['selected'])): ?>checked<?php endif; ?> />
|
49 |
+
<img src="<?php echo $this->getIssuerImageUrl($_issuerData); ?>"
|
50 |
+
alt="<?php echo $_issuerData['label'] ?>" />
|
51 |
+
</label>
|
52 |
+
</li>
|
53 |
<?php endforeach; ?>
|
54 |
<?php else:?>
|
55 |
+
<li>
|
56 |
+
<label for="payment[adyen_ideal_type]">
|
57 |
+
<?php echo $this->__('Choose Your Bank') ?>
|
58 |
+
</label>
|
59 |
+
<select class="adyen_select_ideal" name="payment[adyen_ideal_type]">
|
60 |
+
<option value=""><?php echo $this->__('Choose Your Bank');?></option>
|
61 |
+
<?php foreach ($this->getIssuers() as $_issuerId => $_issuerData): ?>
|
62 |
+
<option value="<?php echo $_issuerId ?>" <?php if (isset($_issuerData['selected'])): ?>selected<?php endif; ?>>
|
63 |
+
<?php echo $_issuerData['label']; ?>
|
64 |
+
</option>
|
65 |
+
<?php endforeach;?>
|
66 |
+
</select>
|
67 |
+
</li>
|
68 |
<?php endif; ?>
|
|
|
69 |
</ul>
|
app/design/frontend/base/default/template/adyen/form/sepa.phtml
CHANGED
@@ -67,7 +67,7 @@ $_code = $this->getMethodCode();
|
|
67 |
<li id="no-agreement">
|
68 |
<div class="input-box">
|
69 |
<div class="v-fix">
|
70 |
-
<input class="required-entry" type="checkbox" name="payment[accept_sepa]" id="<?php echo $_code ?>_accept_sepa" />
|
71 |
<label for="<?php echo $_code ?>_accept_sepa"><?php echo $this->__('I agree that the above amount will be debited from my bank account.') ?></label>
|
72 |
</div>
|
73 |
</div>
|
67 |
<li id="no-agreement">
|
68 |
<div class="input-box">
|
69 |
<div class="v-fix">
|
70 |
+
<input class="required-entry" value="1" type="checkbox" name="payment[accept_sepa]" id="<?php echo $_code ?>_accept_sepa" />
|
71 |
<label for="<?php echo $_code ?>_accept_sepa"><?php echo $this->__('I agree that the above amount will be debited from my bank account.') ?></label>
|
72 |
</div>
|
73 |
</div>
|
app/design/frontend/base/default/template/adyen/info/cc.phtml
CHANGED
@@ -28,10 +28,7 @@
|
|
28 |
<?php
|
29 |
if ($_info = $this->getInfo()) {
|
30 |
if ($this->isCseEnabled()) {
|
31 |
-
echo
|
32 |
-
if($this->hasInstallments()):
|
33 |
-
echo "<br />" . $this->__('Installments: %s', $this->htmlEscape($this->getInfo()->getAdditionalInformation('number_of_installments')))."<br/>";
|
34 |
-
endif;
|
35 |
}
|
36 |
else {
|
37 |
echo $this->__('Name on the Card: %s', $this->htmlEscape($_info->getCcOwner()))."<br/>";
|
@@ -39,5 +36,9 @@ if ($_info = $this->getInfo()) {
|
|
39 |
echo $this->__('Credit Card Number: xxxx-%s', $this->htmlEscape($_info->getCcLast4()))."<br/>";
|
40 |
echo $this->__('Expiration Date: %s/%s', $this->htmlEscape($this->getCcExpMonth()), $this->htmlEscape($_info->getCcExpYear()));
|
41 |
}
|
|
|
|
|
|
|
|
|
42 |
}
|
43 |
?>
|
28 |
<?php
|
29 |
if ($_info = $this->getInfo()) {
|
30 |
if ($this->isCseEnabled()) {
|
31 |
+
echo $this->htmlEscape($this->getMethod()->getTitle());
|
|
|
|
|
|
|
32 |
}
|
33 |
else {
|
34 |
echo $this->__('Name on the Card: %s', $this->htmlEscape($_info->getCcOwner()))."<br/>";
|
36 |
echo $this->__('Credit Card Number: xxxx-%s', $this->htmlEscape($_info->getCcLast4()))."<br/>";
|
37 |
echo $this->__('Expiration Date: %s/%s', $this->htmlEscape($this->getCcExpMonth()), $this->htmlEscape($_info->getCcExpYear()));
|
38 |
}
|
39 |
+
|
40 |
+
if($this->hasInstallments()):
|
41 |
+
echo "<br />" . $this->__('Installments: %s', $this->htmlEscape($this->getInfo()->getAdditionalInformation('number_of_installments')))."<br/>";
|
42 |
+
endif;
|
43 |
}
|
44 |
?>
|
app/design/frontend/base/default/template/adyen/info/pay_by_mail.phtml
CHANGED
@@ -27,5 +27,5 @@
|
|
27 |
?>
|
28 |
<?php echo $this->htmlEscape($this->getMethod()->getTitle()) ?><br/>
|
29 |
<?php if(!$this->inCheckout()):?>
|
30 |
-
<a target="_blank" href="<?php echo $this->getMethod()->getInfoInstance()->getAdditionalInformation('payment_url'); ?>"
|
31 |
<?php endif; ?>
|
27 |
?>
|
28 |
<?php echo $this->htmlEscape($this->getMethod()->getTitle()) ?><br/>
|
29 |
<?php if(!$this->inCheckout()):?>
|
30 |
+
<a target="_blank" href="<?php echo $this->getMethod()->getInfoInstance()->getAdditionalInformation('payment_url'); ?>"><?php echo $this->__("Click here to pay for your purchase"); ?></a>
|
31 |
<?php endif; ?>
|
app/design/frontend/base/default/template/adyen/saved_cards.phtml
ADDED
@@ -0,0 +1,157 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/**
|
4 |
+
* Adyen Payment Module
|
5 |
+
*
|
6 |
+
* NOTICE OF LICENSE
|
7 |
+
*
|
8 |
+
* This source file is subject to the Open Software License (OSL 3.0)
|
9 |
+
* that is bundled with this package in the file LICENSE.txt.
|
10 |
+
* It is also available through the world-wide-web at this URL:
|
11 |
+
* http://opensource.org/licenses/osl-3.0.php
|
12 |
+
* If you did not receive a copy of the license and are unable to
|
13 |
+
* obtain it through the world-wide-web, please send an email
|
14 |
+
* to license@magentocommerce.com so we can send you a copy immediately.
|
15 |
+
*
|
16 |
+
* @category Adyen
|
17 |
+
* @package Adyen_Payment
|
18 |
+
* @copyright Copyright (c) 2011 Adyen (http://www.adyen.com)
|
19 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
20 |
+
*/
|
21 |
+
/**
|
22 |
+
* @category Payment Gateway
|
23 |
+
* @package Adyen_Payment
|
24 |
+
* @author Adyen
|
25 |
+
* @property Adyen B.V
|
26 |
+
* @copyright Copyright (c) 2014 Adyen BV (http://www.adyen.com)
|
27 |
+
*/
|
28 |
+
?>
|
29 |
+
<?php /* @var $this Adyen_Payment_Block_SavedCards */ ?>
|
30 |
+
<div class="page-title">
|
31 |
+
<h1><?php echo $this->__('My Saved cards') ?></h1>
|
32 |
+
</div>
|
33 |
+
|
34 |
+
<?php echo $this->getMessagesBlock()->getGroupedHtml() ?>
|
35 |
+
|
36 |
+
<div class="saved-cards">
|
37 |
+
|
38 |
+
<div id="oneclick-cse" class="">
|
39 |
+
|
40 |
+
<?php $_listRecurringDetails = $this->getlistRecurringDetails(); ?>
|
41 |
+
|
42 |
+
<?php if(!empty($_listRecurringDetails)): ?>
|
43 |
+
|
44 |
+
<ul id="oneclick_payment_form" class="recurring-creditcards">
|
45 |
+
<?php
|
46 |
+
$count = 0;
|
47 |
+
foreach($_listRecurringDetails as $key => $value):?>
|
48 |
+
<li>
|
49 |
+
|
50 |
+
<form method="post" action="<?php echo $this->getUrl("adyen/savedCard/", array('_secure'=>true)); ?>">
|
51 |
+
|
52 |
+
<input type="hidden" name="recurringDetailReference" value="<?php echo $value["recurringDetailReference"] ?>" />
|
53 |
+
|
54 |
+
|
55 |
+
<div class="creditcard-block">
|
56 |
+
<?php
|
57 |
+
$_bankFile = $value["variant"];
|
58 |
+
$_filename = Mage::getDesign()->getFilename("images/adyen/{$_bankFile}.png", array('_type' => 'skin'));
|
59 |
+
$imageUrl = file_exists($_filename)
|
60 |
+
? $this->getSkinUrl("images/adyen/{$_bankFile}.png")
|
61 |
+
: $this->getSkinUrl("images/adyen/img_trans.gif");
|
62 |
+
|
63 |
+
?>
|
64 |
+
|
65 |
+
<img src="<?php echo $imageUrl; ?>" alt="<?php echo $_bankFile ?>" label="<?php echo $_bankFile ?>" />
|
66 |
+
|
67 |
+
|
68 |
+
<?php if(isset($value["card_number"]) && isset($value["card_expiryMonth"]) && isset($value["card_expiryYear"]) ): ?>
|
69 |
+
<div class="columns three a">
|
70 |
+
<label><?php echo $this->__('Credit Card Number') ?></label>
|
71 |
+
<span>****</span> <?php echo $value["card_number"]; ?>
|
72 |
+
</div>
|
73 |
+
|
74 |
+
<div class="columns three b">
|
75 |
+
<label><?php echo $this->__('Expiration Date') ?><a href="#" id="update-expiration-date-<?php echo $key; ?>" class="update-expiration-date" style="display:none;"><?php echo $this->__('(update)') ?></a></label>
|
76 |
+
|
77 |
+
<div id="static-card-expiry-<?php echo $key; ?>" class="static-card-expiry">
|
78 |
+
<?php echo $value["card_expiryMonth"] . " /" . $value["card_expiryYear"]; ?>
|
79 |
+
</div>
|
80 |
+
|
81 |
+
</div>
|
82 |
+
|
83 |
+
<div style="clear:both;"></div>
|
84 |
+
|
85 |
+
<div class="creditcard-holder-name"><?php echo $value["card_holderName"]; ?></div>
|
86 |
+
|
87 |
+
<?php elseif($value["variant"] == "elv"): ?>
|
88 |
+
|
89 |
+
<div class="columns three a">
|
90 |
+
<label><?php echo $this->__('Account Number') ?></label>
|
91 |
+
<span><?php echo $value["elv_bankAccountNumber"]; ?></span>
|
92 |
+
</div>
|
93 |
+
|
94 |
+
<div class="columns three b">
|
95 |
+
<label><?php echo $this->__('Bank Name') ?></label>
|
96 |
+
<span><?php echo $value["elv_bankName"]; ?></span>
|
97 |
+
</div>
|
98 |
+
|
99 |
+
<div style="clear:both;"></div>
|
100 |
+
|
101 |
+
<div class="creditcard-holder-name"><?php echo $value["elv_bankName"]; ?></div>
|
102 |
+
|
103 |
+
<?php elseif($value["variant"] == "openinvoice"): ?>
|
104 |
+
|
105 |
+
<div class="columns three a">
|
106 |
+
<label><?php echo $this->__('Account Number') ?></label>
|
107 |
+
<span><?php echo $value["bank_bankAccountNumber"]; ?></span>
|
108 |
+
</div>
|
109 |
+
|
110 |
+
<div class="columns three b">
|
111 |
+
<label><?php echo $this->__('Country') ?></label>
|
112 |
+
<span><?php echo $value["bank_countryCode"]; ?></span>
|
113 |
+
</div>
|
114 |
+
|
115 |
+
<div style="clear:both;"></div>
|
116 |
+
|
117 |
+
<div class="creditcard-holder-name"><?php echo $value["bank_ownerName"]; ?></div>
|
118 |
+
|
119 |
+
<?php elseif($value["variant"] == "sepadirectdebit" || $value["variant"] == "ideal" ): ?>
|
120 |
+
|
121 |
+
<div class="columns three a">
|
122 |
+
<label><?php echo $this->__('IBAN') ?></label>
|
123 |
+
<span><?php echo $value["bank_iban"]; ?></span>
|
124 |
+
</div>
|
125 |
+
|
126 |
+
<div class="columns three b">
|
127 |
+
<label><?php echo $this->__('Country') ?></label>
|
128 |
+
<span><?php echo $value["bank_countryCode"]; ?></span>
|
129 |
+
</div>
|
130 |
+
|
131 |
+
<div style="clear:both;"></div>
|
132 |
+
|
133 |
+
<div class="creditcard-holder-name"><?php echo $value["bank_ownerName"]; ?></div>
|
134 |
+
|
135 |
+
<?php endif; ?>
|
136 |
+
|
137 |
+
<button type="submit" title="Add to Cart" class="button btn-cart btn-delete"><span><span><?php echo $this->__('Remove Card');?></span></span></button>
|
138 |
+
|
139 |
+
<div style="clear:both;"></div>
|
140 |
+
</div>
|
141 |
+
</form>
|
142 |
+
<?php ++$count; ?>
|
143 |
+
</li>
|
144 |
+
<?php endforeach; ?>
|
145 |
+
</ul>
|
146 |
+
<?php else: ?>
|
147 |
+
<p><?php echo $this->__('There are no saved cards for this account.');?></p>
|
148 |
+
<?php endif; ?>
|
149 |
+
|
150 |
+
|
151 |
+
|
152 |
+
</div>
|
153 |
+
|
154 |
+
<div class="buttons-set">
|
155 |
+
<p class="back-link"><a href="<?php echo $this->escapeUrl($this->getBackUrl()) ?>"><small>« </small><?php echo $this->__('Back') ?></a></p>
|
156 |
+
</div>
|
157 |
+
</div>
|
app/locale/de_DE/Adyen_Payment.csv
CHANGED
@@ -14,9 +14,10 @@
|
|
14 |
"Shipment cost: %s %s <br />","Versandkosten: %s %s <br />"
|
15 |
"System error, please try again later","Systemfehler, bitte versuchen Sie es später erneut."
|
16 |
"System error, please try again later: %s", "Systemfehler, bitte versuchen Sie es später erneut: %s"
|
17 |
-
"The payment is REFUSED
|
18 |
"You will be redirected to Adyen in a few seconds.", "In einigen Sekunden werden Sie zu Adyen weitergeleitet."
|
19 |
"Your payment failed, Please try again later","Ihre Bezahlung ist fehlgeschlagen."
|
|
|
20 |
"--Please Select--","--Bitte auswählen--"
|
21 |
"Account Number","Kontonummer"
|
22 |
"Account holder name","Name des Kontoinhabers"
|
@@ -55,3 +56,17 @@
|
|
55 |
"Choose Your Bank","Wählen Sie ihre Bank aus"
|
56 |
"You chose an invalid bank","Sie haben eine ungültige Bank ausgewählt"
|
57 |
"You have cancelled the order. Please try again", "Sie haben den Auftrag storniert. Bitte versuchen Sie es erneut"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
14 |
"Shipment cost: %s %s <br />","Versandkosten: %s %s <br />"
|
15 |
"System error, please try again later","Systemfehler, bitte versuchen Sie es später erneut."
|
16 |
"System error, please try again later: %s", "Systemfehler, bitte versuchen Sie es später erneut: %s"
|
17 |
+
"The payment is REFUSED.", "Die Bezahlung wurde zurückgewiesen."
|
18 |
"You will be redirected to Adyen in a few seconds.", "In einigen Sekunden werden Sie zu Adyen weitergeleitet."
|
19 |
"Your payment failed, Please try again later","Ihre Bezahlung ist fehlgeschlagen."
|
20 |
+
"Your openinvoice payment failed","Ihre Bezahlung ist fehlgeschlagen."
|
21 |
"--Please Select--","--Bitte auswählen--"
|
22 |
"Account Number","Kontonummer"
|
23 |
"Account holder name","Name des Kontoinhabers"
|
56 |
"Choose Your Bank","Wählen Sie ihre Bank aus"
|
57 |
"You chose an invalid bank","Sie haben eine ungültige Bank ausgewählt"
|
58 |
"You have cancelled the order. Please try again", "Sie haben den Auftrag storniert. Bitte versuchen Sie es erneut"
|
59 |
+
"Bank account holder name","Kontoinhabers Name"
|
60 |
+
"IBAN","IBAN"
|
61 |
+
"I agree that the above amount will be debited from my bank account.", "Ich bin damit einverstanden, dass die oben genannten Betrag von meinem Konto abgebucht."
|
62 |
+
"Invalid Iban number.","Ungültige IBAN-Nummer"
|
63 |
+
"POS Payment","POS Zahlung"
|
64 |
+
"Payment","Zahlung"
|
65 |
+
"If you stuck on this page please press the payment button","Wenn Sie auf dieser Seite fest drücken Sie bitte die Taste Zahlungs"
|
66 |
+
"Click here to pay for your purchase", "Klicken Sie hier, um die für Ihren Kauf zahlen"
|
67 |
+
"Please accept the conditions for a SEPA direct debit.", "Bitte akzeptieren Sie die Bedingungen für eine SEPA-Lastschrift."
|
68 |
+
"Shopper Details", "Shopper Details"
|
69 |
+
"Save Card", "Guardar la tarjeta"
|
70 |
+
"There are no saved cards for this account.", "Es sind keine Karten für dieses Konto gespeichert."
|
71 |
+
"This is a new Customer", "Dies ist ein neuer Kunde"
|
72 |
+
"You will be redirected to Adyen app when you place an order.", "Sie werden auf Adyens app für Ihre Bestellung weitergeleitet."
|
app/locale/es_ES/Adyen_Payment.csv
CHANGED
@@ -14,9 +14,10 @@
|
|
14 |
"Shipment cost: %s %s <br />","Costo de envío: %s %s <br />"
|
15 |
"System error, please try again later","Error en el sistema, por favor intente luego"
|
16 |
"System error, please try again later: %s", "Error en el sistema, por favor intente luego: %s"
|
17 |
-
"The payment is REFUSED
|
18 |
"You will be redirected to Adyen in a few seconds.", "Va a ser redireccionado al website de Adyen en unos segundos."
|
19 |
"Your payment failed, Please try again later","Su pago falló"
|
|
|
20 |
"--Please Select--","--Por favor seleccione--"
|
21 |
"Account Number","Número de cuenta"
|
22 |
"Account holder name","Nombre del titular de cuenta"
|
@@ -54,4 +55,18 @@
|
|
54 |
"Remember these details","Recordar estos datos"
|
55 |
"Choose Your Bank","Elija su Banco"
|
56 |
"You chose an invalid bank","El Banco elegido es inválido. "
|
57 |
-
"You have cancelled the order. Please try again"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
14 |
"Shipment cost: %s %s <br />","Costo de envío: %s %s <br />"
|
15 |
"System error, please try again later","Error en el sistema, por favor intente luego"
|
16 |
"System error, please try again later: %s", "Error en el sistema, por favor intente luego: %s"
|
17 |
+
"The payment is REFUSED.", "El pago fue RECHAZADO."
|
18 |
"You will be redirected to Adyen in a few seconds.", "Va a ser redireccionado al website de Adyen en unos segundos."
|
19 |
"Your payment failed, Please try again later","Su pago falló"
|
20 |
+
"Your openinvoice payment failed","Su pago falló"
|
21 |
"--Please Select--","--Por favor seleccione--"
|
22 |
"Account Number","Número de cuenta"
|
23 |
"Account holder name","Nombre del titular de cuenta"
|
55 |
"Remember these details","Recordar estos datos"
|
56 |
"Choose Your Bank","Elija su Banco"
|
57 |
"You chose an invalid bank","El Banco elegido es inválido. "
|
58 |
+
"You have cancelled the order. Please try again"
|
59 |
+
"Bank account holder name","Iban número no válido."
|
60 |
+
"IBAN","IBAN"
|
61 |
+
"I agree that the above amount will be debited from my bank account.", "Estoy de acuerdo en que la cantidad anterior será debitado de mi cuenta bancaria."
|
62 |
+
"Invalid Iban number.","Ungültige IBAN-Nummer"
|
63 |
+
"POS Payment","POS Pago"
|
64 |
+
"Payment","Pago"
|
65 |
+
"If you stuck on this page please press the payment button","Si usted se pegó en esta página, por favor presione el botón de pago"
|
66 |
+
"Click here to pay for your purchase", "Haga clic aquí para pagar por su compra"
|
67 |
+
"Please accept the conditions for a SEPA direct debit.", "Por favor, acepte las condiciones para un débito directo SEPA."
|
68 |
+
"Shopper Details", "Comprador Detalles"
|
69 |
+
"Save Card", "Guardar la tarjeta"
|
70 |
+
"There are no saved cards for this account.", "No hay cartas guardadas para esta cuenta."
|
71 |
+
"This is a new Customer", "Este es un nuevo cliente"
|
72 |
+
"You will be redirected to Adyen app when you place an order.", "Va a ser redireccionado al app de Adyen cuando efectue su compra."
|
app/locale/fr_FR/Adyen_Payment.csv
CHANGED
@@ -14,9 +14,10 @@
|
|
14 |
"Shipment cost: %s %s <br />","Coût de livriaison: %s %s <br />"
|
15 |
"System error, please try again later","Erreur système, merci de réessayer ultérieurement"
|
16 |
"System error, please try again later: %s", "Erreur système, merci de réessayer ultérieurement: %s"
|
17 |
-
"The payment is REFUSED
|
18 |
"You will be redirected to Adyen in a few seconds.", "Vous allez maintenant être redirigé dans quelques secondes."
|
19 |
"Your payment failed, Please try again later","Votre paiement a échoué"
|
|
|
20 |
"--Please Select--","--Merci de sélectionner--"
|
21 |
"Account Number","Numéro de compte"
|
22 |
"Account holder name","Nom du titulaire du compte"
|
@@ -55,3 +56,17 @@
|
|
55 |
"Choose Your Bank","Choisir votre banque"
|
56 |
"You chose an invalid bank","Vous avez choisi une banque invalide"
|
57 |
"You have cancelled the order. Please try again"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
14 |
"Shipment cost: %s %s <br />","Coût de livriaison: %s %s <br />"
|
15 |
"System error, please try again later","Erreur système, merci de réessayer ultérieurement"
|
16 |
"System error, please try again later: %s", "Erreur système, merci de réessayer ultérieurement: %s"
|
17 |
+
"The payment is REFUSED.", "Le paiement a été refusé."
|
18 |
"You will be redirected to Adyen in a few seconds.", "Vous allez maintenant être redirigé dans quelques secondes."
|
19 |
"Your payment failed, Please try again later","Votre paiement a échoué"
|
20 |
+
"Your openinvoice payment failed","Votre paiement a échoué"
|
21 |
"--Please Select--","--Merci de sélectionner--"
|
22 |
"Account Number","Numéro de compte"
|
23 |
"Account holder name","Nom du titulaire du compte"
|
56 |
"Choose Your Bank","Choisir votre banque"
|
57 |
"You chose an invalid bank","Vous avez choisi une banque invalide"
|
58 |
"You have cancelled the order. Please try again"
|
59 |
+
"Bank account holder name","Nom du titulaire du compte bancaire"
|
60 |
+
"IBAN","IBAN"
|
61 |
+
"I agree that the above amount will be debited from my bank account.", "Je suis d'accord que le montant ci-dessus sera débité de mon compte bancaire."
|
62 |
+
"Invalid Iban number.","Numéro IBAN incorrect."
|
63 |
+
"POS Payment","POS paiement"
|
64 |
+
"Payment","Paiement"
|
65 |
+
"If you stuck on this page please press the payment button","Si vous coincé sur cette page s'il vous plaît appuyez sur le bouton de paiement"
|
66 |
+
"Click here to pay for your purchase", "Cliquez ici pour payer votre achat"
|
67 |
+
"Please accept the conditions for a SEPA direct debit.", "S'il vous plaît accepter les conditions d'un prélèvement SEPA."
|
68 |
+
"Shopper Details", "Shopper Détails"
|
69 |
+
"Save Card", "Sauvegarder Card"
|
70 |
+
"There are no saved cards for this account.", "Il n'y a pas de cartes enregistrées pour ce compte."
|
71 |
+
"This is a new Customer", "Ceci est un nouveau client"
|
72 |
+
"You will be redirected to Adyen app when you place an order.", "Vous allez être redirigé vers le app d'Adyen au passage de votre commande."
|
app/locale/nl_NL/Adyen_Payment.csv
CHANGED
@@ -14,7 +14,7 @@
|
|
14 |
"Shipment cost: %s %s <br />","Verzendkosten: %s %s <br />"
|
15 |
"System error, please try again later","Systeem error. Probeer het later nog eens."
|
16 |
"System error, please try again later: %s", "Systeem error. Probeer het later nog eens: %s"
|
17 |
-
"The payment is REFUSED
|
18 |
"The transaction is not permitted.", "De transactie is niet toegestaan"
|
19 |
"Declined due to the Card Security Code(CVC) being incorrect. Please check your CVC code!", "De betaling is afgewezen in verband met een verkeerde Kaart verificatie nummer(CVC). Controleer of u de juiste CVC nummer hebt ingevoerd!"
|
20 |
"The card is restricted.", "De kaart is niet geschikt."
|
@@ -60,6 +60,17 @@
|
|
60 |
"Female","Vrouw"
|
61 |
"You have cancelled the order. Please try again","U heeft de betaling geannuleerd, probeer het nogmaals."
|
62 |
"Your payment failed, Please try again later","Deze betaalmethode is niet beschikbaar voor u op het moment. Kies voor andere betaalmethode om de bestelling af te ronden"
|
63 |
-
"
|
|
|
64 |
"IBAN","IBAN"
|
65 |
"Invalid Iban number.","Ongeldig IBAN nummer"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
14 |
"Shipment cost: %s %s <br />","Verzendkosten: %s %s <br />"
|
15 |
"System error, please try again later","Systeem error. Probeer het later nog eens."
|
16 |
"System error, please try again later: %s", "Systeem error. Probeer het later nog eens: %s"
|
17 |
+
"The payment is REFUSED.", "Betaalmethode is AFGEWEZEN."
|
18 |
"The transaction is not permitted.", "De transactie is niet toegestaan"
|
19 |
"Declined due to the Card Security Code(CVC) being incorrect. Please check your CVC code!", "De betaling is afgewezen in verband met een verkeerde Kaart verificatie nummer(CVC). Controleer of u de juiste CVC nummer hebt ingevoerd!"
|
20 |
"The card is restricted.", "De kaart is niet geschikt."
|
60 |
"Female","Vrouw"
|
61 |
"You have cancelled the order. Please try again","U heeft de betaling geannuleerd, probeer het nogmaals."
|
62 |
"Your payment failed, Please try again later","Deze betaalmethode is niet beschikbaar voor u op het moment. Kies voor andere betaalmethode om de bestelling af te ronden"
|
63 |
+
"Your openinvoice payment failed","Deze betaalmethode is momenteel niet beschikbaar voor u. Kies voor een andere betaalmethode of neem contact op met de helpdesk."
|
64 |
+
"Bank account holder name","Naam rekeninghouder"
|
65 |
"IBAN","IBAN"
|
66 |
"Invalid Iban number.","Ongeldig IBAN nummer"
|
67 |
+
"POS Payment","POS Betaling"
|
68 |
+
"Payment","Betalen"
|
69 |
+
"If you stuck on this page please press the payment button","Om de bestelling te voltooien druk op 'Betalen'"
|
70 |
+
"Click here to pay for your purchase", "Klik hier om te betalen"
|
71 |
+
"Please accept the conditions for a SEPA direct debit.", "Accepteer de condities voor de SEPA direct debit."
|
72 |
+
"Shopper Details", "Shopper Details"
|
73 |
+
"Save Card", "Opgeslagen kaarten"
|
74 |
+
"There are no saved cards for this account.", "Er zijn geen opgelsagen kaarten voor dit account"
|
75 |
+
"This is a new Customer", "Dit is een nieuwe klant"
|
76 |
+
"You will be redirected to Adyen app when you place an order.", "U wordt doorgestuurd naar de Adyen app bij het plaatsen van uw bestelling."
|
app/locale/pt_BR/Adyen_Payment.csv
ADDED
@@ -0,0 +1,71 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
"You will be redirected to Adyen website when you place an order.", "Você será redirecionado para o site da Adyen, quando efetuar a compra."
|
2 |
+
"%s ( Qty: %s ) (Price: %s %s ) <br />","%s ( Qtd: %s ) (Preço: %s %s ) <br />"
|
3 |
+
"Adyen %s <br /> authResult: %s <br /> pspReference: %s"
|
4 |
+
"Adyen %s <br /> eventCode: %s <br /> pspReference: %s <br /> success: %s"
|
5 |
+
"Adyen response(s): %s <br /> pspReference: %s", "Resposta(s) da Adyen: %s <br /> pspReference: %s"
|
6 |
+
"Authorize Only","Somente Autorizar"
|
7 |
+
"Authorize and Capture","Autorizar e Capturar"
|
8 |
+
"Can not connect payment service. Please try again later.","Não foi possível conectar ao serviço de pagamento. Tente novamente."
|
9 |
+
"Capture Mode set to Manual","Modo de Captura ajustado para Manual"
|
10 |
+
"Customer was redirected to Adyen.", "Cliente redirecionado para a Adyen"
|
11 |
+
"Order can not Hold","Não é possível continuar a compra"
|
12 |
+
"Order can not be canceled", "A compra não pode ser cancelada"
|
13 |
+
"Order rows: <br />","Detalhes da compra: <br />"
|
14 |
+
"Shipment cost: %s %s <br />","Custo de envio: %s %s <br />"
|
15 |
+
"System error, please try again later","Erro no sistema. Por favor, tente novamente mais tarde"
|
16 |
+
"System error, please try again later: %s", "Erro no sistema. Por favor, tente novamente mais tarde: %s"
|
17 |
+
"The payment is REFUSED.", "O Pagamento foi RECUSADO."
|
18 |
+
"You will be redirected to Adyen in a few seconds.", "Você será redirecionado para a Adyen em alguns segundos."
|
19 |
+
"Your payment failed, Please try again later","Sua tentativa de pagamento falhou. Por favor, tente novamente."
|
20 |
+
"--Please Select--","--Por favor selecione--"
|
21 |
+
"Account Number","Número da conta"
|
22 |
+
"Account holder name","Nome do titular da conta"
|
23 |
+
"Account holder: %s","Titular da conta: %s"
|
24 |
+
"Account number: xxx%s","Número da conta: xxx%s"
|
25 |
+
"Bank Location","Endereço do Banco"
|
26 |
+
"Bank Location (City)","Localização do Banco (Cidade)"
|
27 |
+
"Bank Location ID","Número da Agência"
|
28 |
+
"Bank Name","Nome do Banco"
|
29 |
+
"Bank code: %s", "Código do Banco: %s"
|
30 |
+
"Bank name: %s","Nome do banco: %s"
|
31 |
+
"Card Verification Number","Código de Verificação do Cartão"
|
32 |
+
"Credit Card Number","Número do Cartão"
|
33 |
+
"Credit Card Number: xxxx-%s","Número do Cartão: xxxx-%s"
|
34 |
+
"Credit Card Type", "Tipo de Cartão"
|
35 |
+
"Credit Card Type: %s", "Tipo de Cartão: %s"
|
36 |
+
"Expiration Date","Data de Vencimento"
|
37 |
+
"Expiration Date: %s/%s","Data de Vencimento: %s/%s"
|
38 |
+
"Name on Card","Nome do titular (como está gravado no Cartão)"
|
39 |
+
"Name on the Card: %s","Nome do titular (como está gravado no Cartão): %s"
|
40 |
+
"Payment Method: %s","Método de Pagamento: %s"
|
41 |
+
"Submitting payment information...","Enviando informação de pagamento..."
|
42 |
+
"What is this?","O que é isso?"
|
43 |
+
"Order email sent to shopper.","O email de compra foi enviado para o cliente. "
|
44 |
+
"The payment is PENDING by Adyen.","O pagamento está PENDENTE pela Adyen."
|
45 |
+
"The payment is AUTHORIZED by Adyen.","O pagamento foi AUTORIZADO pela Adyen."
|
46 |
+
"There has an error occurred with your Adyen payment.","Houve um erro com seu pagamento Adyen."
|
47 |
+
"There was an error with your payment.","Houve um erro com seu pagamento."
|
48 |
+
"You will be redirected to Adyen website when you place an order.","Você será redirecionado ao site da Ayen quando realizar a compra."
|
49 |
+
"Your payment is cancelled.","Seu pagamento foi cancelado."
|
50 |
+
"Your payment is CANCELLED","Seu pagamento foi CANCELADO."
|
51 |
+
"Your payment is pending.","Seu pagamento encontra-se pendente."
|
52 |
+
"Your payment is refused.","Seu pagamento foi recusado."
|
53 |
+
"Your payment is authorized.","Seu pagamento foi autorizado."
|
54 |
+
"Remember these details","Armazenar estes dados"
|
55 |
+
"Choose Your Bank","Escolha seu banco"
|
56 |
+
"You chose an invalid bank","Você escolheu um banco inválido"
|
57 |
+
"You have cancelled the order. Please try again", "Você cancelou a compra. Por favor, tente novamente."
|
58 |
+
"Bank account holder name","Banco nome do titular da conta"
|
59 |
+
"IBAN","IBAN"
|
60 |
+
"I agree that the above amount will be debited from my bank account.", "Concordo que o montante acima referido será debitado da minha conta bancária."
|
61 |
+
"Invalid Iban number.","Iban número inválido."
|
62 |
+
"POS Payment","O pagamento POS"
|
63 |
+
"Payment","Pagamento"
|
64 |
+
"If you stuck on this page please press the payment button","Se você preso nesta página, por favor pressione o botão de pagamento"
|
65 |
+
"Click here to pay for your purchase", "Clique aqui para pagar por sua compra"
|
66 |
+
"Please accept the conditions for a SEPA direct debit.", "Por favor, aceite as condições para um débito directo SEPA."
|
67 |
+
"Shopper Details", "Shopper Detalhes"
|
68 |
+
"Save Card", "Salvar cartão"
|
69 |
+
"There are no saved cards for this account.", "Não há cartas guardadas para essa conta."
|
70 |
+
"This is a new Customer", "Este é um novo cliente"
|
71 |
+
"You will be redirected to Adyen app when you place an order.", "Você será redirecionado ao app da Ayen quando realizar a compra."
|
package.xml
CHANGED
@@ -1,21 +1,21 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Adyen_Payment</name>
|
4 |
-
<version>2.
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://opensource.org/licenses/OSL-3.0">Open Software License (OSL-3.0)</license>
|
7 |
<channel>community</channel>
|
8 |
<extends/>
|
9 |
<summary>Magento Plugin for Payment service provider Adyen</summary>
|
10 |
<description>Magento Plugin for Payment Service Provider Adyen. The plugin supports the Magento Community and Enterprise edition. Inhouse support on magento@adyen.com as well available through GitHub on https://github.com/adyenpayments/magento</description>
|
11 |
-
<notes>Adyen Payment 2.
|
12 |

|
13 |
See release note: 
|
14 |
-
https://github.com/Adyen/magento/releases/tag/2.
|
15 |
<authors><author><name>Adyen</name><user>adyen</user><email>magento@adyen.com</email></author></authors>
|
16 |
-
<date>
|
17 |
-
<time>
|
18 |
-
<contents><target name="magecommunity"><dir name="Adyen"><dir name="Payment"><dir name="Block"><dir name="Adminhtml"><dir name="Adyen"><dir name="Event"><dir name="Queue"><file name="Grid.php" hash="8638667d1d6a85f72341a839d00bcc19"/></dir><file name="Queue.php" hash="d9d4d4113656ba4d6c97cf8e4c52b903"/></dir></dir><dir name="Form"><dir name="Field"><file name="Installments.php" hash="e73b36349ac2ac5f9687cd5ce5958e53"/></dir></dir><dir name="Sales"><dir name="Billing"><dir name="Agreement"><file name="Grid.php" hash="c2e77faf071a3574af94ff68cf3d1504"/></dir></dir><dir name="Order"><dir name="Creditmemo"><file name="Totals.php" hash="1460f2048e15c0d08405c00e68653a47"/></dir><dir name="Filter"><file name="Adyen.php" hash="f0428953d0ffb335d0d4a1362500ec2e"/></dir><dir name="Invoice"><file name="Totals.php" hash="40f4258c2e79e25bd38abb8ed7a0a778"/></dir><dir name="Renderer"><file name="Adyen.php" hash="187f435758aaf4d484c7c7a6ed1678b5"/></dir><file name="Totals.php" hash="e56db3fa837b78c3fa79851a82bac575"/></dir></dir><dir name="System"><dir name="Config"><dir name="Fieldset"><file name="Expanded.php" hash="f66a1b3d4e0694536fc218c88119ef9a"/><file name="Fieldset.php" hash="d7c4f30338386632f7a83ae489d45a11"/><file name="Gettingstarted.php" hash="de64d67420b16a2d6b3df211404c64ce"/><file name="Method.php" hash="6fe238b70c25c1f8f4ba6f12a53962b9"/></dir><file name="HppPaymentMethodFee.php" hash="4d27e8d3b7f694c599ec2800f093d326"/><file name="TestWebserverConfiguration.php" hash="077e2befacb92e0eb9e5344fd3e0c4a5"/></dir></dir><file name="Version.php" hash="8ae6d538b9616499eb898579bef4abaa"/></dir><dir name="Checkout"><file name="Success.php" hash="b9df579840feb9a3579d563daa61425b"/></dir><file name="Failure.php" hash="ead96fee55fba2cbb5044f09566e85e4"/><dir name="Form"><file name="Abstract.php" hash="0e0bfa5b88007c733d34aee307e0163d"/><file name="Boleto.php" hash="a38cfc7a4f87f487010ba17e3f56cd6c"/><file name="Cash.php" hash="9e002a75111dced6b0faee374676ed85"/><file name="Cc.php" hash="fbe7f107e5502db3298fbd65658d5cf8"/><file name="Elv.php" hash="17869926d968d14f79b5b8a057332634"/><file name="Hpp.php" hash="c3826522312ceb2c350e3a4dc6bb44f7"/><file name="Ideal.php" hash="1c8eff8a808d286b222788c8a2660683"/><file name="Oneclick.php" hash="5ebb577197b60a530098d626d5db15ae"/><file name="Openinvoice.php" hash="f6a93b41cc84a3c69449850cdcde37c7"/><file name="PayByMail.php" hash="251095b5bbe53c4453980afd198e3c10"/><file name="Pos.php" hash="11dff1727f935f2a4871a59e4a5bf9eb"/><file name="Sepa.php" hash="0588eedb4847894302e04b2425ab86ec"/></dir><file name="Form.php" hash="77d0589a32cb816dcdc6df16c98f2cd6"/><dir name="Info"><file name="Boleto.php" hash="6068acbb3d3dec90a797390871150956"/><file name="Cash.php" hash="41a920940198d51029ad9cad8f6b6b00"/><file name="Cc.php" hash="11dfe3d43bb6a8d89bb1746c8c2f6415"/><file name="Elv.php" hash="09a10412250e2bed303a189cfb216254"/><file name="Hpp.php" hash="bce3945267dac13f4fd9c9fd1400d11c"/><file name="Oneclick.php" hash="b0fb295f9a0572f92f0a1dc7108b9e8a"/><file name="Openinvoice.php" hash="1e99e4ab3ef75a9fa27626bd946b0407"/><file name="PayByMail.php" hash="3fa120141efed3f402aacf75f80432b4"/><file name="Pos.php" hash="8a6be4f35d43dc7791b9741cfb05b8a5"/><file name="Sepa.php" hash="6ede5edccfa2ca2619edac446edb0bf2"/></dir><file name="PosExpressCheckout.php" hash="ee5348fb15ead9b2adb7c1ebd8b1b4df"/><file name="Redirect.php" hash="e17239447f47ada37fab15ff71141703"/><dir name="Sales"><dir name="Order"><file name="Totals.php" hash="0a566f422191f5e365cc7a1811c00c20"/></dir></dir><file name="ScanProduct.php" hash="31c08b14b9e17a8f065b7d553470d518"/></dir><file name="Exception.php" hash="30fcde625fda56f7475e815d6603a6d2"/><dir name="Helper"><dir name="Billing"><file name="Agreement.php" hash="4df6f2936380229b80c97c70e4140d24"/></dir><file name="Data.php" hash="2b2d2ad2bd3f7bbaa598b78ccc5abecf"/><file name="Installments.php" hash="6bfc01af88a457be9f444aade1fd5e1d"/><dir name="Payment"><file name="Data.php" hash="a8145365557c486c73100740d6218414"/></dir><file name="Pci.php" hash="36f805e1f222973f48bb68623664e716"/></dir><dir name="Model"><dir name="Adyen"><file name="Abstract.php" hash="50793e7b14fb34b84422403f91ee5c84"/><file name="Boleto.php" hash="3aeb9b3ef94b2dc22b62165fc94411e8"/><file name="Cash.php" hash="0ac9af55b6d62b9dcead5398b2916e44"/><file name="Cc.php" hash="3aee12b4dec11d2139473844988699a7"/><dir name="Data"><file name="Abstract.php" hash="90c19c5a7d79c1a53f85b77728ffc318"/><file name="AdditionalData.php" hash="e4d038a60ac548e0938f75a0452d5717"/><file name="AdditionalDataKVPair.php" hash="cc2e0ba6733ef5139f44ba7c9af303dc"/><file name="Address.php" hash="1ebe7211a9ada35e346d50a43e4d1045"/><file name="Amount.php" hash="73540706cac2c2eef0252615d6200511"/><file name="BankAccount.php" hash="89124b1a311269d878e88acd56391afc"/><file name="BillingAddress.php" hash="05d2568acb382d242635b7fbfef26afe"/><file name="BrowserInfo.php" hash="bd1cca3cc27aea7fad85661c7132e2cd"/><file name="Card.php" hash="ea384e9c2032ba7ad5925edfb434625f"/><file name="Classmap.php" hash="38ab9bfbfb1585852380c0551a35b9ec"/><file name="DeliveryAddress.php" hash="8a97c0555842c9f8108a202125e48724"/><file name="Elv.php" hash="6608688d03b047387a2b28be10c47b87"/><file name="Installments.php" hash="ab285677d94614d631b927b427268eff"/><file name="InvoiceLine.php" hash="2013af2bbae2b07df4db34b4d8565796"/><file name="InvoiceRow.php" hash="caa2f530ea8a2100fee55f9d16fa8235"/><file name="ModificationRequest.php" hash="14240a6cbc31ffed7ea7e052e20aed57"/><file name="ModificationResult.php" hash="eec37eba3849baa4ad52b194e31ac362"/><file name="NotificationClassmap.php" hash="31166e4ef9ea728c107f5ee501d67fc5"/><file name="NotificationRequest.php" hash="4647bfc558308e8f7795ae97fbf2c066"/><file name="NotificationRequestItem.php" hash="ef0794de69076f4accc5035b3f659808"/><file name="OpenInvoiceDetailResult.php" hash="68391a7b4b2a460967ec0018a2300396"/><file name="PaymentRequest.php" hash="ab45d534cd1c2aa429d27d6ff2b1f13c"/><file name="PaymentRequest3d.php" hash="9db425c9bb6cf15498995afeb779a615"/><file name="Recurring.php" hash="ae069455222f0315c2eaee6cdf84f461"/><file name="RecurringRequest.php" hash="aed77050f296df4f48c88038ef3ac547"/><dir name="Server"><file name="Notification.php" hash="51ed88aa2c2035e4cb7b4e992e7c8e4a"/><file name="Openinvoice.php" hash="d94166e3c8337e213061655ab7e48e68"/></dir><file name="ShopperName.php" hash="91bfea9ade01d29fa9053de87ce01560"/></dir><file name="Debug.php" hash="8044ccae24d83db38d9430cf125ada83"/><file name="Dummy.php" hash="a72ccc6e8c5268cf6786db289de4e3d9"/><file name="Elv.php" hash="4dec774fe32ba88fe0c691f813c2a09e"/><file name="Hpp.php" hash="a723e62f5349d99746f201ab2657c75a"/><file name="Ideal.php" hash="ef84f22f3008da93f9e8b9c1f3ac1648"/><file name="Oneclick.php" hash="97d897a99351a6e8ec832ca58a7c040a"/><file name="Openinvoice.php" hash="0323e497f44454de9d166a8090a68eb2"/><file name="PayByMail.php" hash="e861fa73b1f5f018430352d09e6e98c7"/><file name="Pos.php" hash="84b98b86d5ba76f85217a75dd98afcc4"/><file name="Sepa.php" hash="660d590f152171076194f86ab9e9626a"/><file name="Shared.php" hash="7f3fe961a7107b6fb5625a9efe7854fd"/><file name=".DS_Store" hash="d179556f904a5601ccd01a54743c155f"/></dir><file name="Api.php" hash="f739379a164c1a4e0c0553423ebeb295"/><file name="Authenticate.php" hash="ed5dcfae45132082a875f2ea1089b7bd"/><dir name="Billing"><dir name="Agreement"><file name="Observer.php" hash="f301f1fc3cab902eb16d546022615bdd"/></dir><file name="Agreement.php" hash="ef5f57b680c37f767a21cbb5df4aee5b"/></dir><file name="Cronjob.php" hash="3fa8291eb3f98a1ab48879fa467686b0"/><dir name="Event"><file name="Queue.php" hash="3f17b99a54cf5d910c3320e7a38d0ea3"/></dir><file name="Event.php" hash="632bfefbb6c2edab79d2be1b082a69bf"/><file name="GetPosOrderStatus.php" hash="682e47f436377b1f3e41f0092051bfc6"/><file name="Observer.php" hash="9408e54c65f82d06c4a9c1161f75ecd0"/><file name="Process.php" hash="fdbbfc7b61222edefcf81af81a12d0f4"/><file name="ProcessNotification.php" hash="d2dab6a395f3a388e47c627a38ffaf35"/><file name="ProcessPosResult.php" hash="6630a1ed1d4a81996a7f3714d6ee6990"/><dir name="Resource"><dir name="Adyen"><dir name="Debug"><file name="Collection.php" hash="17ac8dbcf67d0df518ef2d94c3206fd5"/></dir><file name="Debug.php" hash="d1de3e55152ab586971d08950ced8faa"/><dir name="Event"><file name="Collection.php" hash="33b8b85c9c7b3d2428e9b23a9e7e0c72"/></dir><file name="Event.php" hash="4f398e0de5b8a2a9ec5f87480e13da67"/></dir><dir name="Billing"><dir name="Agreement"><file name="Collection.php" hash="d5d31eed3999e2775b3cc861cd3a8e45"/></dir><file name="Agreement.php" hash="5a269b1255f103c7b81621ee3d39fa97"/></dir><dir name="Event"><dir name="Queue"><file name="Collection.php" hash="9dffd9015dfa7cd8498e5961f9ab66f3"/></dir><file name="Queue.php" hash="b8a4c3ed5adaaacf8b6192d05937e390"/></dir><file name="Order.php" hash="32950fec5760e2e7f167af451e313129"/><file name="Setup.php" hash="4e2258146a321cad436984ca223a9e5b"/></dir><dir name="Sales"><dir name="Quote"><dir name="Address"><dir name="Total"><file name="PaymentFee.php" hash="b0d4cb5adbff8e881bb28df7cd486b37"/><file name="PaymentInstallmentFee.php" hash="da284541372973799ea956771799cb72"/></dir></dir></dir></dir><dir name="Source"><file name="BoletoType.php" hash="1a31476c4ebfdb6b16a1dd3a26015fb1"/><file name="CancelModes.php" hash="b18c30b103cdce97af41e63ef0a25a92"/><file name="CancelRedirect.php" hash="f71a598d56641cc5550812abd7f3d9b7"/><file name="CaptureModes.php" hash="1ad7052016b75000de9950d55edb235d"/><file name="CcType.php" hash="a27d98867f6c9d9245c242919a869ed6"/><file name="DemoModes.php" hash="4e3ce8113a9c78f6403861f5661f585e"/><file name="OpeninvoiceType.php" hash="c39389388338dfe0b85b10a1e9b828cb"/><file name="PayPalCaptureModes.php" hash="20da86d8d4fd60abe2b3a307e12ada24"/><file name="PaymentAction.php" hash="23224178cf58e55c308234036f629bf7"/><file name="PaymentRoutines.php" hash="7aa5525e67554ad35226cf1aaa802c49"/><file name="RecurringPaymentType.php" hash="3b137f547356d8336c3e12fb936d1a86"/><file name="RecurringType.php" hash="2a3c60c4546d9c02c842a9ea0a5ade26"/><file name="Rendermode.php" hash="66be793f4d23896dbe194ec205f51718"/><file name="SepaFlow.php" hash="8a3ce7224b1878c7fb674114b688eb03"/><dir name="Status"><file name="Complete.php" hash="1580706a7d28010ed5acc678f549df73"/><file name="Pending.php" hash="53e624a2a6b76b4e6dee7f4eece245b1"/><file name="Refund.php" hash="632e0fc0b625e85716347d21b0f585be"/></dir><file name="VisibleType.php" hash="ecc88ad246d8e52316d53f879d615803"/></dir><dir name="System"><dir name="Config"><dir name="Backend"><file name="Installments.php" hash="6c3b60719edb83eaaad1515514dab620"/></dir></dir></dir><dir name="Total"><dir name="PaymentFee"><file name="Creditmemo.php" hash="738f7b84586d51cd875011d6b31dfd3e"/><file name="Invoice.php" hash="8aa607b99f709a5eee9b76675e2d5ada"/></dir><dir name="PaymentInstallmentFee"><file name="Creditmemo.php" hash="b40551c179c19ccea7be11a5edf6be4c"/><file name="Invoice.php" hash="5f4563813511aff2eafb98cf4943d817"/></dir></dir><file name="ValidateResultUrl.php" hash="d9518d726eb205183b1779a75e5e6618"/><file name=".DS_Store" hash="286b9ee8ade7883fb60d91c7d0c64900"/></dir><dir name="controllers"><dir name="Adminhtml"><dir name="Adyen"><dir name="Event"><file name="QueueController.php" hash="6000a2a39108fc5be4ce3253b495c656"/></dir></dir><file name="ExportAdyenSettingsController.php" hash="dd6a859865967b0b462be96a0a2295fd"/><file name="ValidateWebserverSettingsController.php" hash="d121f82efd3ddb01e9f979e12658cb65"/></dir><file name="CheckoutCashController.php" hash="33c9f26d8fa0260ec9daccea3638c609"/><file name="CheckoutPosController.php" hash="59a14c7e7e916ab79304551072b574bb"/><file name="GetInstallmentsController.php" hash="e8401d9b5dd01efc8f6ea535087963bd"/><file name="ProcessController.php" hash="4cfa4e11ca294886562ff59b68f8c9c5"/><file name="UpdateCartController.php" hash="8c41af95bb64352f7dd4024f9d210e77"/></dir><dir name="data"><dir name="adyen_setup"><file name="data-upgrade-2.1.2.3-2.1.2.4.php" hash="8262bf4038ba435fe15bd08c36814936"/></dir></dir><dir name="etc"><file name="Notification.wsdl" hash="cbba67067d372790e91225b4049c7e0d"/><file name="Payment.wsdl" hash="4190412f599a3eac827d7ed0931754da"/><file name="adminhtml.xml" hash="77f449af89755295ba515ea52dfda649"/><file name="config.xml" hash="ad1f5bdc8cffc2d4ba2009f940f85ab7"/><file name="system.xml" hash="c898e9bf12f646c136abe6235b34eb1c"/></dir><dir name="sql"><dir name="adyen_setup"><file name="mysql4-install-0.0.1.php" hash="668e04511f498a97c29b4386055cb78e"/><file name="mysql4-upgrade-0.0.1-0.0.2.php" hash="ef6d899eac5abc4d359074498168aef7"/><file name="mysql4-upgrade-0.0.7-0.0.8.php" hash="b4bb110ba7f92ae542c39471d3f7198f"/><file name="mysql4-upgrade-0.0.8-0.0.9.php" hash="c72653047e7c2ea03f8b8c4bd095389a"/><file name="mysql4-upgrade-0.1.0.3-0.1.0.4.php" hash="e167964ff1156ff52b48cef5f45c0cd2"/><file name="mysql4-upgrade-0.1.0.8-0.1.0.9.php" hash="5fbf7b5fc6389115c5a3cf33d091227a"/><file name="mysql4-upgrade-0.1.0.9-0.1.0.10.php" hash="4eb123db99f8e42892cc8ea16a4ef54e"/><file name="mysql4-upgrade-1.0.0.3-1.0.0.7.php" hash="5fb0644cd6e55968f8922da5bffb23de"/><file name="mysql4-upgrade-2.0.3-2.1.0.php" hash="7f1f5240dbdd1fb37a23e16e41f5b477"/><file name="mysql4-upgrade-2.1.1-2.1.2.1.php" hash="5eea3604936ce4a041fccc9f0e0d159d"/><file name="mysql4-upgrade-2.1.2.1-2.1.2.2.php" hash="0cb4fa513156161c01b906ad3ad322ba"/><file name="mysql4-upgrade-2.1.2.2-2.1.2.3.php" hash="4c681a679ab8afa8fc145d0ecf242278"/><file name="mysql4-upgrade-2.2.0-2.2.0.1.php" hash="993470ec16fe56b3cd0024f3fb718e9b"/><file name="mysql4-upgrade-2.2.2-2.2.2.1.php" hash="c2353636858c03e61e782c7d809bbab5"/><file name="mysql4-upgrade-2.3.0-2.3.0.1.php" hash="292d256967fceedea3250c8084839ec1"/><file name="mysql4-upgrade-2.3.1.1-2.3.1.2.php" hash="1301a2d3d64855172579eb7375e17eed"/></dir></dir><file name=".DS_Store" hash="282419beef00918e7192da78057ace9d"/></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="adyen.xml" hash="fdc251a23de44368548748d25b86d345"/></dir><dir name="template"><dir name="adyen"><dir name="form"><file name="boleto.phtml" hash="83c7bc35d037f426aa75c0719e8adb86"/><file name="cc.phtml" hash="6dc0219c76cd9849940247bcfce8cd99"/><file name="elv.phtml" hash="4d370d2d737f0a42ebcb33e7151ecee6"/><file name="hpp.phtml" hash="37215ae3782ea83b05afa6fef361e3bf"/><file name="oneclick.phtml" hash="83b4dde8e30b8bcca800b8f9a2995eca"/><file name="openinvoice.phtml" hash="33127af4713430e153cccbe8684fab13"/><file name="pos.phtml" hash="c07c11d348fced7d889ded4fc77e3363"/><file name="sepa.phtml" hash="99386663d876a9bb2a4d71aec1fce74b"/></dir><dir name="info"><file name="boleto.phtml" hash="78f08b7f59ff049f189d61758b7abced"/><file name="cc.phtml" hash="608567b02456894e5b1dbaa2484a9380"/><file name="elv.phtml" hash="bda2d4870da5a283d9561b66b76e8114"/><file name="hpp.phtml" hash="ee5fd9ccc1b4f7fd1f575d0d53d87c8f"/><file name="openinvoice.phtml" hash="86fecfa81c87af7464f38f43c7db9be6"/><file name="pay_by_mail.phtml" hash="617bf20851918b200a4a980a68908162"/><file name="pos.phtml" hash="dfef416dc70f315bf9904dafce4f19d6"/><file name="sepa.phtml" hash="ca2a1b25f4652e9411ae6ff8b2a0f04e"/></dir><dir name="pdf"><file name="boleto.phtml" hash="50853749a944124f076d129fd5e6cfa9"/><file name="cc.phtml" hash="ecc91b3df7776b2c2a6dc4a52d1892d2"/><file name="elv.phtml" hash="50853749a944124f076d129fd5e6cfa9"/><file name="hpp.phtml" hash="4cdb4f7c88b6556fc847c21d5d4b7ffb"/><file name="openinvoice.phtml" hash="742b87babbb612032d68a8e79d31e89c"/><file name="pos.phtml" hash="a3dc27a6607b4978c93b21d945661e5c"/></dir><dir name="system"><dir name="config"><file name="test_webserver_configuration.phtml" hash="37a164e5cd04d1acf1788530464c2f0d"/></dir></dir><file name=".DS_Store" hash="194577a7e20bdcc7afbb718f502c134c"/></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="template"><dir name="adyen"><dir name="checkout"><file name="success.phtml" hash="4c06b168acd8971e20a7c8d1205c264b"/><file name=".DS_Store" hash="21ecd78ea5715d7392b2d8a533c6630a"/></dir><dir name="form"><file name="boleto.phtml" hash="309a0152cd5219e2c22da4270307222c"/><file name="cc.phtml" hash="280e00a99e4f624802b783be55b2f16a"/><file name="elv.phtml" hash="789610e3d1f8973f6aecb4ef119a59c9"/><file name="hpp.phtml" hash="5e2f2ed4fb91dec2d62a0311a21415e0"/><file name="ideal.phtml" hash="d693c356f0e7f8eca20ac086c665a135"/><file name="oneclick.phtml" hash="5a41066b1452fdc7266b0ef6224c0ae3"/><file name="openinvoice.phtml" hash="659c5385af90f70f910d1f3605a0613b"/><file name="pos.phtml" hash="07cbc4b9dbbe63849599dbfd4339cd44"/><file name="sepa.phtml" hash="ff9e6c312e7620d31c6a657f31a16679"/></dir><dir name="info"><file name="boleto.phtml" hash="c526f9c4badab3afaa771872bb4687f1"/><file name="cc.phtml" hash="c540dddb22ca1c9f301c445291d82d16"/><file name="elv.phtml" hash="8b850e97ea84e1de5ead4ec487c4356f"/><file name="hpp.phtml" hash="8999dfee0c638f44b5010779b8bbf711"/><file name="openinvoice.phtml" hash="2bcd711e1255923d53f353819e19529e"/><file name="pay_by_mail.phtml" hash="c09d9f774eeefeb465cc3f425bf7d54e"/><file name="pos.phtml" hash="9b917920aa1cc77c9e8c3a26943b1335"/><file name="sepa.phtml" hash="c886a3d9923c3ade6ca5056f18c1b856"/></dir><dir name="payment"><file name="payment_method_label.phtml" hash="256b943044431874fbaea43760544fcc"/></dir><file name="pos_express_checkout.phtml" hash="9dbbc2237dfda2c735bfb853a5f20efd"/><file name="scan_product.phtml" hash="52debaeda87ba10822de566380c06c56"/><file name=".DS_Store" hash="ab6d0ae72b40033c9fed5850d3f5d499"/></dir></dir><dir name="layout"><file name="adyen.xml" hash="89f26f2f2778d7e73ab597207bc59831"/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Adyen_Payment.xml" hash="e4d297a9b401c4548acb47aea1ae41d9"/></dir></target><target name="magelocale"><dir><dir name="de_DE"><file name="Adyen_Payment.csv" hash="088e161df1b131f18fe37f99c84a6a76"/></dir><dir name="es_ES"><file name="Adyen_Payment.csv" hash="e43250c22a32cc8c27256cebb8f04c10"/></dir><dir name="fr_FR"><file name="Adyen_Payment.csv" hash="90f125a87e554a42546ab268b58df265"/></dir><dir name="nl_NL"><file name="Adyen_Payment.csv" hash="f60acbb4dab153dc69eece693db58274"/></dir></dir></target><target name="mageskin"><dir name="frontend"><dir name="base"><dir name="default"><dir name="images"><dir name="adyen"><file name="ABNAMRO.png" hash="a621e7f4cf1c3340ac5147fef5544bfe"/><file name="ABNAMRO.xcf" hash="eac24c953dcf05d40ce928ccab2af90f"/><file name="ASNBANK.png" hash="13034bc0836590cfb0ec7b6c3076e435"/><file name="FORTIS.png" hash="3b68fa26a90f8cd44e2f8dfcb5f72fe8"/><file name="FRIESLANDBANK.png" hash="c1388a9b8a170260b0b72da9b2cd2dbf"/><file name="ING.png" hash="b08f829cf67322875ca12d5fc36ac191"/><file name="KNAB.png" hash="4df678f84bdf11db9b75d1e539a0367c"/><file name="POSTBANK.png" hash="ea0ffd9d3e9717fe0bdc160d8cd92482"/><file name="RABOBANK.png" hash="f09418ebbd0d6daf21786d5bde93e856"/><file name="REGIOBANK.png" hash="0c3a984ce817e4d3ec98549be7704712"/><file name="SNSBANK.png" hash="75f988e3ab935d6d509a86f82422f474"/><file name="SNSREGIOBANK.png" hash="34a70ac0e1e0a8cfb56c77a5b1da3c80"/><file name="TESTISSUER.png" hash="0110aadd0f619b39f357b98b63e3ff69"/><file name="TESTISSUER10.png" hash="b2462fe98e69d211e92771ae75f48552"/><file name="TESTISSUER2.png" hash="471cc38e61077fdaba8fd868fea22dfe"/><file name="TESTISSUER3.png" hash="4ca46be0b7607dc95caccb5ec974e0a8"/><file name="TESTISSUER4.png" hash="6e31a3d3e73390432a84e394a1937c5d"/><file name="TESTISSUER5.png" hash="78b758fef66f220e79b1b9ecda8851d2"/><file name="TESTISSUER6.png" hash="4aefac8baaa06592c8a80f085c0ade08"/><file name="TESTISSUER7.png" hash="0474b1a3264ef45068013747a27158d2"/><file name="TESTISSUER8.png" hash="5e655c4af04b417acecac6fd66623662"/><file name="TESTISSUER9.png" hash="6e378c3b7c75febd0be361ec39c55e45"/><file name="TESTISSUERCANCELLED.png" hash="c794eeb78ef618c3e9dcd8b444b7b23f"/><file name="TESTISSUERPENDING.png" hash="04ee87a5c35a491e624719a3c885d492"/><file name="TESTISSUERREFUSED.png" hash="2f7e2bad6857f39f32afd09eb846e55a"/><file name="TRIODOSBANK.png" hash="922b1fcd51306e0d0da6b15ebe640d8c"/><file name="VANLANSCHOTBANKIERS.png" hash="0a5d713a5c73c54e90507743456c5657"/><file name="achcolombia.png" hash="1f1339c682440cfd7584f9ba00f59722"/><file name="achcolombia_small.png" hash="d6b2899a0039de82788c831b00dd1533"/><file name="achcolombia_small_grey.png" hash="bcae575368bdcdb582423e28ac7a56e9"/><file name="achcolombia_tiny.png" hash="a287c57b8bcc821371758da895db6437"/><file name="advance_payment.png" hash="5aba603621b4b21cc05b7eae1f7455da"/><file name="adyen_logo_large.png" hash="70726ef290d0eee3ed163eb751091813"/><file name="ae_small.png" hash="6ce7c9a2b330c9c46f0213c40db55683"/><file name="afterpay_default.png" hash="a62e3982d50612522be071d4e86eaa6a"/><file name="alipay.png" hash="e3773ada96577e575c9e1300a89a5875"/><file name="alipay_small.png" hash="f9848d15fc7ee22b6687ccdbe7f36a16"/><file name="alipay_small_grey.png" hash="e5ffe7ff272ce2814b7808fd047a9c6b"/><file name="alipay_tiny.png" hash="1a7867dd958ddcdd90ad2400e5be23de"/><file name="alipay_wap.png" hash="e3773ada96577e575c9e1300a89a5875"/><file name="alipay_wap_small.png" hash="f9848d15fc7ee22b6687ccdbe7f36a16"/><file name="amex.png" hash="8e3b962f9ef18e08cf16b77934607d28"/><file name="amex_small.png" hash="6ce7c9a2b330c9c46f0213c40db55683"/><file name="amex_small_grey.png" hash="0f6aabd8dfcbf48dbb555b9191d7795e"/><file name="amex_tiny.png" hash="b7016f4efb163c985d6f1d99a8433d2a"/><file name="asiapay.png" hash="44626dc317e547fb40010498c1096407"/><file name="asiapay_small.png" hash="cca4d86b5abc510f20ca9563d7215c3d"/><file name="asiapay_small_grey.png" hash="00e20b2b2eb0d2ad51c15d8ccc558dc5"/><file name="asiapay_tiny.png" hash="ba0d613d94a64918c0338504fed20ee7"/><file name="autopay.png" hash="4251763c71239e7b1b421e4bc7f5b70a"/><file name="autopay_small.png" hash="ca6941b80b6157bae2411b5620149d2d"/><file name="autopay_small_grey.png" hash="f69d143b4f1fc16a9138ccfacec808a4"/><file name="autopay_tiny.png" hash="4c0c91402daafc63bdb5979dbbd963db"/><file name="babygiftcard.png" hash="91bcbb6604b26565b89898c9a8e1e117"/><file name="babygiftcard_small.png" hash="2558bbdd4d9528b37ba93a8c4af536a4"/><file name="babygiftcard_tiny.png" hash="393a192fab9874e3b167c3bc5d568db7"/><file name="baloto.png" hash="1c172c628f79837c83196b243c636ff5"/><file name="baloto_small.png" hash="c66db84ac7fed6f81010e8058fa39a74"/><file name="baloto_small_grey.png" hash="bdc5eac76e02a658b348a0722fca9ba9"/><file name="baloto_tiny.png" hash="5e10ee14c8a44c3b4c28571664fa045f"/><file name="bancnet.png" hash="a2b687ef27244e448b85635cc1d3ec60"/><file name="bancnet_small.png" hash="4473bc16badc29200ffd09021778b1e3"/><file name="bancnet_small_grey.png" hash="6b108ea906b6d6a5ad51e4de6db732eb"/><file name="bancnet_tiny.png" hash="0ac28b35fd4e09954debcd2eb42e89ce"/><file name="bank24.png" hash="9a921572d6bae73604e1122ec3e5bf7e"/><file name="bankTransfer_AE.png" hash="a6f29729723fa65c732ffc9267b3f8be"/><file name="bankTransfer_AE_small.png" hash="a3322805ab1c40c4e6237943185284ab"/><file name="bankTransfer_AE_tiny.png" hash="dfcf50c97c3b832fd3c17efb2864335c"/><file name="bankTransfer_AT.png" hash="7fa4204d1426a64a4cd26af06af44d41"/><file name="bankTransfer_AT_small.png" hash="31037dcf034d1e9d28254d1962b2ca16"/><file name="bankTransfer_AT_tiny.png" hash="4ee9964118e05d2a81335f3033ec5bf1"/><file name="bankTransfer_AU.png" hash="05716c67579fcf3574037ce69c9e4229"/><file name="bankTransfer_AU_small.png" hash="acd23b8e3ccf3c9d28960fde63c22e85"/><file name="bankTransfer_AU_tiny.png" hash="4a3ee62afdac23a00a0675c763e93470"/><file name="bankTransfer_BE.png" hash="5547426f07e0562ba9b605f1f04a9ad7"/><file name="bankTransfer_BE_small.png" hash="007dbd9f27115b601eb94db09a10b8f3"/><file name="bankTransfer_BE_tiny.png" hash="cf0285a691339efad52d82d40c7aa9f1"/><file name="bankTransfer_BG.png" hash="be209415f5bec0a45bd2bd9cd3c41d0a"/><file name="bankTransfer_BG_small.png" hash="6249144aa579c494988b5bbecb22eb69"/><file name="bankTransfer_BG_tiny.png" hash="7c11956844dbf7cc76db038b32fc7ab1"/><file name="bankTransfer_CH.png" hash="9b20d62386085ac2c9da1227abec5d58"/><file name="bankTransfer_CH_small.png" hash="2887bcf97901ed7ed6bc4fb5d8a00876"/><file name="bankTransfer_CH_tiny.png" hash="c0218d075bbb503689f40007a331ba85"/><file name="bankTransfer_CZ.png" hash="78f7aac275e10af77b3bbab28ba1aa23"/><file name="bankTransfer_CZ_small.png" hash="7bf17799b64aa618945981eb7fa00cce"/><file name="bankTransfer_CZ_tiny.png" hash="7f2a7e2fde701bff21fa388776e73632"/><file name="bankTransfer_DE.png" hash="989d5e1cc2547504b0fbc7aa88e08713"/><file name="bankTransfer_DE_small.png" hash="fb50048c4acfdebf85c4c8f90d8b08d9"/><file name="bankTransfer_DE_small.xcf" hash="cfbc9a47bc116e97a121771c0aa6fe83"/><file name="bankTransfer_DE_tiny.png" hash="d4d68f1068df68f61cb828005c9c0ac9"/><file name="bankTransfer_DK.png" hash="a2e9a409144a8ef18747faafa2937609"/><file name="bankTransfer_DK_small.png" hash="71e75c357b475fe236b633ac8a2a76cd"/><file name="bankTransfer_DK_tiny.png" hash="0103bbe5b8a803aad990bd4ad53c88c0"/><file name="bankTransfer_EE.png" hash="9caa3e1ac3558e9ec372c45df045bae6"/><file name="bankTransfer_EE_small.png" hash="91ffe550444bac13ac29ac1696ffdfac"/><file name="bankTransfer_EE_tiny.png" hash="59ea293d7ba58cd6dd9a9a2b43088093"/><file name="bankTransfer_ES.png" hash="7d0051c7ee32eddca94b89368bb5afbe"/><file name="bankTransfer_ES_small.png" hash="2dc1519510ef7bea726e0bca70859c06"/><file name="bankTransfer_ES_tiny.png" hash="a2338a0d60b2585ac34269daf794d189"/><file name="bankTransfer_FI.png" hash="ffbe8dfa936a4628e3c029bd957f367d"/><file name="bankTransfer_FI_small.png" hash="1db5d45d947502483a2e8c40aab3734d"/><file name="bankTransfer_FI_tiny.png" hash="b9f26cef0fc7f051b6d79ada14c902ba"/><file name="bankTransfer_FR.png" hash="572f77cf0f22103300682c5f89e9d9e9"/><file name="bankTransfer_FR_small.png" hash="58a268c927e4d19858ed3241ceac05f8"/><file name="bankTransfer_FR_tiny.png" hash="dee4c0c47d94fb0e2ab032264c4d1543"/><file name="bankTransfer_GB.png" hash="5a7eee2f31bec7bf422425f31aea2d5a"/><file name="bankTransfer_GB_small.png" hash="17d3c0ca20cee2250e3b6d0f5f080ba9"/><file name="bankTransfer_GB_tiny.png" hash="24d7d3ce5dc62ef776f3f36f24ff78b1"/><file name="bankTransfer_GI.png" hash="e9035b335bd8dc809c7e4afc7d775cc0"/><file name="bankTransfer_GI_small.png" hash="e51bd2f8333a8d8b2163c777c5b12b48"/><file name="bankTransfer_GI_tiny.png" hash="d158401d4dd73a057adac68f3f23ad89"/><file name="bankTransfer_GR.png" hash="aefe60c85d74d77d1c1327538617f297"/><file name="bankTransfer_GR_small.png" hash="b9a0a5d6ec52c80d72d8e8cf903f37f3"/><file name="bankTransfer_GR_tiny.png" hash="1dc0912afd646785eade5d8785baa12c"/><file name="bankTransfer_IBAN.png" hash="f636fcae0c128e08baaef26dacaa078d"/><file name="bankTransfer_IBAN_small.png" hash="ffc0073f2fe405de05206cdfc1565daa"/><file name="bankTransfer_IBAN_tiny.png" hash="4a4f64cb62ca9cfec99d117d0169bb83"/><file name="bankTransfer_IE.png" hash="eb6efba5502d54571022feaef9a9ded3"/><file name="bankTransfer_IE_small.png" hash="d9359e8a2bf8c04d4d43acdcc8b30a5e"/><file name="bankTransfer_IE_tiny.png" hash="b3a0f75656b535960c362baaabc45ce3"/><file name="bankTransfer_IT.png" hash="cd56062b943e4ec6716bc72ebe4b62a9"/><file name="bankTransfer_IT_small.png" hash="29ac58a26ae12dc26dd2d501262ed361"/><file name="bankTransfer_IT_tiny.png" hash="c45892a3e2ae81bb9b4508d79164e556"/><file name="bankTransfer_JP.png" hash="20023e2e93afc881740ea74e89251d86"/><file name="bankTransfer_LU.png" hash="b3dbdeea3429de5280c3a6d911930e9a"/><file name="bankTransfer_LU_small.png" hash="ebb919c647653075be4d9bfaeec8c00c"/><file name="bankTransfer_LU_tiny.png" hash="ec058289aef35f481077c56cdf758032"/><file name="bankTransfer_MT.png" hash="8955bc706cf66307ba69e58d8006af2d"/><file name="bankTransfer_MT_small.png" hash="13ce68bbda83c39b8719d356705da6d2"/><file name="bankTransfer_MT_tiny.png" hash="b05aa11e844f09fa797a3540534e5155"/><file name="bankTransfer_NL.png" hash="ccffd7131f791f7eb44e21b42fd66cc4"/><file name="bankTransfer_NL_small.png" hash="90f18f3784ec4c4733891aafd2e83958"/><file name="bankTransfer_NL_small.xcf" hash="ac17edd9804089820e9d73c76441abfc"/><file name="bankTransfer_NL_tiny.png" hash="61e9d461381aa1fb7e9dbcc8012686e0"/><file name="bankTransfer_NO.png" hash="ffcb1204470ff94a7cf2025e000e4978"/><file name="bankTransfer_NO_small.png" hash="daab5aceaf8e4dd59dfcf29fa69cdc24"/><file name="bankTransfer_NO_tiny.png" hash="3fbbf9e381d8d0d9ada61a54778655cb"/><file name="bankTransfer_PL.png" hash="cd25fefef6bce86a97ab7242138360e2"/><file name="bankTransfer_PL_small.png" hash="880b17d7d090c7bd21965e9b78894851"/><file name="bankTransfer_PL_tiny.png" hash="9579393e3dbb3c2aeb7ebf35e54ef4e7"/><file name="bankTransfer_PT.png" hash="c3c652523d77b5d085da97111c96ef9e"/><file name="bankTransfer_PT_small.png" hash="9d3a979ef52298bcc1545b131bd4a3db"/><file name="bankTransfer_PT_tiny.png" hash="cf2be093140773d75d8993fab7aa347c"/><file name="bankTransfer_SE.png" hash="e5608461fa8bdbac771449f30cde91ec"/><file name="bankTransfer_SE_small.png" hash="0f57f6092f8bef25c9973a140a2d85ad"/><file name="bankTransfer_SE_tiny.png" hash="79f3a00608bf18d686d89562af80a72f"/><file name="bankTransfer_SK.png" hash="2390a923affb1640b1b8bb801ce04705"/><file name="bankTransfer_SK_small.png" hash="50adde906c3a965992bbfb04554a5371"/><file name="bankTransfer_SK_tiny.png" hash="d4866f13969214fd774ea1c427a048e6"/><file name="bankTransfer_US.png" hash="9013561099b618aa954f5a3e1352a6ce"/><file name="bankTransfer_US_small.png" hash="191e204c1216a199229da9d75ed1a2a5"/><file name="bankTransfer_US_tiny.png" hash="9d9e942b93d13a18e38aac0ee932fe15"/><file name="bank_ru.png" hash="2390a923affb1640b1b8bb801ce04705"/><file name="bank_ru_small.png" hash="01c263789dd7e38ac4078f55161ec19b"/><file name="bank_ru_tiny.png" hash="d4866f13969214fd774ea1c427a048e6"/><file name="barras.png" hash="389f5242e23cc5b386392d5d21459f21"/><file name="barras_small.png" hash="9e657657b963a1434e88d4289acf9448"/><file name="barras_small_grey.png" hash="d14dbd53e9a52706bf736525a90d8f63"/><file name="barras_tiny.png" hash="e46d37c7e69ef3722876a0205431f1c8"/><file name="bcmc.png" hash="28dca1b34022f2c653c13556c452fce3"/><file name="bcmc_small.png" hash="49698208e5b73f80773260c3fdb3e5a3"/><file name="bcmc_small_grey.png" hash="5069f14bff23c074af6fe2092a2e482a"/><file name="bcmc_tiny.png" hash="3b4221516dc0d1ace3432a473903991e"/><file name="beelinesms.png" hash="a559096cb240aaf7696be7563498b18b"/><file name="bijcard.png" hash="c93da8e22fac6869d729e961df24b593"/><file name="bijcard_small.png" hash="f188b92b77af1613a91c00450d3eb168"/><file name="bijcard_small_grey.png" hash="08eb4420ac9f7a7f691d688e9550f651"/><file name="bijcard_tiny.png" hash="b88eeed8f7318514f849e3ed3a9a2ce8"/><file name="bill99.png" hash="461213bcf10fb394ef524d3a0ad92ee0"/><file name="bill99_small.png" hash="d6e30f7d3da5ce34af3aa7e2353b4809"/><file name="bill99_small_grey.png" hash="a66c49f3556fa99301f4288341eaa014"/><file name="bill99_tiny.png" hash="d10dbbf6512e15252ad6d1337670a7fd"/><file name="boleto.png" hash="3968115c3576a14f7cdc8ebd98c8092e"/><file name="boletobancario_hsbc.png" hash="3968115c3576a14f7cdc8ebd98c8092e"/><file name="boletobancario_itau.png" hash="3968115c3576a14f7cdc8ebd98c8092e"/><file name="boletobancario_santander.png" hash="3968115c3576a14f7cdc8ebd98c8092e"/><file name="bradesco.png" hash="d5ae6f8cb39883cce8c97c0d11257a4c"/><file name="c_cash.png" hash="1b9d5b0c9ece2eaff0be71b4082e0655"/><file name="c_factuur.png" hash="cd46b7d11c9dd79b1cc9c073c0696aff"/><file name="c_factuur_small.png" hash="63d4c6fd1e5b214d018f3e00ca687cd5"/><file name="c_factuur_tiny.png" hash="153791c1eb5bae6095e1210787ffe4fa"/><file name="c_invoice.png" hash="cd46b7d11c9dd79b1cc9c073c0696aff"/><file name="c_invoice_small.png" hash="63d4c6fd1e5b214d018f3e00ca687cd5"/><file name="c_invoice_tiny.png" hash="153791c1eb5bae6095e1210787ffe4fa"/><file name="c_oprekening.png" hash="cd46b7d11c9dd79b1cc9c073c0696aff"/><file name="c_oprekening_small.png" hash="63d4c6fd1e5b214d018f3e00ca687cd5"/><file name="c_oprekening_tiny.png" hash="153791c1eb5bae6095e1210787ffe4fa"/><file name="c_paypal.png" hash="fe5fd0065e4a84e967095f082b329d7f"/><file name="c_paypal_small.png" hash="294698dab8f5aa31f2ad62702bd9d379"/><file name="c_rembours.png" hash="fb2da23375ce5ba67380dc0fb60e7669"/><file name="c_rembours_small.png" hash="0d0f244c1820921db3a6635552cf8129"/><file name="c_rembours_tiny.png" hash="c15d78de45389d475f2786fed3e81c4b"/><file name="card.png" hash="adfe3d9fe45c3f94b9edca852e2cb38c"/><file name="cashticket.png" hash="0dba12beffb7c5ebf47ae1e5701426f3"/><file name="cashticket_small.png" hash="ade5518971a871dd48b0628af6f6cf89"/><file name="cashticket_small_grey.png" hash="348c3721fbedfb2a7121f57db435f43e"/><file name="cashticket_tiny.png" hash="95248971eb69c150748b9acf27f68fb5"/><file name="cashticket_tiny2.png" hash="16ab15f5263fe81ab5233d02ce2cd715"/><file name="cashu.png" hash="1b6d79438ad686cdff44866a66445dca"/><file name="ccavenue.png" hash="aee563b4c9c77d8a881db1e79ad8758d"/><file name="ccavenue_small.png" hash="ffa7390808c679e8d6c580fcf14054fb"/><file name="ccavenue_small_grey.png" hash="9a6c58e88230fb6a167e597752a533ab"/><file name="ccavenue_tiny.png" hash="994d56725d095d107fb33c6f3abf7653"/><file name="cellpaypoint.png" hash="c676483390c0c7e932a320b6326593da"/><file name="cellpaypoint_small.png" hash="f720447e73325b922568a00d0effe75c"/><file name="cellpaypoint_small_grey.png" hash="c6deea99f2099ade43b2b75dcb62f273"/><file name="cellpaypoint_tiny.png" hash="5c00501360e94b3020ff54bccbc2e531"/><file name="ciberpay.png" hash="625d300997f331918e912dc266e1a3a4"/><file name="contact_ru.png" hash="5f70b79ee4232a81a9f7eb0224b0ba3c"/><file name="creditcard.png" hash="87a9f022a38f3e96981c420d6571381f"/><file name="creditcards.png" hash="cd1a83b970a38307c2899f9949495a00"/><file name="cup.png" hash="068dee300e2c12e58e9a47d3556e977c"/><file name="cup_small.png" hash="45d3b4e758237412b524a5c52418da67"/><file name="dankort.png" hash="aac4acc9e43e896973f36d3e7011a5af"/><file name="dc_small.png" hash="ecf5d635a74460ca9575bb7d6d8550dd"/><file name="di_small.png" hash="8573aebe4938afb288749badb22aa091"/><file name="dineromail.png" hash="9058ea237d278d5fd238c2d180807c57"/><file name="dineromail_ar_amex.gif" hash="4a94da8ec02c565e8cfcb66fbfffe362"/><file name="dineromail_ar_argencard.gif" hash="422ea3362cc44616f72a887f5cba66c6"/><file name="dineromail_ar_banktransfer.gif" hash="758e12e370a5b213996ea1f39259721a"/><file name="dineromail_ar_bapropago.gif" hash="df51325a4fae890a5a6673f92bb64f5d"/><file name="dineromail_ar_cabal.gif" hash="98f6cc5d54df43b4c4a17d9fc2dfb9bd"/><file name="dineromail_ar_cobroexpress.gif" hash="910960360ea1cd632a69ab500cd627ee"/><file name="dineromail_ar_dm.gif" hash="b458246e266ecb059865ab17b7673882"/><file name="dineromail_ar_italcred.gif" hash="aa4376df77748d39c670001794e7991f"/><file name="dineromail_ar_master.gif" hash="126cdc5db597363e5934cf19205f8f45"/><file name="dineromail_ar_pagofacil.gif" hash="2c85235d6dff444b1b914488d035eb7b"/><file name="dineromail_ar_rapipago.gif" hash="c745eb4d456f03c6643f40e77f9ad6ac"/><file name="dineromail_ar_tshopping.gif" hash="552daaa4621397aaed5cea3ad5fc89ec"/><file name="dineromail_ar_visa.gif" hash="61c86fd2afade160736b1c318a8280a6"/><file name="dineromail_ar_visa_hipotecario.gif" hash="bbdb3933302107611678bd7a87779a6c"/><file name="dineromail_br_amex.gif" hash="4a94da8ec02c565e8cfcb66fbfffe362"/><file name="dineromail_br_aura.gif" hash="b4a8dea00ceebb3d1d64660a997ac22d"/><file name="dineromail_br_bbancario.gif" hash="d9adffbdf626846cfe11b874c5bc0715"/><file name="dineromail_br_diners.gif" hash="b4f437b40f747842cb32becf8af28eb4"/><file name="dineromail_br_dm.gif" hash="65fa3eb604d2d5cd64b76ea0419788a6"/><file name="dineromail_br_hipercard.gif" hash="329dd978884c554fc8c0a37bd6c1ded9"/><file name="dineromail_br_master.gif" hash="126cdc5db597363e5934cf19205f8f45"/><file name="dineromail_br_oipaggo.gif" hash="9cad6e46ea39ec1d6af77ce9322835c1"/><file name="dineromail_br_visa.gif" hash="61c86fd2afade160736b1c318a8280a6"/><file name="dineromail_cl_amex.gif" hash="d4942bf6dab3c072e701e709adaecf78"/><file name="dineromail_cl_diners.gif" hash="9f5bccfc0ab73993405821859dab56b0"/><file name="dineromail_cl_dm.gif" hash="0b886856a701eff48c710a4812f999d0"/><file name="dineromail_cl_magna.gif" hash="bbbbed0d123e619dbf9ffc3308cb4f6e"/><file name="dineromail_cl_master.gif" hash="38b5c034caa6249caf49256f7df4894c"/><file name="dineromail_cl_presto.gif" hash="fa18e40e599f4216d0efea05d9329b5b"/><file name="dineromail_cl_ripley.gif" hash="8a0fe5295feeb9959f2dedf17b304215"/><file name="dineromail_cl_servipag.gif" hash="51cc675b605ce7dd88016743fc324e09"/><file name="dineromail_cl_visa.gif" hash="87fa159904723d830b30d9a0f2f2ff00"/><file name="dineromail_mx_7eleven.gif" hash="7595248bd6c735fc9cd28a0afe9e035c"/><file name="dineromail_mx_amex.gif" hash="4a94da8ec02c565e8cfcb66fbfffe362"/><file name="dineromail_mx_bancomer_tc.gif" hash="b2854f409126920b1c9cf8ed3792a349"/><file name="dineromail_mx_dm.gif" hash="9eede7e49ebcb145494952f6edb749b2"/><file name="dineromail_mx_hsbc_tb.gif" hash="1fb60730a0dfe9d0a0ebef45af1d8fdd"/><file name="dineromail_mx_ixe_tc.gif" hash="6e19e5be52b5bfce749f16b26e933c2e"/><file name="dineromail_mx_otherbank_tc.gif" hash="df05af375e248dcc04324aa92b6163b0"/><file name="dineromail_mx_oxxo.gif" hash="ee69da5b06d9c52ef76dd1a20bab5ebb"/><file name="dineromail_mx_santander_tc.gif" hash="5bb0f9600b1b8ad67d0a418c2412a506"/><file name="dineromail_mx_scotiabank_tc.gif" hash="dbe7bdd2d9327086cae42ee6a842d00c"/><file name="dineromail_small.png" hash="356e06d5a2fd5f98f3da4dfc192e389c"/><file name="dineromail_tiny.png" hash="98f6b908f7025a8babaffafcc1336428"/><file name="diners.png" hash="6310bb53fe7921cf016309d6a75b8c22"/><file name="diners_small.png" hash="ecf5d635a74460ca9575bb7d6d8550dd"/><file name="diners_small_grey.png" hash="77ff46143b8a4aab54eb35c345806a83"/><file name="diners_tiny.png" hash="881b5998d35cc373d294ca21689015d5"/><file name="directEbanking.png" hash="6d7ce2ff213c33743d80ab83fb24e8de"/><file name="directEbanking_axa.png" hash="3d90797ef39a0db23dd6373bdfef9ee8"/><file name="directEbanking_cbc.png" hash="f23617618a9e2ce7863a931947b49adb"/><file name="directEbanking_de.png" hash="9fa16b098e744e94553952c5a28c7dd2"/><file name="directEbanking_de_grey.png" hash="109b1237e5d69d7ae82dc9a64d6ab4fd"/><file name="directEbanking_de_small.png" hash="5f65ee79ae22c4ba52e6a8485cf155cd"/><file name="directEbanking_de_tiny.png" hash="15983a607b8151f0be3b5ecfb067ea7a"/><file name="directEbanking_dexia.png" hash="37ebcc9a12bc9c88d540f78adf9bd679"/><file name="directEbanking_fintro.png" hash="389b1a7b14e5466b7b0dd4721aee0433"/><file name="directEbanking_fortis.png" hash="511cc06fefa644cc7575a0efb227bd64"/><file name="directEbanking_grey.png" hash="109b1237e5d69d7ae82dc9a64d6ab4fd"/><file name="directEbanking_ing.png" hash="ac4f224d0fe9aee23d143acc5198dd72"/><file name="directEbanking_kbc.png" hash="eae3c85e332e4289841bd27a46031db3"/><file name="directEbanking_small.png" hash="db84d47793f8e375d48dc8b17f8a0ddf"/><file name="directEbanking_small_grey.png" hash="7f4fbbcfe647cf8d280238754061d042"/><file name="directEbanking_tiny.png" hash="7d804d09c7df931eb9cafc2d3a4984b1"/><file name="directdebit_BR_bancodobrasil.png" hash="784271e1bf909c95e79ff7de4d92ed5b"/><file name="directdebit_BR_bradesco.png" hash="d5ae6f8cb39883cce8c97c0d11257a4c"/><file name="directdebit_BR_caixa.png" hash="a0d69bc8a40bf120fc2138a694c31186"/><file name="directdebit_BR_hsbc.png" hash="4943f73d211b8111fd81ca8d4e06160d"/><file name="directdebit_BR_itau.png" hash="b24ed466c1d694dca7dc26ee42dbf330"/><file name="directdebit_BR_santander.png" hash="bd73ea7f9f46b0ed583e764f01e9a8d0"/><file name="directdebit_NL.png" hash="cf1246761401ad866b72d7b520506b22"/><file name="directdebit_NL_small.png" hash="2e6a7444f509232818458312f28f8c50"/><file name="directdebit_NL_tiny.png" hash="99ea09a985cf0221ce87d3696211704e"/><file name="discover.png" hash="491378a0e2ae6223ab41fc925b67575d"/><file name="discover_small.png" hash="8573aebe4938afb288749badb22aa091"/><file name="discover_small_grey.png" hash="e60b18fcd2f0509c02a08fa0bf7024b2"/><file name="discover_tiny.png" hash="78a2cb6ccedb121d3138b280e1778f84"/><file name="dotpay.png" hash="a09962a7357374482444accf6b066037"/><file name="dotpay_inteligo.png" hash="25492f3d9eaabae7aa1441fdf24947b3"/><file name="dotpay_moje.png" hash="1c948c8e2db27f09e44e4c6f3591e39c"/><file name="dotpay_mtransfer.png" hash="e9ef4a420639f227e650c9e456235059"/><file name="dotpay_multitransfer.png" hash="b604e3e946b41437bc485b0a95a76b2a"/><file name="dotpay_nordea.png" hash="cfda5216a9ae9b829e5121bbfaaf887b"/><file name="dotpay_potzta.png" hash="88670102fd0e7f532357d06ec66a8ec6"/><file name="dotpay_przelewz.png" hash="06cbe8767f3b1810e2a72b19a1bcc9c7"/><file name="dotpay_przelewz24.png" hash="64143c67feac20a193fd459ba0a6e8b4"/><file name="dotpay_small.png" hash="aabbcc9e2471e044c38ab63d8aa6d48f"/><file name="dotpay_tiny.png" hash="5c746221e7ec781c18bb4d7e6f0a66a0"/><file name="dotpay_zabka.png" hash="a6edae22b53cdd3b997f8c9b50840b2c"/><file name="ebanking_FI.png" hash="7d717c71a9174624d8e30a314c4f091e"/><file name="ebanking_FI_aktia.gif" hash="092c03a2319bd7c5d8fc9dc98516be46"/><file name="ebanking_FI_alandsbanken.png" hash="d64698c6c6dc9b6c8e1d2179dfb61d8d"/><file name="ebanking_FI_handelsbanken.png" hash="06f99903ea285bc5cf392ea6c642a267"/><file name="ebanking_FI_nordea.png" hash="c68ecd7c03b5d6a0819110c56df501e8"/><file name="ebanking_FI_osuuspankki.png" hash="cf9f495363970b9da3dbbaffe1031225"/><file name="ebanking_FI_sampo.png" hash="e5b4bd2ac745258b22ab832be253654a"/><file name="ebanking_FI_small.png" hash="57635f01d33e65d40af90d3ab4088ad7"/><file name="ebanking_FI_spankki.png" hash="e88599e1318b54be1990363607819811"/><file name="ebanking_FI_tapiola.png" hash="27ad56685d2e0e641a8d3e95942630ef"/><file name="ebanking_FI_tiny.png" hash="b0e3de2e531c362daaac6063c7a59d9e"/><file name="ebetalning.png" hash="0bc7c8cc01264df81ad06b0b75ce7c0a"/><file name="ebucks.png" hash="33d683c3a6f4f61df3c36e09d867936e"/><file name="ebucks_small.png" hash="c2afb7964e668ba7ba0416682fdd831b"/><file name="ebucks_small_tiny.png" hash="dd79fc153f0a7fcc79e628383e76ee26"/><file name="ebucks_tiny.png" hash="6085ef04ad96289d6a98e429c6d061ba"/><file name="elba.png" hash="8d2bfd3e8c0953b5d1ba80e201d25069"/><file name="elecsnet.png" hash="4a27849dfd5a8bc6771a962aff3908f4"/><file name="elo.png" hash="d8ed45be5e2a933584a58c78a5ec3568"/><file name="elo_small.png" hash="b0c3bec4e8cccf4339e142365a30fca7"/><file name="elv.png" hash="8e47d6ce919e1be80328665798d387ec"/><file name="elv_small.png" hash="a565fd570c28204b7ed0e92ebf667012"/><file name="elv_tiny.png" hash="3c9d929660d6279f255c7be9bf02ee8f"/><file name="empty.png" hash="65d7e6c42582ea986cb66ad78768b2ae"/><file name="enets.png" hash="5eae578677220e7085374936ffc2ec6a"/><file name="entertainmentcard.png" hash="df44b82c45f98790ea0e8866ecb5fee7"/><file name="entertainmentcard_small.png" hash="0466be6962e63c80c766ca4b092cded6"/><file name="entertainmentcard_small_grey.png" hash="32b0a15b2467decf84db199cd6db3bcf"/><file name="entertainmentcard_tiny.png" hash="2a7610575298bf7029bbbfad2bb86596"/><file name="forwardmobile.png" hash="023348014c3838963e48bdc8b397c387"/><file name="frame.png" hash="5e2226d7539f5d95dabe5988f4446282"/><file name="gallgall.png" hash="2e6b9f6aafaebe09112e089c05aa64ea"/><file name="gallgall_small.png" hash="24fabea2d5af04bedf9dd69e2368b943"/><file name="gallgall_small_tiny.png" hash="671cb1ce378d811cddaf77af7545d365"/><file name="gallgall_tiny.png" hash="769bf04c15a3b81f06940c237c3b3706"/><file name="giropay.png" hash="469cb654fe84b923b86b06723455ef9d"/><file name="giropay_small.png" hash="444f3a6307bb83a1d20d19e1cb8237f9"/><file name="giropay_small_grey.png" hash="565dd52d036a87d5c515c8bec4cef4f3"/><file name="giropay_tiny.png" hash="3a677e8d71ce59332e012db5bc343106"/><file name="globegcash.png" hash="580003d47ef03a6d1c7203bfc250b6d3"/><file name="globegcash_small.png" hash="cd18f17b46acb7ca15370b000f9bfa95"/><file name="globegcash_small_grey.png" hash="36e88a7a7170eb0c5ca7d3a8f2b08f13"/><file name="globegcash_tiny.png" hash="006794f78d9a43a56543a6e6b5a7ebd8"/><file name="hansabank.png" hash="b4dad91137678e09a650e1c6693e98d3"/><file name="hdfc.png" hash="b6e57b76ee8920607a2a0a809ee40d48"/><file name="hdfc_small.png" hash="1b9e555bfab7c0f11631dfecacffa637"/><file name="hdfc_small_grey.png" hash="cadac6a01cdab50cff177a1c0feb6156"/><file name="hdfc_tiny.png" hash="584260909cebec2286b6d1cd9489c7d4"/><file name="hipercard.png" hash="9310c18cee9f43c4019a7560d74ffd4c"/><file name="hipercard_small.png" hash="d4d0e1aab233b3ec3f94cbbe985fd8ad"/><file name="hppPos.png" hash="4780e785c785e93aed6ad13df323d6ef"/><file name="hyvesafrekenen.png" hash="5c8068c5b31a55f043cee6dff3246bb7"/><file name="hyvesafrekenen_small.png" hash="5a4c5747c030ac74cea799032ada3b26"/><file name="hyvesafrekenen_tiny.png" hash="2215dc356edeb426da65f43536960afe"/><file name="ideal.png" hash="6a851bfc5bac2835fd31c18c1224e8c9"/><file name="ideal_small.png" hash="8b115bda559a24a3564e02f7a90caae9"/><file name="ideal_tiny.png" hash="140c2e52427e074f95627a44db1f9f88"/><file name="img_trans.gif" hash="325472601571f31e1bf00674c368d335"/><file name="interac.png" hash="c63021e21273e83423d8af2b4c7c1728"/><file name="interac_small.png" hash="0c74bd42750252eda57b054651afca18"/><file name="interac_tiny.png" hash="1a42ba184555605ab8e2ea1a4956f21a"/><file name="ipay88.png" hash="116aa967091843ee6e8e911ff4c34b22"/><file name="ipay88_small.png" hash="1dfb38797a43657d72b0701c446a841e"/><file name="ipay88_small_grey.png" hash="418f051bc03571334cec46e122fa698f"/><file name="ipay88_tiny.png" hash="0009e8c253c57564c3688010c5192ad4"/><file name="ivr.png" hash="0ebef34ac806802b0d29c1d74f84fdbf"/><file name="ivrLandline.png" hash="0ebef34ac806802b0d29c1d74f84fdbf"/><file name="ivrLandline_small.png" hash="155f9a61db970885782db7cbe997dab4"/><file name="ivrLandline_tiny.png" hash="ecf7994d1e627023dbd47615a8ebb848"/><file name="ivrMobile.png" hash="6a16e39d5deffb8fa3234108ca97b7de"/><file name="ivrMobile_small.png" hash="a9756b756b3ea56dea07a16edcdf39a9"/><file name="ivrMobile_tiny.png" hash="8c35341f8a8f6ca16b752ff7e1bb51bf"/><file name="ivr_small.png" hash="155f9a61db970885782db7cbe997dab4"/><file name="ivr_tiny.png" hash="ecf7994d1e627023dbd47615a8ebb848"/><file name="jcb.png" hash="68303da687ac6e8615196a66f40bb6fb"/><file name="jcb_small.png" hash="f469481ddecb206cfc74478c6b58266e"/><file name="jcb_small_grey.png" hash="ddb4587396f2e7c7ad83d2aa6561cf7a"/><file name="jcb_tiny.png" hash="5d89108481655ee9dc2dbf6476bbcc14"/><file name="kadowereld.png" hash="c2eea3806e2f55ffa2f7eb3154450be5"/><file name="kadowereld_small.png" hash="203f4584e34c3f059025f3d4329b4898"/><file name="kadowereld_small_grey.png" hash="3afa5e33cd29e5c3ce1723ea10607463"/><file name="kadowereld_tiny.png" hash="b2ca2f7f504670555d332f4c5e8d3074"/><file name="klarna.png" hash="51bc6b70472fe29b728192222b88c709"/><file name="klarna_small.png" hash="57a98dc539dd5c329aac8540a3204d1e"/><file name="klarna_tiny.png" hash="fe0295e2cba0b79136e86180d7db5963"/><file name="laser.png" hash="c64699ddd372b4a48e72b8066fd2aa78"/><file name="laser_small.png" hash="abda432193ffcd5388037fa34b9e0737"/><file name="laser_small_grey.png" hash="ef7193af17ae93fa9bb5215a0ec73195"/><file name="laser_tiny.png" hash="2f87b8e37582541355e9b77008cf3853"/><file name="maestro.png" hash="e91fa85475ae74b16b92b7ac05e562c2"/><file name="maestro_small.png" hash="7814fbfff53e57643137fd68889ec807"/><file name="maestro_small_grey.png" hash="31ab5c8168e8a5b075fe1136b221d453"/><file name="maestro_tiny.png" hash="87ff6ebe1ef2e4cbae340881169065c4"/><file name="maestrouk.png" hash="cf0fcc0e1f41ad2301d5814e4a9c88c4"/><file name="maestrouk_small.png" hash="7814fbfff53e57643137fd68889ec807"/><file name="maestrouk_small_grey.png" hash="31ab5c8168e8a5b075fe1136b221d453"/><file name="maestrouk_tiny.png" hash="87ff6ebe1ef2e4cbae340881169065c4"/><file name="mc.png" hash="0d108b48ed7f8e1f0020da611e223800"/><file name="mc_small.png" hash="51ca51c64a8f0277961effeb0a0dedbb"/><file name="mc_small_grey.png" hash="0762490e5dc86277d0e411468b01a269"/><file name="mc_tiny.png" hash="814af4ec011f2f33edb7d38763dea2ea"/><file name="mercadopago.png" hash="e8cdc9cab0494fbaec13ffa7a008f0d6"/><file name="mimoney.png" hash="0f6d07a6156c6dc931636c8c618384ac"/><file name="mimoney_small.png" hash="4a8b0586fd04690de902120a463ca5b2"/><file name="mimoney_small_grey.png" hash="c85a2d63e583a8fd231713d30d484ecb"/><file name="mimoney_tiny.png" hash="0c562f6e53a95ebe2ff12747f9271a56"/><file name="moneta.png" hash="c208f24cbe664e0c9df753d1dd6b8d43"/><file name="moneybookers.png" hash="7bfc54c2a787b53f699f124d7449a169"/><file name="moneybookers_small.png" hash="1290894e479fafda67291355ea65defe"/><file name="moneybookers_tiny.png" hash="4ed8a8052e9b394e174889de6d621604"/><file name="moneymail.png" hash="73d044eac9d9f1679a653dd2e62935f3"/><file name="moneymoney.png" hash="7204b9579b665085d00b1ea2184b678f"/><file name="multibanco.png" hash="178a9292a9743e3b8904f105e7d6715b"/><file name="nedbank.png" hash="a8a2dc3af1e76262b75270a24a041331"/><file name="nedbank_small.png" hash="d386a8672bd21e53580ae32ae529ca3a"/><file name="nedbank_small_grey.png" hash="7085229e1217e47b07663764f8bb1e6e"/><file name="nedbank_tiny.png" hash="af3694515dd8b68ca71324ca20089c58"/><file name="onebip.png" hash="ca289a3c9fd8d72bce90165db98a88b9"/><file name="online_RU.png" hash="afcc9ad6292e2e21feff4af23e2fa46e"/><file name="online_RU_small.png" hash="712fa0be37857b024e3118d96da61bab"/><file name="online_RU_tiny.png" hash="0e3ac8d1ca10dff95657aa9b9ebdc13b"/><file name="online_transfer_de.png" hash="43324fb914cdbf8eff66f3668a353f1e"/><file name="openinvoice.png" hash="cd46b7d11c9dd79b1cc9c073c0696aff"/><file name="openinvoice.xcf" hash="d5f41ec9c48415f65a519c33999a1229"/><file name="openinvoice_small.png" hash="63d4c6fd1e5b214d018f3e00ca687cd5"/><file name="openinvoice_tiny.png" hash="153791c1eb5bae6095e1210787ffe4fa"/><file name="pagosonline.png" hash="04a1d0c0bb46ed7f931b3d4e248f8c0a"/><file name="pagosonline_small.png" hash="9768e52502eb299716268a212a044812"/><file name="pagosonline_small_grey.png" hash="e9f7365e885652200fdb08201e1b13cf"/><file name="pagosonline_tiny.png" hash="70d51512b8bf5215f5865b21a3ca7731"/><file name="paypal.png" hash="02362803ca1d3ab9c9e8dc3176100d66"/><file name="paypal_small.png" hash="294698dab8f5aa31f2ad62702bd9d379"/><file name="paypal_tiny.png" hash="709c47f06297455d8d55d6937245e016"/><file name="paysafecard.png" hash="20861199bb6e8781c0b10e995f1490de"/><file name="paysafecard_small.png" hash="e7452ca00265fdc91dd28a2b326355d3"/><file name="paysafecard_small_grey.png" hash="06377beb14a2666f153b273e89053419"/><file name="paysafecard_tiny.png" hash="92b3df13741ef6f71d2c12206ab3f412"/><file name="payshop.png" hash="c9c79c76313370d9165e814d3d81e062"/><file name="payu.png" hash="bc671fff056fd108fe24ba52053111b0"/><file name="payu_small.png" hash="ca3eb82cb24dd1f1bfc34436287dc9d0"/><file name="payu_small_grey.png" hash="6097711eeb2ea309d407c03a467e1653"/><file name="payu_tiny.png" hash="2b89f57174338ba3d3192eb8519ece3f"/><file name="plastix.png" hash="82d3202239d01c6bf49d8dc2399900e2"/><file name="plastix_small.png" hash="447240736bdba2d15a34986395c3fb1f"/><file name="plastix_small_grey.png" hash="7e039f412a96a0e884f86598ebfccfb1"/><file name="plastix_tiny.png" hash="aaff5ff8c33af35fe4ae64e627c0964c"/><file name="platezhru.png" hash="2f36e088146ab75470c7a55177db8c07"/><file name="platika.png" hash="03e93ab41b0d330706e2c4f85cae966a"/><file name="pm_gloss.png" hash="dcfc71b0c819e58a1287cd206cfb9d14"/><file name="poli.png" hash="4e14e9d246fdbc07ae58ed8ae639f7b0"/><file name="postoffice_ru.png" hash="8ade3cd1711071ab73248d4ba62eae64"/><file name="pps.png" hash="29f4efc8d08cfd5ba90920b1fcef6bde"/><file name="pps_small.png" hash="7bf1fa7c4adcd8dfc2b2f56eb172fcaa"/><file name="pps_small_grey.png" hash="08d6188b7f5c13ec9c5f3488b4cbf19e"/><file name="pps_tiny.png" hash="4ed68db4ca98ac69f0557319a8284c8d"/><file name="pse.png" hash="6af65a4a18af66d103473fece5536e1c"/><file name="pse_small.png" hash="1f6695131dca61647b07f7180e695c46"/><file name="pse_small_grey.png" hash="7adf2fdfc48d8b078f7c0aeaa4f50e1c"/><file name="pse_tiny.png" hash="128b2749a126cfade0300f27c6919308"/><file name="qiwi.png" hash="b5e092af3394bc333fe83d073e8a6dfd"/><file name="qiwiwallet.png" hash="623b4c7fec53864fdee6d567da5f61cc"/><file name="refresh.png" hash="69ddc65b628d15a4375e66792c07484f"/><file name="safetypay.png" hash="af4e58d22f816f148faae179d0867b3f"/><file name="safetypay_small.png" hash="26749f1a95011897c8aaf568425df3dc"/><file name="safetypay_small_grey.png" hash="e5f3e5287e3fee2d77c065063b43e17d"/><file name="safetypay_tiny.png" hash="f3700f2d3cda7834cd178ac0f70d6352"/><file name="sendEmail.png" hash="cdddfa5e77d565a0ed23b6c26e0dee09"/><file name="sendEmail_small.png" hash="b5d63cc1613f08a08194442647ee451d"/><file name="sepadirectdebit.png" hash="e565455436d808fa07499131296490de"/><file name="sm_small.png" hash="7814fbfff53e57643137fd68889ec807"/><file name="sms.png" hash="7c6c0fddee039be4d879808b374f06f5"/><file name="sms_small.png" hash="fd1d52278d2446c7fe1c34d4fc70d556"/><file name="sms_tiny.png" hash="ed22de378fdbc717f987f8d4199e0452"/><file name="solo.png" hash="13f13c36cff7835d4a46df140fe432a3"/><file name="solo_small.png" hash="96de4f5f750a415fef573ce28092bf68"/><file name="solo_small_grey.png" hash="75c9b0b2daae0d6d80a5f5ff4f14e8d6"/><file name="solo_tiny.png" hash="3e2d7a21d19b12ed84aabdb26304fae6"/><file name="switch.png" hash="8cf19bb8c744a3f852511e781c176c07"/><file name="template.xcf" hash="e5035cd9e4e96859e50c1a9773098e89"/><file name="tenpay.png" hash="ddd0b5b8e3ff63cf1bfc555fbede0242"/><file name="tenpay_small.png" hash="2aa6c5919108eec42ed5c47ad4155a8f"/><file name="tenpay_small_grey.png" hash="6a21283b21295eefb4db553f877ea4c1"/><file name="tenpay_tiny.png" hash="736275eeec39e56c3c1d29fcb9d8ebb7"/><file name="terminal_RU.png" hash="711ab27d1cbbf6771e0ee133f75c7c46"/><file name="terminal_RU_small.png" hash="9bafe5dd035f73757f553250382764c6"/><file name="terminal_RU_tiny.png" hash="1b4dce2e901d90185933420cd80648cb"/><file name="tnt_rembours.png" hash="a8abb6f51d7893da39fcc2477d7bd2bb"/><file name="tnt_rembours_small.png" hash="72ee2b0ae6742cd325bda44a14093f4c"/><file name="trustly.png" hash="2a82872cc0ada644b0442e05423a2db8"/><file name="trustpay.png" hash="88a3680bf1007661ab4fc63106aa1ff4"/><file name="uhisbank.png" hash="8c0967455a15aefe3cdfb47240a18850"/><file name="ukash.png" hash="b95eb9f2658923c38a6252f5ff9ca9c7"/><file name="ukash_small.png" hash="2210a65cd1fb85bc883d112b12c79e6e"/><file name="ukash_small_grey.png" hash="65e6cc21082ebd3c93e96bbf96499df4"/><file name="ukash_tiny.png" hash="543ab39e6dcbc094188b4f473ac4b998"/><file name="unionpay.png" hash="068dee300e2c12e58e9a47d3556e977c"/><file name="unionpay_small.png" hash="55a00c9d7bbcbe1c448b449974d85af1"/><file name="unionpay_small_grey.png" hash="5c69e46ee4663f2d0e47c7f503bbd1e4"/><file name="unionpay_tiny.png" hash="45d3b4e758237412b524a5c52418da67"/><file name="unknown.png" hash="b2d137147db4d6eb7dacb5414a4f7a30"/><file name="unknown_small.png" hash="a5234e9eb2e4485acb19b196876d762b"/><file name="vi_small.png" hash="cdab39efaf22fcd2ab88f3dc42c32de1"/><file name="vias.png" hash="aca848fa54b173225fe17637699d87c4"/><file name="vias_small.png" hash="37bee85c36b52a07a4529735a194a41e"/><file name="vias_small_grey.png" hash="4da77d558ae9488ee2a85191e9db8748"/><file name="vias_tiny.png" hash="1a45f0a2696b5539195c2fcb69be49b6"/><file name="visa-electron.png" hash="308132b89febd4979bac61594919057f"/><file name="visa-electron_small.png" hash="5ab129027f4f4acbc7a9aa2b5d0e84d3"/><file name="visa-electron_small_grey.png" hash="712b876d4f060613f54f2ec04516e512"/><file name="visa.png" hash="30f9fde31aa41197e71ccd9a63a1fe75"/><file name="visa_fr.png" hash="abd117879295333ac54497e15f81ea18"/><file name="visa_fr_small.png" hash="837db98a87141717dcd1b90bcb5ff5b1"/><file name="visa_fr_small_grey.png" hash="e8cef14608278ab71ef2ffd58e65dc9e"/><file name="visa_small.png" hash="cdab39efaf22fcd2ab88f3dc42c32de1"/><file name="visa_small_grey.png" hash="9411565a7e81c5c3cc484863dc53031a"/><file name="visa_tiny.png" hash="e374bec64dcc345848b43f0a8a3490c2"/><file name="wallet_RU.png" hash="29213300b3cf644c64d915418f259d87"/><file name="wallet_RU_small.png" hash="3308a16ce0f5b474af32505f587079b5"/><file name="wallet_RU_tiny.png" hash="c46cdb588d7a9a21a909e5af842414b5"/><file name="wallie.png" hash="fc97552b8249c3e96aa6f3cf8e3577bd"/><file name="wallie_small.png" hash="c0b60fe348b16e157eb0c64043f410c2"/><file name="wallie_tiny.png" hash="df61209a0e0517bbb3d65119d5ebfcbd"/><file name="webmoney.png" hash="3cca800e0962e0078b64361de11b935f"/><file name="webshopgiftcard.png" hash="09990fe325b20c2fcdaaa855457d5348"/><file name="wiwallet.png" hash="5db11152a23a72b2f4676841261c5db0"/><file name="wiwallet_small.png" hash="a4c5567f59ca4575a316e1bf3eb066c1"/><file name="wiwallet_small_grey.png" hash="b75b2af0b5c6129e8c1d7bc9087222b4"/><file name="wiwallet_tiny.png" hash="8b53e98458e15bc19b242d05ad678f2d"/><file name="yandexmoney.png" hash="e6a38c66b08ba78a68096f8ff1b2a41d"/><file name="yourgift.png" hash="87bd1ef190d75ec64fb66b77aaeb7b8c"/><file name="yourgift_small.png" hash="17300795f7fd31d5cb730685c2eb0098"/><file name="yourgift_small_grey.png" hash="69b235ccb6b7ef0dfb3a2645be60dbc6"/><file name="yourgift_tiny.png" hash="a3bc0b90775458ff9ef8499f7a5437ca"/></dir></dir><dir name="css"><file name="adyenstyle.css" hash="b8ab0272f8e5bc859470a71529831e02"/></dir></dir></dir></dir></target><target name="mageweb"><dir name="js"><dir name="adyen"><dir name="payment"><file name="adyen.encrypt.js" hash="6e6d006f2ac96f33a4531d3115f2d852"/><file name="cc.js" hash="2e7a07ae072be379ae707b14771e5d0d"/><file name="elv.js" hash="db612a634c95727ec9db82c50e9aec8e"/><file name="epos-device-2.6.0.js" hash="94c73689bec45b74a311d76400f05ba6"/><file name="epos-device-3.0.0.js" hash="0056bb4902efed998d1fdcfbb7ab3495"/><file name="iban.js" hash="92cff3bbc297f8aa60acca331e736063"/></dir></dir></dir></target><target name="mage"><dir name="shell"><file name="adyen.php" hash="23173d3362feab3675878eb51cebac02"/></dir></target></contents>
|
19 |
<compatible/>
|
20 |
<dependencies><required><php><min>5.3.3</min><max>6.0.0</max></php></required></dependencies>
|
21 |
</package>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Adyen_Payment</name>
|
4 |
+
<version>2.5.0</version>
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://opensource.org/licenses/OSL-3.0">Open Software License (OSL-3.0)</license>
|
7 |
<channel>community</channel>
|
8 |
<extends/>
|
9 |
<summary>Magento Plugin for Payment service provider Adyen</summary>
|
10 |
<description>Magento Plugin for Payment Service Provider Adyen. The plugin supports the Magento Community and Enterprise edition. Inhouse support on magento@adyen.com as well available through GitHub on https://github.com/adyenpayments/magento</description>
|
11 |
+
<notes>Adyen Payment 2.5.0
|
12 |

|
13 |
See release note: 
|
14 |
+
https://github.com/Adyen/magento/releases/tag/2.5.0</notes>
|
15 |
<authors><author><name>Adyen</name><user>adyen</user><email>magento@adyen.com</email></author></authors>
|
16 |
+
<date>2016-01-08</date>
|
17 |
+
<time>10:18:02</time>
|
18 |
+
<contents><target name="magecommunity"><dir name="Adyen"><dir name="Payment"><dir name="Block"><dir name="Adminhtml"><dir name="Adyen"><dir name="Event"><dir name="Queue"><file name="Grid.php" hash="8638667d1d6a85f72341a839d00bcc19"/></dir><file name="Queue.php" hash="d9d4d4113656ba4d6c97cf8e4c52b903"/></dir></dir><dir name="Form"><dir name="Field"><file name="Installments.php" hash="e73b36349ac2ac5f9687cd5ce5958e53"/></dir></dir><dir name="Sales"><dir name="Billing"><dir name="Agreement"><file name="Grid.php" hash="c2e77faf071a3574af94ff68cf3d1504"/></dir></dir><dir name="Order"><dir name="Creditmemo"><file name="Totals.php" hash="1460f2048e15c0d08405c00e68653a47"/></dir><dir name="Filter"><file name="Adyen.php" hash="f0428953d0ffb335d0d4a1362500ec2e"/></dir><dir name="Invoice"><file name="Totals.php" hash="40f4258c2e79e25bd38abb8ed7a0a778"/></dir><dir name="Renderer"><file name="Adyen.php" hash="187f435758aaf4d484c7c7a6ed1678b5"/></dir><file name="Totals.php" hash="e56db3fa837b78c3fa79851a82bac575"/></dir></dir><dir name="System"><dir name="Config"><dir name="Fieldset"><file name="Expanded.php" hash="f66a1b3d4e0694536fc218c88119ef9a"/><file name="Fieldset.php" hash="d7c4f30338386632f7a83ae489d45a11"/><file name="Gettingstarted.php" hash="de64d67420b16a2d6b3df211404c64ce"/><file name="Method.php" hash="6fe238b70c25c1f8f4ba6f12a53962b9"/><file name="Payment.php" hash="1976ae2cccf9cbd106ff369625d5120b"/></dir><file name="HppPaymentMethodFee.php" hash="4d27e8d3b7f694c599ec2800f093d326"/><file name="TestWebserverConfiguration.php" hash="077e2befacb92e0eb9e5344fd3e0c4a5"/></dir></dir><file name="Version.php" hash="8ae6d538b9616499eb898579bef4abaa"/></dir><dir name="Checkout"><file name="Success.php" hash="b9df579840feb9a3579d563daa61425b"/></dir><file name="Failure.php" hash="ead96fee55fba2cbb5044f09566e85e4"/><dir name="Form"><file name="Abstract.php" hash="0e0bfa5b88007c733d34aee307e0163d"/><file name="Boleto.php" hash="a38cfc7a4f87f487010ba17e3f56cd6c"/><file name="Cash.php" hash="9e002a75111dced6b0faee374676ed85"/><file name="Cc.php" hash="5a70cd72d0e7f7ab3a103d48bfa3c631"/><file name="Elv.php" hash="17869926d968d14f79b5b8a057332634"/><file name="Hpp.php" hash="c3826522312ceb2c350e3a4dc6bb44f7"/><file name="Ideal.php" hash="1c8eff8a808d286b222788c8a2660683"/><file name="Oneclick.php" hash="5ebb577197b60a530098d626d5db15ae"/><file name="Openinvoice.php" hash="f6a93b41cc84a3c69449850cdcde37c7"/><file name="PayByMail.php" hash="251095b5bbe53c4453980afd198e3c10"/><file name="Pos.php" hash="11dff1727f935f2a4871a59e4a5bf9eb"/><file name="Sepa.php" hash="0588eedb4847894302e04b2425ab86ec"/></dir><file name="Form.php" hash="77d0589a32cb816dcdc6df16c98f2cd6"/><dir name="Info"><file name="Boleto.php" hash="6068acbb3d3dec90a797390871150956"/><file name="Cash.php" hash="41a920940198d51029ad9cad8f6b6b00"/><file name="Cc.php" hash="11dfe3d43bb6a8d89bb1746c8c2f6415"/><file name="Elv.php" hash="09a10412250e2bed303a189cfb216254"/><file name="Hpp.php" hash="bce3945267dac13f4fd9c9fd1400d11c"/><file name="Oneclick.php" hash="b0fb295f9a0572f92f0a1dc7108b9e8a"/><file name="Openinvoice.php" hash="1e99e4ab3ef75a9fa27626bd946b0407"/><file name="PayByMail.php" hash="3fa120141efed3f402aacf75f80432b4"/><file name="Pos.php" hash="8a6be4f35d43dc7791b9741cfb05b8a5"/><file name="Sepa.php" hash="6ede5edccfa2ca2619edac446edb0bf2"/></dir><file name="PosExpressCheckout.php" hash="ee5348fb15ead9b2adb7c1ebd8b1b4df"/><file name="Redirect.php" hash="cded7132875e3cb7b4cda466cae16a80"/><dir name="Sales"><dir name="Order"><file name="Totals.php" hash="0a566f422191f5e365cc7a1811c00c20"/></dir></dir><file name="SavedCards.php" hash="3fe47b88678d0c30aa3fc6b2b9592eae"/><file name="ScanProduct.php" hash="31c08b14b9e17a8f065b7d553470d518"/></dir><file name="Exception.php" hash="12f0dec6c5af13ac06cee3f9dca1ad62"/><dir name="Helper"><dir name="Billing"><file name="Agreement.php" hash="4df6f2936380229b80c97c70e4140d24"/></dir><file name="Data.php" hash="1f425d9cf6dc02fc5e7ba67fc28a4707"/><file name="Installments.php" hash="6bfc01af88a457be9f444aade1fd5e1d"/><dir name="Payment"><file name="Data.php" hash="a8145365557c486c73100740d6218414"/></dir><file name="Pci.php" hash="36f805e1f222973f48bb68623664e716"/></dir><dir name="Model"><dir name="Adyen"><file name="Abstract.php" hash="d6c4355410b4499166886e75b8957cb5"/><file name="Boleto.php" hash="3aeb9b3ef94b2dc22b62165fc94411e8"/><file name="Cash.php" hash="0ac9af55b6d62b9dcead5398b2916e44"/><file name="Cc.php" hash="5fc3bad33ef3692005de3d0395fd524f"/><dir name="Data"><file name="Abstract.php" hash="90c19c5a7d79c1a53f85b77728ffc318"/><file name="AdditionalData.php" hash="e4d038a60ac548e0938f75a0452d5717"/><file name="AdditionalDataKVPair.php" hash="cc2e0ba6733ef5139f44ba7c9af303dc"/><file name="Address.php" hash="1ebe7211a9ada35e346d50a43e4d1045"/><file name="Amount.php" hash="73540706cac2c2eef0252615d6200511"/><file name="BankAccount.php" hash="89124b1a311269d878e88acd56391afc"/><file name="BillingAddress.php" hash="05d2568acb382d242635b7fbfef26afe"/><file name="BrowserInfo.php" hash="bd1cca3cc27aea7fad85661c7132e2cd"/><file name="Card.php" hash="ea384e9c2032ba7ad5925edfb434625f"/><file name="Classmap.php" hash="af55e8a6b21d4dab53446ac887636fca"/><file name="DeliveryAddress.php" hash="8a97c0555842c9f8108a202125e48724"/><file name="Elv.php" hash="6608688d03b047387a2b28be10c47b87"/><file name="Installments.php" hash="ab285677d94614d631b927b427268eff"/><file name="InvoiceLine.php" hash="2013af2bbae2b07df4db34b4d8565796"/><file name="InvoiceRow.php" hash="caa2f530ea8a2100fee55f9d16fa8235"/><file name="ModificationRequest.php" hash="14240a6cbc31ffed7ea7e052e20aed57"/><file name="ModificationResult.php" hash="eec37eba3849baa4ad52b194e31ac362"/><file name="NotificationClassmap.php" hash="3baf762708dcc9203cd70244124f30cf"/><file name="NotificationRequest.php" hash="4647bfc558308e8f7795ae97fbf2c066"/><file name="NotificationRequestItem.php" hash="ef0794de69076f4accc5035b3f659808"/><file name="OpenInvoiceDetailResult.php" hash="68391a7b4b2a460967ec0018a2300396"/><file name="PaymentRequest.php" hash="52c91dd5e628d7446fa69c18adc38b00"/><file name="PaymentRequest3d.php" hash="9db425c9bb6cf15498995afeb779a615"/><file name="Recurring.php" hash="ae069455222f0315c2eaee6cdf84f461"/><file name="RecurringRequest.php" hash="aed77050f296df4f48c88038ef3ac547"/><dir name="Server"><file name="Notification.php" hash="51ed88aa2c2035e4cb7b4e992e7c8e4a"/><file name="Openinvoice.php" hash="d94166e3c8337e213061655ab7e48e68"/></dir><file name="ShopperName.php" hash="91bfea9ade01d29fa9053de87ce01560"/></dir><file name="Debug.php" hash="8044ccae24d83db38d9430cf125ada83"/><file name="Dummy.php" hash="a72ccc6e8c5268cf6786db289de4e3d9"/><file name="Elv.php" hash="4dec774fe32ba88fe0c691f813c2a09e"/><file name="Hpp.php" hash="5d62f652cad93bd860d54c1e8fc88a1f"/><file name="Ideal.php" hash="6553fee775bc9c5f80fd7251b6173786"/><file name="Oneclick.php" hash="2283f22a6a6faacc37a7888918ead060"/><file name="Openinvoice.php" hash="a484140a95bcfecf7bd583241343aabf"/><file name="PayByMail.php" hash="482ec3c804773831a6a06a6f4720c9b5"/><file name="Pos.php" hash="85fe66c381be3d63db61e76760ba0a4f"/><file name="Sepa.php" hash="660d590f152171076194f86ab9e9626a"/><file name="Shared.php" hash="7f3fe961a7107b6fb5625a9efe7854fd"/><file name=".DS_Store" hash="d179556f904a5601ccd01a54743c155f"/></dir><file name="Api.php" hash="f739379a164c1a4e0c0553423ebeb295"/><file name="Authenticate.php" hash="ed5dcfae45132082a875f2ea1089b7bd"/><dir name="Billing"><dir name="Agreement"><file name="Observer.php" hash="effb891f3d00e25b28f773e3ecf2def2"/></dir><file name="Agreement.php" hash="67801cbba1740b6e5a502229102ff6c8"/></dir><file name="Cronjob.php" hash="3ac1281412e534468267e0ffc454c4a6"/><dir name="Event"><file name="Queue.php" hash="3f17b99a54cf5d910c3320e7a38d0ea3"/></dir><file name="Event.php" hash="632bfefbb6c2edab79d2be1b082a69bf"/><file name="GetPosOrderStatus.php" hash="c39d37aa3689ddf649167afdd3fd7db9"/><file name="Observer.php" hash="472170f1d2cc65ce42d0fa0f80134344"/><file name="Process.php" hash="fdbbfc7b61222edefcf81af81a12d0f4"/><file name="ProcessNotification.php" hash="f3f8309fddb687e1e2fa6f63e28636c8"/><file name="ProcessPosResult.php" hash="6630a1ed1d4a81996a7f3714d6ee6990"/><dir name="Resource"><dir name="Adyen"><dir name="Debug"><file name="Collection.php" hash="17ac8dbcf67d0df518ef2d94c3206fd5"/></dir><file name="Debug.php" hash="d1de3e55152ab586971d08950ced8faa"/><dir name="Event"><file name="Collection.php" hash="33b8b85c9c7b3d2428e9b23a9e7e0c72"/></dir><file name="Event.php" hash="4f398e0de5b8a2a9ec5f87480e13da67"/></dir><dir name="Billing"><dir name="Agreement"><file name="Collection.php" hash="d5d31eed3999e2775b3cc861cd3a8e45"/></dir><file name="Agreement.php" hash="5a269b1255f103c7b81621ee3d39fa97"/></dir><dir name="Event"><dir name="Queue"><file name="Collection.php" hash="9dffd9015dfa7cd8498e5961f9ab66f3"/></dir><file name="Queue.php" hash="b8a4c3ed5adaaacf8b6192d05937e390"/></dir><file name="Order.php" hash="32950fec5760e2e7f167af451e313129"/><file name="Setup.php" hash="4e2258146a321cad436984ca223a9e5b"/></dir><dir name="Sales"><dir name="Quote"><dir name="Address"><dir name="Total"><file name="PaymentFee.php" hash="b0d4cb5adbff8e881bb28df7cd486b37"/><file name="PaymentInstallmentFee.php" hash="da284541372973799ea956771799cb72"/></dir></dir></dir></dir><dir name="Source"><file name="BoletoType.php" hash="1a31476c4ebfdb6b16a1dd3a26015fb1"/><file name="CancelModes.php" hash="b18c30b103cdce97af41e63ef0a25a92"/><file name="CancelRedirect.php" hash="f71a598d56641cc5550812abd7f3d9b7"/><file name="CaptureModes.php" hash="1ad7052016b75000de9950d55edb235d"/><file name="CcType.php" hash="a27d98867f6c9d9245c242919a869ed6"/><file name="DemoModes.php" hash="4e3ce8113a9c78f6403861f5661f585e"/><file name="OpeninvoiceType.php" hash="c39389388338dfe0b85b10a1e9b828cb"/><file name="PayPalCaptureModes.php" hash="20da86d8d4fd60abe2b3a307e12ada24"/><file name="PaymentAction.php" hash="23224178cf58e55c308234036f629bf7"/><file name="PaymentRoutines.php" hash="7aa5525e67554ad35226cf1aaa802c49"/><file name="RecurringPaymentType.php" hash="3b137f547356d8336c3e12fb936d1a86"/><file name="RecurringType.php" hash="2a3c60c4546d9c02c842a9ea0a5ade26"/><file name="Rendermode.php" hash="66be793f4d23896dbe194ec205f51718"/><file name="SepaFlow.php" hash="8a3ce7224b1878c7fb674114b688eb03"/><dir name="Status"><file name="Complete.php" hash="1580706a7d28010ed5acc678f549df73"/><file name="Pending.php" hash="53e624a2a6b76b4e6dee7f4eece245b1"/><file name="Refund.php" hash="632e0fc0b625e85716347d21b0f585be"/></dir><file name="VisibleType.php" hash="ecc88ad246d8e52316d53f879d615803"/></dir><dir name="System"><dir name="Config"><dir name="Backend"><file name="Installments.php" hash="6c3b60719edb83eaaad1515514dab620"/><file name="Trim.php" hash="14c812083757b32cbf699bb0df54f394"/></dir></dir></dir><dir name="Total"><dir name="PaymentFee"><file name="Creditmemo.php" hash="738f7b84586d51cd875011d6b31dfd3e"/><file name="Invoice.php" hash="8aa607b99f709a5eee9b76675e2d5ada"/></dir><dir name="PaymentInstallmentFee"><file name="Creditmemo.php" hash="b40551c179c19ccea7be11a5edf6be4c"/><file name="Invoice.php" hash="5f4563813511aff2eafb98cf4943d817"/></dir></dir><file name="ValidateResultUrl.php" hash="b8253b22b7ef257dce442fe78e795210"/><file name=".DS_Store" hash="286b9ee8ade7883fb60d91c7d0c64900"/></dir><dir name="controllers"><dir name="Adminhtml"><dir name="Adyen"><dir name="Event"><file name="QueueController.php" hash="5a97879d5c8208d78281c205ba3891d6"/></dir></dir><file name="ExportAdyenSettingsController.php" hash="dd6a859865967b0b462be96a0a2295fd"/><file name="ValidateWebserverSettingsController.php" hash="d121f82efd3ddb01e9f979e12658cb65"/></dir><file name="CheckoutCashController.php" hash="33c9f26d8fa0260ec9daccea3638c609"/><file name="CheckoutPosController.php" hash="59a14c7e7e916ab79304551072b574bb"/><file name="GetInstallmentsController.php" hash="e8401d9b5dd01efc8f6ea535087963bd"/><file name="ProcessController.php" hash="aafbda295b18b592336b1ded936ee1b1"/><file name="SavedCardController.php" hash="db57de304ee0cccc9bbec470ec27398a"/><file name="UpdateCartController.php" hash="8c41af95bb64352f7dd4024f9d210e77"/></dir><dir name="data"><dir name="adyen_setup"><file name="data-upgrade-2.1.2.3-2.1.2.4.php" hash="8262bf4038ba435fe15bd08c36814936"/><file name="data-upgrade-2.4.0-2.4.0.1.php" hash="159b832b95479ef27124b95f77fdd2ab"/></dir></dir><dir name="docs"><dir name="httpauthentication"><file name="cgihtaccess.patch" hash="b1ca6c18002d1c22f53c8dd55aee1845"/><file name="howto" hash="31677f6b34fca607f8751c9eb5bdcac2"/></dir><file name="readme" hash="aae2884b18ed35ab74c7e73f4baec6e3"/><file name="test-cards" hash="d7a4a41bc2bb17f74dcbcfbc41156675"/><dir name="translation"><file name="Adyen_Payment.csv" hash="0094e6a70aca120e94cc395f139f1687"/><file name="Mage_Checkout.csv" hash="7d3bcce1ce01d189d113d02b949b73ca"/><file name="howto" hash="00a8a321b06b7235c6e6ca39cfcef80f"/></dir><file name=".DS_Store" hash="cbdf8e79d5e282650b9b7136c3b9ad33"/></dir><dir name="etc"><file name="Notification.wsdl" hash="cbba67067d372790e91225b4049c7e0d"/><file name="Payment.wsdl" hash="4190412f599a3eac827d7ed0931754da"/><file name="adminhtml.xml" hash="77f449af89755295ba515ea52dfda649"/><file name="config.xml" hash="fb2d3c66d4570b5cd43444efce2b04f7"/><file name="system.xml" hash="4fe754f67b842b3dc1b2bbea600d665a"/></dir><dir name="sql"><dir name="adyen_setup"><file name="mysql4-install-0.0.1.php" hash="668e04511f498a97c29b4386055cb78e"/><file name="mysql4-upgrade-0.0.1-0.0.2.php" hash="ef6d899eac5abc4d359074498168aef7"/><file name="mysql4-upgrade-0.0.7-0.0.8.php" hash="b4bb110ba7f92ae542c39471d3f7198f"/><file name="mysql4-upgrade-0.0.8-0.0.9.php" hash="c72653047e7c2ea03f8b8c4bd095389a"/><file name="mysql4-upgrade-0.1.0.3-0.1.0.4.php" hash="e167964ff1156ff52b48cef5f45c0cd2"/><file name="mysql4-upgrade-0.1.0.8-0.1.0.9.php" hash="5fbf7b5fc6389115c5a3cf33d091227a"/><file name="mysql4-upgrade-0.1.0.9-0.1.0.10.php" hash="4eb123db99f8e42892cc8ea16a4ef54e"/><file name="mysql4-upgrade-1.0.0.3-1.0.0.7.php" hash="5fb0644cd6e55968f8922da5bffb23de"/><file name="mysql4-upgrade-2.0.3-2.1.0.php" hash="7f1f5240dbdd1fb37a23e16e41f5b477"/><file name="mysql4-upgrade-2.1.1-2.1.2.1.php" hash="5eea3604936ce4a041fccc9f0e0d159d"/><file name="mysql4-upgrade-2.1.2.1-2.1.2.2.php" hash="0cb4fa513156161c01b906ad3ad322ba"/><file name="mysql4-upgrade-2.1.2.2-2.1.2.3.php" hash="4c681a679ab8afa8fc145d0ecf242278"/><file name="mysql4-upgrade-2.2.0-2.2.0.1.php" hash="993470ec16fe56b3cd0024f3fb718e9b"/><file name="mysql4-upgrade-2.2.2-2.2.2.1.php" hash="c2353636858c03e61e782c7d809bbab5"/><file name="mysql4-upgrade-2.3.0-2.3.0.1.php" hash="292d256967fceedea3250c8084839ec1"/><file name="mysql4-upgrade-2.3.1.1-2.3.1.2.php" hash="7dec357d5794c114fbed759e768040bd"/></dir></dir><file name=".DS_Store" hash="8a387d0ed76f7cabfbc3331dd1caead3"/></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="adyen.xml" hash="13a83190deeac514b06f70a83794708e"/></dir><dir name="template"><dir name="adyen"><dir name="form"><file name="boleto.phtml" hash="83c7bc35d037f426aa75c0719e8adb86"/><file name="cc.phtml" hash="6dc0219c76cd9849940247bcfce8cd99"/><file name="elv.phtml" hash="4d370d2d737f0a42ebcb33e7151ecee6"/><file name="hpp.phtml" hash="37215ae3782ea83b05afa6fef361e3bf"/><file name="oneclick.phtml" hash="83b4dde8e30b8bcca800b8f9a2995eca"/><file name="openinvoice.phtml" hash="33127af4713430e153cccbe8684fab13"/><file name="pos.phtml" hash="c07c11d348fced7d889ded4fc77e3363"/><file name="sepa.phtml" hash="3e7f2bbb445a9cff8794ce35a1c0941a"/></dir><dir name="info"><file name="boleto.phtml" hash="78f08b7f59ff049f189d61758b7abced"/><file name="cc.phtml" hash="608567b02456894e5b1dbaa2484a9380"/><file name="elv.phtml" hash="bda2d4870da5a283d9561b66b76e8114"/><file name="hpp.phtml" hash="9a9466f19178acbf2ac01c4192f283a2"/><file name="openinvoice.phtml" hash="86fecfa81c87af7464f38f43c7db9be6"/><file name="pay_by_mail.phtml" hash="617bf20851918b200a4a980a68908162"/><file name="pos.phtml" hash="dfef416dc70f315bf9904dafce4f19d6"/><file name="sepa.phtml" hash="ca2a1b25f4652e9411ae6ff8b2a0f04e"/></dir><dir name="pdf"><file name="boleto.phtml" hash="50853749a944124f076d129fd5e6cfa9"/><file name="cc.phtml" hash="ecc91b3df7776b2c2a6dc4a52d1892d2"/><file name="elv.phtml" hash="50853749a944124f076d129fd5e6cfa9"/><file name="hpp.phtml" hash="4cdb4f7c88b6556fc847c21d5d4b7ffb"/><file name="openinvoice.phtml" hash="742b87babbb612032d68a8e79d31e89c"/><file name="pos.phtml" hash="a3dc27a6607b4978c93b21d945661e5c"/></dir><dir name="system"><dir name="config"><file name="test_webserver_configuration.phtml" hash="37a164e5cd04d1acf1788530464c2f0d"/></dir></dir><file name=".DS_Store" hash="194577a7e20bdcc7afbb718f502c134c"/></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="template"><dir name="adyen"><dir name="checkout"><file name="success.phtml" hash="4c06b168acd8971e20a7c8d1205c264b"/><file name=".DS_Store" hash="21ecd78ea5715d7392b2d8a533c6630a"/></dir><dir name="form"><file name="boleto.phtml" hash="309a0152cd5219e2c22da4270307222c"/><file name="cc.phtml" hash="280e00a99e4f624802b783be55b2f16a"/><file name="elv.phtml" hash="789610e3d1f8973f6aecb4ef119a59c9"/><file name="hpp.phtml" hash="5e2f2ed4fb91dec2d62a0311a21415e0"/><file name="ideal.phtml" hash="212145dd528c084866a441f3bf1b7c11"/><file name="oneclick.phtml" hash="5a41066b1452fdc7266b0ef6224c0ae3"/><file name="openinvoice.phtml" hash="659c5385af90f70f910d1f3605a0613b"/><file name="pos.phtml" hash="07cbc4b9dbbe63849599dbfd4339cd44"/><file name="sepa.phtml" hash="d4ab9b8e8d22d7b9e48739ecbdcbc2de"/></dir><dir name="info"><file name="boleto.phtml" hash="c526f9c4badab3afaa771872bb4687f1"/><file name="cc.phtml" hash="bddf7526385423c2b114b73930b2e475"/><file name="elv.phtml" hash="8b850e97ea84e1de5ead4ec487c4356f"/><file name="hpp.phtml" hash="8999dfee0c638f44b5010779b8bbf711"/><file name="openinvoice.phtml" hash="2bcd711e1255923d53f353819e19529e"/><file name="pay_by_mail.phtml" hash="dfec526ca747a5d99749b5a678fe51c5"/><file name="pos.phtml" hash="9b917920aa1cc77c9e8c3a26943b1335"/><file name="sepa.phtml" hash="c886a3d9923c3ade6ca5056f18c1b856"/></dir><dir name="payment"><file name="payment_method_label.phtml" hash="256b943044431874fbaea43760544fcc"/></dir><file name="pos_express_checkout.phtml" hash="9dbbc2237dfda2c735bfb853a5f20efd"/><file name="saved_cards.phtml" hash="b0ff50d615273804c0f6fef55ce31cf9"/><file name="scan_product.phtml" hash="52debaeda87ba10822de566380c06c56"/><file name=".DS_Store" hash="ab6d0ae72b40033c9fed5850d3f5d499"/></dir></dir><dir name="layout"><file name="adyen.xml" hash="89f26f2f2778d7e73ab597207bc59831"/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Adyen_Payment.xml" hash="e4d297a9b401c4548acb47aea1ae41d9"/></dir></target><target name="magelocale"><dir><dir name="de_DE"><file name="Adyen_Payment.csv" hash="234e273815241c088c366ab47da8bba1"/></dir><dir name="es_ES"><file name="Adyen_Payment.csv" hash="04710d9f43bf96254381c148007b1b79"/></dir><dir name="fr_FR"><file name="Adyen_Payment.csv" hash="1ac7b18d6f50ae14624693f396511340"/></dir><dir name="nl_NL"><file name="Adyen_Payment.csv" hash="06eaf9a8fbb47744c244a1e31b354e9e"/></dir><dir name="pt_BR"><file name="Adyen_Payment.csv" hash="5fd4c905a217d795d5e3d39f8d945d2b"/></dir></dir></target><target name="mageskin"><dir name="frontend"><dir name="base"><dir name="default"><dir name="images"><dir name="adyen"><file name="ABNAMRO.png" hash="a621e7f4cf1c3340ac5147fef5544bfe"/><file name="ABNAMRO.xcf" hash="eac24c953dcf05d40ce928ccab2af90f"/><file name="ASNBANK.png" hash="13034bc0836590cfb0ec7b6c3076e435"/><file name="FORTIS.png" hash="3b68fa26a90f8cd44e2f8dfcb5f72fe8"/><file name="FRIESLANDBANK.png" hash="c1388a9b8a170260b0b72da9b2cd2dbf"/><file name="ING.png" hash="b08f829cf67322875ca12d5fc36ac191"/><file name="KNAB.png" hash="4df678f84bdf11db9b75d1e539a0367c"/><file name="POSTBANK.png" hash="ea0ffd9d3e9717fe0bdc160d8cd92482"/><file name="RABOBANK.png" hash="f09418ebbd0d6daf21786d5bde93e856"/><file name="REGIOBANK.png" hash="0c3a984ce817e4d3ec98549be7704712"/><file name="SNSBANK.png" hash="75f988e3ab935d6d509a86f82422f474"/><file name="SNSREGIOBANK.png" hash="34a70ac0e1e0a8cfb56c77a5b1da3c80"/><file name="TESTISSUER.png" hash="0110aadd0f619b39f357b98b63e3ff69"/><file name="TESTISSUER10.png" hash="b2462fe98e69d211e92771ae75f48552"/><file name="TESTISSUER2.png" hash="471cc38e61077fdaba8fd868fea22dfe"/><file name="TESTISSUER3.png" hash="4ca46be0b7607dc95caccb5ec974e0a8"/><file name="TESTISSUER4.png" hash="6e31a3d3e73390432a84e394a1937c5d"/><file name="TESTISSUER5.png" hash="78b758fef66f220e79b1b9ecda8851d2"/><file name="TESTISSUER6.png" hash="4aefac8baaa06592c8a80f085c0ade08"/><file name="TESTISSUER7.png" hash="0474b1a3264ef45068013747a27158d2"/><file name="TESTISSUER8.png" hash="5e655c4af04b417acecac6fd66623662"/><file name="TESTISSUER9.png" hash="6e378c3b7c75febd0be361ec39c55e45"/><file name="TESTISSUERCANCELLED.png" hash="c794eeb78ef618c3e9dcd8b444b7b23f"/><file name="TESTISSUERPENDING.png" hash="04ee87a5c35a491e624719a3c885d492"/><file name="TESTISSUERREFUSED.png" hash="2f7e2bad6857f39f32afd09eb846e55a"/><file name="TRIODOSBANK.png" hash="922b1fcd51306e0d0da6b15ebe640d8c"/><file name="VANLANSCHOTBANKIERS.png" hash="0a5d713a5c73c54e90507743456c5657"/><file name="achcolombia.png" hash="1f1339c682440cfd7584f9ba00f59722"/><file name="achcolombia_small.png" hash="d6b2899a0039de82788c831b00dd1533"/><file name="achcolombia_small_grey.png" hash="bcae575368bdcdb582423e28ac7a56e9"/><file name="achcolombia_tiny.png" hash="a287c57b8bcc821371758da895db6437"/><file name="advance_payment.png" hash="5aba603621b4b21cc05b7eae1f7455da"/><file name="adyen_logo_large.png" hash="70726ef290d0eee3ed163eb751091813"/><file name="ae_small.png" hash="6ce7c9a2b330c9c46f0213c40db55683"/><file name="afterpay_default.png" hash="a62e3982d50612522be071d4e86eaa6a"/><file name="alipay.png" hash="e3773ada96577e575c9e1300a89a5875"/><file name="alipay_small.png" hash="f9848d15fc7ee22b6687ccdbe7f36a16"/><file name="alipay_small_grey.png" hash="e5ffe7ff272ce2814b7808fd047a9c6b"/><file name="alipay_tiny.png" hash="1a7867dd958ddcdd90ad2400e5be23de"/><file name="alipay_wap.png" hash="e3773ada96577e575c9e1300a89a5875"/><file name="alipay_wap_small.png" hash="f9848d15fc7ee22b6687ccdbe7f36a16"/><file name="amex.png" hash="8e3b962f9ef18e08cf16b77934607d28"/><file name="amex_small.png" hash="6ce7c9a2b330c9c46f0213c40db55683"/><file name="amex_small_grey.png" hash="0f6aabd8dfcbf48dbb555b9191d7795e"/><file name="amex_tiny.png" hash="b7016f4efb163c985d6f1d99a8433d2a"/><file name="asiapay.png" hash="44626dc317e547fb40010498c1096407"/><file name="asiapay_small.png" hash="cca4d86b5abc510f20ca9563d7215c3d"/><file name="asiapay_small_grey.png" hash="00e20b2b2eb0d2ad51c15d8ccc558dc5"/><file name="asiapay_tiny.png" hash="ba0d613d94a64918c0338504fed20ee7"/><file name="autopay.png" hash="4251763c71239e7b1b421e4bc7f5b70a"/><file name="autopay_small.png" hash="ca6941b80b6157bae2411b5620149d2d"/><file name="autopay_small_grey.png" hash="f69d143b4f1fc16a9138ccfacec808a4"/><file name="autopay_tiny.png" hash="4c0c91402daafc63bdb5979dbbd963db"/><file name="babygiftcard.png" hash="91bcbb6604b26565b89898c9a8e1e117"/><file name="babygiftcard_small.png" hash="2558bbdd4d9528b37ba93a8c4af536a4"/><file name="babygiftcard_tiny.png" hash="393a192fab9874e3b167c3bc5d568db7"/><file name="baloto.png" hash="1c172c628f79837c83196b243c636ff5"/><file name="baloto_small.png" hash="c66db84ac7fed6f81010e8058fa39a74"/><file name="baloto_small_grey.png" hash="bdc5eac76e02a658b348a0722fca9ba9"/><file name="baloto_tiny.png" hash="5e10ee14c8a44c3b4c28571664fa045f"/><file name="bancnet.png" hash="a2b687ef27244e448b85635cc1d3ec60"/><file name="bancnet_small.png" hash="4473bc16badc29200ffd09021778b1e3"/><file name="bancnet_small_grey.png" hash="6b108ea906b6d6a5ad51e4de6db732eb"/><file name="bancnet_tiny.png" hash="0ac28b35fd4e09954debcd2eb42e89ce"/><file name="bank24.png" hash="9a921572d6bae73604e1122ec3e5bf7e"/><file name="bankTransfer_AE.png" hash="a6f29729723fa65c732ffc9267b3f8be"/><file name="bankTransfer_AE_small.png" hash="a3322805ab1c40c4e6237943185284ab"/><file name="bankTransfer_AE_tiny.png" hash="dfcf50c97c3b832fd3c17efb2864335c"/><file name="bankTransfer_AT.png" hash="7fa4204d1426a64a4cd26af06af44d41"/><file name="bankTransfer_AT_small.png" hash="31037dcf034d1e9d28254d1962b2ca16"/><file name="bankTransfer_AT_tiny.png" hash="4ee9964118e05d2a81335f3033ec5bf1"/><file name="bankTransfer_AU.png" hash="05716c67579fcf3574037ce69c9e4229"/><file name="bankTransfer_AU_small.png" hash="acd23b8e3ccf3c9d28960fde63c22e85"/><file name="bankTransfer_AU_tiny.png" hash="4a3ee62afdac23a00a0675c763e93470"/><file name="bankTransfer_BE.png" hash="5547426f07e0562ba9b605f1f04a9ad7"/><file name="bankTransfer_BE_small.png" hash="007dbd9f27115b601eb94db09a10b8f3"/><file name="bankTransfer_BE_tiny.png" hash="cf0285a691339efad52d82d40c7aa9f1"/><file name="bankTransfer_BG.png" hash="be209415f5bec0a45bd2bd9cd3c41d0a"/><file name="bankTransfer_BG_small.png" hash="6249144aa579c494988b5bbecb22eb69"/><file name="bankTransfer_BG_tiny.png" hash="7c11956844dbf7cc76db038b32fc7ab1"/><file name="bankTransfer_CH.png" hash="9b20d62386085ac2c9da1227abec5d58"/><file name="bankTransfer_CH_small.png" hash="2887bcf97901ed7ed6bc4fb5d8a00876"/><file name="bankTransfer_CH_tiny.png" hash="c0218d075bbb503689f40007a331ba85"/><file name="bankTransfer_CZ.png" hash="78f7aac275e10af77b3bbab28ba1aa23"/><file name="bankTransfer_CZ_small.png" hash="7bf17799b64aa618945981eb7fa00cce"/><file name="bankTransfer_CZ_tiny.png" hash="7f2a7e2fde701bff21fa388776e73632"/><file name="bankTransfer_DE.png" hash="989d5e1cc2547504b0fbc7aa88e08713"/><file name="bankTransfer_DE_small.png" hash="fb50048c4acfdebf85c4c8f90d8b08d9"/><file name="bankTransfer_DE_small.xcf" hash="cfbc9a47bc116e97a121771c0aa6fe83"/><file name="bankTransfer_DE_tiny.png" hash="d4d68f1068df68f61cb828005c9c0ac9"/><file name="bankTransfer_DK.png" hash="a2e9a409144a8ef18747faafa2937609"/><file name="bankTransfer_DK_small.png" hash="71e75c357b475fe236b633ac8a2a76cd"/><file name="bankTransfer_DK_tiny.png" hash="0103bbe5b8a803aad990bd4ad53c88c0"/><file name="bankTransfer_EE.png" hash="9caa3e1ac3558e9ec372c45df045bae6"/><file name="bankTransfer_EE_small.png" hash="91ffe550444bac13ac29ac1696ffdfac"/><file name="bankTransfer_EE_tiny.png" hash="59ea293d7ba58cd6dd9a9a2b43088093"/><file name="bankTransfer_ES.png" hash="7d0051c7ee32eddca94b89368bb5afbe"/><file name="bankTransfer_ES_small.png" hash="2dc1519510ef7bea726e0bca70859c06"/><file name="bankTransfer_ES_tiny.png" hash="a2338a0d60b2585ac34269daf794d189"/><file name="bankTransfer_FI.png" hash="ffbe8dfa936a4628e3c029bd957f367d"/><file name="bankTransfer_FI_small.png" hash="1db5d45d947502483a2e8c40aab3734d"/><file name="bankTransfer_FI_tiny.png" hash="b9f26cef0fc7f051b6d79ada14c902ba"/><file name="bankTransfer_FR.png" hash="572f77cf0f22103300682c5f89e9d9e9"/><file name="bankTransfer_FR_small.png" hash="58a268c927e4d19858ed3241ceac05f8"/><file name="bankTransfer_FR_tiny.png" hash="dee4c0c47d94fb0e2ab032264c4d1543"/><file name="bankTransfer_GB.png" hash="5a7eee2f31bec7bf422425f31aea2d5a"/><file name="bankTransfer_GB_small.png" hash="17d3c0ca20cee2250e3b6d0f5f080ba9"/><file name="bankTransfer_GB_tiny.png" hash="24d7d3ce5dc62ef776f3f36f24ff78b1"/><file name="bankTransfer_GI.png" hash="e9035b335bd8dc809c7e4afc7d775cc0"/><file name="bankTransfer_GI_small.png" hash="e51bd2f8333a8d8b2163c777c5b12b48"/><file name="bankTransfer_GI_tiny.png" hash="d158401d4dd73a057adac68f3f23ad89"/><file name="bankTransfer_GR.png" hash="aefe60c85d74d77d1c1327538617f297"/><file name="bankTransfer_GR_small.png" hash="b9a0a5d6ec52c80d72d8e8cf903f37f3"/><file name="bankTransfer_GR_tiny.png" hash="1dc0912afd646785eade5d8785baa12c"/><file name="bankTransfer_IBAN.png" hash="f636fcae0c128e08baaef26dacaa078d"/><file name="bankTransfer_IBAN_small.png" hash="ffc0073f2fe405de05206cdfc1565daa"/><file name="bankTransfer_IBAN_tiny.png" hash="4a4f64cb62ca9cfec99d117d0169bb83"/><file name="bankTransfer_IE.png" hash="eb6efba5502d54571022feaef9a9ded3"/><file name="bankTransfer_IE_small.png" hash="d9359e8a2bf8c04d4d43acdcc8b30a5e"/><file name="bankTransfer_IE_tiny.png" hash="b3a0f75656b535960c362baaabc45ce3"/><file name="bankTransfer_IT.png" hash="cd56062b943e4ec6716bc72ebe4b62a9"/><file name="bankTransfer_IT_small.png" hash="29ac58a26ae12dc26dd2d501262ed361"/><file name="bankTransfer_IT_tiny.png" hash="c45892a3e2ae81bb9b4508d79164e556"/><file name="bankTransfer_JP.png" hash="20023e2e93afc881740ea74e89251d86"/><file name="bankTransfer_LU.png" hash="b3dbdeea3429de5280c3a6d911930e9a"/><file name="bankTransfer_LU_small.png" hash="ebb919c647653075be4d9bfaeec8c00c"/><file name="bankTransfer_LU_tiny.png" hash="ec058289aef35f481077c56cdf758032"/><file name="bankTransfer_MT.png" hash="8955bc706cf66307ba69e58d8006af2d"/><file name="bankTransfer_MT_small.png" hash="13ce68bbda83c39b8719d356705da6d2"/><file name="bankTransfer_MT_tiny.png" hash="b05aa11e844f09fa797a3540534e5155"/><file name="bankTransfer_NL.png" hash="ccffd7131f791f7eb44e21b42fd66cc4"/><file name="bankTransfer_NL_small.png" hash="90f18f3784ec4c4733891aafd2e83958"/><file name="bankTransfer_NL_small.xcf" hash="ac17edd9804089820e9d73c76441abfc"/><file name="bankTransfer_NL_tiny.png" hash="61e9d461381aa1fb7e9dbcc8012686e0"/><file name="bankTransfer_NO.png" hash="ffcb1204470ff94a7cf2025e000e4978"/><file name="bankTransfer_NO_small.png" hash="daab5aceaf8e4dd59dfcf29fa69cdc24"/><file name="bankTransfer_NO_tiny.png" hash="3fbbf9e381d8d0d9ada61a54778655cb"/><file name="bankTransfer_PL.png" hash="cd25fefef6bce86a97ab7242138360e2"/><file name="bankTransfer_PL_small.png" hash="880b17d7d090c7bd21965e9b78894851"/><file name="bankTransfer_PL_tiny.png" hash="9579393e3dbb3c2aeb7ebf35e54ef4e7"/><file name="bankTransfer_PT.png" hash="c3c652523d77b5d085da97111c96ef9e"/><file name="bankTransfer_PT_small.png" hash="9d3a979ef52298bcc1545b131bd4a3db"/><file name="bankTransfer_PT_tiny.png" hash="cf2be093140773d75d8993fab7aa347c"/><file name="bankTransfer_SE.png" hash="e5608461fa8bdbac771449f30cde91ec"/><file name="bankTransfer_SE_small.png" hash="0f57f6092f8bef25c9973a140a2d85ad"/><file name="bankTransfer_SE_tiny.png" hash="79f3a00608bf18d686d89562af80a72f"/><file name="bankTransfer_SK.png" hash="2390a923affb1640b1b8bb801ce04705"/><file name="bankTransfer_SK_small.png" hash="50adde906c3a965992bbfb04554a5371"/><file name="bankTransfer_SK_tiny.png" hash="d4866f13969214fd774ea1c427a048e6"/><file name="bankTransfer_US.png" hash="9013561099b618aa954f5a3e1352a6ce"/><file name="bankTransfer_US_small.png" hash="191e204c1216a199229da9d75ed1a2a5"/><file name="bankTransfer_US_tiny.png" hash="9d9e942b93d13a18e38aac0ee932fe15"/><file name="bank_ru.png" hash="2390a923affb1640b1b8bb801ce04705"/><file name="bank_ru_small.png" hash="01c263789dd7e38ac4078f55161ec19b"/><file name="bank_ru_tiny.png" hash="d4866f13969214fd774ea1c427a048e6"/><file name="barras.png" hash="389f5242e23cc5b386392d5d21459f21"/><file name="barras_small.png" hash="9e657657b963a1434e88d4289acf9448"/><file name="barras_small_grey.png" hash="d14dbd53e9a52706bf736525a90d8f63"/><file name="barras_tiny.png" hash="e46d37c7e69ef3722876a0205431f1c8"/><file name="bcmc.png" hash="28dca1b34022f2c653c13556c452fce3"/><file name="bcmc_small.png" hash="49698208e5b73f80773260c3fdb3e5a3"/><file name="bcmc_small_grey.png" hash="5069f14bff23c074af6fe2092a2e482a"/><file name="bcmc_tiny.png" hash="3b4221516dc0d1ace3432a473903991e"/><file name="beelinesms.png" hash="a559096cb240aaf7696be7563498b18b"/><file name="bijcard.png" hash="c93da8e22fac6869d729e961df24b593"/><file name="bijcard_small.png" hash="f188b92b77af1613a91c00450d3eb168"/><file name="bijcard_small_grey.png" hash="08eb4420ac9f7a7f691d688e9550f651"/><file name="bijcard_tiny.png" hash="b88eeed8f7318514f849e3ed3a9a2ce8"/><file name="bill99.png" hash="461213bcf10fb394ef524d3a0ad92ee0"/><file name="bill99_small.png" hash="d6e30f7d3da5ce34af3aa7e2353b4809"/><file name="bill99_small_grey.png" hash="a66c49f3556fa99301f4288341eaa014"/><file name="bill99_tiny.png" hash="d10dbbf6512e15252ad6d1337670a7fd"/><file name="boleto.png" hash="3968115c3576a14f7cdc8ebd98c8092e"/><file name="boletobancario_hsbc.png" hash="3968115c3576a14f7cdc8ebd98c8092e"/><file name="boletobancario_itau.png" hash="3968115c3576a14f7cdc8ebd98c8092e"/><file name="boletobancario_santander.png" hash="3968115c3576a14f7cdc8ebd98c8092e"/><file name="bradesco.png" hash="d5ae6f8cb39883cce8c97c0d11257a4c"/><file name="c_cash.png" hash="1b9d5b0c9ece2eaff0be71b4082e0655"/><file name="c_factuur.png" hash="cd46b7d11c9dd79b1cc9c073c0696aff"/><file name="c_factuur_small.png" hash="63d4c6fd1e5b214d018f3e00ca687cd5"/><file name="c_factuur_tiny.png" hash="153791c1eb5bae6095e1210787ffe4fa"/><file name="c_invoice.png" hash="cd46b7d11c9dd79b1cc9c073c0696aff"/><file name="c_invoice_small.png" hash="63d4c6fd1e5b214d018f3e00ca687cd5"/><file name="c_invoice_tiny.png" hash="153791c1eb5bae6095e1210787ffe4fa"/><file name="c_oprekening.png" hash="cd46b7d11c9dd79b1cc9c073c0696aff"/><file name="c_oprekening_small.png" hash="63d4c6fd1e5b214d018f3e00ca687cd5"/><file name="c_oprekening_tiny.png" hash="153791c1eb5bae6095e1210787ffe4fa"/><file name="c_paypal.png" hash="fe5fd0065e4a84e967095f082b329d7f"/><file name="c_paypal_small.png" hash="294698dab8f5aa31f2ad62702bd9d379"/><file name="c_rembours.png" hash="fb2da23375ce5ba67380dc0fb60e7669"/><file name="c_rembours_small.png" hash="0d0f244c1820921db3a6635552cf8129"/><file name="c_rembours_tiny.png" hash="c15d78de45389d475f2786fed3e81c4b"/><file name="card.png" hash="adfe3d9fe45c3f94b9edca852e2cb38c"/><file name="cartebancaire.png" hash="071cdf833242a50dda3394c3c2ed9433"/><file name="cashticket.png" hash="0dba12beffb7c5ebf47ae1e5701426f3"/><file name="cashticket_small.png" hash="ade5518971a871dd48b0628af6f6cf89"/><file name="cashticket_small_grey.png" hash="348c3721fbedfb2a7121f57db435f43e"/><file name="cashticket_tiny.png" hash="95248971eb69c150748b9acf27f68fb5"/><file name="cashticket_tiny2.png" hash="16ab15f5263fe81ab5233d02ce2cd715"/><file name="cashu.png" hash="1b6d79438ad686cdff44866a66445dca"/><file name="ccavenue.png" hash="aee563b4c9c77d8a881db1e79ad8758d"/><file name="ccavenue_small.png" hash="ffa7390808c679e8d6c580fcf14054fb"/><file name="ccavenue_small_grey.png" hash="9a6c58e88230fb6a167e597752a533ab"/><file name="ccavenue_tiny.png" hash="994d56725d095d107fb33c6f3abf7653"/><file name="cellpaypoint.png" hash="c676483390c0c7e932a320b6326593da"/><file name="cellpaypoint_small.png" hash="f720447e73325b922568a00d0effe75c"/><file name="cellpaypoint_small_grey.png" hash="c6deea99f2099ade43b2b75dcb62f273"/><file name="cellpaypoint_tiny.png" hash="5c00501360e94b3020ff54bccbc2e531"/><file name="ciberpay.png" hash="625d300997f331918e912dc266e1a3a4"/><file name="contact_ru.png" hash="5f70b79ee4232a81a9f7eb0224b0ba3c"/><file name="creditcard.png" hash="87a9f022a38f3e96981c420d6571381f"/><file name="creditcards.png" hash="cd1a83b970a38307c2899f9949495a00"/><file name="cup.png" hash="068dee300e2c12e58e9a47d3556e977c"/><file name="cup_small.png" hash="45d3b4e758237412b524a5c52418da67"/><file name="dankort.png" hash="aac4acc9e43e896973f36d3e7011a5af"/><file name="dc_small.png" hash="ecf5d635a74460ca9575bb7d6d8550dd"/><file name="di_small.png" hash="8573aebe4938afb288749badb22aa091"/><file name="dineromail.png" hash="9058ea237d278d5fd238c2d180807c57"/><file name="dineromail_ar_amex.gif" hash="4a94da8ec02c565e8cfcb66fbfffe362"/><file name="dineromail_ar_argencard.gif" hash="422ea3362cc44616f72a887f5cba66c6"/><file name="dineromail_ar_banktransfer.gif" hash="758e12e370a5b213996ea1f39259721a"/><file name="dineromail_ar_bapropago.gif" hash="df51325a4fae890a5a6673f92bb64f5d"/><file name="dineromail_ar_cabal.gif" hash="98f6cc5d54df43b4c4a17d9fc2dfb9bd"/><file name="dineromail_ar_cobroexpress.gif" hash="910960360ea1cd632a69ab500cd627ee"/><file name="dineromail_ar_dm.gif" hash="b458246e266ecb059865ab17b7673882"/><file name="dineromail_ar_italcred.gif" hash="aa4376df77748d39c670001794e7991f"/><file name="dineromail_ar_master.gif" hash="126cdc5db597363e5934cf19205f8f45"/><file name="dineromail_ar_pagofacil.gif" hash="2c85235d6dff444b1b914488d035eb7b"/><file name="dineromail_ar_rapipago.gif" hash="c745eb4d456f03c6643f40e77f9ad6ac"/><file name="dineromail_ar_tshopping.gif" hash="552daaa4621397aaed5cea3ad5fc89ec"/><file name="dineromail_ar_visa.gif" hash="61c86fd2afade160736b1c318a8280a6"/><file name="dineromail_ar_visa_hipotecario.gif" hash="bbdb3933302107611678bd7a87779a6c"/><file name="dineromail_br_amex.gif" hash="4a94da8ec02c565e8cfcb66fbfffe362"/><file name="dineromail_br_aura.gif" hash="b4a8dea00ceebb3d1d64660a997ac22d"/><file name="dineromail_br_bbancario.gif" hash="d9adffbdf626846cfe11b874c5bc0715"/><file name="dineromail_br_diners.gif" hash="b4f437b40f747842cb32becf8af28eb4"/><file name="dineromail_br_dm.gif" hash="65fa3eb604d2d5cd64b76ea0419788a6"/><file name="dineromail_br_hipercard.gif" hash="329dd978884c554fc8c0a37bd6c1ded9"/><file name="dineromail_br_master.gif" hash="126cdc5db597363e5934cf19205f8f45"/><file name="dineromail_br_oipaggo.gif" hash="9cad6e46ea39ec1d6af77ce9322835c1"/><file name="dineromail_br_visa.gif" hash="61c86fd2afade160736b1c318a8280a6"/><file name="dineromail_cl_amex.gif" hash="d4942bf6dab3c072e701e709adaecf78"/><file name="dineromail_cl_diners.gif" hash="9f5bccfc0ab73993405821859dab56b0"/><file name="dineromail_cl_dm.gif" hash="0b886856a701eff48c710a4812f999d0"/><file name="dineromail_cl_magna.gif" hash="bbbbed0d123e619dbf9ffc3308cb4f6e"/><file name="dineromail_cl_master.gif" hash="38b5c034caa6249caf49256f7df4894c"/><file name="dineromail_cl_presto.gif" hash="fa18e40e599f4216d0efea05d9329b5b"/><file name="dineromail_cl_ripley.gif" hash="8a0fe5295feeb9959f2dedf17b304215"/><file name="dineromail_cl_servipag.gif" hash="51cc675b605ce7dd88016743fc324e09"/><file name="dineromail_cl_visa.gif" hash="87fa159904723d830b30d9a0f2f2ff00"/><file name="dineromail_mx_7eleven.gif" hash="7595248bd6c735fc9cd28a0afe9e035c"/><file name="dineromail_mx_amex.gif" hash="4a94da8ec02c565e8cfcb66fbfffe362"/><file name="dineromail_mx_bancomer_tc.gif" hash="b2854f409126920b1c9cf8ed3792a349"/><file name="dineromail_mx_dm.gif" hash="9eede7e49ebcb145494952f6edb749b2"/><file name="dineromail_mx_hsbc_tb.gif" hash="1fb60730a0dfe9d0a0ebef45af1d8fdd"/><file name="dineromail_mx_ixe_tc.gif" hash="6e19e5be52b5bfce749f16b26e933c2e"/><file name="dineromail_mx_otherbank_tc.gif" hash="df05af375e248dcc04324aa92b6163b0"/><file name="dineromail_mx_oxxo.gif" hash="ee69da5b06d9c52ef76dd1a20bab5ebb"/><file name="dineromail_mx_santander_tc.gif" hash="5bb0f9600b1b8ad67d0a418c2412a506"/><file name="dineromail_mx_scotiabank_tc.gif" hash="dbe7bdd2d9327086cae42ee6a842d00c"/><file name="dineromail_small.png" hash="356e06d5a2fd5f98f3da4dfc192e389c"/><file name="dineromail_tiny.png" hash="98f6b908f7025a8babaffafcc1336428"/><file name="diners.png" hash="6310bb53fe7921cf016309d6a75b8c22"/><file name="diners_small.png" hash="ecf5d635a74460ca9575bb7d6d8550dd"/><file name="diners_small_grey.png" hash="77ff46143b8a4aab54eb35c345806a83"/><file name="diners_tiny.png" hash="881b5998d35cc373d294ca21689015d5"/><file name="directEbanking.png" hash="6d7ce2ff213c33743d80ab83fb24e8de"/><file name="directEbanking_axa.png" hash="3d90797ef39a0db23dd6373bdfef9ee8"/><file name="directEbanking_cbc.png" hash="f23617618a9e2ce7863a931947b49adb"/><file name="directEbanking_de.png" hash="9fa16b098e744e94553952c5a28c7dd2"/><file name="directEbanking_de_grey.png" hash="109b1237e5d69d7ae82dc9a64d6ab4fd"/><file name="directEbanking_de_small.png" hash="5f65ee79ae22c4ba52e6a8485cf155cd"/><file name="directEbanking_de_tiny.png" hash="15983a607b8151f0be3b5ecfb067ea7a"/><file name="directEbanking_dexia.png" hash="37ebcc9a12bc9c88d540f78adf9bd679"/><file name="directEbanking_fintro.png" hash="389b1a7b14e5466b7b0dd4721aee0433"/><file name="directEbanking_fortis.png" hash="511cc06fefa644cc7575a0efb227bd64"/><file name="directEbanking_grey.png" hash="109b1237e5d69d7ae82dc9a64d6ab4fd"/><file name="directEbanking_ing.png" hash="ac4f224d0fe9aee23d143acc5198dd72"/><file name="directEbanking_kbc.png" hash="eae3c85e332e4289841bd27a46031db3"/><file name="directEbanking_small.png" hash="db84d47793f8e375d48dc8b17f8a0ddf"/><file name="directEbanking_small_grey.png" hash="7f4fbbcfe647cf8d280238754061d042"/><file name="directEbanking_tiny.png" hash="7d804d09c7df931eb9cafc2d3a4984b1"/><file name="directdebit_BR_bancodobrasil.png" hash="784271e1bf909c95e79ff7de4d92ed5b"/><file name="directdebit_BR_bradesco.png" hash="d5ae6f8cb39883cce8c97c0d11257a4c"/><file name="directdebit_BR_caixa.png" hash="a0d69bc8a40bf120fc2138a694c31186"/><file name="directdebit_BR_hsbc.png" hash="4943f73d211b8111fd81ca8d4e06160d"/><file name="directdebit_BR_itau.png" hash="b24ed466c1d694dca7dc26ee42dbf330"/><file name="directdebit_BR_santander.png" hash="bd73ea7f9f46b0ed583e764f01e9a8d0"/><file name="directdebit_NL.png" hash="cf1246761401ad866b72d7b520506b22"/><file name="directdebit_NL_small.png" hash="2e6a7444f509232818458312f28f8c50"/><file name="directdebit_NL_tiny.png" hash="99ea09a985cf0221ce87d3696211704e"/><file name="discover.png" hash="491378a0e2ae6223ab41fc925b67575d"/><file name="discover_small.png" hash="8573aebe4938afb288749badb22aa091"/><file name="discover_small_grey.png" hash="e60b18fcd2f0509c02a08fa0bf7024b2"/><file name="discover_tiny.png" hash="78a2cb6ccedb121d3138b280e1778f84"/><file name="dotpay.png" hash="a09962a7357374482444accf6b066037"/><file name="dotpay_inteligo.png" hash="25492f3d9eaabae7aa1441fdf24947b3"/><file name="dotpay_moje.png" hash="1c948c8e2db27f09e44e4c6f3591e39c"/><file name="dotpay_mtransfer.png" hash="e9ef4a420639f227e650c9e456235059"/><file name="dotpay_multitransfer.png" hash="b604e3e946b41437bc485b0a95a76b2a"/><file name="dotpay_nordea.png" hash="cfda5216a9ae9b829e5121bbfaaf887b"/><file name="dotpay_potzta.png" hash="88670102fd0e7f532357d06ec66a8ec6"/><file name="dotpay_przelewz.png" hash="06cbe8767f3b1810e2a72b19a1bcc9c7"/><file name="dotpay_przelewz24.png" hash="64143c67feac20a193fd459ba0a6e8b4"/><file name="dotpay_small.png" hash="aabbcc9e2471e044c38ab63d8aa6d48f"/><file name="dotpay_tiny.png" hash="5c746221e7ec781c18bb4d7e6f0a66a0"/><file name="dotpay_zabka.png" hash="a6edae22b53cdd3b997f8c9b50840b2c"/><file name="ebanking_FI.png" hash="7d717c71a9174624d8e30a314c4f091e"/><file name="ebanking_FI_aktia.gif" hash="092c03a2319bd7c5d8fc9dc98516be46"/><file name="ebanking_FI_alandsbanken.png" hash="d64698c6c6dc9b6c8e1d2179dfb61d8d"/><file name="ebanking_FI_handelsbanken.png" hash="06f99903ea285bc5cf392ea6c642a267"/><file name="ebanking_FI_nordea.png" hash="c68ecd7c03b5d6a0819110c56df501e8"/><file name="ebanking_FI_osuuspankki.png" hash="cf9f495363970b9da3dbbaffe1031225"/><file name="ebanking_FI_sampo.png" hash="e5b4bd2ac745258b22ab832be253654a"/><file name="ebanking_FI_small.png" hash="57635f01d33e65d40af90d3ab4088ad7"/><file name="ebanking_FI_spankki.png" hash="e88599e1318b54be1990363607819811"/><file name="ebanking_FI_tapiola.png" hash="27ad56685d2e0e641a8d3e95942630ef"/><file name="ebanking_FI_tiny.png" hash="b0e3de2e531c362daaac6063c7a59d9e"/><file name="ebetalning.png" hash="0bc7c8cc01264df81ad06b0b75ce7c0a"/><file name="ebucks.png" hash="33d683c3a6f4f61df3c36e09d867936e"/><file name="ebucks_small.png" hash="c2afb7964e668ba7ba0416682fdd831b"/><file name="ebucks_small_tiny.png" hash="dd79fc153f0a7fcc79e628383e76ee26"/><file name="ebucks_tiny.png" hash="6085ef04ad96289d6a98e429c6d061ba"/><file name="elba.png" hash="8d2bfd3e8c0953b5d1ba80e201d25069"/><file name="elecsnet.png" hash="4a27849dfd5a8bc6771a962aff3908f4"/><file name="elo.png" hash="d8ed45be5e2a933584a58c78a5ec3568"/><file name="elo_small.png" hash="b0c3bec4e8cccf4339e142365a30fca7"/><file name="elv.png" hash="8e47d6ce919e1be80328665798d387ec"/><file name="elv_small.png" hash="a565fd570c28204b7ed0e92ebf667012"/><file name="elv_tiny.png" hash="3c9d929660d6279f255c7be9bf02ee8f"/><file name="empty.png" hash="65d7e6c42582ea986cb66ad78768b2ae"/><file name="enets.png" hash="5eae578677220e7085374936ffc2ec6a"/><file name="entertainmentcard.png" hash="df44b82c45f98790ea0e8866ecb5fee7"/><file name="entertainmentcard_small.png" hash="0466be6962e63c80c766ca4b092cded6"/><file name="entertainmentcard_small_grey.png" hash="32b0a15b2467decf84db199cd6db3bcf"/><file name="entertainmentcard_tiny.png" hash="2a7610575298bf7029bbbfad2bb86596"/><file name="forwardmobile.png" hash="023348014c3838963e48bdc8b397c387"/><file name="frame.png" hash="5e2226d7539f5d95dabe5988f4446282"/><file name="gallgall.png" hash="2e6b9f6aafaebe09112e089c05aa64ea"/><file name="gallgall_small.png" hash="24fabea2d5af04bedf9dd69e2368b943"/><file name="gallgall_small_tiny.png" hash="671cb1ce378d811cddaf77af7545d365"/><file name="gallgall_tiny.png" hash="769bf04c15a3b81f06940c237c3b3706"/><file name="giropay.png" hash="469cb654fe84b923b86b06723455ef9d"/><file name="giropay_small.png" hash="444f3a6307bb83a1d20d19e1cb8237f9"/><file name="giropay_small_grey.png" hash="565dd52d036a87d5c515c8bec4cef4f3"/><file name="giropay_tiny.png" hash="3a677e8d71ce59332e012db5bc343106"/><file name="globegcash.png" hash="580003d47ef03a6d1c7203bfc250b6d3"/><file name="globegcash_small.png" hash="cd18f17b46acb7ca15370b000f9bfa95"/><file name="globegcash_small_grey.png" hash="36e88a7a7170eb0c5ca7d3a8f2b08f13"/><file name="globegcash_tiny.png" hash="006794f78d9a43a56543a6e6b5a7ebd8"/><file name="hansabank.png" hash="b4dad91137678e09a650e1c6693e98d3"/><file name="hdfc.png" hash="b6e57b76ee8920607a2a0a809ee40d48"/><file name="hdfc_small.png" hash="1b9e555bfab7c0f11631dfecacffa637"/><file name="hdfc_small_grey.png" hash="cadac6a01cdab50cff177a1c0feb6156"/><file name="hdfc_tiny.png" hash="584260909cebec2286b6d1cd9489c7d4"/><file name="hipercard.png" hash="9310c18cee9f43c4019a7560d74ffd4c"/><file name="hipercard_small.png" hash="d4d0e1aab233b3ec3f94cbbe985fd8ad"/><file name="hppPos.png" hash="4780e785c785e93aed6ad13df323d6ef"/><file name="hyvesafrekenen.png" hash="5c8068c5b31a55f043cee6dff3246bb7"/><file name="hyvesafrekenen_small.png" hash="5a4c5747c030ac74cea799032ada3b26"/><file name="hyvesafrekenen_tiny.png" hash="2215dc356edeb426da65f43536960afe"/><file name="ideal.png" hash="6a851bfc5bac2835fd31c18c1224e8c9"/><file name="ideal_small.png" hash="8b115bda559a24a3564e02f7a90caae9"/><file name="ideal_tiny.png" hash="140c2e52427e074f95627a44db1f9f88"/><file name="img_trans.gif" hash="325472601571f31e1bf00674c368d335"/><file name="interac.png" hash="c63021e21273e83423d8af2b4c7c1728"/><file name="interac_small.png" hash="0c74bd42750252eda57b054651afca18"/><file name="interac_tiny.png" hash="1a42ba184555605ab8e2ea1a4956f21a"/><file name="ipay88.png" hash="116aa967091843ee6e8e911ff4c34b22"/><file name="ipay88_small.png" hash="1dfb38797a43657d72b0701c446a841e"/><file name="ipay88_small_grey.png" hash="418f051bc03571334cec46e122fa698f"/><file name="ipay88_tiny.png" hash="0009e8c253c57564c3688010c5192ad4"/><file name="ivr.png" hash="0ebef34ac806802b0d29c1d74f84fdbf"/><file name="ivrLandline.png" hash="0ebef34ac806802b0d29c1d74f84fdbf"/><file name="ivrLandline_small.png" hash="155f9a61db970885782db7cbe997dab4"/><file name="ivrLandline_tiny.png" hash="ecf7994d1e627023dbd47615a8ebb848"/><file name="ivrMobile.png" hash="6a16e39d5deffb8fa3234108ca97b7de"/><file name="ivrMobile_small.png" hash="a9756b756b3ea56dea07a16edcdf39a9"/><file name="ivrMobile_tiny.png" hash="8c35341f8a8f6ca16b752ff7e1bb51bf"/><file name="ivr_small.png" hash="155f9a61db970885782db7cbe997dab4"/><file name="ivr_tiny.png" hash="ecf7994d1e627023dbd47615a8ebb848"/><file name="jcb.png" hash="68303da687ac6e8615196a66f40bb6fb"/><file name="jcb_small.png" hash="f469481ddecb206cfc74478c6b58266e"/><file name="jcb_small_grey.png" hash="ddb4587396f2e7c7ad83d2aa6561cf7a"/><file name="jcb_tiny.png" hash="5d89108481655ee9dc2dbf6476bbcc14"/><file name="kadowereld.png" hash="c2eea3806e2f55ffa2f7eb3154450be5"/><file name="kadowereld_small.png" hash="203f4584e34c3f059025f3d4329b4898"/><file name="kadowereld_small_grey.png" hash="3afa5e33cd29e5c3ce1723ea10607463"/><file name="kadowereld_tiny.png" hash="b2ca2f7f504670555d332f4c5e8d3074"/><file name="klarna.png" hash="51bc6b70472fe29b728192222b88c709"/><file name="klarna_small.png" hash="57a98dc539dd5c329aac8540a3204d1e"/><file name="klarna_tiny.png" hash="fe0295e2cba0b79136e86180d7db5963"/><file name="laser.png" hash="c64699ddd372b4a48e72b8066fd2aa78"/><file name="laser_small.png" hash="abda432193ffcd5388037fa34b9e0737"/><file name="laser_small_grey.png" hash="ef7193af17ae93fa9bb5215a0ec73195"/><file name="laser_tiny.png" hash="2f87b8e37582541355e9b77008cf3853"/><file name="maestro.png" hash="e91fa85475ae74b16b92b7ac05e562c2"/><file name="maestro_small.png" hash="7814fbfff53e57643137fd68889ec807"/><file name="maestro_small_grey.png" hash="31ab5c8168e8a5b075fe1136b221d453"/><file name="maestro_tiny.png" hash="87ff6ebe1ef2e4cbae340881169065c4"/><file name="maestrouk.png" hash="cf0fcc0e1f41ad2301d5814e4a9c88c4"/><file name="maestrouk_small.png" hash="7814fbfff53e57643137fd68889ec807"/><file name="maestrouk_small_grey.png" hash="31ab5c8168e8a5b075fe1136b221d453"/><file name="maestrouk_tiny.png" hash="87ff6ebe1ef2e4cbae340881169065c4"/><file name="mc.png" hash="0d108b48ed7f8e1f0020da611e223800"/><file name="mc_small.png" hash="51ca51c64a8f0277961effeb0a0dedbb"/><file name="mc_small_grey.png" hash="0762490e5dc86277d0e411468b01a269"/><file name="mc_tiny.png" hash="814af4ec011f2f33edb7d38763dea2ea"/><file name="mercadopago.png" hash="e8cdc9cab0494fbaec13ffa7a008f0d6"/><file name="mimoney.png" hash="0f6d07a6156c6dc931636c8c618384ac"/><file name="mimoney_small.png" hash="4a8b0586fd04690de902120a463ca5b2"/><file name="mimoney_small_grey.png" hash="c85a2d63e583a8fd231713d30d484ecb"/><file name="mimoney_tiny.png" hash="0c562f6e53a95ebe2ff12747f9271a56"/><file name="moneta.png" hash="c208f24cbe664e0c9df753d1dd6b8d43"/><file name="moneybookers.png" hash="7bfc54c2a787b53f699f124d7449a169"/><file name="moneybookers_small.png" hash="1290894e479fafda67291355ea65defe"/><file name="moneybookers_tiny.png" hash="4ed8a8052e9b394e174889de6d621604"/><file name="moneymail.png" hash="73d044eac9d9f1679a653dd2e62935f3"/><file name="moneymoney.png" hash="7204b9579b665085d00b1ea2184b678f"/><file name="multibanco.png" hash="178a9292a9743e3b8904f105e7d6715b"/><file name="nedbank.png" hash="a8a2dc3af1e76262b75270a24a041331"/><file name="nedbank_small.png" hash="d386a8672bd21e53580ae32ae529ca3a"/><file name="nedbank_small_grey.png" hash="7085229e1217e47b07663764f8bb1e6e"/><file name="nedbank_tiny.png" hash="af3694515dd8b68ca71324ca20089c58"/><file name="onebip.png" hash="ca289a3c9fd8d72bce90165db98a88b9"/><file name="online_RU.png" hash="afcc9ad6292e2e21feff4af23e2fa46e"/><file name="online_RU_small.png" hash="712fa0be37857b024e3118d96da61bab"/><file name="online_RU_tiny.png" hash="0e3ac8d1ca10dff95657aa9b9ebdc13b"/><file name="online_transfer_de.png" hash="43324fb914cdbf8eff66f3668a353f1e"/><file name="openinvoice.png" hash="cd46b7d11c9dd79b1cc9c073c0696aff"/><file name="openinvoice.xcf" hash="d5f41ec9c48415f65a519c33999a1229"/><file name="openinvoice_small.png" hash="63d4c6fd1e5b214d018f3e00ca687cd5"/><file name="openinvoice_tiny.png" hash="153791c1eb5bae6095e1210787ffe4fa"/><file name="pagosonline.png" hash="04a1d0c0bb46ed7f931b3d4e248f8c0a"/><file name="pagosonline_small.png" hash="9768e52502eb299716268a212a044812"/><file name="pagosonline_small_grey.png" hash="e9f7365e885652200fdb08201e1b13cf"/><file name="pagosonline_tiny.png" hash="70d51512b8bf5215f5865b21a3ca7731"/><file name="paypal.png" hash="02362803ca1d3ab9c9e8dc3176100d66"/><file name="paypal_small.png" hash="294698dab8f5aa31f2ad62702bd9d379"/><file name="paypal_tiny.png" hash="709c47f06297455d8d55d6937245e016"/><file name="paysafecard.png" hash="20861199bb6e8781c0b10e995f1490de"/><file name="paysafecard_small.png" hash="e7452ca00265fdc91dd28a2b326355d3"/><file name="paysafecard_small_grey.png" hash="06377beb14a2666f153b273e89053419"/><file name="paysafecard_tiny.png" hash="92b3df13741ef6f71d2c12206ab3f412"/><file name="payshop.png" hash="c9c79c76313370d9165e814d3d81e062"/><file name="payu.png" hash="bc671fff056fd108fe24ba52053111b0"/><file name="payu_small.png" hash="ca3eb82cb24dd1f1bfc34436287dc9d0"/><file name="payu_small_grey.png" hash="6097711eeb2ea309d407c03a467e1653"/><file name="payu_tiny.png" hash="2b89f57174338ba3d3192eb8519ece3f"/><file name="plastix.png" hash="82d3202239d01c6bf49d8dc2399900e2"/><file name="plastix_small.png" hash="447240736bdba2d15a34986395c3fb1f"/><file name="plastix_small_grey.png" hash="7e039f412a96a0e884f86598ebfccfb1"/><file name="plastix_tiny.png" hash="aaff5ff8c33af35fe4ae64e627c0964c"/><file name="platezhru.png" hash="2f36e088146ab75470c7a55177db8c07"/><file name="platika.png" hash="03e93ab41b0d330706e2c4f85cae966a"/><file name="pm_gloss.png" hash="dcfc71b0c819e58a1287cd206cfb9d14"/><file name="poli.png" hash="4e14e9d246fdbc07ae58ed8ae639f7b0"/><file name="postoffice_ru.png" hash="8ade3cd1711071ab73248d4ba62eae64"/><file name="pps.png" hash="29f4efc8d08cfd5ba90920b1fcef6bde"/><file name="pps_small.png" hash="7bf1fa7c4adcd8dfc2b2f56eb172fcaa"/><file name="pps_small_grey.png" hash="08d6188b7f5c13ec9c5f3488b4cbf19e"/><file name="pps_tiny.png" hash="4ed68db4ca98ac69f0557319a8284c8d"/><file name="pse.png" hash="6af65a4a18af66d103473fece5536e1c"/><file name="pse_small.png" hash="1f6695131dca61647b07f7180e695c46"/><file name="pse_small_grey.png" hash="7adf2fdfc48d8b078f7c0aeaa4f50e1c"/><file name="pse_tiny.png" hash="128b2749a126cfade0300f27c6919308"/><file name="qiwi.png" hash="b5e092af3394bc333fe83d073e8a6dfd"/><file name="qiwiwallet.png" hash="623b4c7fec53864fdee6d567da5f61cc"/><file name="refresh.png" hash="69ddc65b628d15a4375e66792c07484f"/><file name="safetypay.png" hash="af4e58d22f816f148faae179d0867b3f"/><file name="safetypay_small.png" hash="26749f1a95011897c8aaf568425df3dc"/><file name="safetypay_small_grey.png" hash="e5f3e5287e3fee2d77c065063b43e17d"/><file name="safetypay_tiny.png" hash="f3700f2d3cda7834cd178ac0f70d6352"/><file name="sendEmail.png" hash="cdddfa5e77d565a0ed23b6c26e0dee09"/><file name="sendEmail_small.png" hash="b5d63cc1613f08a08194442647ee451d"/><file name="sepadirectdebit.png" hash="e565455436d808fa07499131296490de"/><file name="sm_small.png" hash="7814fbfff53e57643137fd68889ec807"/><file name="sms.png" hash="7c6c0fddee039be4d879808b374f06f5"/><file name="sms_small.png" hash="fd1d52278d2446c7fe1c34d4fc70d556"/><file name="sms_tiny.png" hash="ed22de378fdbc717f987f8d4199e0452"/><file name="solo.png" hash="13f13c36cff7835d4a46df140fe432a3"/><file name="solo_small.png" hash="96de4f5f750a415fef573ce28092bf68"/><file name="solo_small_grey.png" hash="75c9b0b2daae0d6d80a5f5ff4f14e8d6"/><file name="solo_tiny.png" hash="3e2d7a21d19b12ed84aabdb26304fae6"/><file name="switch.png" hash="8cf19bb8c744a3f852511e781c176c07"/><file name="template.xcf" hash="e5035cd9e4e96859e50c1a9773098e89"/><file name="tenpay.png" hash="ddd0b5b8e3ff63cf1bfc555fbede0242"/><file name="tenpay_small.png" hash="2aa6c5919108eec42ed5c47ad4155a8f"/><file name="tenpay_small_grey.png" hash="6a21283b21295eefb4db553f877ea4c1"/><file name="tenpay_tiny.png" hash="736275eeec39e56c3c1d29fcb9d8ebb7"/><file name="terminal_RU.png" hash="711ab27d1cbbf6771e0ee133f75c7c46"/><file name="terminal_RU_small.png" hash="9bafe5dd035f73757f553250382764c6"/><file name="terminal_RU_tiny.png" hash="1b4dce2e901d90185933420cd80648cb"/><file name="tnt_rembours.png" hash="a8abb6f51d7893da39fcc2477d7bd2bb"/><file name="tnt_rembours_small.png" hash="72ee2b0ae6742cd325bda44a14093f4c"/><file name="trustly.png" hash="2a82872cc0ada644b0442e05423a2db8"/><file name="trustpay.png" hash="88a3680bf1007661ab4fc63106aa1ff4"/><file name="uhisbank.png" hash="8c0967455a15aefe3cdfb47240a18850"/><file name="ukash.png" hash="b95eb9f2658923c38a6252f5ff9ca9c7"/><file name="ukash_small.png" hash="2210a65cd1fb85bc883d112b12c79e6e"/><file name="ukash_small_grey.png" hash="65e6cc21082ebd3c93e96bbf96499df4"/><file name="ukash_tiny.png" hash="543ab39e6dcbc094188b4f473ac4b998"/><file name="unionpay.png" hash="068dee300e2c12e58e9a47d3556e977c"/><file name="unionpay_small.png" hash="55a00c9d7bbcbe1c448b449974d85af1"/><file name="unionpay_small_grey.png" hash="5c69e46ee4663f2d0e47c7f503bbd1e4"/><file name="unionpay_tiny.png" hash="45d3b4e758237412b524a5c52418da67"/><file name="unknown.png" hash="b2d137147db4d6eb7dacb5414a4f7a30"/><file name="unknown_small.png" hash="a5234e9eb2e4485acb19b196876d762b"/><file name="vi_small.png" hash="cdab39efaf22fcd2ab88f3dc42c32de1"/><file name="vias.png" hash="aca848fa54b173225fe17637699d87c4"/><file name="vias_small.png" hash="37bee85c36b52a07a4529735a194a41e"/><file name="vias_small_grey.png" hash="4da77d558ae9488ee2a85191e9db8748"/><file name="vias_tiny.png" hash="1a45f0a2696b5539195c2fcb69be49b6"/><file name="visa-electron.png" hash="308132b89febd4979bac61594919057f"/><file name="visa-electron_small.png" hash="5ab129027f4f4acbc7a9aa2b5d0e84d3"/><file name="visa-electron_small_grey.png" hash="712b876d4f060613f54f2ec04516e512"/><file name="visa.png" hash="30f9fde31aa41197e71ccd9a63a1fe75"/><file name="visa_fr.png" hash="abd117879295333ac54497e15f81ea18"/><file name="visa_fr_small.png" hash="837db98a87141717dcd1b90bcb5ff5b1"/><file name="visa_fr_small_grey.png" hash="e8cef14608278ab71ef2ffd58e65dc9e"/><file name="visa_small.png" hash="cdab39efaf22fcd2ab88f3dc42c32de1"/><file name="visa_small_grey.png" hash="9411565a7e81c5c3cc484863dc53031a"/><file name="visa_tiny.png" hash="e374bec64dcc345848b43f0a8a3490c2"/><file name="vvvgiftcard.png" hash="d8fc48a0c0907d06830ab28c4ec480e6"/><file name="vvvgiftcard_small.png" hash="ace5fcb4f3ff86c9e9441fa941302a0d"/><file name="vvvgiftcard_tiny.png" hash="ce0f82dba3c65be8db13257cee4153d0"/><file name="wallet_RU.png" hash="29213300b3cf644c64d915418f259d87"/><file name="wallet_RU_small.png" hash="3308a16ce0f5b474af32505f587079b5"/><file name="wallet_RU_tiny.png" hash="c46cdb588d7a9a21a909e5af842414b5"/><file name="wallie.png" hash="fc97552b8249c3e96aa6f3cf8e3577bd"/><file name="wallie_small.png" hash="c0b60fe348b16e157eb0c64043f410c2"/><file name="wallie_tiny.png" hash="df61209a0e0517bbb3d65119d5ebfcbd"/><file name="webmoney.png" hash="3cca800e0962e0078b64361de11b935f"/><file name="webshopgiftcard.png" hash="09990fe325b20c2fcdaaa855457d5348"/><file name="wiwallet.png" hash="5db11152a23a72b2f4676841261c5db0"/><file name="wiwallet_small.png" hash="a4c5567f59ca4575a316e1bf3eb066c1"/><file name="wiwallet_small_grey.png" hash="b75b2af0b5c6129e8c1d7bc9087222b4"/><file name="wiwallet_tiny.png" hash="8b53e98458e15bc19b242d05ad678f2d"/><file name="yandexmoney.png" hash="e6a38c66b08ba78a68096f8ff1b2a41d"/><file name="yourgift.png" hash="87bd1ef190d75ec64fb66b77aaeb7b8c"/><file name="yourgift_small.png" hash="17300795f7fd31d5cb730685c2eb0098"/><file name="yourgift_small_grey.png" hash="69b235ccb6b7ef0dfb3a2645be60dbc6"/><file name="yourgift_tiny.png" hash="a3bc0b90775458ff9ef8499f7a5437ca"/></dir></dir><dir name="css"><file name="adyenstyle.css" hash="078d587a6c0bd87eeb6237d26967b6fb"/></dir></dir></dir></dir></target><target name="mageweb"><dir name="js"><dir name="adyen"><dir name="payment"><file name="adyen.encrypt.js" hash="6e6d006f2ac96f33a4531d3115f2d852"/><file name="cc.js" hash="2e7a07ae072be379ae707b14771e5d0d"/><file name="elv.js" hash="db612a634c95727ec9db82c50e9aec8e"/><file name="epos-device-2.6.0.js" hash="94c73689bec45b74a311d76400f05ba6"/><file name="epos-device-3.0.0.js" hash="0056bb4902efed998d1fdcfbb7ab3495"/><file name="iban.js" hash="92cff3bbc297f8aa60acca331e736063"/></dir></dir></dir></target><target name="mage"><dir name="shell"><file name="adyen.php" hash="b16519e93064c72a5cb361e8d2c251ee"/></dir></target></contents>
|
19 |
<compatible/>
|
20 |
<dependencies><required><php><min>5.3.3</min><max>6.0.0</max></php></required></dependencies>
|
21 |
</package>
|
shell/adyen.php
CHANGED
@@ -94,23 +94,27 @@ class Adyen_Payments_Shell extends Mage_Shell_Abstract
|
|
94 |
|
95 |
$select = $customerCollection->getSelect();
|
96 |
$select->reset(Varien_Db_Select::COLUMNS);
|
97 |
-
$select->columns('e.entity_id');
|
98 |
$customerCollection->joinAttribute(
|
99 |
'adyen_customer_ref',
|
100 |
'customer/adyen_customer_ref',
|
101 |
'entity_id', null, 'left'
|
102 |
);
|
103 |
|
104 |
-
$customerReferences = $customerCollection->getConnection()->
|
105 |
-
foreach ($customerReferences as $customerId => $
|
106 |
-
|
|
|
|
|
|
|
107 |
|
108 |
$recurringContracts = $api->listRecurringContracts($customerReference, $store);
|
109 |
echo sprintf("Found %s recurring contracts for customer %s (ref. %s)\n", count($recurringContracts), $customerId, $customerReference);
|
110 |
|
111 |
$billingAgreementCollection = Mage::getResourceModel('adyen/billing_agreement_collection')
|
112 |
->addCustomerFilter($customerId)
|
113 |
-
->addStoreFilter($store)
|
|
|
114 |
|
115 |
//Update the billing agreements
|
116 |
foreach ($recurringContracts as $recurringContract) {
|
94 |
|
95 |
$select = $customerCollection->getSelect();
|
96 |
$select->reset(Varien_Db_Select::COLUMNS);
|
97 |
+
$select->columns(['e.entity_id','e.increment_id']);
|
98 |
$customerCollection->joinAttribute(
|
99 |
'adyen_customer_ref',
|
100 |
'customer/adyen_customer_ref',
|
101 |
'entity_id', null, 'left'
|
102 |
);
|
103 |
|
104 |
+
$customerReferences = $customerCollection->getConnection()->fetchAssoc($select);
|
105 |
+
foreach ($customerReferences as $customerId => $customerData) {
|
106 |
+
|
107 |
+
$customerReference = $customerData['adyen_customer_ref']
|
108 |
+
?: $customerData['increment_id']
|
109 |
+
?: $customerId;
|
110 |
|
111 |
$recurringContracts = $api->listRecurringContracts($customerReference, $store);
|
112 |
echo sprintf("Found %s recurring contracts for customer %s (ref. %s)\n", count($recurringContracts), $customerId, $customerReference);
|
113 |
|
114 |
$billingAgreementCollection = Mage::getResourceModel('adyen/billing_agreement_collection')
|
115 |
->addCustomerFilter($customerId)
|
116 |
+
->addStoreFilter($store)
|
117 |
+
->addFieldToFilter('method_code', ['like' => 'adyen_%']);
|
118 |
|
119 |
//Update the billing agreements
|
120 |
foreach ($recurringContracts as $recurringContract) {
|
skin/frontend/base/default/css/adyenstyle.css
CHANGED
@@ -39,7 +39,21 @@
|
|
39 |
|
40 |
/*.sp-methods #payment_form_adyen_cc .v-fix label { float:none; vertical-align: middle;}*/
|
41 |
|
42 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
43 |
.adyen-payment-method-icon.adyen_cc { background-position: 0 -272px; }
|
44 |
.adyen-payment-method-icon.adyen_boleto { background-position: 0 -2092px; }
|
45 |
.adyen-payment-method-icon.adyen_elv {background-position: 0 -2000px; }
|
@@ -89,6 +103,7 @@
|
|
89 |
.sp-methods #oneclick_payment_form_adyen_oneclick { padding-top:10px; }
|
90 |
.sp-methods #oneclick_payment_form_adyen_oneclick .recurring-creditcards .recurring_type { float:left; vertical-align: middle; height:120px;}
|
91 |
|
|
|
92 |
|
93 |
.saved-cards ul li { margin-bottom:10px; }
|
94 |
.saved-cards .btn-delete {margin-top:10px;}
|
39 |
|
40 |
/*.sp-methods #payment_form_adyen_cc .v-fix label { float:none; vertical-align: middle;}*/
|
41 |
|
42 |
+
|
43 |
+
.adyen-payment-method-icon { margin-right: 6px; margin-left:2px; border:none !important; width:66px; height:43px; }
|
44 |
+
|
45 |
+
.adyen-payment-method-icon.adyen_cc,
|
46 |
+
.adyen-payment-method-icon.adyen_boleto,
|
47 |
+
.adyen-payment-method-icon.adyen_elv,
|
48 |
+
.adyen-payment-method-icon.adyen_openinvoice_afterpay_default,
|
49 |
+
.adyen-payment-method-icon.adyen_openinvoice_klarna,
|
50 |
+
.adyen-payment-method-icon.adyen_pos,
|
51 |
+
.adyen-payment-method-icon.adyen_sepa,
|
52 |
+
.adyen-payment-method-icon.adyen_ideal,
|
53 |
+
.adyen-payment-method-icon .no-mc∂∂∂
|
54 |
+
{ background:url(../images/adyen/pm_gloss.png) left top no-repeat; }
|
55 |
+
|
56 |
+
|
57 |
.adyen-payment-method-icon.adyen_cc { background-position: 0 -272px; }
|
58 |
.adyen-payment-method-icon.adyen_boleto { background-position: 0 -2092px; }
|
59 |
.adyen-payment-method-icon.adyen_elv {background-position: 0 -2000px; }
|
103 |
.sp-methods #oneclick_payment_form_adyen_oneclick { padding-top:10px; }
|
104 |
.sp-methods #oneclick_payment_form_adyen_oneclick .recurring-creditcards .recurring_type { float:left; vertical-align: middle; height:120px;}
|
105 |
|
106 |
+
#payment_form_adyen_ideal label img { float:none; }
|
107 |
|
108 |
.saved-cards ul li { margin-bottom:10px; }
|
109 |
.saved-cards .btn-delete {margin-top:10px;}
|
skin/frontend/base/default/images/adyen/cartebancaire.png
ADDED
Binary file
|
skin/frontend/base/default/images/adyen/vvvgiftcard.png
ADDED
Binary file
|
skin/frontend/base/default/images/adyen/vvvgiftcard_small.png
ADDED
Binary file
|
skin/frontend/base/default/images/adyen/vvvgiftcard_tiny.png
ADDED
Binary file
|