Quick summary
For most Shopify merchants, off-the-shelf apps handle common integrations without API work. When you need a custom integration (ERP, 3PL, PIM, CRM), use middleware tools like Make or Patchworks before building directly against the Shopify API. Direct API integrations are justified for high-volume, latency-sensitive operations or when no middleware connector exists.
Your Shopify store processes orders, but your warehouse management system does not know about them until someone exports a CSV. Your customer data lives in Shopify and your CRM and they are never quite in sync. Your product information is maintained in a PIM but has to be manually uploaded to Shopify after every update.
These are not unusual problems. They are the integration gaps that slow down operations, create errors, and cap how fast your business can scale. Solving them requires understanding what Shopify's APIs actually are, which integration approach fits each problem, and what the real cost of getting it right looks like.
What APIs does Shopify expose?
Shopify provides three main API surfaces, each serving a different purpose.
The Admin API is the primary integration interface. It gives authenticated access to all core store data: orders, products, customers, inventory, metafields, fulfilments, refunds, discounts, and more. Most integrations with backend systems (ERP, 3PL, accounting) use the Admin API. It is available via both REST and GraphQL. Shopify is gradually deprecating REST endpoints in favour of GraphQL — new integrations should use GraphQL where possible.
The Storefront API is designed for headless commerce implementations where the frontend is built outside of Shopify (in Next.js, Remix, or a custom React app). It exposes product catalogues, collections, cart functionality, and checkout in a way that can be queried from a client application. Most merchants on standard Shopify themes do not need the Storefront API directly.
The Customer Account API (introduced 2024) provides authenticated access to customer-specific data: order history, account details, and stored payment methods from the customer's perspective. Used for building custom account portals or loyalty interfaces outside of Shopify's default customer account pages.
For most merchant integration needs — connecting operational systems — the Admin API is the relevant surface.
Which integrations are worth building versus buying as apps?
The build-versus-buy decision comes down to three factors: whether an app exists, how well it fits your specific requirements, and the total cost over time.
Buy (app) when:
- A reliable, well-maintained app already exists with exactly the integration you need
- The app costs less than the ongoing developer maintenance a custom integration would require
- Your integration needs are standard (Shopify to Klaviyo, Shopify to Xero, Shopify to ShipStation)
- Non-technical staff need to configure or manage the connection
Build (custom integration) when:
- No app exists for your specific system
- Your operational requirements are non-standard (custom field mapping, multi-location inventory logic, complex order routing)
- You are integrating with a proprietary or highly customised internal system
- App reliability has been a recurring problem and you need control over the code
- You are processing high enough order volumes that app limitations (sync delays, API call quotas) are causing measurable problems
A useful benchmark: Shopify merchants on the Advanced plan generating over £1 million per year in revenue typically hit the point where one or two custom integrations become cost-justified. Below that threshold, apps generally offer better value than custom development for standard integration needs.
What are the most common integration patterns?
ERP (Enterprise Resource Planning). Systems like SAP, Sage, Netsuite, Microsoft Dynamics, and Brightpearl need order data, customer data, and inventory updates from Shopify. The typical integration pattern: Shopify orders push to ERP via webhooks on orders/create and orders/paid; ERP pushes inventory levels back to Shopify when stock changes. For Sage and Xero at smaller scales, connector apps (A2X from £19 per month, Xero's native connector, Shippit) handle this adequately. For NetSuite and SAP, purpose-built connectors or custom middleware are usually required.
3PL (Third-Party Logistics). Your 3PL needs orders, shipping preferences, and product data. It needs to send fulfilment confirmations and tracking numbers back. Most major 3PLs (ShipBob, Mintsoft, Peoplevox, Huboo) have native Shopify apps or documented API integrations. For 3PLs without a Shopify app, middleware that receives Shopify order webhooks and translates them to the 3PL's API format is the standard approach.
PIM (Product Information Management). Akeneo, Contentful, Plytix, and similar PIMs hold your product data. The integration challenge is keeping Shopify products in sync with PIM updates without manual re-entry. This is typically a one-way push (PIM to Shopify) using Shopify's product and variant API endpoints. Matrixify (from £15 per month) handles this for merchants who want a spreadsheet-based approach without custom code. For automated push on PIM save, a middleware layer or custom app is needed.
CRM (Customer Relationship Management). Klaviyo (from £20 per month) and Hubspot (from £15 per month) have mature native Shopify integrations that sync customer and order data in near-real-time. Salesforce requires a connector app or custom integration. For most merchants, the native integrations are sufficient and a custom build adds cost without meaningful benefit.
What middleware tools work well for simpler integrations?
When you need a connection between Shopify and another system but do not want to write code, middleware platforms let you build integration workflows visually.
Zapier (from £19 per month). The most widely known. Supports Shopify triggers (new order, new customer, updated order) and connects to hundreds of apps. Best for simple, linear workflows: new Shopify order triggers a record in Airtable, or a new customer sends a Slack notification. Hits limitations when you need complex data transformation, branching logic, or high-volume processing.
Make, formerly Integromat (from £9 per month). More capable than Zapier for complex scenarios. Supports multi-step workflows with conditional logic, looping, and data transformation. Better value for merchants who need more than basic trigger-to-action flows. A solid choice for mid-complexity integrations that do not justify custom development.
Patchworks (pricing on request, typically £300 to £1,500 per month depending on order volume). A UK-based integration platform purpose-built for ecommerce. Supports Shopify, major ERPs, 3PLs, and marketplaces out of the box with pre-built connectors. Used by mid-market and enterprise merchants who need reliable, maintainable integrations with proper error handling and monitoring. Significantly more expensive than Zapier or Make, but significantly more capable and appropriate for production ecommerce at scale.
Linnworks (from £449 per month). Not purely a middleware tool, but an order management and inventory platform with strong Shopify integration and connections to 3PLs, carriers, and marketplaces. The right choice for multichannel merchants who need centralised order routing and inventory management rather than point-to-point integrations.
When should you hire a developer versus use a connector app?
Use a connector app or middleware when:
- The integration need is standard and well-served by existing tools
- Your team can configure and maintain the connection without code
- The monthly cost of the app is less than the hourly cost of a developer maintaining a custom integration
Hire a developer when:
- No app or middleware supports your specific system
- You need custom data transformation that middleware cannot handle
- The integration is business-critical and reliability or performance requirements exceed what apps provide
- You are building an integration as part of a larger custom development project
Developer costs for custom Shopify API integrations range considerably. A simple order-to-spreadsheet integration with Zapier configuration costs nothing beyond the Zapier subscription. A custom Shopify-to-NetSuite integration built by a specialist might cost £5,000 to £20,000 depending on scope, plus ongoing maintenance. Get a fixed-price quote with a clear specification before starting any custom work.
How do you test and monitor integrations?
Testing before going live: use Shopify's development stores (free with a Partner account) to test API connections without touching real order data. Place test orders using the Shopify Bogus Gateway payment method and verify your integration handles them correctly.
Monitoring in production: every integration should have monitoring on the data flow, not just the app status. Watch for:
- Order count discrepancies between Shopify and your 3PL or ERP
- Inventory level differences that widen over time
- Customer records failing to sync (check CRM contact counts against Shopify customer counts)
For webhook-based integrations, monitor your endpoint's failure rate and set up alerts if delivery fails. Most middleware platforms (Make, Patchworks) include built-in error alerting. For custom integrations, use a monitoring service like Better Uptime or PagerDuty to alert on unexpected failures.
Key actions to take now
- Map every system your Shopify store needs to exchange data with. For each one, note the direction (Shopify to system, system to Shopify, or both), the frequency you need (real-time, daily, on demand), and the current state (manual, app, or nothing).
- For each gap, check the Shopify App Store for a native integration first. The majority of standard integration needs have well-maintained app solutions.
- If you use Sage, Xero, or QuickBooks and are still manually exporting Shopify financials, evaluate A2X (from £19 per month) or the native connector for your accounting platform. Manual financial exports are one of the highest-error-risk processes in ecommerce operations.
- For any integration involving order routing to a 3PL, verify whether your current setup is real-time or batch-sync. If it is batch, assess whether the sync delay is creating fulfilment timing problems.
- If you need a multi-system integration that no single app covers, evaluate Make (from £9 per month) before commissioning custom development. It handles a wide range of mid-complexity scenarios at a fraction of the custom build cost.
- For integrations at scale (over 500 orders per day or revenue over £2 million), get a specialist ecommerce integration agency to review your current stack. The cost of integration failures at scale outweighs the cost of doing it properly once.
Frequently Asked Questions
Does Shopify charge extra to use the API?
No. API access is included in all Shopify plans. The only plan-based difference is the API rate limit: standard plans allow 2 requests per second (leaky bucket model), Advanced and Plus allow 4 per second, with Plus getting higher burst limits. For most integrations, the standard rate limit is sufficient.
What is the difference between REST and GraphQL in the Shopify API?
REST uses fixed URL endpoints that return a predefined set of data. GraphQL lets you specify exactly which fields you want in your query and get back only what you asked for. GraphQL is generally more efficient (fewer round trips, less over-fetching) and is Shopify's preferred approach going forward. Shopify is deprecating several REST endpoints and encouraging migration to GraphQL for new builds. If you are hiring a developer to build a custom integration, specify that it should use the GraphQL Admin API.
How do I create a private API key to use the Shopify API?
In your Shopify admin, go to Settings, Apps and sales channels, then click "Develop apps" (or "Build your own apps"). Create a new app, configure the API scopes you need (for example, read orders, write inventory), and generate your Admin API access token. This token is shown once — save it securely. Never embed it in client-side code or commit it to a public repository.
What is the maximum number of API requests I can make per day?
Shopify uses a leaky bucket rate limiting model rather than a daily cap. The standard bucket size is 40 request units, refilling at 2 per second. This means burst requests are allowed up to the bucket capacity, then they are throttled. In practice, well-designed integrations rarely hit limits because they use webhooks for event-driven updates rather than constant polling. If your integration does hit rate limits, reduce polling frequency and move event-driven data flows to webhooks.
