Why we chose Umbraco for Education for the Children’s new system

Tom Greenfield
Distinction
Published in
7 min readMay 24, 2019

During the past year, I’ve been involved in building an eCommerce site using the Umbraco platform for the first time. Throughout the project, there were key decisions that we, as a team needed to make.

• Which CMS should we use and why?

• What is the best eCommerce package out there available?

• Are they both a good fit for the website’s requirements?

• How easy are they to use?

In this article, I’ll cover the decisions we made. I’ll also share the key challenges faced, and some tips you can take away. Hopefully after reading, it’ll give you some ideas and considerations for your own eCommerce projects.

Who is the website for?

I think now is a good time to give an overview of who we built the website for.

Education for the children (EFTC)

EFTC are an international non — profit organization (NGO) that are working to stop the cycle of poverty in Jocotenango, Guatemala. Guatemala is one of the most depleted countries in the Western Hemisphere with high rates of violence, illiteracy, and malnutrition.

EFTC are working with a vision to provide young people from deprived backgrounds with a better life. This is through providing quality education, and empowering them to feel motivated, confident, and being employable.

EFTC have around 60 staff working at the School of Hope out in Guatemala, as well as a small team of staff at the UK and Guatemala offices. Their team organise numerous fundraising events during the year which are fun to take part in, but above all, raises money for this worthwhile cause.

We (Distinction) have been supporting EFTC by maintaining their websites the past few years. They have two websites — UK and Spanish:

They were initially on the Kentico (version 7) platform. However, ‘Kentico 7’ became outdated. We all felt the site needed freshening up. With this in mind, we decided a rebuild was necessary. From a back — end development perspective, we needed to evaluate our options.

Choosing the right CMS

Normally, we would have kept the sites on Kentico, and on the most up to date version and hotfix currently available. However, there were implications to this that caught our attention.

Cost of a Kentico licence

All Kentico sites require a valid licence in order to work. Licences aren’t free, and not cheap.

Does the website utilise the features Kentico provides?

The purpose of the EFTC site is to showcase them, promote their upcoming events, and allow visitors to donate. There were numerous Kentico features not required.

So, we explored other options that covered what EFTC require. We decided to choose Umbraco. Here’s the key reasons.

  1. Free to use — Umbraco CMS is free. Some Umbraco “packages” are free, and some charge, but we could find the packages that we needed to use later.
  2. Easy to use — Umbraco pride themselves on providing a CMS which is easy to use. This is important. We want to ensure that managing content is hassle free for EFTC.
  3. Able to easily manage CMS enhancements — As mentioned above, the features of an Umbraco install can be enhanced by installing the appropriate packages. If a package wasn’t needed, it can be uninstalled. We could manage this, without any fees upfront.
  4. Ecommerce is available This was a crucial requirement. Whilst we realise Umbraco doesn’t contain eCommerce functionality out of the box, there were free packages available which were suitable. We could spend time later sieving through the available eCommerce packages and choose the right one.
  5. Online support available — if we came across problems, we know that we’ve got the online Umbraco Community available. https://our.umbraco.com/

Choosing the right package

Next, we needed to decide how to integrate eCommerce. We needed to find a suitable package. From researching, we found some great options:

  • Merchello
  • Commerce for Umbraco
  • Tea Commerce
  • UCommerce

We opted for uCommerce — https://ucommerce.net/. Below are the key reasons:

  1. No costs involved — free to install and use!
  2. Package Compatibility — built to work in Umbraco 7, and supports MVC.NET.
  3. Built — in integration with payment gateways — EFTC use PayPal to manage payments, so this is ideal.
  4. Documentation & support available — we can refer to online resources.
  5. A good reputation — it had a high level of downloads, and votes.

Key challenges

From an eCommerce standpoint, there were hurdles faced during the project.

Use of multiple price groups (GBP for UK site, EUR for Spanish site)

Problem — This wasn’t brought to our attention until we tested emails, using the uCommerce functionality. We found that a banner was added to emails, indicating too many price groups were on the site for what our license allows. We’d had a ‘GBP’ price group on the UK site, and a ‘EUR’ price group on the Spanish site.

We didn’t want the banner to appear on emails, and we couldn’t remove it. It was at this point, we realised we could only use one price group for both sites. This meant both sites would use the same currency — Pounds or Euros.

Solution — There were two alternatives:

  1. Upgrade the uCommerce licence — only the Enterprise licence supports multiple price groups on one installation. https://ucommerce.net/pricing/
  2. Split the UK and Spanish sites up into two installs — have two separate Umbraco installs, rather than one multi-lingual site.

We presented these options to the client. As the Enterprise licence would cost 4999 euros per month, and there’s no requirement to use any of its additional features, this option wasn’t sensible.

Due to the amount of work to set up the Spanish site separately, this option was also discarded. We agreed that we’d proceed with both sites using the same ‘GBP’ price group. However, we now know the options should this become urgent in the future.

Once we’d removed the EUR price group, the banner disappeared from new emails.

Tip — Before getting carried away developing, carefully check (then double, then triple check) the features on your licence. Does it cover your requirements?

Displaying product details on the site

Problem — We were populating gift / donation content by creating fields on the page type. However, the site relied on getting other gift / donation information from uCommerce. This caused confusion, as it wasn’t clear where to update certain fields.

Solution — After checking uCommerce, this was a no brainer. There was no need to create page type fields for things such as an image. This was already available on products in the uCommerce Catalogue. The uCommerce API provides easy access to these fields in the code.

Here’s an example of how I retrieved product details from the basket, using razor syntax.

We still needed to ensure all products were created in both the content tree, and uCommerce. Therefore, we kept the field on the page type which maps them together. We used the ‘uCommerce picker’ data type, available out of the box.

Once tidied up, we were in a better position.

a.) It was clear where product details are updated.

b.) It eliminated the risk of confusion. There was no ambiguity.

Tip — this is aimed for developers. If adding a new field to store against products, then check whether that functionality is already available in uCommerce. There are different fields available out of the box, so you might be surprised. You could save time, effort, and your client’s money!

Finally

Thanks for reading! I hope you’ve found this article helpful and gives you some ideas to take away. I’ve got a final tip to end with.

Tip — This applies to all! Keep an eye out how you can improve eCommerce on your site. Don’t abandon it. Subscribe to relevant newsletters / social media channels.

Does the package have a new version, or licence coming out soon which may be of interest to the client? By staying in the loop, you & your team can monitor this and reach out to your clients if anything new of interest is released. This enables your team to become proactive to change, rather than reactive. UCommerce are on social media channels (such as Facebook, and Twitter). By simply following them on a social media channel that you use, you can be kept updated.

“By staying in the loop , you & your team can monitor this and reach out to your clients if anything new that’s of interest is released. This enables your team to become proactive to change, rather than reactive.”

--

--