Creating Promotion with SpreeCommerce

The Spree cart’s promotions functionality allows admin to offer coupons and discounts to site’s users, based on the conditions you choose. Running promotions and marketing campaigns are ideal ways to promote your products and services. Creating excitement ensures driving customers to you and your brands. Doing so, admin can:-

  1. Increase brand awareness
  2. Increase customer traffic
  3. Make quick decisions
  4. Build sales and profit
  5. Strengthen the focus on marketing

Here are few built-in promotion schemes that you can easily execute on Spree:

Read more

SpreeOnReact - A SpreeCommerce Storefront built on ReactJS


Spree Commerce is one of the best open source e-commerce platform written in Ruby language. It boasts of its feature completeness coupled with a vast ecosystem of extensions and quick pace of development. SpreeOnReact is an open source SpreeCommerce front-end solution built entirely on Facebook's ReactJS library. It provides a set of core e-commerce functionalities from where you can start adding more features instead of building everything from the ground up. The library is compatible with Spree 3.1 and Spree 3.2 .Read more

Integrating SpreeCommerce Store with AWS CloudFront CDN

When your website receives thousands of visitors every day from around the world, we need to ensure that the experience does not deteriorate based on the geographical location of the user. But the reality is bitter and geographical location does plays a role in website's responsiveness.

Why does the geography comes in play when we are showing same content to anyone accessing the site. It's due to the latency at the network level, also known as "Fibre Optic Latency". Same data needs to travel a large distance for one user as the server location is fixed.

We will explore how can we use Content Delivery Network to provide a virtual feeling of server closeness for every user irrespective of different geographical location.

Content Delivery Network allows you to serve the cached content from the edge locations close to user which are also known as Point of Presence, PoP. It reduces the load times, hence, adds to better user experience which reflects in revenues too :)

CDN Edge Cache Servers and Users

Image sourced from here

Let's see how can we setup AWS Couldfront (CDN) along with AWS S3 storage for SpreeCommerce.Read more

SpreeCommerce Customizations

The SpreeCommerce Guide lists a few methods to customize SpreeCommerce as per your usage. Here, we'll be expanding on it further. How to customize various parts of your SpreeCommerce apps.


Sometimes we need to customize the way Spree javascript works or need to change the css from the one that came with Spree. One way to go about it is to add a new file under app/assets and update all the required code. This works well when only specific parts of the code in a file need to be overwritten or new code needs to be added. But to override complete files, this takes up more code than needed.Read more

Spree HTML Invoices

Now printing an invoice with the complete information of an order has been simplified with spree-html-invoice extension which is forked from konung/spree-html-invoice and being maintained with regular updates. With the use of this extension, one can override invoice html and thus can have control over the content that is going to be printed.


  • gem 'spree_html_invoice' , github: 'vinsol-spree-contrib/spree-html-invoice'
  • bundle install
  • Usage:

    An Admin can effortlessly print and download the invoice for an order with the help of Print Invoice button provided on the order detail page.

  • Admin navigates to Orders Listing Page clicking on ORDERS tab from the sidebar menu of the page.
  • Invoice-img-1

  • Admin chooses an order by clicking on order number to have its invoice printed.
  • Invoice-img-2

  • There appears a ‘Print Invoice’ button on the left-hand side of the order detail page that opens a printable HTML page in the new tab.
  • Invoice-img-3

  • Lastly, your invoice can be printed or downloaded for business use for various purposes.
  • Final Invoice


  • bundle
  • bundle exec rake test_app
  • bundle exec rspec spec
  • As it is an open source extension, you can access the code here. Follow us on twitter for more updates.