Вопрос по организации saas сервиса

Есть такая дилема.
Есть некая складская програма на PHP/Mysql
Некто захотел чтобы у него она стояла как сервис чтобы клиенты регистрились каждому создавался субдомен и каждый мог манипулировать товарами заказами и прочим в своей песочнице. Что то типа онлайн CRM. Ну типа у битрикса такое есть.
А теперь получаются два варианта с точки зрения технической реализации.
Все клиенты сервиса живут в одной БД и их данные разделяются по какому нибудь ключу по всем таблицам. Как учет нескольких фирм в одноце. То есть переделка самой программы и сопутствующий гемор по разделению данных, настроек и пр.
Второй вариант — при создании аккаунта клиента ему создается своя копия сайта со своей копией БД как это делается на шаред хостингах. Создается автоматом каким нибудь скриптом на shell или как там.
у кого какой опыт, как вообще обычно делают в этих саасах типа битрикса или моегосклада?
Экспериментировать с этим не очень охота — вопрос больше админский а не програмистский но заказчик пристал как банный лист и все норовит денег дать.

Проблема очень известная — MultiTenancy vs SingleTenancy.
На самом деле простого ответа нет. Иногда лучше одно, иногда другое.
Если делаешь b2b SaaS то лучше начинать с MultiTenancy (то есть все клиенты в одной базе и на одном апп сервере). Так дешевле и проще администрировать вначале. Просто заранее сделай колонку в каждой табличке — TenantId. Если будешь хорошо расти — в будущем сможешь перейти на Single Tenant или Hybrid модель при необходимости.

SingleTenancy будет точно дороже по инфраструктуре (отдельная база + сервер на каждого клиента), но дешевле в разработке — можно будет запустить приложение «как есть» с минимальными изменениями в коде.
Зачем поддомены на каждого клиента? Можно просто сделать saas.com/client-foo-bar/app или даже saas.com/app — клиенский айди можно из куки или хедера вытащить. Если нужен раутинг на разные сервера — можно использовать level 7 load balancer. В одной из компаний где я работал было 1500 поддоменов — не очень удобно я вам скажу, лучше уж без них

сервер тот же один екземпляр апача- сайт отдельный

заказчик говорит что liqpay требует отдельного адреса сайта для клиента

Леонид, тут наверное стоит принимать решение на основании бизнес прогноза. Если речь идет о «мы планируем добавить 20 клиентов в течении следующего года» — то конечно же отдельные хосты и шел скрипт (а можно и руками поднимать и с шел скриптом не заморачиваться). Если — у нас в очереди 100 компаний, то стоит думать об оптимизации процесса. Сначала в любом случае стоит делать то, что не масштабируется. Ну нужно со старта думать об идеальном решении.