5 Shopify problems that Medusa solves
Tags: opensource, webdev, programming, javascript
Published: 2022-05-05 14:21:03

## Introduction

[Shopify](https://www.shopify.com/) is a popular ecommerce platform used by a lot of merchants. With Shopify, you are able to build your storefront without technical knowledge. However, Shopify merchants with time run through some problems that lead them to employ hacky workarounds in their stores.

[Medusa](https://medusajs.com/) is a rising open source Shopify alternative built for developers. Medusa is an open source ecommerce platform that comes with many ecommerce features such as an intuitive admin interface, promotions support, E2E order handling, RMA (return merchandise authorization) flows, and easy-to-integrate third-party services.

In this article, you’ll learn more about what problems Shopify has that Medusa takes into account and provides a solution for as a platform.

## Why use Medusa

The most important thing about Medusa is its abstraction-based architecture which gives customization capabilities for developers. Medusa’s headless architecture makes it easy to integrate with third-party services such as Content Management Systems (CMS), fulfillment providers, payment providers, and notification systems. 

Its headless architecture combined with its open source nature makes a great starting point for building much more tailored ecommerce setups.

The flexibility in customization and integration provided for developers means that the merchants can be selective in terms of the services they choose to use with their ecommerce store. For example, you can integrate [Strapi](https://strapi.io/) or [Contentful](https://www.contentful.com/) to add rich CMS capabilities to your store. 

All of this can be done with Medusa and with no hacky workarounds.

## Shopify comparison: Problems that Medusa solves

### Customization of the backend

Shopify is a great option if you are creating an ecommerce store that does not require any custom features. But it falls short of the mark when you want to make customizations based on your business needs, which is often the case. This is the core problem with Shopify, as it leads developers and merchants to add multiple apps to their stores or add code blocks to implement hacky workarounds.

Whereas Medusa is built with customization in mind. Although it provides [tons of features out-of-the-box](https://github.com/medusajs/medusa#features), you have countless ways to customize the setup based on the composable open source architecture. You can create or use existing plugins to integrate your store with third-party services.

As for the frontend, you have the freedom to choose the frontend framework of your choice to power your storefront. Be it Next.js, Gatsby, Remix, or any other framework, all you need is to connect to [Medusa’s REST APIs](https://docs.medusajs.com/api/store). This gives you more flexibility in optimizing your storefront for the best user experience. 

### Poor site performance

In Shopify, a lot of advanced features that merchants might want to add to their stores can only be added either through purchasing Shopify Apps or including custom code blocks in their store, as mentioned in the previous section. This is more the case when the features being added are custom to the merchants’ use case.

Adding too many apps to your Shopify store or filling it up with custom code can have an adverse effect on page load speed. A slow ecommerce store can make customers frustrated and lead them to leave your store in favor of another faster store.

On the other hand, Medusa’s headless architecture which decouples the backend from the frontend releases the frontend from the shackles of the backend and makes it faster. This means that your store loads independently from the backend and just interacts with it to fetch or post data.

Moreover, this separation of the frontend from the backend means that additional features that you wish to add to your Medusa server as plugins do not affect your storefront’s speed. This leads to a better user experience and more traffic to your store.

### Omnichannel Support

Omnichannel refers to the ability to sell on multiple channels (across devices and platforms) while giving your customers a seamless experience across multiple channels. It also gives merchants the ability to manage orders logistically the same way regardless of where the customer places the order.

To truly provide omnichannel support you need an ecommerce platform that allows you to utilize your store’s resources similarly across platforms and devices.

Shopify’s 3 plans (Basic, Shopify, and Advanced) don’t provide a clear way to support omnichannel in your store. There are some unofficial apps that provide it, but merchants will often need multiple of them rather than just one. This can further slow down your store and fills it with more apps.

Alternatively, Shopify provides a headless commerce solution through its Shopify Plus plan which comes at a heavy price of [$2000 per month](https://www.shopify.com/plus/pricing). The headless architecture can make it easier for you to make use of your store’s resources across platforms, but it comes at a big price.

With Medusa, omnichannel support is available by default due to its headless architecture. Medusa’s REST APIs are designed to be consumed uniformly regardless of which client is sending the requests. So, you can provide a seamless experience to your users on both ecommerce websites as well as mobile apps.

Omnichannel support is achievable in Medusa without additional integrations or added costs.

### Multi-currency support

By supporting multiple currencies in a store, your customers will be able to view prices based on their local currency. This gives your customers a better experience and more clarity when shopping around the world.

In Shopify, this feature is only available if the merchant can activate Shopify Pay, which is only available in [17 countries](https://help.shopify.com/en/manual/payments/shopify-payments/shopify-payments-requirements#supported-countries-and-regions), as well as activate Shopify Market. Even with these 2 activated, merchants still need an Advanced plan if they want to customize the price format in different currencies or the exchange rates.

An alternative approach that Shopify merchants use is creating multiple stores that give them more control over the product prices in different currencies. A big disadvantage of this approach is the difficulty that comes with managing multiple products, orders, and settings, among other resources separately for each store. This makes your store more prone to human errors and miscommunications.

With Medusa, there is no need to create or have multiple stores just to handle multiple currencies. Medusa lets you do it all from one admin dashboard. You can create multiple regions in the same store and select the currency of the region. Then, you’ll be able to set the price of the product differently for each currency.

*[Suggested Read: How Medusa Resolves Shopify's Multi-Currency Issues.](https://dev.to/medusajs/how-an-open-source-platform-resolves-shopifys-multi-currency-issues-47lg)*

### Scalability and Maintainability

Most ecommerce stores start small and then gradually get bigger with time. Starting small means that there is no need for heavy resources, custom features, or complex integrations to provide various features like customer service.

With time, businesses using Shopify find that their stores are incapable of growing with their business needs. This is due to all the problems mentioned earlier in this article. Businesses tend to need later on, if not from the start, more customization capabilities, multi-currency and omnichannel support, and better performant ecommerce websites.

This often leads businesses to continue employing hacky workaround or pay additional costs to try and keep their store performant with a good user experience. Also, if they use Shopify apps in their store it can become hard to maintain the store in case some apps don’t play well together.

Medusa, on the other hand, not only resolves all the problems mentioned above, but it is capable of scaling with businesses’ growth. A business can tailor their ecommerce platform to their needs or make sure the server can handle more users or products, at lower costs.

Furthermore, Medusa is lightweight to maintain even after adding custom logic due to its abstraction-based architecture. Medusa’s existing use cases show examples of global stores (+30M USD in yearly revenue) being able to run an entire ecommerce setup on Medusa with only 1 frontend developer supporting it.

## Conclusion

Choose an ecommerce platform that will not only meet your current business needs but also be able to scale as your business grows.

Medusa is an ecommerce platform that aims to provide a good experience for both developers and merchants. As a merchant, you are no longer restricted by the shackles of proprietary software. As a developer, you are free to customize and make changes to the code as you see fit.

To get started with Medusa, check out the [Quickstart guide](https://docs.medusajs.com/quickstart/quick-start).

> Should you have any issues or questions related to Medusa, then feel free to reach out to the Medusa team via [Discord](https://discord.gg/F87eGuwkTp)
>