{"id":44145,"date":"2026-06-03T09:58:04","date_gmt":"2026-06-03T09:58:04","guid":{"rendered":"https:\/\/carmelcosmeticslabs.com\/?p=44145"},"modified":"2026-10-03T00:33:49","modified_gmt":"2026-10-03T00:33:49","slug":"export-cosmetics-morocco-europe-regulations","status":"publish","type":"post","link":"https:\/\/carmelcosmeticslabs.com\/en\/export-cosmetics-morocco-europe-regulations\/","title":{"rendered":"Exporting Cosmetics from Morocco to Europe: Which Regulatory Standards Apply? (2026 Guide)"},"content":{"rendered":"\n<style id=\"carmel-post-css\">body .carmel-post{--cp-teal:#378377;--cp-teal-d:#24615a;--cp-ink:#1c2826;--cp-mute:#51615e;--cp-sage:#eef5f3;--cp-line:#d9e6e2;  font-family:Lato,system-ui,sans-serif;font-size:17px;line-height:1.75;color:var(--cp-ink);max-width:760px}body .carmel-post p{font-size:17px;line-height:1.75;color:var(--cp-ink);margin:0 0 1.15em}body .carmel-post a{color:var(--cp-teal-d);text-decoration:underline;text-decoration-color:rgba(55,131,119,.35);text-underline-offset:3px;text-decoration-thickness:1.5px;transition:text-decoration-color .15s}body .carmel-post a:hover{text-decoration-color:var(--cp-teal)}body .carmel-post strong{color:#0f1a18;font-weight:700}body .carmel-post h2{font-family:Inter,system-ui,sans-serif;font-size:28px;line-height:1.25;font-weight:700;letter-spacing:-.015em;color:#0f1a18;margin:2.4em 0 .7em;padding-top:.9em;border-top:1px solid var(--cp-line);position:relative}body .carmel-post h2::before{content:\"\";position:absolute;top:-1px;left:0;width:56px;height:3px;background:var(--cp-teal);border-radius:2px}body .carmel-post h3{font-family:Inter,system-ui,sans-serif;font-size:20px;line-height:1.35;font-weight:650;color:#0f1a18;margin:1.8em 0 .5em}body .carmel-post ul,body .carmel-post ol{margin:0 0 1.3em;padding-left:1.4em}body .carmel-post li{margin:.45em 0;line-height:1.7;font-size:17px}body .carmel-post li::marker{color:var(--cp-teal)}body .carmel-post .cp-lead{font-size:19px;line-height:1.7;color:var(--cp-ink);padding:0 0 0 18px;border-left:3px solid var(--cp-teal);margin:0 0 1.6em}body .carmel-post .cp-keypoints{background:var(--cp-sage);border:1px solid var(--cp-line);border-radius:14px;padding:26px 28px 14px;margin:1.6em 0 2em}body .carmel-post .cp-keypoints h2{border:0;padding:0;margin:0 0 .6em;font-size:14px;letter-spacing:.09em;text-transform:uppercase;color:var(--cp-teal-d)}body .carmel-post .cp-keypoints h2::before{display:none}body .carmel-post .cp-keypoints ul{list-style:none;padding:0;margin:0}body .carmel-post .cp-keypoints li{position:relative;padding-left:32px;margin:0 0 .8em;font-size:16.5px}body .carmel-post .cp-keypoints li::before{content:\"\";position:absolute;left:0;top:.3em;width:20px;height:20px;border-radius:50%;background:var(--cp-teal) url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 10.5l3 3 6-7' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'\/%3E%3C\/svg%3E\") center\/20px no-repeat}body .carmel-post .wp-block-table{margin:1.6em 0 1.8em;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--cp-line);border-radius:12px}body .carmel-post .wp-block-table table{width:100%;min-width:0;border-collapse:collapse;font-size:15px;line-height:1.5;margin:0}body .carmel-post .wp-block-table th{background:var(--cp-teal);color:#fff;font-family:Inter,system-ui,sans-serif;font-weight:600;font-size:14px;text-align:left;padding:12px 14px;border:0}body .carmel-post .wp-block-table td{padding:12px 14px;border:0;border-top:1px solid var(--cp-line);vertical-align:top;color:var(--cp-ink)}body .carmel-post .wp-block-table tbody tr:nth-child(even) td{background:#f7faf9}body .carmel-post .wp-block-table td:first-child{font-weight:700;color:#0f1a18;background:#f2f7f5}body .carmel-post ol.cp-steps{list-style:none;padding:0;counter-reset:cp;margin:1.4em 0 2em}body .carmel-post ol.cp-steps>li{counter-increment:cp;position:relative;padding:0 0 1.1em 58px;margin:0}body .carmel-post ol.cp-steps>li::before{content:counter(cp);position:absolute;left:0;top:0;width:36px;height:36px;border-radius:50%;background:#fff;border:2px solid var(--cp-teal);color:var(--cp-teal-d);font:700 15px\/32px Inter,system-ui,sans-serif;text-align:center}body .carmel-post ol.cp-steps>li::after{content:\"\";position:absolute;left:17px;top:40px;bottom:4px;width:2px;background:var(--cp-line)}body .carmel-post ol.cp-steps>li:last-child::after{display:none}body .carmel-post .cp-faq{border:1px solid var(--cp-line);border-radius:12px;padding:18px 22px 4px;margin:0 0 12px;background:#fff}body .carmel-post .cp-faq h3{margin:0 0 .45em;font-size:18px;padding-left:30px;position:relative}body .carmel-post .cp-faq h3::before{content:\"Q\";position:absolute;left:0;top:1px;width:22px;height:22px;border-radius:6px;background:var(--cp-sage);color:var(--cp-teal-d);font:700 13px\/22px Inter,system-ui,sans-serif;text-align:center}body .carmel-post .cp-faq p{font-size:16px;color:#2a3634}body .carmel-post .cp-cta{background:linear-gradient(135deg,#24615a 0%,#378377 100%);border-radius:16px;padding:30px 32px;margin:2em 0 1em;color:#fff}body .carmel-post .cp-cta p{color:#eaf4f1;font-size:17px;margin:0 0 1em}body .carmel-post .cp-cta a{color:#fff;text-decoration-color:rgba(255,255,255,.5)}body .carmel-post .cp-cta .cp-btn{display:inline-block;background:#fff;color:var(--cp-teal-d);text-decoration:none;font:700 15px\/1 Inter,system-ui,sans-serif;padding:16px 24px;min-height:48px;box-sizing:border-box;border-radius:999px;margin-top:4px}body .carmel-post .cp-cta .cp-btn:hover{background:#f0f7f5}@media (max-width:1024px){ body .carmel-post .wp-block-table th,body .carmel-post .wp-block-table td{padding:10px 11px} body .carmel-post .wp-block-table table{font-size:14.5px}}@media (max-width:600px){ body .carmel-post .wp-block-table table{min-width:540px} body .carmel-post .wp-block-table{box-shadow:inset -14px 0 12px -12px rgba(0,0,0,.12)}}@media (max-width:767px){ body .carmel-post,body .carmel-post p,body .carmel-post li{font-size:16.5px} body .carmel-post h2{font-size:23px} body .carmel-post h3{font-size:18.5px} body .carmel-post .cp-lead{font-size:17.5px;padding-left:14px} body .carmel-post .cp-keypoints{padding:20px 18px 8px;border-radius:12px} body .carmel-post .cp-cta{padding:24px 20px} body .carmel-post ol.cp-steps>li{padding-left:50px}}body .carmel-post{scroll-behavior:smooth}body .carmel-post h2,body .carmel-post h3{scroll-margin-top:110px}body .carmel-post hr.wp-block-separator{display:none}body .carmel-post img{border-radius:12px;height:auto;max-width:100%}body .carmel-post figure{margin:1.6em 0}body .carmel-post figcaption{font-size:14px;color:var(--cp-mute);text-align:center;margin-top:.6em}body .carmel-post .cp-toc{border:1px solid var(--cp-line);border-radius:14px;background:#fff;margin:1.6em 0 2.2em;padding:0;box-shadow:0 1px 2px rgba(16,40,36,.04)}body .carmel-post .cp-toc summary{cursor:pointer;list-style:none;padding:16px 22px;font:700 13px\/1.2 Inter,system-ui,sans-serif;letter-spacing:.09em;text-transform:uppercase;color:var(--cp-teal-d);display:flex;justify-content:space-between;align-items:center}body .carmel-post .cp-toc summary::-webkit-details-marker{display:none}body .carmel-post .cp-toc summary::after{content:\"\";width:9px;height:9px;border-right:2px solid var(--cp-teal);border-bottom:2px solid var(--cp-teal);transform:rotate(45deg);transition:transform .2s;margin-right:4px}body .carmel-post .cp-toc[open] summary::after{transform:rotate(-135deg)}body .carmel-post .cp-toc ol{list-style:none;counter-reset:toc;margin:0;padding:4px 22px 18px;border-top:1px solid var(--cp-line)}body .carmel-post .cp-toc li{counter-increment:toc;margin:0;padding:9px 0 9px 38px;position:relative;font-size:15.5px;line-height:1.45;border-bottom:1px dashed var(--cp-line)}body .carmel-post .cp-toc li:last-child{border-bottom:0}body .carmel-post .cp-toc li::before{content:counter(toc,decimal-leading-zero);position:absolute;left:0;top:9px;font:700 12px\/22px Inter,system-ui,sans-serif;color:var(--cp-teal-d);background:var(--cp-sage);border-radius:6px;width:28px;text-align:center}body .carmel-post .cp-toc a{text-decoration:none;color:var(--cp-ink)}body .carmel-post .cp-toc a:hover{color:var(--cp-teal-d)}body .carmel-post .cp-callout{position:relative;border-radius:12px;padding:18px 20px 18px 58px;margin:1.6em 0;background:var(--cp-sage);border:1px solid var(--cp-line)}body .carmel-post .cp-callout>*:last-child{margin-bottom:0}body .carmel-post .cp-callout::before{content:\"\";position:absolute;left:18px;top:19px;width:26px;height:26px;border-radius:50%;background:var(--cp-teal) url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 8v.01M11 12h1v5h1' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'\/%3E%3C\/svg%3E\") center\/22px no-repeat}body .carmel-post .cp-callout.cp-tip{background:#f3f8ee;border-color:#dce9cf}body .carmel-post .cp-callout.cp-tip::before{background-color:#5b8a3a;background-image:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 18h6M10 21h4M12 3a6 6 0 0 0-3.5 10.9V16h7v-2.1A6 6 0 0 0 12 3z' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'\/%3E%3C\/svg%3E\")}body .carmel-post .cp-callout.cp-warn{background:#fdf6ec;border-color:#f1e0c2}body .carmel-post .cp-callout.cp-warn::before{background-color:#c7862b;background-image:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 8v5M12 16.5v.01' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round'\/%3E%3C\/svg%3E\")}body .carmel-post blockquote,body .carmel-post .wp-block-quote{border:0;margin:2em 0;padding:24px 28px 24px 64px;background:#fff;border-radius:14px;box-shadow:0 1px 3px rgba(16,40,36,.06),0 8px 24px -12px rgba(16,40,36,.12);position:relative;font-size:18px;line-height:1.65}body .carmel-post blockquote::before,body .carmel-post .wp-block-quote::before{content:\"\\201C\";position:absolute;left:20px;top:6px;font:700 64px\/1 Georgia,serif;color:var(--cp-teal);opacity:.55}body .carmel-post blockquote p{font-size:18px;margin-bottom:.4em}body .carmel-post blockquote cite{font-size:14px;color:var(--cp-mute);font-style:normal}body .carmel-post .cp-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;list-style:none;padding:0;margin:1.6em 0 2em}body .carmel-post .cp-stats>li{background:#fff;border:1px solid var(--cp-line);border-radius:14px;padding:18px 18px 16px;margin:0;font-size:15px;line-height:1.55;box-shadow:0 1px 2px rgba(16,40,36,.04)}body .carmel-post .cp-stats>li::marker{content:none}body .carmel-post .cp-stats>li strong:first-child{display:block;font:800 26px\/1.15 Inter,system-ui,sans-serif;color:var(--cp-teal-d);letter-spacing:-.02em;margin-bottom:6px}body .carmel-post .cp-card{background:#fff;border:1px solid var(--cp-line);border-radius:16px;padding:6px 26px 10px;margin:1.8em 0;box-shadow:0 1px 2px rgba(16,40,36,.04),0 12px 32px -20px rgba(16,40,36,.18)}body .carmel-post .cp-card>h2:first-child,body .carmel-post .cp-card>h3:first-child{border-top:0;padding-top:0;margin-top:22px}body .carmel-post .cp-card>h2:first-child::before{display:none}body .carmel-post .cp-card.cp-featured{border:2px solid var(--cp-teal);background:linear-gradient(180deg,#f4faf8 0,#fff 140px)}body .carmel-post .cp-badge{display:inline-block;font:700 11.5px\/1 Inter,system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--cp-teal);padding:7px 10px;border-radius:999px;margin:20px 0 0}body .carmel-post ul:not(.cp-stats):not([class*=\"cp-\"]) li::marker{content:\"\u25c6  \";font-size:.7em;color:var(--cp-teal)}body .carmel-post .cp-keypoints ul li::marker{content:none}@media (max-width:767px){ body .carmel-post .cp-card{padding:4px 18px 8px;border-radius:14px} body .carmel-post blockquote,body .carmel-post .wp-block-quote{padding:20px 18px 18px 50px;font-size:17px} body .carmel-post blockquote::before{left:12px;font-size:52px} body .carmel-post .cp-stats{grid-template-columns:1fr 1fr;gap:10px} body .carmel-post .cp-stats>li{padding:14px} body .carmel-post .cp-stats>li strong:first-child{font-size:21px} body .carmel-post .cp-toc summary{padding:14px 16px} body .carmel-post .cp-toc ol{padding:4px 16px 14px}}body .carmel-post .cp-stats>li strong:first-child{font-size:clamp(19px,2.2vw,26px);overflow-wrap:anywhere}@media (max-width:767px){ body .carmel-post .wp-block-quote::before{left:12px;font-size:52px} body .carmel-post .cp-stats>li:last-child:nth-child(odd){grid-column:1\/-1}}body .carmel-post figure.cp-illu{margin:2.4em 0 2.2em}body .carmel-post figure.cp-illu img{display:block;width:100%;aspect-ratio:16\/9;object-fit:cover;border-radius:16px;box-shadow:0 18px 40px -24px rgba(16,40,36,.35)}body .carmel-post figure.cp-illu figcaption{font:italic 14.5px\/1.55 Lato,system-ui,sans-serif;color:var(--cp-mute);text-align:left;margin:.85em 2px 0;padding-left:14px;border-left:2px solid var(--cp-teal)}@media (max-width:767px){body .carmel-post figure.cp-illu{margin:1.8em 0}body .carmel-post figure.cp-illu img{border-radius:12px}}body .carmel-post .cp-cta strong{color:#fff}body .carmel-post .cp-cta .cp-btn,body .carmel-post .cp-cta .cp-btn strong{color:var(--cp-teal-d)}<\/style>\n\n\n\n<div class=\"wp-block-group carmel-post is-layout-flow wp-block-group-is-layout-flow\">\n\n<p class=\"cp-lead wp-block-paragraph\"><strong>The essentials.<\/strong> To export cosmetics from Morocco to the European Union, the product must comply with <strong>Regulation (EC) No 1223\/2009<\/strong>, wherever it is made. In practice, eight European checkpoints govern market access: appoint a <strong>Responsible Person established in the EU<\/strong>, notify the product on the <strong>CPNP<\/strong> portal, build a <strong>Product Information File (PIF)<\/strong> with a safety report, manufacture under <strong>Good Manufacturing Practices (ISO 22716)<\/strong>, use only <strong>ingredients that comply with the annexes<\/strong>, follow the <strong>labeling<\/strong> rules (including the new allergens), respect the <strong>ban on animal testing<\/strong>, and make only <strong>substantiated claims<\/strong>. On the Moroccan side, you must comply with local regulations and gather the <strong>export documents<\/strong> (certificate of free sale, certificate of origin, customs codes).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Here is the complete roadmap, step by step.<\/p>\n\n\n\n<details class=\"cp-toc\" data-cp=\"ui\" open><summary>Contents<\/summary><ol><li><a href=\"#principe-export-europe\">Exporting to Europe: the principle to understand first<\/a><\/li><li><a href=\"#normes-reglementaires-europeennes\">The 8 European regulatory requirements to meet<\/a><\/li><li><a href=\"#formalites-export-maroc\">On the Moroccan side: export formalities not to overlook<\/a><\/li><li><a href=\"#feuille-de-route-etapes\">The roadmap in practice, step by step<\/a><\/li><li><a href=\"#tableau-recapitulatif\">Summary table: who does what?<\/a><\/li><li><a href=\"#laboratoire-marocain-export\">How a Moroccan laboratory secures your export<\/a><\/li><li><a href=\"#faq\">FAQ \u2014 Exporting cosmetics from Morocco to Europe<\/a><\/li><\/ol><\/details>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"principe-export-europe\">Exporting to Europe: the principle to understand first<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">First misconception to correct: you do not need to manufacture in Europe to sell in Europe. Regulation (EC) No 1223\/2009 does not regulate a place of production, but the act of <strong>placing a product on the market<\/strong>. As soon as a product is sold in the EU, it must meet the regulation in full \u2014 whether it is made in Lyon, Milan or Agadir. Brands in northern Morocco already make this choice: see our <a href=\"https:\/\/carmelcosmeticslabs.com\/en\/cosmetics-lab-tangier\/\">cosmetics laboratory for brands in Tangier and Tetouan<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">So a Moroccan laboratory can perfectly well produce for the European market; we covered this in detail in our article <a href=\"https:\/\/carmelcosmeticslabs.com\/en\/morocco-cosmetics-lab-eu-compliance\/\">Can a cosmetics laboratory in Morocco make products that meet EU standards?<\/a>. This roadmap starts from there and describes how exporting works in practice.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large cp-illu\"><img loading=\"lazy\" src=\"https:\/\/carmelcosmeticslabs.com\/wp-content\/uploads\/2026\/09\/exporter-cosmetiques-maroc-europe-illu-1-dossier-reglementaire.webp\" alt=\"Regulatory officer reviewing the product file in the laboratory, a key step in exporting cosmetics from Morocco to Europe\" class=\"wp-image-35576\" width=\"1200\" height=\"675\" loading=\"lazy\" decoding=\"async\" title=\"| Carmel Cosmetics Labs\"><figcaption class=\"wp-element-caption\">Reviewing the product file steps from the lab: EU compliance is prepared where the formula was born.<\/figcaption><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"normes-reglementaires-europeennes\">The 8 European regulatory requirements to meet<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">1. Regulation (EC) No 1223\/2009, the reference text<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">This is the foundation. It governs the safety, composition, labeling and monitoring of every cosmetic product sold in the EU. The full text is available on <a href=\"https:\/\/eur-lex.europa.eu\/legal-content\/FR\/TXT\/?uri=CELEX:32009R1223\" target=\"_blank\" rel=\"noopener\">EUR-Lex<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2. A Responsible Person established in the EU<\/h3>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/carmelcosmeticslabs.com\/wp-content\/uploads\/2026\/06\/image.png\" alt=\"Infographic on the EU-established Responsible Person, who guarantees the compliance of a cosmetic made in Morocco\" class=\"wp-image-34598\" title=\"| Carmel Cosmetics Labs\"><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">This is the most far-reaching obligation for a non-EU exporter. The product must have a <strong>Responsible Person (RP) established in the Union<\/strong>: the RP takes on legal responsibility for compliance, notifies the product and keeps the file. The RP cannot be in Morocco \u2014 it is the importer or an agent appointed by written contract.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3. CPNP notification before placing on the market<\/h3>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/carmelcosmeticslabs.com\/wp-content\/uploads\/2026\/06\/image-1.png\" alt=\"Infographic on CPNP notification, a mandatory step before placing an imported cosmetic on the EU market\" class=\"wp-image-34606\" title=\"| Carmel Cosmetics Labs\"><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Every product must be notified on the <strong>Cosmetic Products Notification Portal (CPNP)<\/strong> before it is first sold. The notification includes the category, the frame formulation, the RP and the <strong>country of origin<\/strong> (\u201cMorocco\u201d for an imported product). Only the RP can do this. Details on the <a href=\"https:\/\/single-market-economy.ec.europa.eu\/sectors\/cosmetics\/cosmetic-product-notification-portal_en\" target=\"_blank\" rel=\"noopener\">official CPNP page<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">4. The Product Information File (PIF) and the safety report<\/h3>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/carmelcosmeticslabs.com\/wp-content\/uploads\/2026\/06\/image-2.png\" alt=\"Infographic on the Product Information File (PIF) and the CPSR safety report for a cosmetic product\" class=\"wp-image-34614\" title=\"| Carmel Cosmetics Labs\"><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">The RP keeps a <strong>PIF<\/strong> available to the authorities for ten years after the last batch. At its heart is the <strong>safety report (CPSR)<\/strong>, assessed by a qualified expert. Building a solid PIF is a profession in its own right \u2014 it is the focus of our <a href=\"https:\/\/carmelcosmeticslabs.com\/en\/cosmetic-product-information-file-pif\/\">regulatory and PIF support<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">5. Good Manufacturing Practices (ISO 22716)<\/h3>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/carmelcosmeticslabs.com\/wp-content\/uploads\/2026\/06\/image-3.png\" alt=\"Infographic on cosmetic Good Manufacturing Practices under the ISO 22716 standard\" class=\"wp-image-34622\" title=\"| Carmel Cosmetics Labs\"><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Article 8 of the regulation requires manufacturing in line with <strong>GMP<\/strong>. The <strong>EN ISO 22716<\/strong> standard gives a presumption of conformity with this requirement: an ISO 22716-certified Moroccan laboratory therefore meets the manufacturing pillar just like a European manufacturer. To understand this standard, see our <a href=\"https:\/\/carmelcosmeticslabs.com\/en\/iso-22716-cosmetics-certification-in-morocco-a-complete-guide\/\">complete guide to ISO 22716 certification in Morocco<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">6. Ingredients that comply with the annexes<\/h3>\n\n\n\n<figure class=\"wp-block-image size-full\"><img fetchpriority=\"high\" decoding=\"async\" width=\"1200\" height=\"670\" src=\"https:\/\/carmelcosmeticslabs.com\/wp-content\/uploads\/2026\/09\/exporter-cosmetiques-annexes-reglement-1223-2009-v2.webp\" alt=\"Infographic on checking cosmetic ingredient compliance with Annexes II to VI of the EU regulation\" class=\"wp-image-35674\" title=\"| Carmel Cosmetics Labs\" srcset=\"https:\/\/carmelcosmeticslabs.com\/wp-content\/uploads\/2026\/09\/exporter-cosmetiques-annexes-reglement-1223-2009-v2.webp 1200w, https:\/\/carmelcosmeticslabs.com\/wp-content\/uploads\/2026\/09\/exporter-cosmetiques-annexes-reglement-1223-2009-v2-300x168.webp 300w, https:\/\/carmelcosmeticslabs.com\/wp-content\/uploads\/2026\/09\/exporter-cosmetiques-annexes-reglement-1223-2009-v2-1024x572.webp 1024w, https:\/\/carmelcosmeticslabs.com\/wp-content\/uploads\/2026\/09\/exporter-cosmetiques-annexes-reglement-1223-2009-v2-768x429.webp 768w, https:\/\/carmelcosmeticslabs.com\/wp-content\/uploads\/2026\/09\/exporter-cosmetiques-annexes-reglement-1223-2009-v2-990x553.webp 990w, https:\/\/carmelcosmeticslabs.com\/wp-content\/uploads\/2026\/09\/exporter-cosmetiques-annexes-reglement-1223-2009-v2-441x246.webp 441w\" sizes=\"(max-width: 1200px) 100vw, 1200px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">No banned substances (Annex II), compliance with restrictions and concentrations (Annex III), and use of authorized preservatives, colorants and UV filters only (Annexes V, IV and VI). These annexes change several times a year as CMR substances are reclassified and new restrictions are added (for example Omnibus VII, Regulation (EU) 2025\/877, which has banned 22 CMR substances, including TPO, since September 1, 2025) \u2014 as the case of <a href=\"https:\/\/carmelcosmeticslabs.com\/en\/pfas-cosmetics-ban-2026-guide\/\">PFAS and their 2026 ban<\/a> shows.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">7. Labeling that complies with Article 19<\/h3>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/carmelcosmeticslabs.com\/wp-content\/uploads\/2026\/06\/image-5.png\" alt=\"Infographic on cosmetic labeling under Article 19 of Regulation (EC) No 1223\/2009\" class=\"wp-image-34638\" title=\"| Carmel Cosmetics Labs\"><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">INCI list, nominal content, date of minimum durability or PAO, function, precautions, batch number, <strong>the RP\u2019s name and EU address<\/strong>, and <strong>the country of origin<\/strong>. On top of this comes the new obligation to declare fragrance allergens: <a href=\"https:\/\/eur-lex.europa.eu\/legal-content\/FR\/TXT\/?uri=CELEX:32023R1545\" target=\"_blank\" rel=\"noopener\">Regulation (EU) 2023\/1545<\/a> expands the list from 26 to more than 80 substances, mandatory since <strong>July 31, 2026<\/strong> for products placed on the market, and from July 31, 2028 for those already on sale.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">8. The animal testing ban and substantiated claims<\/h3>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/carmelcosmeticslabs.com\/wp-content\/uploads\/2026\/06\/image-6.png\" alt=\"Infographic on the animal testing ban and the substantiation of cosmetic claims in the EU\" class=\"wp-image-34646\" title=\"| Carmel Cosmetics Labs\"><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">The EU bans the sale of products and ingredients tested on animals (Article 18): alternative methods are mandatory. Finally, every claim must be substantiated according to the common criteria of Regulation No 655\/2013 \u2014 a topic we cover in detail in <a href=\"https:\/\/carmelcosmeticslabs.com\/en\/how-are-cosmetic-claims-regulated-in-the-eu\/\">How are cosmetic claims regulated in the EU?<\/a>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"formalites-export-maroc\">On the Moroccan side: export formalities not to overlook<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">European standards are only one side of the operation. On the Moroccan side, the exporter must also:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Comply with Moroccan cosmetics regulations<\/strong>, supervised by the AMMPS (Moroccan Agency for Medicines and Health Products), which oversees manufacturing and placing on the local market, including the prior declaration of the facility to the AMMPS.<\/li>\n\n\n\n<li><strong>Plan ahead for the certificate of free sale<\/strong>, often requested by importers.<\/li>\n\n\n\n<li><strong>Prepare a certificate of origin<\/strong> (EUR.1 movement certificate issued by Moroccan customs \u2013 ADII \u2013 to benefit from the EU-Morocco preferential regime) for customs clearance.<\/li>\n\n\n\n<li><strong>Identify the right customs codes (HS)<\/strong> for cosmetic products (Chapter 33, and heading 3401 for soaps) and plan export formalities and logistics (transport, storage conditions, durability dates).<\/li>\n<\/ul>\n\n\n\n<div class=\"wp-block-group cp-callout cp-warn is-layout-flow wp-block-group-is-layout-flow\">\n<p class=\"wp-block-paragraph\">These steps work hand in hand with EU obligations: a product can be fully compliant with Regulation 1223\/2009 and still be blocked at export for lack of proper Moroccan documentation.<\/p>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"feuille-de-route-etapes\">The roadmap in practice, step by step<\/h2>\n\n\n\n<ol class=\"wp-block-list cp-steps\">\n<li><strong>Validate the formula\u2019s compliance<\/strong> with the regulation\u2019s annexes (substances, concentrations, filters, preservatives).<\/li>\n\n\n\n<li><strong>Appoint a Responsible Person<\/strong> established in the EU (importer or agent).<\/li>\n\n\n\n<li><strong>Build the PIF<\/strong> and have the safety report produced by a qualified assessor.<\/li>\n\n\n\n<li><strong>Manufacture under GMP (ISO 22716)<\/strong>, with the matching document traceability.<\/li>\n\n\n\n<li><strong>Bring labeling into compliance<\/strong>: language of the destination country, mandatory information, new allergens, country of origin.<\/li>\n\n\n\n<li><strong>Notify the product on the CPNP<\/strong> \u2014 an essential prerequisite for the first sale.<\/li>\n\n\n\n<li><strong>Gather the Moroccan export documents<\/strong>: certificate of free sale, certificate of origin, customs codes.<\/li>\n\n\n\n<li><strong>Ship, then handle cosmetovigilance<\/strong> and update the file and notifications with every regulatory or formula change.<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-large cp-illu\"><img loading=\"lazy\" src=\"https:\/\/carmelcosmeticslabs.com\/wp-content\/uploads\/2026\/09\/exporter-cosmetiques-maroc-europe-illu-2-entrepot-palettes-export.webp\" alt=\"Shrink-wrapped pallets of cartons in a warehouse in Morocco, ready to ship cosmetics to the European Union\" class=\"wp-image-35584\" width=\"1200\" height=\"675\" loading=\"lazy\" decoding=\"async\" title=\"| Carmel Cosmetics Labs\"><figcaption class=\"wp-element-caption\">Final pallet check before departure: shipping closes a regulatory chain that is already complete.<\/figcaption><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"tableau-recapitulatif\">Summary table: who does what?<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Requirement<\/th><th>Who is responsible<\/th><th>Proof \/ deliverable<\/th><\/tr><\/thead><tbody><tr><td>Formula compliance (annexes)<\/td><td>Laboratory \/ formulator<\/td><td>Technical data sheets, SDS<\/td><\/tr><tr><td>Responsible Person<\/td><td>EU importer or agent<\/td><td>Written mandate, EU contact details<\/td><\/tr><tr><td>CPNP notification<\/td><td>Responsible Person<\/td><td>Notification number<\/td><\/tr><tr><td>PIF + safety report<\/td><td>RP (file built with the lab\u2019s help)<\/td><td>PIF, CPSR<\/td><\/tr><tr><td>GMP manufacturing<\/td><td>Laboratory<\/td><td>ISO 22716 certificate<\/td><\/tr><tr><td>Compliant labeling<\/td><td>Responsible Person + lab<\/td><td>Approved label artwork<\/td><\/tr><tr><td>Export documents<\/td><td>Exporter (Morocco)<\/td><td>Certificate of free sale, certificate of origin, HS codes<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"laboratoire-marocain-export\">How a Moroccan laboratory secures your export<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The complexity of this chain is why choosing the right laboratory is decisive. A partner that masters <a href=\"https:\/\/carmelcosmeticslabs.com\/en\/white-label-cosmetics-service\/\"><strong>formulation that complies with the annexes<\/strong><\/a>, <strong>PIF preparation<\/strong>, the <strong>clinical efficacy studies<\/strong> that substantiate claims and <strong>GMP manufacturing (ISO 22716)<\/strong> all at once drastically reduces regulatory risk.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">That is the approach of <a href=\"https:\/\/carmelcosmeticslabs.com\/en\/why-carmel-cosmetics-labs\/\"><strong>Carmel Cosmetics Labs<\/strong><\/a>, which has supported more than 500 brands \u2014 including many based in Europe (France, Belgium, Luxembourg, Switzerland, Italy, Spain, the Netherlands, Germany) \u2014 with their PIF preparation, clinical studies and product notification. The laboratory does not replace the Responsible Person, but provides all the technical material that makes notification and market launch possible. To discuss your export project, <a href=\"https:\/\/carmelcosmeticslabs.com\/en\/contact\/\">contact the laboratory<\/a>. See our pages for brands from <a href=\"https:\/\/carmelcosmeticslabs.com\/en\/cosmetics-manufacturer-for-french-brands\/\">France<\/a>, <a href=\"https:\/\/carmelcosmeticslabs.com\/en\/cosmetics-manufacturer-belgium\/\">Belgium and Luxembourg<\/a> and <a href=\"https:\/\/carmelcosmeticslabs.com\/en\/cosmetics-manufacturer-switzerland\/\">Switzerland<\/a>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"faq\">FAQ \u2014 Exporting cosmetics from Morocco to Europe<\/h2>\n\n\n\n<div class=\"wp-block-group cp-faq is-layout-flow wp-block-group-is-layout-flow\">\n<h3 class=\"wp-block-heading\">Do you need a factory in Europe to export cosmetics to the EU?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">No. Regulation (EC) No 1223\/2009 applies to the product placed on the EU market, not to where it is made. A product made in Morocco can be exported to the EU as long as it meets all the regulation\u2019s obligations and a Responsible Person established in the EU has been appointed.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-group cp-faq is-layout-flow wp-block-group-is-layout-flow\">\n<h3 class=\"wp-block-heading\">Who can be the Responsible Person for a product made in Morocco?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The Responsible Person must be established in the European Union: usually the importer or an agent appointed by written contract. The RP cannot be based in Morocco, and only the RP can notify the product on the CPNP.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-group cp-faq is-layout-flow wp-block-group-is-layout-flow\">\n<h3 class=\"wp-block-heading\">What is a certificate of free sale, and is it mandatory?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">A certificate of free sale confirms that a product is legally sold in its country of origin. Regulation 1223\/2009 itself does not require it, but importers or customs authorities frequently ask for it, so it is wise to plan ahead.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-group cp-faq is-layout-flow wp-block-group-is-layout-flow\">\n<h3 class=\"wp-block-heading\">How long does it take to make a product ready for export to the EU?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">It all depends on how mature the file is. Building the PIF and safety report, bringing labeling into compliance and CPNP notification come on top of formulation and stability testing; the schedule is defined with you in the quote.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-group cp-faq is-layout-flow wp-block-group-is-layout-flow\">\n<h3 class=\"wp-block-heading\">Do the new allergen rules apply to Moroccan exporters?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Yes, as soon as the products are sold in the EU. Regulation (EU) 2023\/1545 requires the individual declaration of more than 80 fragrance allergens, with compliance required since July 31, 2026 for new products and by July 31, 2028 for existing stock.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-group cp-faq is-layout-flow wp-block-group-is-layout-flow\">\n<h3 class=\"wp-block-heading\">Can a Moroccan laboratory notify products on the CPNP on my behalf?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">No: only the Responsible Person established in the EU can notify. However, a laboratory can prepare the entire file needed (formula, PIF, safety report, labeling) so the notification goes smoothly.<\/p>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<div class=\"wp-block-group cp-cta is-layout-flow wp-block-group-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><em>Preparing to export a cosmetics brand from Morocco to Europe? Carmel Cosmetics Labs manufactures under GMP (ISO 22716) and supports you across the entire regulatory chain. <a href=\"https:\/\/carmelcosmeticslabs.com\/en\/contact\/\">Request a call with the laboratory.<\/a> Also worth reading: <a href=\"https:\/\/carmelcosmeticslabs.com\/en\/cosmetics-manufacturer-morocco-export-usa\/\">Manufacturing in Morocco and exporting to the USA<\/a>.<\/em><\/p>\n\n\n\n<p data-cp=\"ui\"><a class=\"cp-btn\" data-cp=\"ui\" href=\"https:\/\/carmelcosmeticslabs.com\/en\/contact\/\">Contact the laboratory \u2192<\/a><\/p>\n<\/div>\n\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>The essentials. To export cosmetics from Morocco to the European Union, the product must comply with Regulation (EC) No 1223\/2009, wherever it is made. In practice, eight European checkpoints govern market access: appoint a Responsible Person established in the EU, notify the product on the CPNP portal, build a Product Information File (PIF) with a [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":34590,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[202],"tags":[766,762,767,763,765,764],"class_list":["post-44145","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cosmetics-regulations","tag-dip-cosmetique","tag-exporter-cosmetiques-maroc-europe","tag-iso-22716","tag-normes-reglementaires-cosmetiques-ue","tag-notification-cpnp","tag-reglement-1223-2009-personne-responsable"],"_links":{"self":[{"href":"https:\/\/carmelcosmeticslabs.com\/en\/wp-json\/wp\/v2\/posts\/44145","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/carmelcosmeticslabs.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/carmelcosmeticslabs.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/carmelcosmeticslabs.com\/en\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/carmelcosmeticslabs.com\/en\/wp-json\/wp\/v2\/comments?post=44145"}],"version-history":[{"count":2,"href":"https:\/\/carmelcosmeticslabs.com\/en\/wp-json\/wp\/v2\/posts\/44145\/revisions"}],"predecessor-version":[{"id":44147,"href":"https:\/\/carmelcosmeticslabs.com\/en\/wp-json\/wp\/v2\/posts\/44145\/revisions\/44147"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/carmelcosmeticslabs.com\/en\/wp-json\/wp\/v2\/media\/34590"}],"wp:attachment":[{"href":"https:\/\/carmelcosmeticslabs.com\/en\/wp-json\/wp\/v2\/media?parent=44145"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/carmelcosmeticslabs.com\/en\/wp-json\/wp\/v2\/categories?post=44145"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/carmelcosmeticslabs.com\/en\/wp-json\/wp\/v2\/tags?post=44145"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}