Y no te basta con ocultar el apartado de catalogo a los no usuarios y desactivar la opción de registro?
No me he molestado en ello, pero al menos en la mayoria de CMS te deja ocultar categorías o módulos por rol de usuario y en el caso de que no dejara separar login y registro esta el truco de ocultar login y acceder mediante url directa o hacer algún tweak o configuración extra para que no puedan validar el usuario por ellos mismos. Tu como admin podrías crear usuarios manualmente sin problemas desde el panel de administración ademas creo yo.
Con esas pautas cualquier CMS para tiendas debería servirte.