Implements user creation, user login and validation on checkout.