Как показывает мой опыт, готовые cms для опта не годятся, слишком много приходится допиливать, и в результате оказывается быстрее сделать cms самому на каком-нибудь frameowrk типа yii или laravel. Ну и когда новые хотелки появляются, будет проще реализовывать не занимаясь издевательством над движком.
Но надо смотреть полное ТЗ. То что Вы описали можно сделать на любом движке немного его допилив или сделав отдельный модуль корзины. Но ограничатся ли заказчики этим? Я бы сразу взял с них список хотелок на будущее и определился потом на чем сделать.
Что советую посмотреть из cms:
shop-script.ru - могу скидку дать на лицензию
opencart.com - халявный
Но если хотелок много -
www.yiiframework.com/doc-2.0/guide-index.html