Data Architecture for a small business wanting to use shopify

I am trying to figure out a reliable data architecture for a small business that wants to utilize Shopify for their online store.

My current idea is to have a central database (doesn’t matter which, we’ll say Postgres). The business users can create products, services, customers, etc in Shopify. Customers could go to their site and order things.

Then I would have a background process to sync all these things from Shopify to this central database.

Some orders would have to be put in a LIMS system so I would have another background process to sync these orders in the central database with the LIMS system.

Some orders come directly from the LIMS system so another background process to sync these orders to the central database.

All the orders in the db need to be synced to Quickbooks so another background process to sync this.

Concerning Shopify, does this seem like a doable strategy? I’m an experienced programmer, but no experience with Shopify or its APIs.

Also, I’m not really a fan of syncing data sources but…is there a better way?

Obviously I could write an admin ui to let them create things in the central db first and then sync them to Shopify.

But isn’t the whole point of Shopify to make this part easy by providing them a way to create all these things right out of the box?

One of the other things that they want is to run reports against this central database. In theory Shopify could act as the central database, but not sure what reporting would even look with Shopify API.

Honestly, your setup sounds solid—using a central database with background processes to sync Shopify, LIMS, and QuickBooks should work fine. Keeping everything in one place for reporting and linking to other systems makes life easier in the long run.

One idea could be to use Shopify as your main database, then pull data directly from its API for reports, but Shopify’s reporting options can be pretty limited. If you’re looking for more control, building an admin UI that connects to your central database first, then syncs out to Shopify and others, could give you that—but it’s more work upfront.

If you’re thinking long-term and want to plan it out with a more flexible setup, checking out advisedskills.com could be helpful. They’ve got resources on frameworks like TOGAF that are great for structuring data and enterprise systems—stuff that can help if you’re expecting the setup to grow over time.