Cronjob.de › Guides › PrestaShop
Setting up a PrestaShop cronjob: exchange rates, sitemap and module tasks
PrestaShop carries out scheduled tasks when a cronjob calls the right address. For exchange rates there is the script cron_currency_rates.php in the admin folder. For the sitemap, the “Google sitemap” module shows a cron link of its own on its configuration page. PrestaShop announced the shutdown of its former cron service for the “Cron tasks manager” module for December 2025. At Cronjob.de you enter the address and choose the interval, with no command line and no cronjob at your host.
Updated: · by Joscha Schultze, operator of Cronjob.de
Written with AI assistance, provider details checked against their official pages.
Why at all
Why the shop needs a call from outside
PrestaShop fetches exchange rates with the function Currency::refreshCurrencies(). According to the developer documentation you have to set up an automatic task that regularly sends a request to the script cron_currency_rates.php. Without that call, the rates stay at the last update.
The bundled “Google sitemap” module offers two ways: by hand through the form, or automatically. For the automatic way the configuration page names an address that a cronjob should load at the time you want. According to the module, generating a sitemap can take several minutes.
This used to be handled by the PrestaShop cron service together with the “Cron tasks manager” module (cronjobs). In its announcement of 25 November 2025, PrestaShop writes that the module has not been maintained for more than eight years and was only compatible with PrestaShop 1.6. After the shutdown the service still answers with HTTP 200 but no longer runs any tasks. So there is no error message in the shop.
Instead, PrestaShop recommends a cronjob at your host. For that you need a hosting plan with a cron feature and a command such as curl. At Cronjob.de the address is enough. The call log shows the time, runtime and status code of every call, and from Plus upwards the shop response as well.
- URL to call
https://ihr-shop.de/admin_…/cron_currency_rates.php?secure_key=…- Recommended interval
- exchange rates once a day, sitemap as you like, Cron tasks manager hourly
- Tested with
- PrestaShop 9.2, 8.2
- Sufficient Cronjob.de plan
- For daily or hourly calls the free Cronjob.de plan with 5 cronjobs is enough. From Plus (€17.88 a year) you get the call log with responses and failure notifications by email. New accounts get all features for 14 days.
Setup
Step by step
The AI does it faster
You do not have to transfer any of this by hand. Paste this guide – or the one for your own system – into the assistant, and Cronjob.de fills in address, method, schedule and headers. Where something is unclear it asks instead of guessing. At the end you see what was entered and create the job with one click.
Included in the free plan at no extra cost. You will find it after signing in under "Cronjobs" → "Create with AI".
-
Build the address for exchange rates
The address consists of your shop domain, the name of your admin folder and the parameter
secure_key. According to the developer documentation you build the key once as the MD5 value of your shop's_COOKIE_KEY_(found inapp/config/parameters.php) followed directly by the shop name. With SSH access this takes one line. Do not enter the cookie key into third-party online tools, it is secret.php -r 'echo md5("YOUR_COOKIE_KEY" . "Your shop name");' https://your-shop.com/admin_9282/cron_currency_rates.php?secure_key=… -
Copy the sitemap cron link
In the module manager, open the “Google sitemap” module via “Configure”. In the “Information” box the module describes two ways. The automatic way shows the address a cronjob should load. Copy it in full; it contains a token and the shop ID.
-
Create an account at Cronjob.de
Registration is free, no payment details needed. For daily tasks the free plan is enough for good.
Start for free 14 days of Unlimited included, no payment details
-
Create one cronjob per address
Create a cronjob for exchange rates that runs once a day. The developer documentation uses 6 am as its example. Create a separate cronjob for the sitemap, for example daily at night. You can assemble the schedule by clicking, type it as a crontab expression or describe it in one sentence.
0 6 * * *
You can enter this expression at Cronjob.de exactly as it is – the schedule field understands crontab notation. But you do not have to know it: simply click the schedule together instead.
-
Only if you still use the “Cron tasks manager”
Set the “Cron mode” in the module to Advanced. The module then shows a line like
0 * * * * curl "…AdminCronJobs&token=…". Enter the address between the quotation marks at Cronjob.de, interval once an hour at a fixed minute. Not more often: according to its source code the module schedules by the hour and does not remember whether a task already ran in the current hour.0 * * * *
You can enter this expression at Cronjob.de exactly as it is – the schedule field understands crontab notation. But you do not have to know it: simply click the schedule together instead.
-
Other modules with their own cron address
Some modules for feeds, marketplaces or imports show a cron address of their own on their configuration page. Create one cronjob for each, at the interval the module vendor names. You can also paste the module instructions into the AI assistant. It reads the address and schedule from them.
What the five fields of an expression like */5 * * * * mean is explained in the crontab reference – with examples and the most common pitfalls. You can build the expression in the crontab generator. Whether you need an outside service at all is shown in the comparison of the three ways.
Verification
Is it actually running?
Run every cronjob once by hand. The Cronjob.de call log shows the time, runtime and status code, and from Plus upwards the shop response as well. Status 200 only means the shop accepted the call: according to its source code, cron_currency_rates.php also returns 200 with a wrong secure_key, but no new rates. So check the result in the shop: the rates in the currency settings and the date of the sitemap file.
FAQ
Common questions about PrestaShop
- Does the “Cron tasks manager” module work with PrestaShop 8 or 9?
- In its announcement of 25 November 2025, PrestaShop writes that the cronjobs module has not been maintained for more than eight years and was only compatible with PrestaShop 1.6. For PrestaShop 8 and 9, use the cron addresses that the shop and the individual modules provide themselves.
- Is the PrestaShop cron service (“Basic” mode) still running?
- PrestaShop announced its shutdown for December 2025. According to the announcement the service then still answers with HTTP 200 but no longer runs any scheduled tasks. If you still have “Basic” mode set, switch to a cronjob of your own.
- How often should the PrestaShop exchange rate cronjob run?
- Once a day is enough. According to the developer documentation the rates are updated once a day, and its example cronjob runs daily at 6 am. That works on the free Cronjob.de plan.
- Where do I find the secure_key for cron_currency_rates.php?
- According to the developer documentation you compute it yourself: it is the MD5 value of the
_COOKIE_KEY_inapp/config/parameters.phpand the shop name. You compute it once and put it into the address. - The sitemap does not finish. Why?
- According to the module, generating a sitemap can take several minutes. We wait 45 seconds on the free plan and 60 seconds on the paid plans, then we hang up. Whether the shop keeps working afterwards depends on the PHP settings of your server. Check the date of the sitemap file after the run.
- The call asks for a username and password. What now?
- Then a directory protection (.htaccess) sits in front of the shop or the admin folder. Enter the credentials in the two credentials fields of the cronjob form, and the call authenticates itself.
Cronjob.de
in the user agent. Ask your host for an exception for it; that is more reliable than allowing IP addresses, because ours can change. Addresses and details in the FAQ.
Other errors such as 401, 404 or 500 are explained in the troubleshooting guide.
Create your cronjob now
Create an account, enter the address, click the schedule. Five cronjobs are free forever, the first 14 days run on the Unlimited plan.
Start for free See pricingMore guides
- Webspace
- Windows
- WordPress
- Nextcloud
- Contao
- Drupal
- Joomla
- All-Inkl (KAS)
- STRATO
- IONOS
- Matomo
- Dolibarr
- phpList
- SuperWebMailer
- Firefly III
- Host Europe
- Hetzner Webhosting
- Gambio
- Shopware
- JTL-Shop
- Moodle
- WooCommerce
- WP All Import
- Doofinder
- GitHub Actions
Official documentation of PrestaShop
The details about PrestaShop come from their own documentation, as of October 2026. Please check there whether anything has changed since. PrestaShop is a trademark of its respective owner. This guide comes from Cronjob.de and has no business relationship with that provider.