diff --git a/src/main/java/eu/siacs/conversations/parser/AbstractParser.java b/src/main/java/eu/siacs/conversations/parser/AbstractParser.java
index a21f80407..3ce08492d 100644
--- a/src/main/java/eu/siacs/conversations/parser/AbstractParser.java
+++ b/src/main/java/eu/siacs/conversations/parser/AbstractParser.java
@@ -139,6 +139,20 @@ public abstract class AbstractParser {
         return null;
     }
 
+	public static String errorMessage(Element packet) {
+		final Element error = packet.findChild("error");
+		if (error != null && error.getChildren().size() > 0) {
+			final List<String> errorNames = orderedElementNames(error.getChildren());
+			final String text = error.findChildContent("text");
+			if (text != null && !text.trim().isEmpty()) {
+				return text;
+			} else if (errorNames.size() > 0){
+				return errorNames.get(0).replace("-"," ");
+			}
+		}
+		return null;
+	}
+
     private static String prefixError(List<String> errorNames) {
         if (errorNames.size() > 0) {
             return errorNames.get(0) + '\u001f';
diff --git a/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java b/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java
index 09da7ceb5..c33aaec53 100644
--- a/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java
+++ b/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java
@@ -1876,7 +1876,7 @@ public class XmppConnectionService extends Service {
         final IqPacket request = new IqPacket(IqPacket.TYPE.SET);
         request.setTo(jid);
         final Element command = request.addChild("command", Namespace.COMMANDS);
-        command.setAttribute("node", Namespace.COMMANDS);
+        command.setAttribute("node", Namespace.EASY_ONBOARDING_INVITE);
         command.setAttribute("action", "execute");
         sendIqPacket(account, request, (a, response) -> {
             if (response.getType() == IqPacket.TYPE.RESULT) {
@@ -1895,7 +1895,7 @@ public class XmppConnectionService extends Service {
                 callback.inviteRequestFailed(getString(R.string.unable_to_parse_invite));
                 Log.d(Config.LOGTAG, response.toString());
             } else if (response.getType() == IqPacket.TYPE.ERROR) {
-                callback.inviteRequestFailed(IqParser.extractErrorMessage(response));
+                callback.inviteRequestFailed(IqParser.errorMessage(response));
             } else {
                 callback.inviteRequestFailed(getString(R.string.remote_server_timeout));
             }