How to Automate Currency Rate Updates
By default Magento is not updating currency rates automatically. To keep them updated you need to do this manually almost every day. To automate this process, you might need to set up a script which will do this at specified intervals.
Start with editing Magento configuration file which is located in “app/code/core/Mage/Directory/etc/config.xml”. Open it with any text editor and put the following lines.
1 2 3 4 5 6 7 8 9 10 11 12
<crontab> <jobs> <currency_rates_update> <schedule> <cron_expr>0 * * * *</cron_expr> </schedule> <run> <model>directory/observer::scheduledUpdateCurrencyRates</model> </run> </currency_rates_update> </jobs> </crontab>
These lines will set to run scheduled task (Cron job) every hour. You can adjust time stamp by editing line between “cron_expr”.
Next step is to set up your server to run Magento cron jobs. This can be done by adding the following line in the server cron job manager.
/usr/bin/wget -q 'http://www.domain.com/magento/cron.php'
By executing this line, Magento will be running its Cron jobs as well. The last step is to set scheduled tasks settings in Magento admin backend. Simply navigate to “Admin > Configuration > System > Cron (Scheduled Tasks)” and set the following settings.
- Generate Schedules Every 30
- Schedule Ahead for 60
- Missed if Not Run Within 120
- History Cleanup Every 60
- Success History Lifetime 180
- Failure History Lifetime 600
Of course, you can adjust them according to your needs as well. By using this simple system we will not need to worry about not updated currencies in your store.