diff --git a/ticdesk_account/forms.py b/ticdesk_account/forms.py
index 51fe0ff7890ff321672dcf6a9933c52a6bf973d6..145676932a4c0b30012cf9be46be3df61ca4f7e3 100644
--- a/ticdesk_account/forms.py
+++ b/ticdesk_account/forms.py
@@ -73,6 +73,12 @@ class RegisterFormBase(forms.Form):
         validators=[is_date_min_years_ago(7)])
 
     # Contact fields
+    mail = forms.EmailField(label=_('E-Mail-Adresse'),
+        help_text='Du brauchst eine E-Mail-Adresse, um wichtige Informationen zu erhalten und damit wir dich bei Problemen erreichen können. Bitte gib unbedingt deine eigene E-Mail-Adresse an. Solltest du keine eigene E-Mail-Adresse haben, kannst du dir <a href="?new_mail=1">hier</a> direkt eine E-Mail-Adresse bei uns mitregistrieren.')
+    local = forms.CharField(label=_('Lokaler Teil (vor dem @-Zeichen)'),
+        help_text=_('Informationen dazu, wie du deine E-Mails abrufst, findest du unter dem Menüpunkt „Dienste“ auf unserer Website.'))
+    domain = forms.ChoiceField(label=_('Domain (nach dem @-Zeichen)'),
+        choices=[(_, _) for _ in MAIL_DOMAINS])
     newsletter = forms.ChoiceField(label=_('Newsletter'), choices=NEWSLETTER_CHOICES)
 
     # User account fields
@@ -98,9 +104,8 @@ class RegisterFormBase(forms.Form):
         super(RegisterFormBase, self).clean()
 
 class RegisterForm(RegisterFormBase):
-    # Contact fields
-    mail = forms.EmailField(label=_('E-Mail-Adresse'),
-        help_text='Du brauchst eine E-Mail-Adresse, um wichtige Informationen zu erhalten und damit wir dich bei Problemen erreichen können. Bitte gib unbedingt deine eigene E-Mail-Adresse an. Solltest du keine eigene E-Mail-Adresse haben, kannst du dir <a href="?new_mail=1">hier</a> direkt eine E-Mail-Adresse bei uns mitregistrieren.')
+    local = None
+    domain = None
 
 class MailAddForm(forms.Form):
     local = forms.CharField(label=_('Lokaler Teil (vor dem @-Zeichen)'),
@@ -118,10 +123,7 @@ class MailAddForm(forms.Form):
         super(MailAddForm, self).clean()
 
 class RegisterFormWithNewMail(RegisterFormBase):
-    local = forms.CharField(label=_('Lokaler Teil (vor dem @-Zeichen)'),
-        help_text=_('Informationen dazu, wie du deine E-Mails abrufst, findest du unter dem Menüpunkt „Dienste“ auf unserer Website.'))
-    domain = forms.ChoiceField(label=_('Domain (nach dem @-Zeichen)'),
-        choices=[(_, _) for _ in MAIL_DOMAINS])
+    mail = None
 
     def clean(self):
         # Ensure mail address is not taken