Sobre o banco de dados. Não sei se é viável. Todas soluções requerem análise prévia. De custos e tempo de implementação. Você poderia adquirir pra desenvolvimento e teste uma instância de um banco RDS na AWS e incluir um novo database para cada cliente se não forem muitos. Ou alterar o banco pra funcionar com multi-tenant (um único banco com vários clientes plugados e acesso as tabelas vinculado por id de cliente, resumo tosco... na prática a treta é maior). Tu consegue uma instancia de banco rodando free por um ano. Veja nos demais provedores qual é mais vantajoso. No fim a ideia seria repassar os custos da instancia para os clientes ou incorporar como custos da empresa.
Já lidei com um problema parecido. Trabalhei em um ecommerce para farmácias e algumas delas usavam erp para controlar o estoque porém era interno/local. Tínhamos um serviço que rodava local que enviava pra uma fila os estoques 2 vezes ao dia para sincronizarmos com o ecommerce.
Não sei se é viável sincronizar o banco todo. Mas espero poder contribuir aí com a solução do seu problema.
Procure implicações da lgpd sobre uso do banco de dados. Se for utilizar banco na nuvem procure orientações sobre boas práticas de uso pois as implicações de vazamentos podem ser catastróficas. Lembre também que os custos recaem sobre a infra do banco (tamanho/potencia da máquina que implica na velocidade e capacidade de cache do banco), armazenamento (quantidade de memória em disco) e backup (tamanho e quantidade de vezes)