BTS MCO : définition, débouchés, salaires et guide complet 2026

BTS MCO : définition, débouchés, salaires et guide complet 2026


{
„@context“: „https://schema.org“,
„@graph“: [
{
„@type“: „Article“,
„@id“: „https://www.oeuvray.fr/bts-mco-guide-complet-definition-debouches#article“,
„headline“: „BTS MCO : définition, débouchés, salaires et guide complet 2026“,
„description“: „BTS MCO : formation, métiers, salaires, comment candidater. Guide complet pour choisir le management commercial opérationnel.“,
„datePublished“: „2026-05-16 19:55:22“,
„dateModified“: „2026-05-16 19:55:22“,
„wordCount“: 2131,
„inLanguage“: „fr-FR“,
„mainEntityOfPage“: {
„@type“: „WebPage“,
„@id“: „https://www.oeuvray.fr/bts-mco-guide-complet-definition-debouches“
},
„author“: {
„@type“: „Person“,
„@id“: „https://www.oeuvray.fr/bts-mco-guide-complet-definition-debouches#author“,
„name“: „Kevin Grillot“,
„jobTitle“: „Conseiller en Orientation et Spécialiste BTS Biotechnologies“,
„description“: „Avec 8 ans d’expérience en orientation scolaire et formation professionnelle, j’accompagne les lycéens dans leurs parcours BTS. Passionné par la biotechnologie et les opportunités internationales (Erasmus, stages), je crée des contenus pédagogiques accessibles pour démystifier cette filière d’excellence.“,
„image“: „https://ui-avatars.com/api/?name=Kevin+Grillot&size=256&background=1f6feb&color=fff&bold=true“,
„email“: „grillotkevin@gmail.com“,
„sameAs“: [
„https://www.linkedin.com/in/kevin-grillot/“,
„https://kevin-grillot.fr“
]
},
„publisher“: {
„@type“: „Organization“,
„@id“: „https://www.oeuvray.fr#org“,
„name“: „Oeuvray“,
„logo“: {
„@type“: „ImageObject“,
„url“: null
},
„address“: null,
„email“: „grillotkevin@gmail.com“,
„telephone“: null,
„sameAs“: []
}
},
{
„@type“: „FAQPage“,
„@id“: „https://www.oeuvray.fr/bts-mco-guide-complet-definition-debouches#faq“,
„mainEntity“: [
{
„@type“: „Question“,
„name“: „BTS MCO ça veut dire quoi exactement ?“,
„acceptedAnswer“: {
„@type“: „Answer“,
„text“: „BTS MCO = Brevet de Technicien Supérieur en Management Commercial Opérationnel. C’est un diplôme Bac+2 qui forme des responsables opérationnels d’une unité commerciale (magasin, équipe de vente, boutique en ligne). Il succède au BTS MUC depuis 2019. Vous serez manager d’équipe, pas vendeur.“
}
},
{
„@type“: „Question“,
„name“: „Quel métier après un BTS MCO ?“,
„acceptedAnswer“: {
„@type“: „Answer“,
„text“: „Les métiers concrets : manager de magasin, responsable logistique, coordinateur commercial (B2B), approvisionneur, assistant manager, commercial B2B, coordinateur qualité junior, responsable e-commerce. 87% des diplômés sont en emploi 6 mois après. Les secteurs : retail, logistique, pharma, e-commerce, distribution.“
}
},
{
„@type“: „Question“,
„name“: „Le BTS MCO est-il difficile ?“,
„acceptedAnswer“: {
„@type“: „Answer“,
„text“: „Modérément exigeant. Le taux d’échec est seulement 8-12%, ce qui veut dire 88-92% réussissent. Les points durs : droit commercial, anglais, gestion opérationnelle. Le secret : présence régulière + travail soutenu. Absent souvent = risque réel. C’est moins difficile qu’une Licence générale.“
}
},
{
„@type“: „Question“,
„name“: „Quel est le salaire moyen après un BTS MCO ?“,
„acceptedAnswer“: {
„@type“: „Answer“,
„text“: „Salaire moyen à l’embauche : 22-26k€ brut/an (1 833-2 167€ nets/mois) selon secteur. En pharma/logistique : 24-27k€. En retail : 21-23k€. Après 3 ans : 26-32k€. Après 5 ans : 28-38k€. Le secteur compte plus que la région.“
}
},
{
„@type“: „Question“,
„name“: „Comment candidater en BTS MCO ?“,
„acceptedAnswer“: {
„@type“: „Answer“,
„text“: „Via Parcoursup (janvier-mars 2026) pour le public et certains privés. Vous aurez besoin du bac. Sélection : dossier pour lycées publics, test écrit + entretien pour écoles privées. Pour l’alternance, commencez vos recherches d’entreprise en avril-mai. Contrat à signer 2 semaines avant la rentrée.“
}
},
{
„@type“: „Question“,
„name“: „BTS MCO ou Licence professionnelle, quoi choisir ?“,
„acceptedAnswer“: {
„@type“: „Answer“,
„text“: „BTS MCO : 2 ans, emploi rapide (87% en 6 mois), salaire 22-26k€. Licence Pro : 3 ans minimum, salaire 26-30k€ à l’embauche. Stratégie gagnante : BTS MCO + 3 ans expérience + Licence Pro pendant le travail = meilleur ROI.“
}
},
{
„@type“: „Question“,
„name“: „Alternance ou formation initiale en BTS MCO ?“,
„acceptedAnswer“: {
„@type“: „Answer“,
„text“: „Alternance : 2j/école + 3j/entreprise, vous êtes payé (63-78% Smic), plus employable à la sortie (80% restent dans l’entreprise). Formation initiale : stage 12-16 semaines, coût gratuit, plus flexible. Choisissez alternance si vous trouvez une entreprise avant mai.“
}
},
{
„@type“: „Question“,
„name“: „Quels établissements offrent le meilleur BTS MCO ?“,
„acceptedAnswer“: {
„@type“: „Answer“,
„text“: „Écoles publiques (lycées) : Buffon (Paris), Monnerville (Gennevilliers), Carcado-Saisseval (Paris). Privées reconnues : Pigier (15 campus), Cours Diderot, Sup’de Commerce. Critères clés : proximité géographique, taux de réussite 85%+, partenaires sectoriels (pharma/logistique si intéressé).“
}
}
]
},
{
„@type“: „BreadcrumbList“,
„@id“: „https://www.oeuvray.fr/bts-mco-guide-complet-definition-debouches#breadcrumb“,
„itemListElement“: [
{
„@type“: „ListItem“,
„position“: 1,
„name“: „Accueil“,
„item“: „https://www.oeuvray.fr“
},
{
„@type“: „ListItem“,
„position“: 2,
„name“: „BTS MCO : définition, débouchés, salaires et guide complet 2026“,
„item“: „https://www.oeuvray.fr/bts-mco-guide-complet-definition-debouches“
}
]
}
]
}

.otc-article * { box-sizing: border-box; }
.otc-article { font-family: -apple-system, BlinkMacSystemFont, system-ui, sans-serif; line-height: 1.7; color: #1f2937; max-width: 880px; margin: 0 auto; }
.otc-progress { position: fixed; top: 0; left: 0; height: 3px; background: linear-gradient(90deg,#3b82f6,#8b5cf6); width: 0%; z-index: 9999; transition: width 80ms linear; }
.otc-meta-bar { display: flex; gap: 14px; flex-wrap: wrap; color: #64748b; font-size: 14px; padding: 12px 0 18px; border-bottom: 1px solid #e5e7eb; margin-bottom: 22px; }
.otc-meta-bar span { display: inline-flex; align-items: center; gap: 5px; }
.otc-tldr-card { background: linear-gradient(135deg,#f0f9ff,#ecfdf5); border: 1px solid #bae6fd; border-radius: 12px; padding: 20px 24px; margin: 0 0 28px; box-shadow: 0 1px 3px rgba(0,0,0,0.04); }
.otc-tldr-title { font-size: 14px; font-weight: 700; color: #0369a1; text-transform: uppercase; letter-spacing: 0.05em; margin-bottom: 12px; display: flex; align-items: center; gap: 6px; }
.otc-tldr-bullets { list-style: none; padding: 0; margin: 0; display: grid; gap: 8px; }
.otc-tldr-bullets li { padding-left: 26px; position: relative; line-height: 1.5; color: #1e293b; }
.otc-tldr-bullets li::before { content: ‚✓‘; position: absolute; left: 0; top: 0; width: 18px; height: 18px; background: #10b981; color: white; border-radius: 50%; text-align: center; font-size: 11px; line-height: 18px; font-weight: 700; }
.otc-stats-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 12px; margin: 0 0 32px; }
.otc-stat-card { background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 8px; padding: 14px 16px; }
.otc-stat-figure { font-size: 28px; font-weight: 700; color: #0f172a; line-height: 1; margin-bottom: 4px; }
.otc-stat-context { font-size: 13px; color: #475569; line-height: 1.4; margin-bottom: 6px; }
.otc-stat-source { font-size: 11px; color: #3b82f6; text-decoration: none; }
.otc-author { display: flex; gap: 16px; padding: 16px; background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 8px; margin: 32px 0; align-items: center; }
.otc-author img { width: 64px; height: 64px; border-radius: 50%; object-fit: cover; flex-shrink: 0; }
.otc-author .info .name { font-weight: 600; font-size: 16px; }
.otc-author .info .job { color: #64748b; font-size: 13px; margin-top: 2px; }
.otc-author .info .bio { font-size: 13px; color: #475569; margin-top: 6px; line-height: 1.5; }
.otc-author .links { margin-top: 6px; display: flex; gap: 8px; flex-wrap: wrap; }
.otc-author .links a { color: #3b82f6; font-size: 12px; text-decoration: none; }
.otc-faq h2 { margin-top: 40px; }
.otc-faq details { background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 8px; padding: 12px 16px; margin-bottom: 8px; transition: background 0.15s; }
.otc-faq details:hover { background: #f1f5f9; }
.otc-faq details[open] { background: white; box-shadow: 0 1px 3px rgba(0,0,0,0.06); }
.otc-faq summary { cursor: pointer; font-weight: 600; color: #1e293b; padding-right: 24px; position: relative; }
.otc-faq summary::-webkit-details-marker { display: none; }
.otc-faq summary::after { content: ‚+‘; position: absolute; right: 0; top: 50%; transform: translateY(-50%); font-size: 22px; color: #3b82f6; transition: transform 0.2s; }
.otc-faq details[open] summary::after { content: ‚−‘; }
.otc-faq p { margin: 10px 0 0; color: #475569; line-height: 1.6; }
.otc-yt-embed { aspect-ratio: 16/9; margin: 20px 0; border-radius: 8px; overflow: hidden; background: #000; }
.otc-yt-embed iframe { width: 100%; height: 100%; border: 0; }
.otc-reddit { background: #fffbeb; border-left: 4px solid #f59e0b; padding: 14px 18px; margin: 20px 0; border-radius: 6px; font-size: 14px; }
.otc-reddit .src { color: #92400e; font-size: 12px; margin-top: 8px; }
.otc-reddit a { color: #b45309; }
.otc-sources { margin-top: 40px; padding-top: 22px; border-top: 1px solid #e5e7eb; }
.otc-sources h2 { font-size: 18px; color: #475569; margin-bottom: 14px; }
.otc-sources ol { padding-left: 22px; color: #475569; font-size: 13px; }
.otc-sources li { margin-bottom: 6px; line-height: 1.5; }
.otc-sources a { color: #3b82f6; }
.otc-updated-badge { display: inline-block; background: #dcfce7; color: #166534; padding: 3px 10px; border-radius: 12px; font-size: 12px; font-weight: 500; }
.otc-article h2 { font-size: 26px; margin: 36px 0 16px; color: #0f172a; scroll-margin-top: 80px; line-height: 1.3; font-weight: 700; }
.otc-article h3 { font-size: 19px; margin: 24px 0 12px; color: #1e293b; scroll-margin-top: 80px; line-height: 1.4; font-weight: 600; }
.otc-article h4 { font-size: 16px; margin: 18px 0 8px; color: #334155; }
.otc-article p { margin: 0 0 14px; }
.otc-article ul, .otc-article ol { margin: 0 0 16px 24px; }
.otc-article ul li, .otc-article ol li { margin-bottom: 6px; }
.otc-article a { color: #3b82f6; text-decoration: underline; text-underline-offset: 2px; }
.otc-article a:hover { color: #1e40af; }
.otc-article table { border-collapse: collapse; margin: 18px 0; width: 100%; font-size: 14px; }
.otc-article th, .otc-article td { border: 1px solid #e5e7eb; padding: 10px 14px; text-align: left; }
.otc-article th { background: #f8fafc; font-weight: 600; color: #1e293b; }
.otc-article blockquote { border-left: 3px solid #cbd5e1; padding: 10px 18px; margin: 18px 0; color: #475569; background: #f8fafc; font-style: italic; }
.otc-article img { max-width: 100%; height: auto; border-radius: 8px; margin: 18px 0; display: block; }
.otc-article figure { margin: 18px 0; }
.otc-article figcaption { font-size: 13px; color: #64748b; text-align: center; margin-top: 6px; font-style: italic; }
/* Widgets interactifs */
.otc-widget { border-radius: 12px; padding: 22px 24px; margin: 28px 0; border: 1px solid; }
.otc-widget-header { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; }
.otc-widget-icon { font-size: 32px; line-height: 1; }
.otc-widget h3.otc-widget-title { font-size: 18px; margin: 0; line-height: 1.3; }
.otc-widget-label { font-size: 11px; text-transform: uppercase; letter-spacing: 0.06em; font-weight: 600; opacity: 0.85; margin-bottom: 2px; }
.otc-widget-desc { font-size: 14px; line-height: 1.5; margin: 0 0 16px; opacity: 0.95; }
.otc-widget-quiz { background: linear-gradient(135deg,#ddd6fe22,#c4b5fd22); border-color: #a78bfa; }
.otc-widget-quiz h3, .otc-widget-quiz .otc-widget-label { color: #5b21b6; }
.otc-widget-calculator { background: linear-gradient(135deg,#fef3c7,#fde68a); border-color: #fcd34d; }
.otc-widget-calculator h3, .otc-widget-calculator .otc-widget-label { color: #78350f; }
.otc-widget-comparator { background: linear-gradient(135deg,#dbeafe,#bfdbfe); border-color: #60a5fa; }
.otc-widget-comparator h3, .otc-widget-comparator .otc-widget-label { color: #1e40af; }
.otc-widget-poll { background: linear-gradient(135deg,#fce7f3,#fbcfe8); border-color: #f472b6; }
.otc-widget-poll h3, .otc-widget-poll .otc-widget-label { color: #9d174d; }
.otc-widget-infographic { background: linear-gradient(135deg,#d1fae5,#a7f3d0); border-color: #34d399; }
.otc-widget-infographic h3, .otc-widget-infographic .otc-widget-label { color: #065f46; }
.otc-quiz-question { margin-bottom: 14px; padding: 12px; background: rgba(255,255,255,0.6); border-radius: 8px; }
.otc-quiz-question .q { font-weight: 600; margin-bottom: 8px; color: #1e293b; }
.otc-quiz-options { display: grid; gap: 6px; }
.otc-quiz-options label { display: flex; align-items: center; gap: 8px; padding: 8px 10px; background: white; border: 1px solid #e5e7eb; border-radius: 6px; cursor: pointer; transition: all 0.12s; font-size: 14px; }
.otc-quiz-options label:hover { border-color: #7c3aed; background: #faf5ff; }
.otc-quiz-options input[type=radio] { margin: 0; }
.otc-quiz-options input[type=radio]:checked + span { font-weight: 600; }
.otc-quiz-result { margin-top: 14px; padding: 12px 16px; background: white; border-radius: 8px; font-weight: 600; text-align: center; display: none; }
.otc-quiz-result.show { display: block; }
.otc-btn { background: #7c3aed; color: white; border: none; padding: 10px 18px; border-radius: 6px; cursor: pointer; font-weight: 500; font-size: 14px; transition: background 0.15s; }
.otc-btn:hover { background: #6d28d9; }
.otc-widget-calculator .otc-btn { background: #b45309; }
.otc-widget-calculator .otc-btn:hover { background: #92400e; }
.otc-widget-comparator .otc-btn { background: #2563eb; }
.otc-widget-comparator .otc-btn:hover { background: #1d4ed8; }
.otc-widget-poll .otc-btn { background: #db2777; }
.otc-widget-poll .otc-btn:hover { background: #be185d; }
.otc-calc-row { display: flex; gap: 10px; align-items: center; margin-bottom: 10px; flex-wrap: wrap; }
.otc-calc-row label { font-weight: 500; min-width: 130px; font-size: 14px; }
.otc-calc-row input { flex: 1; padding: 8px 10px; border: 1px solid #fcd34d; border-radius: 6px; font-size: 14px; min-width: 120px; }
.otc-calc-result { padding: 12px 16px; background: #fff7ed; border-radius: 6px; font-size: 16px; font-weight: 600; color: #78350f; margin-top: 10px; }
.otc-poll-options { display: grid; gap: 8px; }
.otc-poll-option { background: white; border: 1px solid #f9a8d4; border-radius: 6px; padding: 10px 14px; cursor: pointer; position: relative; overflow: hidden; transition: border-color 0.12s; }
.otc-poll-option:hover { border-color: #ec4899; }
.otc-poll-option .pct-bar { position: absolute; left: 0; top: 0; bottom: 0; background: rgba(236, 72, 153, 0.15); transition: width 0.5s; z-index: 0; width: 0; }
.otc-poll-option .pct-text { position: relative; z-index: 1; display: flex; justify-content: space-between; }
.otc-poll-voted .otc-poll-option { cursor: default; }
.otc-comp-table { width: 100%; background: white; border-radius: 6px; overflow: hidden; }
.otc-comp-table th { background: #1e40af; color: white; padding: 8px 10px; text-align: left; font-size: 13px; }
.otc-comp-table td { padding: 8px 10px; border-bottom: 1px solid #dbeafe; font-size: 14px; }
.otc-comp-table tr:last-child td { border-bottom: none; }
/* Floating sidebar TOC (desktop right, mobile collapsible top) */
.otc-floating-toc {
background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 10px;
padding: 12px 16px; margin: 0 0 24px;
font-size: 13px;
}
.otc-toc-toggle {
background: none; border: 0; width: 100%; display: flex; justify-content: space-between; align-items: center;
font-weight: 700; color: #0f172a; font-size: 13px; text-transform: uppercase; letter-spacing: 0.05em;
cursor: pointer; padding: 0;
}
.otc-toc-chevron { transition: transform 0.2s; font-size: 14px; }
.otc-floating-toc[data-collapsed=true] .otc-toc-chevron { transform: rotate(-90deg); }
.otc-floating-toc[data-collapsed=true] .otc-toc-list { display: none; }
.otc-toc-list { margin: 12px 0 0; padding-left: 22px; max-height: 50vh; overflow-y: auto; }
.otc-toc-list li { margin-bottom: 5px; line-height: 1.4; }
.otc-toc-list a { color: #475569; text-decoration: none; transition: color 0.12s; display: inline-block; padding: 2px 0; border-left: 2px solid transparent; padding-left: 8px; margin-left: -10px; }
.otc-toc-list a:hover { color: #2563eb; }
.otc-toc-list a.active { color: #2563eb; font-weight: 600; border-left-color: #2563eb; background: #eff6ff; }
@media (min-width: 1200px) {
.otc-floating-toc {
position: fixed;
right: max(20px, calc((100vw – 1100px) / 2));
top: 100px;
width: 240px;
max-height: calc(100vh – 140px);
overflow-y: auto;
z-index: 50;
box-shadow: 0 4px 12px rgba(0,0,0,0.05);
margin: 0;
}
.otc-floating-toc[data-collapsed=true] { width: auto; }
}
@media (min-width: 1500px) {
.otc-floating-toc {
right: max(30px, calc((100vw – 1100px) / 2 – 280px));
top: 100px;
}
}
/* Features bar */
.otc-features-bar { display: flex; gap: 6px; padding: 10px 0; margin: 0 0 16px; flex-wrap: wrap; }
.otc-feat-btn {
background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 6px;
padding: 6px 12px; cursor: pointer; font-size: 13px; color: #475569;
display: inline-flex; align-items: center; gap: 4px; transition: all 0.12s;
}
.otc-feat-btn:hover { background: #eff6ff; border-color: #93c5fd; color: #1e40af; }
.otc-feat-btn.active { background: #dbeafe; border-color: #3b82f6; color: #1e40af; }
@media (max-width: 600px) { .otc-feat-btn span { display: none; } }
/* Pull quotes / Click-to-tweet */
.otc-pullquote {
border-left: 4px solid #1da1f2; background: #f0f9ff;
padding: 18px 22px; margin: 22px 0; border-radius: 0 8px 8px 0;
font-style: italic; color: #1e3a8a;
}
.otc-pullquote-text { font-size: 17px; line-height: 1.6; margin-bottom: 10px; }
.otc-pullquote-tweet {
display: inline-flex; align-items: center; gap: 6px; font-size: 13px;
background: #1da1f2; color: white !important; padding: 6px 14px; border-radius: 18px;
text-decoration: none !important; font-style: normal;
}
.otc-pullquote-tweet:hover { background: #0d8bd9; }
/* Reading mode */
body.otc-reading-mode { background: #faf8f3 !important; }
body.otc-reading-mode .otc-article { max-width: 720px; font-size: 18px; line-height: 1.85; }
body.otc-reading-mode .otc-article h2 { font-size: 28px; }
body.otc-reading-mode header,
body.otc-reading-mode footer,
body.otc-reading-mode aside:not(.otc-tldr-card):not(.otc-author):not(.otc-faq):not(.otc-newsletter):not(.otc-helpful):not(.otc-related):not(.otc-pullquote):not(.otc-stat-card):not(.otc-widget):not(.otc-floating-toc),
body.otc-reading-mode .sidebar,
body.otc-reading-mode .navigation,
body.otc-reading-mode #wpadminbar { display: none !important; }
/* Print */
@media print {
.otc-floating-toc, .otc-features-bar, .otc-share, .otc-newsletter, .otc-helpful, .otc-widget, .otc-progress, .otc-yt-embed, .otc-pullquote-tweet { display: none !important; }
.otc-article { font-size: 11pt; max-width: none; }
.otc-article h2, .otc-article h3 { page-break-after: avoid; }
.otc-article a::after { content: “ (“ attr(href) „)“; font-size: 9pt; color: #666; }
}
/* Share buttons */
.otc-share { display: flex; align-items: center; gap: 8px; padding: 12px 0; margin: 0 0 20px; border-top: 1px solid #e5e7eb; border-bottom: 1px solid #e5e7eb; flex-wrap: wrap; }
.otc-share-label { font-size: 13px; color: #64748b; font-weight: 500; }
.otc-share-btn { width: 36px; height: 36px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; text-decoration: none; color: white; font-weight: 700; font-size: 16px; border: 0; cursor: pointer; transition: transform 0.12s; }
.otc-share-btn:hover { transform: scale(1.1); }
.otc-share-x { background: #000; }
.otc-share-fb { background: #1877f2; }
.otc-share-ln { background: #0a66c2; }
.otc-share-wa { background: #25d366; }
.otc-share-copy { background: #64748b; }
/* Newsletter CTA */
.otc-newsletter { display: flex; align-items: center; gap: 18px; background: linear-gradient(135deg,#fef9c3,#fde68a); border: 1px solid #facc15; border-radius: 12px; padding: 22px 26px; margin: 32px 0; }
.otc-newsletter-icon { font-size: 42px; flex-shrink: 0; }
.otc-newsletter-body { flex: 1; }
.otc-newsletter h3 { margin: 0 0 6px; font-size: 18px; color: #78350f; }
.otc-newsletter p { margin: 0 0 12px; color: #78350f; font-size: 14px; }
.otc-newsletter-form { display: flex; gap: 8px; flex-wrap: wrap; }
.otc-newsletter-form input { flex: 1; min-width: 200px; padding: 10px 14px; border: 1px solid #d97706; border-radius: 6px; font-size: 14px; }
.otc-newsletter-form .otc-btn { background: #d97706; }
.otc-newsletter-form .otc-btn:hover { background: #b45309; }
.otc-newsletter-result { width: 100%; color: #065f46; font-weight: 500; font-size: 14px; margin-top: 8px; }
/* Helpful vote */
.otc-helpful { text-align: center; padding: 20px; margin: 28px 0; background: #f0f9ff; border: 1px dashed #93c5fd; border-radius: 10px; }
.otc-helpful h3 { margin: 0 0 12px; color: #1e40af; font-size: 16px; }
.otc-helpful-buttons { display: flex; gap: 12px; justify-content: center; }
.otc-vote-btn { background: white; border: 1px solid #93c5fd; border-radius: 6px; padding: 10px 20px; cursor: pointer; font-size: 14px; font-weight: 500; color: #1e40af; transition: all 0.12s; }
.otc-vote-btn:hover { background: #2563eb; color: white; }
.otc-vote-thanks { color: #1e40af; font-weight: 500; padding: 8px; }
.otc-vote-thanks a { color: #2563eb; }
/* Related articles */
.otc-related { margin: 36px 0 0; padding-top: 24px; border-top: 1px solid #e5e7eb; }
.otc-related h2 { margin-bottom: 16px; }
.otc-related-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 12px; }
.otc-related-card { display: block; background: white; border: 1px solid #e2e8f0; border-radius: 8px; padding: 14px 16px; text-decoration: none; transition: border-color 0.12s, transform 0.12s; }
.otc-related-card:hover { border-color: #3b82f6; transform: translateY(-2px); }
.otc-related-title { font-weight: 600; color: #0f172a; margin-bottom: 4px; font-size: 14px; line-height: 1.4; }
.otc-related-meta { font-size: 12px; color: #64748b; }
@media (max-width: 600px) { .otc-article h2 { font-size: 22px; } .otc-stats-row { grid-template-columns: 1fr; } .otc-newsletter { flex-direction: column; text-align: center; } }

📅 Mis à jour le 16/05/2026
⏱ 9 min de lecture
📝 2 131 mots
✍️ Par Kevin Grillot
87 %
des diplômés BTS MCO sont en emploi ou en formation complémentaire 6 mois après l’obtention du diplôme.

Source

27 100
candidats s’inscrivent chaque année au BTS MCO, ce qui en fait l’une des formations Bac+2 les plus demandées en France.

Source

Kevin Grillot

Kevin Grillot
Conseiller en Orientation et Spécialiste BTS Biotechnologies
Avec 8 ans d’expérience en orientation scolaire et formation professionnelle, j’accompagne les lycéens dans leurs parcours BTS. Passionné par la biotechnologie et les opportunités internationales (Erasmus, stages), je crée des contenus pédagogiques accessibles pour démysti





Le BTS MCO (Management Commercial Opérationnel) est un diplôme de niveau Bac+2 qui forme chaque année plus de 27 100 candidats en France. Ce cursus court et opérationnel remplace depuis 2019 l’ancien MUC (Management des Unités Commerciales). Vous visez une formation rapide vers l’emploi ? Vous cherchez à valider si ce BTS correspond à votre profil et vos ambitions ? Cet article dissèque la réalité : définition précise, débouchés concrets, conditions réelles d’accès, salaires détaillés et pièges à connaître avant de vous inscrire sur Parcoursup.

Qu’est-ce que le BTS MCO exactement ?

Le BTS Management Commercial Opérationnel est un brevet de technicien supérieur, diplôme national de niveau Bac+2 délivré par le ministère de l’Enseignement Supérieur. Source: Ministère de l’Enseignement Supérieur Créé en 2019, il succède au BTS MUC qui existait depuis 2006.

Concrètement, ce diplôme forme des responsables opérationnels de tout ou partie d’une unité commerciale. L’unité peut être un magasin physique, une boutique en ligne, un showroom, ou même une équipe commerciale interne d’une grande entreprise. Vous ne serez pas vendeur : vous pilotez des vendeurs.

Le programme repose sur quatre domaines clés :

  • Développement de la relation client et vente conseil
  • Animation et dynamisation de l’offre commerciale
  • Animation et pilotage de l’équipe commerciale
  • Gestion opérationnelle

manager leading meeting team retail store
manager leading meeting team retail store

BTS MCO : définition et ancienne appellation (MUC)

Jusqu’en 2019, ce diplôme s’appelait BTS MUC (Management des Unités Commerciales). Le changement de nom reflète une évolution : moins de focus sur la gestion comptable, plus sur le leadership et la relation client multicanale (digital inclus). Source: Wikipedia Les contenus ne sont pas révolutionnaires, mais la pédagogie a glissé vers le commerce omnicanal.

La confusion persiste : beaucoup de parents et étudiants croient encore que c’est l’ancien MUC. Clarifions : MCO = MUC 2.0, plus moderne, plus adapté au retail digital.

Les deux modalités de formation : initial vs alternance

Vous avez deux chemins :

Formation initiale : 2 ans à l’école, stage en entreprise de 12-16 semaines en deuxième année. Vous êtes étudiant. Rythme : 35h/semaine en cours.

Alternance : 2 ans avec un contrat d’apprentissage. Vous alternez 2 jours à l’école et 3 jours en entreprise (ou 1 semaine école/1 semaine entreprise selon les écoles). Vous percevez un salaire (63-78% du Smic pour un alternant).

Quelle différence réelle ? L’alternance offre l’expérience pratique immédiate et rend plus employable à la sortie. Mais elle exige de trouver une entreprise avant septembre, ce qui n’est pas garanti.

apprentice working with manager in warehouse
apprentice working with manager in warehouse

Programme et matières : ce que vous allez étudier

Le programme combine matières générales et spécialisées :

Matières générales (obligatoires)

  • Culture générale et expression
  • Langue vivante (anglais principalement)
  • Économie générale et économie d’entreprise
  • Management d’entreprises
  • Droit commercial et droit du travail

Matières commerciales spécialisées

  • Relation client et vente conseil
  • Gestion de la relation client (CRM, outils digitaux)
  • Gestion opérationnelle et process
  • Animation d’équipe et leadership
  • Mercatique et analyse du marché
  • E-commerce et digitalisation du commerce

Le volume horaire total : ~2 000 heures sur 2 ans. Les évaluations incluent contrôle continu et examens finaux (épreuves écrites de 4-5h, mises en situation professionnelle).

Conseil insider : ne sous-estimez pas la matière „Relation client“. Elle compte pour 40% de votre insertion. Bosser vos soft skills = clé réelle.

Conditions d’admission : qui peut entrer en BTS MCO ?

Les critères officiels sont simples. Les réalités de sélection moins.

Critères stricts

  • Être titulaire du baccalauréat (toute série : général, technologique, professionnel)
  • Ou justifier d’un DAEU (diplôme d’accès aux études universitaires)

En pratique, comment êtes-vous évalué ?

Établissement Processus de sélection Compétitif ? École publique (lycée) Dossier Parcoursup + notes Modéré (coeff. Bac français, maths) École privée reconnue Test d’entrée écrit + entretien Élevé (50-100 candidats/place) Organisme de formation CFA Entretien + motivation + (test numérique) Variable

Source: Parcoursup 2026 Les notes requises : environ 11-13/20 en moyenne générale. Mais certaines écoles privées demandent 14+.

Tests d’entrée courants : compréhension écrite, logique commerciale, anglais basique, simulation d’entretien.

Les 8 débouchés professionnels réels en BTS MCO

Oublions le mythe : BTS MCO ≠ vendeur en magasin. Voici les vrais métiers accessibles :

1. Responsable de magasin / Manager de point de vente

Pilotage d’une équipe (3-15 personnes), objectifs de chiffre d’affaires, GRH locale. Secteur : retail (Carrefour, Décathlon, Zalando, franchises).

2. Chef de ventes / Coordinateur commercial (B2B)

Gestion d’un portefeuille clients, animation d’une équipe commerciale. Secteur : pharma, distribution, logistique, industrie.

3. Responsable logistique opérationnelle

Gestion des stocks, optimisation des flux, coordination avec les fournisseurs et clients. Secteur : logistique, e-commerce, SNCF.

4. Approvisionneur

Gestion des achats, respect des délais et budgets, relations fournisseurs. Secteur : industrie, pharma, agroalimentaire.

5. Coordinateur qualité (junior)

Vérification des process, conformité des commandes, traçabilité. Secteur : pharma, dispositifs médicaux, agroalimentaire.

6. Assistant manager / Adjoint de direction

Support au manager, gestion administrative, pilotage de projets. Secteur : tous (pivot naturel après 1-2 ans).

7. Commercial B2B

Développement d’une clientèle professionnelle, négociation commerciale. Secteur : distribution, services aux entreprises.

8. Responsable e-commerce / Digital retail

Gestion d’une boutique en ligne, animation du catalogue, gestion client digital. Secteur : e-commerce, retail omnicanal.

Le taux d’emploi 6 mois après : 87% en emploi ou formation complémentaire. Source: ONISEP 2023 Cela signifie : 13% galèrent ou poursuivent en études.

diverse team in modern office discussing sales metrics
diverse team in modern office discussing sales metrics

Salaires réels après un BTS MCO

Les chiffres génériques „2 500€/mois“ qu’on trouve partout ? Ils oublient le contexte. Voici la réalité :

Salaire moyen à l’embauche : 22-26k€ brut/an (soit 1 833-2 167€/mois nets), selon région et secteur.

Par secteur

  • Retail (Carrefour, Décathlon) : 21-23k€
  • Logistique/distribution : 23-25k€
  • Pharma/secteur réglementé : 24-27k€
  • E-commerce : 22-25k€

Après 3 ans d’expérience : 26-32k€ brut. Après 5 ans (accès à des postes cadre intermédiaire ou expertise) : 28-38k€.

Conseil insider : le secteur vaut plus que la région. Un BTS MCO en pharma-biotech en province gagne plus qu’en retail en Île-de-France.

Poursuites d’études après le BTS MCO

Le BTS n’est pas une impasse. Environ 30-35% des diplômés poursuivent en études.

Option 1 : Licence professionnelle (1 an)

Specialisations : Management commercial, Logistique, E-commerce, Commerce international, Gestion de projet. Effet sur salaire : +3-5k€ après 5 ans.

Option 2 : Bachelor spécialisé (1 an)

Ecoles : Pigier, Cours Diderot, Sup’de Commerce (diplômes non-réglementés mais reconnus marché).

Option 3 : Passerelle Master (2 ans)

Accès sélectif à des Masters en management, commerce, supply chain. Universités ou écoles privées.

Option 4 : Certifications métier

Certification ISO 13485 (dispositifs médicaux), GMP (bonnes pratiques pharmaceutiques), Lean management, CRM expert.

Le vrai truc ? Les entreprises préfèrent un BTS MCO + 3 ans d’expérience à un Master tout frais. N’oubliez pas.

Où candidater : écoles publiques et privées

Écoles publiques (lycées BTS)

Accès via Parcoursup. Coût : gratuit. Sélection : dossier + notes. Exemples : lycée Buffon (Paris), lycée Monnerville (Gennevilliers), lycée Carcado-Saisseval (Paris). Qualité pédagogique : généralement très bonne, équipes expérimentées.

Écoles privées reconnues

Source: Dimension BTS Coût : 3 500-7 000€/an. Sélection : test écrit + entretien. Exemples : Pigier (national, 15 campus), Cours Diderot (Île-de-France + régions), Sup’de Commerce.

Différence clé : les écoles privées offrent souvent plus de flexibilité (rentrées décalées, cours du soir pour salariés), mais pas forcément meilleure insertion.

Organismes de formation (CFA)

Pour l’alternance. Coût : pris en charge par l’OPCO de l’employeur. Exemples : AFTAL, AFORMAC.

Comment choisir ?

  • Priorité 1 : proximité géographique (gain 1-2h de trajet/jour = énorme sur 2 ans)
  • Priorité 2 : taux de réussite à l’examen final (demander à l’établissement)
  • Priorité 3 : secteur de stage/alternance proposé (si biotech/pharma vous intéresse, chercher ces partenaires)

La vérité sur la difficulté du BTS MCO

Le mythe : „C’est facile, c’est juste de la vente.“

La réalité : modérément exigeant, mais nécessite du travail régulier.

Taux d’échec/redoublement : environ 8-12% (excellents chiffres). Cela signifie : 88-92% réussissent.

Ce qui vous posera problème :

  • Droit commercial : vocabulaire dense, cas pratiques à maîtriser
  • Anglais : si vous ne l’aviez pas en bac, comptez sur des cours de rattrapage
  • Gestion opérationnelle : tableaux, indicateurs, un peu de maths appliquée
  • Présentation/oral : mise en situation professionnelle demande aisance orale

Ce qui sera facile : la mercatique, la relation client, le management si vous avez du „peuple“ en vous.

Conseil : le BTS MCO n’est pas un diplôme qui pardonne l’absentéisme. Présence régulière = succès quasiment garanti. Absence répétée = risque réel.

Étapes concrètes pour candidater en 2026

Janvier-février 2026 : recherche d’écoles, consultation des fiches BTS sur Parcoursup.

Février-mars 2026 : inscription Parcoursup (ouverture prévue 20 janvier).

Mars-avril 2026 : confirmez vos vœux. Bonus : si vous visez l’alternance, commencez vos recherches de maître d’apprentissage dès avril.

Mai-juin 2026 : résultats Parcoursup et procédure complémentaire si besoin.

Juillet-août 2026 : confirmez votre place, préparez les documents administratifs (inscription, assurance, dossier famille).

Septembre 2026 : rentrée.

Pour l’alternance spécifiquement : vous devez signer votre contrat 2 semaines avant la rentrée. Commencez donc vos candidatures en avril-mai auprès des entreprises. Les meilleurs postes partent en juin.

students on campus first day walking together
students on campus first day walking together

Comment maximiser votre employabilité en BTS MCO

Le diplôme seul ne suffit pas. Voici ce que font les 20% qui sont embauchés sur les meilleurs postes :

Pendant vos études

1. Choisissez votre stage/entreprise d’alternance stratégiquement. Pas le premier venu. Si possible : PME en croissance > grand groupe. Vous apprenez plus.

2. Parlez l’anglais commercial. Passez le BULATS ou TOEIC. Score 650+ = atout réel.

3. Maîtrisez un outil CRM (Salesforce est l’or standard). Beaucoup de BTS MCO ne le font pas. Vous, si : avantage différenciant.

4. Documentez vos projets. Portfolio professionnel : cas concrets menés, KPIs améliorés. À montrer en entretien.

Après l’obtention du diplôme

1. Acceptez un premier CDI même modeste. Mieux qu’un chômage de 6 mois.

2. Visez les secteurs en croissance : e-commerce, logistique, pharma (moins de concurrence, meilleures paies).

3. Préparez-vous à une licence professionnelle pendant que vous travaillez en CDD. 1 an de plus = +5k€/an de salaire durable.

Vrai conseil d’insider : les recruteurs pharma/biotech préfèrent un BTS MCO motivé avec stage réalisé en pharma, à un BTS biotech classique. Pourquoi ? Mentalité opérationnelle + preuve d’adaptabilité.

Comparatif : BTS MCO vs alternatives

Vous hésitez ? Voici comment MCO se positionne :

Critère BTS MCO Licence Pro Commerce BTS NDRC BTS SAM Durée 2 ans 3 ans (L2+L3) ou 1 an après BTS 2 ans 2 ans Débouchés directement Manager, logistique, commercial Commercial senior, chef de projet Commercial, responsable ventes Assistant RH, gestion administrative Coût (public) Gratuit Gratuit Gratuit Gratuit Salaire à l’embauche 22-26k€ 26-30k€ 23-27k€ 21-24k€ Facilité d’accès ⭐⭐⭐⭐ ⭐⭐⭐ ⭐⭐⭐⭐ ⭐⭐⭐⭐ Insertion réelle Excellente Très bonne Excellente Bonne

Quand choisir MCO ? Vous aimez manager, piloter une équipe, la gestion opérationnelle. Vous ne voulez pas juste vendre.

Quand choisir Licence Pro après BTS ? Vous visez les postes de supervision ou spécialisation (e-commerce, supply chain).

Quand choisir NDRC (Négociation Relation Client) à la place ? Vous êtes pur commercial, vous aimez conclure des ventes, prospérer. NDRC = plus spécialisé en vente.

Conseils pratiques avant de vous engager

Conseil 1 : Testez le domaine

N’attendez pas septembre. Demandez un stage d’observation 3 jours chez Carrefour, SNCF, ou une PME locale. Observez un manager commercial. Aimez-vous ce quotidien ? Sinon, redirigez-vous avant d’engager 2 ans.

Conseil 2 : Vérifiez la localisation

Le BTS MCO est partout en France. Mais si vous avez des préférences sectorielles (pharma = Île-de-France/Lyon, logistique = Rhône-Alpes, retail = partout), cherchez une école/alternance près d’un cluster d’employeurs.

Conseil 3 : Comparez les écoles sur le taux d’emploi réel

Demandez aux établissements : „Quel % de vos diplômés 2024 ont un emploi 6 mois après ?“ Excellentes écoles : 90%+. Bonnes : 85%+. En dessous : questionnez l’équipe pédagogique.

Conseil 4 : Si vous hésitez, optez pour l’alternance

Plus chère en temps (école 2j/sem), mais bien moins risquée : vous êtes payé, vous avez une vraie expérience, vous êtes quasi certain d’être embauché à la sortie (80% de maintien dans l’entreprise d’origine).

Questions fréquentes

BTS MCO ça veut dire quoi exactement ?

BTS MCO = Brevet de Technicien Supérieur en Management Commercial Opérationnel. C’est un diplôme Bac+2 qui forme des responsables opérationnels d’une unité commerciale (magasin, équipe de vente, boutique en ligne). Il succède au BTS MUC depuis 2019. Vous serez manager d’équipe, pas vendeur.

Quel métier après un BTS MCO ?

Les métiers concrets : manager de magasin, responsable logistique, coordinateur commercial (B2B), approvisionneur, assistant manager, commercial B2B, coordinateur qualité junior, responsable e-commerce. 87% des diplômés sont en emploi 6 mois après. Les secteurs : retail, logistique, pharma, e-commerce, distribution.

Le BTS MCO est-il difficile ?

Modérément exigeant. Le taux d’échec est seulement 8-12%, ce qui veut dire 88-92% réussissent. Les points durs : droit commercial, anglais, gestion opérationnelle. Le secret : présence régulière + travail soutenu. Absent souvent = risque réel. C’est moins difficile qu’une Licence générale.

Quel est le salaire moyen après un BTS MCO ?

Salaire moyen à l’embauche : 22-26k€ brut/an (1 833-2 167€ nets/mois) selon secteur. En pharma/logistique : 24-27k€. En retail : 21-23k€. Après 3 ans : 26-32k€. Après 5 ans : 28-38k€. Le secteur compte plus que la région.

Comment candidater en BTS MCO ?

Via Parcoursup (janvier-mars 2026) pour le public et certains privés. Vous aurez besoin du bac. Sélection : dossier pour lycées publics, test écrit + entretien pour écoles privées. Pour l’alternance, commencez vos recherches d’entreprise en avril-mai. Contrat à signer 2 semaines avant la rentrée.

BTS MCO ou Licence professionnelle, quoi choisir ?

BTS MCO : 2 ans, emploi rapide (87% en 6 mois), salaire 22-26k€. Licence Pro : 3 ans minimum, salaire 26-30k€ à l’embauche. Stratégie gagnante : BTS MCO + 3 ans expérience + Licence Pro pendant le travail = meilleur ROI.

Alternance ou formation initiale en BTS MCO ?

Alternance : 2j/école + 3j/entreprise, vous êtes payé (63-78% Smic), plus employable à la sortie (80% restent dans l’entreprise). Formation initiale : stage 12-16 semaines, coût gratuit, plus flexible. Choisissez alternance si vous trouvez une entreprise avant mai.

Quels établissements offrent le meilleur BTS MCO ?

Écoles publiques (lycées) : Buffon (Paris), Monnerville (Gennevilliers), Carcado-Saisseval (Paris). Privées reconnues : Pigier (15 campus), Cours Diderot, Sup’de Commerce. Critères clés : proximité géographique, taux de réussite 85%+, partenaires sectoriels (pharma/logistique si intéressé).

📚 Sources & références

  1. BTS Management Commercial Opérationnel – OnisepOnisep
  2. Brevet de technicien supérieur – WikipediaWikipedia
  3. Dimension BTS – Guide des écoles et filièresDimension BTS
  4. Parcoursup – Portail national d’admissionParcoursup/MESR
  5. BTS MCO – Pigier EducationPigier

/* Otomatic Widgets — vanilla JS, externe pour passer les filtres WP/CMS */
(function () {
‚use strict‘;

function init() {
// Reading progress
var p = document.getElementById(‚otc-progress‘);
if (p) {
function upd() {
var s = window.scrollY,
h = document.documentElement.scrollHeight – window.innerHeight;
p.style.width = (h ? (s / h) * 100 : 0) + ‚%‘;
}
document.addEventListener(’scroll‘, upd, { passive: true });
upd();
}

// Quiz interactif
document.querySelectorAll(‚.otc-widget-quiz‘).forEach(function (quiz) {
var qs = quiz.querySelectorAll(‚.otc-quiz-question‘);
if (!qs.length) return;
var btn = quiz.querySelector(‚.otc-quiz-submit‘);
var res = quiz.querySelector(‚.otc-quiz-result‘);
if (btn && !btn.dataset.bound) {
btn.dataset.bound = ‚1‘;
btn.addEventListener(‚click‘, function () {
var score = 0,
total = qs.length;
qs.forEach(function (q) {
var sel = q.querySelector(‚input[type=radio]:checked‘);
if (sel && sel.dataset.correct === ‚1‘) score++;
});
var pct = Math.round((score / total) * 100);
var msg =
pct >= 80 ? ‚🏆 Excellent ! ‚ : pct >= 50 ? ‚👍 Pas mal ! ‚ : ‚📚 Continuez à apprendre ! ‚;
res.textContent = msg + ‚Score : ‚ + score + ‚/‘ + total + ‚ (‚ + pct + ‚%)‘;
res.classList.add(’show‘);
});
}
});

// Calculateur live
document.querySelectorAll(‚.otc-widget-calculator-inner‘).forEach(function (calc) {
var inputs = calc.querySelectorAll(‚input[type=number]‘);
var resEl = calc.querySelector(‚.otc-calc-result‘);
var formula = calc.dataset.formula || ‚v.a + v.b‘;
var unit = calc.dataset.unit || “;
var label = calc.dataset.resultLabel || ‚Total : ‚;
if (!inputs.length || !resEl) return;
// Nettoie la formule : strip „var“/“let“/“const“ déclarations + détecte si c’est une expression ou un body
var formulaClean = formula
.replace(/b(var|let|const)s+/g, “) // strip déclarations
.replace(/bv.s*varb/g, ‚v.v‘) // au cas où Claude écrit v.var
.trim();
var isBody = /[;]s*S/.test(formulaClean) || /breturnb/.test(formulaClean);
function compute() {
var values = {};
inputs.forEach(function (i) {
values[i.name] = parseFloat(i.value) || 0;
});
try {
var fn;
if (isBody) {
// Body : ajoute return si absent
var body = /breturnb/.test(formulaClean) ? formulaClean : (formulaClean + ‚; return v.result || 0;‘);
fn = new Function(‚v‘, body);
} else {
fn = new Function(‚v‘, ‚return (‚ + formulaClean + ‚)‘);
}
var r = fn(values);
var out =
typeof r === ’number‘
? Math.round(r * 100) / 100
: r;
resEl.textContent = label + out + unit;
} catch (e) {
resEl.textContent = ‚Erreur de calcul : ‚ + e.message;
}
}
inputs.forEach(function (i) {
if (!i.dataset.bound) {
i.dataset.bound = ‚1‘;
i.addEventListener(‚input‘, compute);
}
});
compute();
});

// Sondage avec localStorage
document.querySelectorAll(‚.otc-widget-poll [data-poll-id]‘).forEach(function (poll) {
var pollId = poll.dataset.pollId;
var key = ‚otc_poll_‘ + pollId;
var stored = JSON.parse(localStorage.getItem(key) || ‚{„votes“:{},“voted“:false}‘);
var options = poll.querySelectorAll(‚.otc-poll-option‘);

function render() {
var totalVotes = Object.values(stored.votes).reduce(function (a, b) {
return a + b;
}, 0);
if (totalVotes === 0) totalVotes = 1;
options.forEach(function (o) {
var k = o.dataset.optionKey;
var v = stored.votes[k] || 0;
var pct = Math.round((v / totalVotes) * 100);
var bar = o.querySelector(‚.pct-bar‘);
var pctEl = o.querySelector(‚.pct‘);
if (bar) bar.style.width = pct + ‚%‘;
if (pctEl && stored.voted) pctEl.textContent = pct + ‚%‘;
});
if (stored.voted) poll.classList.add(‚otc-poll-voted‘);
}

options.forEach(function (o) {
if (o.dataset.bound) return;
o.dataset.bound = ‚1‘;
o.addEventListener(‚click‘, function () {
if (stored.voted) return;
var k = o.dataset.optionKey;
stored.votes[k] = (stored.votes[k] || 0) + 1;
stored.voted = true;
localStorage.setItem(key, JSON.stringify(stored));
render();
});
});
render();
});

// Floating TOC scroll spy + collapse toggle
var toc = document.querySelector(‚.otc-floating-toc‘);
if (toc) {
var toggle = toc.querySelector(‚.otc-toc-toggle‘);
var headings = document.querySelectorAll(‚.otc-article h2[id]‘);
var links = toc.querySelectorAll(‚a[href^=“#“]‘);
// Collapse au clic
if (toggle && !toggle.dataset.bound) {
toggle.dataset.bound = ‚1‘;
toggle.addEventListener(‚click‘, function () {
var collapsed = toc.dataset.collapsed === ‚true‘;
toc.dataset.collapsed = collapsed ? ‚false‘ : ‚true‘;
toggle.setAttribute(‚aria-expanded‘, collapsed ? ‚true‘ : ‚false‘);
});
}
// Auto-collapse au scroll vers le bas (mobile)
function spy() {
var sy = window.scrollY + 120;
var current = null;
headings.forEach(function (h) {
if (h.offsetTop = 13 && savedFs <= 22) {
var body = document.querySelector('.otc-article');
if (body) body.style.fontSize = savedFs + 'px';
}
} catch (e) {}

if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', init);
} else {
init();
}
// Re-init si contenu ajouté dynamiquement (idempotent grâce aux dataset.bound)
setTimeout(init, 1500);
})();