Customer-Product Analytics
If you have historic data of earlier purchase by customers. Try to build any classification algo ( Decision tree/ RF) to build rule associated with customer and product. 
   Now you can suggest product to a new customer associating his properties to rules which are already created. Just goole classification algos in R/Python

Clustering ( K means/Hiearchical etc)  would be good for customer segmentation, not directly useful for prediction.

https://machinelearningstories.blogspot.com/2017/09/hierarchical-clustering-bottom-up.html

You can also use market Basket analysis for recommending similar products to existing customer.  

https://machinelearningstories.blogspot.com/2016/11/recommendation-engine-market-basket.html

http://courseprojects.souravsengupta.com/cds2016/product-recommendations-a-multi-classification-problem/