Price conversion from one currency to another
Here is how you can convert the price from one currency to another.
First of all, in the Constructor, create an instance of “\Magento\Directory\Model\Currency” as below:
public function __construct( \Magento\Framework\App\Helper\Context $context, \Magento\Directory\Model\Currency $currency ) { parent::__construct($context); $this->_currency = $currency; }
then you can use the following function to get the updated price in the new currency.
public function getNewPrice($price, $currCodeFrom, $currCodeTo) { $rate = $this->_currency->load($currCodeFrom)->getAnyRate($currCodeTo); $newPrice = $price * $rate; return newPrice; }
here, $price is the amount that you want to convert, $currCodeFrom is the currency code from which the price has to be converted, and $currCodeTo is the currency Code in which you want the converted price.
I have used this code in a helper, you can use this in Block or a Controller as per your need.
For any queries, feel free to comment below. 🙂
Moreover, using Magento 2 GeoIP module you can automatically change currency and select the store view based on the customer’s location.
Categories:
Magento2
View Comments
Comment or Ask a Question
Quick Links