Customer Specific Stores, Catalogs, and Categories
Stores
You can set up your product store so that it is only available to particular customers by configuring ProductStore.requireCustomerRole to "Y" and then adding each customer authorized to use it by going to the Catalog > Stores tab, clicking on your products store, and then clicking on the [Parties] tab. There, you can add each customer with the role of "CUSTOMER", and that customer will be authorized to use your store. Notice that any user login associated with that customer will be allowed to use that store. (Technical note: This information is stored in the ProductStoreRole entity.)
You can also configure a party with a VENDOR role for the store, but the only functionality is that that party will be created with an order role all the vendor when orders are created in the store.
Catalog
You can also set up customers for your catalog. If you go to the [Parties] tab for your catalog in the catalog manager, and you add a party with the role of "CUSTOMER" for your catalog, then that catalog will only show up for customers with that role defined for the catalog. (Technical note: This information is stored in ProdCatalogRole and retrieved with CatalogWorker.getStoreCatalogs())
Categories
There is no support for making a category visible only for specific customers out of the box. The [Parties] tab for category has no meaningful functionality at this point. A ProductCategoryRole is created when a user creates a category. That user is given role LTD_ADMIN on the category if he has CATALOG_ROLE_CREATE permission. There is no other use of this role table.
The_Special_Categories_-_Root,_Search,_Featured << Manual Pages
Working_with_Products_in_the_Catalog << Section Pages >> Working_with_the_Product_Store(s)