Aller au contenu principal
Goodassur

Référence interne · goodassur.com

Catalogue des shortcodes

Tous les composants Blade de goodassur.com, avec quand & comment utiliser chacun. Une seule balise <x-...> suffit. Les widgets « assurance » affichent des données mises à jour en temps réel. Avant d'optimiser un article : filtre par intention, ou pars de la table « Je veux… » ci-dessous.

🧭 Je veux… → quel composant
Je veux…Composant(s)
une liste à puces (points, critères, situations)x-icon-list
une procédure / des étapes ordonnéesx-numbered-list · x-timeline-steps
inclus vs exclu, oui vs non, avantages vs limitesx-check-cross-list · x-pros-cons
comparer des assureurs nommés (prix + CTA)x-pricing-table :insurers · x-insurance-comparison-table
un tableau pédagogique (barème, sans assureur)x-pricing-table générique · x-table
un classement / top Nx-goodassur-top-ranking · x-podium-top3 · x-price-ranking
le top mutuelles santéx-mutuelle-formulas-table · x-mutuelle-rembours-top3
expliquer / mettre en avant une infox-info-card · x-alert · x-key-figure
citer un chiffre sourcé (étude Selectra)x-fait
un CTA vers le comparateur / un partenairex-action-box · x-cta-monetisation
un avis / verdict d'expertx-expert-review · x-verdict-box · x-verdict-card (SDP)
des notes / étoiles / scorex-stars · x-selectra-score-gauges
mailler en fin de pagex-multiple-link · x-single-link
une FAQ (avec JSON-LD)x-faq-block
un outil interactif (simulateur, lettre, diagnostic)x-insurance-rac-simulator · x-insurance-resignation-letter · x-css-eligibility
une donnée régionale (carte cliquable)x-france-map
composer une page assureur (SDP)x-avis-hero · x-comparator-table · x-insurer-contact-card

Classement top N x-goodassur-top-ranking

📊 Comparerauto/habitation/santé
🎯 Quand l'utiliser — classer les N meilleures offres d'une verticale par prix, Selectra Score ou avis (pages « meilleure », hubs, sections comparatives) ; CTA 3-mode + légende datée auto.⚠️ Plutôt mono-assureur → x-verdict-card.

Liste classée des N meilleures offres pour un profil donné (auto, habitation, mutuelle). Trie par prix, par Selectra Score, par avis clients, ou via une recipe. Sélecteur de profil optionnel.

Conformité (cf. convention-compliance.md) :

  • CTA par carte : Devis gratuit en ligne/selection/{slug}/{vertical} (partenaire affilié web), 📞 numéro Selectra/selection/fr-ii-cs-gda{slug} (partenaire phone), Comparer en ligne/selection/comparateur-assurance-{vertical} (sinon) — résolu par le partial partials.offer-card-{vertical} override goodassur.
  • Chaque carte affiche en bas « Prix mis à jour le X ; Selectra Score mis à jour en X » — pas besoin de la répéter dans la caption générale.
  • Caption auto en pied de tableau : décrit la source du classement et le critère de tri (par prix, par Selectra Score, moyenne des avis ou sélection éditoriale) — exactement la vérité du tri.
  • Mention « ☑ partenaire » n'apparaît que si au moins un partenaire figure dans le tableau (§5.2).

Clone du composant département x-insurance-top-ranking spécifique à goodassur — permet d'évoluer sans impacter selectra.info / en.selectra.info.

$profileKey         clé URL-friendly du profil (ex: auto-jeune-conducteur)
$vertical           auto | habitation | mutuelle  (alternative à $profileKey)
$profile            nom du profil (alternative — résolu via france-insurance.profiles)
$sortBy             price | score  (par défaut price)
$limit              nombre d'offres (par défaut 5)
$priceLevel         0 | 1 | 2 | 'all'  (0 = pas chères seulement)
$onlyPartners       n'inclure que les partenaires Selectra (false par défaut)
$insurerSlugs       array|csv — restreint à une liste d'assureurs
$withProfileSelector  affiche un <select> profil au-dessus (false)
$verdictDate        override date affichée dans la caption (default = mois en cours)
$methodologyUrl     override lien méthodo (default Selectra Score)
<x-slot:caption>   slot custom pour remplacer entièrement le footer auto
Exemples
<x-goodassur-top-ranking vertical="mutuelle" profile="Famille" :limit="5" />


<x-goodassur-top-ranking
    profileKey="auto-jeune-conducteur"
    :limit="3"
    :only-partners="true"
/>


<x-goodassur-top-ranking vertical="habitation" :with-profile-selector="true" />


<x-goodassur-top-ranking vertical="mutuelle" profile="Senior 65 ans">
    <x-slot:caption>
        Classement personnalisé senior, basé sur le profil 65 ans (notre relevé en mai 2026).
    </x-slot:caption>
</x-goodassur-top-ranking>

Exemple vivant ci-dessous :

#1
Tarifs affichés pour notre profil type

Famille

Femme 40 ans 2 enfants (10 et 15 ans) Salariée Régime général Lille 40 ans
Logo Acheel Partenaire de Selectra Devis gratuit en ligne
ESSENTIEL

Essentiel F1

137,95 € /mois

INTERMÉDIAIRE

Essentiel F3

200,22 € /mois

INTÉGRAL

Active F4

318,33 € /mois

Prix mis à jour le 05/02/2026 Selectra Score mis à jour en juin 2026
Soins courants Remboursement
Auxiliaires médicaux 150% BR
Analyse et examen de laboratoire 150% BR
Prothèses externes remboursées par la Sécurité sociale (capillaires, mammaires, oculaires) 200% BR
Transport 100% BR
Médecin généraliste NON OPTAM 200% BR
Médecin spécialiste NON OPTAM 200% BR
Médecin généraliste OPTAM 275% BR
Médecin spécialiste OPTAM 275% BR
Imagerie médicale OPTAM 275% BR
Imagerie médicale NON OPTAM 200% BR
Médicaments à SMR faible (prise en charge par la SS à 15%) 150% BR
Médicaments à SMR modéré (prise en charge par la SS à 30%) 150% BR
Médicaments à SMR important (prise en charge par la SS à 65%) 150% BR
Actes techniques 200% si non optam 275% BR
Tableau de garanties mis à jour le 13/03/2026
Hospitalisation Remboursement
Frais d'accompagnement par jour 50 €
Honoraires médicaux et chirurgicaux OPTAM 300% BR
Honoraires médicaux et chirurgicaux NON OPTAM 200% BR
Hospitalisation à domicile 100% BR
Frais de séjour en secteur NON OPTAM 100% BR
Frais de séjour OPTAM 100% BR
Chambre particulière OPTAM par jour 100 €
Forfait journalier hospitalier OPTAM Frais réels
Forfait confort hospitalier par jour 2 €
Tableau de garanties mis à jour le 13/03/2026
Optique Remboursement
Monture + 1 verre simple + 1 verre complexe ou très complexe 300 €
Plafond monture 100 €
Lentilles acceptées par la Sécurité sociale par an 100% BR
Lentilles refusées par la Sécurité sociale par an 100% BR
Équipement 100% santé optique Frais réels
Monture + verres complexes 400 €
Monture + verres très complexes 400 €
Monture + verres simples 250 €
Tableau de garanties mis à jour le 13/03/2026
Dentaire Remboursement
Orthodontie remboursée par la Sécurité sociale (An1) / 225% (An2) / 250% (An3+) 200% BR
Plafond sur le poste dentaire par an et par bénéficiaire (An1) / 1750€ (An2) / 2000€ (An3+) 1 500 €
Soins et prothèses dentaires non remboursés par la Sécurité sociale par an 50 €
Inlays / Onlays 100% BR
Prothèses dentaires remboursées par l'AMO (An1) / 225% (An2) / 250% (An3+) 200% BR
Soins dentaires 100% BR
Equipement 100% santé dentaire Frais réels
Tableau de garanties mis à jour le 13/03/2026
Auditif Remboursement
Equipement 100% santé auditif Frais réels
Prothèses auditives classe 2 par an 100% BR
Tableau de garanties mis à jour le 13/03/2026
Médecine douce Remboursement
Actes de prévention 100% BR
Médecine douce 25 €
Cure thermale (hébergement et transport) 300 €
Tableau de garanties mis à jour le 13/03/2026

Notes moyennes des clients

Opinion Assurances 1,5/5 (392)
Trustpilot 4,3/5 (8 619)
Notes et quantité d'avis mis à jour le 15/06/2026
#2
Tarifs affichés pour notre profil type

Famille

Femme 40 ans 2 enfants (10 et 15 ans) Salariée Régime général Lille 40 ans
Logo Malakoff Humanis Partenaire de Selectra 01 88 24 67 60
ESSENTIEL

Initial

145,84 € /mois

INTERMÉDIAIRE

Intermédiaire

183,72 € /mois

INTÉGRAL

Intégral

387,54 € /mois

Prix mis à jour le 05/02/2026 Selectra Score mis à jour en juin 2026
Soins courants Remboursement
Auxiliaires médicaux 200% BR
Accompagnement psychologique remboursé par le RO 100% BR
Imagerie médicale OPTAM 240% BR
Imagerie médicale NON OPTAM 200% BR
Analyse et examen de laboratoire 100% BR
Médicaments à SMR important (prise en charge par la SS à 65%) Frais réels
Médicaments à SMR modéré (prise en charge par la SS à 30%) Frais réels
Médicaments à SMR faible (prise en charge par la SS à 15%) Frais réels
Médecin généraliste OPTAM 240% BR
Médecin généraliste NON OPTAM 200% BR
Médecin spécialiste NON OPTAM 200% BR
Médecin spécialiste OPTAM 240% BR
Forfait patient urgences Frais réels
Matériel Médical 200% BR
Transport 100% BR
Actes techniques 240% BR
Tableau de garanties mis à jour le 13/03/2026
Hospitalisation Remboursement
Frais d'accompagnement par nuit 20 €
Honoraires médicaux et chirurgicaux OPTAM 300% BR
Honoraires médicaux et chirurgicaux NON OPTAM 200% BR
Hospitalisation à domicile 100% BR
Frais de séjour OPTAM Frais réels
Chambre particulière OPTAM par nuit 80 €
Forfait journalier hospitalier OPTAM Frais réels
Chambre particulière en ambulatoire par jour 20 €
Tableau de garanties mis à jour le 13/03/2026
Optique Remboursement
Chirurgie réfractive par an (1ère et 2ème année) / 220€ par an (3ème et 4ème année) / 230€ par an (5ème année et suivantes) 180 €
Lentilles acceptées par la Sécurité sociale par an / +20€ si réseau Kalixia 180 €
Lentilles refusées par la Sécurité sociale par an (1ère et 2ème année) / 220€ par an (3ème et 4ème année) / 230€ par an (5ème année et suivantes) 180 €
Équipement 100% santé optique Frais réels
Monture + verres complexes +40€ dès la 3ème année et +50€ dès la 5ème année 440 €
Monture + verres très complexes +40€ dès la 3ème année et +50€ dès la 5ème année 440 €
Adaptation de la correction visuelle 100% BR
Monture + verres simples +40€ dès la 3ème année et +50€ dès la 5ème année 250 €
Monture + 1 verre simple + 1 verre complexe ou très complexe +40€ dès la 3ème année et +50€ dès la 5ème année 345 €
Plafond monture +10€ si réseau Kalixia 90 €
Tableau de garanties mis à jour le 13/03/2026
Dentaire Remboursement
Orthodontie remboursée par la Sécurité sociale par semestre 200% BR
Plafond sur le poste dentaire par an et par bénéficiaire (1ère et 2ème année) / 1600€ (3ème et 4ème année) / 1700€ (5ème année et suivantes) 1 500 €
Soins et prothèses dentaires non remboursés par la Sécurité sociale par an / +50€ si réseau Kalixia 250 €
Prothèses dentaires remboursées par l'AMO +50% si réseau Kalixia 300% BR
Soins dentaires 100% BR
Equipement 100% santé dentaire Frais réels
Tableau de garanties mis à jour le 13/03/2026
Auditif Remboursement
Prothèses auditives classe 2 par oreille / +20€ et +20% si réseau Kalixia / +100€ dès la 3ème année et +200€ dès la 5ème année 180% BR
Equipement 100% santé auditif Frais réels
Piles et accessoires 100% BR
Tableau de garanties mis à jour le 13/03/2026
Médecine douce Remboursement
Actes de prévention 100% BR
Cure thermale (honoraires et traitement) Forfait global honoraires, traitement, hébergement et transport 200 €
Cure thermale (hébergement et transport) Forfait global honoraires, traitement, hébergement et transport 200 €
Médecine douce 50 €
Tableau de garanties mis à jour le 13/03/2026

Notes moyennes des clients

Opinion Assurances 1,5/5 (480)
Trustpilot 1,3/5 (199)
Notes et quantité d'avis mis à jour le 15/06/2026
#3
Tarifs affichés pour notre profil type

Famille

Femme 40 ans 2 enfants (10 et 15 ans) Salariée Régime général Lille 40 ans
Logo Neoliane Partenaire de Selectra Selectra Score E 01 86 65 98 69
ESSENTIEL

Energik EN1

149,19 € /mois

INTERMÉDIAIRE

Pulse PU2

190,53 € /mois

INTÉGRAL

Plénitude P6

474,52 € /mois

Prix mis à jour le 05/02/2026 Selectra Score mis à jour en juin 2026
Soins courants Remboursement
Auxiliaires médicaux 100% BR
Médicaments prescrits non remboursés par la Sécurité sociale par an 30 €
Imagerie médicale OPTAM 100% BR
Imagerie médicale NON OPTAM 100% BR
Analyse et examen de laboratoire 100% BR
Médecin généraliste OPTAM 175% BR
Médecin généraliste NON OPTAM 150% BR
Médecin spécialiste NON OPTAM 150% BR
Médecin spécialiste OPTAM 175% BR
Prothèses externes remboursées par la Sécurité sociale (capillaires, mammaires, oculaires) 100% BR
Actes techniques Frais réels
Matériel Médical 100% BR
Transport 100% BR
Honoraires médicaux OPTAM
Honoraires médicaux NON OPTAM
Forfait patient urgences Frais réels
Médicaments à SMR faible (prise en charge par la SS à 15%) 100% BR
Médicaments à SMR important (prise en charge par la SS à 65%) 100% BR
Médicaments à SMR modéré (prise en charge par la SS à 30%) 100% BR
Tableau de garanties mis à jour le 13/03/2026
Hospitalisation Remboursement
Frais d'accompagnement par jour 40 €
Honoraires médicaux et chirurgicaux OPTAM (1ère année) / 330% (3ème année et suivantes) 315% BR
Honoraires médicaux et chirurgicaux NON OPTAM (1ère année) / 200% (3ème année et suivantes) 200% BR
Frais de séjour en secteur NON OPTAM 100% BR
Frais de séjour OPTAM Frais réels
Chambre particulière OPTAM par jour (1ère année) / 100€ par jour (3ème année et suivantes) 90 €
Forfait journalier hospitalier OPTAM Frais réels
Forfait confort hospitalier par jour 40 €
Tableau de garanties mis à jour le 13/03/2026
Optique Remboursement
Chirurgie réfractive par an 300 €
Plafond monture 100 €
Lentilles acceptées par la Sécurité sociale 100% BR
Lentilles refusées par la Sécurité sociale par an 150 €
Équipement 100% santé optique Frais réels
Monture + verres complexes (1ère année) / 450€ (3ème année) / 500€ (4ème année et suivantes) 400 €
Monture + verres simples (1ère année) / 200€ (3ème année) / 300€ (4ème année et suivantes) 275 €
Monture + verres très complexes (1ère année) / 450€ (3ème année) / 500€ (4ème année et suivantes) 400 €
Tableau de garanties mis à jour le 13/03/2026
Dentaire Remboursement
Orthodontie remboursée par la Sécurité sociale (1ère année) / 265% (3ème année) / 280% (4ème année et suivantes) 250% BR
Plafond sur le poste dentaire par an et par bénéficiaire (1ère année) / Illimité (2ème année) / Illimité (3ème année) / Illimité (4ème année et suivantes) 2 000 €
Soins et prothèses dentaires non remboursés par la Sécurité sociale par an 250 €
Inlays / Onlays 250% BR
Prothèses dentaires remboursées par l'AMO (1ère année) / 315% (3ème année) / 330% (4ème année et suivantes) 300% BR
Soins dentaires 250% BR
Equipement 100% santé dentaire Frais réels
Tableau de garanties mis à jour le 13/03/2026
Auditif Remboursement
Prothèses auditives classe 2 200% BR
Equipement 100% santé auditif Frais réels
Piles et accessoires 100% BR
Tableau de garanties mis à jour le 13/03/2026
Médecine douce Remboursement
Médecine douce 180€ (3ème année)/ 190€ (4ème année et suivantes) Forfait médecines complémentaires : ostéopathe, homéopathe, acupuncteur, naturopathe, étiopathe, diététicien, chiropracteur, micro-kinésithérapeute, pédicure/podologue, réflexologue, sophrologue, luminothérapeute, hypnothérapeute, tabacologue, mésothérapeute, psychomotricien, psychologue, ergothérapeute, sexologue. (par année d’adhésion et par Assuré - limité à 30 € / acte) 120 €
Cure thermale (honoraires et traitement) 100% BR
Cure thermale (hébergement et transport) 200 €
Dépistage et prévention (actes non remboursés par le RO) dans la limite de 2 actes par an Frais réels
Tableau de garanties mis à jour le 13/03/2026

Notes moyennes des clients

Google 4,7/5 (5 889)
Opinion Assurances 2,9/5 (1 083)
Trustpilot 4,4/5 (517)
Notes et quantité d'avis mis à jour le 15/06/2026

Notre sélection d'assureurs partenaires (liste non exhaustive). Classement par prix croissant.

Classement Selectra Score (top N + méthodo) x-selectra-score-ranking

📊 Comparertransverse
🎯 Quand l'utiliser — top N classé par Selectra Score avec bloc méthodologie visible, quand l'angle est « les mieux notées ».

Classement « top N » compact (badge + médailles podium + nom + pill partenaire + CTA 3-mode), trié par Selectra Score, avec sa méthodologie intégrée en collapse et sa légende auto-conforme. Le caller calcule le classement (rows) et le passe via :items — le composant gère le rendu, les pills, les CTA et la méthodo. Remplace les blocs « top 10 » inline qui n'avaient ni pill partenaire ni CTA 3-mode.

Conformité (cf. convention-compliance.md) :

  • CTA 3-mode par item (§7−2) : Devis gratuit en ligne (partenaire + affilié web), 📞 numéro (partenaire + phone affi), Comparer en ligne (sinon).
  • Pill « Partenaire de Selectra » par item partenaire (§5.2 / §5.9 règle 1) — absence = non-partenaire.
  • Selectra Score = cadence mensuelle (§5.7) : légende « mis à jour en {mois} » maillée vers la page méthodo, jamais de date par row.
  • Méthodologie Selectra Score (40 % garanties / 40 % prix / 20 % avis) UNIVERSELLE — s'applique quelle que soit la verticale ; seuls les profils types changent (passés via :profiles).
  • CTA uniform width (min-width 210px) + alignement homogène (§5.9 Règle 10).
$items     (required) rows ordonnées : insurer_slug, insurer_name, partner(bool),
                      is_online(bool), is_phone(bool), formula_name(string, opt)
$vertical  auto | habitation | mutuelle-sante  (défaut mutuelle-sante)
$title     titre H3 au-dessus de la liste
$limit     nombre d'items rendus (défaut 10)
$panel     nombre d'assureurs étudiés (méthodologie)
$profiles  [['label' => 'Senior 65 ans', 'desc' => '…'], …]  profils types (méthodo)
$minProfilesNote  phrase de filtre éditorial (HTML léger)
$methodologyHeading  titre du collapse méthodologie
<x-slot>   contenu additionnel injecté en bas du collapse méthodologie
Exemple
<x-selectra-score-ranking
    :items="$top10"
    vertical="mutuelle-sante"
    title="Notre top 10 des meilleures mutuelles santé en {{ $annee }}"
    :panel="25"
    :profiles="$meilleureProfiles" />

Exemple vivant (top 5 santé, données live) ci-dessous :

Top 5 des meilleures mutuelles santé (démo)

1
Heyme Formule Base 1 Partenaire de Selectra
Devis gratuit en ligne
2
Acheel Formule Privilège F1 Partenaire de Selectra
Devis gratuit en ligne
3
Harmonie mutuelle Formule Protection Santé PSI111
Comparer en ligne
4
MeilleurTaux Formule Immédiat Santé Niveau 4
Comparer en ligne
5
Aésio Formule Santé Pro Niveau 3
Comparer en ligne

Classement établi selon le Selectra Score, mis à jour en juin 2026.

📋 Méthodologie de notre classement des meilleures mutuelles santé

Nos experts ont étudié les offres d'un panel de 25 assureurs afin d'établir ce classement des meilleures mutuelles santé.

Ce classement repose sur la moyenne des Selectra Score points obtenus par chaque formule sur 3 profils représentatifs :

  • Senior 65 ans : femme retraitée de 65 ans, vivant à Lille.
  • Famille : couple marié de 45 ans avec deux enfants, vivant à Caen.
  • Étudiant : homme étudiant de 22 ans, vivant à Bordeaux.

Les critères évalués par le Selectra Score (méthodologie identique sur toutes nos verticales d'assurance) :

  • Garanties (40 %) : niveau et étendue des couvertures par poste.
  • Prix (40 %) : positionnement du tarif par rapport à la moyenne du marché sur le profil.
  • Avis clients (20 %) : moyenne pondérée des avis vérifiés (Trustpilot, Avis Vérifiés, Opinion Assurances) par volume.

Comparateur habitation guidé x-habitation-comparator

🗺️ Data-vizhabitation
🎯 Quand l'utiliser — comparateur habitation guidé (questionnaire) embarqué, page habitation.

Mini-comparateur d'assurance habitation en 2 étapes (server-rendered via query params, SEO-friendly, faible mémoire) : statut (4 grandes cartes : locataire / propriétaire résidence principale / résidence secondaire / PNO) → logement (maison ou appartement) → top 3 des assureurs partenaires du profil résolu, triable par Selectra Score ou par prix. Utilisé sur /comparateur-assurance-habitation.

Conformité : les résultats sont délégués à x-goodassur-top-ranking (only-partners → §5.2 « sélection d'assureurs partenaires », CTA 3-mode §7−2, pills, légende Selectra Score mensuelle). Le comparateur ne rend aucun prix/date en propre. En tri par prix il passe price-level=1 (l'API home ne supporte pas sort=lowest_price).

$heading   (optional) H2 au-dessus du comparateur

statut    : locataire | proprietaire-principal | proprietaire-secondaire | pno
logement  : appartement | maison
tri       : score | prix  (défaut prix)
Exemple
<x-habitation-comparator />

Exemple vivant (étape 1) ci-dessous — les cartes naviguent via query params :

Bandeau conseiller (call center) x-conseiller-banner

💰 Convertirtransverse
🎯 Quand l'utiliser — bandeau « un conseiller vous accompagne » avec statut ouvert/fermé dynamique (config call-hours).

Bandeau « Parlez à un conseiller » (carte dégradé bleu) avec uniquement le CTA téléphone vers le call center — variante du design inline de /assurance-habitation, sans le bouton « Comparer / Devis ». Vertical-aware : numéro + URL de tracking depuis config('cms.cta-presets.verticals.{vertical}').

Conformité : lien rel="sponsored nofollow" + mention « Service gratuit Selectra — mise en relation et conseil indépendants » (§7.4). Aucune commission citée, aucun superlatif. Indicateur « disponible » selon les horaires du call center (lun-ven 8h-20h, sam 9h-18h).

$vertical  (défaut 'habitation') : clé de config('cms.cta-presets.verticals')
                                  → general | auto | habitation | mutuelle | animaux | emprunteur
$title     (optional) : override du H2
$eyebrow   (optional) : override du sur-titre (défaut « Parlez à un conseiller »)
Exemple
<x-conseiller-banner vertical="habitation" />

Exemple vivant (verticale habitation) ci-dessous :

Parlez à un conseiller

Un doute, une situation particulière ? Nos experts sont là pour vous aider.

Appel gratuit, sans engagement, du lundi au vendredi de 9h à 20h et le samedi de 9h à 18h.

Appel gratuitdisponible 09 75 18 39 45

Nos conseillers sont actuellement fermés — rappel aux heures d'ouverture.

Service gratuit Selectra — mise en relation et conseil indépendants.

Tableau standard x-table

📊 Comparertransverse
🎯 Quand l'utiliser — tableau éditorial à données figées non-API (correspondances, barèmes sourcés, comparatifs pédagogiques).

Wrapper standard pour tout tableau HTML inline (données figées, équivalences, glossaires, comparatifs hardcodés). Applique automatiquement le design unifié goodassur : outline bleu Selectra 2px, header bleu tinté + texte bleu uppercase centré, body zebra blanche / grise, cellules centrées horizontalement et verticalement, scroll horizontal mobile.

Quand utiliser quoi :

  • <x-pricing-table> → matrice assureur × prix API-driven (live data, pill partenaire, CTA 3-mode, dates par cellule, caption §5.3 auto).
  • <x-table> → tout tableau de données purs (âge chien, taux SS, équivalences, glossaire, tarifs figés étude tierce, etc.).

Conformité (cf. convention-compliance.md + skill /compliance-component) :

  • Caption obligatoire (§5.3) — toute affirmation chiffrée doit avoir une caption directement sous le tableau (`<p class="tbl-note">` ou prose équivalente) avec : date / période, critère de classement, source vérifiable (Insee, DREES, AVMA, étude PDF, etc.).
  • PAS de mention « Référencement gratuit » si aucun assureur n'est nommé dans le tableau (memory referencement-gratuit-only-when-named) — agrégat anonyme ⇒ rien à référencer.
  • Sources tierces citées explicitement (§6.1) — si les données viennent d'une étude externe (Lelynx, Argus, France Assureurs, AVMA, INSEE, DREES, Code des assurances), le mentionner avec lien rel="nofollow noopener" quand pertinent.
  • Données API ⇒ <x-pricing-table> (pas <x-table>). Si tu vois un chiffre dérivable de l'API hardcodé, créer une étude dans etudes/ et utiliser <x-fait> ou <x-pricing-table> (memory etudes-auto-detection).
  • Pas de partner pill ☑ — `<x-table>` ne sert PAS aux comparaisons d'assureurs. Si tu en as besoin, migre vers <x-pricing-table>.
  • Cohérence légende ↔ contenu (§5.3-bis) — la caption ne doit pas inventer un profil unique qui contredit la diversité du tableau, ni dupliquer une info déjà dans une colonne. Décrire seulement le périmètre commun + la méthodologie.
  • Pas de superlatif non sourcé (§6.2.bis) dans les en-têtes ou cellules (« la meilleure », « le moins cher ») hors méthodologie explicite.
$caption  (optional) Description accessible du tableau (sr-only)

Contenu via slot :  +  standard HTML.

À ajouter à côté du composant (pas dans le slot) :
  

Source : … (date, méthodologie).

Exemple
<x-table caption="Âge chien vs humain selon la taille">
    <thead>
        <tr>
            <th>Âge du chien</th>
            <th>Petit chien</th>
            <th>Chien moyen</th>
            <th>Grand chien</th>
        </tr>
    </thead>
    <tbody>
        <tr><td><strong>1 an</strong></td><td>20 ans</td><td>18 ans</td><td>16 ans</td></tr>
        <tr><td><strong>5 ans</strong></td><td>40 ans</td><td>45 ans</td><td>49 ans</td></tr>
    </tbody>
</x-table>

Exemple vivant ci-dessous :

Démo : âge chien vs humain selon la taille
Âge du chien Petit chien Chien moyen Grand chien
1 an20 ans18 ans16 ans
5 ans40 ans45 ans49 ans
10 ans60 ans75 ans96 ans
15 ans80 ans102 ans

Tableau prix assureur × formules x-pricing-table

📊 Comparertransverse
🎯 Quand l'utiliser — tableau de prix. Mode :insurers quand on NOMME des assureurs (pill + CTA 3-mode) ; mode générique :headers/:rows pour un barème pédagogique SANS assureur (Sécu, formule × garanties, fourchettes).⚠️ Plutôt simple liste à puces → x-icon-list.

Composant générique qui rend un tableau avec le visual goodassur unifié : outline bleu, header bleu tinté centré, zebra striping, cellules centrées. Trois modes : (1) mode générique :headers + :rows pour toute donnée statique (animaux, emprunteur, matrice pédagogique, etc.) — caller fournit headers et rows, le composant rend le visual unifié ; (2) profile-family=pno (forward vers tabs Appartement / Maison, data live) ; (3) profile-family=locataire (matrice live {Formule basse / intermédiaire / MRH} + sous-section Appartement vs Maison + pill partenaire + CTA 3-mode + date par cellule + caption §5.3). Le mode générique prend la priorité dès que :headers + :rows sont passés.

Conformité (cf. convention-compliance.md) :

  • CTA 3-mode par row (§7−2) : Devis gratuit en ligne (online affi), 📞 numéro (phone affi), Comparer en ligne (sinon).
  • Pill « Partenaire de Selectra » sous le nom de chaque assureur partenaire (§5.2 / §5.9 règle 1) — absence = non-partenaire.
  • Date « Mis à jour le DD/MM/YYYY » italique 10px sous CHAQUE prix (§5.6).
  • Caption auto en pied de chaque tableau (§5.3, 4 éléments) : panel, critère de classement, profil (persona), référencement gratuit. Mention badge ☑ seulement si au moins un partenaire est listé (§5.2).
  • Outline (border-t-2 gray-300) entre chaque ligne pour séparation visuelle marquée.
  • Variante locataire : « maison X % plus chère qu'appartement » calculé live depuis les moyennes du panel (pas de % hardcodé — memory no-unsourced-savings-claims).
$profileFamily  null | pno | locataire   (modes live)
$heading        (optional) H2 rendu au-dessus du composant
$limit          (optional int) nombre max de lignes
$headers        (générique / assureurs) array de strings — colonnes de DATA (HTML autorisé)
$rows           (mode générique) array d'arrays (chaque cellule = string ou HTML) — matrices PÉDAGOGIQUES uniquement
$caption        (générique / assureurs) string optionnel (HTML autorisé)
$insurers       (mode assureurs) array de rows ['slug','name','name_href'?,'cells'=>[...]] — pill partenaire + colonne « Devis » (CTA 3-mode) AUTO
$vertical       (mode assureurs) auto | habitation | mutuelle-sante | animaux (détecté depuis l'URL si null)
$insurerLabel   (mode assureurs) header de la colonne assureur (défaut 'Assureur')
Exemples
<x-pricing-table profile-family="locataire" />


<x-pricing-table profile-family="pno" />


<x-pricing-table profile-family="locataire" heading="Prix d'une assurance habitation locataire" />


<x-pricing-table
    :headers="['Formule', 'Prix mensuel', 'Taux remb.', 'Garanties']"
    :rows="[
        ['<strong>Basique</strong>', '2,29 à 12 €', '50 à 70 %', 'Maladie, accidents'],
        ['<strong>Intermédiaire</strong>', '12 à 30 €', '70 à 90 %', '+ examens'],
        ['<strong>Premium</strong>', '30 à 100 €', '90 à 100 %', '+ hospitalisation'],
    ]"
    caption="Prix moyens des formules d'assurance chien observés sur le marché en 2026." />

Exemple vivant — mode générique (rows statiques) :

Échelle indicative des prix observés sur le marché de la mutuelle pour chien en juin 2026.
Formule Prix mensuel Taux remb. Garanties typiques
Basique À partir de 2,29 € à 12 € 50 à 70 % Maladie, accidents — plafond faible
Intermédiaire 12 à 30 € 70 à 90 % + examens complémentaires
Premium 30 à 100 € 90 à 100 % + hospitalisation, obsèques, pharmacie

Mode assureurs :insurers — pour tout tableau STATIQUE qui nomme des assureurs avec un CTA (prix par formule, comparatif éditorial…). Au lieu de cellules HTML brutes en :rows, passe des rows structurées avec un slug : le composant auto-rend la pill partenaire (via insurer-lookup, robuste mono-produit anti-bug Luko §5.9 r9), la colonne « Devis » en CTA 3-mode (§7−2) et la légende §5.3. Les colonnes de data viennent de :headers, la chiffre reste éditoriale. ⚠️ Ne PAS coder un CTA à la main dans les cellules : le linter insurer_table_generic_mode le flagge.

Exemple
<x-pricing-table
    vertical="mutuelle-sante"
    insurer-label="Mutuelle"
    :headers="['Formule de base', 'Formule complète']"
    :insurers="[
        ['slug' => 'heyme',  'name' => 'Heyme',  'name_href' => '/heyme',  'cells' => ['9,90 €/mois', '29 €/mois']],
        ['slug' => 'acheel', 'name' => 'Acheel', 'name_href' => '/acheel', 'cells' => ['14 €/mois', '32 €/mois']],
    ]"
    caption="Tarifs indicatifs … Référencement gratuit." />

Exemple vivant — mode assureurs (pill + CTA 3-mode auto) :

Exemple de tableau d'assureurs en mode :insurers — pill partenaire et CTA 3-mode auto-dérivés. Référencement gratuit.
Mutuelle Formule de base Formule complète Devis
Heyme
Partenaire de Selectra
9,90 €/mois 29 €/mois Devis gratuit en ligne
Acheel
Partenaire de Selectra
14 €/mois 32 €/mois Devis gratuit en ligne
AXA
Partenaire de Selectra
25 €/mois 48 €/mois Devis gratuit en ligne

Exemple vivant — mode locataire (data live) :

Tarifs mensuels comparés sur 14 assureurs du panel Selectra Insurance, relevés le 29 avril 2026. Profil : couple marié de 40 ans, locataires d'un appartement de 50 m² (2 pièces) à Niort, capital mobilier 9 000 €, objets de valeur 5 000 €. Classement par prix croissant de la formule basse. Référencement gratuit.
# Assureur Formule basse Formule intermédiaire Formule MRH Devis
🥇 Luko
Partenaire de Selectra
6,17 €/mois
74,04 €/an Mis à jour le 05/02/2026
- 12,81 €/mois
153,72 €/an Mis à jour le 03/03/2026
Devis gratuit en ligne
🥈 Lemonade
Partenaire de Selectra
7,00 €/mois
84,00 €/an Mis à jour le 05/02/2026
- - Devis gratuit en ligne
🥉 Direct Assurance
Partenaire de Selectra
7,80 €/mois
93,60 €/an Mis à jour le 05/02/2026
8,72 €/mois
104,64 €/an Mis à jour le 26/02/2026
10,80 €/mois
129,60 €/an Mis à jour le 26/02/2026
Devis gratuit en ligne
4 Acheel
Partenaire de Selectra
7,92 €/mois
95,04 €/an Mis à jour le 05/02/2026
9,37 €/mois
112,44 €/an Mis à jour le 23/03/2026
- Devis gratuit en ligne
5 MACIF 10,56 €/mois
126,72 €/an Mis à jour le 05/02/2026
11,46 €/mois
137,52 €/an Mis à jour le 18/02/2026
20,75 €/mois
249,00 €/an Mis à jour le 18/02/2026
Comparer en ligne
6 AGPM - 10,58 €/mois
126,96 €/an Mis à jour le 05/02/2026
- Comparer en ligne
7 Leocare
Partenaire de Selectra
10,67 €/mois
128,04 €/an Mis à jour le 05/02/2026
15,13 €/mois
181,56 €/an Mis à jour le 23/03/2026
21,32 €/mois
255,84 €/an Mis à jour le 23/03/2026
Devis gratuit en ligne
8 Axa
Partenaire de Selectra
- 10,82 €/mois
129,84 €/an Mis à jour le 29/04/2026
- Devis gratuit en ligne
9 MAAF 11,29 €/mois
135,48 €/an Mis à jour le 05/02/2026
15,56 €/mois
186,72 €/an Mis à jour le 18/02/2026
- Comparer en ligne
10 Allianz
Partenaire de Selectra
11,58 €/mois
138,96 €/an Mis à jour le 23/03/2026
14,47 €/mois
173,64 €/an Mis à jour le 23/03/2026
28,90 €/mois
346,80 €/an Mis à jour le 23/03/2026
Devis gratuit en ligne
11 AG2R La Mondiale 12,59 €/mois
151,08 €/an Mis à jour le 05/02/2026
- - Comparer en ligne
12 MAIF 12,59 €/mois
151,08 €/an Mis à jour le 05/02/2026
14,79 €/mois
177,48 €/an Mis à jour le 19/02/2026
22,64 €/mois
271,68 €/an Mis à jour le 19/02/2026
Comparer en ligne
13 Crédit Agricole Assurance 12,72 €/mois
152,64 €/an Mis à jour le 23/03/2026
18,60 €/mois
223,20 €/an Mis à jour le 23/03/2026
26,96 €/mois
323,52 €/an Mis à jour le 23/03/2026
Comparer en ligne
14 April 14,77 €/mois
177,24 €/an Mis à jour le 23/03/2026
- - Comparer en ligne

Appartement vs maison : en formule basse, une maison coûte en moyenne 77 % de plus qu'un appartement chez les assureurs comparés (surface plus grande, risques cambriolage et intempéries accrus).

Tarifs mensuels de la formule basse comparés sur 12 assureurs du panel Selectra Insurance, relevés le 29 avril 2026. Appartement : couple de 40 ans, 50 m², 2 pièces, capital mobilier 9 000 €. Maison : couple de 40 ans, 90 m², 4 pièces, capital mobilier 16 000 €. Profils situés à Niort (79). Classement par prix croissant de la formule appartement. Référencement gratuit.
Assureur Appartement Maison Devis
Luko
Partenaire de Selectra
6,17 €/mois Mis à jour le 05/02/2026 11,59 €/mois Mis à jour le 05/02/2026 Devis gratuit en ligne
Lemonade
Partenaire de Selectra
7,00 €/mois Mis à jour le 05/02/2026 9,84 €/mois Mis à jour le 05/02/2026 Devis gratuit en ligne
Direct Assurance
Partenaire de Selectra
7,80 €/mois Mis à jour le 05/02/2026 14,10 €/mois Mis à jour le 05/02/2026 Devis gratuit en ligne
Acheel
Partenaire de Selectra
7,92 €/mois Mis à jour le 05/02/2026 12,46 €/mois Mis à jour le 05/02/2026 Devis gratuit en ligne
MACIF 10,56 €/mois Mis à jour le 05/02/2026 - Comparer en ligne
Leocare
Partenaire de Selectra
10,67 €/mois Mis à jour le 05/02/2026 22,69 €/mois Mis à jour le 05/02/2026 Devis gratuit en ligne
MAAF 11,29 €/mois Mis à jour le 05/02/2026 15,63 €/mois Mis à jour le 05/02/2026 Comparer en ligne
Allianz
Partenaire de Selectra
11,58 €/mois Mis à jour le 23/03/2026 19,26 €/mois Mis à jour le 05/02/2026 Devis gratuit en ligne
AG2R La Mondiale 12,59 €/mois Mis à jour le 05/02/2026 20,51 €/mois Mis à jour le 23/03/2026 Comparer en ligne
MAIF 12,59 €/mois Mis à jour le 05/02/2026 20,51 €/mois Mis à jour le 19/02/2026 Comparer en ligne
Crédit Agricole Assurance 12,72 €/mois Mis à jour le 23/03/2026 18,56 €/mois Mis à jour le 23/03/2026 Comparer en ligne
April 14,77 €/mois Mis à jour le 23/03/2026 38,88 €/mois Mis à jour le 23/03/2026 Comparer en ligne

Citation chiffrée d'une étude Selectra x-fait

📖 Expliquertransverse
🎯 Quand l'utiliser — citer un chiffre comparatif/agrégat SOURCÉ (registre etudes/) avec citation auto + tooltip, pour tout chiffre dérivable de l'API.⚠️ Plutôt chiffre non sourçable → ne pas l'écrire.

Permet de citer dans la prose un chiffre calculé en direct depuis une étude Selectra (registre dans sites/goodassur.com/etudes/) et ajoute automatiquement un footer de citation conforme §6.1 (auteur, année, méthodologie). Le composant substitue {value} dans son slot par la valeur live calculée par le callable compute de l'étude, et accepte d'autres placeholders {fact:autre_clé} pour piocher plusieurs faits de la même étude.

Pourquoi : évite les chiffres hardcodés stale dans les articles (un « X fois plus cher » dans la prose, un « Y % d'écart »…), garantit la fraîcheur, mutualise la source entre plusieurs pages d'un même cluster, et respecte le linter §6.1 (chiffre + source dans la même phrase / caption directe). Si l'étude ou le fait n'existe pas, le slot s'affiche tel quel — la page ne casse jamais.

$study         slug du fichier d'étude (sans .php) — ex: "surprime-malusses-vs-bonusses"
$fact          clé du fait principal substitué par {value}
$showCitation  (optional, default true) — rendre le footer de citation
Exemple
<x-fait study="surprime-malusses-vs-bonusses" fact="ratio_average">
    À couverture équivalente, un conducteur malussé paie en moyenne
    <strong>{value} fois plus cher</strong> qu'un bonussé.
</x-fait>

Pour créer une nouvelle étude : ajouter sites/goodassur.com/etudes/{slug}.php avec un title, une methodology, et un compute callable qui retourne un tableau de faits. Cf. sites/goodassur.com/etudes/README.md.

Comparatif assureurs animaux x-animal-insurance-comparison

📊 Compareranimaux
🎯 Quand l'utiliser — comparatif d'assurances animaux (chien/chat), verticale animaux (whitelist partenaires statique).

Comparatif multi-assureur pour assurance chien / chat. Cas particulier : la donnée animaux n'est PAS dans l'API Insurance (panel finance/santé humaine uniquement), donc le catalogue est porté en dur dans le composant — prix d'appel + 2-3 formules clés par assureur, date du snapshot éditorial (01/02/2025). À refresh manuellement ≤ 12 mois.

Conformité (cf. convention-compliance.md) :

  • Visual identique aux autres tableaux goodassur : outline bleu 2px, header bleu tinté centré, zebra striping, cellules centrées.
  • CTA 3-mode par row (§7−2) : online affi → « Devis gratuit en ligne » (`/selection/{slug}/chien-chat`) ; phone affi → « 📞 numéro » ; sinon → « 📞 01 88 24 67 70 » (call-center animaux Goodassur via `/selection/fr-ii-cc-gdaanimal`).
  • Pill « Partenaire de Selectra » sous le nom de chaque assureur partenaire (§5.2). Placeholder invisible sur les non-partenaires pour aligner les rows (§5.9 règle 8).
  • Date « Mis à jour le 01/02/2025 » italique 10px sous CHAQUE prix (§5.6) — snapshot éditorial figé.
  • Caption auto en pied (§5.3, 4 éléments) : panel, critère de classement (prix d'appel croissant), date, référencement gratuit.
  • Bouton CTA `btn-cta` orange avec `min-width:210px` — uniforme sur la liste (§5.9 règle 10).
  • Pas de mention « commission », pas de claim chiffré sans source.
$species   'chien' | 'chat' | null  (défaut null = tous animaux pertinents)
$limit     int|null : nombre max de lignes (défaut = tous)
$heading   string|null : H2 rendu au-dessus du composant
Exemples
<x-animal-insurance-comparison />


<x-animal-insurance-comparison species="chat" />


<x-animal-insurance-comparison species="chien" :limit="5" />


<x-animal-insurance-comparison species="chat" heading="Comparatif assurances chat 2025" />

Exemple vivant (catalogue chat, tous assureurs) :

Comparatif de 8 assureurs pour chat, classés par prix d'appel croissant. Prix et formules constatés sur les sites des assureurs au 01/02/2025. Référencement gratuit.
Assureur Prix d'appel Formules & garanties Devis
logo Acheel
Partenaire de Selectra
À partir de
2,29 €/mois Mis à jour le 01/02/2025
  • Maladie Remb. 60–80 % · plafond 1 000 €
  • Maladie + Accident Remb. 70–90 % · plafond 1 500 €
Devis gratuit en ligne
logo Bulle Bleue
À partir de
7,90 €/mois Mis à jour le 01/02/2025
  • Bleu Essentiel Remb. 80 % · plafond 1 000 €
  • Bleu Tranquille Remb. 80 % · plafond 1 500 €
  • Topaze Remb. 80 % · plafond 2 000 €
Comparer en ligne
logo Fidanimo
À partir de
8,00 €/mois Mis à jour le 01/02/2025
  • Cuivre Remb. 50 % (accident seul) · plafond 1 000 €
  • Argent Remb. 70 % · plafond 1 000 €
  • Diamant Remb. 90 % · plafond 1 500–2 000 €
Comparer en ligne
logo Dalma
À partir de
8,99 €/mois Mis à jour le 01/02/2025
  • Niveau 1 Remb. 60 % · plafond 1 200 €
  • Niveau 3 Remb. 80 % · plafond 1 800 €
  • Niveau 5 Remb. 100 % · plafond 2 500 €
Comparer en ligne
logo Lovys
À partir de
9,00 €/mois Mis à jour le 01/02/2025
  • Essentiel Remb. 60 % · plafond 1 000 €
  • Équilibre Remb. 70 % · plafond 1 200 €
  • Parfait Remb. 80 % · plafond 1 500 €
Comparer en ligne
logo Assuropoil
À partir de
15,70 €/mois Mis à jour le 01/02/2025
  • Préventive Remb. 80 % (hors actes courants) · plafond —
  • Intégrale Remb. 80 % · plafond 1 300–2 500 €
  • Confort Remb. 100 % · plafond 1 300–2 500 €
Comparer en ligne
logo SantéVet
À partir de
16,00 €/mois Mis à jour le 01/02/2025
  • Light Remb. 60 % · plafond 1 100 €
  • Confort Remb. 70 % · plafond 1 500 €
  • Optimal Remb. 100 % · plafond 2 500 €
Comparer en ligne
logo AnimOmut
À partir de
16,25 €/mois Mis à jour le 01/02/2025
  • Access Remb. 100 % (sans chirurgie) · plafond 800 €
  • Protect Remb. 70 % · plafond 1 000–2 000 €
  • Protect + Remb. 80 % · plafond 1 000–2 000 €
Comparer en ligne

Diagramme prix auto par profil × formule x-car-pricing-chart

📊 Comparerauto
🎯 Quand l'utiliser — visualiser les prix auto par profil × formule sous forme de diagramme, sur une page prix/tarif auto.

Barres horizontales du prix moyen mensuel d'assurance auto (€/mois), croisées par profil de conducteur (Bonussé, Petit rouleur, Jeune conducteur, Malussé) et par formule (Au tiers, Tiers+, Tous risques). Alimenté en direct par InsuranceApi::carPricingByProfile().

Conformité : caption auto §5.3 sous le graphique (panel, critère, profils représentatifs, référencement gratuit). Aucun prix codé en dur.

$heading   (optional) H2 affiché au-dessus (défaut « Prix moyen par profil et par formule »)
$profiles  (optional) override the 4 default driver profiles (key/emoji/label)
$levels    (optional) override the 3 default formula levels
Exemple
<x-car-pricing-chart />

Exemple vivant ci-dessous :

Prix moyen par profil et par formule

Comparaison des tarifs moyens (€/mois) sur notre panel d'assureurs auto.

Au tiers Tiers + Tous risques
Bonussé
Au tiers
22,63 €
Tiers +
29,21 €
Tous risques
40,91 €
Jeune conducteur
Au tiers
65,66 €
Tiers +
78,05 €
Tous risques
115,35 €
Malussé
Au tiers
59,58 €
Tiers +
76,35 €
Tous risques
100,77 €

Prix moyens mensuels par profil de conducteur et par formule, comparés sur 24 assureurs de notre panel, relevés le 8 avril 2026. Profils représentatifs : bonussé 0,50 (homme 50 ans, Nantes, Clio essence), petit rouleur 6 000 km/an (femme 35 ans, Lyon, C3 Aircross essence), jeune conducteur 2 ans (femme 21 ans, Antibes, 206+ essence), malussé 1,09 (homme 40 ans, Tours, 208 essence).

Prix auto par profil de conducteur x-car-pricing-by-profile

📊 Comparerauto
🎯 Quand l'utiliser — afficher le prix auto par profil de conducteur (jeune, malussé, bonus…) en onglets, page prix ou page profil auto.

Switcher onglets par profil de conducteur. Pour chaque profil : hero prix moyen XL, grille des 3 formules (Au tiers / Tiers+ / Tous risques) avec min-max, narrative persona (collapsible) et CTA simulateur. Pattern hérité du composant PNO compliant.

Conformité (§5.3 / §5.6) : date « Mis à jour le DD/MM/YYYY » sous le prix moyen central de chaque tab ; caption auto en pied de chaque tab (4 éléments : date + critère + profil + référencement gratuit). Aucun prix codé en dur.

$heading  (optional) H2 affiché au-dessus
$tabs     (optional) override the 4 default driver profile tabs
Exemple
<x-car-pricing-by-profile />

Exemple vivant ci-dessous :

💰 Le prix de l'assurance auto par profil de conducteur

Le prix d'une assurance auto varie fortement selon le profil du conducteur. Sélectionnez le vôtre pour voir les tarifs moyens par formule sur notre panel d'assureurs.

Choisissez votre profil
Prix moyen pour un profil ✅ bonussé
30,92 €
par mois · soit environ 371 €/an
Mis à jour le 08/04/2026
Détail par formule
Le moins cher
Au tiers
Couverture minimale légale : responsabilité civile + défense pénale.
22,63 €/mois
soit 14 € à 33 € selon l'assureur
Équilibré
Tiers +
Tiers + vol, incendie, bris de glace, catastrophes naturelles.
29,21 €/mois
soit 13 € à 76 € selon l'assureur
Couverture max
Tous risques
Indemnisation même en cas de sinistre responsable, dommages tous accidents.
40,91 €/mois
soit 26 € à 111 € selon l'assureur
Comment ce prix est calculé — méthodologie & profil de devis
Profil testé
Homme de 50 ans, à Nantes
Clio 3 essence (2012), 5 CV. Assuré depuis 35 ans, parking collectif couvert. Bonus 0,50 depuis plus de 20 ans, 0 sinistre. Trajets mixtes, 12 000 km/an.
Pourquoi ce niveau de prix
Un conducteur bonussé représente le moins de risques pour les assureurs : il a démontré une conduite responsable pendant au moins 13 ans pour atteindre le coefficient 0,50.
Comment payer moins
Comparez régulièrement les offres — certains assureurs (Axa, Direct Assurance, L'Olivier Assurance) proposent même de bloquer votre bonus à 0,50 à vie.

Prix moyens mensuels par formule (au tiers / tiers+ / tous risques) comparés sur 18 assureurs de notre panel qui proposent une formule au profil « Bonussé », relevés le 8 avril 2026. Profil utilisé : Homme de 50 ans, à Nantes — Clio 3 essence (2012), 5 CV. Assuré depuis 35 ans, parking collectif couvert. Bonus 0,50 depuis plus de 20 ans, 0 sinistre. Trajets mixtes, 12 000 km/an. Classement par hauteur de prime (moins cher à gauche).

Tarifs indisponibles pour ce profil sur notre panel actuel. Lancez une simulation personnalisée.
Comment ce prix est calculé — méthodologie & profil de devis
Profil testé
Femme de 35 ans, à Lyon
Citroën C3 Aircross PureTech 110 Shine essence (2018), 6 CV. Assurée depuis 17 ans, garage privé couvert. Bonus 0,50 depuis 4 ans, 0 sinistre. Trajets loisirs, 6 000 km/an.
Pourquoi ce niveau de prix
Les petits rouleurs utilisent moins leur véhicule, ce qui réduit les risques d'accident et d'usure. Les assureurs adaptent la tarification au kilométrage réel.
Comment payer moins
Évaluez précisément votre kilométrage annuel : un dépassement des prévisions entraîne des pénalités. Idéal si vous alternez voiture et transports en commun.

Prix moyens mensuels par formule (au tiers / tiers+ / tous risques) comparés sur 0 assureur de notre panel qui proposent une formule au profil « Petit rouleur », relevés le 8 avril 2026. Profil utilisé : Femme de 35 ans, à Lyon — Citroën C3 Aircross PureTech 110 Shine essence (2018), 6 CV. Assurée depuis 17 ans, garage privé couvert. Bonus 0,50 depuis 4 ans, 0 sinistre. Trajets loisirs, 6 000 km/an. Classement par hauteur de prime (moins cher à gauche).

Prix moyen pour un profil 🧑‍🎓 jeune conducteur
86,35 €
par mois · soit environ 1 036 €/an
Mis à jour le 08/04/2026
Détail par formule
Le moins cher
Au tiers
Couverture minimale légale : responsabilité civile + défense pénale.
65,66 €/mois
soit 45 € à 107 € selon l'assureur
Équilibré
Tiers +
Tiers + vol, incendie, bris de glace, catastrophes naturelles.
78,05 €/mois
soit 28 € à 159 € selon l'assureur
Couverture max
Tous risques
Indemnisation même en cas de sinistre responsable, dommages tous accidents.
115,35 €/mois
soit 102 € à 134 € selon l'assureur
Comment ce prix est calculé — méthodologie & profil de devis
Profil testé
Femme de 21 ans, à Antibes
Peugeot 206+ 1.1 Access Lite essence (2011), 4 CV. Assurée depuis 2 ans en conducteur secondaire, permis obtenu le 01/01/2023, jardin privé. Bonus 0,90, 0 sinistre. Trajets mixtes, 12 000 km/an.
Pourquoi ce niveau de prix
Les statistiques montrent que les jeunes conducteurs sont impliqués dans une majorité des accidents graves. Les assureurs se prémunissent de ce risque par des cotisations élevées.
Comment payer moins
La conduite accompagnée réduit la prime de 20&nbsp;% en moyenne. Privilégiez une voiture de faible valeur et une formule au tiers durant les 3 années de jeune permis.

Prix moyens mensuels par formule (au tiers / tiers+ / tous risques) comparés sur 7 assureurs de notre panel qui proposent une formule au profil « Jeune conducteur », relevés le 8 avril 2026. Profil utilisé : Femme de 21 ans, à Antibes — Peugeot 206+ 1.1 Access Lite essence (2011), 4 CV. Assurée depuis 2 ans en conducteur secondaire, permis obtenu le 01/01/2023, jardin privé. Bonus 0,90, 0 sinistre. Trajets mixtes, 12 000 km/an. Classement par hauteur de prime (moins cher à gauche).

Prix moyen pour un profil ❌ malussé
78,90 €
par mois · soit environ 947 €/an
Mis à jour le 08/04/2026
Détail par formule
Le moins cher
Au tiers
Couverture minimale légale : responsabilité civile + défense pénale.
59,58 €/mois
soit 32 € à 84 € selon l'assureur
Équilibré
Tiers +
Tiers + vol, incendie, bris de glace, catastrophes naturelles.
76,35 €/mois
soit 32 € à 130 € selon l'assureur
Couverture max
Tous risques
Indemnisation même en cas de sinistre responsable, dommages tous accidents.
100,77 €/mois
soit 59 € à 173 € selon l'assureur
Comment ce prix est calculé — méthodologie & profil de devis
Profil testé
Homme de 40 ans, à Tours
Peugeot 208 1.6 VTI 120 Allure essence (2015), 6 CV. Assuré depuis 25 ans, garage fermé personnel. Malus 1,09, 2 sinistres responsables depuis 2023. Trajets mixtes, 12 000 km/an.
Pourquoi ce niveau de prix
Les sinistres responsables indiquent un comportement à risque pour l'assureur. Les conducteurs malussés coûtent plus cher en indemnisations, ce qui justifie la hausse des cotisations.
Comment payer moins
Optez pour une voiture moins puissante le temps du malus. Avec 2 ans de conduite responsable, le malus retombe à 1 (règle de descente rapide), ce qui ouvre l'accès à des tarifs plus abordables.

Prix moyens mensuels par formule (au tiers / tiers+ / tous risques) comparés sur 7 assureurs de notre panel qui proposent une formule au profil « Malussé », relevés le 8 avril 2026. Profil utilisé : Homme de 40 ans, à Tours — Peugeot 208 1.6 VTI 120 Allure essence (2015), 6 CV. Assuré depuis 25 ans, garage fermé personnel. Malus 1,09, 2 sinistres responsables depuis 2023. Trajets mixtes, 12 000 km/an. Classement par hauteur de prime (moins cher à gauche).

Top N auto avec les 3 formules x-car-top-formulas

📊 Comparerauto
🎯 Quand l'utiliser — montrer un top N auto avec les 3 formules (tiers / intermédiaire / tous risques) côte à côte.

Switcher onglets par profil de conducteur. Pour chaque profil : top N cards d'assureurs les moins chers, avec leurs 3 prix par formule sur la même card — pratique pour voir l'écart de couverture chez le même assureur.

Conformité (§5.2 / §5.6 / §7.−2) : pill « Partenaire de Selectra » sous chaque assureur partenaire (§5.2) ; CTA 3-mode par card (§7.−2) : Devis gratuit en ligne (online affi), 📞 numéro (phone affi), Comparer en ligne (sinon) ; date « Mis à jour le DD/MM/YYYY » sous CHAQUE prix (§5.6) ; caption auto par tab.

$heading   (optional) H2 affiché au-dessus
$limit     (default 3) nombre d'offres affichées par profil
$profiles  (optional) override the 4 default driver profile tabs
Exemple
<x-car-top-formulas />


<x-car-top-formulas :limit="5" />

Exemple vivant ci-dessous :

🏆 Notre top 3 d'assurances auto avec les 3 formules

Pour les 3 offres les moins chères du panel, voici le prix dans chacune des 3 formules — pratique pour voir l'écart de couverture chez le même assureur. Sélectionnez votre profil pour ajuster les tarifs.

Choisissez votre profil
Assureur
Axa
Partenaire de Selectra
Au tiers non proposé
Tiers +
12,77 €/mois Mis à jour le 05/02/2026
Tous risques non proposé
Assureur
Direct Assurance
Partenaire de Selectra
Au tiers
13,79 €/mois Mis à jour le 26/02/2026
Tiers +
18,36 €/mois Mis à jour le 05/02/2026
Tous risques
29,22 €/mois Mis à jour le 05/02/2026
Assureur
Assu 2000
Au tiers
13,81 €/mois Mis à jour le 05/02/2026
Tiers +
18,43 €/mois Mis à jour le 05/02/2026
Tous risques non proposé

Top 3 offres las moins chères de notre panel pour un profil « Bonussé », relevées le 23 mars 2026. Profil utilisé : Homme de 50 ans, à Nantes, Clio 3 essence, bonus 0,50. Classement par prix mensuel croissant de la formule « au tiers » (à défaut, la formule disponible la moins chère). Référencement gratuit.

Pas d'offres disponibles pour ce profil sur notre panel actuel.
Assureur
Axa
Partenaire de Selectra
Au tiers non proposé
Tiers +
28,36 €/mois Mis à jour le 05/02/2026
Tous risques non proposé
Assureur
Direct Assurance
Partenaire de Selectra
Au tiers
44,55 €/mois Mis à jour le 26/02/2026
Tiers +
55,58 €/mois Mis à jour le 05/02/2026
Tous risques
108,56 €/mois Mis à jour le 05/02/2026
Assureur
L'olivier Assurance
Partenaire de Selectra
Au tiers
47,00 €/mois Mis à jour le 05/02/2026
Tiers +
53,00 €/mois Mis à jour le 05/02/2026
Tous risques
102,00 €/mois Mis à jour le 05/02/2026

Top 3 offres las moins chères de notre panel pour un profil « Jeune conducteur », relevées le 23 mars 2026. Profil utilisé : Femme de 21 ans, à Antibes, 206+ essence, permis 2 ans. Classement par prix mensuel croissant de la formule « au tiers » (à défaut, la formule disponible la moins chère). Référencement gratuit.

Assureur
Direct Assurance
Partenaire de Selectra
Au tiers
31,54 €/mois Mis à jour le 26/02/2026
Tiers +
40,66 €/mois Mis à jour le 05/02/2026
Tous risques
67,61 €/mois Mis à jour le 05/02/2026
Assureur
Axa
Partenaire de Selectra
Au tiers non proposé
Tiers +
31,77 €/mois Mis à jour le 05/02/2026
Tous risques non proposé
Assureur
L'olivier Assurance
Partenaire de Selectra
Au tiers
36,00 €/mois Mis à jour le 05/02/2026
Tiers +
47,00 €/mois Mis à jour le 05/02/2026
Tous risques
59,00 €/mois Mis à jour le 05/02/2026

Top 3 offres las moins chères de notre panel pour un profil « Malussé », relevées le 23 mars 2026. Profil utilisé : Homme de 40 ans, à Tours, 208 essence, malus 1,09, 2 sinistres responsables. Classement par prix mensuel croissant de la formule « au tiers » (à défaut, la formule disponible la moins chère). Référencement gratuit.

Tableau comparatif x-insurance-comparison-table

📊 Comparertransverse
🎯 Quand l'utiliser — tableau comparatif multi-assureurs (bandeau profil + ☑ partenaire + dates) sur une page classement/comparatif nominative.

Tableau multi-assureurs avec critères personnalisables (prix, score, garanties, plafonds). Idéal pour les pages comparatives éditoriales.

$product       auto | habitation | mutuelle
$profile       nom du profil (ex: Famille, Senior, Jeune conducteur)
$insurers      array|csv — slugs d'assureurs (acheel, alan, april, …)
$priceLevel    0 | 1 | 2 | 'all'
$criteria      array|csv — colonnes additionnelles (ex: hospitalisation,dentaire,optique)
Exemples
<x-insurance-comparison-table
    product="mutuelle"
    profile="Senior"
    :insurers="['alan','april','harmonie-mutuelle','malakoff-humanis']"
    :criteria="['hospitalisation','dentaire','optique']"
/>


<x-insurance-comparison-table product="auto" profile="Famille" />

Remboursements santé x-insurance-health-reimbursement

📊 Comparersanté
🎯 Quand l'utiliser — comparer le remboursement d'un poste santé (optique, dentaire…) entre assureurs, page remboursement santé.

Cartes multi-assureurs montrant les remboursements pour un poste santé donné (hospitalisation, soins courants, dentaire, optique, audition, médecines douces, prévention).

$profile       nom du profil (ex: Famille, Senior)
$insurerSlugs  array|csv — assureurs à afficher
$healthPost    hospitalisation | soins-courants | dentaire | optique | audition | medecines-douces | prevention
$priceLevel    0 | 1 | 2 | 'all'
$sortBy        null | refund_desc
Exemple
<x-insurance-health-reimbursement
    profile="Senior 65 ans"
    :insurer-slugs="['swiss-life','acheel','direct-assurance','gan','malakoff-humanis','april']"
    health-post="Dentaire"
/>

BIEN-ÊTRE +

Partenaire de Selectra
Logo Direct Assurance

132,77 €/mois

Tarif mis à jour le 05/02/2026
  • Orthodontie remboursée par la Sécurité sociale : 305 %
  • Plafond sur le poste dentaire par an et par bénéficiaire : 1600 €
  • Soins et prothèses dentaires non remboursés par la Sécurité sociale : 300 € par an
  • Prothèses dentaires remboursées par l'AMO : 305 %
  • Soins dentaires : 305 %
  • Equipement 100% santé dentaire : Frais réels
Garanties mises à jour le 20/04/2026

Intégral

Partenaire de Selectra
Logo Malakoff Humanis

163,39 €/mois

Tarif mis à jour le 05/02/2026
  • Orthodontie remboursée par la Sécurité sociale : 200 € par semestre
  • Plafond sur le poste dentaire par an et par bénéficiaire : 1500 € (1ère et 2ème année) / 1600€ (3ème et 4ème année) / 1700€ (5ème année et suivantes)
  • Soins et prothèses dentaires non remboursés par la Sécurité sociale : 250 € par an / +50€ si réseau Kalixia
  • Prothèses dentaires remboursées par l'AMO : 300 % +50% si réseau Kalixia
  • Soins dentaires : 100 %
  • Equipement 100% santé dentaire : Frais réels
Garanties mises à jour le 20/04/2026

Active F4

Partenaire de Selectra
Logo Acheel

188,70 €/mois

Tarif mis à jour le 05/02/2026
  • Orthodontie remboursée par la Sécurité sociale : 200 % (An1) / 225% (An2) / 250% (An3+)
  • Plafond sur le poste dentaire par an et par bénéficiaire : 1500 € (An1) / 1750€ (An2) / 2000€ (An3+)
  • Soins et prothèses dentaires non remboursés par la Sécurité sociale : 50 € par an
  • Inlays / Onlays : 100 %
  • Prothèses dentaires remboursées par l'AMO : 200 % (An1) / 225% (An2) / 250% (An3+)
  • Soins dentaires : 100 %
  • Equipement 100% santé dentaire : Frais réels
Garanties mises à jour le 06/05/2026

Niveau 5

Partenaire de Selectra
Logo Gan

284,43 €/mois

Tarif mis à jour le 05/02/2026
Score Selectra C
  • Orthodontie remboursée par la Sécurité sociale : 400 % 600€ pour les plus de 16 ans
  • Prothèses dentaires remboursées par l'AMO : 400 € ou 450€ avec réseau Sévéane
  • Soins dentaires : 100 %
  • Equipement 100% santé dentaire : Frais réels
  • Soins et prothèses dentaires non remboursés par la Sécurité sociale : 600 € 650€ réseau Sévéane
Garanties mises à jour le 20/04/2026

Santé Zen niveau 6

Partenaire de Selectra
Logo April

312,06 €/mois

Tarif mis à jour le 05/02/2026
Score Selectra E
  • Orthodontie remboursée par la Sécurité sociale : 250 %
  • Plafond sur le poste dentaire par an et par bénéficiaire : 2500 € au-delà 100%
  • Inlays / Onlays : 200 %
  • Prothèses dentaires remboursées par l'AMO : 400 %
  • Soins dentaires : 200 %
  • Equipement 100% santé dentaire : Frais réels
Garanties mises à jour le 06/05/2026

Sélection d'assureurs partenaires de Selectra retenus pour leur niveau de remboursement dentaire, classés par prix croissant. Garanties de la formule la plus complète affichées (couverture maximale). Remboursements exprimés sur la base des tarifs conventionnels de la Sécurité sociale (BRSS) en vigueur en juin 2026. Profil utilisé pour les devis : Profil : Femme retraitée de 65 ans, célibataire, sans enfant, vivant à Lille. Affiliée au régime général de la sécurité sociale.. Source du barème : ameli.fr. Référencement gratuit.

Comparatif garantie unique × N assureurs (santé) x-health-coverage-comparison

📊 Comparersanté
🎯 Quand l'utiliser — comparer UNE garantie santé précise sur N assureurs (inclus / option / plafond), page garantie santé.

Tableau qui compare une garantie santé spécifique (médecin spécialiste OPTAM, médecines douces, médecin spécialiste non-OPTAM…) sur l'ensemble des assureurs santé du panel. Une ligne par couple assureur × formule qui inclut (ou propose en option) la garantie, avec son taux/%BR ou son forfait €, son statut (incluse/option), et le prix mensuel par profil. Variante multi-garanties (OPTAM + non-OPTAM côte à côte) via CSV de slugs.

Conformité : caption auto §5.3 (panel, profil, critère de tri, date) ; pill « Partenaire de Selectra » sous chaque assureur partenaire (§5.2) ; CTA 3-mode par row (§7.−2) ; date sous chaque %BR (garantie) ET sous chaque prix (§5.6) ; alimenté en direct par InsuranceApi::healthCoverageRows(), jamais de valeur en dur.

$coverageSlugs  slug unique OU CSV ("medecin-specialiste-optam" OU
                "medecin-specialiste-optam,medecin-specialiste-non-optam")
$heading        (optional) H2 rendu au-dessus du composant
$intro          (optional) paragraphe sous le H2
$emptyMessage   (optional) message si aucune offre ne matche
$product        (default 'sante') — vertical pour les URLs partenaires CTA
$labelBySlug    (optional JSON-encoded array) — libellé court par slug
                (ex: {"medecin-specialiste-optam":"OPTAM",...})
Exemples
<x-health-coverage-comparison
    coverage-slugs="medecin-specialiste-optam"
    heading="Mutuelles qui couvrent les dépassements d'honoraires" />


<x-health-coverage-comparison
    coverage-slugs="medecin-specialiste-optam,medecin-specialiste-non-optam"
    label-by-slug='{"medecin-specialiste-optam":"OPTAM","medecin-specialiste-non-optam":"Non OPTAM"}' />

Comparatif garantie unique × N assureurs (habitation) x-home-coverage-comparison

📊 Comparerhabitation
🎯 Quand l'utiliser — comparer UNE garantie habitation précise (ex. assistance serrurerie) sur N assureurs, page garantie/sinistre habitation.

Twin habitation de <x-health-coverage-comparison>. Compare une garantie habitation précise (assistance clés perdues, dégât des eaux, équipements de jardin, etc.) sur l'ensemble des assureurs habitation du panel. Une ligne par formule incluant la garantie, avec son plafond, son statut incluse/option, et les prix mensuels du profil sélectionné. Sélecteur de profil et de tri côté client (Alpine, pas de reload).

Conformité : pill partenaire §5.2 ; CTA 3-mode §7.−2 par row ; date sous chaque plafond ET sous chaque prix (§5.6) ; caption unique §5.3 (profil resserré, tri, date, équité, référencement) ; alimenté en direct par InsuranceApi::homeCoverageRows().

$coverageSlug   slug API de la garantie à comparer (single, pas de CSV ici)
$heading        (optional) H2 rendu au-dessus du composant
$intro          (optional) paragraphe sous le H2
$emptyMessage   (optional) message si aucune offre ne matche
$product        (default 'habitation')
Exemple
<x-home-coverage-comparison
    coverage-slug="assistance-cles-perdues-volees-ou-brisees"
    heading="Assurances habitation qui couvrent les clés perdues" />

Annuaire des assureurs x-insurer-directory

⭐ Preuvetransverse
🎯 Quand l'utiliser — annuaire des assureurs (sélection non exhaustive datée, blacklist), page hub/annuaire.

Grille filtrable de toutes les marques assureur référencées dans le panel (auto + habitation + santé), avec logo, lien vers la page hub /{slug}, produits couverts, type (traditionnel / néo-courtier / courtier), année de création et CTA téléphone partenaire si disponible. Filtres Alpine côté client : par produit (auto/habitation/santé), par type (traditionnel/néo/courtier), tri A→Z / récents / partenaires d'abord.

Conformité (§3 + §5.6 + §6.1) : exclusion défensive des acteurs bannis (mentions FINASS interdites) ; numéros téléphone jamais inventés — exclusivement depuis sites/goodassur.com/config/insurers.php, masqué si 'TODO' ; caption de pied avec mention « sélection non exhaustive » (§5.1) + mois courant (§5.6) ; aucune mention « API » ni « commission » (memories no-api-plumbing-leak + no-commission-mention).

$heading        (optional) H2 rendu au-dessus du composant
$intro          (optional) paragraphe sous le H2
$emptyMessage   (optional) si aucun assureur n'est référencé
$hideFicheFor   (optional array) — slugs à masquer du lien fiche (ex: redirections)
Exemple
<x-insurer-directory
    heading="Tous les assureurs référencés sur Goodassur"
    intro="Filtrez par produit, type ou tri pour identifier l'assureur qui colle à votre profil." />

Simulateur RAC x-insurance-rac-simulator

🧮 Outilsanté
🎯 Quand l'utiliser — simulateur de reste à charge (équipement, soins), pages remboursement santé.

Calculatrice « reste à charge » : l'utilisateur saisit le coût d'un soin, le composant calcule le RAC et propose les 3 meilleures mutuelles pour le réduire.

$categorie  equipement | dentaire | hospitalisation | imagerie | analyses | paramedical | consultations-generalistes | consultations-specialistes | prevention | cure-thermale  (slug catégorie, optionnel)
$profile    profil par défaut (par défaut « Famille »)
Exemple
<x-insurance-rac-simulator categorie="equipement" />

Lettre de résiliation x-insurance-resignation-letter

🧮 Outiltransverse
🎯 Quand l'utiliser — générateur de lettre de résiliation (questionnaire + PDF), pages résiliation (différenciation forte vs SERP).

Sélecteur de modèle de lettre de résiliation par situation (loi Hamon, échéance annuelle, déménagement, etc.) avec téléchargement PDF.

$vertical  habitation | auto | mutuelle
$default   slug de la situation pré-sélectionnée (optionnel)
Exemple
<x-insurance-resignation-letter vertical="auto" />

Lettre de préavis logement x-preavis-letter-builder

🧮 Outilhabitation
🎯 Quand l'utiliser — générateur de lettre de préavis (congé locataire) sur les pages location/préavis. Détermine le délai 1 ou 3 mois selon la situation, cite la base légale et produit un PDF personnalisé (différenciation forte vs SERP de modèles statiques).

Sélecteur de situation (zone tendue, logement meublé, motif personnel réduisant le préavis, cas général) avec questionnaire, aperçu live et téléchargement PDF généré dans le navigateur. Aucune donnée transmise.

$default   slug de la situation pré-sélectionnée (zone-tendue | meuble | motif-reduit | standard, optionnel)
1. Sélectionnez votre situation

Préavis applicable :

2. Renseignez vos informations

3. Vérifiez et téléchargez votre lettre

Lettre recommandée avec accusé de réception

Objet :

Madame, Monsieur,

Je vous prie d'agréer, Madame, Monsieur, l'expression de mes salutations distinguées.

Modèle à titre indicatif, vérifié en juin 2026 et conforme à la loi n° 89-462 du 6 juillet 1989 (articles 15 et 25-8). Tous les champs sont modifiables avant téléchargement ; le PDF est généré dans votre navigateur, aucune donnée n'est transmise à Selectra. Adaptez la lettre à votre situation avant envoi.

4. Les justificatifs à joindre

Pour un préavis d'un mois, la loi impose d'indiquer le motif et d'en joindre la preuve. Ajoutez la pièce ci-dessous à votre courrier recommandé.

Selon votre motif :

  • Mutation, premier ou nouvel emploi : attestation de l'employeur ou contrat de travail ;
  • Perte d'emploi : lettre de licenciement, fin de CDD ou rupture conventionnelle ;
  • RSA ou AAH : attestation de la CAF ou de la MSA ;
  • État de santé : certificat médical ;
  • Logement social : notification d'attribution ;
  • Violences : ordonnance de protection, récépissé de plainte ou décision de justice.
Exemple
<x-preavis-letter-builder default="meuble" />

Demande d'attestation d'assurance habitation x-insurance-attestation-letter

🧮 Outiltransverse
🎯 Quand l'utiliser — générateur de demande d'attestation (PDF), pages attestation.

Générateur interactif de lettre de demande d'attestation d'assurance habitation envoyée par un propriétaire/bailleur à son locataire (article 7 de la loi du 6 juillet 1989). Questionnaire bailleur + locataire + adresse du logement + date du bail. Aperçu live + téléchargement PDF généré côté client via jsPDF (aucune donnée transmise au serveur).

Aucune prop. Le composant gère lui-même son état (Alpine x-data).
Exemple
<x-insurance-attestation-letter />

1. Renseignez vos informations

Vous (bailleur)

Votre locataire

2. Vérifiez et téléchargez votre lettre

Lettre recommandée avec accusé de réception

Objet :

Madame, Monsieur,

Je vous prie d'agréer, Madame, Monsieur, l'expression de mes salutations distinguées.

Modèle à titre indicatif, vérifié en juin 2026 et conforme à l'article 7 de la loi n° 89-462 du 6 juillet 1989. Tous les champs sont modifiables avant téléchargement ; le PDF est généré dans votre navigateur (aucune donnée transmise à goodassur). Adaptez le contenu à votre situation personnelle avant envoi.

3. Conseils pour l'envoi

  1. Privilégiez la lettre recommandée avec accusé de réception (LRAR) pour avoir une preuve d'envoi opposable.
  2. Joignez une copie du bail signé pour rappeler la date de prise d'effet du contrat de location.
  3. Laissez au locataire un délai raisonnable (15 jours ouvrés) pour vous transmettre son attestation.
  4. À défaut de réponse, adressez une mise en demeure par huissier : c'est l'étape obligatoire avant toute action en résiliation du bail pour défaut d'assurance.

Cadre légal : article 7 de la loi n° 89-462 du 6 juillet 1989 et loi Alur du 24 mars 2014 (art. 6).

Demande de relevé d'information auto x-insurance-releve-letter

🧮 Outilauto
🎯 Quand l'utiliser — générateur de demande de relevé d'information d'assurance auto (PDF), page relevé d'information / changement d'assureur.

Générateur interactif de lettre de demande de relevé d'information d'assurance auto (aussi appelé relevé de situation ou déclaration d'antécédents), de l'assuré vers son assureur. Questionnaire assuré + assureur + n° de contrat + immatriculation. Aperçu live + téléchargement PDF généré côté client via jsPDF (aucune donnée transmise au serveur). Référence : Code des assurances (délai de 15 jours). Jumeau auto de <x-insurance-attestation-letter>.

Aucune prop. Le composant gère lui-même son état (Alpine x-data).
Exemple
<x-insurance-releve-letter />

1. Renseignez vos informations

Vous (assuré)

Votre assureur auto

2. Vérifiez et téléchargez votre lettre

Lettre recommandée avec accusé de réception

Objet :

Madame, Monsieur,

Je vous prie d'agréer, Madame, Monsieur, l'expression de mes salutations distinguées.

Modèle à titre indicatif, vérifié en juin 2026. Votre assureur est tenu de vous délivrer votre relevé d'information sous 15 jours (Code des assurances). Tous les champs sont modifiables avant téléchargement ; le PDF est généré dans votre navigateur (aucune donnée transmise à goodassur). Adaptez le contenu à votre situation avant envoi.

3. Conseils pour l'envoi

  1. Avant d'envoyer un courrier, vérifiez votre espace client en ligne ou l'application de votre assureur : le relevé y est souvent téléchargeable immédiatement.
  2. Si vous passez par courrier, privilégiez la lettre recommandée avec accusé de réception (LRAR) pour disposer d'une preuve d'envoi.
  3. Votre assureur dispose d'un délai de 15 jours pour vous transmettre le relevé d'information à compter de la réception de votre demande.
  4. En cas de refus ou d'erreur sur le document, saisissez d'abord le service réclamation, puis le Médiateur de l'Assurance mentionné dans votre contrat.

Cadre légal : Code des assurances (obligation de délivrance du relevé d'information sous 15 jours).

Carte d'offre unique x-insurance-offer-card

📊 Comparertransverse
🎯 Quand l'utiliser — carte détaillée d'UNE offre (prix, garanties, Selectra Score, CTA), focus sur une offre précise.

Affiche une seule offre (assureur + profil) avec les détails (prix, garanties principales, CTA). Utilisée sur les pages assureur ou les comparatifs ciblés.

$product               auto | habitation | mutuelle
$insurer               slug de l'assureur
$profile               nom du profil (par défaut « Famille »)
$priceLevel            0 | 1 | 2 | 'all'
$offer                 offre pré-hydratée (alternative à $insurer)
$withProfileSelector   affiche un sélecteur de profil (false)
$defaultProfile        profil par défaut quand le sélecteur est actif
$allowedProfiles       restreint la liste du sélecteur
Exemple
<x-insurance-offer-card product="auto" insurer="acheel" />

CTA téléphone x-phone-cta

💰 Convertirtransverse
🎯 Quand l'utiliser — bloc/bouton d'appel téléphonique tracké (monétisation call : mention Selectra, Annonce si non-partenaire).

Bandeau d'appel avec horaire d'ouverture en direct. Le numéro et l'URL de tracking dépendent de la verticale.

$vertical     habitation | auto | mutuelle | animaux | general
$title        titre (par défaut « Besoin d'aide ? »)
$description  texte explicatif
$hours        ligne horaires (par défaut « Appel non surtaxé · du lundi au vendredi… »)
Disponible actuellement

Un expert Selectra vous aide gratuitement

Nos experts en assurance sont prêts à vous guider pour trouver la meilleure offre adaptée à vos besoins.

Nos experts vous accompagnent gratuitement par téléphone :

01 86 65 20 05

Appel non surtaxé · du lundi au vendredi de 9h à 20h, samedi de 9h à 18h

Service gratuit Selectra — mise en relation et conseil indépendants.
Code
<x-phone-cta vertical="auto" />
<x-phone-cta
    vertical="mutuelle"
    title="Trouvez la meilleure mutuelle santé"
    description="Nos conseillers comparent gratuitement les offres."
/>

CTA affiliation x-affiliate-cta

💰 Convertirtransverse
🎯 Quand l'utiliser — bouton d'affiliation web « Devis gratuit en ligne » vers /selection/{slug}/{verticale}.

Bloc de redirection vers une landing partenaire (Acheel, April, etc.). Logo, badge, titre, description, liste de bénéfices et bouton.

$title        titre principal
$description  paragraphe sous le titre
$badge        petit badge en tête (ex: « Devis gratuit et sans engagement »)
$href         URL de destination (selection/...)
$ctaLabel     libellé du bouton
$logo         URL du logo partenaire
$logoAlt      alt text du logo
$features     array — bullets de bénéfices
Exemple
<x-affiliate-cta
    title="Protégez votre chien dès aujourd'hui"
    description="Comparez les meilleures assurances chien en 2 minutes."
    badge="Devis gratuit"
    href="/selection/acheel/chien-chat"
    cta-label="Obtenir mon devis"
    logo="https://images.goodassur.com/fr-insurance/logos/acheel-xs.png"
    :features="[
        'Couverture vétérinaire jusqu\'à 2 000 €/an',
        'Sans questionnaire de santé',
        'Souscription 100 % en ligne',
    ]"
/>

CTA carte grise x-carte-grise-cta

💰 Convertirauto
🎯 Quand l'utiliser — OBLIGATOIRE sur toute page /assurance-auto/carte-grise* (juste après le lead) : service agréé, numéro tracking, horaires dynamiques.

Bloc CTA dédié au service carte grise. Auto-affiche le numéro de téléphone correspondant.

$title        titre du bloc
$description  texte explicatif
Exemple
<x-carte-grise-cta
    title="Faites votre carte grise en 5 minutes"
    description="Service en ligne agréé ANTS — paiement sécurisé."
/>

Service de souscription assureur x-monetisation-service-souscription

💰 Convertirtransverse
🎯 Quand l'utiliser — bloc service de souscription/accompagnement Selectra.

Encadré orange in-content positionnant Selectra comme service de souscription d'un assureur partenaire. Badge + titre + bouton phone CTA + légende horaires italiques. Le numéro est résolu en cascade : (1) override phone/phone-href, (2) CS partenaire via slug dans sticky-footer.phones — ex. Acheel, Axa, Luko by Allianz Direct —, (3) fallback pool vertical (général / mutuelle / auto / habitation). Les horaires sont générés automatiquement depuis cms.call-hours.schedule.

$insurerName   nom affiché (ex. "Acheel")
$insurerSlug   override slug (par défaut : insurerName lowercased)
$vertical      fallback pool si pas de CS partenaire (général | mutuelle | auto | habitation…)
$phone         override numéro affiché
$phoneHref     override URL de tracking (ex. /selection/fr-ii-cs-gdaacheel)
$badge         override badge (par défaut « Souscription {insurerName} »)
$title         override titre (par défaut « Appelez gratuitement le service de souscription {insurerName} »)
Souscription Acheel

Appelez gratuitement le service de souscription Acheel

du lundi au vendredi de 9h à 20h et le samedi de 9h à 18h

Exemples
<x-monetisation-service-souscription insurer-name="Acheel" />


<x-monetisation-service-souscription
    insurer-name="Direct Assurance"
    insurer-slug="direct_assurance"
/>


<x-monetisation-service-souscription
    insurer-name="Heyme"
    vertical="mutuelle"
/>

Grille devis x-devis-grid

💰 Convertirtransverse
🎯 Quand l'utiliser — grille de devis multi-verticales, uniquement sur pages hub/transverses.⚠️ Plutôt page mono-produit → interdit.

Grille à 3 cartes (Mutuelle / Auto / Habitation par défaut) qui dirige vers les comparateurs. À utiliser comme bloc « passage à l'action » en bas d'article.

$items  array de cartes — chaque item = ['icon' => '🩺', 'name' => 'Mutuelle', 'href' => '/...', 'cta' => 'Devis gratuit']
$title  titre optionnel au-dessus de la grille
Exemple
<x-devis-grid title="Comparer en 2 minutes" />


<x-devis-grid :items="[
    ['icon' => '🚗', 'name' => 'Auto',       'href' => '/selection/comparateur-assurance-auto',       'cta' => 'Devis auto'],
    ['icon' => '🏠', 'name' => 'Habitation', 'href' => '/selection/comparateur-assurance-habitation', 'cta' => 'Devis habitation'],
    ['icon' => '🐕', 'name' => 'Animaux',    'href' => '/selection/acheel/chien-chat',                'cta' => 'Devis animal'],
]" />

Podium top 3 x-podium-top3

📊 Comparertransverse
🎯 Quand l'utiliser — mettre en scène un Top 3 en ouverture d'une page classement/comparatif (3 cartes, médailles, pill + CTA).

Cartes or / argent / bronze pour le top 3 d'un classement. Médaille, logo, badge, libellé, CTA. Utilisé en tête des pages classement.

$items        array de 3 items — chacun ['name', 'slug', 'cta_href', + optionnels: 'logo', 'cta_label', 'text', 'name_href']
$title        titre au-dessus du podium
$description  paragraphe descriptif
Exemple
<x-podium-top3
    title="Notre top 3 des meilleures mutuelles santé"
    :items="[
        ['name' => 'Alan',              'slug' => 'alan',              'cta_href' => '/selection/comparateur-assurance-sante'],
        ['name' => 'Heyme',             'slug' => 'heyme',             'cta_href' => '/selection/heyme/mutuelle-sante'],
        ['name' => 'Harmonie Mutuelle', 'slug' => 'harmonie-mutuelle', 'cta_href' => '/selection/comparateur-assurance-sante'],
    ]"
/>

Classement prix x-price-ranking

📊 Comparertransverse
🎯 Quand l'utiliser — classement par prix issu d'une étude statique (légende éditoriale datée), angle « les moins chères » sur données figées.

Liste éditoriale ordonnée d'assureurs avec économie %, prix de référence, marqueur ☑ partenaire auto-détecté depuis l'API et CTA 3-mode universel (online affi → phone affi → comparateur de la verticale). Plus dense que le podium — utilisée pour les top 5 / top 10. Phase 1.9 compliance refactor (2026-05-25) : les anciennes clés per-item cta_href et cta_label sont désormais ignorées, le 3-mode prend la main systématiquement, le marqueur ☑ s'affiche pour chaque partenaire et la mention « ☑ indique un partenaire de Selectra. » est append-ée à la légende ssi ≥1 partenaire dans la liste.

$items      array — chaque item ['rank', 'name', 'slug', 'name_href', 'price', 'discount', 'medal'?]
              - rank        int (1/2/3 = médaille auto, autre = badge numéroté)
              - name        nom commercial (obligatoire)
              - slug        slug API (obligatoire pour lookup partenaire ; fallback 1er segment non-routing de name_href)
              - name_href   lien sur le nom (SDP)
              - price       string (affichée en colonne « Prix moyen / mois »)
              - discount    string (affichée en colonne « Économie / marché »)
$legend     ligne explicative sous la liste (gx_decode appliqué pour &nbsp;)
$footerCta  CTA en pied de bloc ['href', 'label'?]
$vertical   'auto' | 'habitation' | 'mutuelle-sante' | 'animaux' (auto-détectée depuis l'URL si null)
Exemple
<x-price-ranking
    vertical="mutuelle-sante"
    legend="Étude Selectra 2025, panel de 17 assureurs."
    :items="[
        ['rank' => 1, 'name' => 'Acheel', 'slug' => 'acheel', 'name_href' => '/acheel/mutuelle-sante', 'discount' => '-25,47%', 'price' => '20,52 €'],
        ['rank' => 2, 'name' => 'Alan',   'slug' => 'alan',   'name_href' => '/alan',                'discount' => '-22,91%', 'price' => '23,22 €'],
    ]"
/>

Liste de classement x-rank-list

📊 Comparertransverse
🎯 Quand l'utiliser — liste classée générique (rang + nom + CTA) quand aucun composant verticale-spécifique ne convient.

Composant générique de classement : empilement de lignes rang · nom · sous-texte · CTA, médailles 🥇🥈🥉 sur le top 3 et background alterné au-delà. Reproduit le pattern .ga-rank historiquement inliné dans /mutuelle-sante/meilleure et le tableau top 10 senior. Phase 1.10 compliance refactor (2026-05-26) : nouvelle prop :source qui auto-rend une légende .tbl-note en pied (méthodologie + date + panel), avec mention ☑ partenaire conditionnelle si ≥1 item.is_partner=true. Séparateur entre nom et sous-texte changé de em-dash « — » (interdit convention.md L63) à middle dot « · ».

$items   array — chaque item :
              - name        string (requis)
              - sub         string (optionnel) — sous-texte gris
              - caption     string (optionnel) — caption 10px italique gris (per-item, ex. « Mis à jour le X »)
              - is_partner  bool   (optionnel) — affiche le ☑ Selectra-check.svg avant le nom
              - cta_href    string (optionnel) — URL du CTA, sinon pas de bouton
              - cta_label   string (optionnel) — défaut 'Devis gratuit'
              - cta_rel     string (optionnel) — défaut 'sponsored nofollow noopener'
              - cta_target  string (optionnel) — défaut '_blank'
              - name_href   string (optionnel) — si fourni, le nom devient un lien
$title   string (optionnel) — H3 visuel au-dessus de la liste
$source  string (optionnel mais RECOMMANDÉE) — méthodologie + date + panel,
         rendue en `.tbl-note` sous la liste. HTML léger autorisé.
         Auto-append « ☑ indique un partenaire de Selectra » si ≥1 partner.

Notre top 5 des meilleures mutuelles santé

1
Heyme · Formule Ambre Partenaire de Selectra
Devis gratuit
2
Alan · Senior Essentiel
Devis gratuit
3
Harmonie Mutuelle · Protection Santé
Devis gratuit
4
Matmut · Corps + Tête
Devis gratuit
5
Aesio · Santé Particuliers
Devis gratuit

Classement éditorial Selectra sur 17 assureurs, profil Senior 65 ans, mis à jour en juin 2026.

Code
<x-rank-list
    title="Notre top 5 des meilleures mutuelles santé"
    source="Classement éditorial Selectra sur 17 assureurs, profil Senior 65 ans, mis à jour en {{ $mois }}."
    :items="[
        ['name' => 'Heyme', 'sub' => 'Formule Ambre', 'is_partner' => true, 'cta_href' => '/selection/heyme/mutuelle-sante', 'name_href' => '/heyme'],
        ['name' => 'Alan',  'sub' => 'Senior Essentiel', 'cta_href' => '/selection/comparateur-assurance-sante'],
        ...
    ]"
/>

Tableau formules mutuelle par profil x-mutuelle-formulas-table

📊 Comparersanté
🎯 Quand l'utiliser — top mutuelles santé avec sélecteur de profil (live), page meilleure/comparatif santé ou prix moyens par profil.

Classement dynamique des meilleures formules de mutuelle santé par profil. Sélecteur GET ?profile=… qui recharge la page (chaque profil = URL crawlable distincte, longue traîne SEO). Tri strict par Selectra Score points DESC + tiebreak alphabétique stable. Composant utilisé sur /mutuelle-sante/meilleure (tous profils health) et /mutuelle-sante/senior/classement-meilleure (4 profils seniors). Paramétrable par n'importe quelle liste de profils.

$profiles         string[]|null (defaut null = tous profils health découverts via l'API)
$defaultProfile   string|null (defaut null = 1er profil de la liste)
$limit            int (defaut 10)
$excludeInsurers  string[] (defaut [])
$queryParam       string (defaut 'profile')
$selectorLabel    string (defaut 'Voir le classement pour :')

Notre top 10 des meilleures mutuelles santé pour Senior 65 ans en juin 2026

1
Heyme · Ambre Partenaire de Selectra
Devis gratuit en ligne
2
Alan · Senior Essentiel
Comparer en ligne
3
Harmonie mutuelle · Protection Santé PSI111
Comparer en ligne
4
Acheel · Essentiel F1 Partenaire de Selectra
Devis gratuit en ligne
5
Malakoff Humanis · Intermédiaire Partenaire de Selectra
📞 01 88 24 67 60
6
MeilleurTaux · Immédiat Santé Niveau 1
Comparer en ligne
7
Direct Assurance · LIBERTÉ + Partenaire de Selectra
Devis gratuit en ligne
8
MeilleurTaux · Immédiat Santé Niveau 4
Comparer en ligne
9
Aésio · Santé Particuliers Niveau 1
Comparer en ligne
10
April · Santé Zen niveau 1 Partenaire de Selectra
📞 01 86 26 99 46

Classement établi selon le Selectra Score pour le profil Senior 65 ans, mis à jour en juin 2026. Critères : 40 % prix, 40 % garanties, 20 % avis clients.

Code
<x-mutuelle-formulas-table default-profile="Famille" />


<x-mutuelle-formulas-table
    :profiles="['Senior 65 ans', 'Senior 75 ans', 'Senior 85 ans', 'Senior 92 ans']"
    default-profile="Senior 65 ans"
    selector-label="Classement pour les seniors de :"
/>


<x-mutuelle-formulas-table :profiles="['Famille', 'Chômeur', 'Étudiant']" />

Classement mutuelles les moins chères par profil x-mutuelle-cheapest-ranking

📊 Comparersanté
🎯 Quand l'utiliser — classement des mutuelles santé les moins chères (live), page « mutuelle pas chère ».

Jumeau de <x-mutuelle-formulas-table> mais trié par prix ASC au lieu de Selectra Score. Affiche le prix par row (à gauche du CTA) avec la date d'update du prix en italique gris dessous quand l'API la fournit (champ canonique formulables[].profileables[].updated_at, §5.7). Sélecteur GET ?cheapest_profile=… identique. Tri sur le meilleur prix de chaque assureur (formule d'entrée de gamme), un assureur unique par row. Composant utilisé sur /mutuelle-sante/tns (5 profils TNS) et réutilisable sur toutes les pages mutuelle santé.

$profiles         string[]|null (defaut null = tous profils health découverts via l'API)
$defaultProfile   string|null (defaut null = 1er profil de la liste)
$limit            int (defaut 5)
$excludeInsurers  string[] (defaut [])
$queryParam       string (defaut 'cheapest_profile')
$selectorLabel    string (defaut 'Voir les moins chères pour :')

Notre top 5 des mutuelles santé les moins chères pour TNS 30 ans

1
SMENO · Mut M
23,80 €/mois
Comparer en ligne
2
MAAF · Besoin 1
23,89 €/mois
Comparer en ligne
3
Lovys · Essentielle
27,07 €/mois
Comparer en ligne
4
Harmonie mutuelle · Pro 1-1
27,78 €/mois
Comparer en ligne
5
MACIF · Économique
28,30 €/mois
Comparer en ligne

Classement par prix croissant sur 5 assureurs comparés pour le profil TNS 30 ans. Référencement gratuit. Source : devis effectués sur les sites des assureurs.

Code
<x-mutuelle-cheapest-ranking
    :profiles="['TNS 20 ans', 'TNS 30 ans', 'TNS 40 ans', 'TNS 50 ans', 'TNS 60 ans']"
    default-profile="TNS 30 ans"
    :limit="5"
    selector-label="Voir les moins chères pour le profil TNS :"
/>


<x-mutuelle-cheapest-ranking
    :profiles="['Senior 65 ans', 'Senior 75 ans', 'Senior 85 ans']"
    default-profile="Senior 65 ans"
    :limit="5"
/>


<x-mutuelle-cheapest-ranking :limit="10" />
Compliance §5.7 — date par row : la date affichée sous chaque prix vient strictement de formulables[].profileables[].updated_at du couple (formule × profil). Pas de fallback vers formulables[].updated_at (= date garanties, différente sémantiquement) ni vers offer.updated_at (bumpé par toute modif marketing). Si l'API ne renseigne pas profileables[].updated_at pour un row, aucune date n'est affichée pour ce row — convention explicite : « ne rien afficher plutôt que de poser une date imprécise depuis un autre champ ».

La moins chère par profil (cartes, multi-verticale) x-cheapest-by-profile

📊 Comparermulti-verticalecartes
🎯 Quand l'utiliser — montrer en un coup d'œil l'offre la moins chère pour CHAQUE profil/segment (grille de cartes, 1 carte = 1 profil) : tranches d'âge senior, types de conducteur, types de logement, reco par profil… Multi-verticale via vertical= (auto / habitation / mutuelle-sante). Plutôt x-mutuelle-cheapest-ranking pour un top N classé sur un seul profil sélectionnable.

Grille de cartes « l'offre la moins chère pour chaque profil/segment ». Une carte par profil passé en prop ; chaque carte montre l'assureur le moins cher SUR CE PROFIL (logo, formule, prix, CTA). Réutilisable sur les 3 verticales (la prop vertical pilote le pool d'offres, le chemin CTA affilié et le comparateur). Tout est live depuis l'API, rien de hardcodé. Design : outline orange + bandeau-titre orange par carte. CTA 3-mode + pill partenaire + placeholder d'alignement + date du prix par carte (profileables[].updated_at, §5.7) + légende .tbl-note conforme (Référencement gratuit + source). Pas de Selectra Score affiché sur les cartes (donc pas mentionné en légende).

$vertical        'auto' | 'habitation' | 'mutuelle-sante' (defaut 'mutuelle-sante')
$profiles        string[] noms de profils API à comparer (defaut 4 tranches senior)
$profileLabels   array map profil → libellé affiché (defaut [])
$noun            string nom produit pour la légende (defaut dérivé de la verticale)
$priceUnit       string unité affichée après le prix (defaut '/mois')
$excludeInsurers string[] (defaut [])
Sénior 65 ans
Logo Direct Assurance
Partenaire de Selectra
Formule ESSENTIELLE
60,33 €/mois
Prix mis à jour le 23/02/2026
Devis gratuit en ligne
Sénior 75 ans
Logo SMENO
Formule Mut M
63,33 €/mois
Prix mis à jour le 05/02/2026
Comparer en ligne
Sénior 85 ans
Logo SMENO
Formule Mut M
63,33 €/mois
Prix mis à jour le 05/02/2026
Comparer en ligne
Sénior 92 ans
Logo SMENO
Formule Mut M
63,33 €/mois
Prix mis à jour le 05/02/2026
Comparer en ligne

Pour chaque profil, l'offre la moins chère en mutuelle santé parmi les assureurs comparés, classée par prix croissant. Référencement gratuit. Source : devis effectués sur les sites des assureurs.

Code
<x-cheapest-by-profile
    vertical="mutuelle-sante"
    price-unit="/mois"
    :profiles="['Senior 65 ans', 'Senior 75 ans', 'Senior 85 ans', 'Senior 92 ans']"
    :profile-labels="[
        'Senior 65 ans' => 'Sénior 65 ans',
        'Senior 75 ans' => 'Sénior 75 ans',
        'Senior 85 ans' => 'Sénior 85 ans',
        'Senior 92 ans' => 'Sénior 92 ans',
    ]" />


<x-cheapest-by-profile
    vertical="auto"
    :profiles="['Jeune conducteur', 'Bonussé', 'Malussé']" />
Compliance : alignement des cartes via flex flex-col h-full + CTA mt-auto (§5.9 règle 10) ; pill partenaire conditionnelle + placeholder invisible pour les non-partenaires (règle 8) ; statut partenaire via OfferDataExtractor::isPartner (anti-bug Luko, règle 9) ; date du prix par carte depuis profileables[].updated_at (§5.7). Pas de Selectra Score rendu sur les cartes → la légende n'en parle pas.

Top 3 mutuelles x-mutuelle-rembours-top3

📊 Comparersanté
🎯 Quand l'utiliser — top 3 mutuelles sur un poste de remboursement santé (3 cartes), page remboursement/poste santé.

Trois cartes côte à côte avec deux métriques chacune (ex: forfaits dentaire + optique). Générique mutuelle / auto / habitation — verticale auto-détectée via l'URL ou via la prop :vertical. Compliance §5.2 / §5.7 / §7−2 — CTA 3-mode dérivé par-item depuis l'API, marqueur ☑ partenaire et caption auto si :legend absent.

$items     array — name, name_href (→ slug), logo, metric1/2_{label,value}
$legend    optionnel — texte éditorial ; mention partenaire append-ée auto
$topic     optionnel — poste de remboursement, injecté dans la caption auto
$vertical  optionnel — 'auto' | 'habitation' | 'mutuelle-sante' (défaut: URL-derived)
🥇 N°1 Apivia
Apivia Partenaire de Selectra
Forfait médecine douce 275 €/an
Par séance 55 € × 5
📞 01 88 24 67 62
🥈 N°2 Heyme
Heyme Partenaire de Selectra
Forfait médecine douce 200 €/an
Formule Opale
Devis gratuit en ligne
🥉 N°3 Aésio
Aésio
Forfait médecine douce 180 €/an
Par séance 60 € × 3
Comparer en ligne

Classement éditorial Selectra sur le remboursement de l'ostéopathie — couvertures relevées en juin 2026.

Code
<x-mutuelle-rembours-top3
    topic="le remboursement de l'ostéopathie"
    :items="[ /* 3 items avec name, name_href, logo, metric1/2 */ ]"
/>

Ranking mutuelles remboursement (table) x-mutuelle-rembours-ranking

📊 Comparersanté
🎯 Quand l'utiliser — même angle que le top 3 mais en tableau (plus d'assureurs) sur un poste santé.

Classement éditorial de N mutuelles santé pour le remboursement d'un poste spécifique (médecine douce, lentilles, parodontie, audition…). Format table avec design unifié <x-pricing-table> (outline bleu, header tinté, zebra) MAIS automatisé : médaille auto sur le top 3 (🥇🥈🥉), nom assureur lié à /{slug}, pill « Partenaire de Selectra » auto-détectée via lookup multi-univers (anti-bug Luko), CTA 3-mode par row (online affi → « Devis gratuit en ligne » ; phone affi → « 📞 {phone} » ; sinon → « Comparer en ligne »), caption auto §5.3 (4 éléments). Twin table de <x-mutuelle-rembours-top3> (qui est 3 cartes côte à côte).

$title         optionnel — H3 au-dessus de la table
$topic         optionnel — interpolé dans la caption auto (ex. "médecine douce")
$metricLabel   label colonne métrique principale (ex. "🦷 Forfait parodontie")
$metric2Label  optionnel — label colonne métrique secondaire (ex. "👨‍⚕️ Consultation")
$items         array — chaque item :
                  slug        (required) — slug assureur, lien + lookup partner auto + CTA
                  name        (required) — nom commercial
                  formula     (required) — nom de la formule
                  metric      (required) — valeur métrique principale (ex. "300 €/an")
                  metric2     (optional) — valeur métrique secondaire
                  is_partner  (optional) — override le lookup auto
                  is_online   (optional) — override flag online affi
                  is_phone    (optional) — override flag phone affi
$panel         int|null — nombre d'assureurs étudiés (caption)
$note          string|null — note éditoriale en pied (HTML léger autorisé)

📊 Classement des meilleures mutuelles ostéopathie (2026)

Classement Goodassur établi en juin 2026 sur le poste « ostéopathie » sur 34 assureurs étudiés. Critère de tri : hauteur du forfait dédié décroissante. Référencement gratuit.
Assureur Formule 👨‍⚕️ Par séance 🌿 Forfait ostéopathie
🥇 Apivia
Partenaire de Selectra
Premium 55 € × 5 275 €/an 📞 01 88 24 67 62
🥈 Heyme
Partenaire de Selectra
Opale 40 € × 5 200 €/an Devis gratuit en ligne
🥉 AÉSIO Niveau 4 60 € × 3 180 €/an Comparer en ligne

Classement Goodassur établi en juin 2026 sur le poste « ostéopathie » sur 34 assureurs étudiés. Critère de tri : hauteur du forfait dédié décroissante. Référencement gratuit.

Sélection établie sur la base des devis effectués sur les sites des assureurs.

Code
<x-mutuelle-rembours-ranking
    title="📊 Classement des meilleures mutuelles ostéopathie (2026)"
    topic="ostéopathie"
    metric-label="🌿 Forfait ostéopathie"
    metric2-label="👨‍⚕️ Par séance"
    :panel="34"
    :items="[
        ['slug' => 'apivia', 'name' => 'Apivia', 'formula' => 'Premium',  'metric' => '275 €/an', 'metric2' => '55 € × 5'],
        ['slug' => 'heyme',  'name' => 'Heyme',  'formula' => 'Opale',    'metric' => '200 €/an', 'metric2' => '40 € × 5'],
        ['slug' => 'aesio',  'name' => 'AÉSIO',  'formula' => 'Niveau 4', 'metric' => '180 €/an', 'metric2' => '60 € × 3'],
    ]"
/>

Carte n°1 mutuelle x-top-mutuelle-remboursement

📊 Comparersanté
🎯 Quand l'utiliser — mettre en avant LA mutuelle n°1 sur un poste (carte mono-assureur), santé uniquement.

Carte « meilleure mutuelle de l'année » avec badge, logo, description, bouton devis et bloc téléphone (heures ouvrées partenaires uniquement). Compliance §5.2 / §5.7 / §7−2 / §7.4 — bloc téléphone masqué pour non-partenaires, mention « Service Selectra non-partenaire de X » auto-injectée, caption éditoriale en pied avec mois courant.

$insurer        slug de l'assureur (la résolution partenaire/affi vient de l'API)
$insurerName    nom affiché (fallback: config('cms.insurers.{slug}.name'))
$logoUrl        URL du logo (défaut: fr-insurance/logos/{slug}-xs.png)
$insurerHref    lien vers la page assureur (défaut: /{slug})
$topic          thème éditorial (ex: « le remboursement des cures thermales »)
$description    paragraphe descriptif
$year           année du badge (défaut: année courante)

# Anciens props gardés pour rétro-compat, IGNORÉS si pas de surcharge utile :
$phoneNumber, $phoneHref          → résolus depuis config('cms.insurers.{slug}.phone')
$ctaDevisHref, $ctaDevisLabel     → résolus via la règle 3-mode universelle
🏆 Meilleure mutuelle 2026

Alan élue meilleure mutuelle 2026 pour le remboursement des cures thermales

Alan rembourse les cures thermales jusqu'à 700 € par an sur sa formule Diamant — l'un des meilleurs niveaux du marché pour cette dépense atypique.

🔎 Comparer en ligne

Service gratuit Selectra — non-partenaire de Alan.

Avis Goodassur sur le remboursement des cures thermales mis à jour en juin 2026.

Code
<x-top-mutuelle-remboursement
    insurer="alan"
    insurer-href="/alan"
    topic="le remboursement des cures thermales"
    description="..."
    :year="2026"
/>

Jauges Selectra Score x-selectra-score-gauges

⭐ PreuveSDP
🎯 Quand l'utiliser — les 5 jauges du Selectra Score éditorial (tarifs, garanties, service, app, sinistres) d'un assureur, SDP/fiche expert.

Affiche les 5 notes éditoriales du Selectra Score (Tarifs / Garanties / Service / App mobile / Gestion sinistres) pour un assureur, sous forme de mini-jauges colorées + valeur numérique. Source : sites/goodassur.com/data/assureurs/{slug}.jsonscore_breakdown.

⚠️ Source éditoriale (évaluation experts goodassur), distincte de la lettre Selectra Score servie par l'API insurance-api. Les deux peuvent diverger car elles couvrent des dimensions différentes (cf. convention-compliance.md §5.7). Quand l'API exposera le breakdown par critère natif, le composant basculera automatiquement.

$slug        (string, optional) slug assureur — charge le JSON automatiquement
$breakdown   (array, optional)  breakdown direct (court-circuite le slug)
$showLabels  (bool, default true)  afficher les libellés critères
$compact     (bool, default false) version compacte (sans les valeurs numériques)
Exemples
<x-selectra-score-gauges slug="luko" />


<x-selectra-score-gauges slug="acheel" :show-labels="false" />


<x-selectra-score-gauges slug="lemonade" :compact="true" />

Exemple vivant (luko, acheel, lemonade) :

Luko by Allianz Direct

Props : - slug (string, optional) : slug assureur ; charge le JSON - breakdown (array, optional) : breakdown direct (court-circuite le slug) - showLabels (bool, default true) : afficher les libellés critères - compact (bool, default false): version compacte (jauges seulement, pas de valeurs numériques) --}}
Tarifs
4,0 Garanties
4,4 Service
3,2 App
4,8 Sinistres
4,1

Acheel

Props : - slug (string, optional) : slug assureur ; charge le JSON - breakdown (array, optional) : breakdown direct (court-circuite le slug) - showLabels (bool, default true) : afficher les libellés critères - compact (bool, default false): version compacte (jauges seulement, pas de valeurs numériques) --}}
Tarifs
4,7 Garanties
3,2 Service
2,5 App
2,0 Sinistres
2,4

Lemonade

Props : - slug (string, optional) : slug assureur ; charge le JSON - breakdown (array, optional) : breakdown direct (court-circuite le slug) - showLabels (bool, default true) : afficher les libellés critères - compact (bool, default false): version compacte (jauges seulement, pas de valeurs numériques) --}}
Tarifs
4,6 Garanties
3,5 Service
2,0 App
4,5 Sinistres
2,8

Avis d'expert x-expert-review

⭐ PreuveSDP
🎯 Quand l'utiliser — avis d'expert mono-assureur (pros/cons SOURCÉS depuis data/expert-reviews, notes via {review.X}), sur une SDP.⚠️ Plutôt pros/cons inventés → interdit, sourcer ou retirer.

Bloc d'avis éditorial avec logo, description, deux colonnes pros / cons et CTA. Sur les pages assureur (Luko by Allianz Direct, Acheel, Alan, …). Compliance §1 / §5.2 / §5.7 / §6.4 / §7−2 / §7.4 : badge « Partenaire Selectra » auto si applicable, CTA 3-mode dérivé API, caption « Avis Goodassur vérifié en {mois année} » alimentée par data/expert-reviews/{slug}.json::last_reviewed_at.

$name             nom de l'assureur
$slug             slug (logo + lookup partenaire/affi via API)
$logo             URL du logo (override; défaut: CDN xs.png)
$description      paragraphe d'introduction
$pros             array de bullets « points forts »
$cons             array de bullets « points faibles »
$vertical         optionnel — 'auto' | 'habitation' | 'mutuelle-sante' (défaut: URL-derived)
$lastReviewedAt   optionnel — 'YYYY-MM' override (défaut: JSON puis now())

# Compat — explicites encore acceptés mais NON recommandés (la 3-mode est la source de vérité) :
$ctaHref, $ctaLabel
Logo Alan

Avis de nos experts sur Alan

Alan a révolutionné le marché de la mutuelle en supprimant les questionnaires de santé et en offrant une interface 100 % digitale. Remboursements ultra-rapides (sous 24 h) et tarifs parmi les plus compétitifs du marché.

✅ Avantages

  • Aucun délai de carence sur les garanties.
  • Garanties modulables sur 3 niveaux.
  • Remboursements sous 24 h via l'application.

⚠️ Points de vigilance

  • Souscription impossible après 75 ans.
  • Tout est dématérialisé : pas d'agence physique.
Comparer en ligne
Exemple
<x-expert-review
    name="Alan"
    slug="alan"
    description="Alan a révolutionné le marché de la mutuelle…"
    :pros="[ /* … */ ]"
    :cons="[ /* … */ ]"
/>

Carte d'identité assureur x-insurer-identity

⭐ PreuveSDP
🎯 Quand l'utiliser — carte d'identité d'un assureur (groupe, création, agrément ORIAS, pill si partenaire), en-tête de SDP.

Carte compacte affichant le score Selectra, la moyenne d'avis, les produits proposés et les plateformes. Branchée sur l'API + le fichier paraphrase.

$slug          slug de l'assureur
$insurerName   nom affiché
$insurerData   données API (auto-injectées par PROVIDER-PAGE-REFERENCE)
$paraphrase    bloc paraphrase JSON
$hasAuto       bool — produit auto disponible
$hasHome       bool — produit habitation
$hasHealth     bool — produit santé
Exemple
<x-insurer-identity
    slug="luko"
    insurer-name="Luko by Allianz Direct"
    :insurer-data="$insurerData"
    :paraphrase="$paraphrase"
    :has-home="true"
/>

Alert x-alert

📖 Expliquertransverse
🎯 Quand l'utiliser — encadré pour attirer l'œil : info / succès / avertissement / danger (bon à savoir, point de vigilance, rappel légal).

Encart coloré pour mettre en valeur une information clé : info, warning, danger, success. Icône emoji par défaut, ou personnalisable.

$type   info | success | warning | danger | error | primary | secondary
$icon   emoji ou texte court (override)
$title  titre en gras (optionnel)

Bon à savoir

Vous pouvez résilier votre assurance auto à tout moment après un an grâce à la loi Hamon. Aucun motif n'est requis.
Code
<x-alert type="info" title="Bon à savoir">
    Texte de l'alerte avec <strong>mots-clés</strong>.
</x-alert>

<x-alert type="warning" title="Attention">…</x-alert>
<x-alert type="danger" icon="🚨">Sans titre, juste un message.</x-alert>
<x-alert type="success">Confirmation positive.</x-alert>

Info card x-info-card

📖 Expliquertransverse
🎯 Quand l'utiliser — carte d'information douce (fond bleu) : conseil, exemple, mise en contexte ; souvent en grille de 2-3.

Carte informative avec dégradé bleu clair. Icône emoji, titre (avec lien optionnel), contenu libre.

$icon       emoji ou caractère
$title      titre en gras
$titleHref  si fourni, le titre devient un lien

Respectez le parcours de soins

Passez par votre médecin traitant avant de consulter un spécialiste pour bénéficier du meilleur taux de remboursement.

Bris de glace

Pare-brise, optiques, vitres latérales : la garantie bris de glace est incluse en tous risques.
Code
<x-info-card icon="🩺" title="Respectez le parcours de soins">
    Passez par votre <strong>médecin traitant</strong>…
</x-info-card>


<x-info-card icon="🪟" title="Bris de glace" title-href="/assurance-auto/bris-de-glace">
    Pare-brise, optiques, vitres…
</x-info-card>

Verdict box x-verdict-box

📖 Expliquertransverse
🎯 Quand l'utiliser — poser un verdict éditorial tranché (4 tons) dans un guide : « faut-il souscrire X ? », page multi/sans assureur.⚠️ Plutôt SDP mono-assureur → x-verdict-card.

Encart « notre verdict » avec icône colorée, label, titre et contenu. À placer en fin d'article ou de section éditoriale. Compliance §5.9 règle 2 : prop :date optionnelle, à utiliser uniquement sur composants éditoriaux multi-assureurs ou guides généraux. Sur fiche mono-assureur SDP, ne PAS renseigner :date (la pill partenaire suffit).

$tone   info | success | warning | danger
$label  libellé en haut (par défaut « Notre verdict »)
$title  titre principal
$date   YYYY-MM optionnel — rendu en pied "Verdict mis à jour en {mois année}"
Notre verdict

Une mutuelle solide pour les familles

Avec un rapport qualité/prix au-dessus de la moyenne et une interface 100 % digitale, Alan est la meilleure option pour les familles connectées qui consultent régulièrement.
Notre top 3 cadres

Allianz, AXA et Apivia se détachent sur le profil cadre

Sur les profils cadres familles, ces trois assureurs dominent grâce à des plafonds hospitalisation élevés et un dentaire généreux. Selon notre panel goodassur en 2026.

Verdict mis à jour en mai 2026.

Code
<x-verdict-box tone="success" label="Notre verdict" title="Une mutuelle solide pour les familles">
    Avec un rapport qualité/prix au-dessus de la moyenne…
</x-verdict-box>


<x-verdict-box tone="info" title="Notre top 3 cadres" date="2026-05">
    Sur les profils cadres familles…
</x-verdict-box>

Timeline étapes x-timeline-steps

✅ Listertransverse
🎯 Quand l'utiliser — frise horizontale de 3-4 étapes (texte court, sans HTML), pour un process visuel synthétique.⚠️ Plutôt texte riche ou liens dans les étapes → x-numbered-list.

Frise horizontale numérotée (4 étapes recommandées). Idéal pour les processus de souscription ou de sinistre.

$steps  array — chaque étape ['titre', 'detail']
$tone   success | danger
  1. 1

    Comparez

    Renseignez votre profil en 2 minutes.

  2. 2

    Choisissez

    Sélectionnez l'offre la mieux adaptée.

  3. 3

    Souscrivez

    En ligne ou par téléphone, en 5 minutes.

  4. 4

    Assuré

    Effet immédiat ou différé selon vos besoins.

Code
<x-timeline-steps :steps="[
    ['titre' => 'Comparez',   'detail' => 'Renseignez votre profil en 2 minutes.'],
    ['titre' => 'Choisissez', 'detail' => 'Sélectionnez l\'offre la mieux adaptée.'],
    ['titre' => 'Souscrivez', 'detail' => 'En ligne ou par téléphone, en 5 minutes.'],
    ['titre' => 'Assuré',     'detail' => 'Effet immédiat ou différé.'],
]" />

Pros / cons x-pros-cons

📊 Comparertransverse
🎯 Quand l'utiliser — de vrais avantages ET inconvénients d'une offre/option (2 colonnes équilibrées).⚠️ Plutôt que des positifs → x-numbered-list.

Grille à deux colonnes « avantages » / « inconvénients ». Composant partagé du framework — utiliser via le slot ou les props.

$pros  array de bullets « avantages »
$cons  array de bullets « inconvénients »

Avantages

  • Souscription 100 % en ligne en 5 minutes
  • Tarifs compétitifs pour les jeunes conducteurs
  • Application mobile complète

Inconvénients

  • Pas de service client par téléphone
  • Couverture limitée hors UE
Code
<x-pros-cons :pros="[
    'Souscription 100 % en ligne en 5 minutes',
    'Tarifs compétitifs pour les jeunes conducteurs',
]" :cons="[
    'Pas de service client par téléphone',
]" />

Key figure x-key-figure

📖 Expliquertransverse
🎯 Quand l'utiliser — mettre en avant 1 à 4 chiffres clés en grille (valeur + label + description), en haut de section ou de page.

Chiffre clé : grand nombre, label, description courte. Utilisé en groupe (3 ou 4) pour les blocs de chiffres marquants.

$value        chiffre principal (ex: « 450 € », « 73 % »)
$label        libellé court
$description  ligne explicative

450 €

d'économies

par an en moyenne sur la mutuelle santé

5 min

pour comparer

toutes les offres du marché

0 €

sans engagement

comparateur 100 % gratuit

Code
<x-key-figure
    value="450 €"
    label="d'économies"
    description="par an en moyenne sur la mutuelle santé"
/>

Étoiles x-stars

📖 Expliquertransverse
🎯 Quand l'utiliser — afficher une note en étoiles inline, à côté d'un nom d'assureur ou dans une carte.

Note sur 5 étoiles avec demi-étoile. Utilisée à côté des notes Trustpilot ou Selectra.

$note   note de 0 à 5 (peut être décimale)
$size   taille en px (par défaut 14)
$color  couleur des étoiles (par défaut #F97316)
4,5/5
3,8/5
5/5
Code
<x-stars :note="4.5" />
<x-stars :note="3.8" :size="20" />
<x-stars :note="5" :size="16" color="#015aa3" />

Badge partenaire x-partner-pill

💰 Convertirtransverse
🎯 Quand l'utiliser — badge « Partenaire de Selectra » sous le nom d'un assureur partenaire (détection multi-univers) ; posé par les composants, rarement à la main.

Pill « Partenaire de Selectra » à utiliser sur chaque composant qui rend un assureur partenaire de Selectra. Centralise le marqueur ☑ + libellé en une badge explicite et lisible. Remplace l'ancien petit ☑ icon-seul + la légende de pied « ☑ indique un partenaire de Selectra » sur tous les composants Phase 1.1 → 1.10 (expert-review, podium-top3, rank-list, price-ranking, comparison-table, mutuelle-rembours-top3, top-mutuelle-remboursement, mutuelle-formulas-table, offer-card-auto/habitation/sante). Compliance §5.2 + §5.9 règle 1.

$variant   'default' | 'compact'
              - default : pill complète 0.75rem, padding .2/.55rem, pour cards
                          (expert-review, verdict-card, top-mutuelle-remboursement,
                          SDP hero) où l'espace est disponible
              - compact : pill réduite 0.65rem, padding minimal, pour listes
                          denses (rank-list, price-ranking, comparison-table rows,
                          mutuelle-rembours-top3) où chaque row doit rester compact

Pas de logique conditionnelle interne : le caller décide quand l'afficher (typiquement après lookup API isPartner). Exemple :

Code
@if($isPartner)
    <x-partner-pill />                     ← variant default
    <x-partner-pill variant="compact" />    ← pour listes
@endif

Variant default (cards) :

Partenaire de Selectra

Variant compact (listes denses) :

Partenaire de Selectra

Carte de France des régions x-france-map

🗺️ Data-viztransverse
🎯 Quand l'utiliser — carte de France 13 régions cliquable (Alpine tooltip + panneau) pour toute donnée régionale (prix régional, tarif CV, taxe) ; plus impactant qu'un tableau régional.

SVG vectoriel (issu du GeoJSON officiel IGN/INSEE) des 13 régions métropolitaines + Corse. Chaque <path> porte data-region="<nom>" permettant un styling/Alpine indépendant par région. Couplage idéal avec un x-data Alpine pour tooltip+panneau de détails (cf. exemple /assurance-habitation/prix et /assurance-auto/carte-grise). Le composant colore automatiquement chaque région via la prop :values (map nom-région → valeur numérique) et un color-scale optionnel.

$values        map nom-de-région → valeur numérique (auto-quantile si pas de color-scale)
$colorScale    closure ($value) → couleur CSS (optionnel)
$defaultFill   couleur des régions sans valeur (défaut #e5e7eb)
$hoverClass    classes ajoutées au hover (défaut opacity-90)
$class         classes SVG (défaut w-full h-auto)
Exemple minimal
$values = [
    'Île-de-France'        => 68.95,
    'Auvergne-Rhône-Alpes' => 43.00,
    // ... une entrée par région
];
$colorScale = fn ($p) => $p > 60 ? '#ef4444' : '#86efac';

<x-france-map :values="$values" :color-scale="$colorScale" />
Auvergne-Rhône-Alpes Bourgogne-Franche-Comté Bretagne Centre-Val de Loire Corse Grand Est Hauts-de-France Normandie Nouvelle-Aquitaine Occitanie Pays de la Loire Provence-Alpes-Côte d'Azur Île-de-France

Démo « prix du cheval fiscal 2026 par région » (vert ≤ 45 €, jaune ≤ 55 €, orange ≤ 60 €, rouge > 60 € pour l'Île-de-France).

Carte auteur x-author-card

⭐ Preuvetransverse
🎯 Quand l'utiliser — carte auteur/expert (signal E-E-A-T), bas d'article ou bio.

Bloc bio auteur avec avatar, titre, expertise et liens sociaux. Sur les pages article, généré automatiquement à partir de :author (clé de config/cms.php authors).

$author       clé d'auteur dans cms.authors (résout tout automatiquement)

$name, $avatar, $title, $twitter, $linkedin, $email, $profile_url, $credentials, $expertise
Exemple
<x-author-card author="luka.payras" />


<x-author-card
    name="Luka Payras"
    title="Rédacteur en chef"
    avatar="/images/team/luka.jpg"
    expertise="Mutuelle, Auto"
    linkedin="https://linkedin.com/in/luka"
/>

Erreur de carburant x-carburant-diagnostic

🧮 Outilauto
🎯 Quand l'utiliser — diagnostic interactif « erreur de carburant », page dédiée auto.

Diagnostic en deux questions : « Avez-vous démarré le moteur ? » + « Combien de litres ? ». Affiche le risque, le coût estimé et le rappel d'assurance.

Aucun prop.

⛽ Je me suis trompé de carburant — est-ce grave ?

2 questions · Réponse instantanée

1. Quel est le type de carburant de votre véhicule ?

2. Quel carburant avez-vous mis ?

Code
<x-carburant-diagnostic />

Bris / perte de lunettes x-lunettes-diagnostic

🧮 Outilsanté
🎯 Quand l'utiliser — diagnostic interactif « bris/perte de lunettes », page optique santé.

Diagnostic « qui rembourse ? » : casse vs perte, dans le délai 100 % santé ou non. Pas de prop.

👓 Qui rembourse vos lunettes ?

2 questions · Réponse instantanée

1. Que s'est-il passé ?

2. Âge du porteur des lunettes ?

Code
<x-lunettes-diagnostic />

Éligibilité CSS x-css-eligibility

🧮 Outilsanté
🎯 Quand l'utiliser — test d'éligibilité à la Complémentaire santé solidaire (barème ressources), page CSS.

Calculatrice d'éligibilité à la Complémentaire santé solidaire en fonction du foyer et des revenus. Affiche le résultat (gratuite / participative / non éligible).

$compareHref  URL du comparateur de mutuelles (par défaut /selection/comparateur-assurance-sante)
$phone        numéro à afficher
$phoneHref    tel:+33...
Code
<x-css-eligibility />

Convertisseur kW / DIN / CV fiscal x-puissance-converter

🧮 Outilauto
🎯 Quand l'utiliser — convertisseur kW / DIN / CV fiscaux, pages auto (puissance, carte grise).

Convertit la puissance d'un véhicule entre kW, chevaux DIN et chevaux fiscaux (CV fiscal). Pas de prop.

Code
<x-puissance-converter />

Calculateur prix carte grise x-carte-grise-calculator

🧮 Outilauto
🎯 Quand l'utiliser — pages prix/calcul carte grise : l'utilisateur choisit type de véhicule, région, CV, âge et énergie, le tarif détaillé (Y1-Y5) s'affiche en direct. Données depuis data/carte-grise-tarifs.php (source unique).

Calculateur interactif du coût d'une carte grise. Props : :regions (map région → prix CV, requis), :taxe-gestion, :redevance-achemin, :taxe-formation, :year.

Code
@php $cg = require base_path('sites/goodassur.com/data/carte-grise-tarifs.php'); @endphp
<x-carte-grise-calculator
    :regions="$cg['cv_fiscal']"
    :taxe-gestion="$cg['taxe_gestion']"
    :redevance-achemin="$cg['redevance_achemin']"
    :taxe-formation="$cg['taxe_formation_utilitaire']"
    :year="$cg['year']" />

Rendu vivant : voir la page prix de la carte grise (outil interactif lourd, non rendu ici comme pour les autres simulateurs du catalogue).

Simulateur retraite x-retraite-simulator

🧮 Outilretraite
🎯 Quand l'utiliser — simulateur retraite, pages prévoyance/retraite.

Estimation de la pension de retraite en 5 étapes (base + Agirc-Arrco) avec projection nette.

Code
<x-retraite-simulator />

Simulateur rachat de trimestres x-rachat-trimestre-simulator

🧮 Outilretraite
🎯 Quand l'utiliser — simulateur de rachat de trimestres, pages retraite.

Calcule le coût du rachat de trimestres Cnav (« taux seul » vs « taux + durée »). Pas de prop.

Code
<x-rachat-trimestre-simulator />

Comparateurs auto / habitation / santé x-tools.comparators.*

🗺️ Data-vizauto/habitation/santé
🎯 Quand l'utiliser — embarquer un comparateur guidé verticale-spécifique (auto / habitation / santé) en pleine largeur, en haut d'une page comparateur.

Applications interactives complètes (formulaire multi-étapes + résultats). À placer en pleine largeur, en haut de page comparateur. Ne pas inclure dans un article éditorial — utiliser x-affiliate-cta ou x-devis-grid à la place.

⚠️ Ces comparateurs occupent la pleine largeur du contenu. Une page comparateur n'a en général qu'un seul comparateur visible.
Code
<x-tools.comparators.sim-comparateur-auto />


<x-tools.comparators.sim-comparateur-habitation />


<x-tools.comparators.sim-comparateur-sante />

Accordéon article x-accordion

❓ FAQtransverse
🎯 Quand l'utiliser — accordéon DANS le body (cas/scénarios/variantes dépliables), ce n'est pas une FAQ.⚠️ Plutôt FAQ de fin de page → x-faq-block.

Bloc dépliable pour cas / scénarios / variantes dans le corps éditorial. Style canonique .collapse-box / .collapse / .collapse__content, bordure gauche bleue, chevron ▼. À distinguer de x-faq-block qui est réservé au bloc FAQ en fin de page (avec JSON-LD).

items     array ['title' => '...', 'content' => '

...

', 'open' => true?] title string (single-item mode, contenu via slot) schema bool injecte JSON-LD FAQPage (false par défaut) heading 'h3'|'h4' tag du titre (h3 par défaut)

👶 Jeune conducteur

Si vous avez moins de 3 ans de permis ou avez fait une formation conduite accompagnée, vous êtes considéré comme jeune conducteur.

🚗 Petit rouleur

Moins de 7 000 km/an : optez pour une formule au kilomètre avec un tarif modulé selon votre usage réel.

🚙 Voiture ancienne

Pour un véhicule de plus de 10 ans, une formule au tiers ou tiers étendu est généralement plus pertinente que le tous risques.

Code
<x-accordion :items="[
    ['title' => '👶 Jeune conducteur', 'content' => '<p>…</p>'],
    ['title' => '🚗 Petit rouleur',    'content' => '<p>…</p>', 'open' => true],
]" />


<x-accordion title="Quand être assuré au tiers ?">
    <p>Contenu HTML libre…</p>
</x-accordion>


<x-accordion>
    <x-accordion.item title="Item 1">…</x-accordion.item>
    <x-accordion.item title="Item 2" open>…</x-accordion.item>
</x-accordion>

FAQ avec JSON-LD x-faq-block

❓ FAQtransverse
🎯 Quand l'utiliser — LA FAQ de fin de page (5-8 questions complémentaires, JSON-LD FAQPage auto) ; une seule par page ; peut contenir d'autres composants (icon-list…).

Bloc FAQ formel en fin de page, avec injection automatique du JSON-LD FAQPage pour les rich snippets Google. Wrappé dans une <section> dédiée avec son propre H2. À utiliser une fois par page article, après les 6 H2 du body et avant le maillage final.

items   array [['q' => 'Question ?', 'a' => '

Réponse

', 'emoji' => '💰']] title string défaut "FAQ" id string ancre H2 (défaut "faq") bg 'gray'|null fond gris pour section dédiée (recommandé)

💬 FAQ sur la mutuelle santé

💰 Quel est le prix moyen d'une mutuelle ?

Le prix moyen d'une mutuelle santé en 2026 est de 35 €/mois pour un actif, 75 €/mois pour un senior.

⏱️ Peut-on résilier à tout moment ?

Oui, depuis la loi du 1er décembre 2020, vous pouvez résilier votre mutuelle après un an de contrat, à tout moment et sans frais.

⚖️ La mutuelle est-elle obligatoire ?

Obligatoire pour les salariés du privé depuis 2016. Non obligatoire mais fortement recommandée pour les indépendants, étudiants et retraités.

Code
<x-faq-block bg="gray" title="FAQ sur la mutuelle santé" :items="[
    ['q' => 'Quel est le prix moyen ?', 'emoji' => '💰', 'a' => '<p>…</p>'],
    ['q' => 'Peut-on résilier à tout moment ?', 'emoji' => '⏱️', 'a' => '<p>…</p>'],
]" />
Le JSON-LD FAQPage est auto-injecté dans <head>. Ne pas ajouter de balisage Schema manuel.

Check / Cross list x-check-cross-list

📊 Comparertransverse
🎯 Quand l'utiliser — deux colonnes ✓/✗ : inclus vs exclu, à faire vs à éviter, couvert vs non couvert (les DEUX colonnes remplies).⚠️ Plutôt une seule colonne → x-icon-list.

Deux colonnes vert/rouge avec puces ✅/❌. Items en HTML inline (<strong>, <a> autorisés). Idéal pour comparer ce qui est inclus vs exclu, critères à respecter vs erreurs à éviter.

positiveTitle   string  défaut "Inclus"
negativeTitle   string  défaut "Non inclus"
positiveIcon    string  défaut "✅"
negativeIcon    string  défaut "❌"
positive[]      array   strings HTML
negative[]      array   strings HTML

Ce que contient la carte Vitale

  • Identité et numéro de Sécurité sociale
  • Caisse de rattachement (CPAM)
  • Droits ouverts à l'Assurance maladie

Ce qu'elle ne contient pas

  • Aucune donnée médicale
  • Pas un moyen de paiement
  • Pas de remboursement mutuelle automatique
Code
<x-check-cross-list
    positiveTitle="Critères à respecter"
    negativeTitle="Erreurs à éviter"
    :positive="['Envoyer en LRAR', '<strong>Respecter le préavis</strong>']"
    :negative="['Oublier les justificatifs', 'Résilier avant l\'échéance']"
/>

Liste à marqueur x-icon-list

✅ Listertransverse
🎯 Quand l'utiliser — TOUTE liste à puces du body (points, critères, situations) ; marqueur par item (✓ check / ✗ cross / › arrow) ou emoji ; remplace les ul bruts.⚠️ Plutôt étapes ordonnées → x-numbered-list ; 2 colonnes → x-check-cross-list.

Remplace les <ul class="list-disc"> bruts. Marqueur au choix par item : ✓ check (vert), ✗ cross (rouge), › arrow (gris, défaut d'une liste normale), ou un emoji custom. Texte en HTML inline (<strong>, <a>).

items[]   array   strings OU ['text'=>, 'marker'=>'check|cross|arrow', 'emoji'=>'🔑']
marker    string  marqueur par défaut des items sans marqueur propre (défaut "arrow")
  • Célébrer les buts du Real Madrid
  • Célébrer les buts du Barça
  • Oui, le Real Madrid déchire
  • Pensez à votre carte Vitale
  • Marqueur uniforme via la prop marker
  • Pratique pour une liste entièrement incluse
  • Liste normale : tout en arrow par défaut
  • Deuxième point de la liste
Code
<x-icon-list :items="[
    ['text' => 'Inclus', 'marker' => 'check'],
    ['text' => 'Exclu', 'marker' => 'cross'],
    ['text' => 'Avec emoji', 'emoji' => '💳'],
]" />

<x-icon-list :items="['Point A', 'Point B']" />

Grille d'astuces x-tips-grid

✅ Listertransverse
🎯 Quand l'utiliser — « N astuces pour… », points clés ou conseils en cartes ; badge top-left au choix par carte (chiffre OU emoji), CTA et carte pleine largeur optionnels.⚠️ Plutôt liste à puces simple → x-icon-list ; étapes ordonnées d'un process → x-numbered-list.

Grille de cartes à badge. Le badge accepte un chiffre (1, 2, 3…) ou un emoji. Corps en HTML inline (liens, <strong>). CTA optionnel et carte wide (pleine largeur) par carte.

items[]   array   [['badge'=>'1'|'💡', 'title'=>, 'body'=>(HTML), 'cta'=>['label'=>,'href'=>], 'wide'=>bool]]
columns   int     2 | 3  (défaut 2)

Comparer les devis

Utilisez un comparateur pour faire jouer la concurrence.

Astuce bonus

Pensez à la Complémentaire santé solidaire.

Se faire accompagner

Un conseiller compare et négocie pour vous, gratuitement.

📞 Être rappelé

Code
<x-tips-grid :columns="2" :items="[
    ['badge' => '1',  'title' => 'Comparer les devis', 'body' => 'Utilisez un comparateur.'],
    ['badge' => '💡', 'title' => 'Astuce bonus', 'body' => 'Pensez à la <strong>CSS</strong>.'],
    ['badge' => '3',  'title' => 'Accompagnement', 'body' => '…', 'wide' => true,
     'cta' => ['label' => '📞 Être rappelé', 'href' => '/selection/...']],
]" />

CTA monétisation x-cta-monetisation

💰 Convertirtransverse
🎯 Quand l'utiliser — LE CTA partenaire canonique : résout auto online/phone selon les flags de l'assureur (à préférer à un bouton manuel).

Bannière compacte de monétisation après un verdict d'expert. Résout automatiquement le mode (affiliation en ligne ou numéro partenaire) selon les flags du JSON assureur. Si ctaMode est null, ne rend rien.

ctaMode             'online'|'phone'|null  (null = pas de rendu)
insurerName         string
insurerLogoUrl      string  (auto-dérivé de $slug si absent)
slug                string  (pour construire logoUrl)
affiliateHref       string  mode online : URL /selection/...
partnerPhoneUrl     string  mode phone : tel:+33...
partnerPhoneText    string  mode phone : libellé bouton
Composant invisible si ctaMode = null — la résolution se fait dans la route SDP via InsuranceMonetisation. Ne JAMAIS écrire un <a class="btn-cta" href="/selection/..."> à la main, toujours passer par ce composant.
Code
<x-cta-monetisation
    :cta-mode="$ctaMode"
    :insurer-name="$insurerName"
    :slug="$slug"
    :affiliate-href="$affiliateHref"
    :partner-phone-url="$partnerPhoneUrl"
    :partner-phone-text="$partnerPhoneText"
/>

Action box x-action-box

💰 Convertirtransverse
🎯 Quand l'utiliser — encadré CTA léger (titre + description + phone et/ou bouton) renvoyant vers le comparateur en fin de section ; idéal page glossaire/éditoriale.

Callout coloré avec icône + titre + CTA (téléphone et/ou bouton). Trois tons : primary (bleu), success (vert), accent (orange).

icon         string emoji (défaut "💬")
title        string
description  string HTML autorisé
phone        string "01 86 65 20 06"
phoneHref    string "/selection/fr-ii-cc-gdamutuelle"
ctaLabel     string libellé bouton secondaire
ctaHref      string href bouton secondaire
tone         'primary'|'success'|'accent'  (défaut primary)

Besoin d'un conseil ?

Nos conseillers répondent à toutes vos questions sur la mutuelle santé.

Code
<x-action-box
    icon="📞"
    title="Besoin d'un conseil ?"
    description="Nos conseillers répondent…"
    phone="01 86 65 20 05"
    phoneHref="/selection/fr-ii-cc-gdageneral"
    ctaLabel="Je compare"
    ctaHref="/mutuelle-sante/comparateur"
    tone="primary"
/>

Smart CTA x-smart-cta

💰 Convertirtransverse
🎯 Quand l'utiliser — CTA contextuel piloté par le contexte de la page (variante de monétisation).

Card flottante de monétisation (desktop bas-droite, mobile bottom-sheet) qui s'affiche après 30s ou 35 % de scroll. Mini-formulaire 2 étapes (profil → code postal) puis podium top-3 réel pré-fetché depuis l'API. Pré-fetch côté serveur (cache 15 min) — pas d'appel réseau côté client.

vertical   'home'|'car'|'health'  (défaut 'home')
Ne pas mettre dans la prévisualisation : ce composant est en position fixed et obstrue le rendu. Disponible sur les pages produit en homepage et catégorie.
Code
<x-smart-cta vertical="home" />
<x-smart-cta vertical="car" />
<x-smart-cta vertical="health" />

Hero avis x-avis-hero

⭐ PreuveSDP
🎯 Quand l'utiliser — hero d'avis clients en tête de fiche assureur (note agrégée + plateformes + date).

Hero de la page /{insurer}/avis : note globale pondérée + distribution étoiles cliquable + notes externes par plateforme (Trustpilot, OA, Google, App Store…). Connecté à 2 stores Alpine globaux ($store.avisFilter, $store.reviewModal) — synchronisé avec x-temoignages-list.

selectraNote         float  note pondérée (= average_weighted_reviews)
totalReviewsCount    int    total des avis
reviewsDistribution  array  [['star' => 5, 'pct' => 62], ...]
externalReviews      array  [['platform' => 'trustpilot', 'rating' => 4.2, 'rating_count' => 1066], ...]
insurerName          string
Cf. règle dans data/conventions/convention-sdp.md : selectraNote DOIT être average_weighted_reviews, jamais une valeur arbitraire (source unique de vérité).
Code
<x-avis-hero
    :selectra-note="$selectraNote"
    :total-reviews-count="$totalReviewsCount"
    :reviews-distribution="$reviewsDistribution"
    :external-reviews="$externalReviews"
    :insurer-name="$insurerName"
/>

Liste avis filtrable x-temoignages-list

⭐ PreuveSDP
🎯 Quand l'utiliser — liste d'avis clients filtrable (verbatim + date d'expérience + plateforme), page avis assureur.

Liste avis clients avec toolbar de recherche + filtres par étoile + tri (récents / mieux notés / utiles) + chips topics. Synchronisée avec x-avis-hero via le store Alpine $store.avisFilter.

temoignagesCurated   array entries {auteur, initiale, verifie, anciennete|profil, type, note, date, date_iso, utile, titre, texte, topics[]}
reviewsTopics        array  ['Service client', 'Sinistres', ...]
totalReviewsCount    int
insurerName          string
À placer sous x-avis-hero sur la page /{insurer}/avis. Les filtres communiquent entre les 2 composants automatiquement.
Code
<x-temoignages-list
    :temoignages-curated="$temoignagesCurated"
    :reviews-topics="$reviewsTopics"
    :total-reviews-count="$totalReviewsCount"
    :insurer-name="$insurerName"
/>

« X face aux autres » x-comparator-table

⭐ PreuveSDP
🎯 Quand l'utiliser — sur une fiche assureur (SDP) : « X face aux autres », compare l'assureur de la page à ses concurrents (nb d'avis, pill).

Tableau « {Insurer} face aux autres assureurs » sur la page hub. Assureur courant en première ligne avec badge « EN AVIS », concurrents cliquables vers leur page. Layout dual : cards mobile / tableau desktop.

comparaison    array {
    note: float (= average_weighted_reviews de l'assureur courant),
    atout: string ('emoji + atout court'),
    concurrents: [
        {slug, name, note (= awr du concurrent), atout},
        ...
    ]
}
insurerName    string
slug           string  (utilisé pour résoudre le logo)
Cf. règle convention-sdp.md : comparaison.note et concurrents[].note DOIVENT être average_weighted_reviews de l'assureur correspondant, jamais une valeur arbitraire.
Code
<x-comparator-table
    :comparaison="$paraphrase['comparaison_concurrents']"
    :insurer-name="$insurerName"
    :slug="$slug"
/>

Verdict card x-verdict-card

⭐ PreuveSDP
🎯 Quand l'utiliser — verdict d'expert sur UNE fiche assureur (mono-assureur, pill partenaire, pas de date).

Bloc « Notre verdict » sur la page assureur : grade Selectra A-F + verdict court mis en avant + verdict long dépliable (séparateur [|||] pour split preview/expand) + auteur. À utiliser une fois par page SDP. Compliance §5.9 règle 2 : prop :date optionnelle, à utiliser uniquement sur classement ou guide multi-assureurs. Sur SDP mono-assureur, ne PAS renseigner :date (le score + auteur signalent déjà le contexte).

verdictShort   string HTML  (header, toujours visible)
verdictLong    string HTML  (body, supporte [|||] pour split)
score          string  A|B|C|D|E|F  (grade Selectra)
badgeLabel     string  défaut "Notre verdict sur les formules"
authorName     string  défaut "Marc Malpel"
authorRole     string  défaut "Spécialiste Assurance"
authorAvatar   string  URL R2 par défaut
date           YYYY-MM optionnel — pied "Verdict mis à jour en {mois année}"
Code
<x-verdict-card
    :verdict-short="$verdicts['formules'] ?? null"
    :verdict-long="$paraphrase['avis_expert_long'] ?? null"
    :score="$score"
/>


$verdictLong = "Texte court visible…[|||]Suite cachée derrière un bouton.";

Carte contact assureur x-insurer-contact-card

⭐ PreuveSDP
🎯 Quand l'utiliser — carte contact d'un assureur (non-partenaire : logo masqué + service Selectra prioritaire), page contact.

Fiche d'identité assureur en hero de la page /{insurer}/contact. Logo + nom + tagline produits + dl/dt/dd des coordonnées principales (téléphone, e-mail, adresse, espace client). Les lignes absentes ne sont pas rendues.

insurerName       string
insurerLogoUrl    string
productsTagline   string  ex. "Auto · Habitation · Santé"
primaryPhone      string
primaryHours      string  ex. "Lun-Ven 8h-20h"
email             string
address           string  HTML autorisé
espaceClientUrl   string
Code
<x-insurer-contact-card
    :insurer-name="$insurerName"
    :insurer-logo-url="$insurerLogoUrl"
    :products-tagline="$productsTagline"
    :primary-phone="$autodata[$slug]['phone']"
    :primary-hours="$autodata[$slug]['hours']"
    :email="$autodata[$slug]['email']"
    :address="$autodata[$slug]['address']"
    :espace-client-url="$autodata[$slug]['espace_client_url']"
/>

Numéros par produit x-contact-phones-table

⭐ PreuveSDP
🎯 Quand l'utiliser — tableau des numéros de contact d'un assureur par produit/service, page contact/téléphone.

Tableau filtrable des numéros de téléphone d'un assureur, avec dropdown de filtre par catégorie (auto, habitation, santé, sinistre, réclamation). Layout dual : cards mobile / tableau desktop.

phones[]      array entries {service, phone, hours?, cost?, cat[]?}
insurerName   string

cat possible: auto | habitation | sante | sinistre | reclamation
Si aucune entrée n'a de cat, le filtre dropdown est masqué automatiquement.
Code
<x-contact-phones-table
    :phones="[
        ['service' => 'Service client',
         'phone' => '01 70 82 28 05',
         'hours' => 'Lun-Ven 8h30-20h',
         'cost' => 'Non surtaxé',
         'cat' => ['auto', 'habitation']],
        ['service' => 'Sinistre auto',
         'phone' => '0 800 11 22 33',
         'cat' => ['sinistre', 'auto']],
    ]"
    :insurer-name="$insurerName"
/>

Modèle de courrier x-postal-letter

🧮 Outiltransverse
🎯 Quand l'utiliser — modèle de courrier visuel statique (sans formulaire), quand un PDF interactif n'est pas requis.

Mockup visuel d'un courrier postal (font Georgia, layout sender/recipient/object/salutation/body/closing/signature). Idéal pour les modèles de lettre de résiliation, déclaration sinistre, demande CPAM. À combiner avec un bouton de téléchargement jsPDF.

sender       array ['name' => '[Prénom NOM]', 'address' => '...', 'extra' => '...']
recipient    array ['name' => '...', 'address' => '...']
mention      string  ex. "Lettre recommandée avec accusé de réception"
object       string  "Objet : ..."
salutation   string  défaut "Madame, Monsieur,"
closing      string  défaut formule de politesse standard
signature    string  défaut "(Signature)"
slot         string  HTML  corps de la lettre (paragraphes)
Modèle de courrier 📮
[Prénom NOM]
[Adresse, CP, ville]
[Numéro de Sécurité sociale]
[CPAM]
[Adresse CPAM]

Lettre recommandée avec accusé de réception

Objet : Demande de remboursement de soins

Madame, Monsieur,

Madame, Monsieur,

Je sollicite par la présente le remboursement des soins reçus le [date] auprès du Dr [nom]. Vous trouverez ci-joint la facture acquittée et la copie de l'ordonnance.

Je vous prie d'agréer, Madame, Monsieur, l'expression de mes salutations distinguées.

(Signature)

Modèle à titre indicatif, vérifié en juin 2026. À adapter selon votre situation personnelle avant envoi.

Code
<x-postal-letter
    :sender="['name' => '[Prénom NOM]', 'address' => '[Adresse]', 'extra' => '[N° Sécu]']"
    :recipient="['name' => '[CPAM]', 'address' => '[Adresse CPAM]']"
    mention="Lettre recommandée avec accusé de réception"
    object="Demande de remboursement">
    <p>Madame, Monsieur,</p>
    <p>Je sollicite par la présente…</p>
</x-postal-letter>

Liste numérotée x-numbered-list

✅ Listertransverse
🎯 Quand l'utiliser — étapes ordonnées / procédure (cercles numérotés + connecteur) ; titre auto en gras si titre + description.⚠️ Plutôt liste non ordonnée → x-icon-list ; stepper court → x-timeline-steps.

Liste ordonnée avec pastilles numérotées colorées et ligne de connexion verticale. Items en strings simples OU avec title + detail. Trois tons.

steps[]   array  strings OR [{title, detail}]
tone      'primary'|'success'|'warning'  (défaut primary)
start     int  premier numéro (défaut 1)
  1. 1
    Connectez-vous à votre espace assuré
    Avec votre numéro de Sécurité sociale et mot de passe.
  2. 2
    Téléchargez le formulaire S3704
    Disponible dans la rubrique « Mes démarches ».
  3. 3
    Renvoyez le formulaire complété
    Par voie électronique ou par courrier à votre CPAM.
Code
<x-numbered-list :steps="[
    ['title' => 'Étape 1', 'detail' => 'Détail optionnel…'],
    ['title' => 'Étape 2', 'detail' => '…'],
    'Étape 3 (string simple sans détail)',
]" tone="primary" />

Liste FAQ mutuelle x-mutuelle-faq-list

❓ FAQsanté
🎯 Quand l'utiliser — liste de navigation vers des questions FAQ mutuelle (nav pure, sans JSON-LD).

Liste pré-câblée de toutes les pages FAQ mutuelle santé (sous /mutuelle-sante/faq/). Rendue via multiple-link. Utilisée en bas des pages FAQ pour cross-link.

exclude   string  slug de la page courante (la masque)
⚠️ Composant spécifique mutuelle santé. La liste est hardcodée, à mettre à jour quand une nouvelle FAQ mutuelle est créée.
Code
<x-mutuelle-faq-list exclude="cas-dispense-mutuelle" />

Bannière téléphone inline x-inline-phone-banner

💰 Convertirtransverse
🎯 Quand l'utiliser — bandeau téléphone inline dans le flux (heures ouvrées → appel, sinon fallback web).

Bandeau téléphone inline (dans le flux de la page, pas sticky). Numéro + label baseline alimentés depuis config/cta-presets.php → verticals.{vertical}. Affichage conditionnel selon les heures d'ouverture du call-center : visible pendant les heures, fallback web optionnel hors heures. Variantes par verticale : auto, habitation, mutuelle, animaux, emprunteur, etc.

vertical        string  clé verticale (défaut 'general')
title           string  override du titre (défaut baseline_open du config)
description     string  sous-titre court optionnel
ctaLabel        string  override du label bouton (défaut numéro affiché)
hideWhenClosed  bool    masquer hors heures (true) OU afficher fallback web (false)
spacing         string  marges verticales Tailwind (défaut my-8)

Nos experts habitation vous aident gratuitement

Du lundi au vendredi, 9h-20h.

09 75 18 39 45

Service gratuit Selectra — mise en relation et conseil indépendants.

Exemple
<x-inline-phone-banner vertical="habitation" />


<x-inline-phone-banner
    vertical="auto"
    title="Un conseiller auto vous répond"
    description="Du lundi au vendredi, 9h-20h."
/>

Modale de rappel x-callback-modal

💰 Convertirtransverse
🎯 Quand l'utiliser — bouton + modale « me faire rappeler » (mention Bloctel obligatoire), quand un call-center est actif.

Composant à déclenchement modal pour formulaire de rappel (lead capture). Le bouton trigger ouvre une modale demandant le téléphone du visiteur, le formulaire push vers le back-office lead. Le contexte (swiss-life / after-hours / non-partner / general) pilote le wording et le segment de lead. Doit être placé une seule fois par page (le composant est rendu globalement).

context         string  clé context (général|swiss-life|after-hours|non-partner)
trigger         bool    rendre le bouton trigger (défaut true)
triggerLabel    string  override label bouton (défaut cta_label du context)
triggerClass    string  override classes Tailwind du bouton
segment         string  override segment lead (auto|habitation|mutuelle...)
leadSource      string  override lead_source (page/section emitting the lead)
Exemple
<x-callback-modal context="general" segment="habitation" leadSource="resiliation-page-cta" />


<x-callback-modal :trigger="false" context="non-partner" />
⚠️ Mention Bloctel obligatoire dans le formulaire (RGPD §11 convention-compliance). Préparer la case opt-in pour juillet 2026 (cf. compliance-roadmap §1.15).

Reco senior par âge x-senior-age-recommendation

📊 Comparersanté
🎯 Quand l'utiliser — recommandation éditoriale par tranche d'âge senior (Selectra Score par âge), pages senior.

Recommandation par profil senior : pour chaque tranche d'âge (65, 75, 85, 92 ans), affiche la formule la mieux notée selon le Selectra Score sur ce profil spécifique. Composant purement éditorial, sans CTA monétisation : le visiteur clique sur le nom de l'assureur pour accéder à sa page dédiée. Le tri se fait par selectra_score_points DESC sur le profil cible, consommé live depuis InsuranceApi.

Aucune prop. Le composant consomme directement le helper
goodassur_senior_health_top1_by_profile() qui calcule en interne.
Mutuelle santé recommandée par tranche d'âge senior, selon le Selectra Score.
Âge Mutuelle recommandée Formule Besoins typiques
🟢 65 ans Heyme
Partenaire de Selectra
Ambre Jeune retraité, en bonne santé. Besoins prioritaires : optique et dentaire.
🟡 75 ans Heyme
Partenaire de Selectra
Ambre Senior actif. Besoins prioritaires : dentaire, audition et hospitalisation.
🟠 85 ans Heyme
Partenaire de Selectra
Ambre Senior avancé. Besoins prioritaires : hospitalisation et dépassements d'honoraires.
🔴 92 ans Heyme
Partenaire de Selectra
Ambre Grand âge. Besoins prioritaires : hospitalisation, médecine douce et assistance.

Recommandation établie selon le Selectra Score le plus élevé sur chacun des 4 profils seniors (65, 75, 85 et 92 ans), mis à jour en juin 2026. Référencement gratuit.

Exemple
<x-senior-age-recommendation />
Source de vérité : sites/goodassur.com/helpers/senior-mutuelle-ranker.php. Tri Selectra Score, cadence éditoriale mensuelle (cf. convention-compliance §5.7).

Appelez un expert en assurance

01 86 65 20 05

Ouvert actuellement