質問

I have a Magento 1.7 store with USD base currency. I display prices in KWD. When a customer shops in KWD, the checkout page shows all items' KWD value, a total in KWD and then another line with the USD value: "total to be charged to your credit card", which is correct.

However, the 2Checkout receiving interface (according to a screenshot their support sent me) shows that KWD is being passed, not USD.

Base currency is set as USD, and the total to be bill shows up correctly as USD on the customer checkout screen however the numbers passed to 2Checkout in the background are in KWD for some reason and I end up with a PE 102 Error

Any ideas? Please note, Caching is set to off, and I have entered my currency conversion in Magento currency setup.

役に立ちましたか?

解決

The 2Checkout extension passes in the total in the buyers selected currency and passes in the currency code to override your 2Checkout base pricing currency. This way you can offer pricing in multiple currencies on your website. If you would like to change this behavior, you would need to change the Checkout model to use:

$amount   = round($order->getBaseGrandTotal(), 2);

instead of:

$amount   = round($order->getGrandTotal(), 2);

This will pull the total from the $order object in your base currency instead of the buyers display currency. Please note however that the 2Checkout PE 102 error is an account related error and is not related to currency.

Please feel free to contact me directly at christensoncraig@gmail.com so that I can help you make the appropriate modifications.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top