Dear Sir/Madam, I briefly looked over the requirements you outlined in your description, and personally I think this is very achievable in maybe one day at the most.
Concerning these variables, the only thing is on the login screen the user will have to "accept" whether they share some bits of information with you (e.g. full name + email) and we can return them with an error if they decline.
Other than that I believe there should be no difficult in implementing this mechanism with the simple and easy to use APIs in place.