Contents
Shopify and WooCommerce expose APIs and webhooks that can push orders, customers and products to your internal tools in real time. A custom internal tool connected to the store usually costs $6,800 to $22,400 (€6,000–€20,000)excl. VAT, with the connection itself around $2,300 (€2,000)excl. VAT.
The online store records orders, but the rest of the work happens elsewhere: picking, customer service, account management, reporting. When those tools are not connected, someone exports files every morning. Shopify and WooCommerce provide everything needed to automate those exchanges. Here is what their APIs allow, based on their documentation as checked in October 2026, and how I build a connection that lasts.
What Shopify and WooCommerce provide
| Topic | Shopify | WooCommerce |
|---|---|---|
| Main API | GraphQL Admin API; the REST Admin API has been legacy since October 1, 2024 | REST API, enabled with read, write or read/write keys |
| Events | Webhooks by topic (order created, updated, etc.) | Webhooks on orders, products, customers and coupons |
| Limits | REST API: 40 requests per minute per app per store, 10 times more on Shopify Plus | Mostly depends on your hosting |
| Watch out for | New public apps must use GraphQL since April 1, 2025 | Webhooks disabled after more than five consecutive failures |
Sources: Shopify REST Admin API, Shopify webhooks, WooCommerce REST API and WooCommerce webhooks. WooCommerce also notes that “Plain” permalinks must be turned off for the API to work, and that integrations built on the old API now need a separate extension.
The most useful connections
- To a picking tool: each paid order shows up in a picking queue, and a status goes back to the store on shipment. See the order picking tool.
- To a returns and after-sales tool: the original order, the customer and their history are one click away. See returns and after-sales management.
- To a CRM: business customers and their orders feed account management. See the custom CRM.
- To a dashboard: revenue, margin, average order value, stockouts, consolidated with other channels.
- To the ERP or accounting: covered in detail in connecting your online store to your ERP.
In all of these cases, the connection does not live inside the store. It runs in your internal tool, hosted separately, which receives the webhooks, calls the API and keeps its own history. That is what lets you change theme, extension or even platform without breaking your internal processes: only the connection layer needs adapting, not the tool your teams use every day.
Budget and timeline
Amounts exclude VAT and cover a first version running in production. The store connection matches the “connection to other tools” building block in my pricing ($2,300 (€2,000)excl. VAT).
| Project | What it includes | Indicative budget | Timeline |
|---|---|---|---|
| Focused internal tool connected to the store | One use (picking, after-sales or tracking), accounts and roles, connection | $6,800 to $13,500 (€6,000–€12,000)excl. VAT | 1 to 2 months |
| Full internal tool | Several uses, dashboard, writing back to the store | $13,500 to $22,400 (€12,000–€20,000)excl. VAT | 2 to 3 months |
| Multichannel back office | Store, marketplaces and ERP connected in one tool | On quote, often above $22,400 (€20,000)excl. VAT | 3 to 6 months |
For your case, the estimator gives you a range in one minute. More than 10 users, premium design or a tight deadline change the amount according to the stated multipliers.
The rules I apply
- Webhooks plus catch-up. Webhooks give you real time; a regular check catches anything missed.
- Duplicates neutralized. An order received twice is only processed once, using its identifier.
- Signatures verified. Each webhook is authenticated before processing: Shopify and WooCommerce both provide a signing mechanism.
- Minimal permissions. The internal tool only requests the access it needs. A read connection does not need write access.
- Respecting rate limits. Bulk imports are spread out and resume automatically after a temporary refusal.
When this is not the right approach
If a Shopify App Store app or a WooCommerce extension already does what you need, try it first. For a modest subscription, it is often the best choice, especially if your process is standard.
Custom software makes sense when you are stacking extensions that conflict, when your teams juggle five tabs, or when your process (batch picking, kits, B2B) does not fit any existing app. If you are weighing Shopify Plus, see Shopify Plus or a custom back office?.
How the project works
- A 30-minute call: your current tools, your volumes, what gets re-entered.
- Scoping (1 to 2 weeks): flows, permissions, choice between an existing extension and custom work, fixed quote.
- Clickable mockups of the internal tool, tested by the team that will use it.
- Development in batches, against a test store or a staging environment.
- Go-live, with close monitoring of exchanges during the first weeks, then 3 months of included support.
Frequently asked questions
Do I need a public Shopify app to connect my tools?
No. To connect your own store to your tools, an app limited to your store is enough. App Store rules, such as requiring GraphQL for new public apps, mainly target apps distributed to other merchants, but I build new connections on GraphQL either way.
Are webhooks enough to never miss an order?
Not on their own. A webhook can fail or arrive twice. I add a periodic check that catches missed orders, and a guard that ignores duplicates.
Can the internal tool write back to the store?
Yes, with the right permissions: updating stock, shipping status or a price. You then need to define clearly which tool is the reference for each piece of data, so two systems never contradict each other.
Our WooCommerce site is self-hosted: is that a problem?
No, but the reliability of the connection also depends on your hosting. A slow or frequently unavailable site will make API calls and webhooks fail. A quick hosting review is part of scoping.