Custom Shopify Apps: How do they work?
Often, clients ask us what exactly custom Shopify apps are and how they work. Or they have a use case that calls for a custom app, and they are not sure what exactly that entails. In this post, I’ll explain the very basics.
What is a custom Shopify App?
Let’s get directly to the meat, and then describe what that means in more detail.
Simply put, a custom Shopify app is a separate web service that communicates with Shopify via Shopify APIs and/or webhooks.
Now let’s explain the individual terms in more detail:
Web service. In broader terms, a web service is pretty much any application that you interact with on the internet. For example, Gmail or Google Search are web services. Shopify itself is a web service (or rather a collection of web services like Shopify Admin and Shopify App Store). A Shopify app is a web service as well, albeit a much smaller one. In most cases, it has it’s own database, hosting and so on.
API. A short for Application Programming Interface, an API is just a way how to talk to a web service (in our case, how to talk to Shopify). Shopify offers a suite of APIs, such as Admin API, that allow you to interact with their service and data. As an example, in Shopify developer docs, you can see how to list products via Shopify Admin REST or GraphQL API. Any Shopify app can use Shopify APIs to send or get some data from Shopify.
Webhooks. Notice that with Shopify API, we are “talking to Shopify”. That means, the Shopify app is always the one who initiates the communication. Webhooks provide the other way around. With webhooks, a Shopify app can register with Shopify to receive a notification when certain events occur (like when an order is placed, or a product info is edited). Then, when this event happens, Shopify will notify the Shopify app, and that can in turn act on the notification (like fetch additional data through Shopify API).
Custom Shopify app vs. Shopify App Store. Finally, a custom Shopify app is an app that is built just for your store, and is not available on the Shopify App Store. Custom apps do not have to go through Shopify app review, and can be installed only on a single store (or a collection of stores under one Shopify Plus account). However, that’s pretty much as far as the differences go – in both cases, a Shopify app is a separate web service as described above.
Embedded vs. standalone apps. Note that it does not really matter whether an app is shown as embedded in Shopify Admin, or as a standalone app in a separate browser window. In both cases, what’s behind it is a fully separate web service. Embedding an app is just a way how to better integrate with Shopify Admin and make the experience more cohesive for merchants. When building a custom Shopify App, you can go for either approach.
When do I need a custom Shopify app?
In short, Shopify apps offer functionalities that extend Shopify in some way. Hence, when merchants need some functionality or integration that is not available in Shopify by default, they turn to Shopify apps.
Then, the first thing to check is the Shopify App Store. If you need something similar to what other merchants need (like integration with a certain shipping provider, or a better way to do SEO for you store), chances are there is already a public app for it available on the Shopify App Store. Then you are better off just using that, as it’s cheaper than building a fully custom app.
However, when you have more specific needs that go beyond what is available on the Shopify App Store, then you’ll need to go custom. And then, there are pretty much no limits here.
As explained above, a custom Shopify app is a completely separate web service. It can have it’s own database, process data in bulk before uploading it to Shopify, send emails, store data in Shopify metafields and metaobjects, talk to some specific suppliers that Shopify does not integrate with by default, or provide a fully custom user interface on top of any existing Shopify functionality (like inventory management).
Hence, you can build anything from small custom supplier integrations to full blown project management systems on top of Shopify, depending on your needs.
If you need a custom app, feel free to get in touch using the button below. We’ll be happy to discuss your project with you and answer any questions you might have.