ERP Integration With Shopify, WooCommerce, and Amazon
The Three Integration Approaches
Native connectors are integrations built and maintained by the ERP vendor or the ecommerce platform vendor specifically for that platform pair. Microsoft's first-party Shopify connector for Dynamics 365 Business Central, Brightpearl's built-in Amazon integration, and NetSuite's SuiteCommerce connector are examples. Native connectors offer the tightest integration, the fastest setup, and the most reliable ongoing performance because they are tested against both platforms' update cycles and supported directly by one of the two vendors. The limitation is availability: not every ERP has native connectors for every sales channel.
Middleware platforms (also called integration platforms or iPaaS) provide pre-built connector templates for common ERP-to-ecommerce integrations. Celigo, Jitterbit, Workato, and MuleSoft are the major platforms in this category. Middleware sits between your ERP and your sales channels, translating data between their different formats and APIs. The advantage over native connectors is flexibility: middleware can connect virtually any ERP to any ecommerce platform, and it can incorporate custom business logic (field transformations, conditional routing, data enrichment) into the integration flow. The cost is typically $500 to $2,000/month plus implementation, and the ongoing maintenance requires monitoring the middleware layer for errors and updating it when either connected platform changes its API.
Custom API integration involves developing a bespoke connection between your ERP and your sales channels using each platform's APIs. This approach provides maximum flexibility and control but requires software development resources, either internal developers or a contracted development team. Custom integration makes sense when your data flows include business logic too complex for native connectors or middleware templates, when you need performance optimization beyond what generic tools provide, or when you integrate with niche platforms that no connector supports. The development cost is typically $10,000 to $50,000 per channel, with ongoing maintenance of $1,000 to $3,000/month for API updates and bug fixes.
For most ecommerce businesses implementing ERP for the first time, the recommendation is to use native connectors wherever available and middleware for channels without native support. Custom API integration should be reserved for specific data flows that cannot be achieved through the other two approaches. This hybrid strategy minimizes implementation time and cost while ensuring reliable data flow across all channels.
Critical Data Flows for Ecommerce ERP Integration
Every ecommerce ERP integration must handle five data flows reliably. Failure in any one of these creates operational problems that range from inconvenient to catastrophic.
Order import (sales channel to ERP). Every order from every channel must flow into the ERP within minutes of placement. The order record must include: customer information (name, email, shipping address, billing address), line items with SKU, quantity, and price, shipping method and cost, tax collected, discounts applied, payment status, and the marketplace order ID for reference. For Amazon FBA orders, the integration must also capture FBA-specific data like fulfillment center and Amazon's fees. Order import should be near-real-time (within 5 minutes) or triggered by webhooks for instant processing.
Inventory sync (ERP to sales channels). When inventory levels change in the ERP, whether from a sale, a return, a receipt from a supplier, a warehouse transfer, or a manual adjustment, the updated count must push to all connected sales channels. This is the flow that prevents overselling, and it must be fast. A 30-minute delay between an ERP inventory adjustment and the channel update means 30 minutes where a customer could buy a product that is no longer available. Target sync frequency: within 5 minutes for batch sync, or real-time for webhook-based integrations.
Inventory sync also requires logic for "available to promise" versus raw stock count. If you have 100 units in the warehouse, 20 allocated to pending orders, and 10 reserved for a wholesale commitment, your available-to-sell quantity is 70, not 100. The integration must push the available quantity, not the total warehouse count, to each sales channel. Most ERP platforms calculate this natively, but the integration must be configured to use the correct inventory figure.
Product data sync (ERP to/from sales channels). Product information, including titles, descriptions, prices, images, weights, and variants, should be managed in one system and pushed to all channels. Most businesses manage product data in the ERP and push to channels, but some manage listings on the channel (especially Amazon, where listing content affects search ranking) and pull product updates back to the ERP. Either direction works, but the direction must be clearly defined and consistently applied. Bidirectional product sync without clear ownership rules creates data conflicts that are difficult to resolve.
Fulfillment and tracking (ERP to sales channels). When an order is shipped and a tracking number is generated, the integration must push the tracking number and carrier information back to the sales channel that originated the order. This triggers the customer's shipping notification and, on marketplaces, updates the order status to "shipped." Failing to push tracking data results in customers seeing their orders as "processing" indefinitely, customer service inquiries, and on Amazon, potential seller metric penalties for late ship confirmation.
Financial reconciliation data. Payment processor settlements, marketplace fee deductions, refund processing, and chargeback notifications must flow into the ERP's financial module for accurate accounting. For marketplace channels, this includes the settlement reports that detail gross sales, referral fees, FBA fees, advertising deductions, and net payment for each settlement period. The accounting integration must translate these complex settlement structures into the correct journal entries.
Shopify Integration Specifics
Shopify provides a well-documented REST and GraphQL API that most ERP connectors use for integration. The API supports webhooks for real-time event notifications (new order, order update, product update, inventory change), which enables near-instant data sync when the connector is configured to listen for these events.
The key Shopify-specific integration considerations are: Shopify's API rate limits (currently 2 requests per second for REST, with a 40-request bucket for bursting), which can be a bottleneck for high-volume stores during peak periods. GraphQL offers higher throughput and is the recommended API for new integrations. Shopify's inventory management has become more sophisticated with the introduction of the Inventory API's "available," "committed," "incoming," and "reserved" quantities. Your ERP integration should map these states correctly rather than treating Shopify inventory as a single number.
Shopify Plus stores benefit from additional API capabilities including the Flow API for triggering ERP workflows from Shopify events, the Checkout API for custom checkout integrations, and higher rate limits. If you are on Shopify Plus, ensure your ERP connector takes advantage of these enhanced capabilities rather than using the standard API endpoints that are available to all Shopify plans.
Recommended connectors for major ERP platforms: NetSuite uses Celigo's SuiteCloud connector or FarApp for Shopify integration. Acumatica has a native Shopify connector through its Commerce Edition. Brightpearl has a built-in Shopify and Shopify Plus connector. Dynamics 365 Business Central has Microsoft's first-party Shopify connector. Odoo uses third-party connectors from the Odoo App Store with varying quality levels.
WooCommerce Integration Specifics
WooCommerce integration differs from Shopify in several important ways. WooCommerce is a self-hosted platform, meaning your store runs on your own server infrastructure. This gives you more control over the integration architecture but also means you are responsible for the server-side performance of API calls, webhook reliability, and data security.
WooCommerce's REST API provides endpoints for orders, products, customers, and inventory. Webhook support is available for real-time event notification, but webhook reliability depends on your hosting infrastructure. On shared hosting or under-provisioned servers, webhooks can fail silently during high-traffic periods, causing integration gaps that are difficult to detect without monitoring. If you run WooCommerce on quality managed hosting (WP Engine, Kinsta, Cloudways) with adequate resources, webhook reliability is comparable to SaaS platforms.
WooCommerce's plugin ecosystem adds integration complexity because any plugin that modifies orders, inventory, or products can affect the data that your ERP integration reads and writes. If you use WooCommerce Subscriptions, WooCommerce Memberships, or custom checkout plugins, verify that your ERP connector handles the custom order types and data structures these plugins create. Test thoroughly with real orders that exercise every order type your store generates.
Recommended connectors: NetSuite uses Celigo or custom middleware. Acumatica supports WooCommerce through its Commerce Edition connector. Odoo has a native WooCommerce bridge module. For SAP Business One and Dynamics 365, third-party middleware from Celigo or Jitterbit provides the most reliable WooCommerce connectivity.
Amazon Integration Specifics
Amazon integration is the most complex of the three because Amazon's Selling Partner API (SP-API, which replaced the older MWS API) serves fundamentally different purposes depending on whether you use Fulfillment by Amazon (FBA), Merchant Fulfilled (MFN), or both.
For FBA orders, Amazon handles fulfillment entirely. The integration imports the order into your ERP for financial record-keeping, but the ERP does not manage the fulfillment workflow. Inventory management for FBA products is split: Amazon controls the physical inventory at its fulfillment centers, while your ERP tracks the units you have shipped to Amazon and the units Amazon has in stock. Reconciling these two inventory views requires regular FBA inventory reports, which the integration should pull automatically.
For Merchant Fulfilled orders, the integration must import orders from Amazon into the ERP's fulfillment queue, push tracking numbers back to Amazon after shipment (critical for seller metrics), and manage inventory availability on Amazon based on your ERP's stock levels. Late shipment confirmation on MFN orders negatively impacts your seller account health, so the tracking push-back must be reliable and timely.
Amazon's settlement reports are more complex than Shopify's or WooCommerce's payment records. Each settlement includes gross sales, referral fees (8% to 15% depending on category), FBA fees (if applicable), advertising deductions, promotional costs, and various adjustments. Your accounting integration must parse these settlement reports into the correct journal entries. Tools like A2X specialize in this Amazon-to-accounting translation and can work alongside your ERP's financial module.
Recommended connectors: NetSuite uses Celigo's Amazon connector or specialized providers like FarApp. Brightpearl has built-in Amazon integration including FBA support. Acumatica supports Amazon through Commerce Edition. For other ERP platforms, Celigo and ChannelAdvisor provide robust Amazon connectivity.
Integration Best Practices for Ecommerce
Integrate one channel at a time. Connect your highest-volume channel first, validate data accuracy across all five data flows, stabilize the integration over 1 to 2 weeks of production operation, and then add the next channel. This approach isolates problems to specific integrations and prevents the debugging nightmare of multiple simultaneous integration failures.
Implement error monitoring from day one. Every integration will encounter errors: API timeouts, data validation failures, rate limit throttling, and occasional platform outages. Configure alerts that notify you when an order fails to import, an inventory sync fails to push, or a tracking update fails to deliver. Without monitoring, integration failures can go undetected for hours or days, causing overselling, missed orders, and financial discrepancies that require manual cleanup.
Test with real orders, not sample data. Synthetic test orders do not exercise the edge cases that cause integration failures in production: orders with multiple shipping addresses, orders with gift wrapping, orders with promotional discounts that change the line item structure, international orders with customs declarations, and orders with products that have been modified or discontinued since listing. Process at least 50 real orders through each channel integration before considering it production-ready.
Document your integration architecture. Record which system is the "master" for each data type (products mastered in ERP, listings mastered on Amazon, etc.), the sync frequency and direction for each data flow, the connector or middleware used for each channel, the error handling procedures for common failure modes, and the escalation path when integration issues cannot be resolved by your operations team. This documentation is essential when team members change or when you need to troubleshoot an issue months after the initial setup.
ERP integration with ecommerce channels is not a one-time setup. It is an ongoing operational function that requires monitoring, maintenance, and periodic updates as your sales channels and ERP platform evolve. Budget for integration maintenance as a recurring cost (typically $500 to $2,000/month for middleware management and monitoring) and assign clear ownership for integration health to someone on your team.
