I have about 25 shops all running through one main zencart store that I can access the admin of to process orders from any of the shops.
Here is an example of how I did it
Setup hosting for a domain and set the username to shop1
Install a zencart site on it and populate it with all of your products
Setup another domain with the user set as shop2
Then ssh onto your server
cp -R /home/shop1/public_html/* /home/shop2/public_html/
When asked to overwrite files choose yes for all
Next symlink the images folders
ln -s /home/shop1/public_html/images/* /home/shop1/public_html/images
Then change the ownership on the shop2 files
chown -R shop2 /home/shop2/public_html/*
Now ftp into the shop2 domain and change the paths in includes/configure.php
Make any changes to your language files or graphics that are nescessary
Edit the categories sidebox SQL Select to only pull the categories you want.
To make a new shop all be it uncustomised will only take you about 5 minutes.
Remember not to make any changes to the database as this will effect all shops
The main shop uses Secure Hosting (3rd party) to process the credit cards
This may all sound a bit straight forward but you have to understand that my system has to get all of the data for the zencart database from an Actinic Ecommerce Access database and that all product images must be uploaded to the server from Actinic daily. There are in excess of 12,000 products.
Anything is possible.