{"id":17111,"date":"2024-01-17T13:25:39","date_gmt":"2024-01-17T18:25:39","guid":{"rendered":"https:\/\/membermouse.com\/?post_type=ht_kb&#038;p=17111"},"modified":"2024-08-08T12:33:42","modified_gmt":"2024-08-08T16:33:42","slug":"personnalisation-des-tentatives-de-facturation-en-retard","status":"publish","type":"ht_kb","link":"https:\/\/membermouse.com\/fr\/documents-3-2\/personnalisation-des-tentatives-de-facturation-en-retard\/","title":{"rendered":"Personnalisation du calendrier des tentatives de refacturation des paiements en retard"},"content":{"rendered":"<p><em><mark style=\"background-color:#8ed1fc\" class=\"has-inline-color has-black-color\">MemberMouse 3.0+<\/mark><\/em><\/p>\n\n\n\n<p><em><strong>NOTE :&nbsp;<\/strong>Avec les services de paiement qui ne prennent pas en charge la fonctionnalit\u00e9 de carte sur fichier (c'est-\u00e0-dire PayPal, Authorize.net), MemberMouse n'a aucun contr\u00f4le sur le processus de facturation r\u00e9currente.&nbsp;<strong>n'est pas<\/strong>&nbsp;traiter automatiquement les paiements en retard.<\/em><\/p>\n\n\n\n<p>Par d\u00e9faut, MemberMouse dispose d'un processus de relance int\u00e9gr\u00e9 pour le recouvrement des paiements en retard. Si un abonnement n'est pas factur\u00e9 \u00e0 la date pr\u00e9vue, le Centre pour les membres effectue trois tentatives suppl\u00e9mentaires en l'espace d'une semaine pour recouvrer le paiement. MemberMouse envoie \u00e9galement un message configurable de <a href=\"https:\/\/membermouse.com\/fr\/documents-3-2\/envoyer-un-avis-de-retard-de-paiement-aux-clients\/\" title=\"\">notification de retard de paiement <\/a>apr\u00e8s chaque \u00e9chec de paiement. Si vous souhaitez obtenir une description d\u00e9taill\u00e9e de ce processus, consultez notre article <a href=\"https:\/\/membermouse.com\/fr\/documents-3-2\/traitement-automatise-des-retards-de-paiement\/\" title=\"\">Traitement automatis\u00e9 des retards de paiement<\/a>.<\/p>\n\n\n\n<p>Vous pouvez ajuster les d\u00e9lais entre chaque tentative de facturation, mais les trois tentatives ne peuvent pas \u00eatre modifi\u00e9es. Il s'agit d'un nombre fixe.<\/p>\n\n\n\n<p>Bien que cet intervalle de collecte fonctionne tr\u00e8s bien par d\u00e9faut, il se peut que vous souhaitiez personnaliser les jours qui s'\u00e9coulent entre une tentative de collecte et la dur\u00e9e de votre processus de collecte global. Il est possible de personnaliser cette dur\u00e9e en utilisant un filtre WordPress, <strong>mm_billing_subscription_dunning_intervalle<\/strong>.<\/p>\n\n\n\n<p>Les filtres sont des fonctions par lesquelles WordPress fait passer les donn\u00e9es \u00e0 certains moments de l'ex\u00e9cution, juste avant d'effectuer une action sur les donn\u00e9es. MemberMouse d\u00e9finit son propre ensemble de filtres que vous pouvez utiliser pour contr\u00f4ler le flux d'ex\u00e9cution dans MemberMouse avant que certaines actions ne soient effectu\u00e9es.<\/p>\n\n\n\n<p>Voici un exemple de base :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>function customContentProtection($data)\n{\n     return true ;\n}\nadd_filter('mm_bypass_content_protection', 'customContentProtection') ;\n<\/code><\/pre>\n\n\n\n<p>Dans cet exemple, nous utilisons le&nbsp;<a href=\"http:\/\/codex.wordpress.org\/Function_Reference\/add_filter\" target=\"_blank\" rel=\"noreferrer noopener\"><em>add_filter()<\/em><\/a>&nbsp;pour indiquer que la m\u00e9thode&nbsp; <em>customContentProtection()<\/em>&nbsp;doit \u00eatre appel\u00e9e lorsque MemberMouse applique la m\u00e9thode&nbsp; <em>mm_bypass_content_protection<\/em>&nbsp;filtre. <\/p>\n\n\n\n<p>Pour en savoir plus sur l'utilisation de l'API d'action de WordPress&nbsp;<a href=\"http:\/\/codex.wordpress.org\/Plugin_API\" target=\"_blank\" rel=\"noreferrer noopener\">lire cet article<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Personnalisation des intervalles de relance <\/h2>\n\n\n\n<p>MemberMouse transmet deux arguments \u00e0 votre fonction. Le premier est un entier <code>$failureIntervalle<\/code>\u00a0qui repr\u00e9sente le nombre de jours par d\u00e9faut avant la prochaine tentative. Le deuxi\u00e8me est un nombre entier <code>$failureState<\/code>\u00a0qui repr\u00e9sente l'\u00e9tat d'\u00e9chec particulier de la facturation. Il existe actuellement trois \u00e9tats d'\u00e9chec : 2, 3 et 4, qui repr\u00e9sentent respectivement la deuxi\u00e8me, la troisi\u00e8me et la derni\u00e8re tentative de recouvrement.<\/p>\n\n\n\n<p>Votre fonction doit renvoyer un nombre entier repr\u00e9sentant le nombre de jours qui doivent s'\u00e9couler avant la prochaine tentative. Voici un exemple qui reproduit les intervalles de relance par d\u00e9faut :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>function customDunningInterval($failureInterval, $failureState)\n{\n   switch ($failureState)\n   {\n      case 2 :\n         return 2 ; \/\/ Premi\u00e8re tentative, deux jours apr\u00e8s l'\u00e9chec de la refacturation initiale.\n      \n      case 3 :\n         return 3 ; \/\/ Deuxi\u00e8me tentative, trois jours apr\u00e8s la premi\u00e8re tentative.\n      \n      cas 4 : return 2 ; \/\/ Troisi\u00e8me tentative, deux jours apr\u00e8s la deuxi\u00e8me tentative\n         return 2 ; \/\/ Troisi\u00e8me tentative, deux jours apr\u00e8s la deuxi\u00e8me.\n      \n      par d\u00e9faut :\n         return $failureInterval ;\n   }\n}\nadd_filter(\"mm_billing_subscription_dunning_interval\", \"customDunningInterval\", 10, 2) ;<\/code><\/pre>\n\n\n\n<p>Pour personnaliser les intervalles de relance, il vous suffit de modifier les valeurs renvoy\u00e9es dans les trois instructions de cas pour obtenir la dur\u00e9e souhait\u00e9e en jours.<\/p>\n\n\n\n<p>Ainsi, si vous souhaitez r\u00e9essayer le paiement 3 jours, 5 jours et 7 jours apr\u00e8s chaque tentative, vous devez modifier la fonction de la mani\u00e8re suivante :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>function customDunningInterval($failureInterval, $failureState)\n{\n   switch ($failureState)\n   {\n      case 2 :\n         return 2 ; \/\/ Premi\u00e8re tentative, trois jours apr\u00e8s l'\u00e9chec de la refacturation initiale.\n      \n      case 3 :\n         return 3 ; \/\/ Deuxi\u00e8me tentative, cinq jours apr\u00e8s la premi\u00e8re tentative.\n      \n      cas 4 : return 2 ; \/\/ Troisi\u00e8me tentative, sept jours apr\u00e8s la deuxi\u00e8me tentative\n         return 2 ; \/\/ Troisi\u00e8me tentative, sept jours apr\u00e8s la deuxi\u00e8me.\n      \n      par d\u00e9faut :\n         return $failureInterval ;\n   }\n}\nadd_filter(\"mm_billing_subscription_dunning_interval\", \"customDunningInterval\", 10, 2) ;<\/code><\/pre>","protected":false},"excerpt":{"rendered":"<p>MemberMouse 3.0+ REMARQUE : Avec les services de paiement qui ne prennent pas en charge la fonctionnalit\u00e9 de carte sur fichier (c'est-\u00e0-dire PayPal, Authorize.net), MemberMouse n'a aucun contr\u00f4le sur le processus de facturation r\u00e9currente et ne g\u00e8re pas automatiquement les paiements en souffrance. Par d\u00e9faut, MemberMouse...<\/p>","protected":false},"author":9645,"comment_status":"open","ping_status":"closed","template":"","format":"standard","meta":{"_acf_changed":false,"om_disable_all_campaigns":false,"_strive_editorial_status":"not-started","_strive_copy_of":0,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"ht-kb-category":[138],"ht-kb-tag":[],"class_list":["post-17111","ht_kb","type-ht_kb","status-publish","format-standard","hentry","ht_kb_category-tips-tricks"],"acf":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/membermouse.com\/fr\/wp-json\/wp\/v2\/ht-kb\/17111","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/membermouse.com\/fr\/wp-json\/wp\/v2\/ht-kb"}],"about":[{"href":"https:\/\/membermouse.com\/fr\/wp-json\/wp\/v2\/types\/ht_kb"}],"author":[{"embeddable":true,"href":"https:\/\/membermouse.com\/fr\/wp-json\/wp\/v2\/users\/9645"}],"replies":[{"embeddable":true,"href":"https:\/\/membermouse.com\/fr\/wp-json\/wp\/v2\/comments?post=17111"}],"version-history":[{"count":0,"href":"https:\/\/membermouse.com\/fr\/wp-json\/wp\/v2\/ht-kb\/17111\/revisions"}],"wp:attachment":[{"href":"https:\/\/membermouse.com\/fr\/wp-json\/wp\/v2\/media?parent=17111"}],"wp:term":[{"taxonomy":"ht_kb_category","embeddable":true,"href":"https:\/\/membermouse.com\/fr\/wp-json\/wp\/v2\/ht-kb-category?post=17111"},{"taxonomy":"ht_kb_tag","embeddable":true,"href":"https:\/\/membermouse.com\/fr\/wp-json\/wp\/v2\/ht-kb-tag?post=17111"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}