mivita/resources/lang/fr/abo.php
Kevin 0660f4e0a0 Abo-Recovery: fehlgeschlagene Folgezahlung im Checkout nachholen
- Pay-now-Flow: bei fehlgeschlagenem Abo (Status 3) begleicht der Inhaber die
  offene Rechnung im Standard-Checkout mit frei waehlbarer, abo-faehiger Zahlart
  (nur eigenes Abo: Berater me-View + Kundenportal), payNow-Controller + Routen
- AboRecoveryCheckoutService baut die ShoppingInstance aus den Abo-Artikeln;
  neue Spalte shopping_orders.recovery_user_abo_id verknuepft Bestellung<->Abo
- Bei Erfolg: AboHelper::advanceAboAfterRecoveryPayment schreibt das Abo fort
  (Status->2, next_date) und uebernimmt die gewaehlte Zahlart als neues Token
  fuer kuenftige Abbuchungen
- Neue Pay-now-Fehlermail (AboPaymentFailedMail) ersetzt die generische
  Fehlermail im Abo-Cron; Link fuehrt auf die Abo-Detailseite (CRM bzw. Portal)
- Retry-/"extern erledigt"-Buttons nur noch fuer Admins; tote user/portal-
  Retry-Routen entfernt
- Checkout: Recovery-Hinweis statt "Abschluss des Abonnements", Lieferadresse
  vorbelegt, korrekter Zurueck-Link (Abo statt Shop)
- UserAbo::selfServiceDetailUrl zentralisiert die Abo-URL (Mail, Back-Links)
- Test-Command abo:test-recovery; Tests fuer payNow, Advance-Logik, Fehlermail

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-02 10:38:05 +00:00

252 lines
23 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
return [
'abo' => 'Abonnement',
'payment_for_abo' => 'Mode de paiement pour l’abonnement',
'abo_delivery' => 'Abonnement - livraison régulière',
'abo_are_for_me_and_shipped' => 'L’abonnement est pour moi et sera envoyé à mon adresse',
'abo_are_for_customer_and_shipped' => 'L’abonnement est pour un client et sera envoyé au client',
'abo_delivery_to_me' => 'Livraison d’abonnement à moi-même',
'abo_delivery_to_the_customer' => 'Livraison d’abonnement au client',
'every_week' => 'chaque semaine',
'every_weeks' => 'toutes les :num semaines',
'of_month' => 'du mois',
'delivery_intervall' => 'Adapter le jour de livraison',
'abo_order_info_check' => 'À la conclusion de l’abonnement, une livraison régulière est mise en place. Elle est automatiquement expédiée et facturée au jour de livraison choisi.',
'abo_order_info_check_2' => 'La première livraison et facturation a lieu le jour de la création de l’abonnement. Ensuite, l’expédition se fait automatiquement au jour de livraison choisi du mois suivant.',
'abo_order_info_check_3' => 'PayPal et carte de crédit sont disponibles comme modes de paiement. <strong>L’abonnement a une durée minimale de :abo-min-duration mois.</strong> Ensuite, il peut être mis en pause, modifié ou résilié à tout moment.',
'abo_recovery_info_check' => 'Vous réglez ici la facture en attente de votre abonnement existant. <strong>Le moyen de paiement choisi sera également enregistré pour tous les prélèvements futurs de votre abonnement.</strong> Après un paiement réussi, votre abonnement est réactivé et exécuté régulièrement le jour de livraison choisi.',
'abo_order_info_checkbox' => 'Oui, j’ai compris les conditions de l’abonnement !',
'abo_order_info_checkbox_required' => 'Veuillez confirmer les conditions de l’abonnement pour continuer.',
'abo_infos' => 'Infos abonnement',
'abo_delivery_infos' => 'Infos livraison abonnement',
'abo_start_date' => 'Début de l’abonnement',
'abo_delivery_intervall' => 'Jour de livraison de l’abonnement',
'abo_first_execution_date' => 'Première exécution',
'abo_next_execution_date' => 'Prochaine exécution',
'delivery_day' => 'Adapter le jour de livraison',
'abo_settings' => 'Paramètres abonnement',
'add_new_abo' => 'Créer un nouvel abonnement',
'abo_edit' => 'Modifier l’abonnement',
'abo_details' => 'Détails de l’abonnement',
'abo_is_active' => 'L’abonnement est actif',
'abo_copy_active' => 'Si l’abonnement n’est pas actif, aucune exécution automatique n’a lieu.',
'abo_copy_next_date' => 'Le prochain jour d’exécution peut être fixé au plus tôt au lendemain.',
'abo_copy_abo_interval' => 'L’adaptation du jour de livraison de l’abonnement impacte la prochaine date d’exécution si l’abonnement est actif.',
'admin_abo_copy_next_date' => 'Les admins peuvent définir directement la prochaine date d’exécution via le mois et le jour de livraison.',
'error_abo_interval' => 'L’intervalle d’abonnement est incorrect',
'error_abo_interval_in_the_past' => 'L’abonnement n’a pas encore été exécuté ce mois-ci. Un changement vers un jour passé ferait sauter le mois en cours.',
'warning_next_date_soon' => 'Remarque : la prochaine exécution de l’abonnement est déjà dans :days jours (:date).',
'warning_next_date_soon_select' => 'Remarque : la prochaine exécution de l’abonnement est déjà dans :placeholder_days jours (:placeholder_date).',
'warning_next_date_info' => 'La prochaine exécution de l’abonnement est dans :days jours, le :date.',
'info_next_execution_select' => 'Prochaine exécution : dans :placeholder_days jours, le :placeholder_date.',
'error_change_locked' => 'Les modifications ne sont plus possibles. La prochaine exécution est dans :days jours. Les modifications doivent être effectuées au moins :lock jours avant.',
'error_abo_interval_too_soon' => 'Le jour de livraison choisi n’est qu’à :days jours. Veuillez choisir un jour de livraison situé au moins :lock jours dans le futur.',
'error_cancel_locked' => 'Une résiliation n’est plus possible. La prochaine exécution est dans :days jours. Les résiliations doivent être effectuées au moins :lock jours avant.',
'error_pause_locked' => 'L’abonnement ne peut plus être mis en pause. La prochaine exécution est dans :days jours. La pause doit être effectuée au moins :lock jours avant.',
'error_next_date' => 'La date de la prochaine exécution est incorrecte',
'checkout_mail_abo_hl' => 'Votre abonnement / livraison régulière.',
'checkout_mail_abo_start' => 'Votre abonnement a été créé avec succès avec les paramètres suivants :',
'checkout_mail_abo_info' => 'Vous trouverez les paramètres de votre abonnement dans votre compte sous "Mes abonnements" et pourrez également les y modifier.',
'abo_new' => 'nouveau',
'abo_okay' => 'ok',
'abo_hold' => 'en pause',
'abo_cancel' => 'annulé',
'abo_finish' => 'terminé',
'abo_inactive' => 'inactif',
'abo_grace' => 'geste commercial',
'abo_info' => 'Informations abonnement',
'info_min_duration_reached' => 'Votre abonnement pourra être modifié, complété, mis en pause ou résilié au plus tôt à partir du :date.',
'info_min_duration_orders_left' => 'L’abonnement ne pourra être modifié, complété, mis en pause ou résilié qu’après encore :count exécutions.',
'pros_hl' => 'Les avantages d’un abonnement',
'pros_list' => ' <li><b>Conclusion d’abonnement pour conseillers et clients :</b> Chaque conseiller ou client peut conclure un abonnement exécuté à un jour fixe du mois afin de garantir une livraison régulière et planifiable.</li>
<li><b>Livraison mensuelle :</b> Une nouvelle livraison est envoyée directement à votre porte une fois par mois.</li>
<li><b>Adaptable avec flexibilité :</b> L’abonnement peut être adapté individuellement, p. ex. en termes de produits, quantités ou dates de livraison.</li>
<li><b>Large choix de produits :</b> Différents produits peuvent être inclus dans l’abonnement.</li>
<li><b>Durée :</b> L’abonnement a une durée minimale de <strong>:abo-min-duration mois</strong>, puis il peut être mis en pause ou résilié.</li>
<li><b>Avantage prix :</b> Les produits d’abonnement bénéficient souvent de remises ou offres spéciales.</li>
<li><b>Démarrer maintenant :</b> Choisissez vos produits, adaptez l’abonnement à vos besoins, payez la première commande et activez ainsi votre abonnement pour les prochaines livraisons.</li>',
'abo_pros' => 'Avantages abonnement',
'abo_order_hl' => 'Composition de l’abonnement',
'abo_order_info_2' => 'Vous pouvez adapter les produits de votre abonnement à tout moment ; lors de la prochaine exécution, vos produits composés vous seront envoyés.',
'abo_order_info_block' => 'Vous pouvez adapter la composition de votre abonnement après la durée minimale de <strong>:abo-min-duration mois</strong>.',
'abo_order_info_block_team' => 'La composition de l’abonnement pour un membre de l’équipe ne peut être adaptée que par lui-même.',
'abo_order_info_block_customer' => 'Vous pouvez à tout moment ajouter de nouveaux produits à l’abonnement de votre client. La suppression de produits n’est possible qu’après la durée minimale de <strong>:abo-min-duration mois</strong>.',
'abo_order_info_add_only' => 'Vous pouvez à tout moment ajouter de nouveaux produits à votre abonnement. La suppression de produits n’est possible qu’après la durée minimale de <strong>:abo-min-duration mois</strong>.',
'error_add_only_no_remove' => 'La suppression de produits n’est pas possible pendant la durée minimale.',
'confirm_add_title' => 'Confirmer l’ajout du produit',
'confirm_add_title_normal' => 'Ajouter le produit à l’abonnement',
'confirm_increase_title' => 'Augmenter la quantité de l’abonnement',
'confirm_add_warning' => 'Pendant la durée minimale, les produits ajoutés ne peuvent pas être retirés. Veuillez vérifier soigneusement votre sélection.',
'confirm_add_warning_normal' => 'Voulez-vous vraiment ajouter ce produit à votre abonnement ?',
'confirm_add_info' => 'Vous êtes sur le point d’ajouter cet article à votre abonnement en cours. Cela modifie le montant de paiement récurrent.',
'confirm_increase_info' => 'Vous êtes sur le point d’augmenter la quantité de cet article dans votre abonnement en cours. Cela modifie le montant de paiement récurrent.',
'confirm_article_details' => 'Détails de l’article',
'confirm_additional_costs' => 'Coûts supplémentaires',
'confirm_new_total' => 'Nouveau total de l’abonnement',
'confirm_per_delivery' => 'par livraison',
'confirm_legal_notice' => 'La modification prendra effet lors de la prochaine livraison le :nextBillingDate. Nos :agb et le :withdrawal s’appliquent.',
'confirm_terms_link' => 'conditions générales',
'confirm_withdrawal_link' => 'droit de rétractation',
'confirm_next_delivery_unknown' => 'prochaine date de livraison',
'confirm_add_cancel' => 'Annuler',
'confirm_add_ok' => 'Mettre à jour avec obligation de paiement',
'add_product' => 'Ajouter le produit',
'product_prices_career_level_info' => 'Les prix produits sont affichés et calculés selon votre niveau de carrière <strong>:user_level_name</strong> moins <strong>:user_level_margin %</strong> de marge.',
'product_prices_career_level_cpay_info' => 'Les prix produits sont affichés comme prix de vente client ; après finalisation du paiement client, vous recevez votre commission selon votre niveau de carrière <strong>:user_level_name</strong>, commission <strong>:user_level_margin %</strong>.',
'error_email_has_abo' => 'Un abonnement existe déjà pour l’adresse e-mail :email.',
'abo_assigned' => 'Abonnement actif',
'base' => 'Base',
'upgrade' => 'Upgrade',
'abo_type_info' => 'Remarque : chaque abonnement se compose au minimum d’un produit de base :base ! <br>Les produits upgrade :upgrade sont optionnels et peuvent être ajoutés à volonté.<br> <strong>L’abonnement a une durée minimale de <strong>:abo-min-duration mois</strong>, puis il peut être mis en pause ou résilié.</strong>',
'abo_type_info_base' => 'L’abonnement nécessite au moins un produit de base :base !',
'need_basis_product' => 'Vous devez avoir au moins un produit de base dans votre abonnement. Veuillez d’abord ajouter un nouveau produit de base puis supprimer l’ancien !',
'abo_item_not_found' => 'Position d’abonnement introuvable',
'product_not_found' => 'Produit introuvable',
'onetime_window_closed' => "La période pour ajouter des produits ponctuels n'est pas ouverte actuellement.",
'onetime_product_not_allowed' => 'Ce produit ne peut pas être ajouté comme article ponctuel.',
'onetime_action_required' => "Aucune action n'a été indiquée.",
'onetime_action_invalid' => 'Action invalide.',
'onetime_qty_required' => 'Veuillez indiquer une quantité valide.',
'onetime_card_hl' => 'Ajouter des produits ponctuels à votre prochaine livraison',
'onetime_card_info' => 'Ajoutez une seule fois des produits de l\'assortiment habituel à votre prochaine livraison d\'abonnement. Vous économisez ainsi des frais de port supplémentaires et recevez tout dans un seul colis.',
'onetime_important_hl' => 'Important :',
'onetime_coverage_hint' => 'Le montant supplémentaire sera débité facilement avec le montant habituel de votre abonnement lors de la prochaine exécution.',
'onetime_reset_hint' => 'Les produits ponctuels sont ajoutés uniquement à votre prochaine livraison puis supprimés automatiquement de l\'abonnement.',
'add_onetime_product' => 'Ajouter un produit ponctuel',
'onetime_subtotal' => 'Sous-total produits ponctuels',
'onetime_confirmed_subtotal' => 'Sous-total confirmé (sera expédié)',
'onetime_pending_subtotal' => 'À confirmer (non contraignant)',
'onetime_new_total' => 'Nouveau total après confirmation',
'onetime_status_confirmed' => 'Confirmé',
'onetime_status_pending' => 'À confirmer',
'onetime_pending_hint' => 'Les produits déjà confirmés seront expédiés avec votre prochaine livraison, que vous confirmiez ou non ces nouveaux produits.',
'onetime_next_delivery_total' => 'Montant total de la prochaine livraison (abonnement + ponctuel)',
'onetime_legal_notice' => 'Les produits ajoutés seront expédiés une seule fois le :nextBillingDate. Nos :agb et le :withdrawal s’appliquent.',
'onetime_discard_changes' => 'Annuler les modifications',
'onetime_confirm_paid' => 'Mettre à jour avec obligation de paiement',
'onetime_confirm_success' => 'Les produits ponctuels ont été réservés avec succès pour votre prochaine livraison.',
'abo_subtotal' => 'Sous-total produits d\'abonnement',
'abo_next_delivery_total' => 'Montant total de la prochaine livraison',
'onetime_empty' => 'Aucun produit ponctuel ajouté pour le moment.',
'onetime_badge' => 'Ponctuel',
'combined_summary_hl' => 'Total de la prochaine livraison',
'create_abo' => 'Créer un abonnement',
'info' => 'Info',
'data' => 'Données',
'check' => 'Vérifier',
'choose' => 'Sélectionner',
'order' => 'commander',
'basis_product' => 'Produit de base',
'upgrade_products' => 'Produits upgrade',
'base_product' => 'Produit de base',
'upgrade_product' => 'Produit upgrade',
'my_address' => 'Mon adresse',
'my_address_check' => 'Vérifier mon adresse',
'my_address_check_info' => 'Veuillez vérifier votre adresse afin de garantir que la marchandise sera envoyée à la bonne adresse.',
'edit' => 'modifier',
'confirm_and_next' => 'confirmer et continuer',
'understood_and_next' => 'compris et continuer',
'change_my_data_empty' => 'Vous n’avez pas encore enregistré d’adresse de facturation et de livraison. Sans celles-ci, vous ne pouvez pas créer d’abonnement ; veuillez les créer.',
'abo_error_basis_product' => 'Erreur : veuillez sélectionner au moins un produit de base.',
'cancel_abo' => 'Résilier l’abonnement',
'confirm_cancel' => 'Voulez-vous vraiment résilier l’abonnement ?',
'retry_payment' => 'Relancer le paiement',
'retry_payment_confirm_title' => 'Veuillez confirmer consciemment',
'retry_payment_confirm_copy' => 'La tentative de paiement démarre immédiatement et peut déclencher un débit PayPal ou carte de crédit. À exécuter uniquement si la cause a été vérifiée.',
'retry_payment_confirm_button' => 'Réessayer le paiement maintenant',
'retry_only_hold' => 'La nouvelle tentative de paiement n’est possible que pour les abonnements en pause.',
'pay_now_title' => 'Paiement échoué – payer maintenant',
'pay_now_copy' => 'Le dernier prélèvement de votre abonnement a échoué (p. ex. carte ou PayPal plus valides). Dans le checkout, vous réglez maintenant la facture en attente avec un moyen de paiement de votre choix, qui sera également enregistré pour tous les prélèvements futurs de votre abonnement.',
'pay_now_button' => 'Payer maintenant',
'pay_now_not_allowed' => 'Un paiement ultérieur n’est actuellement pas possible pour cet abonnement.',
'pay_now_failed' => 'Le checkout n’a pas pu être démarré. Veuillez réessayer plus tard.',
'back_to_abo' => 'Retour à mon abonnement',
'payment_failed_mail_subject' => 'Le paiement de votre abonnement a échoué',
'payment_failed_mail_intro' => 'malheureusement, le dernier prélèvement de votre abonnement a échoué (p. ex. parce que votre carte de crédit ou votre compte PayPal n’est plus valide). Grâce au lien ci-dessous, vous pouvez régler le montant en attente dès maintenant. Le moyen de paiement choisi sera également enregistré pour vos prochains prélèvements.',
'payment_failed_mail_button' => 'Payer maintenant',
'payment_failed_mail_hint' => 'Si le bouton ne fonctionne pas, copiez ce lien dans votre navigateur :',
'retry_only_active' => 'La nouvelle tentative de paiement n’est possible que pour les abonnements actifs.',
'retry_already_paid_today' => 'Un paiement réussi a déjà été enregistré aujourd’hui pour cet abonnement.',
'retry_error_shopping_user' => 'Le Shopping-User n’a pas pu être créé pour la nouvelle tentative de paiement.',
'retry_error_order' => 'La commande n’a pas pu être créée pour la nouvelle tentative de paiement.',
'retry_success' => 'La nouvelle tentative de paiement a réussi. Commande #:order créée.',
'retry_failed' => 'La nouvelle tentative de paiement a échoué. Commande #:order créée. Erreur : :error',
'retry_exception' => 'La nouvelle tentative de paiement n’a pas pu être finalisée : :error',
'team_subscriptions' => 'Abonnements équipe',
'team_customer_abos' => 'Abonnements clients de l’équipe',
'team_total' => 'Total',
'team_line' => 'Niveau :line',
'filter_period' => 'Période :',
'team_total_abos' => 'Abonnements totaux de l’équipe',
'team_own_abos' => 'Abonnements propres',
'team_members_with_abo' => 'Avec abonnement propre',
'team_by_level' => 'Abonnements par niveau',
'new_this_month' => 'nouveaux ce mois-ci',
'with_own_abo' => 'Avec abonnement propre',
'consultants' => 'Conseillers',
'level' => 'Niveau',
'own_abo' => 'Abonnement propre',
'customer_abos_count' => 'Abonnements clients',
'career_level' => 'Niveau de carrière',
'of' => 'sur',
'yes' => 'Oui',
'no' => 'Non',
'shop_1000' => 'Boutiques 1000 points',
'new_partners' => 'Nouveaux partenaires',
'next_execution' => 'Prochaine exécution',
'executions_count' => 'Exécutions',
'abo_count_points' => 'Points',
'no_own_abo' => 'Aucun abonnement propre.',
'no_customer_abos' => 'Aucun abonnement client.',
'team_growth' => 'Croissance des abonnements (nouveaux par mois)',
'month' => 'Mois',
'new_own_abos' => 'Nouveaux abonnements propres',
'new_customer_abos' => 'Nouveaux abonnements clients',
'new_total' => 'Nouveaux au total',
'growth_note' => 'Compte les abonnements actifs selon leur année de début (start_date). Le stock total ci-dessus peut être plus élevé, car il inclut aussi des abonnements encore actifs des années précédentes.',
'filter' => 'Filtrer',
'reset' => 'Réinitialiser',
'filter_added_period' => 'Ajouté durant la période :',
'chart_monthly_abos' => 'Abonnements par mois',
'chart_active_abos' => 'Abonnements actifs',
'chart_abos_label' => 'Abonnements',
'abo_count' => 'Nombre d’abonnements',
'customer_privacy_info' => 'Pour des raisons de protection des données, aucune donnée personnelle client n’est affichée.',
'every_month_on' => 'mensuellement le :day.',
'back' => 'retour',
// Statut / paiement en attente / traité en externe (synchronisé avec de/abo.php)
'abo_extern_done' => 'traité en externe',
'error_user_has_initiated_abo' => 'Un abonnement a déjà été créé pour vous ou son paiement est encore en cours. Veuillez vérifier le statut sous « Mes abonnements ».',
'pending_payment_waiting_title' => 'Abonnement créé - paiement pas encore confirmé',
'pending_payment_waiting_copy' => 'Le paiement a été finalisé. Nous attendons encore le statut de paiement du prestataire de paiement. Tant qu’aucun statut n’est reçu, cette entrée ne peut pas être supprimée.',
'pending_payment_processing_title' => 'Abonnement créé - paiement en cours de traitement',
'pending_payment_processing_copy' => 'Le prestataire de paiement a déjà fourni un statut. Veuillez attendre la confirmation finale du paiement.',
'pending_payment_failed_title' => 'Échec du paiement',
'pending_payment_failed_copy' => 'Le paiement de cet abonnement n’a pas pu être finalisé. Vous pouvez supprimer cette entrée puis recréer l’abonnement.',
'pending_delete_button' => 'Supprimer l’entrée',
'pending_delete_success' => 'L’entrée d’abonnement non confirmée a été supprimée.',
'pending_delete_not_allowed' => 'Cette entrée d’abonnement ne peut pas encore être supprimée, car le paiement n’a pas encore définitivement échoué.',
'payment_link_sent_title' => 'Lien de paiement d’abonnement envoyé',
'payment_link_sent_copy' => 'Le lien de paiement a été envoyé au client. Tant qu’aucun paiement n’a été lancé, cette entrée peut être supprimée.',
'payment_link_processing_copy' => 'Le client a lancé le paiement. Nous attendons le statut de paiement final du prestataire de paiement. Dans cet état, l’entrée ne peut pas être supprimée.',
'payment_link_failed_copy' => 'Le paiement lié à ce lien de paiement d’abonnement a échoué ou a été annulé. Vous pouvez supprimer l’entrée puis créer un nouveau lien de paiement.',
'payment_link_delete_success' => 'Le lien de paiement d’abonnement a été supprimé.',
'payment_link_delete_not_allowed' => 'Ce lien de paiement ne peut actuellement pas être supprimé, car le paiement est déjà en cours ou finalisé.',
'extern_done' => 'Traité en externe',
'extern_done_confirm_title' => 'Marquer la commande comme traitée en externe',
'extern_done_confirm_copy' => 'La commande sera marquée comme livrée et facturée en dehors du système. AUCUNE facture ni AUCUN bon de livraison ne sera généré, le statut reste impayé. Les points de l’abonnement seront crédités et le blocage de l’abonnement sera levé, afin qu’il reprenne normalement à la prochaine échéance.',
'extern_done_confirm_button' => 'Marquer comme traité',
'extern_done_only_abo' => 'Cette action n’est possible que pour les commandes d’abonnement.',
'extern_done_no_order' => 'Aucune commande d’abonnement en attente pouvant être traitée n’a été trouvée.',
'extern_done_already' => 'Cette commande a déjà été marquée comme traitée en externe.',
'extern_done_already_paid' => 'Cette commande est déjà payée et ne peut pas être traitée en externe.',
'extern_done_success' => 'La commande a été marquée comme traitée en externe. Points crédités, blocage levé.',
'extern_done_error' => 'La commande n’a pas pu être marquée comme traitée : :error',
'admin_delete' => 'Supprimer l’abonnement',
'admin_delete_confirm_title' => 'Supprimer l’abonnement',
'admin_delete_confirm_copy' => 'L’abonnement sera supprimé (deleted_at) et n’apparaîtra plus dans l’aperçu. Ne continuez que si cela est vraiment souhaité.',
'admin_delete_confirm_button' => 'Supprimer l’abonnement maintenant',
'admin_delete_success' => 'L’abonnement a été supprimé.',
];