Why not just use seperate database tables for each member type? Use a tempory database for member signing up, once you have recieved confimation they have paid the fee just transfer them from the tempory database into the relevent one!
I use this method & created a back end to manage it and all is well
