Which algorithm to use for transactional data
On this data, you can perform a lot of supervised learning. If you know, supervised learning is when the machine learns with data which has labels. In supervised learning, there are two subsets. Those are regression and classification. Classification is when you predict on something which is discrete, such as male or female, or survived or not survived. On the basis of regression, you can predict non-discrete things, such as the price of a house, or GDP of a country.
Based on your dataset, I think you can do a lot of EDA(exploratory data analysis) with classification. Maybe you can predict which gender buys more. There are many things you can do with the dataset, but here are the algorithms you can use.
If you have a small dataset, Logistic Regression and Naive Bayes are the best algorithms. For starters, the k-NN(k-nearest neighbors) algorithm is the best though. If you start getting into complex data, then Decision Tree is the best algorithm.
Now after all of these, there is the most complex algorithm(which is basically a bunch of decision trees mixed together) which is Random Forest. This algorithm is for if you have a really huge dataset with many labels.
Hope this helps!