-- #migration 2026_07_09_082
-- Guide pas à pas complet (tutoriel) pour tous les points de checklist de C-041 à C-050

UPDATE card_guide SET checklist_json = '[{"id": "role_niveaux", "type": "boolean", "label": "Définir le rôle de chaque niveau", "detail": "Entrée (15-40€) pour faire connaissance à faible risque, cœur (40-120€) comme offre principale, premium au-dessus pour la valeur maximale.", "tutoriel": {"intro": "Chaque niveau de ta gamme doit avoir un rôle précis dans le parcours du client.", "steps": [{"titre": "Définis le rôle du niveau entrée", "contenu": "Faire connaissance à faible risque, généralement 15-40€."}, {"titre": "Définis le rôle du niveau cœur", "contenu": "Ton offre principale, celle qui représente l''essentiel de ton activité, 40-120€."}, {"titre": "Définis le rôle du niveau premium", "contenu": "La valeur maximale que tu proposes, pour les clients prêts à investir davantage."}], "pieges": ["Créer des niveaux de prix sans leur donner un rôle distinct, ce qui brouille le message pour le client."]}}, {"id": "repartir_creations", "type": "boolean", "label": "Répartir tes créations existantes", "detail": "Classe ce que tu produis déjà dans ces trois niveaux — s''il manque un niveau, c''est là que se trouve ta prochaine création à créer.", "tutoriel": {"intro": "Classer ce que tu produis déjà révèle souvent un niveau manquant à combler.", "steps": [{"titre": "Liste toutes tes créations actuelles", "contenu": "Avec leur prix respectif."}, {"titre": "Classe chacune dans un des trois niveaux", "contenu": "Selon son prix et son positionnement."}, {"titre": "Identifie le niveau le moins fourni", "contenu": "C''est là que se trouve ta prochaine création prioritaire."}], "pieges": ["Se rendre compte après coup qu''un niveau entier est vide, sans avoir vérifié cette répartition en amont."]}}, {"id": "mettre_en_scene", "type": "boolean", "label": "Mettre en scène la progression", "detail": "Sur ton site et en boutique, présente les trois niveaux ensemble pour que le client visualise le chemin possible.", "tutoriel": {"intro": "Présenter les trois niveaux ensemble aide le client à visualiser le chemin possible.", "steps": [{"titre": "Regroupe visuellement les trois niveaux", "contenu": "Sur ton site, une page ou section dédiée qui les montre ensemble."}, {"titre": "Explique brièvement la progression", "contenu": "Une phrase qui aide à comprendre pourquoi ces trois niveaux existent."}, {"titre": "Reproduis cette mise en scène en boutique physique", "contenu": "Une présentation similaire si tu vends aussi en direct."}], "pieges": ["Disperser les niveaux sans jamais les présenter ensemble, ce qui empêche le client de percevoir la progression."]}}]' WHERE card_id = 'C-041';
UPDATE card_guide SET checklist_json = '[{"id": "axes_personnalisation", "type": "boolean", "label": "Définir les axes de personnalisation autorisés", "detail": "Limite la personnalisation à 3-4 axes maîtrisés (couleur, taille, gravure, finition) plutôt que de tout accepter.", "tutoriel": {"intro": "Limiter les axes de personnalisation garde le sur-mesure gérable.", "steps": [{"titre": "Choisis 3-4 axes maîtrisés", "contenu": "Couleur, taille, gravure, finition — ceux que tu maîtrises vraiment bien."}, {"titre": "Documente les options pour chaque axe", "contenu": "Pour pouvoir présenter clairement les choix possibles au client."}, {"titre": "Refuse poliment ce qui sort de ce cadre", "contenu": "Une demande hors de ces axes peut être déclinée sans culpabilité."}], "pieges": ["Accepter n''importe quelle demande de personnalisation, ce qui complexifie chaque commande différemment."]}}, {"id": "grille_tarifaire", "type": "boolean", "label": "Construire une grille tarifaire claire", "detail": "Prix de base + suppléments par option, affichés ou communiqués systématiquement — le client doit pouvoir estimer seul.", "tutoriel": {"intro": "Une grille claire permet au client d''estimer seul le prix de sa commande.", "steps": [{"titre": "Fixe un prix de base", "contenu": "Pour la version standard, sans option supplémentaire."}, {"titre": "Ajoute un supplément par option", "contenu": "Un montant précis pour chaque axe de personnalisation choisi."}, {"titre": "Affiche ou communique cette grille systématiquement", "contenu": "Sur ton site ou dans ta présentation du sur-mesure."}], "pieges": ["Calculer chaque prix au cas par cas sans grille, ce qui ralentit chaque devis et peut sembler arbitraire."]}}, {"id": "acompte_delai", "type": "boolean", "label": "Sécuriser avec un acompte et un délai annoncé", "detail": "30 à 50% à la commande, solde à la livraison. Annonce un délai réaliste avec une marge de sécurité.", "tutoriel": {"intro": "Un acompte et un délai annoncé sécurisent la commande des deux côtés.", "steps": [{"titre": "Fixe un acompte de 30 à 50%", "contenu": "À la commande, pour sécuriser ton engagement matériel."}, {"titre": "Annonce un délai réaliste", "contenu": "Avec une marge de sécurité plutôt qu''un délai optimiste non tenu."}, {"titre": "Précise les modalités du solde", "contenu": "À la livraison, clairement indiquées dès la commande."}], "pieges": ["Démarrer une production sur-mesure sans acompte, ce qui expose à un risque financier en cas d''annulation."]}}]' WHERE card_id = 'C-042';
UPDATE card_guide SET checklist_json = '[{"id": "theme_taille_serie", "type": "boolean", "label": "Choisir un thème et une taille de série", "detail": "15 à 20 pièces numérotées maximum pour une vraie rareté, avec un thème cohérent avec ton univers.", "tutoriel": {"intro": "Un thème cohérent et une taille limitée créent une vraie rareté perçue.", "steps": [{"titre": "Choisis un thème cohérent avec ton univers", "contenu": "Qui a du sens par rapport à ta gamme habituelle."}, {"titre": "Fixe une taille de série entre 15 et 20 pièces", "contenu": "Assez petit pour une vraie rareté, assez grand pour être viable."}, {"titre": "Vérifie la faisabilité de production", "contenu": "Que tu peux réellement produire cette série dans le respect de la qualité habituelle."}], "pieges": ["Fixer une série trop grande, qui dilue l''effet de rareté recherché."]}}, {"id": "communiquer_rarete", "type": "boolean", "label": "Communiquer la rareté de façon transparente", "detail": "Annonce le nombre exact de pièces et le numéro de chacune — la numérotation visible renforce la valeur perçue.", "tutoriel": {"intro": "La transparence sur la rareté renforce la valeur perçue de la série.", "steps": [{"titre": "Annonce le nombre exact de pièces", "contenu": "Dès la présentation de la collection."}, {"titre": "Numérote chaque pièce individuellement", "contenu": "Un numéro visible sur ou avec la pièce."}, {"titre": "Mentionne la numérotation dans ta communication", "contenu": "« Pièce 7 sur 18 » renforce l''unicité perçue."}], "pieges": ["Annoncer une rareté vague sans jamais donner de chiffre précis, ce qui affaiblit sa crédibilité."]}}, {"id": "moment_lancement", "type": "boolean", "label": "Créer un moment de lancement", "detail": "Date de sortie annoncée à l''avance, accès prioritaire pour ta liste email ou tes clients fidèles, puis ouverture publique.", "tutoriel": {"intro": "Un vrai moment de lancement crée l''attente et l''engagement autour de la série.", "steps": [{"titre": "Fixe une date de sortie à l''avance", "contenu": "Annoncée suffisamment tôt pour créer de l''attente."}, {"titre": "Prévois un accès prioritaire", "contenu": "Pour ta liste email ou tes clients fidèles, avant l''ouverture publique."}, {"titre": "Ouvre ensuite au public", "contenu": "Après cette fenêtre prioritaire, pour le reste de ton audience."}], "pieges": ["Lancer la série sans aucune annonce préalable, perdant l''effet d''attente et d''exclusivité."]}}]' WHERE card_id = 'C-043';
UPDATE card_guide SET checklist_json = '[{"id": "cout_revient_reel", "type": "boolean", "label": "Calculer le coût de revient réel", "detail": "Matières premières + temps de production valorisé à un taux horaire minimum + frais fixes répartis (atelier, outillage).", "tutoriel": {"intro": "Le coût de revient réel intègre bien plus que la seule matière première.", "steps": [{"titre": "Calcule le coût des matières premières", "contenu": "Précisément, pas une estimation approximative."}, {"titre": "Valorise ton temps de production", "contenu": "À un taux horaire minimum réaliste, pas zéro."}, {"titre": "Ajoute une part des frais fixes", "contenu": "Atelier, outillage, répartis sur ta production."}], "pieges": ["Oublier de valoriser son propre temps, ce qui fausse complètement le calcul de rentabilité réelle."]}}, {"id": "benchmark_concurrentiel", "type": "boolean", "label": "Étudier le benchmark concurrentiel", "detail": "Regarde 5 à 10 artisans comparables (même niveau de qualité, même marché) pour situer une fourchette de prix réaliste.", "tutoriel": {"intro": "Le benchmark situe une fourchette de prix réaliste sur ton marché.", "steps": [{"titre": "Identifie 5 à 10 artisans comparables", "contenu": "Même niveau de qualité, même marché ou positionnement."}, {"titre": "Note leurs prix pour des créations similaires", "contenu": "Pour avoir une vraie fourchette de référence."}, {"titre": "Situe-toi dans cette fourchette", "contenu": "En tenant compte de ta propre spécificité et qualité."}], "pieges": ["Comparer ses prix à des artisans de niveau ou marché très différent, faussant la comparaison."]}}, {"id": "positionner_valeur", "type": "boolean", "label": "Positionner selon la valeur perçue", "detail": "Le prix final intègre le coût de revient avec une marge cible (minimum x2 à x3 sur coût matière+temps), ajustée à ton positionnement.", "tutoriel": {"intro": "Le prix final doit refléter à la fois le coût réel et la valeur perçue.", "steps": [{"titre": "Applique une marge cible sur ton coût", "contenu": "Généralement x2 à x3 sur coût matière et temps."}, {"titre": "Ajuste selon ton positionnement", "contenu": "Plus premium, plus la marge peut être élevée si la valeur perçue le justifie."}, {"titre": "Vérifie la cohérence avec le benchmark", "contenu": "Ton prix final doit rester crédible par rapport au marché observé."}], "pieges": ["Fixer un prix uniquement sur le coût de revient sans jamais tenir compte de la valeur perçue par le marché."]}}]' WHERE card_id = 'C-044';
UPDATE card_guide SET checklist_json = '[{"id": "format_volume", "type": "boolean", "label": "Choisir un format simple à produire en volume", "detail": "Le produit d''appel doit pouvoir être réalisé rapidement et de façon répétable, sans sacrifier la qualité perçue.", "tutoriel": {"intro": "Le produit d''appel doit être reproductible rapidement sans perdre en qualité.", "steps": [{"titre": "Choisis une création simple à répéter", "contenu": "Sans complexité technique qui ralentirait la production en volume."}, {"titre": "Vérifie que la qualité reste constante", "contenu": "Même produite plus rapidement, elle doit rester à la hauteur de ta réputation."}, {"titre": "Teste ta capacité de production réelle", "contenu": "Combien tu peux en produire par semaine sans t''épuiser."}], "pieges": ["Choisir un produit d''appel trop complexe, qui finit par prendre autant de temps qu''une pièce de gamme supérieure."]}}, {"id": "prix_accessible", "type": "boolean", "label": "Fixer un prix accessible mais pas bradé", "detail": "Entre 15 et 40€ selon ton univers — le prix doit rester cohérent avec ton positionnement global.", "tutoriel": {"intro": "Le prix doit rester cohérent avec ton positionnement global, même en entrée de gamme.", "steps": [{"titre": "Fixe un prix entre 15 et 40€ selon ton univers", "contenu": "Une fourchette accessible sans brader ta valeur."}, {"titre": "Vérifie la cohérence avec ta gamme principale", "contenu": "Le produit d''appel ne doit pas sembler déconnecté du reste."}, {"titre": "Assure-toi de rester rentable à ce prix", "contenu": "Même en volume, la marge doit rester positive."}], "pieges": ["Brader excessivement le produit d''appel, ce qui peut dévaloriser la perception globale de ta marque."]}}, {"id": "pont_montee_gamme", "type": "boolean", "label": "Créer le pont vers la montée en gamme", "detail": "À chaque vente du produit d''appel, présente ou glisse une carte vers ta gamme principale.", "tutoriel": {"intro": "Chaque vente du produit d''appel est une occasion de présenter la gamme principale.", "steps": [{"titre": "Prépare une carte ou un mot glissé dans la commande", "contenu": "Présentant ta gamme principale de façon engageante."}, {"titre": "Propose une réduction pour l''achat suivant", "contenu": "Un incitatif pour passer à une pièce de gamme supérieure."}, {"titre": "Suis les conversions obtenues", "contenu": "Pour vérifier l''efficacité de ce pont vers la montée en gamme."}], "pieges": ["Vendre le produit d''appel sans jamais créer de pont vers le reste de la gamme, perdant l''opportunité de montée en gamme."]}}]' WHERE card_id = 'C-045';
UPDATE card_guide SET checklist_json = '[{"id": "format_adapte", "type": "boolean", "label": "Choisir le format adapté à ton activité", "detail": "Box mensuelle, accès prioritaire aux nouveautés, ou création en continu pour clients fidèles.", "tutoriel": {"intro": "Le format d''abonnement doit correspondre à ce que tu peux réellement produire et livrer.", "steps": [{"titre": "Compare les formats possibles", "contenu": "Box mensuelle, accès prioritaire, création en continu."}, {"titre": "Choisis celui qui correspond à ton activité", "contenu": "Selon ta capacité de production et le type de relation que tu veux créer."}, {"titre": "Définis clairement ce que reçoit l''abonné", "contenu": "Sans ambiguïté sur la fréquence et le contenu."}], "pieges": ["Choisir un format trop exigeant en production sans avoir vérifié sa faisabilité réelle sur la durée."]}}, {"id": "capacite_soutenable", "type": "boolean", "label": "Calculer la capacité de production soutenable", "detail": "Un abonnement engage ta régularité dans la durée — calcule précisément combien d''abonnés tu peux honorer sans t''épuiser.", "tutoriel": {"intro": "Un abonnement t''engage dans la durée — la capacité doit être calculée avec réalisme.", "steps": [{"titre": "Estime le temps nécessaire par abonné", "contenu": "Pour honorer l''engagement mensuel ou récurrent."}, {"titre": "Calcule le nombre maximum d''abonnés soutenable", "contenu": "Sans dépasser ta capacité réelle de production."}, {"titre": "Prévois une marge de sécurité", "contenu": "Pour absorber les imprévus sans t''épuiser."}], "pieges": ["Accepter trop d''abonnés au lancement, sans avoir vérifié la capacité réelle de tenir l''engagement dans la durée."]}}, {"id": "prix_engagement", "type": "boolean", "label": "Fixer un prix qui couvre l''engagement", "detail": "Le prix doit intégrer une prime de fidélité pour toi (revenu prévisible) tout en restant attractif pour l''abonné.", "tutoriel": {"intro": "Le prix d''un abonnement doit couvrir l''engagement tout en restant attractif.", "steps": [{"titre": "Intègre une prime de fidélité dans le calcul", "contenu": "Le revenu prévisible a une valeur qui justifie un prix légèrement ajusté."}, {"titre": "Compare avec un achat ponctuel équivalent", "contenu": "Pour vérifier que l''abonnement reste attractif pour le client."}, {"titre": "Ajuste après les premiers retours", "contenu": "Le prix peut évoluer une fois que tu as testé le format en conditions réelles."}], "pieges": ["Fixer un prix trop bas qui ne couvre pas réellement l''engagement pris sur la durée."]}}]' WHERE card_id = 'C-046';
UPDATE card_guide SET checklist_json = '[{"id": "conditions_gros", "type": "boolean", "label": "Définir les conditions de gros", "detail": "Remise grossiste de 40 à 50% sur le prix public habituellement pratiquée — calcule ta marge réelle à ce tarif.", "tutoriel": {"intro": "Les conditions de gros doivent rester rentables même avec la remise accordée.", "steps": [{"titre": "Fixe une remise grossiste de 40 à 50%", "contenu": "Le niveau habituellement pratiqué dans ce type de partenariat."}, {"titre": "Calcule ta marge réelle à ce tarif", "contenu": "Pour vérifier que la vente reste rentable malgré la remise."}, {"titre": "Documente ces conditions clairement", "contenu": "Pour les présenter de façon professionnelle à tes futurs partenaires."}], "pieges": ["Accorder une remise trop importante sans avoir vérifié qu''elle reste rentable une fois tous les coûts intégrés."]}}, {"id": "minimum_commande", "type": "boolean", "label": "Fixer un minimum de commande", "detail": "Le minimum protège ta rentabilité — une petite commande B2B à fort temps de gestion peut coûter plus qu''elle ne rapporte.", "tutoriel": {"intro": "Un minimum de commande protège ta rentabilité sur les commandes B2B.", "steps": [{"titre": "Calcule le seuil qui reste rentable", "contenu": "En tenant compte du temps de gestion propre à chaque commande."}, {"titre": "Fixe ce minimum clairement", "contenu": "Communiqué dès la présentation de ton offre B2B."}, {"titre": "Refuse poliment les commandes en dessous", "contenu": "Sans exception, pour préserver la cohérence de ta politique."}], "pieges": ["Accepter des commandes trop petites en volume, qui coûtent plus en temps de gestion qu''elles ne rapportent."]}}, {"id": "documenter_delais", "type": "boolean", "label": "Documenter les délais et conditions de paiement", "detail": "Délai de production réaliste, conditions de paiement (acompte + solde, ou paiement à 30 jours selon ta trésorerie).", "tutoriel": {"intro": "Des délais et conditions de paiement clairs évitent les malentendus avec les professionnels.", "steps": [{"titre": "Fixe un délai de production réaliste", "contenu": "En tenant compte du volume typique des commandes B2B."}, {"titre": "Définis les conditions de paiement", "contenu": "Acompte et solde, ou paiement à 30 jours selon ta trésorerie."}, {"titre": "Formalise ces conditions par écrit", "contenu": "Dans un document simple envoyé à chaque nouveau partenaire."}], "pieges": ["Négocier les conditions au cas par cas sans document de référence, source d''incohérence entre partenaires."]}}]' WHERE card_id = 'C-047';
UPDATE card_guide SET checklist_json = '[{"id": "creation_prioritaire", "type": "boolean", "label": "Choisir une création représentative à documenter en premier", "detail": "Commence par ta pièce la plus vendue ou la plus représentative de ta méthode — c''est là que la documentation rapportera le plus vite.", "tutoriel": {"intro": "Commencer par ta création la plus stratégique rentabilise vite l''effort de documentation.", "steps": [{"titre": "Identifie ta pièce la plus vendue", "contenu": "Ou la plus représentative de ta méthode de travail."}, {"titre": "Priorise-la pour la première documentation", "contenu": "C''est là que l''effort initial rapportera le plus rapidement."}, {"titre": "Prévois de documenter les autres ensuite", "contenu": "Une fois la première réalisée, élargis progressivement."}], "pieges": ["Vouloir tout documenter d''un coup, ce qui retarde indéfiniment le début du projet."]}}, {"id": "decomposer_etapes", "type": "boolean", "label": "Décomposer chaque étape avec ses points clés", "detail": "Matériaux exacts, temps par étape, gestes critiques, points de contrôle qualité, erreurs fréquentes à éviter.", "tutoriel": {"intro": "Une documentation utile détaille les points clés, pas seulement les grandes lignes.", "steps": [{"titre": "Liste les matériaux exacts utilisés", "contenu": "Avec quantités précises si possible."}, {"titre": "Note le temps par étape", "contenu": "Pour donner une idée réaliste du temps total nécessaire."}, {"titre": "Identifie les gestes critiques et erreurs fréquentes", "contenu": "Ce qui fait la différence entre un résultat réussi et un résultat raté."}], "pieges": ["Rester trop vague sur les étapes critiques, rendant la documentation inutile pour quelqu''un qui voudrait s''en servir."]}}, {"id": "stocker_organiser", "type": "boolean", "label": "Stocker et organiser la documentation", "detail": "Un dossier simple par création suffit — l''objectif n''est pas la perfection éditoriale mais l''utilité pratique.", "tutoriel": {"intro": "L''utilité pratique prime sur la perfection éditoriale de la documentation.", "steps": [{"titre": "Choisis un support simple", "contenu": "Document texte, dossier photo, ou les deux combinés."}, {"titre": "Crée un dossier par création", "contenu": "Pour retrouver facilement l''information plus tard."}, {"titre": "Garde le format pratique, pas parfait", "contenu": "L''objectif est l''utilité, pas la présentation soignée."}], "pieges": ["Perdre du temps à peaufiner la présentation plutôt que de simplement documenter l''essentiel rapidement."]}}]' WHERE card_id = 'C-048';
UPDATE card_guide SET checklist_json = '[{"id": "choisir_format", "type": "boolean", "label": "Choisir le format selon ta disponibilité et ton public", "detail": "Atelier ponctuel en présentiel (le plus accessible à démarrer), ou formation en ligne enregistrée (plus de travail initial, revenu passif ensuite).", "tutoriel": {"intro": "Le format doit correspondre à ta disponibilité réelle et à ton public visé.", "steps": [{"titre": "Évalue ta disponibilité actuelle", "contenu": "Pour choisir entre un format ponctuel ou plus structuré."}, {"titre": "Pour démarrer vite, choisis l''atelier présentiel", "contenu": "Le plus accessible à mettre en place rapidement."}, {"titre": "Pour un revenu passif à terme, envisage l''enregistré", "contenu": "Plus de travail initial mais un revenu qui perdure ensuite."}], "pieges": ["Se lancer directement dans une formation en ligne complète sans avoir testé le format en présentiel d''abord."]}}, {"id": "structurer_contenu", "type": "boolean", "label": "Structurer le contenu pédagogique", "detail": "Définis un objectif d''apprentissage clair et atteignable dans le temps imparti.", "tutoriel": {"intro": "Un objectif d''apprentissage clair oriente tout le contenu pédagogique.", "steps": [{"titre": "Définis ce que le participant saura faire à la fin", "contenu": "Un objectif concret et mesurable."}, {"titre": "Vérifie qu''il est atteignable dans le temps imparti", "contenu": "Ni trop ambitieux, ni trop limité pour la durée prévue."}, {"titre": "Structure le contenu autour de cet objectif", "contenu": "Chaque étape doit contribuer à l''atteindre."}], "pieges": ["Vouloir transmettre trop de contenu, ce qui dilue l''objectif principal et frustre les participants."]}}, {"id": "fixer_prix_valeur", "type": "boolean", "label": "Fixer le prix selon la valeur transmise", "detail": "Le prix d''un atelier se justifie par la transformation obtenue, pas seulement par le temps passé.", "tutoriel": {"intro": "Le prix se justifie par la transformation obtenue, pas seulement par le temps investi.", "steps": [{"titre": "Identifie la valeur de la transformation", "contenu": "Ce que le participant gagne concrètement à l''issue de l''atelier."}, {"titre": "Compare avec des offres similaires sur le marché", "contenu": "Pour situer un prix cohérent."}, {"titre": "Justifie le prix par le résultat, pas le temps", "contenu": "Communique sur ce que le participant en retire, pas sur la durée."}], "pieges": ["Fixer le prix uniquement sur la durée de l''atelier, sans tenir compte de la valeur réelle transmise."]}}]' WHERE card_id = 'C-049';
UPDATE card_guide SET checklist_json = '[{"id": "groupe_restreint", "type": "boolean", "label": "Sélectionner un groupe restreint et engagé", "detail": "Tes abonnés email les plus actifs ou tes clients fidèles sont le public idéal — ils sont déjà en confiance.", "tutoriel": {"intro": "Un groupe restreint et engagé donne des retours plus fiables qu''un lancement public direct.", "steps": [{"titre": "Identifie tes abonnés les plus actifs", "contenu": "Ceux qui ouvrent régulièrement tes emails ou interagissent souvent."}, {"titre": "Ou sélectionne tes clients les plus fidèles", "contenu": "Déjà en confiance avec ta marque."}, {"titre": "Limite le groupe à une taille gérable", "contenu": "Assez restreint pour un vrai suivi individuel des retours."}], "pieges": ["Ouvrir le test à un groupe trop large, perdant l''avantage d''un suivi individuel des retours."]}}, {"id": "presenter_test", "type": "boolean", "label": "Présenter l''offre comme un test assumé", "detail": "Sois transparent : « je teste cette nouvelle offre en avant-première avec vous, vos retours compteront ».", "tutoriel": {"intro": "La transparence sur la démarche de test engage davantage le groupe sélectionné.", "steps": [{"titre": "Explique clairement la démarche", "contenu": "« Je teste cette nouvelle offre en avant-première avec vous »."}, {"titre": "Valorise leur rôle dans le processus", "contenu": "Leurs retours compteront réellement pour la suite."}, {"titre": "Reste ouvert aux critiques annoncées", "contenu": "La transparence inclut d''accueillir les retours négatifs sans se braquer."}], "pieges": ["Présenter le test comme un lancement définitif, ce qui empêche d''accueillir sereinement les critiques."]}}, {"id": "collecter_retours", "type": "boolean", "label": "Collecter et analyser les retours avant le lancement public", "detail": "Au-delà des ventes, demande activement ce qui a plu, ce qui a hésité, ce qui manquait, et ajuste avant l''ouverture publique.", "tutoriel": {"intro": "Les retours détaillés valent plus que les seules ventes du test.", "steps": [{"titre": "Demande ce qui a plu spécifiquement", "contenu": "Au-delà du simple achat ou non."}, {"titre": "Demande ce qui a fait hésiter", "contenu": "Les freins rencontrés, même chez ceux qui ont acheté."}, {"titre": "Ajuste avant le lancement public", "contenu": "Intègre les retours pertinents avant d''ouvrir à une audience plus large."}], "pieges": ["Se concentrer uniquement sur le nombre de ventes du test sans jamais recueillir les retours qualitatifs."]}}]' WHERE card_id = 'C-050';