improve purchase flow by checking if user_signed_in