add checkout funcitons