diff --git a/packages/component-faraday-selectors/src/index.js b/packages/component-faraday-selectors/src/index.js
index 04186a157a684bdc40d6727efd9756728bed8d9a..d3390a5eda5cc91eafcb5a526d67409622e67813 100644
--- a/packages/component-faraday-selectors/src/index.js
+++ b/packages/component-faraday-selectors/src/index.js
@@ -339,9 +339,6 @@ export const canSubmitRevision = (state, collection, fragment) => {
     .map(a => a.id)
     .value()
 
-  return (
-    get(collection, 'status', 'draft') === 'revisionRequested' &&
-    fragmentAuthors.includes(userId)
-  )
+  return get(fragment, 'revision', null) && fragmentAuthors.includes(userId)
 }
 // #endregion
diff --git a/packages/component-faraday-ui/src/helpers/withCountries.js b/packages/component-faraday-ui/src/helpers/withCountries.js
index 5d43f3a18f8d9ffc2b20d940d018d7d6e5613c71..fb72d5997d1270d94f7a11dd8325510a24034e1e 100644
--- a/packages/component-faraday-ui/src/helpers/withCountries.js
+++ b/packages/component-faraday-ui/src/helpers/withCountries.js
@@ -1,7 +1,7 @@
 import { withProps } from 'recompose'
 import countrylist from 'country-list'
 
-const countryMapper = (c = 'RO') => {
+const countryMapper = (c = 'GB') => {
   switch (c) {
     case 'GB':
       return 'UK'
@@ -14,7 +14,7 @@ const countryMapper = (c = 'RO') => {
   }
 }
 
-const codeMapper = (c = 'RO') => {
+const codeMapper = (c = 'UK') => {
   switch (c) {
     case 'UK':
       return 'GB'
diff --git a/packages/component-faraday-ui/src/submissionRevision/ResponseToReviewer.js b/packages/component-faraday-ui/src/submissionRevision/ResponseToReviewer.js
index 22cfcaf4495a023172a584e4f603f02e6943796f..ae8d081db29f25e6d7ebc0c77f055feb6459cbd4 100644
--- a/packages/component-faraday-ui/src/submissionRevision/ResponseToReviewer.js
+++ b/packages/component-faraday-ui/src/submissionRevision/ResponseToReviewer.js
@@ -69,8 +69,8 @@ const ResponseToReviewer = ({
           <FileItem
             item={file}
             onDelete={onDelete}
-            onDownload={f => downloadFile(f)}
-            onPreview={f => previewFile(f)}
+            onDownload={downloadFile}
+            onPreview={previewFile}
           />
         </Row>
       )}
diff --git a/packages/component-manuscript/src/components/ManuscriptPage.js b/packages/component-manuscript/src/components/ManuscriptPage.js
index bca758a1f9ab7924361799210946027862749a96..752339f211cac42f959a3567da0297d59e9a17df 100644
--- a/packages/component-manuscript/src/components/ManuscriptPage.js
+++ b/packages/component-manuscript/src/components/ManuscriptPage.js
@@ -496,7 +496,6 @@ export default compose(
     heRecommendationExpanded: expanded,
   })),
   withProps(({ currentUser, collection, submittedOwnRecommendation }) => ({
-    submitRevisionModalKey: 'submitRevision',
     getSignedUrl,
     shouldReview:
       get(currentUser, 'isReviewer', false) &&
diff --git a/packages/component-manuscript/src/submitRevision/utils.js b/packages/component-manuscript/src/submitRevision/utils.js
index 09cc446020ceaecf85fb9636ab5b2862304c8876..5438c077e89c38ec67fe18a5a0da6fe63971f120 100644
--- a/packages/component-manuscript/src/submitRevision/utils.js
+++ b/packages/component-manuscript/src/submitRevision/utils.js
@@ -42,13 +42,20 @@ export const onSubmit = (
         fragmentId: fragment.id,
         collectionId: collection.id,
       })
-        .then(r => {
-          setFetching(false)
-          dispatch(actions.getFragments({ id: collection.id })).then(() => {
-            history.push(`/projects/${r.collectionId}/versions/${r.id}/details`)
-            hideModal()
-          })
-        })
+        .then(
+          r => {
+            dispatch(actions.getFragments({ id: collection.id })).then(() => {
+              setFetching(false)
+              hideModal()
+              history.push(
+                `/projects/${r.collectionId}/versions/${r.id}/details`,
+              )
+            })
+          },
+          err => {
+            throw err
+          },
+        )
         .catch(err => {
           setFetching(false)
           handleError(setModalError)(err)
@@ -78,7 +85,7 @@ export const validate = ({ responseToReviewers }) => {
     set(
       errors,
       'responseToReviewers.content',
-      'A response of a report file is need.',
+      'A reply or a report file is needed.',
     )
   }
 
diff --git a/packages/component-manuscript/src/submitRevision/withSubmitRevision.js b/packages/component-manuscript/src/submitRevision/withSubmitRevision.js
index 512029f89d89330fec483f45cc07d2c79f199358..bee0fa857803e91bf8987c4fabbf9ffd24fb4275 100644
--- a/packages/component-manuscript/src/submitRevision/withSubmitRevision.js
+++ b/packages/component-manuscript/src/submitRevision/withSubmitRevision.js
@@ -1,5 +1,6 @@
 import { get, pick } from 'lodash'
 import { connect } from 'react-redux'
+import { withRouter } from 'react-router-dom'
 import {
   MultiAction,
   handleError,
@@ -32,6 +33,7 @@ import {
 import { onChange, onSubmit, getInitialValues, validate } from './utils'
 
 export default compose(
+  withRouter,
   withFetching,
   withFilePreview,
   withFileDownload,
@@ -45,7 +47,7 @@ export default compose(
   withProps(() => ({
     modalKey: 'submitRevision',
   })),
-  withModal(({ isFetching, ...props }) => ({
+  withModal(({ isFetching }) => ({
     isFetching,
     modalComponent: MultiAction,
   })),
@@ -98,6 +100,7 @@ export default compose(
       ...pick(props, [
         'addFile',
         'journal',
+        'history',
         'fragment',
         'addAuthor',
         'showModal',
@@ -128,5 +131,4 @@ export default compose(
   })),
 
   setDisplayName('SubmitRevisionHOC'),
-  // reduxForm({ form: 'revision', onSubmit }),
 )
diff --git a/packages/xpub-faraday/config/validations.js b/packages/xpub-faraday/config/validations.js
index 978904daf61d9ad44ee03ad187d33d30dc64ac83..cc116eecca70a91cb64c085c77fc0c6b6da39cfd 100644
--- a/packages/xpub-faraday/config/validations.js
+++ b/packages/xpub-faraday/config/validations.js
@@ -42,7 +42,18 @@ module.exports = {
         hasFunding: Joi.any().valid(['yes', 'no', '']),
         fundingMessage: Joi.string().allow(''),
       }),
-      commentsToReviewers: Joi.string(),
+      responseToReviewers: Joi.object({
+        file: Joi.object({
+          id: Joi.string(),
+          name: Joi.string().required(),
+          originalName: Joi.string(),
+          type: Joi.string(),
+          size: Joi.number(),
+          url: Joi.string(),
+          signedUrl: Joi.string(),
+        }).allow(null),
+        content: Joi.string().allow(''),
+      }),
       files: Joi.object({
         manuscript: Joi.any(),
         manuscripts: Joi.array().items(