diff --git a/packages/components-faraday/src/components/Admin/AddEditUser.js b/packages/components-faraday/src/components/Admin/AddEditUser.js
index 1d487d28f91576f8240e48a15368d22b38605f0f..f06c8c9da8e053647bbcd73581b6c0269561738d 100644
--- a/packages/components-faraday/src/components/Admin/AddEditUser.js
+++ b/packages/components-faraday/src/components/Admin/AddEditUser.js
@@ -1,7 +1,7 @@
 import React from 'react'
 import { get, map } from 'lodash'
 import { connect } from 'react-redux'
-import { reduxForm } from 'redux-form'
+import { reduxForm, SubmissionError } from 'redux-form'
 import styled from 'styled-components'
 import { actions } from 'pubsweet-client'
 import { create } from 'pubsweet-client/src/helpers/api'
@@ -17,12 +17,19 @@ import EditUserForm from './EditUserForm'
 const getRoleOptions = journal =>
   map(journal.roles, (value, key) => ({ label: value, value: key }))
 
-const onSubmit = (values, dispatch, { isEdit }) => {
+const onSubmit = (values, dispatch, { isEdit, history }) => {
   if (!isEdit) {
-    create('/users/invite', values).then(
-      r => r,
-      // err => console.log(err),
-    )
+    return create('/users/invite', values)
+      .then(r => history.push('/admin/users'))
+      .catch(error => {
+        const err = get(error, 'response')
+        if (err) {
+          const errorMessage = get(JSON.parse(err), 'error')
+          throw new SubmissionError({
+            role: errorMessage || 'Something went wrong',
+          })
+        }
+      })
   }
 }
 
diff --git a/packages/components-faraday/src/components/Admin/Admin.js b/packages/components-faraday/src/components/Admin/Admin.js
index 023333aa86afe52d50e160e46185793e4cb59428..afc6a0221ebdd959479d0064821edf6580295b37 100644
--- a/packages/components-faraday/src/components/Admin/Admin.js
+++ b/packages/components-faraday/src/components/Admin/Admin.js
@@ -33,7 +33,7 @@ const Admin = ({
   <div>
     <Header>
       <span>Users</span>
-      <AddButton onClick={() => history.push('/')}>
+      <AddButton onClick={() => history.push('/admin/urers/add')}>
         <Icon color="#667080">plus-circle</Icon>
         Add User
       </AddButton>
diff --git a/packages/components-faraday/src/components/SignUp/SignUpInvitationPage.js b/packages/components-faraday/src/components/SignUp/SignUpInvitationPage.js
index 728f547710f6fb0379fc2b41c3a78c72f57e5f70..314d2899c4d60ff5ddadae6f58097339c42ab61c 100644
--- a/packages/components-faraday/src/components/SignUp/SignUpInvitationPage.js
+++ b/packages/components-faraday/src/components/SignUp/SignUpInvitationPage.js
@@ -1,16 +1,45 @@
+import { get } from 'lodash'
 import { withJournal } from 'xpub-journal'
+import { login } from 'pubsweet-component-xpub-authentication/src/redux/login'
+import { SubmissionError } from 'redux-form'
 import { create } from 'pubsweet-client/src/helpers/api'
 import { compose, withState, withProps, withHandlers } from 'recompose'
 
 import SignUpInvitation from './SignUpInvitationForm'
 
+const loginUser = (dispatch, values, history) =>
+  dispatch(login(values))
+    .then(() => {
+      history.push('/')
+    })
+    .catch(error => {
+      const err = get(error, 'response')
+      if (err) {
+        const errorMessage = get(JSON.parse(err), 'error')
+        throw new SubmissionError({
+          password: errorMessage || 'Something went wrong',
+        })
+      }
+    })
+
 const confirmUser = (email, token) => (values, dispatch, { history }) => {
   const request = { ...values, email, token }
   if (values) {
-    create('/users/invite/password/reset', request).then(
-      r => history.push('/'),
-      // err => console.log(err),
-    )
+    return create('/users/invite/password/reset', request)
+      .then(r => {
+        const { username } = r
+        const { password } = values
+        loginUser(dispatch, { username, password }, history)
+      })
+      .catch(error => {
+        const err = get(error, 'response')
+        if (err) {
+          const errorMessage = get(JSON.parse(err), 'error')
+          throw new SubmissionError({
+            password: errorMessage || 'Something went wrong',
+          })
+        }
+      })
   }
 }
 
diff --git a/packages/xpub-faraday/config/default.js b/packages/xpub-faraday/config/default.js
index dcab7794e79dc3521cc7e72e98109bed99dcdb1f..b5acdae84239af709cacddfc81852a9fb7d37b62 100644
--- a/packages/xpub-faraday/config/default.js
+++ b/packages/xpub-faraday/config/default.js
@@ -25,7 +25,7 @@ module.exports = {
   'pubsweet-client': {
     API_ENDPOINT: '/api',
     'login-redirect': '/',
-    'redux-log': false,
+    'redux-log': true,
     theme: process.env.PUBSWEET_THEME,
   },
   'mail-transport': {