MultiSafepay_Msp - Version 2.2.7

Version Notes

Tested by MultiSafepay

Download this release

Release Info

Developer MultiSafepay
Extension MultiSafepay_Msp
Version 2.2.7
Comparing to
See all releases


Code changes from version 2.2.6 to 2.2.7

app/code/community/MultiSafepay/Msp/Block/Adminhtml/Servicecost/Totals/Creditmemo.php CHANGED
@@ -1,11 +1,39 @@
1
  <?php
2
 
3
  class MultiSafepay_Msp_Block_Adminhtml_Servicecost_Totals_Creditmemo extends Mage_Adminhtml_Block_Sales_Order_Creditmemo_Totals {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4
 
5
  protected function _initTotals() {
6
  parent::_initTotals();
7
  $order = $this->getSource()->getOrder();
8
- $amount = /* $order->getServicecostPdf() - */ $order->getServicecostRefunded();
9
  $tax = $order->getServicecostTax();
10
 
11
  $code = $order->getPayment()->getMethod();
@@ -17,17 +45,16 @@ class MultiSafepay_Msp_Block_Adminhtml_Servicecost_Totals_Creditmemo extends Mag
17
  'code' => 'servicecost',
18
  'value' => $amount,
19
  'base_value' => $this->_convertFeeCurrency($amount, $order->getOrderCurrencyCode(), $order->getGlobalCurrencyCode()),
20
- 'label' => Mage::helper('msp')->getFeeLabel($code).' (incl Tax)'
21
  ), array('tax'))
22
  );
23
 
24
 
25
- /* $creditmemo = $this->getCreditMemo();
26
- $creditmemo->setBaseTaxAmount($creditmemo->getBaseTaxAmount() + $tax);
27
- $creditmemo->setTaxAmount($creditmemo->getTaxAmount() + $tax);
28
- $creditmemo->setBaseGrandTotal($order->getBaseTotalRefunded());
29
- $creditmemo->setGrandTotal($order->getTotalRefunded());
30
- $creditmemo->save(); */
31
  }
32
  return $this;
33
  }
1
  <?php
2
 
3
  class MultiSafepay_Msp_Block_Adminhtml_Servicecost_Totals_Creditmemo extends Mage_Adminhtml_Block_Sales_Order_Creditmemo_Totals {
4
+ /* protected function _initTotals() {
5
+ parent::_initTotals();
6
+ $order = $this->getSource()->getOrder();
7
+ $amount = $order->getServicecostRefunded();
8
+ $tax = $order->getServicecostTax();
9
+
10
+ $code = $order->getPayment()->getMethod();
11
+
12
+ $method = $order->getPayment()->getMethodInstance();
13
+
14
+ if ($amount) {
15
+ $this->addTotalBefore(new Varien_Object(array(
16
+ 'code' => 'servicecost',
17
+ 'value' => $amount,
18
+ 'base_value' => $this->_convertFeeCurrency($amount, $order->getOrderCurrencyCode(), $order->getGlobalCurrencyCode()),
19
+ 'label' => Mage::helper('msp')->getFeeLabel($code).' (incl Tax)'
20
+ ), array('tax'))
21
+ );
22
+
23
+ $creditmemo = $this->getCreditMemo();
24
+ $creditmemo->setBaseTaxAmount($creditmemo->getBaseTaxAmount() + $tax);
25
+ $creditmemo->setTaxAmount($creditmemo->getTaxAmount() + $tax);
26
+ $creditmemo->setBaseGrandTotal($order->getBaseTotalRefunded());
27
+ $creditmemo->setGrandTotal($order->getTotalRefunded());
28
+ $creditmemo->save();
29
+ }
30
+ return $this;
31
+ } */
32
 
33
  protected function _initTotals() {
34
  parent::_initTotals();
35
  $order = $this->getSource()->getOrder();
36
+ $amount = $order->getServicecostPdf();
37
  $tax = $order->getServicecostTax();
38
 
39
  $code = $order->getPayment()->getMethod();
45
  'code' => 'servicecost',
46
  'value' => $amount,
47
  'base_value' => $this->_convertFeeCurrency($amount, $order->getOrderCurrencyCode(), $order->getGlobalCurrencyCode()),
48
+ 'label' => Mage::helper('msp')->getFeeLabel($code)
49
  ), array('tax'))
50
  );
51
 
52
 
53
+ $creditmemo = $this->getCreditMemo();
54
+ $creditmemo->setBaseTaxAmount($creditmemo->getBaseTaxAmount() + $tax);
55
+ $creditmemo->setTaxAmount($creditmemo->getTaxAmount() + $tax);
56
+ $creditmemo->setBaseGrandTotal($creditmemo->getBaseGrandTotal() + $amount + $tax);
57
+ $creditmemo->setGrandTotal($creditmemo->getGrandTotal() + $amount + $tax);
 
58
  }
59
  return $this;
60
  }
app/code/community/MultiSafepay/Msp/Block/Adminhtml/Servicecost/Totals/Invoice.php CHANGED
@@ -1,12 +1,33 @@
1
  <?php
2
 
3
  class MultiSafepay_Msp_Block_Adminhtml_Servicecost_Totals_Invoice extends Mage_Adminhtml_Block_Sales_Order_Invoice_Totals {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4
 
5
  protected function _initTotals() {
6
  parent::_initTotals();
7
 
8
  $source = $this->getSource();
9
- $amount = $source->getOrder()->getServicecost();
10
  $method = $source->getOrder()->getPayment()->getMethodInstance();
11
 
12
  $code = $source->getOrder()->getPayment()->getMethod();
@@ -16,7 +37,7 @@ class MultiSafepay_Msp_Block_Adminhtml_Servicecost_Totals_Invoice extends Mage_A
16
  'code' => 'servicecost',
17
  'value' => $amount,
18
  'base_value' => $this->_convertFeeCurrency($amount, $source->getOrder()->getOrderCurrencyCode(), $source->getOrder()->getGlobalCurrencyCode()),
19
- 'label' => Mage::helper('msp')->getFeeLabel($code).' (incl Tax)'
20
  ), array('tax'))
21
  );
22
  }
1
  <?php
2
 
3
  class MultiSafepay_Msp_Block_Adminhtml_Servicecost_Totals_Invoice extends Mage_Adminhtml_Block_Sales_Order_Invoice_Totals {
4
+ /* protected function _initTotals() {
5
+ parent::_initTotals();
6
+
7
+ $source = $this->getSource();
8
+ $amount = $source->getOrder()->getServicecost();
9
+ $method = $source->getOrder()->getPayment()->getMethodInstance();
10
+
11
+ $code = $source->getOrder()->getPayment()->getMethod();
12
+
13
+ if ($amount) {
14
+ $this->addTotalBefore(new Varien_Object(array(
15
+ 'code' => 'servicecost',
16
+ 'value' => $amount,
17
+ 'base_value' => $this->_convertFeeCurrency($amount, $source->getOrder()->getOrderCurrencyCode(), $source->getOrder()->getGlobalCurrencyCode()),
18
+ 'label' => Mage::helper('msp')->getFeeLabel($code).' (incl Tax)'
19
+ ), array('tax'))
20
+ );
21
+ }
22
+
23
+ return $this;
24
+ } */
25
 
26
  protected function _initTotals() {
27
  parent::_initTotals();
28
 
29
  $source = $this->getSource();
30
+ $amount = $source->getOrder()->getServicecostPdf();
31
  $method = $source->getOrder()->getPayment()->getMethodInstance();
32
 
33
  $code = $source->getOrder()->getPayment()->getMethod();
37
  'code' => 'servicecost',
38
  'value' => $amount,
39
  'base_value' => $this->_convertFeeCurrency($amount, $source->getOrder()->getOrderCurrencyCode(), $source->getOrder()->getGlobalCurrencyCode()),
40
+ 'label' => Mage::helper('msp')->getFeeLabel($code)
41
  ), array('tax'))
42
  );
43
  }
app/code/community/MultiSafepay/Msp/Block/Servicecost/Order/Total.php CHANGED
@@ -51,7 +51,7 @@ class MultiSafepay_Msp_Block_Servicecost_Order_Total extends Mage_Core_Block_Tem
51
  $this->getParentBlock()->addTotal(new Varien_Object(array(
52
  'code' => 'servicecost',
53
  'strong' => false,
54
- 'label' => Mage::helper('msp')->getFeeLabel($code).' (incl Tax)',
55
  'value' => $source instanceof Mage_Sales_Model_Order_Creditmemo ? - $value : $value
56
  )));
57
  }
51
  $this->getParentBlock()->addTotal(new Varien_Object(array(
52
  'code' => 'servicecost',
53
  'strong' => false,
54
+ 'label' => Mage::helper('msp')->getFeeLabel($code) . ' (incl Tax)',
55
  'value' => $source instanceof Mage_Sales_Model_Order_Creditmemo ? - $value : $value
56
  )));
57
  }
app/code/community/MultiSafepay/Msp/Block/Servicecost/Order/Totals.php CHANGED
@@ -15,7 +15,7 @@ class MultiSafepay_Msp_Block_Servicecost_Order_Totals extends Mage_Sales_Block_O
15
  'code' => 'servicecost',
16
  'value' => $amount,
17
  'base_value' => $amount,
18
- 'label' => Mage::helper('msp')->getFeeLabel($code).' (incl Tax)'
19
  ), array('tax'))
20
  );
21
  }
15
  'code' => 'servicecost',
16
  'value' => $amount,
17
  'base_value' => $amount,
18
+ 'label' => Mage::helper('msp')->getFeeLabel($code) . ' (incl Tax)'
19
  ), array('tax'))
20
  );
21
  }
app/code/community/MultiSafepay/Msp/Model/Api/Paylink.php CHANGED
@@ -113,9 +113,9 @@ class MultiSafepay_Msp_Model_Api_Paylink {
113
  $mapi->merchant['site_code'] = $this->merchant['security_code'];
114
 
115
  $mapi->test = $this->test;
116
- $mapi->merchant['notification_url'] = Mage::getUrl("msp/standard/notification", array("_secure" => true, "_store"=> $order->getStoreId())) . '&type=initial';
117
- $mapi->merchant['cancel_url'] = Mage::getUrl("msp/standard/cancel", array("_secure" => true, "_store"=> $order->getStoreId()));
118
- $mapi->merchant['redirect_url'] = Mage::getUrl("msp/standard/return", array("_secure" => true, "_store"=> $order->getStoreId()));
119
 
120
  $mapi->parseCustomerAddress($billing->getStreet(1));
121
 
@@ -124,10 +124,10 @@ class MultiSafepay_Msp_Model_Api_Paylink {
124
  $mapi->customer['address1'] = $billing->getStreet(1);
125
  }
126
 
127
- $locale= Mage::getStoreConfig('general/locale/code', $order->getStoreId());
128
 
129
 
130
- $mapi->customer['locale'] = $locale;//Mage::app()->getLocale()->getLocaleCode(); //Mage::app()->getLocale()->getDefaultLocale();
131
  $mapi->customer['firstname'] = $billing->getFirstname();
132
  $mapi->customer['lastname'] = $billing->getLastname();
133
  $mapi->customer['zipcode'] = $billing->getPostcode();
@@ -142,12 +142,12 @@ class MultiSafepay_Msp_Model_Api_Paylink {
142
  $mapi->transaction['currency'] = $this->transaction['currency'];
143
  $mapi->transaction['var3'] = Mage::app()->getStore()->getStoreId();
144
  $mapi->transaction['description'] = 'Order #' . $this->transaction['id'] . ' at ' . $storename;
145
-
146
- if($this->transaction['gateway_reset']){
147
- $mapi->transaction['gateway'] = '';
148
- }else{
149
- $mapi->transaction['gateway'] = $this->availablePaymentMethodCodes[$pm_code];
150
- }
151
  $mapi->transaction['items'] = $items;
152
  $mapi->transaction['daysactive'] = $this->transaction['days_active'];
153
 
113
  $mapi->merchant['site_code'] = $this->merchant['security_code'];
114
 
115
  $mapi->test = $this->test;
116
+ $mapi->merchant['notification_url'] = Mage::getUrl("msp/standard/notification", array("_secure" => true, "_store" => $order->getStoreId())) . '&type=initial';
117
+ $mapi->merchant['cancel_url'] = Mage::getUrl("msp/standard/cancel", array("_secure" => true, "_store" => $order->getStoreId()));
118
+ $mapi->merchant['redirect_url'] = Mage::getUrl("msp/standard/return", array("_secure" => true, "_store" => $order->getStoreId()));
119
 
120
  $mapi->parseCustomerAddress($billing->getStreet(1));
121
 
124
  $mapi->customer['address1'] = $billing->getStreet(1);
125
  }
126
 
127
+ $locale = Mage::getStoreConfig('general/locale/code', $order->getStoreId());
128
 
129
 
130
+ $mapi->customer['locale'] = $locale; //Mage::app()->getLocale()->getLocaleCode(); //Mage::app()->getLocale()->getDefaultLocale();
131
  $mapi->customer['firstname'] = $billing->getFirstname();
132
  $mapi->customer['lastname'] = $billing->getLastname();
133
  $mapi->customer['zipcode'] = $billing->getPostcode();
142
  $mapi->transaction['currency'] = $this->transaction['currency'];
143
  $mapi->transaction['var3'] = Mage::app()->getStore()->getStoreId();
144
  $mapi->transaction['description'] = 'Order #' . $this->transaction['id'] . ' at ' . $storename;
145
+
146
+ if ($this->transaction['gateway_reset']) {
147
+ $mapi->transaction['gateway'] = '';
148
+ } else {
149
+ $mapi->transaction['gateway'] = $this->availablePaymentMethodCodes[$pm_code];
150
+ }
151
  $mapi->transaction['items'] = $items;
152
  $mapi->transaction['daysactive'] = $this->transaction['days_active'];
153
 
app/code/community/MultiSafepay/Msp/Model/Base.php CHANGED
@@ -24,43 +24,42 @@ class MultiSafepay_Msp_Model_Base extends Varien_Object {
24
  public $transdetails;
25
  public $mspDetails;
26
  protected $_paid;
27
-
28
  public $methodMap = array(
29
- 'IDEAL' =>'msp_ideal',
30
- 'DOTPAY' =>'msp_dotpay',
31
- 'PAYAFTER'=>'msp_payafter',
32
- 'EINVOICE'=>'msp_einvoice',
33
- 'KLARNA'=>'msp_klarna',
34
- 'MISTERCASH'=>'msp_mistercash',
35
- 'VISA'=> 'msp_visa',
36
- 'MASTERCARD'=>'msp_mastercard',
37
- 'BANKTRANS'=>'msp_banktransfer',
38
- 'MAESTRO'=>'msp_maestro',
39
- 'PAYPAL'=>'msp_paypal',
40
- 'AMEX'=>'msp_amex',
41
- 'WEBGIFT'=>'msp_webgift',
42
- 'EBON'=>'msp_ebon',
43
- 'BABYGIFTCARD'=>'msp_babygiftcard',
44
- 'BOEKENBON'=>'msp_boekenbon',
45
- 'EROTIEKBON'=>'msp_erotiekbon',
46
- 'GIVEACARD'=>'msp_giveacard',
47
- 'PARFUMNL'=>'msp_parfumnl',
48
- 'PARFUMCADEAUKAART'=>'msp_parfumcadeaukaart',
49
- 'DEGROTESPEELGOEDWINKEL'=>'msp_degrotespeelgoedwinkel',
50
- 'GIROPAY'=>'msp_giropay',
51
- 'MULTISAFEPAY'=>'msp_multisafepay',
52
- 'DIRECTBANK'=>'msp_directebanking',
53
- 'DIRDEB'=>'msp_directdebit',
54
- 'YOURGIFT'=>'msp_yourgift',
55
- 'WIJNCADEAU'=>'msp_wijncadeau',
56
- 'LIEF'=>'msp_lief',
57
- 'GEZONDHEIDSBON'=>'msp_gezondheidsbon',
58
- 'FASHIONCHEQUE'=>'msp_fashioncheque',
59
- 'FASHIONGIFTCARD'=>'msp_fashiongiftcard',
60
- 'PODIUM'=>'msp_podium',
61
- 'VVVGIFTCARD'=>'msp_vvvgiftcard',
62
- 'SPORTENFIT'=> 'msp_sportenfit',
63
- 'BEAUTYANDWELLNESS'=>'msp_beautyandwellness',
64
  );
65
 
66
  /**
@@ -225,10 +224,10 @@ class MultiSafepay_Msp_Model_Base extends Varien_Object {
225
  if ($creditmemo_enabled && ($mspStatus == 'refunded' || $mspStatus == 'partial_refunded')) {
226
  return true;
227
  }
228
-
229
  $usedMethod = $this->methodMap[$mspDetails['paymentdetails']['type']];
230
-
231
-
232
 
233
  /**
234
  * Create the transaction details array
@@ -295,13 +294,13 @@ class MultiSafepay_Msp_Model_Base extends Varien_Object {
295
  $order->setShippingMethod(null);
296
  }
297
 
298
- $order->setGrandTotal($details['order-total']['total']+$details['shipping']['cost']);
299
- $order->setBaseGrandTotal($details['order-total']['total']+$details['shipping']['cost']);
300
- $order->setTotalPaid($details['order-total']['total']+$details['shipping']['cost']);
301
  $order->save();
302
  }
303
-
304
-
305
 
306
 
307
  $complete = false;
@@ -309,25 +308,24 @@ class MultiSafepay_Msp_Model_Base extends Varien_Object {
309
  $newState = null;
310
  $newStatus = true; // makes Magento use the default status belonging to state
311
  $statusMessage = '';
312
- //$this->_paid = $details['transaction']['amount']/100;
313
-
314
  //If the order already has in invoice than it was paid for using another method? So if our transaction expires we shouldn't update it to cancelled because it was already invoiced.
315
  if ($order->hasInvoices() && $mspStatus == 'expired') {
316
  return true;
317
  }
318
-
319
- if(($usedMethod == 'PAYAFTER' || $usedMethod == 'KLARNA' || $usedMethod == 'EINVOICE') && ($mspStatus == 'cancelled' || $mspStatus == 'void')){
320
  return true;
321
  }
322
-
323
  $payment_method_quote = $quote->getPayment();
324
  $payment = $order->getPayment();
325
-
326
- if($usedMethod != $payment->getMethod()){
327
- $payment->setMethod($usedMethod);
328
- $payment->save();
329
- $payment_method_quote->setMethod($usedMethod);
330
- $payment_method_quote->save();
331
  }
332
 
333
  switch ($mspStatus) {
@@ -358,12 +356,12 @@ class MultiSafepay_Msp_Model_Base extends Varien_Object {
358
  $transaction->setAdditionalInformation(Mage_Sales_Model_Order_Payment_Transaction::RAW_DETAILS, $this->transdetails);
359
  $transaction->save();
360
  }
361
-
362
- /*if(round($order->getGrandTotal(),2) != $this->_paid && $mspDetails['ewallet']['fastcheckout'] !='YES' && !Mage::getStoreConfigFlag('msp/settings/allow_convert_currency')){
363
- $newState = Mage_Sales_Model_Order::STATE_PAYMENT_REVIEW;
364
- $newStatus = Mage_Sales_Model_Order::STATE_PAYMENT_REVIEW;
365
- $statusMessage = Mage::helper("msp")->__("Payment received for an amount that is not equal to the order total amount. Please verify the paid amount!");
366
- }*/
367
 
368
  break;
369
  case "uncleared":
@@ -510,9 +508,9 @@ class MultiSafepay_Msp_Model_Base extends Varien_Object {
510
  $is_already_invoiced = true;
511
  } else {
512
  $is_already_invoiced = false;
513
-
514
 
515
- if ($complete && $autocreateInvoice){// && $this->_paid == round($order->getBaseGrandTotal(), 2) && !Mage::getStoreConfigFlag('msp/settings/allow_convert_currency')) {
 
516
  $payment = $order->getPayment();
517
  $payment->setTransactionId($mspDetails['ewallet']['id']);
518
  $transaction = $payment->addTransaction('capture', null, false, $statusMessage);
@@ -530,13 +528,13 @@ class MultiSafepay_Msp_Model_Base extends Varien_Object {
530
  $transaction->setIsClosed(1);
531
  $transaction->setAdditionalInformation(Mage_Sales_Model_Order_Payment_Transaction::RAW_DETAILS, $transdetails);
532
  $transaction->save();
533
- /*if(!Mage::getStoreConfigFlag('msp/settings/allow_convert_currency')){
534
- $payment->setAmount($this->_paid);
535
- $order->setTotalPaid($this->_paid);
536
- }else{
537
- $payment->setAmount($order->getGrandTotal());
538
- $order->setTotalPaid($order->getGrandTotal());
539
- }*/
540
  }
541
  }
542
 
@@ -678,8 +676,8 @@ class MultiSafepay_Msp_Model_Base extends Varien_Object {
678
  $order->addStatusHistoryComment('Automatically invoiced by MultiSafepay invoicer.', false);
679
  $transactionSave = Mage::getModel('core/resource_transaction')->addObject($invoice)->addObject($invoice->getOrder());
680
  $transactionSave->save();
681
-
682
- $payment = $order->getPayment();
683
 
684
  $transaction = $payment->getTransaction($this->mspDetails['ewallet']['id']);
685
  if (is_object($transaction)) {
24
  public $transdetails;
25
  public $mspDetails;
26
  protected $_paid;
 
27
  public $methodMap = array(
28
+ 'IDEAL' => 'msp_ideal',
29
+ 'DOTPAY' => 'msp_dotpay',
30
+ 'PAYAFTER' => 'msp_payafter',
31
+ 'EINVOICE' => 'msp_einvoice',
32
+ 'KLARNA' => 'msp_klarna',
33
+ 'MISTERCASH' => 'msp_mistercash',
34
+ 'VISA' => 'msp_visa',
35
+ 'MASTERCARD' => 'msp_mastercard',
36
+ 'BANKTRANS' => 'msp_banktransfer',
37
+ 'MAESTRO' => 'msp_maestro',
38
+ 'PAYPAL' => 'msp_paypal',
39
+ 'AMEX' => 'msp_amex',
40
+ 'WEBSHOPGIFTCARD' => 'msp_webgift',
41
+ 'EBON' => 'msp_ebon',
42
+ 'BABYGIFTCARD' => 'msp_babygiftcard',
43
+ 'BOEKENBON' => 'msp_boekenbon',
44
+ 'EROTIEKBON' => 'msp_erotiekbon',
45
+ 'GIVEACARD' => 'msp_giveacard',
46
+ 'PARFUMNL' => 'msp_parfumnl',
47
+ 'PARFUMCADEAUKAART' => 'msp_parfumcadeaukaart',
48
+ 'DEGROTESPEELGOEDWINKEL' => 'msp_degrotespeelgoedwinkel',
49
+ 'GIROPAY' => 'msp_giropay',
50
+ 'MULTISAFEPAY' => 'msp_multisafepay',
51
+ 'DIRECTBANK' => 'msp_directebanking',
52
+ 'DIRDEB' => 'msp_directdebit',
53
+ 'YOURGIFT' => 'msp_yourgift',
54
+ 'WIJNCADEAU' => 'msp_wijncadeau',
55
+ 'LIEF' => 'msp_lief',
56
+ 'GEZONDHEIDSBON' => 'msp_gezondheidsbon',
57
+ 'FASHIONCHEQUE' => 'msp_fashioncheque',
58
+ 'FASHIONGIFTCARD' => 'msp_fashiongiftcard',
59
+ 'PODIUM' => 'msp_podium',
60
+ 'VVVGIFTCARD' => 'msp_vvvgiftcard',
61
+ 'SPORTENFIT' => 'msp_sportenfit',
62
+ 'BEAUTYANDWELLNESS' => 'msp_beautyandwellness',
63
  );
64
 
65
  /**
224
  if ($creditmemo_enabled && ($mspStatus == 'refunded' || $mspStatus == 'partial_refunded')) {
225
  return true;
226
  }
227
+
228
  $usedMethod = $this->methodMap[$mspDetails['paymentdetails']['type']];
229
+
230
+
231
 
232
  /**
233
  * Create the transaction details array
294
  $order->setShippingMethod(null);
295
  }
296
 
297
+ $order->setGrandTotal($details['order-total']['total'] + $details['shipping']['cost']);
298
+ $order->setBaseGrandTotal($details['order-total']['total'] + $details['shipping']['cost']);
299
+ $order->setTotalPaid($details['order-total']['total'] + $details['shipping']['cost']);
300
  $order->save();
301
  }
302
+
303
+
304
 
305
 
306
  $complete = false;
308
  $newState = null;
309
  $newStatus = true; // makes Magento use the default status belonging to state
310
  $statusMessage = '';
311
+ //$this->_paid = $details['transaction']['amount']/100;
 
312
  //If the order already has in invoice than it was paid for using another method? So if our transaction expires we shouldn't update it to cancelled because it was already invoiced.
313
  if ($order->hasInvoices() && $mspStatus == 'expired') {
314
  return true;
315
  }
316
+
317
+ if (($usedMethod == 'PAYAFTER' || $usedMethod == 'KLARNA' || $usedMethod == 'EINVOICE') && ($mspStatus == 'cancelled' || $mspStatus == 'void')) {
318
  return true;
319
  }
320
+
321
  $payment_method_quote = $quote->getPayment();
322
  $payment = $order->getPayment();
323
+
324
+ if ($usedMethod != $payment->getMethod()) {
325
+ $payment->setMethod($usedMethod);
326
+ $payment->save();
327
+ $payment_method_quote->setMethod($usedMethod);
328
+ $payment_method_quote->save();
329
  }
330
 
331
  switch ($mspStatus) {
356
  $transaction->setAdditionalInformation(Mage_Sales_Model_Order_Payment_Transaction::RAW_DETAILS, $this->transdetails);
357
  $transaction->save();
358
  }
359
+
360
+ /* if(round($order->getGrandTotal(),2) != $this->_paid && $mspDetails['ewallet']['fastcheckout'] !='YES' && !Mage::getStoreConfigFlag('msp/settings/allow_convert_currency')){
361
+ $newState = Mage_Sales_Model_Order::STATE_PAYMENT_REVIEW;
362
+ $newStatus = Mage_Sales_Model_Order::STATE_PAYMENT_REVIEW;
363
+ $statusMessage = Mage::helper("msp")->__("Payment received for an amount that is not equal to the order total amount. Please verify the paid amount!");
364
+ } */
365
 
366
  break;
367
  case "uncleared":
508
  $is_already_invoiced = true;
509
  } else {
510
  $is_already_invoiced = false;
 
511
 
512
+
513
+ if ($complete && $autocreateInvoice) {// && $this->_paid == round($order->getBaseGrandTotal(), 2) && !Mage::getStoreConfigFlag('msp/settings/allow_convert_currency')) {
514
  $payment = $order->getPayment();
515
  $payment->setTransactionId($mspDetails['ewallet']['id']);
516
  $transaction = $payment->addTransaction('capture', null, false, $statusMessage);
528
  $transaction->setIsClosed(1);
529
  $transaction->setAdditionalInformation(Mage_Sales_Model_Order_Payment_Transaction::RAW_DETAILS, $transdetails);
530
  $transaction->save();
531
+ /* if(!Mage::getStoreConfigFlag('msp/settings/allow_convert_currency')){
532
+ $payment->setAmount($this->_paid);
533
+ $order->setTotalPaid($this->_paid);
534
+ }else{
535
+ $payment->setAmount($order->getGrandTotal());
536
+ $order->setTotalPaid($order->getGrandTotal());
537
+ } */
538
  }
539
  }
540
 
676
  $order->addStatusHistoryComment('Automatically invoiced by MultiSafepay invoicer.', false);
677
  $transactionSave = Mage::getModel('core/resource_transaction')->addObject($invoice)->addObject($invoice->getOrder());
678
  $transactionSave->save();
679
+
680
+ $payment = $order->getPayment();
681
 
682
  $transaction = $payment->getTransaction($this->mspDetails['ewallet']['id']);
683
  if (is_object($transaction)) {
app/code/community/MultiSafepay/Msp/Model/Checkout.php CHANGED
@@ -174,16 +174,16 @@ class MultiSafepay_Msp_Model_Checkout extends Mage_Payment_Model_Method_Abstract
174
  $this->_getShippingRates();
175
  $this->setTaxes();
176
  $this->getCustomFieldsFromFile();
177
-
178
- if($this->getSectionConfigData('checkout_custom_fields/fco_postnl')){
179
- $title = 'Post NL';
180
- $price = $this->getSectionConfigData('checkout_custom_fields/fco_postnl_amount');
181
- //$price = (float) Mage::helper('tax')->getShippingPrice($price, false, false);
182
- $provider = 'PostNL';
183
- $shipping = new MspPickup($title, $price, $provider);
184
- $this->api->cart->AddShipping($shipping);
185
  }
186
-
187
 
188
 
189
  if ($this->getSectionConfigData('checkout_google_analytics/active')) {
@@ -293,7 +293,7 @@ class MultiSafepay_Msp_Model_Checkout extends Mage_Payment_Model_Method_Abstract
293
  $field->SetStandardField('birthday', 2 == $option);
294
  $this->api->fields->AddField($field);
295
  }
296
-
297
  $option = $this->getSectionConfigData('checkout_custom_fields/xtra_phone');
298
  if ($option) {
299
  $field = new MspCustomField();
174
  $this->_getShippingRates();
175
  $this->setTaxes();
176
  $this->getCustomFieldsFromFile();
177
+
178
+ if ($this->getSectionConfigData('checkout_custom_fields/fco_postnl')) {
179
+ $title = 'Post NL';
180
+ $price = $this->getSectionConfigData('checkout_custom_fields/fco_postnl_amount');
181
+ //$price = (float) Mage::helper('tax')->getShippingPrice($price, false, false);
182
+ $provider = 'PostNL';
183
+ $shipping = new MspPickup($title, $price, $provider);
184
+ $this->api->cart->AddShipping($shipping);
185
  }
186
+
187
 
188
 
189
  if ($this->getSectionConfigData('checkout_google_analytics/active')) {
293
  $field->SetStandardField('birthday', 2 == $option);
294
  $this->api->fields->AddField($field);
295
  }
296
+
297
  $option = $this->getSectionConfigData('checkout_custom_fields/xtra_phone');
298
  if ($option) {
299
  $field = new MspCustomField();
app/code/community/MultiSafepay/Msp/Model/Gateway/Abstract.php CHANGED
@@ -375,9 +375,39 @@ abstract class MultiSafepay_Msp_Model_Gateway_Abstract extends Mage_Payment_Mode
375
  $refunded_servicecost = $data['servicecost'];
376
 
377
 
378
- if ($refunded_servicecost != $order->getServicecost()) {
379
- $amount = $amount - $order->getServicecost() + $refunded_servicecost;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
380
  }
 
 
 
 
 
381
 
382
 
383
  switch ($payment->getCode()) {
@@ -439,7 +469,7 @@ abstract class MultiSafepay_Msp_Model_Gateway_Abstract extends Mage_Payment_Mode
439
  $config['api_key'] = $config['api_key_pad'];
440
  }
441
  }
442
-
443
 
444
  // build request
445
  $mapi = new MultiSafepay();
@@ -449,13 +479,15 @@ abstract class MultiSafepay_Msp_Model_Gateway_Abstract extends Mage_Payment_Mode
449
  $mapi->merchant['site_code'] = $config['secure_code'];
450
  $mapi->merchant['api_key'] = $config['api_key'];
451
  $mapi->transaction['id'] = $order->getIncrementId();
452
- $mapi->transaction['amount'] = $amount * 100; //$order->getGrandTotal() * 100;
453
- $mapi->transaction['currency'] = Mage::app()->getStore()->getCurrentCurrencyCode();
454
  $mapi->signature = sha1($config['site_id'] . $config['secure_code'] . $mapi->transaction['id']);
455
 
 
456
 
457
  $response = $mapi->refundTransaction();
458
 
 
459
 
460
  if ($mapi->error) {
461
  Mage::getSingleton('adminhtml/session')->addError($mapi->error_code . ' - ' . $mapi->error);
@@ -465,5 +497,28 @@ abstract class MultiSafepay_Msp_Model_Gateway_Abstract extends Mage_Payment_Mode
465
  }
466
  return $this;
467
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
468
 
469
  }
375
  $refunded_servicecost = $data['servicecost'];
376
 
377
 
378
+
379
+ /**
380
+ *
381
+ */
382
+
383
+ $gateway_data = $order->getPayment()->getData();
384
+ $gateway = strtoupper(str_replace("msp_", '', $payment->getCode()));
385
+
386
+
387
+
388
+
389
+ // currency check
390
+ $isAllowConvert = Mage::getStoreConfigFlag('msp/settings/allow_convert_currency');
391
+
392
+ $currencies = explode(',', Mage::getStoreConfig('msp_gateways/' . strtolower($payment->getCode()) . '/allowed_currency'));
393
+ $canUseCurrentCurrency = in_array(Mage::app()->getStore()->getCurrentCurrencyCode(), $currencies);
394
+
395
+ $currentCurrencyCode = $order->getOrderCurrencyCode();
396
+ $baseCurrencyCode = $order->getGlobalCurrencyCode();
397
+
398
+
399
+ if($isAllowConvert){
400
+ $amount2 = $amount;
401
+ $currency = $baseCurrencyCode;
402
+ }else{
403
+ $amount2 = $this->_convertCurrency($amount, $baseCurrencyCode, $currentCurrencyCode);
404
+ $currency =$currentCurrencyCode;
405
  }
406
+
407
+
408
+ /* if ($refunded_servicecost != $order->getServicecost()) {
409
+ $amount = $amount - $order->getServicecost() + $refunded_servicecost;
410
+ }*/
411
 
412
 
413
  switch ($payment->getCode()) {
469
  $config['api_key'] = $config['api_key_pad'];
470
  }
471
  }
472
+
473
 
474
  // build request
475
  $mapi = new MultiSafepay();
479
  $mapi->merchant['site_code'] = $config['secure_code'];
480
  $mapi->merchant['api_key'] = $config['api_key'];
481
  $mapi->transaction['id'] = $order->getIncrementId();
482
+ $mapi->transaction['amount'] = $amount2 * 100; //$order->getGrandTotal() * 100;
483
+ $mapi->transaction['currency'] = $currency;
484
  $mapi->signature = sha1($config['site_id'] . $config['secure_code'] . $mapi->transaction['id']);
485
 
486
+ Mage::log($mapi, null, 'MultiSafepay-Refunds.log');
487
 
488
  $response = $mapi->refundTransaction();
489
 
490
+ Mage::log($response, null, 'MultiSafepay-Refunds.log');
491
 
492
  if ($mapi->error) {
493
  Mage::getSingleton('adminhtml/session')->addError($mapi->error_code . ' - ' . $mapi->error);
497
  }
498
  return $this;
499
  }
500
+
501
+ protected function _convertCurrency($amount, $currentCurrencyCode, $targetCurrencyCode) {
502
+ if ($currentCurrencyCode == $targetCurrencyCode) {
503
+ return $amount;
504
+ }
505
+
506
+ $currentCurrency = Mage::getModel('directory/currency')->load($currentCurrencyCode);
507
+ $rateCurrentToTarget = $currentCurrency->getAnyRate($targetCurrencyCode);
508
+
509
+ if ($rateCurrentToTarget === false) {
510
+ Mage::throwException(Mage::helper("msp")->__("Imposible convert %s to %s", $currentCurrencyCode, $targetCurrencyCode));
511
+ }
512
+
513
+ //Disabled check, fixes PLGMAG-10. Magento seems to not to update USD->EUR rate in db, resulting in wrong conversions. Now we calculate the rate manually and and don't trust Magento stored rate.
514
+ // if (strlen((string) $rateCurrentToTarget) < 12) {
515
+ $revertCheckingCode = Mage::getModel('directory/currency')->load($targetCurrencyCode);
516
+ $revertCheckingRate = $revertCheckingCode->getAnyRate($currentCurrencyCode);
517
+ $rateCurrentToTarget = 1 / $revertCheckingRate;
518
+ //}
519
+
520
+ return round($amount * $rateCurrentToTarget, 2);
521
+ }
522
+
523
 
524
  }
app/code/community/MultiSafepay/Msp/Model/Gateway/Einvoice.php CHANGED
@@ -10,7 +10,7 @@ class MultiSafepay_Msp_Model_Gateway_Einvoice extends MultiSafepay_Msp_Model_Gat
10
  protected $_code = "msp_einvoice";
11
  public $_model = "einvoice";
12
  public $_gateway = "EINVOICE";
13
- // protected $_formBlockType = 'msp/einvoice';
14
  protected $_canUseCheckout = true;
15
  public $giftcards = array(
16
  'msp_webgift',
@@ -107,8 +107,8 @@ class MultiSafepay_Msp_Model_Gateway_Einvoice extends MultiSafepay_Msp_Model_Gat
107
  } else {
108
  $accountnumber = '';
109
  }
110
-
111
-
112
  if (isset($_POST['payment']['phonenumber'])) {
113
  $phonenumber = $_POST['payment']['phonenumber'];
114
  } else {
@@ -117,9 +117,9 @@ class MultiSafepay_Msp_Model_Gateway_Einvoice extends MultiSafepay_Msp_Model_Gat
117
 
118
  $url = $this->getModelUrl("msp/standard/redirect/issuer/" . $this->_issuer);
119
  if (!strpos($url, "?"))
120
- $url .= '?birthday=' . $birthday . '&accountnumber=' . $accountnumber. '&phonenumber=' . $phonenumber;
121
  else
122
- $url .= '&birthday=' . $birthday . '&accountnumber=' . $accountnumber. '&phonenumber=' . $phonenumber;
123
  return $url;
124
  }
125
 
10
  protected $_code = "msp_einvoice";
11
  public $_model = "einvoice";
12
  public $_gateway = "EINVOICE";
13
+ // protected $_formBlockType = 'msp/einvoice';
14
  protected $_canUseCheckout = true;
15
  public $giftcards = array(
16
  'msp_webgift',
107
  } else {
108
  $accountnumber = '';
109
  }
110
+
111
+
112
  if (isset($_POST['payment']['phonenumber'])) {
113
  $phonenumber = $_POST['payment']['phonenumber'];
114
  } else {
117
 
118
  $url = $this->getModelUrl("msp/standard/redirect/issuer/" . $this->_issuer);
119
  if (!strpos($url, "?"))
120
+ $url .= '?birthday=' . $birthday . '&accountnumber=' . $accountnumber . '&phonenumber=' . $phonenumber;
121
  else
122
+ $url .= '&birthday=' . $birthday . '&accountnumber=' . $accountnumber . '&phonenumber=' . $phonenumber;
123
  return $url;
124
  }
125
 
app/code/community/MultiSafepay/Msp/Model/Observer/Order.php CHANGED
@@ -115,14 +115,14 @@ class MultiSafepay_Msp_Model_Observer_Order extends MultiSafepay_Msp_Model_Obser
115
  $config = Mage::getStoreConfig($settingsPathPrefix, $order->getStoreId());
116
 
117
  $api = Mage::getModel('msp/api_paylink');
118
- $configMain = Mage::getStoreConfig('msp/settings', $order->getStoreId());
119
  if (!$api->isPaymentLinkCreated($order)) {
120
  if ($payment->getCode() == self::MSP_GENERAL_PAD_CODE || $payment->getCode() == self::MSP_GENERAL_KLARNA_CODE || $payment->getCode() == self::MSP_GENERAL_EINVOICE_CODE) {
121
-
122
-
123
  $api->test = ($config['test_api_pad'] == 'test');
124
  $suffix = '';
125
-
126
  if ($api->test) {
127
  $suffix = '_test';
128
  }
@@ -142,7 +142,7 @@ class MultiSafepay_Msp_Model_Observer_Order extends MultiSafepay_Msp_Model_Obser
142
  $api->transaction['id'] = $configMain['daysactive'];
143
  $api->debug = $config['debug'];
144
  }
145
- $api->transaction['gateway_reset'] = $configMain['gateway_reset'];
146
  if ($payment->getCode() == self::MSP_FASTCHECKOUT_CODE) {
147
  $api->transaction['id'] = $order->getQuoteId();
148
  } else {
@@ -155,7 +155,7 @@ class MultiSafepay_Msp_Model_Observer_Order extends MultiSafepay_Msp_Model_Obser
155
 
156
 
157
  $api->transaction['currency'] = $currencyCode;
158
-
159
 
160
 
161
  $response = $api->getPaymentLink($order);
115
  $config = Mage::getStoreConfig($settingsPathPrefix, $order->getStoreId());
116
 
117
  $api = Mage::getModel('msp/api_paylink');
118
+ $configMain = Mage::getStoreConfig('msp/settings', $order->getStoreId());
119
  if (!$api->isPaymentLinkCreated($order)) {
120
  if ($payment->getCode() == self::MSP_GENERAL_PAD_CODE || $payment->getCode() == self::MSP_GENERAL_KLARNA_CODE || $payment->getCode() == self::MSP_GENERAL_EINVOICE_CODE) {
121
+
122
+
123
  $api->test = ($config['test_api_pad'] == 'test');
124
  $suffix = '';
125
+
126
  if ($api->test) {
127
  $suffix = '_test';
128
  }
142
  $api->transaction['id'] = $configMain['daysactive'];
143
  $api->debug = $config['debug'];
144
  }
145
+ $api->transaction['gateway_reset'] = $configMain['gateway_reset'];
146
  if ($payment->getCode() == self::MSP_FASTCHECKOUT_CODE) {
147
  $api->transaction['id'] = $order->getQuoteId();
148
  } else {
155
 
156
 
157
  $api->transaction['currency'] = $currencyCode;
158
+
159
 
160
 
161
  $response = $api->getPaymentLink($order);
app/code/community/MultiSafepay/Msp/Model/Payment.php CHANGED
@@ -261,11 +261,11 @@ class MultiSafepay_Msp_Model_Payment extends Varien_Object {
261
 
262
  $currentCurrencyCode = Mage::app()->getStore()->getCurrentCurrencyCode();
263
  $baseCurrencyCode = Mage::app()->getBaseCurrencyCode();
264
-
265
- if($order->getGlobalCurrencyCode() == 'EUR' && Mage::getStoreConfigFlag('msp/settings/allow_convert_currency')){
266
- $amount = $order_base_grand_total;
267
  $currencyCode = 'EUR';
268
- }elseif ($canUseCurrentCurrency) {
269
  $amount = $checked_amount_current;
270
  $currencyCode = $currentCurrencyCode;
271
  } elseif ($isAllowConvert) {
@@ -362,8 +362,8 @@ class MultiSafepay_Msp_Model_Payment extends Varien_Object {
362
  } else {
363
  $this->api->gatewayinfo['phone'] = ''; //not available
364
  }
365
-
366
-
367
  if (isset($_GET['accountnumber'])) {
368
  $this->api->gatewayinfo['bankaccount'] = $_GET['accountnumber'];
369
  $this->api->customer['bankaccount'] = $_GET['accountnumber'];
@@ -385,10 +385,10 @@ class MultiSafepay_Msp_Model_Payment extends Varien_Object {
385
  $this->api->gatewayinfo['birthday'] = ''; //not available
386
  }
387
 
388
- if (($this->_gateway == "PAYAFTER" || $this->_gateway =="KLARNA") && $this->api->gatewayinfo['bankaccount'] != '' && $this->api->customer['birthday'] != '') {
389
  $this->api->transaction['special'] = true;
390
  }
391
-
392
  if ($this->_gateway == "EINVOICE") {
393
  $this->api->transaction['special'] = true;
394
  }
@@ -499,43 +499,43 @@ class MultiSafepay_Msp_Model_Payment extends Varien_Object {
499
 
500
  //Add shipping line item
501
  $title = $this->getOrder()->getShippingDescription();
502
-
503
  //Code blow added to recalculate excluding tax for the shipping cost. Older Magento installations round differently, causing a 1 cent mismatch. This is why we recalculate it.
504
- $diff= $this->getOrder()->getShippingInclTax()- $this->getOrder()->getShippingAmount();
505
- $test = ($diff/$this->getOrder()->getShippingAmount())*100;
506
- $shipping_percentage = 1 + round($test, 0)/100;
507
- $shippin_exc_tac_calculated = $this->getOrder()->getShippingInclTax()/$shipping_percentage;
508
- $percentage = round($test, 0)/100;
509
- $price = number_format($this->_convertCurrency($shippin_exc_tac_calculated, $currentCurrencyCode, $currencyCode), 10, '.', '');
510
- /*End code */
511
-
512
- //$price = number_format($this->_convertCurrency($this->getOrder()->getShippingAmount(), $currentCurrencyCode, $currencyCode), 10, '.', '');
513
 
514
- /*$shipping_tax_id = 'none';
515
 
516
- if (is_array($this->_getShippingTaxRules())) {
517
- foreach ($this->_getShippingTaxRules() as $key => $value) {
518
- $shipping_tax_id = $key;
519
- }
520
- } elseif ($this->_getShippingTaxRules()) {
521
- $shipping_tax_id = $this->_getShippingTaxRules() / 100;
522
- $table = new MspAlternateTaxTable();
523
- $table->name = $shipping_tax_id;
524
- $rule = new MspAlternateTaxRule($shipping_tax_id);
525
- $table->AddAlternateTaxRules($rule);
526
- $this->api->cart->AddAlternateTaxTables($table);
527
- }*/
 
 
528
 
529
- $table = new MspAlternateTaxTable();
530
- $table->name = $percentage;
531
- $rule = new MspAlternateTaxRule($percentage);
532
- $table->AddAlternateTaxRules($rule);
533
- $this->api->cart->AddAlternateTaxTables($table);
534
 
535
 
536
  $c_item = new MspItem($title, 'Shipping', 1, $price, 'KG', 0);
537
  $c_item->SetMerchantItemId('msp-shipping');
538
- $c_item->SetTaxTableSelector($percentage);
539
  $this->api->cart->AddItem($c_item);
540
  //End shipping line item
541
  //Add available taxes to the fco transaction request
@@ -919,10 +919,10 @@ class MultiSafepay_Msp_Model_Payment extends Varien_Object {
919
 
920
  $canUseCurrentCurrency = in_array(Mage::app()->getStore()->getCurrentCurrencyCode(), $currencies);
921
 
922
- if($order->getGlobalCurrencyCode() == 'EUR' && Mage::getStoreConfigFlag('msp/settings/allow_convert_currency')){
923
- $amount = $order_base_grand_total;
924
  $currencyCode = 'EUR';
925
- }elseif ($canUseCurrentCurrency) {
926
  $amount = $checked_amount_current;
927
  $currencyCode = Mage::app()->getStore()->getCurrentCurrencyCode();
928
  } elseif ($isAllowConvert) {
@@ -1043,7 +1043,7 @@ class MultiSafepay_Msp_Model_Payment extends Varien_Object {
1043
  $api->transaction['gateway'] = $this->_gateway;
1044
  }
1045
 
1046
-
1047
 
1048
 
1049
  $ideal_issuer = "";
261
 
262
  $currentCurrencyCode = Mage::app()->getStore()->getCurrentCurrencyCode();
263
  $baseCurrencyCode = Mage::app()->getBaseCurrencyCode();
264
+
265
+ if ($order->getGlobalCurrencyCode() == 'EUR' && Mage::getStoreConfigFlag('msp/settings/allow_convert_currency')) {
266
+ $amount = $order_base_grand_total;
267
  $currencyCode = 'EUR';
268
+ } elseif ($canUseCurrentCurrency) {
269
  $amount = $checked_amount_current;
270
  $currencyCode = $currentCurrencyCode;
271
  } elseif ($isAllowConvert) {
362
  } else {
363
  $this->api->gatewayinfo['phone'] = ''; //not available
364
  }
365
+
366
+
367
  if (isset($_GET['accountnumber'])) {
368
  $this->api->gatewayinfo['bankaccount'] = $_GET['accountnumber'];
369
  $this->api->customer['bankaccount'] = $_GET['accountnumber'];
385
  $this->api->gatewayinfo['birthday'] = ''; //not available
386
  }
387
 
388
+ if (($this->_gateway == "PAYAFTER" || $this->_gateway == "KLARNA") && $this->api->gatewayinfo['bankaccount'] != '' && $this->api->customer['birthday'] != '') {
389
  $this->api->transaction['special'] = true;
390
  }
391
+
392
  if ($this->_gateway == "EINVOICE") {
393
  $this->api->transaction['special'] = true;
394
  }
499
 
500
  //Add shipping line item
501
  $title = $this->getOrder()->getShippingDescription();
502
+
503
  //Code blow added to recalculate excluding tax for the shipping cost. Older Magento installations round differently, causing a 1 cent mismatch. This is why we recalculate it.
504
+ $diff = $this->getOrder()->getShippingInclTax() - $this->getOrder()->getShippingAmount();
505
+ $test = ($diff / $this->getOrder()->getShippingAmount()) * 100;
506
+ $shipping_percentage = 1 + round($test, 0) / 100;
507
+ $shippin_exc_tac_calculated = $this->getOrder()->getShippingInclTax() / $shipping_percentage;
508
+ $percentage = round($test, 0) / 100;
509
+ $price = number_format($this->_convertCurrency($shippin_exc_tac_calculated, $currentCurrencyCode, $currencyCode), 10, '.', '');
510
+ /* End code */
 
 
511
 
512
+ //$price = number_format($this->_convertCurrency($this->getOrder()->getShippingAmount(), $currentCurrencyCode, $currencyCode), 10, '.', '');
513
 
514
+ /* $shipping_tax_id = 'none';
515
+
516
+ if (is_array($this->_getShippingTaxRules())) {
517
+ foreach ($this->_getShippingTaxRules() as $key => $value) {
518
+ $shipping_tax_id = $key;
519
+ }
520
+ } elseif ($this->_getShippingTaxRules()) {
521
+ $shipping_tax_id = $this->_getShippingTaxRules() / 100;
522
+ $table = new MspAlternateTaxTable();
523
+ $table->name = $shipping_tax_id;
524
+ $rule = new MspAlternateTaxRule($shipping_tax_id);
525
+ $table->AddAlternateTaxRules($rule);
526
+ $this->api->cart->AddAlternateTaxTables($table);
527
+ } */
528
 
529
+ $table = new MspAlternateTaxTable();
530
+ $table->name = $percentage;
531
+ $rule = new MspAlternateTaxRule($percentage);
532
+ $table->AddAlternateTaxRules($rule);
533
+ $this->api->cart->AddAlternateTaxTables($table);
534
 
535
 
536
  $c_item = new MspItem($title, 'Shipping', 1, $price, 'KG', 0);
537
  $c_item->SetMerchantItemId('msp-shipping');
538
+ $c_item->SetTaxTableSelector($percentage);
539
  $this->api->cart->AddItem($c_item);
540
  //End shipping line item
541
  //Add available taxes to the fco transaction request
919
 
920
  $canUseCurrentCurrency = in_array(Mage::app()->getStore()->getCurrentCurrencyCode(), $currencies);
921
 
922
+ if ($order->getGlobalCurrencyCode() == 'EUR' && Mage::getStoreConfigFlag('msp/settings/allow_convert_currency')) {
923
+ $amount = $order_base_grand_total;
924
  $currencyCode = 'EUR';
925
+ } elseif ($canUseCurrentCurrency) {
926
  $amount = $checked_amount_current;
927
  $currencyCode = Mage::app()->getStore()->getCurrentCurrencyCode();
928
  } elseif ($isAllowConvert) {
1043
  $api->transaction['gateway'] = $this->_gateway;
1044
  }
1045
 
1046
+
1047
 
1048
 
1049
  $ideal_issuer = "";
app/code/community/MultiSafepay/Msp/Model/Servicecost/Invoice/Totals.php CHANGED
@@ -7,19 +7,15 @@ class MultiSafepay_Msp_Model_Servicecost_Invoice_Totals extends Mage_Sales_Model
7
  $invoice->setServicecost($order->getServicecost());
8
  $invoice->setBaseServicecost($order->getBaseServicecost());
9
  $invoice->setServicecostTax($order->getServicecostTax());
10
-
11
  $invoice->setBaseServicecostTax($order->getBaseServicecostTax());
12
 
13
- $invoice->setBaseTaxAmount ($order->getBaseTaxAmount()+$order->getBaseServicecostTax());
14
- $invoice->setTaxAmount ($order->getTaxAmount()+$order->getServicecostTax());
15
-
16
- $invoice->setBaseGrandTotal($invoice->getBaseGrandTotal()+$order->getBaseServicecost());
17
- $invoice->setGrandTotal ($invoice->getGrandTotal()+$order->getServicecost());
18
-
19
- $invoice->setSubtotalInclTax($invoice->getSubtotalInclTax());
20
- $invoice->setBaseSubtotalInclTax($invoice->getBaseSubtotalInclTax());
21
  $invoice->setServicecostPdf($order->getServicecostPdf());
22
 
 
23
  //Magento will get the totalpaid amount and add the invoiced amount and set the totalpaid to the new value. This results in a double totalPaid value within //the order view. This happens only when auto creation of the invoice is disabled. To fix this we will set the Total Paid to 0 before the invoice is created //and the totalpaid is update again with the total invoiced.
24
  //$order->setTotalPaid(0);
25
  return $this;
7
  $invoice->setServicecost($order->getServicecost());
8
  $invoice->setBaseServicecost($order->getBaseServicecost());
9
  $invoice->setServicecostTax($order->getServicecostTax());
 
10
  $invoice->setBaseServicecostTax($order->getBaseServicecostTax());
11
 
12
+ $invoice->setBaseGrandTotal($invoice->getBaseGrandTotal() + $invoice->getServicecost() - $invoice->getServicecostTax());
13
+ $invoice->setGrandTotal($invoice->getGrandTotal() + $invoice->getServicecost() - $invoice->getServicecostTax());
14
+ $invoice->setSubtotalInclTax($invoice->getSubtotalInclTax() - $invoice->getServicecostTax());
15
+ $invoice->setBaseSubtotalInclTax($invoice->getBaseSubtotalInclTax() - $invoice->getServicecostTax());
 
 
 
 
16
  $invoice->setServicecostPdf($order->getServicecostPdf());
17
 
18
+
19
  //Magento will get the totalpaid amount and add the invoiced amount and set the totalpaid to the new value. This results in a double totalPaid value within //the order view. This happens only when auto creation of the invoice is disabled. To fix this we will set the Total Paid to 0 before the invoice is created //and the totalpaid is update again with the total invoiced.
20
  //$order->setTotalPaid(0);
21
  return $this;
app/code/community/MultiSafepay/Msp/Model/Servicecost/Observer.php CHANGED
@@ -15,71 +15,15 @@ class MultiSafepay_Msp_Model_Servicecost_Observer {
15
  }
16
 
17
  public function creditmemoSaveAfter(Varien_Event_Observer $observer) {
18
-
19
- $data = Mage::app()->getRequest()->getPost('creditmemo');
20
-
21
- $refunded_servicecost = $data['servicecost'];
22
-
23
  $creditmemo = $observer->getEvent()->getCreditmemo();
24
- $order = $creditmemo->getOrder();
25
-
26
- if ($refunded_servicecost != '0') {
27
-
28
- $order->setServicecostRefunded($refunded_servicecost);
29
- $order->setBaseServicecostRefunded($refunded_servicecost);
30
-
31
- if ($order->getTotalOfflineRefunded() != null) {
32
- $order->setTotalOfflineRefunded($order->getTotalOfflineRefunded() - $creditmemo->getServicecost() + $refunded_servicecost);
33
- $order->setBaseTotalOfflineRefunded($order->getBaseTotalOfflineRefunded() - $creditmemo->getServicecost() + $refunded_servicecost);
34
- } else {
35
- $order->setTotalOnlineRefunded($order->getTotalOnlineRefunded() - $creditmemo->getServicecost() + $refunded_servicecost);
36
- $order->setBaseTotalOnlineRefunded($order->getBaseTotalOnlineRefunded() - $creditmemo->getServicecost() + $refunded_servicecost);
37
- }
38
- $order->setBaseTotalRefunded($order->getBaseTotalRefunded() - $creditmemo->getServicecost() + $refunded_servicecost);
39
- $order->setTotalRefunded($order->getTotalRefunded() - $creditmemo->getServicecost() + $refunded_servicecost);
40
-
41
- //$order->setServicecostTaxRefunded($creditmemo->getServicecostTax());
42
- //$order->setBaseServicecostTaxRefunded($creditmemo->getBaseServicecostTax());
43
- }else{
44
- $order->setBaseTotalRefunded($order->getBaseTotalRefunded() - $creditmemo->getServicecost() + $refunded_servicecost);
45
- $order->setTotalRefunded($order->getTotalRefunded() - $creditmemo->getServicecost() + $refunded_servicecost);
46
  }
47
- //$creditmemo->setGrandTotal(5);
48
- /* if ($creditmemo->getServicecost()) {
49
- $order = $creditmemo->getOrder();
50
- $order->setServicecostRefunded($creditmemo->getServicecost());
51
- $order->setBaseServicecostRefunded($creditmemo->getBaseServicecost());
52
- $order->setServicecostTaxRefunded($creditmemo->getServicecostTax());
53
- $order->setBaseServicecostTaxRefunded($creditmemo->getBaseServicecostTax());
54
- } */
55
  return $this;
56
  }
57
 
58
- public function creditmemoRefund(Varien_Event_Observer $observer) {
59
- $creditmemo = $observer->getEvent()->getCreditmemo();
60
- $data = Mage::app()->getRequest()->getPost('creditmemo');
61
- $order = $creditmemo->getOrder();
62
-
63
- //$base_credit = $order->getBaseTotalRefunded() + $data['servicecost'] + $data['shipping_amount'] + $data['adjustment_positive'] - $data['adjustment_negative'] - $order->getBaseServicecost();
64
- //$credit = $order->getTotalRefunded() + $data['servicecost'] + $data['shipping_amount'] + $data['adjustment_positive'] - $data['adjustment_negative'] - $order->getBaseServicecost();
65
-
66
- //Disabled to test for PLGMAG-160
67
- // $base_credit = $order->getBaseSubtotalInclTax() + $data['servicecost'] + $data['shipping_amount'] + $data['adjustment_positive'] - $data['adjustment_negative'];
68
- // $credit = $order->getSubtotalInclTax() + $data['servicecost'] + $data['shipping_amount'] + $data['adjustment_positive'] - $data['adjustment_negative'];
69
-
70
- //NEW to test for PLGMAG-160
71
- $base_credit = $creditmemo->getBaseSubtotalInclTax() + $data['servicecost'] + $data['shipping_amount'] + $data['adjustment_positive'] - $data['adjustment_negative']+$creditmemo->getShippingTaxAmount();
72
- $credit = $creditmemo->getSubtotalInclTax() + $data['servicecost'] + $data['shipping_amount'] + $data['adjustment_positive'] - $data['adjustment_negative']+$creditmemo->getShippingTaxAmount();
73
-
74
- if($data['servicecost'] >0){
75
- $tax= $creditmemo->getBaseTaxAmount()+ $order->getBaseServicecostTax();
76
- $creditmemo->setTaxAmount($tax);
77
- $creditmemo->setBaseTaxAmount($tax);
78
- }
79
-
80
-
81
- $creditmemo->setGrandTotal($credit);
82
- $creditmemo->setBaseGrandTotal($base_credit);
83
- }
84
-
85
  }
15
  }
16
 
17
  public function creditmemoSaveAfter(Varien_Event_Observer $observer) {
 
 
 
 
 
18
  $creditmemo = $observer->getEvent()->getCreditmemo();
19
+ if ($creditmemo->getServicecost()) {
20
+ $order = $creditmemo->getOrder();
21
+ $order->setServicecostRefunded($creditmemo->getServicecost());
22
+ $order->setBaseServicecostRefunded($creditmemo->getBaseServicecost());
23
+ $order->setServicecostTaxRefunded($creditmemo->getServicecostTax());
24
+ $order->setBaseServicecostTaxRefunded($creditmemo->getBaseServicecostTax());
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
25
  }
 
 
 
 
 
 
 
 
26
  return $this;
27
  }
28
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
29
  }
app/code/community/MultiSafepay/Msp/controllers/StandardController.php CHANGED
@@ -110,18 +110,33 @@ class MultiSafepay_Msp_StandardController extends Mage_Core_Controller_Front_Act
110
  $session->setLastRealOrderId($order->getIncrementId());
111
 
112
  //$url = Mage::getUrl('checkout/onepage/success?utm_nooverride=1&__store', array("__secure" => true, "__store"=> $order->getStoreId()));
113
- $url = Mage::getUrl('checkout/onepage/success?utm_nooverride', array(
114
- '_current' => true,
115
- '_use_rewrite' => true,
116
- '_secure' => true,
117
- '_store' => $order->getStoreId(),
118
- '_store_to_url' => true
119
- ));
120
- header('Content-type: text/html; charset=utf-8');
121
- header("Location: " . $url, true);
122
- header("Connection: close", true);
123
- header("Content-Length: 0", true);
124
- exit;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
125
  //$this->_redirect($url);
126
  //$this->_redirect("checkout/onepage/success?utm_nooverride=1", array("__secure" => true, "__store"=> $order->getStoreId()));
127
  }
@@ -169,9 +184,13 @@ class MultiSafepay_Msp_StandardController extends Mage_Core_Controller_Front_Act
169
 
170
  //Validate this function. Do we need this one as an extra setting? Why not just detect it on checkout -> ???
171
  if (Mage::getStoreConfig("msp/settings/use_onestepcheckout") || Mage::getStoreConfig("payment/msp/use_onestepcheckout")) {
172
- $this->_redirect("onestepcheckout?utm_nooverride=1", array("_secure" => true));
 
 
173
  } else {
174
- $this->_redirect("checkout?utm_nooverride=1", array("_secure" => true));
 
 
175
  }
176
  }
177
 
@@ -230,7 +249,7 @@ class MultiSafepay_Msp_StandardController extends Mage_Core_Controller_Front_Act
230
  $storeId = Mage::app()->getStore()->getStoreId();
231
  $config = Mage::getStoreConfig('mspcheckout' . "/settings", $storeId);
232
 
233
- if ( isset($config["active"]) && $config["active"]) {//if (isset($config["account_id"])) {
234
  $msp = new MultiSafepay();
235
  $msp->test = ($config["test_api"] == 'test');
236
  $msp->merchant['account_id'] = $config["account_id"];
@@ -268,7 +287,6 @@ class MultiSafepay_Msp_StandardController extends Mage_Core_Controller_Front_Act
268
  }
269
  $paymentModel = Mage::getSingleton("msp/" . $this->getGatewayModel());
270
 
271
-
272
  $done = $paymentModel->notification($orderId, $initial);
273
 
274
  if (!$return) {
@@ -293,33 +311,27 @@ class MultiSafepay_Msp_StandardController extends Mage_Core_Controller_Front_Act
293
  }
294
 
295
  /*
296
- * This function will generate the product feed, used for FastCheckout shopping
297
- *
298
  */
 
 
 
299
 
300
- public function feedAction() {
301
- $storeId = Mage::app()->getStore()->getStoreId();
302
- $config = Mage::getStoreConfig('mspcheckout' . "/settings", $storeId);
303
- $api_key = $this->getRequest()->getQuery('api_key');
304
- $config_api_key = $config["api_key"];
305
-
306
- if (strtoupper($api_key) == strtoupper($config_api_key)) {
307
- $keys_match = true;
308
- } else {
309
- $keys_match = false;
310
  }
311
- $json = array();
312
 
313
- if ($config["allow_fcofeed"] && $keys_match) {
314
- $products = Mage::getModel('catalog/product')->getCollection();
315
- $products->addAttributeToFilter('status', 1); //1 is set to select product in stock
316
- $products->addAttributeToFilter('visibility', 4); //4 is set to select active products
317
- $products->addAttributeToSelect('*');
318
- $prodIds = $products->getAllIds();
 
319
 
320
  foreach ($prodIds as $productId) {
321
  $product = Mage::getModel('catalog/product')->load($productId);
322
-
323
  $maincat = $subcats = '';
324
  $cats = $product->getCategoryIds();
325
  //$eee = implode(",",$cats);
@@ -330,7 +342,7 @@ class MultiSafepay_Msp_StandardController extends Mage_Core_Controller_Front_Act
330
  } else {
331
  $subcats .= ">" . $_cat->getName();
332
  }
333
- } //creating and setting parent category and other categories
334
 
335
  $product_data = array();
336
  $product_data['ProductID'] = $productId;
@@ -347,7 +359,6 @@ class MultiSafepay_Msp_StandardController extends Mage_Core_Controller_Front_Act
347
  $product_data['UniversalProductCode'] = $product->getData('upc'); //need variable
348
  $product_data['Currency'] = Mage::app()->getStore()->getCurrentCurrencyCode();
349
 
350
-
351
  foreach ($product->getOptions() as $value) {
352
  if (is_object($value)) {
353
  $values = $value->getValues();
@@ -374,15 +385,194 @@ class MultiSafepay_Msp_StandardController extends Mage_Core_Controller_Front_Act
374
  }
375
  $json[] = $product_data;
376
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
377
 
378
- $this->getResponse()->setHeader('Content-type', 'application/json', true);
379
- echo '<pre>';
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
380
 
381
- echo $this->json_readable_encode($json);
382
- echo '</pre>';
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
383
  exit;
384
  } else {
385
  echo Mage::helper("msp")->__("You are not allowed to request the product feed!");
 
386
  }
387
  }
388
 
@@ -434,4 +624,4 @@ class MultiSafepay_Msp_StandardController extends Mage_Core_Controller_Front_Act
434
  return $out;
435
  }
436
 
437
- }
110
  $session->setLastRealOrderId($order->getIncrementId());
111
 
112
  //$url = Mage::getUrl('checkout/onepage/success?utm_nooverride=1&__store', array("__secure" => true, "__store"=> $order->getStoreId()));
113
+ /* $url = Mage::getUrl('checkout/onepage/success', array(
114
+ '_current' => true,
115
+ '_use_rewrite' => true,
116
+ '_secure' => true,
117
+ '_store' => $order->getStoreId(),
118
+ '_store_to_url' => true,
119
+ 'query' => array("utm_nooverride" => 1)
120
+ )); */
121
+
122
+
123
+ $this->_redirect("checkout/onepage/success", array(
124
+ '_current' => true,
125
+ '_use_rewrite' => true,
126
+ '_secure' => true,
127
+ '_store' => $order->getStoreId(),
128
+ '_store_to_url' => true,
129
+ '_query' => array("utm_nooverride" => 1)
130
+ ));
131
+
132
+
133
+ //print_r($url);exit;
134
+
135
+ /* header('Content-type: text/html; charset=utf-8');
136
+ header("Location: " . $url, true);
137
+ header("Connection: close", true);
138
+ header("Content-Length: 0", true);
139
+ exit; */
140
  //$this->_redirect($url);
141
  //$this->_redirect("checkout/onepage/success?utm_nooverride=1", array("__secure" => true, "__store"=> $order->getStoreId()));
142
  }
184
 
185
  //Validate this function. Do we need this one as an extra setting? Why not just detect it on checkout -> ???
186
  if (Mage::getStoreConfig("msp/settings/use_onestepcheckout") || Mage::getStoreConfig("payment/msp/use_onestepcheckout")) {
187
+ //$this->_redirect("onestepcheckout?utm_nooverride=1", array("_secure" => true));
188
+ $this->_redirect("onestepcheckout", array("_secure" => true,
189
+ "query" => array("utm_nooverride" => 1)));
190
  } else {
191
+ //$this->_redirect("checkout?utm_nooverride=1", array("_secure" => true));
192
+ $this->_redirect("checkout", array("_secure" => true,
193
+ "query" => array("utm_nooverride" => 1)));
194
  }
195
  }
196
 
249
  $storeId = Mage::app()->getStore()->getStoreId();
250
  $config = Mage::getStoreConfig('mspcheckout' . "/settings", $storeId);
251
 
252
+ if (isset($config["active"]) && $config["active"]) {//if (isset($config["account_id"])) {
253
  $msp = new MultiSafepay();
254
  $msp->test = ($config["test_api"] == 'test');
255
  $msp->merchant['account_id'] = $config["account_id"];
287
  }
288
  $paymentModel = Mage::getSingleton("msp/" . $this->getGatewayModel());
289
 
 
290
  $done = $paymentModel->notification($orderId, $initial);
291
 
292
  if (!$return) {
311
  }
312
 
313
  /*
314
+ * Function that generates a JSON product feed based on productID or CategoryID
 
315
  */
316
+ public function getProductsFeed() {
317
+ $category_id = $this->getRequest()->getQuery('category_id');
318
+ $product_id = $this->getRequest()->getQuery('product_id');
319
 
320
+ if (empty($category_id) && empty($product_id)) {
321
+ echo 'Nothing to fetch. Missing product_id or category_id';
322
+ exit;
 
 
 
 
 
 
 
323
  }
 
324
 
325
+ //If category is set then get the products from that category
326
+ //If category is not set, but product_id is, then get that product
327
+ if (!empty($category_id)) {
328
+ $products = Mage::getModel('catalog/category')->load($category_id);
329
+ $productslist = $products->getProductCollection()->addAttributeToSelect('*')->addAttributeToFilter('status', 1)->addAttributeToFilter('visibility', 4);
330
+ $json = array();
331
+ $prodIds = $productslist->getAllIds();
332
 
333
  foreach ($prodIds as $productId) {
334
  $product = Mage::getModel('catalog/product')->load($productId);
 
335
  $maincat = $subcats = '';
336
  $cats = $product->getCategoryIds();
337
  //$eee = implode(",",$cats);
342
  } else {
343
  $subcats .= ">" . $_cat->getName();
344
  }
345
+ }
346
 
347
  $product_data = array();
348
  $product_data['ProductID'] = $productId;
359
  $product_data['UniversalProductCode'] = $product->getData('upc'); //need variable
360
  $product_data['Currency'] = Mage::app()->getStore()->getCurrentCurrencyCode();
361
 
 
362
  foreach ($product->getOptions() as $value) {
363
  if (is_object($value)) {
364
  $values = $value->getValues();
385
  }
386
  $json[] = $product_data;
387
  }
388
+ } elseif (!empty($product_id)) {
389
+ $json = array();
390
+ $product = Mage::getModel('catalog/product')->load($product_id);
391
+ $maincat = $subcats = '';
392
+ $cats = $product->getCategoryIds();
393
+ //$eee = implode(",",$cats);
394
+ foreach ($cats as $category_id) {
395
+ $_cat = Mage::getModel('catalog/category')->load($category_id);
396
+ if ($subcats == '') {
397
+ $maincat = $subcats = $_cat->getName();
398
+ } else {
399
+ $subcats .= ">" . $_cat->getName();
400
+ }
401
+ }
402
 
403
+ $product_data = array();
404
+ $product_data['ProductID'] = $product_id;
405
+ $product_data['ProductName'] = $product->getName();
406
+ $product_data['SKUnumber'] = $product->getSku();
407
+ $product_data['PrimaryCategory'] = $maincat;
408
+ $product_data['SecondaryCategory'] = $subcats;
409
+ $product_data['ProductURL'] = $product->getProductUrl();
410
+ $product_data['ProductImageURL'] = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA) . 'catalog/product' . $product->getImage();
411
+ $product_data['ShortProductDescription'] = substr(iconv("UTF-8", "UTF-8//IGNORE", $product->getDescription()), 0, 150) . "...";
412
+ $product_data['LongProductDescription'] = substr(iconv("UTF-8", "UTF-8//IGNORE", $product->getDescription()), 0, 2000);
413
+ $product_data['SalePrice'] = round($product->getFinalPrice(), 4);
414
+ $product_data['RetailPrice'] = round($product->getPrice(), 4);
415
+ $product_data['UniversalProductCode'] = $product->getData('upc'); //need variable
416
+ $product_data['Currency'] = Mage::app()->getStore()->getCurrentCurrencyCode();
417
+
418
+ foreach ($product->getOptions() as $value) {
419
+ if (is_object($value)) {
420
+ $values = $value->getValues();
421
+ foreach ($values as $values) {
422
+ $product_data['Options']['CustomOptions'][$value->getTitle()][] = $values->getData();
423
+ }
424
+ }
425
+ }
426
+
427
+ $attributes = $product->getAttributes();
428
+ foreach ($attributes as $attribute) {
429
+ if ($attribute->getIsVisibleOnFront()) {
430
+ $product_data['Attributes'][$attribute->getAttributeCode()] = array('label' => $attribute->getFrontend()->getLabel($product), 'value' => $attribute->getFrontend()->getValue($product));
431
+ }
432
+ }
433
+
434
+ if ($product->isConfigurable()) {
435
+ $productAttributeOptions = $product->getTypeInstance(true)->getConfigurableAttributesAsArray($product);
436
+ foreach ($productAttributeOptions as $productAttribute) {
437
+ foreach ($productAttribute['values'] as $attribute) {
438
+ $product_data['Options']['GlobalOptions'][$productAttribute['label']][$attribute['value_index']] = array('Label' => $attribute['store_label'], 'Pricing' => $attribute['pricing_value']);
439
+ }
440
+ }
441
+ }
442
+ $json[] = $product_data;
443
+ }
444
+ return json_encode($json);
445
+ }
446
+
447
+ /*
448
+ * Function that generates a JSON Categories feed.
449
+ */
450
 
451
+ public function getCategoriesFeed() {
452
+ $recursionLevel = 10;
453
+ $parent = Mage::app()->getStore()->getRootCategoryId();
454
+ $tree = Mage::getResourceModel('catalog/category_tree');
455
+ $nodes = $tree->loadNode($parent)->loadChildren($recursionLevel)->getChildren();
456
+ $tree->addCollectionData(null, false, $parent);
457
+ $categoryTreeData = new stdClass();
458
+ $categoryTreeData->categories = array();
459
+ foreach ($nodes as $node) {
460
+ $categoryTreeData->categories[] = $this->getNodeChildrenData($node);
461
+ }
462
+ return json_encode($categoryTreeData);
463
+ }
464
+
465
+ function getNodeChildrenData(Varien_Data_Tree_Node $node) {
466
+ $data = array(
467
+ 'title' => $node->getData('name'),
468
+ 'id' => $node->getData('entity_id')
469
+ );
470
+
471
+ foreach ($node->getChildren() as $childNode) {
472
+ if (!array_key_exists('children', $data)) {
473
+ $data['children'] = array();
474
+ }
475
+ $data['children'][] = $this->getNodeChildrenData($childNode);
476
+ }
477
+ return $data;
478
+ }
479
+
480
+ /*
481
+ * Function that generates a JSON Stock feed based on productID(s).
482
+ */
483
+
484
+ public function getStockFeed() {
485
+ $product_id = $this->getRequest()->getQuery('product_id');
486
+ $stock = array();
487
+ if (empty($product_id)) {
488
+ echo 'Nothing to fetch. Missing product_id.';
489
+ exit;
490
+ }
491
+
492
+ $stockItem = Mage::getModel('cataloginventory/stock_item')->loadByProduct($product_id);
493
+ $stockqty = new stdclass();
494
+ $stockqty->ProductID = $product_id;
495
+ $stockqty->Stock = $stockItem->getQty();
496
+ $stock[] = $stockqty;
497
+ return json_encode($stock);
498
+ }
499
+
500
+ /*
501
+ * Function that generates a JSON Tax feed.
502
+ */
503
+ public function getTaxFeed() {
504
+ $taxRules = Mage::getModel('tax/sales_order_tax')->getCollection();
505
+ $taxes = array();
506
+
507
+ foreach ($taxRules as $taxRule) {
508
+ print_r($taxRule);
509
+ exit;
510
+
511
+ $tax_rule = new stdclass();
512
+ $tax_rule->id = $taxRule->getTaxId();
513
+ $tax_rule->name = $taxRule->getTitle();
514
+ $tax_rule->rate = $taxRule->getPercent();
515
+ $taxes[] = $tax_rule;
516
+ }
517
+ return json_encode($taxes);
518
+ }
519
+
520
+ /*
521
+ * Function that generates a JSON Shipping feed.
522
+ */
523
+ public function getShippingFeed() {
524
+ return 'Shipping feed in json needs to be returned';
525
+ }
526
+
527
+ /*
528
+ * This function will generate the product feed, used for FastCheckout shopping
529
+ *
530
+ */
531
+ public function feedAction() {
532
+ $storeId = Mage::app()->getStore()->getStoreId();
533
+ $config = Mage::getStoreConfig('mspcheckout' . "/settings", $storeId);
534
+ $api_key = $this->getRequest()->getQuery('api_key');
535
+ $config_api_key = $config["api_key"];
536
+
537
+ if (strtoupper($api_key) == strtoupper($config_api_key)) {
538
+ $keys_match = true;
539
+ } else {
540
+ $keys_match = false;
541
+ }
542
+
543
+ //Check if feed is enabled and api keys match
544
+ if ($config["allow_fcofeed"] && $keys_match) {
545
+ $identifier = $this->getRequest()->getQuery('identifier');
546
+ if (empty($identifier)) {
547
+ echo 'Identifier not set';
548
+ exit;
549
+ }
550
+ $json = '';
551
+
552
+ switch ($identifier) {
553
+ case "products":
554
+ $json = $this->getProductsFeed();
555
+ break;
556
+ case "categories":
557
+ $json = $this->getCategoriesFeed();
558
+ break;
559
+ case "stock":
560
+ $json = $this->getStockFeed();
561
+ break;
562
+ case "tax":
563
+ $json = $this->getTaxFeed();
564
+ break;
565
+ case "shipping":
566
+ $json = $this->getShippingFeed();
567
+ break;
568
+ }
569
+
570
+ $this->getResponse()->setHeader('Content-type', 'application/json', true);
571
+ echo $json;
572
  exit;
573
  } else {
574
  echo Mage::helper("msp")->__("You are not allowed to request the product feed!");
575
+ exit;
576
  }
577
  }
578
 
624
  return $out;
625
  }
626
 
627
+ }
app/code/community/MultiSafepay/Msp/etc/config.xml CHANGED
@@ -9,7 +9,7 @@
9
  <config>
10
  <modules>
11
  <MultiSafepay_Msp>
12
- <version>2.2.6</version>
13
  </MultiSafepay_Msp>
14
  </modules>
15
  <global>
@@ -155,7 +155,7 @@
155
  </sales_order_invoice_save_after>
156
  </observers>
157
  </sales_order_invoice_save_after>
158
- <sales_order_creditmemo_save_after>
159
  <observers>
160
  <sales_order_creditmemo_save_after>
161
  <class>msp/servicecost_observer</class>
@@ -163,16 +163,16 @@
163
  </sales_order_creditmemo_save_after>
164
  </observers>
165
  </sales_order_creditmemo_save_after>
166
- <sales_order_creditmemo_refund> <!-- identifier of the event we want to catch -->
167
  <observers>
168
- <sales_order_creditmemo_refund_handler> <!-- identifier of the event handler -->
169
- <type>model</type> <!-- class method call type; valid are model, object and singleton -->
170
- <class>msp/servicecost_observer</class> <!-- observers class alias -->
171
- <method>creditmemoRefund</method> <!-- observer's method to be called -->
172
- <args></args> <!-- additional arguments passed to observer -->
173
  </sales_order_creditmemo_refund_handler>
174
  </observers>
175
- </sales_order_creditmemo_refund>
176
  </events>
177
  </global>
178
  <adminhtml>
9
  <config>
10
  <modules>
11
  <MultiSafepay_Msp>
12
+ <version>2.2.7</version>
13
  </MultiSafepay_Msp>
14
  </modules>
15
  <global>
155
  </sales_order_invoice_save_after>
156
  </observers>
157
  </sales_order_invoice_save_after>
158
+ <!--<sales_order_creditmemo_save_after>
159
  <observers>
160
  <sales_order_creditmemo_save_after>
161
  <class>msp/servicecost_observer</class>
163
  </sales_order_creditmemo_save_after>
164
  </observers>
165
  </sales_order_creditmemo_save_after>
166
+ <sales_order_creditmemo_refund>
167
  <observers>
168
+ <sales_order_creditmemo_refund_handler>
169
+ <type>model</type>
170
+ <class>msp/servicecost_observer</class>
171
+ <method>creditmemoRefund</method>
172
+ <args></args>
173
  </sales_order_creditmemo_refund_handler>
174
  </observers>
175
+ </sales_order_creditmemo_refund>-->
176
  </events>
177
  </global>
178
  <adminhtml>
app/code/community/MultiSafepay/Msp/etc/system.xml CHANGED
@@ -9,7 +9,7 @@
9
  <config>
10
  <tabs>
11
  <ms translate="label">
12
- <label><![CDATA[<div style="display:inline-block;color:#00adee;text-transform: capitalize;font-size: 120%;font-weight:900;font-family:Tahoma, Geneva, sans-serif;">Multi</div><div style="display:inline-block;color:black;text-transform: capitalize;font-size: 120%;font-weight:900;font-family:Tahoma, Geneva, sans-serif;">Safepay</div><div style="display: inline-block;vertical-align: middle;border: 3px dotted #666;width:8px;height:8px;border-radius:8px;margin-bottom:3px;margin-left:3px;"></div>&nbsp;&nbsp;]]> (2.2.6)</label>
13
  <sort_order>301</sort_order>
14
  <!--<class>admin-system-config-msp</class>-->
15
  </ms>
@@ -7088,7 +7088,7 @@
7088
  <show_in_website>1</show_in_website>
7089
  <show_in_store>1</show_in_store>
7090
  </agreements_active>
7091
- <!-- <fco_postnl>
7092
  <label>Post NL shipping</label>
7093
  <comment>If enabled the customer can select Post NL drop points</comment>
7094
  <frontend_type>select</frontend_type>
@@ -7134,13 +7134,13 @@
7134
  <show_in_store>1</show_in_store>
7135
  </xtra_birthday>
7136
  <xtra_phone>
7137
- <label>Phonenumber</label>
7138
- <frontend_type>select</frontend_type>
7139
- <source_model>msp/config_sources_fields</source_model>
7140
- <sort_order>50</sort_order>
7141
- <show_in_default>1</show_in_default>
7142
- <show_in_website>1</show_in_website>
7143
- <show_in_store>1</show_in_store>
7144
  </xtra_phone>
7145
  <xtra_chamberofcommerce>
7146
  <label>Chamber of Commerce (CoC/KvK)</label>
9
  <config>
10
  <tabs>
11
  <ms translate="label">
12
+ <label><![CDATA[<div style="display:inline-block;color:#00adee;text-transform: capitalize;font-size: 120%;font-weight:900;font-family:Tahoma, Geneva, sans-serif;">Multi</div><div style="display:inline-block;color:black;text-transform: capitalize;font-size: 120%;font-weight:900;font-family:Tahoma, Geneva, sans-serif;">Safepay</div><div style="display: inline-block;vertical-align: middle;border: 3px dotted #666;width:8px;height:8px;border-radius:8px;margin-bottom:3px;margin-left:3px;"></div>&nbsp;&nbsp;]]> (2.2.7)</label>
13
  <sort_order>301</sort_order>
14
  <!--<class>admin-system-config-msp</class>-->
15
  </ms>
7088
  <show_in_website>1</show_in_website>
7089
  <show_in_store>1</show_in_store>
7090
  </agreements_active>
7091
+ <!-- <fco_postnl>
7092
  <label>Post NL shipping</label>
7093
  <comment>If enabled the customer can select Post NL drop points</comment>
7094
  <frontend_type>select</frontend_type>
7134
  <show_in_store>1</show_in_store>
7135
  </xtra_birthday>
7136
  <xtra_phone>
7137
+ <label>Phonenumber</label>
7138
+ <frontend_type>select</frontend_type>
7139
+ <source_model>msp/config_sources_fields</source_model>
7140
+ <sort_order>50</sort_order>
7141
+ <show_in_default>1</show_in_default>
7142
+ <show_in_website>1</show_in_website>
7143
+ <show_in_store>1</show_in_store>
7144
  </xtra_phone>
7145
  <xtra_chamberofcommerce>
7146
  <label>Chamber of Commerce (CoC/KvK)</label>
app/design/adminhtml/default/default/layout/msp.xml CHANGED
@@ -13,7 +13,7 @@
13
  </reference>
14
  </adminhtml_system_config_edit>
15
 
16
- <adminhtml_sales_order_creditmemo_new>
17
  <reference name="creditmemo_totals">
18
  <block name="servicecost" type="msp/adminhtml_servicecost_totals_creditmemo" before="tax"/>
19
  </reference>
@@ -33,5 +33,5 @@
33
  <template>msp/servicecost/order/creditmemo/create/totals/adjustments.phtml</template>
34
  </action>
35
  </reference>
36
- </adminhtml_sales_order_creditmemo_updateqty>
37
  </layout>
13
  </reference>
14
  </adminhtml_system_config_edit>
15
 
16
+ <!--<adminhtml_sales_order_creditmemo_new>
17
  <reference name="creditmemo_totals">
18
  <block name="servicecost" type="msp/adminhtml_servicecost_totals_creditmemo" before="tax"/>
19
  </reference>
33
  <template>msp/servicecost/order/creditmemo/create/totals/adjustments.phtml</template>
34
  </action>
35
  </reference>
36
+ </adminhtml_sales_order_creditmemo_updateqty>-->
37
  </layout>
app/design/adminhtml/default/default/template/msp/servicecost/order/creditmemo/create/totals/adjustments.phtml CHANGED
@@ -9,16 +9,16 @@
9
  <?php $_source = $this->getSource() ?>
10
  <?php
11
  if ($_source->getInvoice()) {
12
- $fee = $_source->getInvoice()->getBaseServicecost() - $_source->getOrder()->getBaseServicecostRefunded() /*+ ($_source->getInvoice()->getBaseServicecostTax() - $_source->getOrder()->getBaseServiceTaxRefunded())*/;
13
  } else {
14
- $fee = $_source->getOrder()->getBaseServicecost() - $_source->getOrder()->getBaseServicecostRefunded()/* + ($_source->getOrder()->getBaseServicecostTax() - $_source->getOrder()->getBaseServiceTaxRefunded())*/;
15
  }
16
  ?>
17
 
18
  <?php if ($_source): ?>
19
  <tr>
20
- <td class="label"><?php echo Mage::helper('msp')->getFeeLabel($_source->getOrder()->getPayment()->getMethod()) . ' available for refund'; ?></td>
21
- <td><input type="text" name="creditmemo[servicecost]" value="<?php echo number_format(round($fee, 2), 2); ?>" class="input-text not-negative-amount" style="width:60px;text-align:right" id="servicecost"/></td>
22
  </tr>
23
  <tr>
24
  <td class="label"><?php echo $this->getShippingLabel() ?></td>
9
  <?php $_source = $this->getSource() ?>
10
  <?php
11
  if ($_source->getInvoice()) {
12
+ $fee = $_source->getInvoice()->getBaseServicecost() - $_source->getOrder()->getBaseServicecostRefunded() /* + ($_source->getInvoice()->getBaseServicecostTax() - $_source->getOrder()->getBaseServiceTaxRefunded()) */;
13
  } else {
14
+ $fee = $_source->getOrder()->getBaseServicecost() - $_source->getOrder()->getBaseServicecostRefunded()/* + ($_source->getOrder()->getBaseServicecostTax() - $_source->getOrder()->getBaseServiceTaxRefunded()) */;
15
  }
16
  ?>
17
 
18
  <?php if ($_source): ?>
19
  <tr>
20
+ <td class="label"><?php echo Mage::helper('msp')->getFeeLabel($_source->getOrder()->getPayment()->getMethod()) . ' Incl TAX (if you don\'t want to refund the fee then add the amount as an Adjustmend Fee)'; ?></td>
21
+ <td><input type="text" disabled name="creditmemo[servicecost]" value="<?php echo number_format(round($fee, 2), 2); ?>" class="input-text not-negative-amount" style="width:60px;text-align:right" id="servicecost"/></td>
22
  </tr>
23
  <tr>
24
  <td class="label"><?php echo $this->getShippingLabel() ?></td>
app/design/frontend/base/default/template/msp/default.phtml CHANGED
@@ -10,6 +10,7 @@
10
  $methods = $this->getMethods();
11
  $oneMethod = count($methods) <= 1;
12
  $lang_code = 'en';
 
13
  if (is_array($locale) && isset($locale[0])) {
14
  $lang_code = strtolower($locale[0]);
15
  }
10
  $methods = $this->getMethods();
11
  $oneMethod = count($methods) <= 1;
12
  $lang_code = 'en';
13
+ $locale = explode('_', Mage::app()->getLocale()->getLocale());
14
  if (is_array($locale) && isset($locale[0])) {
15
  $lang_code = strtolower($locale[0]);
16
  }
package.xml CHANGED
@@ -1,7 +1,7 @@
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>MultiSafepay_Msp</name>
4
- <version>2.2.6</version>
5
  <stability>stable</stability>
6
  <license uri="http://opensource.org/licenses/afl-3.0.php">AFL 3.0</license>
7
  <channel>community</channel>
@@ -10,9 +10,9 @@
10
  <description>With this module you can use all payment methods offered by MultiSafepay</description>
11
  <notes>Tested by MultiSafepay</notes>
12
  <authors><author><name>MultiSafepay</name><user>MultiSafepayDev</user><email>Info@multisafepay.com</email></author></authors>
13
- <date>2016-03-10</date>
14
- <time>13:14:34</time>
15
- <contents><target name="magecommunity"><dir name="MultiSafepay"><dir name="Msp"><dir name="Block"><dir name="Adminhtml"><dir name="Servicecost"><dir name="Totals"><file name="Creditmemo.php" hash="5aa643a629e266ec64a7e5296290542f"/><file name="Invoice.php" hash="629b3dd3428ceeb021f9e6e6d7c5f098"/><file name="Order.php" hash="a445ecb050e7ce19bf67208bf3e23131"/></dir></dir></dir><file name="Bno.php" hash="b2dd61062c2c27ee4406a3f3ed8ec8b7"/><dir name="Checkout"><dir name="Onepage"><dir name="Payment"><file name="Methods.php" hash="3f68146a2f124b51ba1b866c1816c1e1"/></dir></dir></dir><file name="Default.php" hash="196e02bdf9df0195c19bcd965b70e4e3"/><file name="Einvoice.php" hash="1ab39d03c145f2d8c877963a4b8b3ff3"/><file name="IdealIssuers.php" hash="733db7b86ba5507e4502176fe1803efd"/><file name="Klarna.php" hash="2199e9a10121ca0553d9cf125d7e6e49"/><file name="Link.php" hash="f9fd1820a8431d93139686b1b7292250"/><dir name="Servicecost"><dir name="Order"><file name="Total.php" hash="5c812703dd921e7e5ab286b03c52650b"/><file name="Totals.php" hash="1b51aff9a4d6a0595fe5acd466d1c0cf"/></dir></dir></dir><dir name="Helper"><file name="Data.php" hash="874982e75f9df72955edb51377eea3fc"/></dir><dir name="Model"><file name="Abstract.php" hash="ba8079cb854ab74d5276bfe253a8cac0"/><dir name="Api"><file name="Paylink.php" hash="d5ce7f71eb53c36566429ae4fa31293e"/><file name="Shipment.php" hash="eaff3fffdea7bed6c733325088b665fd"/></dir><file name="Base.php" hash="b41746f182aa02100dc874c7794fcd0b"/><file name="Checkout.php" hash="96856ea879f6a74695176daa78745f3e"/><dir name="Config"><dir name="Sources"><file name="Accounts.php" hash="8e1228aa67d459dbc598ecb801b7a451"/><file name="Fields.php" hash="2b2338147178664a4d29423b0bc9ab2d"/><file name="Groups.php" hash="44d2e865c1a88870c93ecb10455543c1"/><file name="Languages.php" hash="af19ca8647d353481fad4319dfdc8d09"/><dir name="Order"><file name="Currency.php" hash="b647513ac08f53ac81d09d8926f2f886"/><file name="Email.php" hash="cc6da2a79d873ed67086f23a70b096cf"/></dir><file name="TaxClasses.php" hash="56d52f22239542fc965fc0bbd34bcff8"/></dir></dir><dir name="Gateway"><file name="Abstract.php" hash="7dc2b8bd3749355a17ea833ae3ef16e8"/><file name="Amex.php" hash="ff10fce76354da776ec11a99de19606c"/><file name="Babygiftcard.php" hash="023eb1c0da2cf3c3e77d87ea429ec070"/><file name="Banktransfer.php" hash="9218c21628d646c37907e3ffeba8e7c6"/><file name="Beautyandwellness.php" hash="28ed51984587be1519fe0188d4a775c8"/><file name="Boekenbon.php" hash="cf1aef4f6007fcf488cbfdc6564398e2"/><file name="Default.php" hash="76e4d2306b681ac8f76c57eba3ee56fb"/><file name="Degrotespeelgoedwinkel.php" hash="c4e47624c833c4b18659e294ddcf85a9"/><file name="DirectDebit.php" hash="321a1ae72502d2885e04cd1c1ca43d89"/><file name="DirectEbanking.php" hash="3d90e75d9cacf8fe9344afc553104d6d"/><file name="Dotpay.php" hash="14af496acc40e56577e6eb5869e0d6b0"/><file name="Ebon.php" hash="1ae6cc3469bfc18e92ffa69099642d89"/><file name="Einvoice.php" hash="091b54f5dd58ad2683679240de69b3da"/><file name="Erotiekbon.php" hash="99661e6caff7e49c492d0aeac6d5c2a4"/><file name="Fashioncheque.php" hash="4ec0609a04738df2efb1adf5b4e690de"/><file name="Fashiongiftcard.php" hash="a770817e3c840535b85abdcd4ecf8180"/><file name="Fastcheckout.php" hash="e370882bfa34a2ead9d2a4323f4962e3"/><file name="Gezondheidsbon.php" hash="800ef8a5628b39f42c0cb952346ee5a3"/><file name="GiroPay.php" hash="dff685719e4a0748e7c316e8c4783b51"/><file name="Giveacard.php" hash="889b0269387eace387777cecedc7b5ee"/><file name="Ideal.php" hash="dd7bfe92ccc39c7ee90b623cc35425d3"/><file name="Klarna.php" hash="9fa8e0a45d3cb6fd6f80ce1eb101e260"/><file name="Lief.php" hash="c57189c1ab312d3ffff41c47c49b1d91"/><file name="Maestro.php" hash="a4da2619b078db9745e336be28f72f53"/><file name="Mastercard.php" hash="91a4aa8408fa87b29d8516dc70be5ece"/><file name="Mistercash.php" hash="2ffe2f02e631ba2a4b5efa584dfc1e47"/><file name="MultiSafepay.php" hash="39754875012e1bb404340f81f574dde3"/><file name="Parfumcadeaukaart.php" hash="8a04202d50a60a9a1ff0f805b5ae75c5"/><file name="Parfumnl.php" hash="9c807bbc577d0ca335bc0d74d20807ce"/><file name="Payafter.php" hash="b8d2815c722fa02c706d0f6b00d39c0f"/><file name="Paypal.php" hash="45607135c9717d4422ae4a2b6e39cead"/><file name="Podium.php" hash="e757417d6498dd34c9b63ae13ec5ce2e"/><file name="Sportenfit.php" hash="16d9efe4aac86e424202403342f9974a"/><file name="Standard.php" hash="43ea744c95f898f4a9ef5fe3a80bb078"/><file name="Visa.php" hash="72e0c693dca5c94aeede4d7b2c7ed432"/><file name="Vvvgiftcard.php" hash="430b679914548f26eb54464ad94aa744"/><file name="Webgift.php" hash="80c03b3609ce0860a43ea7c709044cee"/><file name="Wijncadeau.php" hash="2613b3fd6212b562588c753b403f91f9"/><file name="Yourgift.php" hash="c6b9b7d909857d5917e06b7507f8ad8c"/></dir><dir name="Observer"><file name="Abstract.php" hash="f69ae090d64e8f30b96d22b58066247c"/><file name="Order.php" hash="859dcc2de5d4e6ed3eb9378c31fdfbde"/><file name="Shipment.php" hash="50c7480da2ea0b13cf62147d4d5d7064"/></dir><file name="Payment.php" hash="a25e95bdc4da0e3ca02c686fef99f5d5"/><dir name="Service"><file name="Quote.php" hash="c724f31b72c66249555fe7021fa87cb9"/></dir><dir name="Servicecost"><dir name="Creditmemo"><file name="Total.php" hash="1096e0e8ac1bbfb91272658332b37a76"/></dir><dir name="Invoice"><file name="Totals.php" hash="f1b96f28003fea258baabb011e59380a"/></dir><file name="Observer.php" hash="62f99e3e48e95bc17e67e3ea9adc76df"/><dir name="Quote"><dir name="Address"><dir name="Total"><file name="Servicecost.php" hash="097aab822be131ab11673d4289b15cfc"/></dir></dir></dir></dir><file name="Setup.php" hash="bfa4d921685eeb25724f40c7fec0f625"/></dir><dir name="controllers"><file name="CheckoutController.php" hash="b5f6be156be78445369da1b02a4819b3"/><file name="MspPaymentController.php" hash="d2add60c93cb99ef9f2630466fbcbfdc"/><file name="StandardController.php" hash="d5cc3accedf6ed3b2c538d81c5cb3e4a"/></dir><dir name="etc"><file name="adminhtml.xml" hash="2481c2eb37cff4e04652b6e034a292dd"/><file name="config.xml" hash="a466a5f9f7950666dba66e13cd1b73af"/><file name="system.xml" hash="bb422cc6f25a3d326e4c4f8a40ce4fa1"/></dir><dir name="sql"><dir name="msp_setup"><file name="mysql4-upgrade-1.3.3-2.2.1.php" hash="f04337e65e800249b33de24709ada8e8"/></dir></dir></dir></dir></target><target name="magemedia"><dir name="msp"><file name="button.png" hash="3f109b9ccbf7e26c3600d9b445bfab4f"/><dir name="de"><file name="Thumbs.db" hash="23c6d2fa586f60e64acf307d398dfeb2"/><file name="button.png" hash="3f109b9ccbf7e26c3600d9b445bfab4f"/><file name="msp_amex.png" hash="a5e66b6516f80a7d8add7d59d6bf0e9d"/><file name="msp_babygiftcard.png" hash="85cb17a943036d86402bb439938cf616"/><file name="msp_banktransfer.png" hash="5993fd5deb6e184765d690c85ae7d740"/><file name="msp_beautyandwellness.png" hash="e8503146ce5bc90abc7f65e58b19313c"/><file name="msp_boekenbon.png" hash="c69a112af5220771b4d281978cd184ba"/><file name="msp_degrotespeelgoedwinkel.png" hash="e9193002f24d2ba35afb759b5c268be5"/><file name="msp_directdebit.png" hash="38dc09ac7c4d8e32dade12ef7b24ba75"/><file name="msp_directebanking.png" hash="a3e72c2e0053b8fab500bd171e516877"/><file name="msp_dotpay.png" hash="e6ebeb240ec6344fb317920973064e9e"/><file name="msp_ebon.png" hash="e98f08cc1108106951e01f9b186a5cdb"/><file name="msp_einvoice.png" hash="965e8a7d9885ef3e370a1960390a9c2c"/><file name="msp_erotiekbon.png" hash="b3d5a2793aabcf2f9761454c0bc95ad1"/><file name="msp_fashioncheque.png" hash="b11a52ef39ae97225def18778a4be4c2"/><file name="msp_fashiongiftcard.png" hash="9bd88e96ac9fc8803ff864e3ba438f93"/><file name="msp_gezondheidsbon.png" hash="162e54d8242699871c202e8ca8307b87"/><file name="msp_giropay.png" hash="da6c83afbcf21821ef3d88e5c955fabb"/><file name="msp_giveacard.png" hash="6ee46cd39e01b9b82dca3e5b96da40d8"/><file name="msp_ideal.png" hash="975bc03d136c0e5a37f8d5f5a710b6c7"/><file name="msp_klarna.png" hash="ade80ce9f634bbc3c60976b37db0c4b6"/><file name="msp_maestro.png" hash="94cfd9498ab1c4293099b0778c899b7b"/><file name="msp_mastercard.png" hash="dedc112da93c9aafe992b68cbe4a6051"/><file name="msp_mistercash.png" hash="c429297b30437960315df5d9b36b0118"/><file name="msp_multisafepay.png" hash="4f7ad00d5eea0113a8b52fa4ece7bf8a"/><file name="msp_parfumcadeaukaart.png" hash="270bb5bfc45a036d9b761431b540e1ad"/><file name="msp_parfumnl.png" hash="a3e69d28d44938db2fbb5a2407c76c7f"/><file name="msp_payafter.png" hash="31eab2a6944a9dc181eed046ee8ec238"/><file name="msp_paypal.png" hash="6d072cdf9a82a9f3c419ad13dbc78846"/><file name="msp_podium.png" hash="657f853f4b26ec2b3b8c4e9ebde05f79"/><file name="msp_sportenfit.png" hash="b0c817c34276ef53f6807c9007b0c660"/><file name="msp_visa.png" hash="88d54fe482cd1e2f8d5857829866cc18"/><file name="msp_vvvgiftcard.png" hash="1674320d998603cf40591fc39bd5cfcf"/><file name="msp_webgift.png" hash="cbea18654cf36cc6a743316d359a6b87"/><file name="msp_wijncadeau.png" hash="7bd0b913ad0769ae2089c3827a47182c"/><file name="msp_yourgift.png" hash="1618cabf2b2842ee26f9e81aa6977eef"/></dir><dir name="en"><file name="Thumbs.db" hash="8631718a27c51f2a091e6e954af7f434"/><file name="button.png" hash="3f109b9ccbf7e26c3600d9b445bfab4f"/><file name="msp_amex.png" hash="a5e66b6516f80a7d8add7d59d6bf0e9d"/><file name="msp_babygiftcard.png" hash="85cb17a943036d86402bb439938cf616"/><file name="msp_banktransfer.png" hash="5993fd5deb6e184765d690c85ae7d740"/><file name="msp_beautyandwellness.png" hash="e8503146ce5bc90abc7f65e58b19313c"/><file name="msp_boekenbon.png" hash="c69a112af5220771b4d281978cd184ba"/><file name="msp_degrotespeelgoedwinkel.png" hash="e9193002f24d2ba35afb759b5c268be5"/><file name="msp_directdebit.png" hash="177fe504ef710cf5eaf42cc9592c2215"/><file name="msp_directebanking.png" hash="a3e72c2e0053b8fab500bd171e516877"/><file name="msp_dotpay.png" hash="e6ebeb240ec6344fb317920973064e9e"/><file name="msp_ebon.png" hash="e98f08cc1108106951e01f9b186a5cdb"/><file name="msp_einvoice.png" hash="965e8a7d9885ef3e370a1960390a9c2c"/><file name="msp_erotiekbon.png" hash="b3d5a2793aabcf2f9761454c0bc95ad1"/><file name="msp_fashioncheque.png" hash="b11a52ef39ae97225def18778a4be4c2"/><file name="msp_fashiongiftcard.png" hash="9bd88e96ac9fc8803ff864e3ba438f93"/><file name="msp_gezondheidsbon.png" hash="162e54d8242699871c202e8ca8307b87"/><file name="msp_giropay.png" hash="da6c83afbcf21821ef3d88e5c955fabb"/><file name="msp_giveacard.png" hash="6ee46cd39e01b9b82dca3e5b96da40d8"/><file name="msp_ideal.png" hash="975bc03d136c0e5a37f8d5f5a710b6c7"/><file name="msp_klarna.png" hash="ade80ce9f634bbc3c60976b37db0c4b6"/><file name="msp_maestro.png" hash="94cfd9498ab1c4293099b0778c899b7b"/><file name="msp_mastercard.png" hash="dedc112da93c9aafe992b68cbe4a6051"/><file name="msp_mistercash.png" hash="c429297b30437960315df5d9b36b0118"/><file name="msp_multisafepay.png" hash="4f7ad00d5eea0113a8b52fa4ece7bf8a"/><file name="msp_parfumcadeaukaart.png" hash="270bb5bfc45a036d9b761431b540e1ad"/><file name="msp_parfumnl.png" hash="a3e69d28d44938db2fbb5a2407c76c7f"/><file name="msp_payafter.png" hash="31eab2a6944a9dc181eed046ee8ec238"/><file name="msp_paypal.png" hash="6d072cdf9a82a9f3c419ad13dbc78846"/><file name="msp_podium.png" hash="657f853f4b26ec2b3b8c4e9ebde05f79"/><file name="msp_sportenfit.png" hash="b0c817c34276ef53f6807c9007b0c660"/><file name="msp_visa.png" hash="88d54fe482cd1e2f8d5857829866cc18"/><file name="msp_vvvgiftcard.png" hash="1674320d998603cf40591fc39bd5cfcf"/><file name="msp_webgift.png" hash="cbea18654cf36cc6a743316d359a6b87"/><file name="msp_wijncadeau.png" hash="7bd0b913ad0769ae2089c3827a47182c"/><file name="msp_yourgift.png" hash="1618cabf2b2842ee26f9e81aa6977eef"/></dir><dir name="es"><file name="Thumbs.db" hash="c67f35358ffef6d7986bb93f1e65eae6"/><file name="button.png" hash="3f109b9ccbf7e26c3600d9b445bfab4f"/><file name="msp_amex.png" hash="a5e66b6516f80a7d8add7d59d6bf0e9d"/><file name="msp_babygiftcard.png" hash="85cb17a943036d86402bb439938cf616"/><file name="msp_banktransfer.png" hash="0ba666cf841114b892667331c8aaad4e"/><file name="msp_beautyandwellness.png" hash="e8503146ce5bc90abc7f65e58b19313c"/><file name="msp_boekenbon.png" hash="c69a112af5220771b4d281978cd184ba"/><file name="msp_degrotespeelgoedwinkel.png" hash="e9193002f24d2ba35afb759b5c268be5"/><file name="msp_directdebit.png" hash="3ffde6c7a1eec68da96ea11518dfde55"/><file name="msp_directebanking.png" hash="a3e72c2e0053b8fab500bd171e516877"/><file name="msp_dotpay.png" hash="e6ebeb240ec6344fb317920973064e9e"/><file name="msp_ebon.png" hash="e98f08cc1108106951e01f9b186a5cdb"/><file name="msp_einvoice.png" hash="965e8a7d9885ef3e370a1960390a9c2c"/><file name="msp_erotiekbon.png" hash="b3d5a2793aabcf2f9761454c0bc95ad1"/><file name="msp_fashioncheque.png" hash="b11a52ef39ae97225def18778a4be4c2"/><file name="msp_fashiongiftcard.png" hash="9bd88e96ac9fc8803ff864e3ba438f93"/><file name="msp_gezondheidsbon.png" hash="162e54d8242699871c202e8ca8307b87"/><file name="msp_giropay.png" hash="da6c83afbcf21821ef3d88e5c955fabb"/><file name="msp_giveacard.png" hash="6ee46cd39e01b9b82dca3e5b96da40d8"/><file name="msp_ideal.png" hash="975bc03d136c0e5a37f8d5f5a710b6c7"/><file name="msp_klarna.png" hash="ade80ce9f634bbc3c60976b37db0c4b6"/><file name="msp_maestro.png" hash="94cfd9498ab1c4293099b0778c899b7b"/><file name="msp_mastercard.png" hash="dedc112da93c9aafe992b68cbe4a6051"/><file name="msp_mistercash.png" hash="c429297b30437960315df5d9b36b0118"/><file name="msp_multisafepay.png" hash="4f7ad00d5eea0113a8b52fa4ece7bf8a"/><file name="msp_parfumcadeaukaart.png" hash="270bb5bfc45a036d9b761431b540e1ad"/><file name="msp_parfumnl.png" hash="a3e69d28d44938db2fbb5a2407c76c7f"/><file name="msp_payafter.png" hash="31eab2a6944a9dc181eed046ee8ec238"/><file name="msp_paypal.png" hash="6d072cdf9a82a9f3c419ad13dbc78846"/><file name="msp_podium.png" hash="657f853f4b26ec2b3b8c4e9ebde05f79"/><file name="msp_sportenfit.png" hash="b0c817c34276ef53f6807c9007b0c660"/><file name="msp_visa.png" hash="88d54fe482cd1e2f8d5857829866cc18"/><file name="msp_vvvgiftcard.png" hash="1674320d998603cf40591fc39bd5cfcf"/><file name="msp_webgift.png" hash="cbea18654cf36cc6a743316d359a6b87"/><file name="msp_wijncadeau.png" hash="7bd0b913ad0769ae2089c3827a47182c"/><file name="msp_yourgift.png" hash="1618cabf2b2842ee26f9e81aa6977eef"/></dir><dir name="fr"><file name="Thumbs.db" hash="163c29258e74e6c5809b93399db36904"/><file name="button.png" hash="3f109b9ccbf7e26c3600d9b445bfab4f"/><file name="msp_amex.png" hash="a5e66b6516f80a7d8add7d59d6bf0e9d"/><file name="msp_babygiftcard.png" hash="85cb17a943036d86402bb439938cf616"/><file name="msp_banktransfer.png" hash="87bb8916f81ed310cf5cb3aed814fb9d"/><file name="msp_beautyandwellness.png" hash="e8503146ce5bc90abc7f65e58b19313c"/><file name="msp_boekenbon.png" hash="c69a112af5220771b4d281978cd184ba"/><file name="msp_degrotespeelgoedwinkel.png" hash="e9193002f24d2ba35afb759b5c268be5"/><file name="msp_directdebit.png" hash="f0b641efb330c71dbdbf9eb71617605f"/><file name="msp_directebanking.png" hash="a3e72c2e0053b8fab500bd171e516877"/><file name="msp_dotpay.png" hash="e6ebeb240ec6344fb317920973064e9e"/><file name="msp_ebon.png" hash="e98f08cc1108106951e01f9b186a5cdb"/><file name="msp_einvoice.png" hash="965e8a7d9885ef3e370a1960390a9c2c"/><file name="msp_erotiekbon.png" hash="b3d5a2793aabcf2f9761454c0bc95ad1"/><file name="msp_fashioncheque.png" hash="b11a52ef39ae97225def18778a4be4c2"/><file name="msp_fashiongiftcard.png" hash="9bd88e96ac9fc8803ff864e3ba438f93"/><file name="msp_gezondheidsbon.png" hash="162e54d8242699871c202e8ca8307b87"/><file name="msp_giropay.png" hash="da6c83afbcf21821ef3d88e5c955fabb"/><file name="msp_giveacard.png" hash="6ee46cd39e01b9b82dca3e5b96da40d8"/><file name="msp_ideal.png" hash="975bc03d136c0e5a37f8d5f5a710b6c7"/><file name="msp_klarna.png" hash="ade80ce9f634bbc3c60976b37db0c4b6"/><file name="msp_maestro.png" hash="94cfd9498ab1c4293099b0778c899b7b"/><file name="msp_mastercard.png" hash="dedc112da93c9aafe992b68cbe4a6051"/><file name="msp_mistercash.png" hash="c429297b30437960315df5d9b36b0118"/><file name="msp_multisafepay.png" hash="4f7ad00d5eea0113a8b52fa4ece7bf8a"/><file name="msp_parfumcadeaukaart.png" hash="270bb5bfc45a036d9b761431b540e1ad"/><file name="msp_parfumnl.png" hash="a3e69d28d44938db2fbb5a2407c76c7f"/><file name="msp_payafter.png" hash="31eab2a6944a9dc181eed046ee8ec238"/><file name="msp_paypal.png" hash="6d072cdf9a82a9f3c419ad13dbc78846"/><file name="msp_podium.png" hash="657f853f4b26ec2b3b8c4e9ebde05f79"/><file name="msp_sportenfit.png" hash="b0c817c34276ef53f6807c9007b0c660"/><file name="msp_visa.png" hash="88d54fe482cd1e2f8d5857829866cc18"/><file name="msp_vvvgiftcard.png" hash="1674320d998603cf40591fc39bd5cfcf"/><file name="msp_webgift.png" hash="cbea18654cf36cc6a743316d359a6b87"/><file name="msp_wijncadeau.png" hash="7bd0b913ad0769ae2089c3827a47182c"/><file name="msp_yourgift.png" hash="1618cabf2b2842ee26f9e81aa6977eef"/></dir><dir name="it"><file name="Thumbs.db" hash="06947336d2daae296c3aa6e0d0666a3e"/><file name="button.png" hash="3f109b9ccbf7e26c3600d9b445bfab4f"/><file name="msp_amex.png" hash="a5e66b6516f80a7d8add7d59d6bf0e9d"/><file name="msp_babygiftcard.png" hash="85cb17a943036d86402bb439938cf616"/><file name="msp_banktransfer.png" hash="eaf1b22dbe6ad0ad3e8c7108552359ad"/><file name="msp_beautyandwellness.png" hash="e8503146ce5bc90abc7f65e58b19313c"/><file name="msp_boekenbon.png" hash="c69a112af5220771b4d281978cd184ba"/><file name="msp_degrotespeelgoedwinkel.png" hash="e9193002f24d2ba35afb759b5c268be5"/><file name="msp_directdebit.png" hash="dfb3d359a9b48c88dc71ef65af9ea356"/><file name="msp_directebanking.png" hash="a3e72c2e0053b8fab500bd171e516877"/><file name="msp_dotpay.png" hash="e6ebeb240ec6344fb317920973064e9e"/><file name="msp_ebon.png" hash="e98f08cc1108106951e01f9b186a5cdb"/><file name="msp_einvoice.png" hash="965e8a7d9885ef3e370a1960390a9c2c"/><file name="msp_erotiekbon.png" hash="b3d5a2793aabcf2f9761454c0bc95ad1"/><file name="msp_fashioncheque.png" hash="b11a52ef39ae97225def18778a4be4c2"/><file name="msp_fashiongiftcard.png" hash="9bd88e96ac9fc8803ff864e3ba438f93"/><file name="msp_gezondheidsbon.png" hash="162e54d8242699871c202e8ca8307b87"/><file name="msp_giropay.png" hash="da6c83afbcf21821ef3d88e5c955fabb"/><file name="msp_giveacard.png" hash="6ee46cd39e01b9b82dca3e5b96da40d8"/><file name="msp_ideal.png" hash="975bc03d136c0e5a37f8d5f5a710b6c7"/><file name="msp_klarna.png" hash="ade80ce9f634bbc3c60976b37db0c4b6"/><file name="msp_maestro.png" hash="94cfd9498ab1c4293099b0778c899b7b"/><file name="msp_mastercard.png" hash="dedc112da93c9aafe992b68cbe4a6051"/><file name="msp_mistercash.png" hash="c429297b30437960315df5d9b36b0118"/><file name="msp_multisafepay.png" hash="4f7ad00d5eea0113a8b52fa4ece7bf8a"/><file name="msp_parfumcadeaukaart.png" hash="270bb5bfc45a036d9b761431b540e1ad"/><file name="msp_parfumnl.png" hash="a3e69d28d44938db2fbb5a2407c76c7f"/><file name="msp_payafter.png" hash="31eab2a6944a9dc181eed046ee8ec238"/><file name="msp_paypal.png" hash="6d072cdf9a82a9f3c419ad13dbc78846"/><file name="msp_podium.png" hash="657f853f4b26ec2b3b8c4e9ebde05f79"/><file name="msp_sportenfit.png" hash="b0c817c34276ef53f6807c9007b0c660"/><file name="msp_visa.png" hash="88d54fe482cd1e2f8d5857829866cc18"/><file name="msp_vvvgiftcard.png" hash="1674320d998603cf40591fc39bd5cfcf"/><file name="msp_webgift.png" hash="cbea18654cf36cc6a743316d359a6b87"/><file name="msp_wijncadeau.png" hash="7bd0b913ad0769ae2089c3827a47182c"/><file name="msp_yourgift.png" hash="1618cabf2b2842ee26f9e81aa6977eef"/></dir><dir name="nl"><file name="Thumbs.db" hash="1b02d4a7ea1014a099e3abc3fffc4902"/><file name="button.png" hash="3f109b9ccbf7e26c3600d9b445bfab4f"/><file name="msp_amex.png" hash="a5e66b6516f80a7d8add7d59d6bf0e9d"/><file name="msp_babygiftcard.png" hash="85cb17a943036d86402bb439938cf616"/><file name="msp_banktransfer.png" hash="404edf4cd1e16a79e2c72db944f00ae6"/><file name="msp_beautyandwellness.png" hash="e8503146ce5bc90abc7f65e58b19313c"/><file name="msp_boekenbon.png" hash="c69a112af5220771b4d281978cd184ba"/><file name="msp_degrotespeelgoedwinkel.png" hash="e9193002f24d2ba35afb759b5c268be5"/><file name="msp_directdebit.png" hash="df54e38016cda0b1dbd537b4784278f7"/><file name="msp_directebanking.png" hash="a3e72c2e0053b8fab500bd171e516877"/><file name="msp_dotpay.png" hash="e6ebeb240ec6344fb317920973064e9e"/><file name="msp_ebon.png" hash="e98f08cc1108106951e01f9b186a5cdb"/><file name="msp_einvoice.png" hash="965e8a7d9885ef3e370a1960390a9c2c"/><file name="msp_erotiekbon.png" hash="b3d5a2793aabcf2f9761454c0bc95ad1"/><file name="msp_fashioncheque.png" hash="b11a52ef39ae97225def18778a4be4c2"/><file name="msp_fashiongiftcard.png" hash="9bd88e96ac9fc8803ff864e3ba438f93"/><file name="msp_gezondheidsbon.png" hash="162e54d8242699871c202e8ca8307b87"/><file name="msp_giropay.png" hash="da6c83afbcf21821ef3d88e5c955fabb"/><file name="msp_giveacard.png" hash="6ee46cd39e01b9b82dca3e5b96da40d8"/><file name="msp_ideal.png" hash="975bc03d136c0e5a37f8d5f5a710b6c7"/><file name="msp_klarna.png" hash="ade80ce9f634bbc3c60976b37db0c4b6"/><file name="msp_maestro.png" hash="94cfd9498ab1c4293099b0778c899b7b"/><file name="msp_mastercard.png" hash="dedc112da93c9aafe992b68cbe4a6051"/><file name="msp_mistercash.png" hash="c429297b30437960315df5d9b36b0118"/><file name="msp_multisafepay.png" hash="4f7ad00d5eea0113a8b52fa4ece7bf8a"/><file name="msp_parfumcadeaukaart.png" hash="270bb5bfc45a036d9b761431b540e1ad"/><file name="msp_parfumnl.png" hash="a3e69d28d44938db2fbb5a2407c76c7f"/><file name="msp_payafter.png" hash="31eab2a6944a9dc181eed046ee8ec238"/><file name="msp_paypal.png" hash="6d072cdf9a82a9f3c419ad13dbc78846"/><file name="msp_podium.png" hash="657f853f4b26ec2b3b8c4e9ebde05f79"/><file name="msp_sportenfit.png" hash="b0c817c34276ef53f6807c9007b0c660"/><file name="msp_visa.png" hash="88d54fe482cd1e2f8d5857829866cc18"/><file name="msp_vvvgiftcard.png" hash="1674320d998603cf40591fc39bd5cfcf"/><file name="msp_webgift.png" hash="cbea18654cf36cc6a743316d359a6b87"/><file name="msp_wijncadeau.png" hash="7bd0b913ad0769ae2089c3827a47182c"/><file name="msp_yourgift.png" hash="1618cabf2b2842ee26f9e81aa6977eef"/></dir></dir></target><target name="magedesign"><dir name="frontend"><dir name="base"><dir name="default"><dir name="template"><dir name="msp"><file name="agreements.phtml" hash="93ceba499bbad259c94b566add5924d9"/><file name="bno.phtml" hash="2e20726326a3ceee335bf6b57b6b831a"/><file name="default.phtml" hash="6403401c2bbfda109aec189f702079fe"/><file name="einvoice.phtml" hash="b691a94a88acce1527e7bf44e106ea3d"/><file name="idealissuers.phtml" hash="18d649be3767ab48f38465c367ca5250"/><file name="klarna.phtml" hash="57e7c3b019d4b637e6dbe46c39ff31af"/><file name="link.phtml" hash="278f910fb3f4cb820d3111066e85f067"/><file name="linkText.phtml" hash="d94fba14433870541603c1b3943d6ae8"/></dir></dir><dir name="layout"><file name="msp.xml" hash="cf698709a65bb5b471b992149f210ace"/></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="msp.xml" hash="286704d7c1f75c943c46dddb512d2bd1"/></dir><dir name="template"><dir name="msp"><file name="gateways.phtml" hash="ed4cf6ffc3e0dba9ec5fc7d5c80b8ee1"/><file name="idealissuers.phtml" hash="ed4cf6ffc3e0dba9ec5fc7d5c80b8ee1"/><file name="klarna.phtml" hash="24ab559d8d59ee0fcad070d071bb5708"/><dir name="servicecost"><dir name="order"><dir name="creditmemo"><dir name="create"><dir name="totals"><file name="adjustments.phtml" hash="f7a3267b2be5163c89e2fff231a20275"/></dir></dir></dir></dir></dir></dir></dir></dir></dir></dir></target><target name="mage"><dir name="lib"><dir name="multisafepay"><file name="MultiSafepay.combined.php" hash="585c7ebad57e33122698ba0662d66d9d"/></dir></dir></target><target name="mageetc"><dir name="modules"><file name="MultiSafepay_Msp.xml" hash="e6899e0295b157d6ad3a37334f2330ae"/></dir></target><target name="magelocale"><dir name="nl_NL"><file name="MultiSafepay_Msp.csv" hash="4b4736b69b17e654a7f0531acb6e887a"/></dir><dir name="de_DE"><file name="MultiSafepay_Msp.csv" hash="cbf33fe7b3be78b7c12f1e86e16a2a01"/></dir><dir name="en_EN"><file name="MultiSafepay_Msp.csv" hash="ed854aac72b11e698c578218b6f4906e"/></dir><dir name="es_ES"><file name="MultiSafepay_Msp.csv" hash="f6c76aa1273e1a4e897b0e6c5aac780c"/></dir><dir name="fr_FR"><file name="MultiSafepay_Msp.csv" hash="ff58587f6c892f4de9074282a2a997f0"/></dir><dir name="it_IT"><file name="MultiSafepay_Msp.csv" hash="0332fffa252445398724d76ecb4232e0"/></dir></target><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="js"><dir name="MultiSafepay"><file name="config.js" hash="d41d8cd98f00b204e9800998ecf8427e"/></dir></dir><dir name="images"><dir name="msp"><file name="button.png" hash="3f109b9ccbf7e26c3600d9b445bfab4f"/><dir name="nl"><file name="button.png" hash="3f109b9ccbf7e26c3600d9b445bfab4f"/><file name="msp_amex.png" hash="a5e66b6516f80a7d8add7d59d6bf0e9d"/><file name="msp_babygiftcard.png" hash="85cb17a943036d86402bb439938cf616"/><file name="msp_banktransfer.png" hash="404edf4cd1e16a79e2c72db944f00ae6"/><file name="msp_beautyandwellness.png" hash="e8503146ce5bc90abc7f65e58b19313c"/><file name="msp_boekenbon.png" hash="c69a112af5220771b4d281978cd184ba"/><file name="msp_degrotespeelgoedwinkel.png" hash="e9193002f24d2ba35afb759b5c268be5"/><file name="msp_directdebit.png" hash="df54e38016cda0b1dbd537b4784278f7"/><file name="msp_directebanking.png" hash="a3e72c2e0053b8fab500bd171e516877"/><file name="msp_dotpay.png" hash="f2363b7e5fde1f4717d803f45e29a622"/><file name="msp_ebon.png" hash="e98f08cc1108106951e01f9b186a5cdb"/><file name="msp_einvoice.png" hash="965e8a7d9885ef3e370a1960390a9c2c"/><file name="msp_erotiekbon.png" hash="b3d5a2793aabcf2f9761454c0bc95ad1"/><file name="msp_fashioncheque.png" hash="b11a52ef39ae97225def18778a4be4c2"/><file name="msp_fashiongiftcard.png" hash="9bd88e96ac9fc8803ff864e3ba438f93"/><file name="msp_gezondheidsbon.png" hash="162e54d8242699871c202e8ca8307b87"/><file name="msp_giropay.png" hash="da6c83afbcf21821ef3d88e5c955fabb"/><file name="msp_giveacard.png" hash="6ee46cd39e01b9b82dca3e5b96da40d8"/><file name="msp_ideal.png" hash="975bc03d136c0e5a37f8d5f5a710b6c7"/><file name="msp_klarna.png" hash="ade80ce9f634bbc3c60976b37db0c4b6"/><file name="msp_maestro.png" hash="94cfd9498ab1c4293099b0778c899b7b"/><file name="msp_mastercard.png" hash="dedc112da93c9aafe992b68cbe4a6051"/><file name="msp_mistercash.png" hash="c429297b30437960315df5d9b36b0118"/><file name="msp_multisafepay.png" hash="4f7ad00d5eea0113a8b52fa4ece7bf8a"/><file name="msp_parfumcadeaukaart.png" hash="270bb5bfc45a036d9b761431b540e1ad"/><file name="msp_parfumnl.png" hash="a3e69d28d44938db2fbb5a2407c76c7f"/><file name="msp_payafter.png" hash="31eab2a6944a9dc181eed046ee8ec238"/><file name="msp_paypal.png" hash="6d072cdf9a82a9f3c419ad13dbc78846"/><file name="msp_podium.png" hash="657f853f4b26ec2b3b8c4e9ebde05f79"/><file name="msp_sportenfit.png" hash="b0c817c34276ef53f6807c9007b0c660"/><file name="msp_visa.png" hash="88d54fe482cd1e2f8d5857829866cc18"/><file name="msp_vvvgiftcard.png" hash="1674320d998603cf40591fc39bd5cfcf"/><file name="msp_webgift.png" hash="cbea18654cf36cc6a743316d359a6b87"/><file name="msp_wijncadeau.png" hash="7bd0b913ad0769ae2089c3827a47182c"/><file name="msp_yourgift.png" hash="1618cabf2b2842ee26f9e81aa6977eef"/></dir></dir></dir><dir name="css"><dir name="MultiSafepay"><file name="config.css" hash="db08ddd5a22d456d213a7179399c830b"/></dir></dir></dir></dir></dir></target></contents>
16
  <compatible/>
17
  <dependencies><required><php><min>5.2.13</min><max>7.0.1</max></php></required></dependencies>
18
  </package>
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>MultiSafepay_Msp</name>
4
+ <version>2.2.7</version>
5
  <stability>stable</stability>
6
  <license uri="http://opensource.org/licenses/afl-3.0.php">AFL 3.0</license>
7
  <channel>community</channel>
10
  <description>With this module you can use all payment methods offered by MultiSafepay</description>
11
  <notes>Tested by MultiSafepay</notes>
12
  <authors><author><name>MultiSafepay</name><user>MultiSafepayDev</user><email>Info@multisafepay.com</email></author></authors>
13
+ <date>2016-05-26</date>
14
+ <time>11:37:19</time>
15
+ <contents><target name="magecommunity"><dir name="MultiSafepay"><dir name="Msp"><dir name="Block"><dir name="Adminhtml"><dir name="Servicecost"><dir name="Totals"><file name="Creditmemo.php" hash="e403b6a33c2543395aa25016cc52626c"/><file name="Invoice.php" hash="822a1696e6827e183b96cefa1d2582ce"/><file name="Order.php" hash="a445ecb050e7ce19bf67208bf3e23131"/></dir></dir></dir><file name="Bno.php" hash="b2dd61062c2c27ee4406a3f3ed8ec8b7"/><dir name="Checkout"><dir name="Onepage"><dir name="Payment"><file name="Methods.php" hash="3f68146a2f124b51ba1b866c1816c1e1"/></dir></dir></dir><file name="Default.php" hash="196e02bdf9df0195c19bcd965b70e4e3"/><file name="Einvoice.php" hash="1ab39d03c145f2d8c877963a4b8b3ff3"/><file name="IdealIssuers.php" hash="733db7b86ba5507e4502176fe1803efd"/><file name="Klarna.php" hash="2199e9a10121ca0553d9cf125d7e6e49"/><file name="Link.php" hash="f9fd1820a8431d93139686b1b7292250"/><dir name="Servicecost"><dir name="Order"><file name="Total.php" hash="0e1efe7403334adce5cea4a2cab5349b"/><file name="Totals.php" hash="89dc0bee3dcbdf8291d85a0db968e93b"/></dir></dir></dir><dir name="Helper"><file name="Data.php" hash="874982e75f9df72955edb51377eea3fc"/></dir><dir name="Model"><file name="Abstract.php" hash="ba8079cb854ab74d5276bfe253a8cac0"/><dir name="Api"><file name="Paylink.php" hash="c96b7a9ff64b343d92eecac8f7a649d1"/><file name="Shipment.php" hash="eaff3fffdea7bed6c733325088b665fd"/></dir><file name="Base.php" hash="c8fdf2afaeef09a34fcec9da1ac48260"/><file name="Checkout.php" hash="26ff638915df4773f9dce24683163ccc"/><dir name="Config"><dir name="Sources"><file name="Accounts.php" hash="8e1228aa67d459dbc598ecb801b7a451"/><file name="Fields.php" hash="2b2338147178664a4d29423b0bc9ab2d"/><file name="Groups.php" hash="44d2e865c1a88870c93ecb10455543c1"/><file name="Languages.php" hash="af19ca8647d353481fad4319dfdc8d09"/><dir name="Order"><file name="Currency.php" hash="b647513ac08f53ac81d09d8926f2f886"/><file name="Email.php" hash="cc6da2a79d873ed67086f23a70b096cf"/></dir><file name="TaxClasses.php" hash="56d52f22239542fc965fc0bbd34bcff8"/></dir></dir><dir name="Gateway"><file name="Abstract.php" hash="834c251b990eb85d0a52e37aea712e99"/><file name="Amex.php" hash="ff10fce76354da776ec11a99de19606c"/><file name="Babygiftcard.php" hash="023eb1c0da2cf3c3e77d87ea429ec070"/><file name="Banktransfer.php" hash="9218c21628d646c37907e3ffeba8e7c6"/><file name="Beautyandwellness.php" hash="28ed51984587be1519fe0188d4a775c8"/><file name="Boekenbon.php" hash="cf1aef4f6007fcf488cbfdc6564398e2"/><file name="Default.php" hash="76e4d2306b681ac8f76c57eba3ee56fb"/><file name="Degrotespeelgoedwinkel.php" hash="c4e47624c833c4b18659e294ddcf85a9"/><file name="DirectDebit.php" hash="321a1ae72502d2885e04cd1c1ca43d89"/><file name="DirectEbanking.php" hash="3d90e75d9cacf8fe9344afc553104d6d"/><file name="Dotpay.php" hash="14af496acc40e56577e6eb5869e0d6b0"/><file name="Ebon.php" hash="1ae6cc3469bfc18e92ffa69099642d89"/><file name="Einvoice.php" hash="82776bb882bc7bdacabafcd105859e66"/><file name="Erotiekbon.php" hash="99661e6caff7e49c492d0aeac6d5c2a4"/><file name="Fashioncheque.php" hash="4ec0609a04738df2efb1adf5b4e690de"/><file name="Fashiongiftcard.php" hash="a770817e3c840535b85abdcd4ecf8180"/><file name="Fastcheckout.php" hash="e370882bfa34a2ead9d2a4323f4962e3"/><file name="Gezondheidsbon.php" hash="800ef8a5628b39f42c0cb952346ee5a3"/><file name="GiroPay.php" hash="dff685719e4a0748e7c316e8c4783b51"/><file name="Giveacard.php" hash="889b0269387eace387777cecedc7b5ee"/><file name="Ideal.php" hash="dd7bfe92ccc39c7ee90b623cc35425d3"/><file name="Klarna.php" hash="9fa8e0a45d3cb6fd6f80ce1eb101e260"/><file name="Lief.php" hash="c57189c1ab312d3ffff41c47c49b1d91"/><file name="Maestro.php" hash="a4da2619b078db9745e336be28f72f53"/><file name="Mastercard.php" hash="91a4aa8408fa87b29d8516dc70be5ece"/><file name="Mistercash.php" hash="2ffe2f02e631ba2a4b5efa584dfc1e47"/><file name="MultiSafepay.php" hash="39754875012e1bb404340f81f574dde3"/><file name="Parfumcadeaukaart.php" hash="8a04202d50a60a9a1ff0f805b5ae75c5"/><file name="Parfumnl.php" hash="9c807bbc577d0ca335bc0d74d20807ce"/><file name="Payafter.php" hash="b8d2815c722fa02c706d0f6b00d39c0f"/><file name="Paypal.php" hash="45607135c9717d4422ae4a2b6e39cead"/><file name="Podium.php" hash="e757417d6498dd34c9b63ae13ec5ce2e"/><file name="Sportenfit.php" hash="16d9efe4aac86e424202403342f9974a"/><file name="Standard.php" hash="43ea744c95f898f4a9ef5fe3a80bb078"/><file name="Visa.php" hash="72e0c693dca5c94aeede4d7b2c7ed432"/><file name="Vvvgiftcard.php" hash="430b679914548f26eb54464ad94aa744"/><file name="Webgift.php" hash="80c03b3609ce0860a43ea7c709044cee"/><file name="Wijncadeau.php" hash="2613b3fd6212b562588c753b403f91f9"/><file name="Yourgift.php" hash="c6b9b7d909857d5917e06b7507f8ad8c"/></dir><dir name="Observer"><file name="Abstract.php" hash="f69ae090d64e8f30b96d22b58066247c"/><file name="Order.php" hash="f148187ae3547378d5d624312ad14547"/><file name="Shipment.php" hash="50c7480da2ea0b13cf62147d4d5d7064"/></dir><file name="Payment.php" hash="eaa6e7e8b4d68578feaf60f1548b6b43"/><dir name="Service"><file name="Quote.php" hash="c724f31b72c66249555fe7021fa87cb9"/></dir><dir name="Servicecost"><dir name="Creditmemo"><file name="Total.php" hash="1096e0e8ac1bbfb91272658332b37a76"/></dir><dir name="Invoice"><file name="Totals.php" hash="d59b1a4ca34c91a383f08be0fa09a19a"/></dir><file name="Observer.php" hash="60bbe048424c1581630c3365e7abd5ba"/><dir name="Quote"><dir name="Address"><dir name="Total"><file name="Servicecost.php" hash="097aab822be131ab11673d4289b15cfc"/></dir></dir></dir></dir><file name="Setup.php" hash="bfa4d921685eeb25724f40c7fec0f625"/></dir><dir name="controllers"><file name="CheckoutController.php" hash="b5f6be156be78445369da1b02a4819b3"/><file name="MspPaymentController.php" hash="d2add60c93cb99ef9f2630466fbcbfdc"/><file name="StandardController.php" hash="a9ec343ece78f27faa9292fcea161d94"/></dir><dir name="etc"><file name="adminhtml.xml" hash="2481c2eb37cff4e04652b6e034a292dd"/><file name="config.xml" hash="0b99a022d63b092859f718d0a17efaf0"/><file name="system.xml" hash="d33d625a3368e9eae92766aa4b8f5591"/></dir><dir name="sql"><dir name="msp_setup"><file name="mysql4-upgrade-1.3.3-2.2.1.php" hash="f04337e65e800249b33de24709ada8e8"/></dir></dir></dir></dir></target><target name="magemedia"><dir name="msp"><file name="button.png" hash="3f109b9ccbf7e26c3600d9b445bfab4f"/><dir name="de"><file name="Thumbs.db" hash="23c6d2fa586f60e64acf307d398dfeb2"/><file name="button.png" hash="3f109b9ccbf7e26c3600d9b445bfab4f"/><file name="msp_amex.png" hash="a5e66b6516f80a7d8add7d59d6bf0e9d"/><file name="msp_babygiftcard.png" hash="85cb17a943036d86402bb439938cf616"/><file name="msp_banktransfer.png" hash="5993fd5deb6e184765d690c85ae7d740"/><file name="msp_beautyandwellness.png" hash="e8503146ce5bc90abc7f65e58b19313c"/><file name="msp_boekenbon.png" hash="c69a112af5220771b4d281978cd184ba"/><file name="msp_degrotespeelgoedwinkel.png" hash="e9193002f24d2ba35afb759b5c268be5"/><file name="msp_directdebit.png" hash="38dc09ac7c4d8e32dade12ef7b24ba75"/><file name="msp_directebanking.png" hash="a3e72c2e0053b8fab500bd171e516877"/><file name="msp_dotpay.png" hash="e6ebeb240ec6344fb317920973064e9e"/><file name="msp_ebon.png" hash="e98f08cc1108106951e01f9b186a5cdb"/><file name="msp_einvoice.png" hash="965e8a7d9885ef3e370a1960390a9c2c"/><file name="msp_erotiekbon.png" hash="b3d5a2793aabcf2f9761454c0bc95ad1"/><file name="msp_fashioncheque.png" hash="b11a52ef39ae97225def18778a4be4c2"/><file name="msp_fashiongiftcard.png" hash="9bd88e96ac9fc8803ff864e3ba438f93"/><file name="msp_gezondheidsbon.png" hash="162e54d8242699871c202e8ca8307b87"/><file name="msp_giropay.png" hash="da6c83afbcf21821ef3d88e5c955fabb"/><file name="msp_giveacard.png" hash="6ee46cd39e01b9b82dca3e5b96da40d8"/><file name="msp_ideal.png" hash="975bc03d136c0e5a37f8d5f5a710b6c7"/><file name="msp_klarna.png" hash="ade80ce9f634bbc3c60976b37db0c4b6"/><file name="msp_maestro.png" hash="94cfd9498ab1c4293099b0778c899b7b"/><file name="msp_mastercard.png" hash="dedc112da93c9aafe992b68cbe4a6051"/><file name="msp_mistercash.png" hash="c429297b30437960315df5d9b36b0118"/><file name="msp_multisafepay.png" hash="4f7ad00d5eea0113a8b52fa4ece7bf8a"/><file name="msp_parfumcadeaukaart.png" hash="270bb5bfc45a036d9b761431b540e1ad"/><file name="msp_parfumnl.png" hash="a3e69d28d44938db2fbb5a2407c76c7f"/><file name="msp_payafter.png" hash="31eab2a6944a9dc181eed046ee8ec238"/><file name="msp_paypal.png" hash="6d072cdf9a82a9f3c419ad13dbc78846"/><file name="msp_podium.png" hash="657f853f4b26ec2b3b8c4e9ebde05f79"/><file name="msp_sportenfit.png" hash="b0c817c34276ef53f6807c9007b0c660"/><file name="msp_visa.png" hash="88d54fe482cd1e2f8d5857829866cc18"/><file name="msp_vvvgiftcard.png" hash="1674320d998603cf40591fc39bd5cfcf"/><file name="msp_webgift.png" hash="cbea18654cf36cc6a743316d359a6b87"/><file name="msp_wijncadeau.png" hash="7bd0b913ad0769ae2089c3827a47182c"/><file name="msp_yourgift.png" hash="1618cabf2b2842ee26f9e81aa6977eef"/></dir><dir name="en"><file name="Thumbs.db" hash="8631718a27c51f2a091e6e954af7f434"/><file name="button.png" hash="3f109b9ccbf7e26c3600d9b445bfab4f"/><file name="msp_amex.png" hash="a5e66b6516f80a7d8add7d59d6bf0e9d"/><file name="msp_babygiftcard.png" hash="85cb17a943036d86402bb439938cf616"/><file name="msp_banktransfer.png" hash="5993fd5deb6e184765d690c85ae7d740"/><file name="msp_beautyandwellness.png" hash="e8503146ce5bc90abc7f65e58b19313c"/><file name="msp_boekenbon.png" hash="c69a112af5220771b4d281978cd184ba"/><file name="msp_degrotespeelgoedwinkel.png" hash="e9193002f24d2ba35afb759b5c268be5"/><file name="msp_directdebit.png" hash="177fe504ef710cf5eaf42cc9592c2215"/><file name="msp_directebanking.png" hash="a3e72c2e0053b8fab500bd171e516877"/><file name="msp_dotpay.png" hash="e6ebeb240ec6344fb317920973064e9e"/><file name="msp_ebon.png" hash="e98f08cc1108106951e01f9b186a5cdb"/><file name="msp_einvoice.png" hash="965e8a7d9885ef3e370a1960390a9c2c"/><file name="msp_erotiekbon.png" hash="b3d5a2793aabcf2f9761454c0bc95ad1"/><file name="msp_fashioncheque.png" hash="b11a52ef39ae97225def18778a4be4c2"/><file name="msp_fashiongiftcard.png" hash="9bd88e96ac9fc8803ff864e3ba438f93"/><file name="msp_gezondheidsbon.png" hash="162e54d8242699871c202e8ca8307b87"/><file name="msp_giropay.png" hash="da6c83afbcf21821ef3d88e5c955fabb"/><file name="msp_giveacard.png" hash="6ee46cd39e01b9b82dca3e5b96da40d8"/><file name="msp_ideal.png" hash="975bc03d136c0e5a37f8d5f5a710b6c7"/><file name="msp_klarna.png" hash="ade80ce9f634bbc3c60976b37db0c4b6"/><file name="msp_maestro.png" hash="94cfd9498ab1c4293099b0778c899b7b"/><file name="msp_mastercard.png" hash="dedc112da93c9aafe992b68cbe4a6051"/><file name="msp_mistercash.png" hash="c429297b30437960315df5d9b36b0118"/><file name="msp_multisafepay.png" hash="4f7ad00d5eea0113a8b52fa4ece7bf8a"/><file name="msp_parfumcadeaukaart.png" hash="270bb5bfc45a036d9b761431b540e1ad"/><file name="msp_parfumnl.png" hash="a3e69d28d44938db2fbb5a2407c76c7f"/><file name="msp_payafter.png" hash="31eab2a6944a9dc181eed046ee8ec238"/><file name="msp_paypal.png" hash="6d072cdf9a82a9f3c419ad13dbc78846"/><file name="msp_podium.png" hash="657f853f4b26ec2b3b8c4e9ebde05f79"/><file name="msp_sportenfit.png" hash="b0c817c34276ef53f6807c9007b0c660"/><file name="msp_visa.png" hash="88d54fe482cd1e2f8d5857829866cc18"/><file name="msp_vvvgiftcard.png" hash="1674320d998603cf40591fc39bd5cfcf"/><file name="msp_webgift.png" hash="cbea18654cf36cc6a743316d359a6b87"/><file name="msp_wijncadeau.png" hash="7bd0b913ad0769ae2089c3827a47182c"/><file name="msp_yourgift.png" hash="1618cabf2b2842ee26f9e81aa6977eef"/></dir><dir name="es"><file name="Thumbs.db" hash="c67f35358ffef6d7986bb93f1e65eae6"/><file name="button.png" hash="3f109b9ccbf7e26c3600d9b445bfab4f"/><file name="msp_amex.png" hash="a5e66b6516f80a7d8add7d59d6bf0e9d"/><file name="msp_babygiftcard.png" hash="85cb17a943036d86402bb439938cf616"/><file name="msp_banktransfer.png" hash="0ba666cf841114b892667331c8aaad4e"/><file name="msp_beautyandwellness.png" hash="e8503146ce5bc90abc7f65e58b19313c"/><file name="msp_boekenbon.png" hash="c69a112af5220771b4d281978cd184ba"/><file name="msp_degrotespeelgoedwinkel.png" hash="e9193002f24d2ba35afb759b5c268be5"/><file name="msp_directdebit.png" hash="3ffde6c7a1eec68da96ea11518dfde55"/><file name="msp_directebanking.png" hash="a3e72c2e0053b8fab500bd171e516877"/><file name="msp_dotpay.png" hash="e6ebeb240ec6344fb317920973064e9e"/><file name="msp_ebon.png" hash="e98f08cc1108106951e01f9b186a5cdb"/><file name="msp_einvoice.png" hash="965e8a7d9885ef3e370a1960390a9c2c"/><file name="msp_erotiekbon.png" hash="b3d5a2793aabcf2f9761454c0bc95ad1"/><file name="msp_fashioncheque.png" hash="b11a52ef39ae97225def18778a4be4c2"/><file name="msp_fashiongiftcard.png" hash="9bd88e96ac9fc8803ff864e3ba438f93"/><file name="msp_gezondheidsbon.png" hash="162e54d8242699871c202e8ca8307b87"/><file name="msp_giropay.png" hash="da6c83afbcf21821ef3d88e5c955fabb"/><file name="msp_giveacard.png" hash="6ee46cd39e01b9b82dca3e5b96da40d8"/><file name="msp_ideal.png" hash="975bc03d136c0e5a37f8d5f5a710b6c7"/><file name="msp_klarna.png" hash="ade80ce9f634bbc3c60976b37db0c4b6"/><file name="msp_maestro.png" hash="94cfd9498ab1c4293099b0778c899b7b"/><file name="msp_mastercard.png" hash="dedc112da93c9aafe992b68cbe4a6051"/><file name="msp_mistercash.png" hash="c429297b30437960315df5d9b36b0118"/><file name="msp_multisafepay.png" hash="4f7ad00d5eea0113a8b52fa4ece7bf8a"/><file name="msp_parfumcadeaukaart.png" hash="270bb5bfc45a036d9b761431b540e1ad"/><file name="msp_parfumnl.png" hash="a3e69d28d44938db2fbb5a2407c76c7f"/><file name="msp_payafter.png" hash="31eab2a6944a9dc181eed046ee8ec238"/><file name="msp_paypal.png" hash="6d072cdf9a82a9f3c419ad13dbc78846"/><file name="msp_podium.png" hash="657f853f4b26ec2b3b8c4e9ebde05f79"/><file name="msp_sportenfit.png" hash="b0c817c34276ef53f6807c9007b0c660"/><file name="msp_visa.png" hash="88d54fe482cd1e2f8d5857829866cc18"/><file name="msp_vvvgiftcard.png" hash="1674320d998603cf40591fc39bd5cfcf"/><file name="msp_webgift.png" hash="cbea18654cf36cc6a743316d359a6b87"/><file name="msp_wijncadeau.png" hash="7bd0b913ad0769ae2089c3827a47182c"/><file name="msp_yourgift.png" hash="1618cabf2b2842ee26f9e81aa6977eef"/></dir><dir name="fr"><file name="Thumbs.db" hash="163c29258e74e6c5809b93399db36904"/><file name="button.png" hash="3f109b9ccbf7e26c3600d9b445bfab4f"/><file name="msp_amex.png" hash="a5e66b6516f80a7d8add7d59d6bf0e9d"/><file name="msp_babygiftcard.png" hash="85cb17a943036d86402bb439938cf616"/><file name="msp_banktransfer.png" hash="87bb8916f81ed310cf5cb3aed814fb9d"/><file name="msp_beautyandwellness.png" hash="e8503146ce5bc90abc7f65e58b19313c"/><file name="msp_boekenbon.png" hash="c69a112af5220771b4d281978cd184ba"/><file name="msp_degrotespeelgoedwinkel.png" hash="e9193002f24d2ba35afb759b5c268be5"/><file name="msp_directdebit.png" hash="f0b641efb330c71dbdbf9eb71617605f"/><file name="msp_directebanking.png" hash="a3e72c2e0053b8fab500bd171e516877"/><file name="msp_dotpay.png" hash="e6ebeb240ec6344fb317920973064e9e"/><file name="msp_ebon.png" hash="e98f08cc1108106951e01f9b186a5cdb"/><file name="msp_einvoice.png" hash="965e8a7d9885ef3e370a1960390a9c2c"/><file name="msp_erotiekbon.png" hash="b3d5a2793aabcf2f9761454c0bc95ad1"/><file name="msp_fashioncheque.png" hash="b11a52ef39ae97225def18778a4be4c2"/><file name="msp_fashiongiftcard.png" hash="9bd88e96ac9fc8803ff864e3ba438f93"/><file name="msp_gezondheidsbon.png" hash="162e54d8242699871c202e8ca8307b87"/><file name="msp_giropay.png" hash="da6c83afbcf21821ef3d88e5c955fabb"/><file name="msp_giveacard.png" hash="6ee46cd39e01b9b82dca3e5b96da40d8"/><file name="msp_ideal.png" hash="975bc03d136c0e5a37f8d5f5a710b6c7"/><file name="msp_klarna.png" hash="ade80ce9f634bbc3c60976b37db0c4b6"/><file name="msp_maestro.png" hash="94cfd9498ab1c4293099b0778c899b7b"/><file name="msp_mastercard.png" hash="dedc112da93c9aafe992b68cbe4a6051"/><file name="msp_mistercash.png" hash="c429297b30437960315df5d9b36b0118"/><file name="msp_multisafepay.png" hash="4f7ad00d5eea0113a8b52fa4ece7bf8a"/><file name="msp_parfumcadeaukaart.png" hash="270bb5bfc45a036d9b761431b540e1ad"/><file name="msp_parfumnl.png" hash="a3e69d28d44938db2fbb5a2407c76c7f"/><file name="msp_payafter.png" hash="31eab2a6944a9dc181eed046ee8ec238"/><file name="msp_paypal.png" hash="6d072cdf9a82a9f3c419ad13dbc78846"/><file name="msp_podium.png" hash="657f853f4b26ec2b3b8c4e9ebde05f79"/><file name="msp_sportenfit.png" hash="b0c817c34276ef53f6807c9007b0c660"/><file name="msp_visa.png" hash="88d54fe482cd1e2f8d5857829866cc18"/><file name="msp_vvvgiftcard.png" hash="1674320d998603cf40591fc39bd5cfcf"/><file name="msp_webgift.png" hash="cbea18654cf36cc6a743316d359a6b87"/><file name="msp_wijncadeau.png" hash="7bd0b913ad0769ae2089c3827a47182c"/><file name="msp_yourgift.png" hash="1618cabf2b2842ee26f9e81aa6977eef"/></dir><dir name="it"><file name="Thumbs.db" hash="06947336d2daae296c3aa6e0d0666a3e"/><file name="button.png" hash="3f109b9ccbf7e26c3600d9b445bfab4f"/><file name="msp_amex.png" hash="a5e66b6516f80a7d8add7d59d6bf0e9d"/><file name="msp_babygiftcard.png" hash="85cb17a943036d86402bb439938cf616"/><file name="msp_banktransfer.png" hash="eaf1b22dbe6ad0ad3e8c7108552359ad"/><file name="msp_beautyandwellness.png" hash="e8503146ce5bc90abc7f65e58b19313c"/><file name="msp_boekenbon.png" hash="c69a112af5220771b4d281978cd184ba"/><file name="msp_degrotespeelgoedwinkel.png" hash="e9193002f24d2ba35afb759b5c268be5"/><file name="msp_directdebit.png" hash="dfb3d359a9b48c88dc71ef65af9ea356"/><file name="msp_directebanking.png" hash="a3e72c2e0053b8fab500bd171e516877"/><file name="msp_dotpay.png" hash="e6ebeb240ec6344fb317920973064e9e"/><file name="msp_ebon.png" hash="e98f08cc1108106951e01f9b186a5cdb"/><file name="msp_einvoice.png" hash="965e8a7d9885ef3e370a1960390a9c2c"/><file name="msp_erotiekbon.png" hash="b3d5a2793aabcf2f9761454c0bc95ad1"/><file name="msp_fashioncheque.png" hash="b11a52ef39ae97225def18778a4be4c2"/><file name="msp_fashiongiftcard.png" hash="9bd88e96ac9fc8803ff864e3ba438f93"/><file name="msp_gezondheidsbon.png" hash="162e54d8242699871c202e8ca8307b87"/><file name="msp_giropay.png" hash="da6c83afbcf21821ef3d88e5c955fabb"/><file name="msp_giveacard.png" hash="6ee46cd39e01b9b82dca3e5b96da40d8"/><file name="msp_ideal.png" hash="975bc03d136c0e5a37f8d5f5a710b6c7"/><file name="msp_klarna.png" hash="ade80ce9f634bbc3c60976b37db0c4b6"/><file name="msp_maestro.png" hash="94cfd9498ab1c4293099b0778c899b7b"/><file name="msp_mastercard.png" hash="dedc112da93c9aafe992b68cbe4a6051"/><file name="msp_mistercash.png" hash="c429297b30437960315df5d9b36b0118"/><file name="msp_multisafepay.png" hash="4f7ad00d5eea0113a8b52fa4ece7bf8a"/><file name="msp_parfumcadeaukaart.png" hash="270bb5bfc45a036d9b761431b540e1ad"/><file name="msp_parfumnl.png" hash="a3e69d28d44938db2fbb5a2407c76c7f"/><file name="msp_payafter.png" hash="31eab2a6944a9dc181eed046ee8ec238"/><file name="msp_paypal.png" hash="6d072cdf9a82a9f3c419ad13dbc78846"/><file name="msp_podium.png" hash="657f853f4b26ec2b3b8c4e9ebde05f79"/><file name="msp_sportenfit.png" hash="b0c817c34276ef53f6807c9007b0c660"/><file name="msp_visa.png" hash="88d54fe482cd1e2f8d5857829866cc18"/><file name="msp_vvvgiftcard.png" hash="1674320d998603cf40591fc39bd5cfcf"/><file name="msp_webgift.png" hash="cbea18654cf36cc6a743316d359a6b87"/><file name="msp_wijncadeau.png" hash="7bd0b913ad0769ae2089c3827a47182c"/><file name="msp_yourgift.png" hash="1618cabf2b2842ee26f9e81aa6977eef"/></dir><dir name="nl"><file name="Thumbs.db" hash="1b02d4a7ea1014a099e3abc3fffc4902"/><file name="button.png" hash="3f109b9ccbf7e26c3600d9b445bfab4f"/><file name="msp_amex.png" hash="a5e66b6516f80a7d8add7d59d6bf0e9d"/><file name="msp_babygiftcard.png" hash="85cb17a943036d86402bb439938cf616"/><file name="msp_banktransfer.png" hash="404edf4cd1e16a79e2c72db944f00ae6"/><file name="msp_beautyandwellness.png" hash="e8503146ce5bc90abc7f65e58b19313c"/><file name="msp_boekenbon.png" hash="c69a112af5220771b4d281978cd184ba"/><file name="msp_degrotespeelgoedwinkel.png" hash="e9193002f24d2ba35afb759b5c268be5"/><file name="msp_directdebit.png" hash="df54e38016cda0b1dbd537b4784278f7"/><file name="msp_directebanking.png" hash="a3e72c2e0053b8fab500bd171e516877"/><file name="msp_dotpay.png" hash="e6ebeb240ec6344fb317920973064e9e"/><file name="msp_ebon.png" hash="e98f08cc1108106951e01f9b186a5cdb"/><file name="msp_einvoice.png" hash="965e8a7d9885ef3e370a1960390a9c2c"/><file name="msp_erotiekbon.png" hash="b3d5a2793aabcf2f9761454c0bc95ad1"/><file name="msp_fashioncheque.png" hash="b11a52ef39ae97225def18778a4be4c2"/><file name="msp_fashiongiftcard.png" hash="9bd88e96ac9fc8803ff864e3ba438f93"/><file name="msp_gezondheidsbon.png" hash="162e54d8242699871c202e8ca8307b87"/><file name="msp_giropay.png" hash="da6c83afbcf21821ef3d88e5c955fabb"/><file name="msp_giveacard.png" hash="6ee46cd39e01b9b82dca3e5b96da40d8"/><file name="msp_ideal.png" hash="975bc03d136c0e5a37f8d5f5a710b6c7"/><file name="msp_klarna.png" hash="ade80ce9f634bbc3c60976b37db0c4b6"/><file name="msp_maestro.png" hash="94cfd9498ab1c4293099b0778c899b7b"/><file name="msp_mastercard.png" hash="dedc112da93c9aafe992b68cbe4a6051"/><file name="msp_mistercash.png" hash="c429297b30437960315df5d9b36b0118"/><file name="msp_multisafepay.png" hash="4f7ad00d5eea0113a8b52fa4ece7bf8a"/><file name="msp_parfumcadeaukaart.png" hash="270bb5bfc45a036d9b761431b540e1ad"/><file name="msp_parfumnl.png" hash="a3e69d28d44938db2fbb5a2407c76c7f"/><file name="msp_payafter.png" hash="31eab2a6944a9dc181eed046ee8ec238"/><file name="msp_paypal.png" hash="6d072cdf9a82a9f3c419ad13dbc78846"/><file name="msp_podium.png" hash="657f853f4b26ec2b3b8c4e9ebde05f79"/><file name="msp_sportenfit.png" hash="b0c817c34276ef53f6807c9007b0c660"/><file name="msp_visa.png" hash="88d54fe482cd1e2f8d5857829866cc18"/><file name="msp_vvvgiftcard.png" hash="1674320d998603cf40591fc39bd5cfcf"/><file name="msp_webgift.png" hash="cbea18654cf36cc6a743316d359a6b87"/><file name="msp_wijncadeau.png" hash="7bd0b913ad0769ae2089c3827a47182c"/><file name="msp_yourgift.png" hash="1618cabf2b2842ee26f9e81aa6977eef"/></dir></dir></target><target name="magedesign"><dir name="frontend"><dir name="base"><dir name="default"><dir name="template"><dir name="msp"><file name="agreements.phtml" hash="93ceba499bbad259c94b566add5924d9"/><file name="bno.phtml" hash="2e20726326a3ceee335bf6b57b6b831a"/><file name="default.phtml" hash="53b59e400194a452a04ce9423c9c4c03"/><file name="einvoice.phtml" hash="b691a94a88acce1527e7bf44e106ea3d"/><file name="idealissuers.phtml" hash="18d649be3767ab48f38465c367ca5250"/><file name="klarna.phtml" hash="57e7c3b019d4b637e6dbe46c39ff31af"/><file name="link.phtml" hash="278f910fb3f4cb820d3111066e85f067"/><file name="linkText.phtml" hash="d94fba14433870541603c1b3943d6ae8"/></dir></dir><dir name="layout"><file name="msp.xml" hash="cf698709a65bb5b471b992149f210ace"/></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="msp.xml" hash="f5959e41c7e4ddb30198093b708df511"/></dir><dir name="template"><dir name="msp"><file name="gateways.phtml" hash="ed4cf6ffc3e0dba9ec5fc7d5c80b8ee1"/><file name="idealissuers.phtml" hash="ed4cf6ffc3e0dba9ec5fc7d5c80b8ee1"/><file name="klarna.phtml" hash="24ab559d8d59ee0fcad070d071bb5708"/><dir name="servicecost"><dir name="order"><dir name="creditmemo"><dir name="create"><dir name="totals"><file name="adjustments.phtml" hash="e0009f26cd510641159d0321b0e08b1e"/></dir></dir></dir></dir></dir></dir></dir></dir></dir></dir></target><target name="mage"><dir name="lib"><dir name="multisafepay"><file name="MultiSafepay.combined.php" hash="585c7ebad57e33122698ba0662d66d9d"/></dir></dir></target><target name="mageetc"><dir name="modules"><file name="MultiSafepay_Msp.xml" hash="e6899e0295b157d6ad3a37334f2330ae"/></dir></target><target name="magelocale"><dir name="nl_NL"><file name="MultiSafepay_Msp.csv" hash="4b4736b69b17e654a7f0531acb6e887a"/></dir><dir name="de_DE"><file name="MultiSafepay_Msp.csv" hash="cbf33fe7b3be78b7c12f1e86e16a2a01"/></dir><dir name="en_EN"><file name="MultiSafepay_Msp.csv" hash="ed854aac72b11e698c578218b6f4906e"/></dir><dir name="es_ES"><file name="MultiSafepay_Msp.csv" hash="f6c76aa1273e1a4e897b0e6c5aac780c"/></dir><dir name="fr_FR"><file name="MultiSafepay_Msp.csv" hash="ff58587f6c892f4de9074282a2a997f0"/></dir><dir name="it_IT"><file name="MultiSafepay_Msp.csv" hash="0332fffa252445398724d76ecb4232e0"/></dir></target><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="js"><dir name="MultiSafepay"><file name="config.js" hash="d41d8cd98f00b204e9800998ecf8427e"/></dir></dir><dir name="images"><dir name="msp"><file name="button.png" hash="3f109b9ccbf7e26c3600d9b445bfab4f"/><dir name="nl"><file name="button.png" hash="3f109b9ccbf7e26c3600d9b445bfab4f"/><file name="msp_amex.png" hash="a5e66b6516f80a7d8add7d59d6bf0e9d"/><file name="msp_babygiftcard.png" hash="85cb17a943036d86402bb439938cf616"/><file name="msp_banktransfer.png" hash="404edf4cd1e16a79e2c72db944f00ae6"/><file name="msp_beautyandwellness.png" hash="e8503146ce5bc90abc7f65e58b19313c"/><file name="msp_boekenbon.png" hash="c69a112af5220771b4d281978cd184ba"/><file name="msp_degrotespeelgoedwinkel.png" hash="e9193002f24d2ba35afb759b5c268be5"/><file name="msp_directdebit.png" hash="df54e38016cda0b1dbd537b4784278f7"/><file name="msp_directebanking.png" hash="a3e72c2e0053b8fab500bd171e516877"/><file name="msp_dotpay.png" hash="f2363b7e5fde1f4717d803f45e29a622"/><file name="msp_ebon.png" hash="e98f08cc1108106951e01f9b186a5cdb"/><file name="msp_einvoice.png" hash="965e8a7d9885ef3e370a1960390a9c2c"/><file name="msp_erotiekbon.png" hash="b3d5a2793aabcf2f9761454c0bc95ad1"/><file name="msp_fashioncheque.png" hash="b11a52ef39ae97225def18778a4be4c2"/><file name="msp_fashiongiftcard.png" hash="9bd88e96ac9fc8803ff864e3ba438f93"/><file name="msp_gezondheidsbon.png" hash="162e54d8242699871c202e8ca8307b87"/><file name="msp_giropay.png" hash="da6c83afbcf21821ef3d88e5c955fabb"/><file name="msp_giveacard.png" hash="6ee46cd39e01b9b82dca3e5b96da40d8"/><file name="msp_ideal.png" hash="975bc03d136c0e5a37f8d5f5a710b6c7"/><file name="msp_klarna.png" hash="ade80ce9f634bbc3c60976b37db0c4b6"/><file name="msp_maestro.png" hash="94cfd9498ab1c4293099b0778c899b7b"/><file name="msp_mastercard.png" hash="dedc112da93c9aafe992b68cbe4a6051"/><file name="msp_mistercash.png" hash="c429297b30437960315df5d9b36b0118"/><file name="msp_multisafepay.png" hash="4f7ad00d5eea0113a8b52fa4ece7bf8a"/><file name="msp_parfumcadeaukaart.png" hash="270bb5bfc45a036d9b761431b540e1ad"/><file name="msp_parfumnl.png" hash="a3e69d28d44938db2fbb5a2407c76c7f"/><file name="msp_payafter.png" hash="31eab2a6944a9dc181eed046ee8ec238"/><file name="msp_paypal.png" hash="6d072cdf9a82a9f3c419ad13dbc78846"/><file name="msp_podium.png" hash="657f853f4b26ec2b3b8c4e9ebde05f79"/><file name="msp_sportenfit.png" hash="b0c817c34276ef53f6807c9007b0c660"/><file name="msp_visa.png" hash="88d54fe482cd1e2f8d5857829866cc18"/><file name="msp_vvvgiftcard.png" hash="1674320d998603cf40591fc39bd5cfcf"/><file name="msp_webgift.png" hash="cbea18654cf36cc6a743316d359a6b87"/><file name="msp_wijncadeau.png" hash="7bd0b913ad0769ae2089c3827a47182c"/><file name="msp_yourgift.png" hash="1618cabf2b2842ee26f9e81aa6977eef"/></dir></dir></dir><dir name="css"><dir name="MultiSafepay"><file name="config.css" hash="db08ddd5a22d456d213a7179399c830b"/></dir></dir></dir></dir></dir></target></contents>
16
  <compatible/>
17
  <dependencies><required><php><min>5.2.13</min><max>7.0.1</max></php></required></dependencies>
18
  </package>