Magento - 如何将UserId而不是OrderId传递给ADYEN SKIN

时间:2013-01-31 12:56:38

标签: magento payment

我正在使用adyen通过信用卡付款,我注意到当用户付费时,Magento上的模块将订单ID作为MerchantReference传递给Adyen。 为了在使用adyen SKIN付款期间激活“记住我的数据”,我需要传递UserId而不是orderId。

有任何建议如何解决?

---更多信息---

这是具体的模块:http://www.magentocommerce.com/magento-connect/adyen-payment.html

而且,这是我们在另一个环境中为Adyen付款生成的表单示例。如您所见,merchantReference是一个唯一值,用于标识第一个用户付款。此值是使用UserId计算的,因此我们可以识别用户的下次付款。

我应该知道插件Adyen(对于Magento)生成此表单的位置,因此我可以使用UserId而不是OrderId更改merchantReference参数

<form action="https://test.adyen.com/hpp/pay.shtml" 
      method="post" id="gatewayPaymentForm">
      <input type="hidden" name="merchantReference" value="Ajx">
      <input type="hidden" name="paymentAmount" value="2900">
      <input type="hidden" name="currencyCode"  value="EUR">
      <input type="hidden" name="shipBeforeDate" value="2013-02-03">
      <input type="hidden" name="skinCode" value="XDFGG">
      <input type="hidden" name="merchantAccount" value="NameAccount">
      <input type="hidden" name="shopperLocale" value="es">
      <input type="hidden" name="sessionValidity" value="2013-01-31T16:35:31+01:00">
      <input type="hidden" name="merchantSig" value="bcbXNhsd">
      <input type="hidden" name="shopperEmail" value="asd@gmail.com">
      <input type="hidden" name="shopperReference" value="5">
      <input type="hidden" name="recurringContract" value="ONECLICK">
</form>

谢谢

1 个答案:

答案 0 :(得分:0)

已经解决了,我们修改了文件:/Madia/Adyen/Model/Adyen/Hpp.php

//To identify and remind user data with mail.
$adyFields['shopperReference'] = $customerEmail; 

它对我们有用。