Skip to main content
Version: 2.10



Git should already be initialized within the repo. You only need to add the heroku remote with your app-name:

heroku git:remote -a 'app-name'heroku buildpacks:set heroku/nodejsheroku buildpacks:add heroku/pythonheroku addons:create heroku-postgresql:hobby-devheroku addons:create heroku-redis:hobby-devheroku addons:create sendgrid:starterheroku config:set ALLOWED_HOSTS='<your hosts here>'heroku config:set NODE_MODULES_CACHE=falseheroku config:set NPM_CONFIG_PRODUCTION=falseheroku config:set SECRET_KEY='<your secret key here>'

Heroku’s storage is volatile. This means that all instances of your application have separate disks and lose all changes made to the local disk each time the application is restarted. The best approach is to use cloud storage such as Amazon S3. See Storing Files on Amazon S3 for configuration details.


This guide does not cover the deployment of either the dashboard or the storefront. Contributions are welcome!


git push heroku master

Preparing the database#

heroku run python migrate

Updating currency exchange rates#

You should run this command periodically. The best way to ensure this is done is by using Heroku’s Scheduler service.

To add it to our application:

heroku addons:create scheduler

Then log into your Heroku account, find the Heroku Scheduler add-on in the active add-on list, and have it run the following command on a daily basis:

python update_exchange_rates --all