Extract marketplace logic into class
Clean up path