Mike: added chceckout feature