diff --git a/src/components/AnnotationManifestsAccordion.js b/src/components/AnnotationManifestsAccordion.js
index cf76c6a91374ebda7013ee9800218308d2dc6499..749330b99e8777f0c74b35af0653534569c4f834 100644
--- a/src/components/AnnotationManifestsAccordion.js
+++ b/src/components/AnnotationManifestsAccordion.js
@@ -22,6 +22,26 @@ export class AnnotationManifestsAccordion extends Component {
     super(props);
     this.handleOpenManifestSideToSide = this.handleOpenManifestSideToSide.bind(this);
     this.handleOpenAccordion = this.handleOpenAccordion.bind(this);
+
+    /** Search if the annotation is a manifest. URL must be resolvable for the annotation. So the manifest url is added at the end of the id */
+    function searchManifestInID(id) {
+      const match = id.match(
+        /((http|https)\:\/\/[a-z0-9\/:%_+.,#?!@&=-]+)#((http|https)\:\/\/[a-z0-9\/:%_+.,#?!@&=-]+)/gi,
+      );
+
+      return match ? match[0].split('#').slice(-1) : null;
+    }
+
+    const { annotation } = this.props;
+
+    annotation.manifests = searchManifestInID(annotation.id);
+    if (annotation.manifests) {
+      annotation.manifests = annotation.manifests.map(id => ({ id }));
+    } else {
+      annotation.manifests = [];
+    }
+
+    this.state = { annotation };
   }
 
 
@@ -37,7 +57,7 @@ export class AnnotationManifestsAccordion extends Component {
   handleOpenAccordion(e) {
     const { annotation } = this.state;
     /** */
-   /*  async function load(manifests) {
+    async function load(manifests) {
       return Promise.all(manifests.map((manifest) => fetch(manifest.id)
         .then((response) => response.json())
         .then((data) => {
@@ -55,27 +75,20 @@ export class AnnotationManifestsAccordion extends Component {
           this.setState({ annotation });
         }
       });
-    e.stopPropagation(); */
-
-    // We work onlu on the first manifest
-
- /*    const {
-      fetchManifest
-    } = this.props;
-    fetchManifest(annotation.manifests[0]); */
-
+    e.stopPropagation();
   }
 
   /** */
   render() {
     const {
-      classes, t, i18n, manifests
+      classes, t, i18n,
     } = this.props;
 
     const language = i18n.language;
 
+    const { annotation } = this.state;
 
-    if (manifests === null || manifests.length === 0) {
+    if (annotation.manifests === null || annotation.manifests.length === 0) {
       return null;
     }
 
@@ -89,8 +102,8 @@ export class AnnotationManifestsAccordion extends Component {
             <Typography className={classes.heading}>{t('manifestFound')}</Typography>
           </AccordionSummary>
           <AccordionDetails className={classes.manifestContainer}>
-            {manifests.map(manifest => (
-              <Typography>
+            {annotation.manifests.map(manifest => (
+              <Typography >
                 <Card className={classes.root}>
                   <CardActionArea>
                     <CardContent>
@@ -129,20 +142,15 @@ AnnotationManifestsAccordion.propsTypes = {
     {
       content: PropTypes.string,
       id: PropTypes.string,
-
+      manifests: PropTypes.arrayOf(PropTypes.string),
     },
   ),
   classes: PropTypes.objectOf(PropTypes.string),
-  fetchManifest: PropTypes.func.isRequired,
-  manifests: PropTypes.arrayOf(PropTypes.string),
   t: PropTypes.func.isRequired,
-  thumbnail: PropTypes.string,
-  title: PropTypes.string,
 };
 
 AnnotationManifestsAccordion.defaultProps = {
   classes: {},
   htmlSanitizationRuleSet: 'iiif',
   listContainerComponent: 'li',
-  manifests: [],
 };
diff --git a/src/containers/AnnotationManifestsAccordion.js b/src/containers/AnnotationManifestsAccordion.js
index fa5da4364c1dbe375118abbf4bddacaf9ab980f0..257810aa2f135d70a8d90550bc757d21e095d57e 100644
--- a/src/containers/AnnotationManifestsAccordion.js
+++ b/src/containers/AnnotationManifestsAccordion.js
@@ -5,33 +5,12 @@ import { withStyles } from '@material-ui/core/styles';
 import { withPlugins } from '../extend/withPlugins';
 import { AnnotationManifestsAccordion } from '../components/AnnotationManifestsAccordion';
 import * as actions from '../state/actions';
-import {
-  getConfig, getManifest,
-  getManifestTitle, getManifestThumbnail, getCanvases,
-  getManifestLogo, getManifestProvider, getWindowManifests,
-  getManifestoInstance, getSequenceBehaviors, getManifestDescription,
-} from '../state/selectors';
-
-/** Search if the annotation is a manifest. URL must be resolvable for the annotation. So the manifest url is added at the end of the id */
-function searchManifestInID(id) {
-  const match = id.match(
-    /((http|https)\:\/\/[a-z0-9\/:%_+.,#?!@&=-]+)#((http|https)\:\/\/[a-z0-9\/:%_+.,#?!@&=-]+)/gi,
-  );
-
-  return match ? match[0].split('#').slice(-1) : null;
-}
+import { getConfig } from '../state/selectors';
 
 /** For connect */
-const mapStateToProps = (state, { annotation }) => {
-  const manifestId = searchManifestInID(annotation.id);
-
-  return {
-    htmlSanitizationRuleSet: getConfig(state).annotations.htmlSanitizationRuleSet,
-    manifests: new Array(manifestId),
-    thumbnail: getManifestThumbnail(state, { manifestId }),
-    title: getManifestTitle(state, { manifestId }),
-  };
-};
+const mapStateToProps = (state, { canvasId, windowId }) => ({
+  htmlSanitizationRuleSet: getConfig(state).annotations.htmlSanitizationRuleSet,
+});
 
 /**
  * mapDispatchToProps - to hook up connect
@@ -41,7 +20,6 @@ const mapStateToProps = (state, { annotation }) => {
 const mapDispatchToProps = {
   addResource: actions.addResource,
   addWindow: actions.addWindow,
-
 };
 
 /** For withStyles */