The email id should be available in the system already. Because on our MLM website the unique id of all users is email id. So that it should be unique to identify each user. In this system, you can not change the email id of a user in the future, because this email id will use everywhere in the database. You should remember whenever creates live project don't take email id as a unique id. In that case, you can create a random, unique number for every user so that if need to change the email id of any user in the future, you could be able to do it.
The under user id should be already available in the system. So that the new user can join him. If the under user id will not be available, then the new user cannot join because every user needs a parent user. Like every child need a parent to be in the world.
Even the top user of the system will also have a parent id that we will feed manually for the first time.