2012-07-20 57 views
3

我试图支持ZAR(南非兰特)的结帐。Opencart Paypal不受支持的货币

到目前为止,我已启用$,这使贝宝模块,但转换没有完成。

该网站只是结帐的价值。例如:R1500.00 = 1500.00美元通过贝宝退房。

使用内置转换器进行货币转换的正确方法是什么?

回答

2

好找到了解决办法:通过用户Qphoria

●请从Opencart Forum两者

:我如何使用贝宝如果不支持我的货币? 问:如何使用不支持我的货币的支付网关?问:Paypal不支持我的货币?

答: 您仅限于付款网关支持的内容。但是,您可以添加代码来自动将货币自动转换为受支持货币的当前汇率,这相当容易。

(v1.5.x) 1.编辑:目录/控制器/支付/ .PHP

  1. FIND(初审ONLY):

代码:选择所有 $ order_info = $这个 - > model_checkout_order-> getOrder

  1. 后,加入(与您选择有效的货币替换美元):

代码:全部选中 $ order_info ['currency_code'] ='USD';

无论您选择使用哪种货币,请确保您的商店中的货币列表在管理 - >系统 - >本地化 - >货币页面中。它不需要启用,只需要存在以便可以完成转换计算。

然后,它会自动转换金额发送到网关之前。客户不会注意到这一点。 例如,他们会在结账页面上看到1000 AED 但是,您将在您的PayPal帐户中看到$ 272.25 USD(基于当前的转换率)。

直到1.5.1.3,贝宝标准自动执行此操作 在1.5.2中,如果使用不受支持的货币,它会自动从付款清单中禁用它自己。所以这将需要特殊的指导,也许应该改回核心。

现在: 1.编辑:目录/模型/支付/ pp_standard.php

  1. 找到并删除:

代码:选择所有 如果(!in_array(strtoupper($ this-> currency-> getCode()),$货币)){ $ status = false; }

  1. 编辑:目录/控制器/支付/ pp_standard.php

  2. FIND(一审ONLY):

代码:选择所有 $ order_info = $此 - > model_checkout_order-> getOrder

  1. AFTER,ADD:

代码:全选 $ currency = array('AUD','CAD','EUR','GBP','JPY','USD','NZD','CHF','HKD' '新元', 'SEK', 'DKK', 'PLN', '诺', '福林', '克朗', 'ILS', 'MXN', '马币', 'BRL', 'PHP',” TWD”, 'THB', 'TRY');如果(!in_array(strtoupper($ this-> currency-> getCode()),$ currency)){ $ order_info ['currency_code'] ='USD'; }

用您选择的支持货币更改“USD”。