Traçabilité

Historique des actions

{{ statutAuditModal.rdv?.civilite }} {{ statutAuditModal.rdv?.nom }} · {{ statutAuditModal.rdv?.agence }}

  • {{ row.title }}

    {{ row.statutLine }}

    {{ row.body }}

Wsh wsh !
Les sous rentrent 💾

Au top, nouveau RDV validé !

{{ epicAlert.rdv?.nom }}

{{ epicAlert.rdv?.agence }}

Ces clients...
Vraiment fatiguants ! 🙄

Votre rendez-vous n'est pas venu.
N'hésitez pas à rappeler {{ epicAlert.rdv?.nom }} pour voir si on peut le remplacer !

Mais bon, c'est la vie ! đŸ€·â€â™‚ïž

Coup dur ! đŸ„Š

Mission échouée avec {{ epicAlert.rdv?.nom }}.

On encaisse et on rebondit ! đŸ’Ș

{{ urgenceRdvModal.rdv?.civilite }} {{ urgenceRdvModal.rdv?.nom }} · {{ urgenceRdvModal.rdv?.agence }}

Agence {{ urgenceRdvModal.rdv?.agence || '—' }} Motif {{ urgenceRdvModal.rdv?.cancellationReview?.reason || urgenceRdvModal.rdv?.motifAnnulation || '—' }} Qui annule : {{ urgenceRdvModal.rdv.cancellationReview.who }}

{{ actionToast.title }}

{{ actionToast.message }}

Cadenas

{{ unlockFeedbackToast.title }}

{{ unlockFeedbackToast.subtitle }}

Cible en approche

RDV avec {{ agenceLiveAlert.rdv?.nom }} dans exactement 30 minutes. Soyez prĂȘts.

Imminent !

{{ agenceLiveAlert.rdv?.nom }} arrive dans 5 minutes. C'est le moment de lancer le cafĂ© ☕ !

Rendez-vous Honoré

Excellente prestation. Le client reviendra signer, on en est sûrs !
Bonne chance pour la suite 🍀

Vous ĂȘtes au top !

Mandat SignĂ© avec succĂšs đŸ“đŸ”„

Rendez-vous reporté

Le rendez-vous de {{ agenceLiveAlert.rdv?.nom }} a été déplacé.

Nouveau créneau : {{ formatRdvDateLong(agenceLiveAlert.rdv) }} à {{ agenceLiveAlert.rdv?.heure }}

Info retard client

Votre rendez-vous avec {{ agenceLiveAlert.rdv?.nom }} est en retard.

Le client aura {{ agenceLiveAlert.rdv?.retardMinutes || '?' }} minutes de retard.

Vos agences

Mise Ă  jour par l’équipe — merci de prendre connaissance des changements.

  • {{ row.text }}

Message important de C&N Solutions

Diffusion Ă©quipe — merci de confirmer votre lecture

Envoyé à {{ importantMessageAlert.sentAtText }}

Message important

{{ importantMessageAlert.contenu }}

Nouveautés de cette mise à jour

  • {{ line }}

Portefeuille prospecteur

Ce rendez-vous n'est plus comptabilisé

{{ portefeuilleImpactModal.rdv?.nom || 'Client' }} — {{ portefeuilleImpactModal.rdv?.agence || 'Agence' }}

Motif

{{ portefeuilleImpactModal.reason || 'Le rendez-vous a été invalidé pour le portefeuille.' }}

Validation du statut

Confirmer la mise Ă  jour avant d'enregistrer

{{ statusChangeValidationModal.rdv?.nom || 'Client' }} — {{ statusChangeValidationModal.rdv?.agence || 'Agence' }}

Portefeuille prospecteur

Ce rendez-vous était honoré et déjà compté dans le portefeuille.

Tarification

Enregistrement réussi

Les barĂšmes sont enregistrĂ©s dans la base (Firebase) : tous les postes et prospecteurs voient les mĂȘmes montants. Sur l’accueil, la progression et les paliers s’affichent pour les prospecteurs et stagiaires uniquement.

{{ appToast.kicker }}

{{ appToast.title }}

{{ appToast.message }}

Équipe

Initialiser le mot de passe

Pour {{ adminPasswordModal.membre ? (adminPasswordModal.membre.prenom + ' ' + adminPasswordModal.membre.nom).trim() : '' }}. L’ancien mot de passe n’est jamais affichĂ©. Le collaborateur pourra le modifier dans Mon compte.

Mon compte

Changer mon mot de passe

Connectez-vous avec votre identifiant d’équipe pour utiliser cette fonction.

Retirer ce membre ?

{{ teamDeleteConfirm.mode === 'hard' ? "Cette suppression est définitive et retire le profil de la corbeille." : "Le profil sera déplacé vers la corbeille (récupérable ensuite)." }}

ARIA

Connexion en cours


ARIA

LVX Privé

Le CRM privé de LVX.

ARIA centralise la gestion des rendez-vous, le suivi prospecteur, les validations agence et les outils CRM utiles à l'activité quotidienne.

Cette page est publique pour présenter l'application. L'accÚs aux données, aux rendez-vous et aux espaces de travail reste réservé aux utilisateurs autorisés.

Placement & Reports

Gestion fiable des créneaux, disponibilités et déplacements.

Suivi CRM

Prospection, portefeuille, confirmations et historique centralisés.

AccĂšs application

Choisissez votre espace sécurisé.

Espace administrateur

Qui utilise ARIA ?

Choisissez le profil correspondant à votre session (réglages + comptes créés).

© 2026 LVX. ARIA CRM.

Espace Partenaire Premium

{{ user.name }}

LVX

Réglages agence

{{ user.name }}

{{ enveloppeModal.rdv?.alerteType === 'placement' ? 'Nouveau rendez-vous placé' : (enveloppeModal.rdv?.reclamationStatus === 'accepted' ? 'Réclamation Validée' : 'K.O. Refusé') }}

Un nouveau rendez-vous a été placé pour vous le {{ formatRdvDateLong(enveloppeModal.rdv) }} à {{ enveloppeModal.rdv?.heure }}.

Super, désolé pour le désagrément ! Le K.O. a bien été pris en compte pour {{ enveloppeModal.rdv?.nom }}.

Nous ne pouvons pas accepter ce K.O. pour {{ enveloppeModal.rdv?.nom }}. Il ne rentre pas dans nos conditions de réclamation.

{{ currentDateWeekday }}

{{ currentDateDayMonth }}

{{ currentTimeHm }} :{{ currentTimeSec }}

Nouveaux Rendez-vous

Rendez-vous récemment placés pour votre agence.

Vous n'avez pas de nouveaux rendez-vous non lus.

Rappel photos K.O.

{{ agenceKoPhotoReminderBanner.count }} rĂ©clamation(s) avec preuves manquantes — {{ agenceKoPhotoReminderBanner.line }} Ouvrez RĂ©clamations puis la fiche pour envoyer les photos.

Activité du mois

Objectif du mois

{{ agenceCounts.rdvsMois }} / {{ currentAgenceObjectif || '∞' }} ({{ agenceFilterMonthLabel || 'pĂ©riode' }})

Placés ({{ agenceFilterMonthLabel || 'période' }}) : {{ agenceCounts.placesMois }}

Réclamations & K.O.

Demandes en cours et décisions sur vos dossiers.

Vérification

No-show : l’équipe appelle le client pour confirmer la prĂ©sence. DĂ©lai habituel 24 Ă  48 h.

Annulations : chaque demande d’annulation agence est validĂ©e ou refusĂ©e par l’équipe avant passage en statut dĂ©finitif.

{{ agenceCurrentView === 'reclamations' ? 'Aucune rĂ©clamation en cours pour le moment.' : (agenceCurrentView === 'verif_pas_venu' ? (agenceVerifSubtab === 'annulation' ? 'Aucune demande d’annulation en vĂ©rification.' : 'Aucune vĂ©rification « pas venu » en cours.') : 'Aucun rendez-vous dans cette vue.') }}

Objectif et demande de RDV

Demandez des RDV supplĂ©mentaires sur le mois en cours et/ou ajustez l’objectif du mois prochain.

DerniÚre demande : {{ agenceObjectiveMyLatestRequest.status === 'approved' ? 'Acceptée' : agenceObjectiveMyLatestRequest.status === 'rejected' ? 'Refusée' : 'En attente' }}

Cible {{ agenceObjectiveMyLatestRequest.targetYm || '—' }} · Objectif prochain mois {{ agenceObjectiveMyLatestRequest.objectif ?? '—' }} · +{{ agenceObjectiveMyLatestRequest.extraRdvsCurrentMonth ?? agenceObjectiveMyLatestRequest.extraRdvs ?? 0 }} RDV (en cours)

Objectif actuel

{{ currentAgenceObjectif || '∞' }}

Valeur actuellement appliquée à votre agence.

La demande sera transmise Ă  l’équipe.

Mes commerciaux

Performance sur le mois filtrĂ© (en-tĂȘte) — ajoutez ou modifiez votre Ă©quipe.

{{ bestCommercialName }} est le meilleur ce mois-ci

Mes commerciaux

Objectif global (mandats / mois)

Place un objectif pour vos commerciaux pour un ou plusieurs mois. Ajoute des lignes avec le bouton +, puis enregistre.

{{ formatYmLabelFr(makeYm(row.year, row.month)) || 'Mois' }}

mandats

Historique

Aucun objectif enregistré.

{{ formatYmLabelFr(o.ym) || o.ym }} — {{ o.objectiveMandats }} mandats

{{ o.ym === agenceSelectedYm ? 'Mois sélectionné' : '' }}

Mes commerciaux

Objectifs commerciaux (personnalisés)

DĂ©finit un objectif par commercial. Si vide, le commercial suivra l’objectif global du mois (si prĂ©sent).

{{ String(row.nom || 'C').substring(0,1).toUpperCase() }}

{{ row.nom }}

Objectif mandats / mois

Nouveau Commercial

Aucun commercial — commencez par « Ajouter ».

{{ comm.nom.charAt(0).toUpperCase() }}

{{ comm.nom }}

TrĂšs bon commercial

Mandats Signés

{{ getCommercialStats(comm.id).mandats }}

À venir ({{ agenceFilterMonthLabel || 'pĂ©riode' }})

{{ getCommercialStats(comm.id).avenir }}

Objectif mandats (mois)

Progression {{ getCommercialStats(comm.id).mandats }} / {{ getCommercialObjectiveMandats(comm) || '∞' }}

Objectif atteint

BientĂŽt atteint

Taux de conversion

{{ getCommercialStats(comm.id).taux }}%

Mes commerciaux

{{ commercialTreatedRdvsModal.title }}

{{ commercialTreatedRdvsModal.subtitle }}

Aucun rendez-vous traité

{{ calMonthYearLabel }}

{{ day.dayShort }}

{{ day.dayNum }}

Férié

Ouvert : RDV acceptés

{{ String(Number(h) % 1 === 0 ? `${String(Math.floor(Number(h))).padStart(2, '0')}h` : `${String(Math.floor(Number(h))).padStart(2, '0')}h30`) }}
{{ day.closed ? 'Fermé' : getCalSlotClosedLabel(day.dateStr, h) }}

{{ normalizeRdvStatut(ev) === 'bloque' ? (ev._calBlockedRangeLabel || ev.heure) : ev.heure }}

{{ normalizeRdvStatut(ev) === 'bloque' ? 'INDISPONIBLE' : (ev.nom || '—') }}

{{ ev.modele }}

Ajouter Ă  mon agenda

{{ agendaAddModal.title }}

Confirmation Agenda

Une page Google Agenda vient de s'ouvrir.

Avez-vous bien ajouté ou mis à jour ce rendez-vous dans votre agenda ?

ARIA

Connexion ARIA

{{ user.name }}

Panier

Flux en direct des derniers rendez-vous placés.

Aucun nouveau rendez-vous dans les 10 dernieres minutes.

{{ currentDateWeekday }}

{{ currentDateDayMonth }}

{{ currentTimeHm }} :{{ currentTimeSec }}

Flux terrain

Retours agences

MĂȘme esprit que l’accueil : filtres clairs, tout dĂ©file avec la page.

Tout est Ă  jour !

Vous n'avez aucun retour d'agence Ă  traiter pour ces filtres.

{{ getStatutsRdvStatusLabel(rdv) }} {{ getStatutActorLabel(rdv) }}

Statut en base : {{ formatStatutLabel(rdv) }}

MÀJ : {{ formatStatutUpdatedAt(rdv) }}

{{ rdv.civilite }} {{ rdv.nom }}

{{ formatRdvDateJoliFr(rdv) }} Ă  {{ rdv.heure }}

{{ getStatutsRdvReportDatesText(rdv) }}

{{ rdv.agence }}

Créé par {{ rdv.createur || rdv.createdBy }}

Motif Agence

{{ getKoReasonLabel(rdv) }}

Commentaire agence

{{ getKoAgencePhotoComment(rdv) }}

Preuves jointes ({{ rdv.koAgencePhotoUrls.length }})

ContrĂŽle terrain

Vérification

L’agence a dĂ©clarĂ© un no-show. Indiquez directement s’il s’est bien prĂ©sentĂ© : non = pas venu confirmĂ© (non facturĂ©), oui = rendez-vous honorĂ© et facturĂ©. Les administrateurs voient toutes les files.

L’agence demande l’annulation d’un rendez-vous : vĂ©rifiez le motif, puis validez l’annulation ou refusez pour rĂ©tablir le crĂ©neau (statut prĂ©cĂ©dent).

đŸ€ž

{{ startingRdvAlert.count > 1 ? `Vous avez ${startingRdvAlert.count} rendez-vous qui commencent !` : 'Vous avez un rendez-vous qui commence !' }}

{{ startingRdvAlert.count > 1 ? 'On croise les doigts pour cette fournée !' : `Chez ${startingRdvAlert.agence}, on espÚre que ça va bien se passer !` }}

Entreprise partenaire

{{ user.name }}

Mon Portefeuille (HT)

{{ displayAmount(prospecteurGains) }}

C.A. Mensuel (TTC)

{{ displayAmount(caMensuelAdminTTC) }}

Placés

Conseils du moment

Nouveau conseil

{{ currentDashboardConseil.title || 'Conseil du moment' }}

{{ currentDashboardConseil.message || 'Ajoutez un conseil dans Scripts pour le voir ici.' }}

Conseil {{ dashboardConseilIndex + 1 }} / {{ scriptConseilsGlobalBlocks.length }}

{{ dashboardBottomTab === 'timeline' ? 'Mini timeline live' : (currentStatusFilter ? formatStatutLabel(currentStatusFilter) : (dashFilterDay === 'today' ? 'Rendez-vous du jour' : 'Rendez-vous de demain')) }}

{{ adminLiveTimelineEvents.length }} {{ dashFilteredRdvs.length }}

Aucun événement récent

Rien Ă  afficher

Aucun rendez-vous ne correspond à ces critÚres. Pause bien méritée ou fin de journée ?

Agence {{ getClientInitials(rdv) }}
{{ rdv.civilite }} {{ rdv.nom }}

Agence : {{ getAgenceMetaForRdv(rdv).nom }}

Placé par {{ getPlacedByLabelForViewer(rdv) }}

{{ formatRdvDateShort(rdv) }} {{ rdv.heure }}
{{ formatStatutLabel(rdv) }}
En cours Temps restant : {{ getRdvTimeLeftLabel(rdv) }}
{{ formatPhoneForDisplay(rdv.telephone) }}
{{ rdv.modele || 'ModÚle non renseigné' }}

BibliothĂšque scripts

Scripts d’appel

Page dĂ©diĂ©e pour Ă©crire et modifier vos scripts d’appel, sans passer par les critĂšres agence.

Script global (toutes les agences)

{{ scriptsPageEditMode ? 'Mode édition' : 'Lecture' }}
{{ block.label || 'Bloc sans titre' }}

{{ block.message || 'Aucun texte dans ce bloc.' }}

Resultats: {{ scriptObjectionsFiltered.length }}

Proposer une objection

Suggestions a valider ({{ scriptPendingObjectionSuggestions.length }})

Aucune suggestion en attente.

Proposé par {{ sug.createdBy || 'Equipe' }}

Mes suggestions

{{ sug.objection || 'Suggestion' }}

Statut: {{ sug.status === 'approved' ? 'Validee' : (sug.status === 'rejected' ? 'Refusee' : 'En attente') }}

Aucune objection ne correspond a la recherche.

Objection {{ entry.idx + 1 }}

« {{ entry.row.objection || '...' }} »

{{ entry.row.response || '...' }}

{{ kw }} Aucun mot-cle
Aucun message enregistré pour le moment.

Message {{ idx + 1 }}

{{ msg.title || 'Sans titre' }}

{{ msg.message || 'Aucun contenu.' }}

Aucun conseil enregistré pour le moment.

Conseil {{ idx + 1 }}

Nouveau conseil

{{ tip.title || 'Sans titre' }}

{{ tip.message || 'Aucun contenu.' }}

Points importants

Point important

{{ point.title || 'Point important' }}

« {{ point.message || 'Ajoutez votre message important.' }} »

Pilotage réseau

Statistiques agences

Vue d’ensemble du mois : mandats, pas venus, C.A. HT estimĂ© (tarifs agence), puis dĂ©tail par agence.

{{ adminAgenceStatsYmLabel }} {{ adminAgenceStatsFilterLabel }}

RDV comptés

{{ adminAgenceStatsGlobalTotals.totalRdvs }}

Sur la période (tous statuts)

Mandats

{{ adminAgenceStatsGlobalTotals.mandats }}

OK M sur le mois

Pas venu

{{ adminAgenceStatsGlobalTotals.pas_venu }}

Honorés

{{ adminAgenceStatsGlobalTotals.honores }}

Taux présence

Ce mois-ci

{{ presenceStats.taux }}%

C.A. HT (estimé)

{{ displayAmount(adminAgenceStatsGlobalTotals.ca_ht) }}

BasĂ© sur tarif agence − gestes (RDV honorĂ©s facturables)

À surveiller

RDV sur la pĂ©riode mais C.A. HT nul ou quasi nul — souvent pas venus / peu d’honorĂ©s facturables ou tarif manquant.

{{ adminAgenceStatsAttentionAgences.length }}
  • {{ row.nom }}

    {{ row.pas_venu }} pas venu · {{ row.total }} RDV

Aucune agence dans ce cas sur cette période.

Top C.A. HT

Agences qui gĂ©nĂšrent le plus de chiffre (honorĂ©s × tarif).

  • {{ idx + 1 }}

    {{ row.nom }}

    {{ row.mandats }} mandats · {{ row.honores }} honorés

    {{ displayAmount(row.ca_ht) }}

Mandats

{{ adminAgenceStatsTableRows[0].mandats }}

Pas venu

{{ adminAgenceStatsTableRows[0].pas_venu }}

Honorés

{{ adminAgenceStatsTableRows[0].honores }}

C.A. HT

{{ displayAmount(adminAgenceStatsTableRows[0].ca_ht) }}

Taux présence

Agence · mois

{{ (adminAgenceStatsTableRows[0].honores + adminAgenceStatsTableRows[0].pas_venu) > 0 ? Math.round((adminAgenceStatsTableRows[0].honores / (adminAgenceStatsTableRows[0].honores + adminAgenceStatsTableRows[0].pas_venu)) * 100) : 0 }}%

SynthĂšse par agence

{{ adminAgenceStatsYmLabel }}
Agence C.A. HT Mand. K.O. Pas venu AnnulĂ© OK OK M ÎŁ
{{ row.nom }} {{ displayAmount(row.ca_ht) }} {{ row.mandats }} {{ row.ko }} {{ row.pas_venu }} {{ row.annule }} {{ row.ok }} {{ row.ok_m }} {{ row.total }}
Aucune agence active ou données encore vides.

Évolution sur le mois

{{ adminAgenceStatsFilterLabel }} — volume par jour (date du rendez-vous). Échelle : pic du mois à {{ adminAgenceStatsDailyMax }} RDV.

K.O. Pas venu AnnulĂ© OK OK M
{{ day.total || '' }}
{{ day.dayNum }}

{{ calMonthYearLabel }}

{{ calAgencyLiveStatus.label }} {{ calAgencyLiveStatus.subLabel }}

{{ day.dayShort }}

{{ day.dayNum }}

Férié

Ouvert : RDV acceptés

{{ String(Number(h) % 1 === 0 ? `${String(Math.floor(Number(h))).padStart(2, '0')}h` : `${String(Math.floor(Number(h))).padStart(2, '0')}h30`) }}
{{ day.closed ? 'Fermé' : getCalSlotClosedLabel(day.dateStr, h) }}

{{ normalizeRdvStatut(ev) === 'bloque' ? (ev._calBlockedRangeLabel || ev.heure) : ev.heure }}

{{ normalizeRdvStatut(ev) === 'bloque' ? 'INDISPONIBLE' : (ev.nom || '—') }}

{{ ev.modele }}

Portefeuille — {{ selectedPortefeuilleUser }}

Gains HT — {{ portefeuillePeriodLabel }}

{{ p.name.charAt(0) }}

{{ p.name }}

{{ displayAmount(p.solde) }}

Écart dĂ©tectĂ© (solde thĂ©orique vs portefeuille)

D’aprĂšs les RDV honorĂ©s facturĂ©s et la tarification, il manque {{ displayAmount(portefeuilleEcartRegularisation.gap) }} HT sur le portefeuille de ce mois ({{ portefeuilleEcartRegularisation.n }} RDV pris en compte).

Solde Net Acquis (HT)

{{ displayAmount((user.role === 'admin' || user.role === 'supervisor') ? portefeuilleProspecteursList.find(x => x.nom === selectedPortefeuilleUser)?.solde : prospecteurPortefeuilleSoldeMois) }}

Rémunération de base

Pour 1 RDV honoré

{{ displayAmount(tarification.prixBase) }}

Objectifs & paliers

Compteur (mois) {{ prospecteurPalierDashboard.count }} RDV honorés facturés
Prime progressive

Prime appliquée (non cumulable)

+{{ displayAmount(prospecteurPalierDashboard.palierActiveHighest.prime) }} — palier {{ prospecteurPalierDashboard.palierActiveHighest.thr }} RDV atteint

Aucun palier de prime atteint sur cette période.

  • {{ row.thr }} RDV
    +{{ displayAmount(row.prime) }} {{ row.acquired ? 'Acquis' : 'En attente' }}

Rappel : une seule prime de palier compte — celle du seuil le plus Ă©levĂ© dĂ©jĂ  atteint.

Prochain palier Objectif {{ prospecteurPalierDashboard.nextPalier.rdv }} RDV Tous atteints
Seuil fixe

Montant fixe appliqué (non cumulable)

{{ displayAmount(prospecteurPalierDashboard.fixeActifHighest.montant) }} — seuil {{ prospecteurPalierDashboard.fixeActifHighest.thr }} RDV atteint

Aucun seuil fixe atteint sur cette période.

  • {{ row.thr }} RDV
    {{ displayAmount(row.montant) }} {{ row.acquired ? 'Acquis' : 'En attente' }}

Un seul montant fixe : celui du dernier seuil atteint.

Prochain seuil Objectif {{ prospecteurPalierDashboard.nextFixe.rdv }} RDV Tous atteints

Solde du mois précédent

Ajoute une ligne sur {{ portefeuillePeriodLabel }} d’un montant Ă©gal au solde HT de {{ portefeuillePrevMonthLabel }}.

Montant : {{ displayAmount(portefeuilleSoldeMoisPrecedentPourBtn) }} HT

Paiement le mois prochain (M+1)

Retire le solde net de {{ portefeuillePeriodLabel }} et le crĂ©dite sur {{ portefeuilleNextMonthLabel }} — le prospecteur voit la ligne en passant au mois suivant.

Solde Ă  reporter : {{ displayAmount(portefeuilleSoldeMoisCourantPourReport) }} HT

Historique (HT)

{{ currentPortefeuilleTransactions.length }} lignes

Aucune transaction ce mois-ci.

{{ t.label || t.type }} Masqué

{{ t.reason }}

{{ String(t.type || '').replace('_', ' ') }} ‱ {{ formatPortefeuilleTransactionDate(t) }}

{{ transactionMontantPortefeuilleHt(t) >= 0 ? '+' : '' }}{{ displayAmount(transactionMontantPortefeuilleHt(t)) }}

Aperçu rÚglement facture

{{ portefeuilleSalairePreview.userName }} · {{ portefeuilleSalairePreview.periodLabel }}

Montant à régler

{{ displayAmount(portefeuilleSalairePreview.amount) }} HT

Ce montant est recalculé au moment de la confirmation d'envoi.

Message envoyé

Notes & Rappels

Gérez vos appels, clients à suivre et mémos personnels.

Aucun rappel pour ce filtre.

Fait À rappeler
{{ (note.clientName || note.nom || 'C').charAt(0).toUpperCase() }}

{{ note.type === 'client' ? (note.clientName || note.nom) : 'Note rapide' }}

{{ getNoteAgencyLabel(note) }}

"{{ note.note || note.texte }}"

Date trop éloignée

Nous vous dĂ©conseillons de placer un rendez-vous si loin pour Ă©viter les No-shows. À titre exceptionnel, vous pouvez quand mĂȘme forcer le placement.

Réglage anti No-Show

Voulez-vous activer ou désactiver la limite de placement à J+2 ?

Nouveau Rendez-vous

Étape {{ wizard.step }} sur 7 — {{ wizardTitles[wizard.step] }}

Nous sommes {{ currentDayNameFr }}. Placement autorisé jusqu'à {{ maxDayNameFr }}.

Aucun brouillon enregistré.

{{ draft.vehicule.modele || 'Nouveau RDV (en cours)' }}

SauvegardĂ© le {{ draft.savedAt }} — BloquĂ© Ă  l'Ă©tape {{ draft.lastStep }}

{{ wizardDaySummary.remJour === 1 ? '1 rendez-vous par jour' : wizardDaySummary.remJour + ' rendez-vous par jour' }} Matin · {{ wizardDaySummary.remMatin === 1 ? '1 place' : wizardDaySummary.remMatin + ' places' }} AprÚs-midi · {{ wizardDaySummary.remAprem === 1 ? '1 place' : wizardDaySummary.remAprem + ' places' }}

Doublon detecte

{{ duplicateUpcomingPhoneNoticeText }}

Si ce n'est pas pour le meme vehicule, vous pouvez placer ce rendez-vous.

  • {{ formatRdvDateJoliFr(d) }} a {{ d.heure || '--:--' }} · {{ d.agence || 'Agence' }} · {{ d.civilite || '' }} {{ d.nom || '' }}

Attention KO deja enregistre

{{ duplicateKnownPhoneKoNoticeText }} Si c'est pour ce meme vehicule, merci de ne pas le rentrer : le placement est bloque.

  • {{ d.civilite || '' }} {{ d.nom || '' }}

    Modele du vehicule : {{ d.modele || d.vehicule_modele || 'Vehicule non renseigne' }}

CritÚres de l'agence non respectés

  • {{ err }}

Remplissage Magique

Détails Facebook détectés :

{{ wizardForm.facebookCaracteristiquesFormatees }}

Blocage KO meme vehicule

Impossible de continuer : un autre prospecteur a deja place ce client et le dossier est passe KO pour ce vehicule. Placez seulement pour un autre vehicule.

Le Véhicule

€
KM
{{ new Intl.NumberFormat('fr-FR').format(wizardForm.vehicule.prix) }} € {{ wizardForm.vehicule.annee }} {{ new Intl.NumberFormat('fr-FR').format(wizardForm.vehicule.km) }} km

Motif & Infos Agence

Récapitulatif (Cliquer pour modifier)

Agence
Civilité
Client
Téléphone
Date & Heure
Source
Véhicule
Prix (€)
Année / Km
/
Motif Vente
Info Agence

Assurez-vous d'avoir envoyĂ© vous-mĂȘme le SMS de confirmation au client avant de valider.

Rendez-vous Placé !

Le dossier a été transmis avec succÚs et l'agence est avertie.

Équipe en ligne

Suivi en temps réel de l'activité des prospecteurs.

{{ onlineUsersCount }} Actif(s)

Personne n'est connecté actuellement.

{{ getOnlinePresenceInitials(ou) }}

{{ ou.name }}

{{ formatTimeAgo(ou.lsTime) }} ‱ {{ ou.deviceType }}

RDV Validé ! {{ getViewLabel(ou.currentView) }}
En crĂ©ation Étape {{ Math.min(7, Math.max(1, Number(ou.rdvStep) || 1)) }}/7 : {{ ou.rdvStepLabel }}

{{ ou.agenceName }}

{{ formatPresenceRdvDateLongFr(ou.rdvDate) }} Ă  {{ ou.rdvHeure }}

{{ ou.rdvVehicule }} {{ displayAmount(ou.rdvPrix) }}

Demandes objectifs agences

Validez ou refusez les RDV en cours et les objectifs demandés pour le mois prochain.

{{ agenceObjectivePendingCount }} en attente

Aucune demande en attente.

{{ req.agenceNom || 'Agence' }}

En cours : {{ req.currentYm || '—' }} · Prochain : {{ req.targetYm || '—' }}

En attente

Objectif demandé

{{ req.objectif ?? '—' }}

RDV en plus (en cours)

{{ req.extraRdvsCurrentMonth ?? req.extraRdvs ?? 0 }}

{{ req.note }}

Quartier Général

Agences, affectations et messages importants (validation cÎté prospecteurs).

Agences actives

{{ teamData.agences.length }}

Prospecteurs

{{ teamTotalProspecteurs }}

{{ agence.nom }}

{{ getProspecteursForAgency(agence).length }}
Aucun profil trouvé.
Aucune agence assignée.
{{ ag.nom }}
Aucun message pour l’instant.
{{ msg.date }} {{ msg.cibleLabel }}
Vus {{ teamMessageVuCount(msg) }}/{{ teamMessageTotal(msg) }}

"{{ msg.contenu }}"

TEAM — Espace administrateur

Le Quartier Général (agences, affectations, messages de masse) est réservé aux administrateurs. Connectez-vous avec un compte admin pour y accéder.

{{ reseauAgenceRdvsModal.title }}

{{ reseauAgenceRdvsModal.subtitle }}

Aucun rendez-vous dans cette liste.

Réseau d'Agences

Gérez les objectifs, les limites et les déverrouillages exceptionnels.

Aucune agence ne correspond Ă  votre recherche.

{{ agence.nom }}

{{ agence.adresse || 'Adresse non renseignée' }}

Objectif

{{ agence.objectif || '∞' }}

Mois suivant (placĂ©s) : {{ agence.placesMoisSuivant }} — {{ reseauAgencesMoisSuivantLabel }}

Capacité sur les 2 prochains jours

{{ cap.label }}

{{ cap.closed ? 'Fermé' : (cap.blocked ? 'Complet' : (cap.remaining + ' places')) }}

La jauge et les « restants » se basent sur les honorés (facturables), pas sur les seuls placés.

{{ agence.reseauProgressLabel }}
Progression (honorés / objectif) {{ agence.restantsHonores }} restants

Bilan & factures

SynthÚse, PDF et relances : tout est calculé à partir des RDV honorés du mois que vous pilotez ci-dessous.

Période

Mois analysé

{{ bilanLibelleMoisFr(bilanYmSelectionValide) }}

Génération « magique » des factures

RDV de {{ bilanLibelleMoisFr(bilanMoisPrecedentYM) }} → Brouillons factures

Tant que vous affichez {{ bilanLibelleMoisFr(bilanYmSelectionValide) }}, le bouton de l’onglet PDF gĂ©nĂšre les factures pour le mois prĂ©cĂ©dent ({{ bilanLibelleMoisFr(bilanMoisPrecedentYM) }}). Les reports de facturation par agence se gĂšrent dans l’onglet Reporter (mĂȘme mois sĂ©lectionnĂ© ici).

C.A. honorés (HT)

{{ displayAmount(caBilanMoisCourantHT) }}

À reverser prospecteurs

{{ displayAmount(partProspecteursBilan) }}

Reste C&N Solutions

{{ displayAmount(Math.max(0, caBilanMoisCourantHT - partProspecteursBilan)) }}

HT − commissions prospecteurs (mĂȘme pĂ©rimĂštre RDV)

RDV facturables

{{ kpiBilan.totalRdv }}

TVA ({{ Math.round(kpiBilan.tvaRate || 0) }}%)

{{ displayAmount(kpiBilan.caTVA) }}

C.A. TTC (estimé)

{{ displayAmount(kpiBilan.caTTC) }}

Prévisionnel (mois en cours)

{{ displayAmount(kpiBilanPrevisionnel.ttcPrevisionnel) }}

DĂ©jĂ  gagnĂ© : {{ displayAmount(kpiBilanPrevisionnel.ttcDejaGagne) }} · À venir ({{ kpiBilanPrevisionnel.nAVenir }} RDV) : {{ displayAmount(kpiBilanPrevisionnel.ttcAVenir) }}

Lignes bilan (agence / jour)

Date Agence RDV HT TVA TTC Statut
Aucune ligne de bilan pour ce mois.
{{ ligne.dateLabel }} {{ ligne.agence }} {{ ligne.rdv }} {{ displayAmount(ligne.totalHt) }} {{ displayAmount(ligne.totalTva) }} {{ displayAmount(ligne.totalTtc) }} Reporté En cours

Reporter

PĂ©riode : {{ bilanLibelleMoisFr(bilanYmSelectionValide) }} — changez le mois en haut de page si besoin.

Une agence « reportée » est retirée du C.A. de {{ bilanLibelleMoisFr(bilanYmSelectionValide) }} ; ses prestations seront ajoutées à la génération de factures du mois suivant ({{ bilanLibelleMoisFr(bilanMoisSuivantYM) }}).

{{ bilanYmSelectionValide || '—' }}

Aucun RDV honoré facturable sur ce mois.

SĂ©lectionnez un autre mois en tĂȘte de page ou attendez des RDV honorĂ©s.

Agence RDV TTC (estim.) Action
{{ row.agence }} {{ row.nbRdv }} {{ displayAmount(row.ttc) }}

Création magique

GĂ©nĂšre les brouillons pour {{ bilanLibelleMoisFr(bilanMoisPrecedentYM) }} (mois calendaire prĂ©cĂ©dent par rapport Ă  {{ bilanLibelleMoisFr(bilanYmSelectionValide) }} affichĂ© en tĂȘte de page).

En-tĂȘte PDF : logo (URL) Ă  la place du nom ; pied de page : IBAN (si l’agence est en virement), conditions et mentions lĂ©gales. Les e-mails facturation (factures, relances, confirmations) partent de comptabilite@lvx-auto.fr. L’adresse contact@lvx-auto.fr sert uniquement Ă  l’envoi des accĂšs espace agence (bouton dĂ©diĂ©) — expĂ©diteurs Ă  valider chez Brevo.

Si l’image est hĂ©bergĂ©e sur un CDN sans CORS, le PDF utilise un relais automatique ; en repli, le nom / signature ou « LVX Auto » s’affiche.

{{ facturesListFiltreesActives.length }} facture(s) Ă  traiter sur {{ facturesList.length }}{{ facturesPayeesRecuesMoisBilan.length }} paiement(s) enregistrĂ©(s) en {{ bilanLibelleMoisFr(bilanYmSelectionValide) }} — onglet Paiement reçu

À encaisser (liste filtrĂ©e)

{{ displayAmount(facturesTotauxEncoursFiltres.aEncaisser) }} TTC

Déjà reçu (liste filtrée)

{{ displayAmount(facturesTotauxEncoursFiltres.dejaRecu) }} TTC

Total facturé (liste filtrée)

{{ displayAmount(facturesTotauxEncoursFiltres.totalFacture) }} TTC

{{ facturesSelectedIds.length }} sélectionnée(s)
Aucune facture dans Firestore. Utilisez le bouton ci-dessus ou créez des documents dans la collection factures.
Aucune facture pour cette période. Changez le filtre ou sélectionnez « Toutes les périodes ».
Toutes les factures de cette pĂ©riode sont marquĂ©es payĂ©es. Consultez l’onglet Paiement reçu.
{{ f.statut || 'brouillon' }}
{{ f.numero != null ? f.numero : f.id }}

{{ f.clientNom || f.agence || f.client || '—' }}

{{ f.nbRdv != null ? f.nbRdv : '—' }} RDV · {{ displayAmount(getFactureMontantTTC(f)) }} TTC

1er envoi : {{ formatFactureDateTimeFr(f.datePremierEnvoi) }}

  • {{ formatFactureDateTimeFr(h.at) }} — {{ formatFactureRelanceLabel(h.type) }}

Paiement reçu

Paiements enregistrĂ©s sur le mois affichĂ© en tĂȘte de page ({{ bilanLibelleMoisFr(bilanYmSelectionValide) }}) : filtre sur la date de paiement, pas sur les autres mois.

Tout le monde a payé pour le cycle de facturation lié à ce mois.

Plus aucune facture « envoyée » en attente sur les périodes {{ bilanLibelleMoisFr(bilanMoisPrecedentYM) }} / {{ bilanLibelleMoisFr(bilanYmSelectionValide) }}.

Mois de référence

{{ bilanLibelleMoisFr(bilanYmSelectionValide) }} ({{ bilanYmSelectionValide }})

{{ facturesTotauxPaiementRecuMoisBilan.count }} paiement(s) enregistré(s) ce mois-ci sur {{ facturesList.length }} facture(s) au total.

Total encaissé (ce mois-ci)

{{ displayAmount(facturesTotauxPaiementRecuMoisBilan.totalTTC) }} TTC

Nombre de paiements (ce mois-ci)

{{ facturesTotauxPaiementRecuMoisBilan.count }}

Gains du mois par agence (RDV honorés)

RDV total

{{ bilanAgencesFacturationTotals.rdv }}

CA total HT

{{ displayAmount(bilanAgencesFacturationTotals.ht) }}

CA total TTC

{{ displayAmount(bilanAgencesFacturationTotals.ttc) }}

Aucune donnée agence sur ce mois.
Agence RDV CA HT CA TTC
{{ row.agence }} {{ row.nbRdv }} {{ displayAmount(row.ht) }} {{ displayAmount(row.ttc) }}
Aucune facture dans Firestore.
SĂ©lectionnez un mois valide en tĂȘte de page.
Aucun paiement enregistré ce mois-ci (date de paiement hors {{ bilanLibelleMoisFr(bilanYmSelectionValide) }}).
payée {{ f.numero != null ? f.numero : f.id }}

{{ f.clientNom || f.agence || f.client || '—' }}

{{ f.nbRdv != null ? f.nbRdv : '—' }} RDV · {{ displayAmount(getFactureMontantTTC(f)) }} TTC

Payée le {{ formatFactureDateTimeFr(f.datePaiement) }}

1er envoi : {{ formatFactureDateTimeFr(f.datePremierEnvoi) }}

Relances (périmÚtre mois bilan)

Factures envoyĂ©e dont la pĂ©riode est {{ bilanLibelleMoisFr(bilanMoisPrecedentYM) }} ou {{ bilanLibelleMoisFr(bilanYmSelectionValide) }}. ÉchĂ©ance dĂ©passĂ©e ou dans les 7 prochains jours. Les boutons R1–R3 grisĂ©s = dĂ©jĂ  envoyĂ©s (historique).

Aucune relance Ă  traiter pour ce mois. Les notifications s’éteignent quand vous ouvrez cet onglet (jusqu’à nouvelle Ă©chĂ©ance).

Aperçu de l'e-mail

À : {{ factureEmailPreview.toEmail }}

Objet : {{ factureEmailPreview.subject }}

Confirmer le paiement reçu

Le client peut recevoir un e-mail de remerciement (aperçu ci-dessous).

Objet : {{ facturePayeeModal.subject }}

Envoi Ă  : {{ facturePayeeModal.toEmail }}

Aucun e-mail client trouvĂ© sur la facture / agence — vous pouvez enregistrer le paiement sans envoi.

Aperçu

Supprimer {{ facturesSelectedIds.length }} facture(s) ?

Cette action est définitive. Tapez SUPPRIMER pour confirmer.

Statut facture

{{ factureStatutModal.facture?.numero || factureStatutModal.facture?.id || '' }}

CritĂšres Agences

Consultez les rĂšgles, horaires et scripts de vos partenaires.

{{ agence.nom }}

{{ agence.adresse }}

{{ formatPhoneForDisplay(agence.telephone) }}
{{ critereAgenceOuvertureUi(agence).badge }} {{ critereAgenceOuvertureUi(agence).line }}

{{ selectedCritereAgence.nom }}

{{ displayAmount(criteresAgenceForm.prixMin) }}

{{ criteresAgenceForm.kmMax }} km

{{ criteresAgenceForm.ageMaxVehicule }}ans

{{ formatArrayToString(criteresAgenceForm.exclusions) }}

{{ formatArrayToString(criteresAgenceForm.autorises) }}

Aucun critere vehicule complementaire renseigne.

RĂšgles d'agenda

ParamĂštres dĂ©finis par l’administrateur pour cette agence (placements de RDV).

RDV max / jour

{{ critereAgendaAffichage.parJour }}

RDV max / créneau

{{ critereAgendaAffichage.maxCreneau }}

Matin

{{ critereAgendaAffichage.matin }}

AprĂšs-midi

{{ critereAgendaAffichage.am }}

Objectif (mensuel / agence)

{{ critereAgendaAffichage.objectif }}

Entre deux rendez-vous

{{ critereAgendaAffichage.delaiLabel }}

RÚgles personnalisées par jour

{{ row.day }} Matin : {{ row.matin }} AprÚs-midi : {{ row.aprem }} Total / jour : {{ row.totalJour }} Par créneau : {{ row.creneau }} Intervalle : {{ row.intervalle }}

Mode personnalisé actif

Les quotas globaux sont désactivés. Configurez les rÚgles jour par jour dans la configuration agence.

Modifier les rĂšgles (admin)

Au Top !

Aucune exclusion pour cette agence, le terrain est totalement libre.

AĂŻe aĂŻe ! Faites attention

Merci de suivre strictement ces exclusions pour ne pas faire de hors-jeu :

{{ formatArrayToString(criteresAgenceForm.exclusions) }}

Véhicules Privilégiés / Acceptés

{{ formatArrayToString(criteresAgenceForm.autorises) }}

Zone de Prospection

{{ criteresAgenceForm.zoneMode === 'codes_postaux' ? 'Liste de Codes Postaux spĂ©cifiques' : 'Rayon gĂ©ographique autour de l’agence' }}

{{ criteresAgenceForm.pointsDeRepere || 'Aucun repÚre renseigné.' }}

Horaires de l'agence

Planning d'ouverture et de fermeture.

{{ critereJourLabelsUi[jour] }}
{{ critereHorairesJourCards[jour].badge }}

Simulation RDV agence

CrĂ©ez un faux rendez-vous test (avec SMS) pour l’espace partenaire de cette agence.

Simulation active

L’heure est automatique : En cours = maintenant · Pas en cours = +1h.

Gestion des Objections

Résultats: {{ critereObjectionsFiltered.length }}

Diffuser ces objections

Sélection: {{ critereObjectionDeploySelectedAgencyIds.length }}

« {{ entry.obj.objection || '...' }} »

{{ entry.obj.response || '...' }}

Onglet {{ critereTab }} en cours de montage

Les données respectent la séparation agences / agencyCriteria.

Répertoire

Retrouvez et filtrez tous les rendez-vous.

Agence sélectionnée {{ repertoireAgencyStats.agenceNom }} {{ repertoireAgencyStats.total }} résultat{{ repertoireAgencyStats.total > 1 ? 's' : '' }}

K.O.

{{ repertoireAgencyStats.ko }}

Pas venu

{{ repertoireAgencyStats.pasVenu }}

Honoré

{{ repertoireAgencyStats.honore }}

Mandat

{{ repertoireAgencyStats.mandat }}

Aucun rendez-vous trouvé.

Nouveau
{{ formatRdvDateShort(rdv) }} {{ rdv.heure }}
{{ rdv.civilite }} {{ rdv.nom }}
{{ formatStatutLabel(rdv) }} Maintenu client Répondeur (risque no-show)

{{ rdv.modele || '—' }}

{{ displayAmount(rdv.prix) }}

{{ rdv.telephone }}

{{ rdv.agence }}

{{ rdv.createur }}

{{ user.role === 'supervisor' ? 'Corbeille' : (user.role === 'prospecteur' ? 'Réglages' : 'Réglages Administration') }}

{{ user.role === 'supervisor' ? 'Demandes de suppression & corbeille' : 'Sélectionnez un module' }}

{{ currentSettingsTabObj.label }}

Configuration

Mon Profil

{{ user.initials }}

{{ user.role }}

{{ user.name }}

{{ user.email || '—' }}

Votre nom est géré par l'administrateur.

Apparence

Thùme automatique : clair de 6h à 16h59, sombre de 17h à 5h59 (heure de l’appareil).

Activer le passage automatique jour / nuit

Le bouton lune / soleil (menu) dĂ©sactive ce mode et mĂ©morise le thĂšme choisi. RĂ©activez l’option ici pour retrouver les horaires.

Sécurité

Envoyer un message au client ?

Le client recevra la nouvelle date du rendez-vous.

{{ rescheduleResult.title }}

{{ rescheduleResult.subtitle }}

Creator Assignment

Choose who created this appointment

Filter by role and pick a clean profile below.

No profile found for this role.

Agence du rendez-vous

Choisir une agence autorisée

Aucune agence disponible.

Retirer ce commercial ?

Vous allez retirer {{ commercialDeleteModal.nom }} de votre equipe.

Attitrer un commercial

Sélectionnez le membre de votre équipe qui prend ce rendez-vous.

Aucun commercial créé.
Allez dans "Mes commerciaux" pour les ajouter.

Rendez-vous

Fiche client

{{ getRdvAgenceDateParts(agenceActionModal.rdv).wd }} {{ getRdvAgenceDateParts(agenceActionModal.rdv).day }} {{ getRdvAgenceDateParts(agenceActionModal.rdv).month }}
Heure {{ getRdvAgenceDateParts(agenceActionModal.rdv).time }}
En cours Temps restant : {{ getRdvTimeLeftLabel(agenceActionModal.rdv) }}
{{ getClientInitials(agenceActionModal.rdv) }}

Fiche client

{{ agenceActionModal.rdv?.civilite }} {{ agenceActionModal.rdv?.nom }}

{{ formatStatutLabel(agenceActionModal.rdv) }}

Veille : RDV maintenu

Veille : répondeur / risque no-show

K.O. définitif

Statut validĂ© — plus de modification ici.

{{ getKoReasonLabel(agenceActionModal.rdv) }}

{{ getKoAgencePhotoComment(agenceActionModal.rdv) }}

Épreuves ({{ getKoPhotosList(agenceActionModal.rdv).length }})

Véhicule

{{ agenceActionModal.rdv?.modele || 'Non renseigné' }}

Voir l'annonce
Lien annonce non renseigné

Client

{{ formatPhoneForDisplay(agenceActionModal.rdv?.telephone) }}

{{ String(agenceActionModal.rdv?.reclamationStatus || '').toLowerCase() === 'accepted' ? 'Réclamation acceptée' : 'Réclamation refusée' }}

Votre réclamation est validée, vous ne serez pas facturé pour ce rendez-vous.

Votre réclamation a été refusée. Vous gardez l'historique et les photos dans l'onglet Réclamations.

{{ getKoAgencePhotoComment(agenceActionModal.rdv) }}

Délai de 1 h 30 dépassé

Le délai pour modifier le statut est dépassé. Le rendez-vous a été automatiquement clÎturé (Honoré).

Avez-vous eu le mandat ?

MĂȘme si le dĂ©lai est passĂ©, vous pouvez toujours nous indiquer si le mandat a Ă©tĂ© signĂ©.

Rendez-vous finalisé (OK Mandat)

Le statut est déjà validé. Vous pouvez consulter la fiche et gérer uniquement le commercial.

Véhicule

{{ agenceActionModal.rdv?.modele || 'Non renseigné' }}

Voir l'annonce
Lien annonce non renseigné

Client

{{ formatPhoneForDisplay(agenceActionModal.rdv?.telephone) }}

Rendez-vous annulé

Ce crĂ©neau est annulĂ©. Vous pouvez proposer une nouvelle date — SMS de confirmation comme pour un report.

Véhicule

{{ agenceActionModal.rdv?.modele || 'Non renseigné' }}

Voir l'annonce

Véhicule

{{ agenceActionModal.rdv?.modele }}

Prix {{ displayAmount(agenceActionModal.rdv?.prix) }}
Année {{ agenceActionModal.rdv?.annee }}
Km {{ formatKmForDisplay(agenceActionModal.rdv?.km) }}
Voir l'annonce

Téléphone

{{ formatPhoneForDisplay(agenceActionModal.rdv?.telephone) }}

Réclamation en cours

Analyse admin de votre demande K.O.

Rendez-vous Ă  venir

DĂšs l’heure du RDV : 1 h 30 pour HonorĂ©, K.O. ou Pas venu.

Avant {{ agenceActionModal.rdv?.heure }} :

Correction no-show : choisissez uniquement Honoré ou K.O.

Mandat signé ?

Choisissez OK mandat si le mandat a été signé, ou OK sans mandat si le RDV est honoré sans mandat.

Les deux options enregistrent le rendez-vous comme honoré ; seule la mention mandat change.

Votre annulation sera vĂ©rifiĂ©e par l’équipe.

Demande d’annulation

Annulation en vérification

Les boutons de statut sont indisponibles le temps de la vĂ©rification. Statut : Annulation (vĂ©rif.) — suivi dans VĂ©rification → Annuler.

Véhicule

{{ agenceActionModal.rdv?.modele || 'Non renseigné' }}

Voir l'annonce
Lien annonce non renseigné

Client

{{ formatPhoneForDisplay(agenceActionModal.rdv?.telephone) }}

DĂ©cision de l’équipe

AprĂšs vĂ©rification par l’équipe, notre client n’a jamais souhaitĂ© annuler son rendez-vous.

Le rendez-vous est honorĂ© et facturĂ© : plus d’action de statut cĂŽtĂ© agence.

Le créneau a été rétabli sur la fiche.

Véhicule

{{ agenceActionModal.rdv?.modele || 'Non renseigné' }}

Voir l'annonce
Lien annonce non renseigné

Client

{{ formatPhoneForDisplay(agenceActionModal.rdv?.telephone) }}

Motif du K.O.

Uniquement carrosserie ou mécanique. Les photos sont obligatoires pour valider un K.O.

Preuves photo

Motif : "{{ agenceActionModal.koReason === 'carrosserie' ? 'Carrosserie' : 'MĂ©canique' }}" — ajoutez au moins une photo pour valider le K.O.

{{ (agenceActionModal.koPhotosComment || '').length }}/2000

{{ agenceActionModal.photos.length }} photo(s) sélectionnée(s)

Ajoutez au moins une photo ci-dessus pour activer Envoyer.

Confirmer « Pas venu » ?

Êtes-vous sĂ»r(e) que le client ne s’est pas prĂ©sentĂ© au rendez-vous ?

Une vĂ©rification sera faite par le prospecteur (appel client). DĂ©lai habituel 24 Ă  48 h. Toute dĂ©claration abusive peut ĂȘtre contestĂ©e.

Vérification « pas venu » en cours

Les boutons de statut sont indisponibles pendant la vĂ©rification. Suivi : VĂ©rification → Pas venu (gĂ©nĂ©ralement 24 Ă  48 h).

Véhicule

{{ agenceActionModal.rdv?.modele || 'Non renseigné' }}

Voir l'annonce
Lien annonce non renseigné

Client

{{ formatPhoneForDisplay(agenceActionModal.rdv?.telephone) }}

Le client s'est-il finalement présenté ?

Si oui, on vous proposera uniquement de corriger le statut en Honoré (OK/OKM) ou K.O.

Signaler un retard

L'heure de rendez-vous de ce client sera décalée.

Information Importante

{{ currentRdvAlert.alerteMessage }}

{{ pendingRdvAlertsSummaryLabel }}

{{ r.nom || 'Client' }}

{{ r.alerteType === 'report' ? 'Report' : 'Retard' }}

{{ r.alerteAncienneDate }} → {{ r.alerteNouvelleDate }}

Retard : {{ extractRetardMinutesFromAlert(r) || '?' }} min

Ancienne date :

{{ currentRdvAlert.alerteAncienneDate }}

Nouvelle date :

{{ currentRdvAlert.alerteNouvelleDate }}

N'oubliez pas de mettre Ă  jour votre agenda

Retard annoncé :

+{{ extractRetardMinutesFromAlert(currentRdvAlert) || '?' }} min

Client : {{ currentRdvAlert.nom || '—' }} — CrĂ©neau : {{ currentRdvAlert.heure || '—:—' }}

Vérification No show

Vous avez indiquĂ© Pas venu pour {{ noShowReviewModal.rdv?.nom || 'ce client' }} Ă  {{ noShowReviewModal.rdv?.heure || '—:—' }}.

Si le client s’est prĂ©sentĂ©, merci de corriger le statut. Sinon, confirmez qu’il ne s’est vraiment pas prĂ©sentĂ©.

{{ noteModal.isNew ? 'Nouveau Rappel' : 'Modifier la Note' }}

{{ teamOverlayTitle }}

{{ kpiModal.title }}

Aucun résultat.
{{ rdv.heure }}

{{ rdv.nom }} OK M

{{ formatRdvDateJoliFr(rdv) }}
{{ formatStatutLabel(rdv) }}

Prospecteur : {{ rdv.createur || rdv.createdBy || 'Non assigné' }}

Agence : {{ rdv.agence || 'Non assignée' }}

Configuration Globale

{{ currentAgencyId ? 'Modifier l\'agence' : 'Nouvelle agence' }}

Informations générales

{{ mail }}

Chaque email validé devient bleu.

UtilisĂ© pour les envois PDF / relances si la facture n’a pas d’email dĂ©diĂ©.

{{ (newAgency.sender || '').length }} / 11

S'affichera à la place du numéro sur le téléphone du client (sans espaces ni accents).

Ce lien est partagé par tous les RDV de l'agence (profil / page d'annonces).

Si activé : les jours fériés restent marqués dans le calendrier mais les créneaux restent plaçables. Si désactivé : ils passent en fermé automatiquement.

Objectif mensuel (RDV)

Sert Ă  la jauge « objectif du mois » dans l’espace agence et les tableaux de bord. Laissez vide ou 0 pour ne pas fixer d’objectif (∞).

Planning & Quotas

Gérez la capacité et les horaires d'ouverture de l'agence.

Quotas de la journée
Espacement & Créneaux
h
min

Réglage par champs : heures et minutes (minutes par pas de 5). Les deux vides = aucun intervalle enregistré (le moteur utilise son défaut).

Permet de definir un nombre de RDV et des intervalles differents selon les jours de la semaine.

Mode personnalisé actif

Les blocs du haut sont masqués. Les créneaux utilisent uniquement les rÚgles personnalisées ci-dessous.

{{ ['Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Vendredi', 'Samedi', 'Dimanche'][index] }}

Horaires d'ouverture de l'agence

{{ jour }}
Ouv. -
De À
Agence fermée

AccĂšs Agence & Notifications

Informations légales et tarif

€ HT
{{ (newAgency.prix_ht * 1.2).toFixed(2) }}
€ TTC (TVA incluse 20%)

Le tarif agence applique directement le calcul de facturation.

Mode de paiement facturation

Mode actif : {{ newAgency.modePaiementFacturation === 'virement' ? 'Virement' : 'PrélÚvement' }}

Utilisé par l'app COMPTA pour retrouver automatiquement le client/mandat GoCardless lors des prélÚvements.

Le prélÚvement automatique utilisera ce jour du mois pour cette agence.

Le mail rappelle : factures le 1er du mois, prélÚvement le {{ formatBillingDayLabel(newAgency.gocardlessPrelevementJour) }}.

Ce lien est utilisé dans l'email « Finalisation de votre dossier » (bouton mandat SEPA).

Correction historique des tarifs RDV

Applique `tarifAgenceHT` sur les RDV existants de cette agence (avant/aprĂšs date pivot).

CritÚres de prospection (Auto-synchronisés)

Zone de Prospection

Villes détectées :

{{ formatCritereCpVilleDisplay(ville) }}
km autour de l'adresse de l'agence

Attention : L'adresse de l'agence n'est pas encore renseignée dans l'onglet Identité.

Basé sur : {{ newAgency.adresse }}

Copier les scripts

SĂ©lectionnez les agences qui recevront les mĂȘmes scripts ({{ copyScriptModal.type === 'appel' ? 'Appel' : 'SMS/Message' }}).

Aperçu SMS

{{ smsPreviewModal.type }} — texte aprùs remplacement des tags (exemple)

{{ smsPreviewModal.preview }}

Longueur du message affiché {{ smsPreviewModal.charCount }} / 160

{{ smsCopyModal.copyType ? `Copier le modĂšle ${smsCopyModal.copyType}` : 'Copier les modĂšles SMS' }}

{{ smsCopyModal.copyType ? "Choisissez les agences cibles qui recevront ce modĂšle uniquement." : 'Choisissez les agences cibles qui recevront exactement les mĂȘmes modĂšles.' }}

Copier les e-mails équipe

Choisissez les profils puis copiez les e-mails.

Aucun profil trouvé pour ce filtre.

Nouvelle agence — envoi des e-mails

Cochez les e-mails à envoyer (tout est sélectionné par défaut). Aperçu : mandat SEPA, identifiants espace agence, CGV & confidentialité.

Aperçu 1 — Finalisation dossier (SEPA)

Aperçu 2 — Identifiants agence

Aperçu 3 — CGV & confidentialitĂ©

Facturation — e-mail prĂ©lĂšvement mensuel

Aperçu et envoi du message de facturation: factures le 1er du mois, prélÚvement automatique le jour configuré.

Rappel client

Factures envoyées le 1er de chaque mois.

PrélÚvement effectué le {{ formatBillingDayLabel(newAgency.gocardlessPrelevementJour) }}.

Aperçu — notification prĂ©lĂšvement

Sauter les limites

Sélectionnez le prospecteur. Il n'aura plus de limite (jour / matin / aprÚs-midi / délai) pour placer son prochain RDV unique sur {{ unlockModal.agence.nom }}.

Cadenas deja ouvert

Temps restant : {{ formatUnlockRemainingLabel(unlockModal.agence) }}

{{ readOnlyRdvModal.rdv.civilite }} {{ readOnlyRdvModal.rdv.nom }}

{{ formatRdvDateJoliFr(readOnlyRdvModal.rdv) }} Ă  {{ readOnlyRdvModal.rdv.heure }}

{{ readOnlyRdvModal.rdv.modele }}
Voir l'annonce Pas de lien

Placé par {{ getPlacedByLabelForViewer(readOnlyRdvModal.rdv) }}

Fermer ce créneau ?

Vous allez bloquer la date du {{ formatDateLongFr(calBlockModal.date) }}.

Par défaut : 60 min. Durée personnalisable (ex: 20, 75).

Si renseignĂ©e, la plage horaire (dĂ©but → fin) est utilisĂ©e.

Créer un rendez-vous

Date : {{ calCreateModal.date }}

Débloquer ce créneau ?

Le créneau {{ calUnblockModal.ev?.heure }} redeviendra disponible.

Gestion des absences

Absences déjà déclarées ({{ calSelectedAgencyObject?.nom || 'Agence' }})

Aucune absence enregistrée pour cette agence.

{{ a.reason }}

{{ a.from }} → {{ a.to }}

Créneaux bloqués ({{ calSelectedAgencyBrushBlocks.length }})

Aucun créneau bloqué pour cette agence.

Toutes les absences agences

Aucune absence déclarée.

{{ a.agenceNom }} — {{ a.reason }}

{{ a.from }} → {{ a.to }}

Créneaux bloqués ({{ calSelectedAgencyBrushBlocks.length }})

Aucun créneau bloqué pour cette agence.

Jours fériés

Agence : {{ calSelectedAgencyObject?.nom || '—' }}
{{ calHolidayModal.year }}

{{ agencyWorksOnPublicHolidays(calSelectedAgencyObject) ? "Cette agence travaille les jours fériés (placement autorisé)." : "Cette agence ne travaille pas les jours fériés (jour fermé)." }}

{{ h.label }}

{{ h.dateFr }} ({{ h.date }})

{{ h.isOpen ? 'Travaille' : 'Fermé' }}

Moteurs Ă  Risque

PureTech & BlueHDI (Peugeot, Citroën, Opel)

Les moteurs PureTech (essence) et BlueHDI (diesel) du groupe Stellantis présentent des défauts de conception majeurs (courroie immergée qui se désagrÚge, consommation d'huile excessive, problÚme d'AdBlue).

RĂšgle stricte d'acceptation

  • Si le vĂ©hicule a plus de 6 ans, la courroie de distribution DOIT avoir Ă©tĂ© faite (facture et main d'Ɠuvre exigĂ©es).
  • Si le vĂ©hicule a plus de 100 000 km, la courroie DOIT avoir Ă©tĂ© faite.

Ne prenez aucun rendez-vous sur ces moteurs sans vérifier ces deux critÚres auprÚs du client !

AccĂšs Restreint

Votre compte a été suspendu par un administrateur. Vous ne pouvez plus accéder à l'application.

Bienvenue sur ARIA, {{ user.name }} !

Commençons par une rapide présentation de votre outil de travail.

{{ onboardingTexts[onboardingStep] }}

Nouvelle mise Ă  jour

Une nouvelle version de l'application est disponible. Vous devez actualiser pour continuer.

Nouveautés :

{{ updateAlert.notes }}

Bienvenue !

Bienvenue sur l'application ARIA déployée par LVX.

Vous n'avez pas encore fait votre appel technique, il ne saurait tarder, mais pour le moment nous vous laissons découvrir un petit peu l'application.

L'équipe prendra contact avec vous pour vous expliquer point par point comment utiliser l'application.

Rappel hebdomadaire

Nous sommes vendredi.

La semaine se termine. Pensez Ă  vĂ©rifier vos absences calendrier pour la semaine prochaine, afin d’éviter le placement de rendez-vous sur des crĂ©neaux oĂč vous ĂȘtes indisponible.