Every digital commerce project is a great idea until you get to the bit about integrating with your big, bad, ugly ERP. Consider this nightmare: The Dow Chemical Co. spent $1 billion on an ERP system that took 8-years to implement.
With Shopify Plus and SAP, you’re already ahead of the game with solid platforms that can be integrated efficiently. Now let’s show Dow how things could have been a lot easier and faster.
Must-Do #1: Carefully document your key touchpoints between SAP and Shopify
Take the time to list out and describe the business rules surrounding order flow, fulfillment process, customer account management, and inventory control procedures. Determine which business rules rely on communication between SAP and Shopify, what the communication frequency, cadence, and load will be, and flag uni- and bi-directional communications. Break these down into detailed workflow scenarios in the form of events, triggers, conditions, and actions.
Example: a business rule might require that, if a customer buys two of a single product, the second is free. Event: Order Created > Condition: Order has 2 of X > Action: discount X amount.
This work will be time-consuming but without it, you will be buried by unexpected issues arising during the quality assurance testing, user acceptance testing, and post-launch phases.
Must-Do #2: Consider using a connector app
After mapping touchpoints, you’ll be in a great position to determine whether a connector app makes sense. A connector app is a plugin you can install in your Shopify that uses a hosted service to act as a bridge for data to flow between your store and your ERP.
The primary benefit of using this approach is that you won’t have to invest heavily in building and maintaining a custom integration. That maintenance cost over time is often where the most technical debt accumulates in a digital commerce project. (Technical debt are decisions you have to pay for later in terms of time to deal with. You can defer working on technical debt, but every day you do the debt grows and becomes more time consuming to eventually get rid of. Just like financial debt.)
Of course, the time you save by using a pre-built connector is that they often can only satisfy basic business rules and that highly complex business rules (which are common in modern digital commerce) will require a custom integration effort. There may also be internal technology long term goals around performance or compliance with existing middleware technology that may also necessitate a custom approach.
We have vetted or used just about every ERP connector in the Shopify ecosystem. In our experience and analysis, only the Zapier and eBridge Connections connectors are production-ready. We would not recommend any other pre-built connectors.
Still, in every project, it is crucial to both make the effort to see if you can use a pre-built connector and, if not, get buy-in from everyone on the team about the additional work that will be needed to make a custom approach successful.
Must-Do #3: Understand the Shopify API capabilities and limitations before you commit to custom development work
Shopify has a robust API that supports a broad ecosystem of functionality extensions and custom integrations. However, an ERP integration effort — because of the centrality and criticality of the data involved (inventory, price, promotion, etc) — will push any API to its limits.
Before deciding on a custom approach, validate that your goals around data timeliness and flow are compatible with those limitations. For example, the API call ceiling may be a factor in an ERP integration.
Must-Do #4: Create a security assessment and plan
Because ERP integrations involve multiple systems (Shopify, the ERP, and potentially a middleware or ETL layer) you need to document the flow and state of all of the data through the complete integration funnel. Ensure that data is encrypted at rest and in transit, that your logs are stored securely, and that log information itself does not contain sensitive information.
Also be conscious of “data refuse”: Look at temporary file storage and data transience to ensure that sensitive information isn’t left behind unguarded and forgotten.
Must-Do #5: Compromise
Delivering many projects over many years for our clients has taught us that successful projects share common traits. One of the most crucial of those common traits is the willingness to make good compromises.
Because ERP integrations rely on the integration touchpoints of multiple systems and often involve unique business requirements, a willingness to make compromises along the way of building the integration will be crucial to success. There will be unknown unknowns and good decisions will need to be made along the way, always keeping the end goal in sight, to get to the finish line. Dow should have applied this guideline at least by year three.
Must-Do #6: Have a solid quality assurance plan
It should be self-evident that you need a solid plan for ensuring quality both with the initial data population of customer and order records, but also for the ongoing data flow between the systems as orders and customer updates occur.
But the biggest difference in QA testing your Shopify and SAP integration is the scale of data for ERP integrations in general. Unlike relational databases, large datasets require you to think and plan on a larger scale. You should plan testing at the group level, not the record level, by focusing on testing all of the different data clusters (a set of data that is similar, say, all customer records that have made 5+ orders or all customers outside the US). Spend time identifying the three V's of the data: Volume, Variety and Velocity.
Lastly, because timeliness is so crucial (think inventory and out-of-stock) a good QA plan will need to include a variety of performance tests.