Shopify · Apps & integrations
Shopify app development for the things the App Store cannot do
Most needs are met by an existing app, and we will say so. When your pricing rule, your warehouse or your ERP does not fit one, we build a custom Shopify app or integration that does the job and keeps doing it.
Build or buy
Custom Shopify app, or one from the App Store?
A public app is listed on the Shopify App Store, reviewed by Shopify and shared by many merchants. A custom app, which older documentation calls a private app, is built for one business and installed only on its stores.
Buying is the right default. A good public app has been tested on far more stores than a custom build ever will be. Building makes sense when the requirement is specific to you, or when renting a workaround costs more than owning the answer.
-
Buy when
The need is common, such as reviews, subscriptions or returns, and an established app covers it without heavy configuration.
-
Build when
The rule is unique to your business, the data belongs in your own systems, or you are stacking several apps to imitate one feature.
-
Also build when
An app slows the storefront with scripts you cannot control, and a small theme feature or Function would do the same job.
-
Either way
We check what each app does to page speed, what data it reads and how cleanly it can be removed.
What we build
Extending Shopify the way Shopify intends
Shopify provides supported extension points. Using them keeps custom work compatible with platform updates.
-
Shopify Functions
Small programs that run inside Shopify’s own infrastructure to change its behaviour: discount logic, delivery and payment customisation, and cart and checkout validation. Functions from custom apps need Shopify Plus.
-
Theme app extensions
App blocks and embeds that add features to the storefront through the theme editor, with no edits to theme code. Remove the app and nothing is left behind.
-
Checkout and admin extensions
Checkout UI extensions for fields and content in checkout, and admin extensions that put your tools on the order and product screens your staff already use.
-
Integrations
Services that sit between Shopify and your back office, translating orders, stock, prices and customers between the two and recording every exchange.
Integration engineering
What a well-built integration does when things go wrong
Any integration works on a quiet afternoon. The difference shows when an API is slow, a message arrives twice or an ERP is offline.
Receiving from Shopify
- Webhooks verified by signature, acknowledged at once and processed from a queue
- Idempotent handling, because the same webhook can arrive more than once
- No reliance on arrival order
- A scheduled reconciliation that catches anything missed
Writing to Shopify
- The Admin GraphQL API, requesting only the fields needed
- Bulk operations for large catalogues and exports
- Rate limits respected, with throttling and backoff instead of failed calls
- Retries that cannot create duplicates
Operating it
- Every message logged and searchable
- Alerts when a queue backs up or errors repeat
- Failed items held for replay, not lost
- API versions updated on a schedule, before old ones are retired
Typical integrations
What usually connects to a Shopify store
| System | What flows | What to get right |
|---|---|---|
| ERP | Orders out; products, prices, stock and customers in | Which system owns each field, and tax and rounding that agree on both sides |
| Warehouse or 3PL | Orders and returns out; shipments, tracking and stock levels in | Partial shipments, cancellations and stock held across several locations |
| PIM | Product data, images and translations in | Mapping attributes to options, metafields and metaobjects |
| Accounting | Sales, refunds, fees and payouts out | Reconciling payouts to orders, and VAT across markets |
| Marketplaces | Listings and stock out; orders in | One stock figure shared by every channel |
| Email and CRM | Customers, orders and events out | Marketing consent carried accurately between systems |
These are categories, not a fixed list: ERP systems such as NetSuite, Microsoft Dynamics 365 Business Central and Sage, accounting systems such as Xero, and email platforms such as Klaviyo. Where a sound connector already exists we use it. Where it does not, we build the middleware.
After launch
Hosting, maintenance and data protection
Shopify does not host custom apps. An app is a separate piece of software that needs somewhere to run, someone to watch it and a plan for keeping it current. Shopify Functions and extensions are the exception: they are deployed to Shopify and run there.
We set that up as part of the build, in cloud accounts that belong to you, and look after it under a monthly retainer if you want us to.
-
Hosting
Sized for the workload, deployed from Git, with separate staging and production environments and a development store to test against.
-
Maintenance
Shopify releases dated API versions and retires old ones. Apps need periodic updates, dependency patches and monitoring.
-
Security
Only the access scopes the app needs, credentials kept in a secrets store, webhook signatures verified and all traffic encrypted.
-
Data protection
Customer data is stored only where necessary, kept no longer than needed and handled in line with UK GDPR, with deletion requests honoured.
Questions
Shopify app and integration questions
What is a custom Shopify app?
A custom Shopify app is software built for one merchant and installed only on that merchant’s store or stores. It is not listed on the Shopify App Store. Custom apps are used for business-specific logic and integrations, and they use the same APIs, webhooks and extension points as public apps.
What is the difference between a custom app and a public app?
A public app is listed on the Shopify App Store, reviewed by Shopify and available to any merchant. A custom app is built for a single business and installed directly, without a listing. Older Shopify documentation refers to private apps, which custom apps have since replaced.
What are Shopify Functions?
Shopify Functions are small pieces of custom logic that run on Shopify’s own infrastructure during cart and checkout. They customise discounts, delivery options, payment methods and validation rules. Functions are delivered as part of an app. Any plan can use them through App Store apps, while Functions in custom apps require Shopify Plus.
Can Shopify integrate with our ERP?
Yes. Shopify ERP integration normally sends orders and customers to the ERP and brings products, prices and stock levels back, using webhooks and the Admin GraphQL API. Some ERP systems have ready-made connectors. Where those do not fit your processes, custom middleware gives full control over mapping, timing and error handling.
How do Shopify API rate limits affect integrations?
Shopify limits how quickly an app can call its APIs, and the GraphQL Admin API measures this by the cost of each query. A well-built integration requests only what it needs, uses bulk operations for large data sets, queues its work, and slows down and retries when throttled instead of failing.
Who hosts a custom Shopify app?
You do, or your agency does on your behalf. Shopify hosts the store and runs Shopify Functions and extensions, but the app’s own server, database and background jobs run on separate hosting. We set this up in cloud accounts you own, so the app is yours and can be moved if needed.