diff --git a/resources/static/dialog/resources/state_machine.js b/resources/static/dialog/resources/state_machine.js
index ef2dbef54e4e4463c095270a88ec0066d0ff46be..beb9f72d2cc2bad0a89ef92158b2544abc2c79c4 100644
--- a/resources/static/dialog/resources/state_machine.js
+++ b/resources/static/dialog/resources/state_machine.js
@@ -95,7 +95,7 @@
       self.allowPersistent = !!info.allowPersistent;
       var email = self.requiredEmail = info.requiredEmail;
 
-      if(email && !(bid.verifyEmail(email))) {
+      if(typeof(email) !== "undefined" && !(bid.verifyEmail(email))) {
         gotoState("doError", "invalidRequiredEmail", { email: email });
       }
       else {
diff --git a/resources/static/test/qunit/resources/state_machine_unit_test.js b/resources/static/test/qunit/resources/state_machine_unit_test.js
index 6d96c41f36cbf347238b1188f1d228d24ad89c4e..e988f9351decfd052811c81832a7bac1a02329c9 100644
--- a/resources/static/test/qunit/resources/state_machine_unit_test.js
+++ b/resources/static/test/qunit/resources/state_machine_unit_test.js
@@ -256,6 +256,14 @@
     equal(controllerMock.error, true, "error screen is shown");
   });
 
+  test("start with empty requiredEmail prints error screen", function() {
+    mediator.publish("start", {
+      requiredEmail: ""
+    });
+
+    equal(controllerMock.error, true, "error screen is shown");
+  });
+
   test("start with valid requiredEmail goes to auth", function() {
     mediator.publish("start", {
       requiredEmail: "testuser@testuser.com"