Classification model for recommender system? I have some data for various customers choosing one of 'n' products or no product. I have some useful features for each customer. I can build a multi-class classification problem out of this data and use a classification model (say, random forest) to learn the data. This model will then output one of the following categories: 

[0, 1, 2, ..., n] 

where 1, 2, ..., n is the 1st, 2nd etc. products, and 0 is when the customer chose not to buy anything. I want to make this model as a recommender system, i.e., when a new customer (along with all other features) comes along, I know which one of the n products he will more likely buy. 

The question is this: in the above setting, I don't know what I should do when the models outputs '0' for the new customer. What should be my action when such a situation, i.e., the new customer is not likely buy any of the products? Or should I formulate the classification problem in some other way? Is there any way we shouldn't formulate the problem as a classification problem at all?
One option could be to model the output slightly different. Instead of returning the type of product 1, 2, ..., n or 0 in case of no product maybe you could return a list of pairs (product, probability), if the highest probability is the one corresponding to 0 i.e. "no product" you could just recommend the 2nd best. 

An advantage of this approach is that you could recommend more than one product, maybe the top 3, or a list of products whose probability is higher than a specific threshold, etc.

If the customer is new and there is no information you could base your recommendation on, maybe you could recommend the product that you would offer to a similar customer (if you can cluster the customers in any way) or simply the top selling products.