added checkout functionality