diff --git a/synapse/rest/client/v2_alpha/register.py b/synapse/rest/client/v2_alpha/register.py
index 8da73a8615e37d97455669811f9176fd927677bd..e8d34b06b0578e320f7dcc0863bb3642627679c0 100644
--- a/synapse/rest/client/v2_alpha/register.py
+++ b/synapse/rest/client/v2_alpha/register.py
@@ -132,8 +132,7 @@ class RegisterRestServlet(RestServlet):
             # Set the desired user according to the AS API (which uses the
             # 'user' key not 'username'). Since this is a new addition, we'll
             # fallback to 'username' if they gave one.
-            if isinstance(body.get("user"), basestring):
-                desired_username = body["user"]
+            desired_username = body.get("user", desired_username)
 
             if isinstance(desired_username, basestring):
                 result = yield self._do_appservice_registration(