diff --git a/daemon/bin/dbus/configurationmanager-introspec.xml b/daemon/bin/dbus/configurationmanager-introspec.xml
index a78f2a20fbba13c610c1faa478e5d83334d29abe..80384a45df7aaf5c03520daf908a0a44a848be62 100644
--- a/daemon/bin/dbus/configurationmanager-introspec.xml
+++ b/daemon/bin/dbus/configurationmanager-introspec.xml
@@ -532,7 +532,7 @@
 
        <signal name="registrationStateChanged" tp:name-for-bindings="registrationStateChanged">
            <arg type="s" name="accountID"/>
-           <arg type="i" name="registrationState"/>
+           <arg type="s" name="registrationState"/>
            <arg type="i" name="registrationDetail">
                <tp:docstring>
                    The optional account-type specific message code. 0 when not available.
diff --git a/daemon/src/account.cpp b/daemon/src/account.cpp
index 33050a61b98a4d2ad8d37b9cbc25ad0844ebf532..2b8c16bb9149a26faa966873fa228abf7732cd5b 100644
--- a/daemon/src/account.cpp
+++ b/daemon/src/account.cpp
@@ -153,7 +153,7 @@ Account::setRegistrationState(RegistrationState state, unsigned detail_code, con
         // Notify the client
         emitSignal<DRing::ConfigurationSignal::RegistrationStateChanged>(
             accountID_,
-            static_cast<int32_t>(registrationState_),
+            mapStateNumberToString(registrationState_),
             detail_code,
             detail_str);
 
diff --git a/daemon/src/dring/configurationmanager_interface.h b/daemon/src/dring/configurationmanager_interface.h
index 0c92f6069f1b1b2d5ff584fc4b00ddd5b7356de4..5bf2c7d49c7f0191a9491d93ff95ccc7c2cf5a75 100644
--- a/daemon/src/dring/configurationmanager_interface.h
+++ b/daemon/src/dring/configurationmanager_interface.h
@@ -154,7 +154,7 @@ struct ConfigurationSignal {
         };
         struct RegistrationStateChanged {
                 constexpr static const char* name = "RegistrationStateChanged";
-                using cb_type = void(const std::string& /*account_id*/, int /*state*/, int /*detailsCode*/, const std::string& /*detailsStr*/);
+                using cb_type = void(const std::string& /*account_id*/, const std::string& /*state*/, int /*detailsCode*/, const std::string& /*detailsStr*/);
         };
         struct VolatileDetailsChanged {
                 constexpr static const char* name = "VolatileDetailsChanged";