You can add a rule in the HTML so that only internal users and logged in users can see the page.
To do that:
1. Specify that only members of the Internal User and Portal groups should have access to the Shop Menu, by adding the groups to the Menu like this:
You would get to this screen by navigating to the Website App, then Configuration --> Menus
2) Then go here:
Shop page --> customise Theme --> HTML/CSS/JS Editor and click on it
In the Products section of the XML add a base group at the end of the path t name = products etc
Should look like this:
2) For the shopping cart in the XML look for Header Cart Link and add the same base group at the end of the path starting with t-set show_cart as per above picture.
Have you found a solution to your problem? Would be interested to know that too!
We had set the visibility for the button “Process Checkout” to groups internal users and portal users.
And also added the “Sign In” button and set visibility to public users.
We applied the concept as described in this post of limiting visibility by adding groups in XML, with the difference being we applied to the button rather than the page.
This worked for our scenario as we had wanted to ensure the check out process was available only to logged in users while shopping was available to all users.
In V16, this option is available to be set from settings > website
Hope this helps your case