{"id":7591,"date":"2026-09-10T16:11:55","date_gmt":"2026-09-10T14:11:55","guid":{"rendered":"https:\/\/implementi.ai\/en\/?post_type=product&#038;p=7591"},"modified":"2026-10-27T18:01:12","modified_gmt":"2026-10-27T17:01:12","slug":"ai-recurring-billing-dunning-manager","status":"publish","type":"product","link":"https:\/\/implementi.ai\/en\/product\/ai-recurring-billing-dunning-manager\/","title":{"rendered":"AI Recurring Billing &#038; Dunning Manager"},"content":{"rendered":"<style>\n:root{--imp-primary-blue:#C0D9F7;--imp-soft-blue:#DAE9FA;--imp-white:#F9F9F9;--imp-red:#FF554C;--imp-navy:#183457}\n.implementi-pf,.implementi-pf *{box-sizing:border-box}\n.implementi-pf{width:min(1180px,100%);max-width:100%;margin:0 auto;color:var(--imp-navy);font-family:\"Noto Sans\",Arial,sans-serif}\n.implementi-pf h2,.implementi-pf h3,.implementi-pf h4,.implementi-pf .button,.implementi-pf .tab-title,.woocommerce-tabs ul.tabs li a{font-family:\"Poppins\",Arial,sans-serif}\n.implementi-pf h2{margin:0 0 18px;color:var(--imp-navy);font-size:clamp(25px,3vw,36px);line-height:1.18}\n.implementi-pf h3{margin:24px 0 10px;color:var(--imp-navy);font-size:clamp(19px,2vw,24px);line-height:1.25}\n.implementi-pf p,.implementi-pf li{font-family:\"Noto Sans\",Arial,sans-serif;color:var(--imp-navy);font-size:16px;line-height:1.78}\n.implementi-pf p:last-child{margin-bottom:0}\n.implementi-pf ul,.implementi-pf ol{padding-left:24px;margin:16px 0}\n.implementi-pf li{margin:10px 0}\n.imp-kicker{font-family:\"Poppins\",Arial,sans-serif;font-size:13px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--imp-red);margin-bottom:14px}\n.imp-card{margin:24px 0;padding:clamp(24px,4vw,44px);border-radius:28px;background:var(--imp-white);border:1px solid rgba(24,52,87,.10);overflow:hidden}\n.imp-card-soft{background:var(--imp-soft-blue)}\n.imp-card-blue{background:var(--imp-primary-blue)}\n.imp-card-dark{background:var(--imp-navy);color:var(--imp-white)}\n.imp-card-dark h2,.imp-card-dark h3,.imp-card-dark p,.imp-card-dark li,.imp-card-dark strong{color:var(--imp-white)}\n.imp-media{margin-top:28px;padding-top:24px;border-top:1px solid rgba(24,52,87,.12)}\n.imp-media img{display:block;width:100%;max-width:100%;height:auto;margin:14px 0 0;border-radius:24px;background:var(--imp-white);border:1px solid rgba(24,52,87,.10)}\n.imp-benefits ul,.imp-scope ul,.imp-target ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;list-style:none;padding:0;margin:20px 0 0}\n.imp-benefits li,.imp-scope li,.imp-target li{min-width:0;margin:0;padding:20px;border-radius:20px;background:var(--imp-white);border:1px solid rgba(24,52,87,.10)}\n.imp-tab-source{display:none!important}<\/p>\n<p>\/* LIGHT PRODUCT HERO: native Woo price stays in its normal place *\/\n.single-product .summary p.price,.woocommerce div.product .summary p.price{position:static!important;width:auto!important;height:auto!important;overflow:visible!important;clip:auto!important;white-space:normal!important;margin:8px 0 14px!important;color:var(--imp-navy)!important;font-family:\"Poppins\",Arial,sans-serif!important;font-size:clamp(24px,2.5vw,32px)!important;font-weight:800!important;line-height:1.2!important}\n.single-product .summary p.price .imp-native-monthly-price{color:var(--imp-navy)!important;font:inherit!important}\n.single-product .summary form.cart,.woocommerce div.product .summary form.cart{display:none!important}\n.single-product .summary .product_meta{display:none!important}\n.imp-hero-compact{margin:12px 0 18px;color:var(--imp-navy);font-family:\"Noto Sans\",Arial,sans-serif}\n.imp-hero-meta{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}\n.imp-hero-chip{display:inline-flex;align-items:center;min-width:0;padding:6px 11px;border-radius:999px;background:var(--imp-white);border:1px solid rgba(24,52,87,.12);color:var(--imp-navy);font-family:\"Poppins\",Arial,sans-serif;font-size:12px;font-weight:700}\n.imp-hero-short{margin:0 0 18px;font-size:15px;line-height:1.65;color:var(--imp-navy)}\n.imp-hero-short p{margin:0 0 8px!important;font:inherit!important;color:inherit!important}\n.imp-hero-calendly{display:block;width:100%;padding:14px 18px;background:var(--imp-red)!important;color:var(--imp-white)!important;border-radius:999px;text-align:center;text-decoration:none!important;font-family:\"Poppins\",Arial,sans-serif;font-weight:800;box-sizing:border-box}\n.imp-hero-contact-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;width:100%!important;margin-top:12px!important}\n.imp-hero-contact-grid>a{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-width:0!important;min-height:44px!important;padding:10px 12px!important;border:1px solid rgba(24,52,87,.16)!important;border-radius:999px!important;background:var(--imp-white)!important;color:var(--imp-navy)!important;text-decoration:none!important;text-align:center!important;font-family:\"Poppins\",Arial,sans-serif!important;font-weight:700!important;overflow-wrap:anywhere!important}\n.imp-hero-contact-grid>a:hover{border-color:var(--imp-red)!important}<\/p>\n<p>\/* FIVE TABS \u2014 fixed horizontal navigation matching the approved layout *\/\nbody.single-product .woocommerce div.product .woocommerce-tabs ul.tabs,\nbody.single-product .woocommerce-tabs ul.tabs,\nbody.single-product .wc-tabs-wrapper ul.wc-tabs{\n display:flex!important;\n flex-direction:row!important;\n flex-wrap:nowrap!important;\n align-items:center!important;\n justify-content:flex-start!important;\n gap:8px!important;\n width:100%!important;\n max-width:100%!important;\n min-width:0!important;\n height:auto!important;\n min-height:56px!important;\n padding:6px!important;\n margin:0 0 24px!important;\n list-style:none!important;\n background:var(--imp-navy)!important;\n border:0!important;\n border-radius:22px!important;\n overflow-x:auto!important;\n overflow-y:hidden!important;\n overscroll-behavior-x:contain!important;\n -webkit-overflow-scrolling:touch!important;\n white-space:nowrap!important;\n box-sizing:border-box!important;\n}\nbody.single-product .woocommerce div.product .woocommerce-tabs ul.tabs:before,\nbody.single-product .woocommerce div.product .woocommerce-tabs ul.tabs:after,\nbody.single-product .woocommerce-tabs ul.tabs:before,\nbody.single-product .woocommerce-tabs ul.tabs:after{display:none!important;content:none!important}\nbody.single-product .woocommerce div.product .woocommerce-tabs ul.tabs>li,\nbody.single-product .woocommerce-tabs ul.tabs>li,\nbody.single-product .wc-tabs-wrapper ul.wc-tabs>li{\n float:none!important;\n display:block!important;\n position:relative!important;\n flex:0 0 auto!important;\n flex-basis:auto!important;\n flex-grow:0!important;\n flex-shrink:0!important;\n width:auto!important;\n min-width:0!important;\n max-width:none!important;\n height:auto!important;\n margin:0!important;\n padding:0!important;\n border:0!important;\n background:transparent!important;\n border-radius:18px!important;\n box-shadow:none!important;\n clear:none!important;\n box-sizing:border-box!important;\n}\nbody.single-product .woocommerce div.product .woocommerce-tabs ul.tabs>li:before,\nbody.single-product .woocommerce div.product .woocommerce-tabs ul.tabs>li:after,\nbody.single-product .woocommerce-tabs ul.tabs>li:before,\nbody.single-product .woocommerce-tabs ul.tabs>li:after{display:none!important;content:none!important}\nbody.single-product .woocommerce div.product .woocommerce-tabs ul.tabs>li>a,\nbody.single-product .woocommerce-tabs ul.tabs>li>a,\nbody.single-product .wc-tabs-wrapper ul.wc-tabs>li>a{\n display:flex!important;\n align-items:center!important;\n justify-content:center!important;\n width:auto!important;\n min-width:max-content!important;\n height:44px!important;\n padding:0 18px!important;\n margin:0!important;\n color:var(--imp-navy)!important;\n background:var(--imp-white)!important;\n border:1px solid rgba(24,52,87,.12)!important;\n font-family:\"Poppins\",Arial,sans-serif!important;\n font-weight:700!important;\n font-size:14px!important;\n line-height:1!important;\n text-decoration:none!important;\n white-space:nowrap!important;\n border-radius:18px!important;\n box-sizing:border-box!important;\n}\nbody.single-product .woocommerce div.product .woocommerce-tabs ul.tabs>li>a:hover,\nbody.single-product .woocommerce-tabs ul.tabs>li>a:hover{\n border-color:var(--imp-red)!important;\n color:var(--imp-navy)!important;\n background:var(--imp-white)!important;\n}\nbody.single-product .woocommerce div.product .woocommerce-tabs ul.tabs>li.active,\nbody.single-product .woocommerce-tabs ul.tabs>li.active{background:transparent!important}\nbody.single-product .woocommerce div.product .woocommerce-tabs ul.tabs>li.active>a,\nbody.single-product .woocommerce-tabs ul.tabs>li.active>a{\n background:var(--imp-navy)!important;\n color:var(--imp-white)!important;\n border-color:var(--imp-navy)!important;\n}\n.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel,.woocommerce-tabs .woocommerce-Tabs-panel{padding:0!important;margin:0!important}\n.imp-pf-tab-panel{width:min(1180px,100%);max-width:100%;margin:0 auto}\n@media(max-width:767px){\n body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs,\n body.single-product .woocommerce-tabs ul.tabs,\n body.single-product .wc-tabs-wrapper ul.wc-tabs{border-radius:18px!important;gap:6px!important;padding:5px!important;min-height:52px!important;scrollbar-width:none!important}\n body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs::-webkit-scrollbar,\n body.single-product .woocommerce-tabs ul.tabs::-webkit-scrollbar{display:none!important}\n body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs>li>a,\n body.single-product .woocommerce-tabs ul.tabs>li>a{height:42px!important;padding:0 14px!important;font-size:13px!important;border-radius:15px!important}\n}<\/p>\n<p>\/* PRICE TAB *\/\n.imp-price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:22px 0}\n.imp-price-card{min-width:0;padding:26px;border-radius:24px;background:var(--imp-white);border:1px solid rgba(24,52,87,.12)}\n.imp-price-label{font-family:\"Poppins\",Arial,sans-serif;font-size:13px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--imp-red);margin-bottom:9px}\n.imp-price-value{font-family:\"Poppins\",Arial,sans-serif;font-size:clamp(24px,3vw,34px);font-weight:800;color:var(--imp-navy);line-height:1.2;overflow-wrap:anywhere}\n.imp-price-explain{margin-top:18px}<\/p>\n<p>\/* FIXED FINAL CONTACT *\/\n.imp-contact{width:min(1180px,100%);max-width:100%;margin:34px auto 0;padding:clamp(26px,4vw,46px);border-radius:30px;background:var(--imp-soft-blue);border:1px solid rgba(24,52,87,.12);box-sizing:border-box;color:var(--imp-navy)}\n.imp-contact h2{font-family:\"Poppins\",Arial,sans-serif;color:var(--imp-navy);font-size:clamp(26px,3vw,38px);line-height:1.15;margin:0 0 14px}\n.imp-contact p{font-family:\"Noto Sans\",Arial,sans-serif;color:var(--imp-navy);font-size:16px;line-height:1.7;margin:0 0 12px}\n.imp-contact-main{display:block;width:100%;margin-top:24px;padding:17px 22px;background:var(--imp-red)!important;color:var(--imp-white)!important;border-radius:999px;text-align:center;text-decoration:none!important;font-family:\"Poppins\",Arial,sans-serif;font-weight:800;font-size:17px;box-sizing:border-box}\n.imp-contact-main:hover{opacity:.92;color:var(--imp-white)!important}\n.imp-contact-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px!important;width:100%!important;margin-top:24px!important}\n.imp-contact-grid>.imp-contact-card{display:flex!important;flex-direction:column!important;justify-content:center!important;width:100%!important;min-width:0!important;min-height:132px!important;box-sizing:border-box!important;background:var(--imp-white)!important;border:1px solid rgba(24,52,87,.12)!important;border-radius:24px!important;padding:28px!important;text-decoration:none!important}\n.imp-contact-card:hover{border-color:var(--imp-red)!important}\n.imp-contact-label{display:block;color:var(--imp-red);font-family:\"Poppins\",Arial,sans-serif;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px}\n.imp-contact-value{display:block;color:var(--imp-navy);font-family:\"Poppins\",Arial,sans-serif;font-size:20px;font-weight:700;line-height:1.35;overflow-wrap:anywhere;min-width:0}<\/p>\n<p>@media(max-width:767px){\n .imp-card{margin:16px 0;padding:22px;border-radius:22px}\n .imp-benefits ul,.imp-scope ul,.imp-target ul{grid-template-columns:1fr;gap:12px}\n .imp-hero-contact-grid{grid-template-columns:1fr!important;gap:10px!important}\n .imp-price-grid{grid-template-columns:1fr;gap:12px}\n .imp-contact{margin-top:24px;padding:22px;border-radius:24px}\n .imp-contact-grid{grid-template-columns:1fr!important;gap:14px!important;margin-top:16px!important}\n .imp-contact-grid>.imp-contact-card{min-height:108px!important;padding:20px!important;border-radius:20px!important}\n .imp-contact-value{font-size:17px}\n .woocommerce div.product .woocommerce-tabs ul.tabs li a,.woocommerce-tabs ul.tabs li a{padding:9px 12px!important;font-size:13px!important}\n}<\/p>\n<p>\/* v4.5.4 stable contact guard: no DOM reordering *\/\n.imp-hero-contact-grid,.imp-contact-grid{box-sizing:border-box!important}\n.imp-hero-contact-grid>* ,.imp-contact-grid>*{box-sizing:border-box!important;float:none!important;clear:none!important}\n@media(max-width:767px){\n .imp-hero-contact-grid,.imp-contact-grid{grid-template-columns:1fr!important}\n .imp-contact-grid{gap:12px!important}\n .imp-contact-grid>.imp-contact-card{min-height:0!important;padding:20px!important}\n}<\/p>\n<p>\/* v4.5.5 contact layout: table-based to survive WooCommerce\/wpautop *\/\n.imp-hero-contact-table,.imp-contact-table{width:100%!important;table-layout:fixed!important;border-collapse:collapse!important;border:0!important;background:transparent!important}\n.imp-hero-contact-table tbody,.imp-hero-contact-table tr,.imp-contact-table tbody,.imp-contact-table tr{border:0!important;background:transparent!important}\n.imp-hero-contact-cell,.imp-contact-cell{box-sizing:border-box!important;border:0!important;background:transparent!important}\n.imp-hero-contact-cell a,.imp-contact-cell a{box-sizing:border-box!important}\n@media(max-width:767px){\n .imp-hero-contact-table,.imp-hero-contact-table tbody,.imp-hero-contact-table tr,.imp-hero-contact-table td,.imp-contact-table,.imp-contact-table tbody,.imp-contact-table tr,.imp-contact-table td{display:block!important;width:100%!important;max-width:100%!important}\n .imp-hero-contact-cell{padding:0 0 10px!important}\n .imp-contact-cell{padding:0 0 12px!important}\n .imp-contact-table{margin-top:16px!important}\n .imp-contact-cell .imp-contact-card{min-height:0!important;padding:20px!important}\n}\n<\/style>\n<div class=\"implementi-pf\" data-product-factory=\"yes\" data-base-price=\"399\">\n<div id=\"imp-description-root\">\n<section class=\"imp-card imp-card-soft\">\n<div class=\"imp-kicker\">Managed automation by implementi.ai<\/div>\n<p>The AI Recurring Billing &amp; Dunning Manager is a managed monthly service that operates your failed\u2011payment recovery pipeline end-to-end. We profile failed payments, run segmented retry schedules and customer messages, and escalate high\u2011value cases to your teams with suggested next steps.<\/p>\n<p>You keep control of approvals and routing while implementi.ai takes responsibility for running, monitoring and tuning the automation. The solution is useful when manual chasing creates inconsistent messaging, inefficient retries and avoidable cancellations.<\/p>\n<\/section>\n<section class=\"imp-card\">\n<h2>The problem<\/h2>\n<p>When dunning is handled manually or with one-size-fits-all reminders, finance teams are flooded with noisy alerts and low-value tasks. Repetitive manual retries, unsegmented messages and unclear escalation rules mean high operational cost, frustrated customers and missed recovery opportunities. As subscriptions scale, maintaining correct retry timing, personalized messaging and accurate account state becomes harder: you need consistent rules, reliable integrations to payment and billing systems, and a single place to see exceptions and outcomes.<\/p>\n<div class=\"imp-media\">\n<div class=\"imp-kicker\">The challenge<\/div>\n<p><img decoding=\"async\" src=\"https:\/\/implementi.ai\/wp-content\/uploads\/2026\/10\/ai-recurring-billing-dunning-manager-pf4512-7591-support-1.jpg\" alt=\"Illustration showing many failed payment alerts and a stressed finance team before automation\" \/><\/div>\n<\/section>\n<section class=\"imp-card imp-card-blue imp-scope\">\n<h2>What this solution automates<\/h2>\n<p>This product automates the operational work required to recover failed recurring payments and reduce avoidable churn. implementi.ai designs, runs and maintains the recovery flows so your team focuses on the high\u2011value exceptions.<\/p>\n<ul>\n<li>Automated payment retry scheduling and orchestration across agreed gateways.<\/li>\n<li>Segmented, personalised email and SMS messages triggered by payment state and risk profile.<\/li>\n<li>AI-assisted classification of failed payments by recovery likelihood and suggested next actions.<\/li>\n<li>Automated routing of high-value or unusual cases to sales\/support with suggested scripts.<\/li>\n<li>Ongoing monitoring, error handling and monthly tuning of rules, content and timing.<\/li>\n<\/ul>\n<\/section>\n<section class=\"imp-card imp-benefits\">\n<h2>What your business gains<\/h2>\n<ul>\n<li><strong>Recover more payments without extra headcount.<\/strong> Automating retries and targeted messaging reduces manual outreach while capturing revenue that would otherwise be lost to churn.<\/li>\n<li><strong>Consistent, customer-appropriate communication.<\/strong> Segmented messaging reduces friction by sending the right tone and offers to the right customers at the right time.<\/li>\n<li><strong>Clear escalation for high-value accounts.<\/strong> Critical cases are routed to your nominated teams with concise context and suggested next steps, so revenue teams act where they have most impact.<\/li>\n<li><strong>Lower operational noise.<\/strong> Centralised monitoring removes duplicate alerts and reduces time spent investigating routine failed attempts.<\/li>\n<li><strong>Ongoing improvement.<\/strong> Monthly tuning of retry logic and message content ensures the automation adapts to changing payment behaviour and platform updates.<\/li>\n<\/ul>\n<div class=\"imp-media\">\n<div class=\"imp-kicker\">The result<\/div>\n<p><img decoding=\"async\" src=\"https:\/\/implementi.ai\/wp-content\/uploads\/2026\/10\/ai-recurring-billing-dunning-manager-pf4512-7591-support-2.jpg\" alt=\"Illustration showing streamlined retry timeline and concise escalation card after automation\" \/><\/div>\n<\/section>\n<section class=\"imp-card imp-card-soft\">\n<h2>A practical use case<\/h2>\n<p>Imagine a mid\u2011market SaaS provider that bills monthly to thousands of subscribers. The finance team spends hours each week chasing failed cards, sending identical reminders and manually flagging accounts for sales follow-up. With this service, failed attempts are automatically profiled, retried according to tuned schedules, and matched to personalised message sequences. High-value accounts that need human intervention are routed to the right team with a short action checklist. The company retains more customers and the finance team shifts to handling exceptions and improving recovery rules rather than manual outreach.<\/p>\n<\/section>\n<section class=\"imp-card imp-target\">\n<h2>Who is it for?<\/h2>\n<ul>\n<li><strong>Finance teams at subscription businesses<\/strong> that need to reduce time spent on manual payment recovery.<\/li>\n<li><strong>Billing operations teams<\/strong> that want consistent retry rules and fewer ad\u2011hoc processes.<\/li>\n<li><strong>Customer success or retention teams<\/strong> that require targeted messaging and clear routing for high-value churn risk.<\/li>\n<li><strong>Companies using multiple billing or messaging providers<\/strong> that need a single, managed recovery pipeline.<\/li>\n<\/ul>\n<\/section>\n<section class=\"imp-card imp-card-blue\">\n<h2>What is included in the monthly service<\/h2>\n<p>The monthly subscription covers the managed operation and continuous improvement of your dunning automation. Implementi.ai configures and runs the agreed recovery flows, connects to the systems we confirm during onboarding, monitors the automation and handles errors, and performs reasonable configuration updates and monthly tuning.<\/p>\n<ul>\n<li>Operating the automation and managing integrations agreed before launch.<\/li>\n<li>AI processing required for candidate classification and message personalization.<\/li>\n<li>Monitoring, incident handling and routine fixes to keep the agreed solution working.<\/li>\n<li>Monthly tuning of message content, timing and retry rules based on observed results.<\/li>\n<\/ul>\n<\/section>\n<section class=\"imp-card\">\n<h2>When this solution may not be necessary<\/h2>\n<ul>\n<li>Businesses with only occasional single\u2011invoice collections and no recurring payments\u2014manual processes may be sufficient.<\/li>\n<li>Organizations that require in\u2011house, self\u2011managed tooling rather than a managed monthly service.<\/li>\n<\/ul>\n<\/section><\/div>\n<div id=\"imp-tab-how-source\" class=\"imp-tab-source\">\n<div class=\"imp-pf-tab-panel\">\n<section class=\"imp-card imp-card-soft\">\n<h2>How it works<\/h2>\n<ol>\n<li><strong>Initial discovery and integration.<\/strong> We confirm which payment gateways, billing\/subscription platforms and messaging providers you use and agree the access method and scope before any work begins.<\/li>\n<li><strong>Data ingest and baseline analysis.<\/strong> Recent payment attempts, subscription state and account metadata are collected so we can profile failure patterns and identify recovery segments.<\/li>\n<li><strong>Risk profiling and segmentation.<\/strong> AI models classify failed payments by recovery likelihood and commercial value using account age, payment history and product information.<\/li>\n<li><strong>Managed retry orchestration.<\/strong> The service runs timed retry rules across the agreed gateways and records outcomes; rules are segmented by risk and customer attributes.<\/li>\n<li><strong>Personalised messaging sequences.<\/strong> Segmented email\/SMS templates are sent according to the chosen flow, with content tailored to the customer situation and recovery strategy.<\/li>\n<li><strong>Escalation and handoff.<\/strong> High-value or complex cases are routed to your nominated teams with a concise summary and suggested scripts to minimise handling time.<\/li>\n<li><strong>Monitoring and monthly tuning.<\/strong> We continuously monitor performance and adjust retry timing, messaging and routing as part of the monthly service.<\/li>\n<\/ol>\n<\/section>\n<section class=\"imp-card\">\n<h2>Example workflow<\/h2>\n<p>For example, imagine a company that bills monthly and sees hundreds of failed card attempts daily. The system ingests recent payment records and subscription status, then AI classifies each failed attempt as &#8216;high recovery&#8217;, &#8216;low recovery&#8217; or &#8216;requires manual review&#8217; based on payment history and account value. The automation schedules retries for &#8216;high recovery&#8217; cases with a short, personalised email reminder; &#8216;low recovery&#8217; cases receive a different message and fewer retries. When a high-value account repeatedly fails, the case is flagged and routed to sales with a short checklist; routine recoveries complete automatically and are logged for reporting.<\/p>\n<\/section><\/div>\n<\/div>\n<div id=\"imp-tab-integrations-source\" class=\"imp-tab-source\">\n<div class=\"imp-pf-tab-panel\">\n<section class=\"imp-card imp-card-soft\">\n<h2>Integrations<\/h2>\n<h3>Typical systems<\/h3>\n<p>Typical systems we connect to include payment gateways (for example Stripe, Adyen or PayPal), subscription and billing platforms (for example Stripe Billing, Chargebee, Recurly), CRM systems (for example Salesforce, HubSpot), messaging providers (for example Twilio, SendGrid) and accounting exports or ERP systems. Other systems can potentially be connected; exact compatibility is confirmed before launch.<\/p>\n<\/section>\n<section class=\"imp-card\">\n<h3>Connection methods<\/h3>\n<p>Connections are agreed during onboarding and commonly use available APIs, webhooks, or secure CSV\/data exports. Where needed we can work with webhook events, scheduled exports, Google Sheets or other agreed data endpoints. The chosen method depends on each system&#8217;s capabilities and security policies; we confirm the approach before implementation.<\/p>\n<\/section>\n<section class=\"imp-card imp-card-blue\">\n<h3>What we need from your company<\/h3>\n<p>Before launch we agree the systems to be connected, the data fields required (payment attempts, subscription state, customer contact data, account value), the events that trigger retries and messages, and your routing\/approval rules for escalations. We also need a nominated contact for decisions about message content and escalation criteria. Exact access methods and data requirements are confirmed and agreed prior to implementation.<\/p>\n<\/section><\/div>\n<\/div>\n<div id=\"imp-tab-faq-source\" class=\"imp-tab-source\">\n<div class=\"imp-pf-tab-panel\">\n<section class=\"imp-card\">\n<h2>FAQ<\/h2>\n<h3>What systems do you integrate with?<\/h3>\n<p>We typically integrate with payment gateways, billing\/subscription platforms, CRMs and messaging providers. Specific systems and connection methods are confirmed during onboarding; we do not assume compatibility until confirmed.<\/p>\n<h3>Do you send messages on our behalf?<\/h3>\n<p>Yes. We manage and send email and SMS through your chosen messaging provider or an agreed service as part of the configured flows, using templates you approve.<\/p>\n<h3>How are exceptions handled?<\/h3>\n<p>Exceptions and high-value accounts are routed to your nominated teams with a concise context card and suggested scripts. Routine recoveries are automated; the escalation rules are configured during setup.<\/p>\n<h3>What does the monthly subscription cover?<\/h3>\n<p>The monthly fee covers operating the agreed automation, required AI processing, monitoring, error handling, maintenance and reasonable configuration updates and tuning. Exact scope is confirmed before launch.<\/p>\n<h3>How long does implementation take?<\/h3>\n<p>Launch time depends on the number and complexity of integrations, data availability and the scope you select. We confirm a realistic timeline and scope during discovery; we do not publish fixed guarantees.<\/p>\n<h3>How do you handle customer data?<\/h3>\n<p>Access methods and the data required for the service are agreed during onboarding. We operate the recovery flows using the agreed integrations and maintain operational records needed to run the service.<\/p>\n<\/section><\/div>\n<\/div>\n<div id=\"imp-tab-price-source\" class=\"imp-tab-source\">\n<div class=\"imp-pf-tab-panel\">\n<section class=\"imp-card imp-card-soft\">\n<h2 class=\"imp-i18n-price-title\">Price<\/h2>\n<div class=\"imp-price-grid\">\n<div class=\"imp-price-card\">\n<div class=\"imp-price-label imp-i18n-monthly-label\">Monthly subscription<\/div>\n<div class=\"imp-price-value imp-price-monthly\">399 PLN net \/ month<\/div>\n<\/div>\n<div class=\"imp-price-card\">\n<div class=\"imp-price-label imp-i18n-activation-label\">Activation fee<\/div>\n<div class=\"imp-price-value imp-price-activation\" data-base-price=\"399\">3 \u00d7 monthly subscription<\/div>\n<\/div><\/div>\n<div class=\"imp-price-explain\">\n<p class=\"imp-i18n-activation-copy\">The activation fee covers the initial setup, implementation and launch of the agreed automation scope.<\/p>\n<p class=\"imp-i18n-monthly-copy\">The monthly subscription covers the ongoing operation, maintenance and management of the automation service.<\/p>\n<p class=\"imp-i18n-price-confirm\">The exact scope and final monthly subscription are confirmed before launch.<\/p>\n<\/p><\/div>\n<\/section><\/div>\n<\/div>\n<section id=\"implementation-contact\" class=\"imp-contact\">\n<div class=\"imp-contact-copy-card\">\n<h2 class=\"imp-i18n-contact-title\">Ready to automate this process?<\/h2>\n<p>Tell us which billing, payment and messaging systems your company currently uses.<\/p>\n<p class=\"imp-i18n-contact-copy\">We\u2019ll confirm how this solution can be connected, its scope and the final monthly subscription.<\/p>\n<\/p><\/div>\n<p>    <a class=\"imp-contact-main imp-i18n-calendly\" href=\"https:\/\/calendly.com\/d\/cv3s-28d-54k\/30-minutowe-spotkanie\" target=\"_blank\" rel=\"noopener\">Book a 30-minute call<\/a><\/p>\n<table class=\"imp-contact-table\" role=\"presentation\" cellspacing=\"0\" cellpadding=\"0\" style=\"width:100%!important;table-layout:fixed!important;border-collapse:collapse!important;margin:24px 0 0!important;border:0!important;background:transparent!important;\">\n<tbody>\n<tr>\n<td class=\"imp-contact-cell imp-contact-cell-email\" style=\"width:50%!important;padding:0 12px 0 0!important;border:0!important;background:transparent!important;vertical-align:top!important;\"><a class=\"imp-contact-card\" href=\"mailto:contact@implementi.ai\" style=\"display:flex!important;flex-direction:column!important;justify-content:center!important;width:100%!important;min-width:0!important;min-height:132px!important;margin:0!important;box-sizing:border-box!important;background:#F9F9F9!important;border:1px solid rgba(24,52,87,.12)!important;border-radius:24px!important;padding:28px!important;text-decoration:none!important;\"><span class=\"imp-contact-label imp-i18n-email-label\">Email us<\/span><span class=\"imp-contact-value\">contact@implementi.ai<\/span><\/a><\/td>\n<td class=\"imp-contact-cell imp-contact-cell-phone\" style=\"width:50%!important;padding:0 0 0 12px!important;border:0!important;background:transparent!important;vertical-align:top!important;\"><a class=\"imp-contact-card\" href=\"tel:%2B48660983178\" style=\"display:flex!important;flex-direction:column!important;justify-content:center!important;width:100%!important;min-width:0!important;min-height:132px!important;margin:0!important;box-sizing:border-box!important;background:#F9F9F9!important;border:1px solid rgba(24,52,87,.12)!important;border-radius:24px!important;padding:28px!important;text-decoration:none!important;\"><span class=\"imp-contact-label imp-i18n-phone-label\">Call us<\/span><span class=\"imp-contact-value\">&#43;48 660 983 178<\/span><\/a><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/section>\n<\/div>\n<p><script>(function(){\nvar impBusy=false;\nfunction impLang(){var l=(document.documentElement.lang||'en').toLowerCase();return l.indexOf('pl')===0?'pl':'en';}\nfunction impText(){return impLang()==='pl'?{description:'Opis',how:'Jak to dzia\u0142a',integrations:'Integracje',faq:'FAQ',price:'Cena',contactTitle:'Chcesz zautomatyzowa\u0107 ten proces?',contactCopy:'Potwierdzimy spos\u00f3b pod\u0142\u0105czenia rozwi\u0105zania, zakres oraz ostateczny miesi\u0119czny abonament.',calendly:'Um\u00f3w 30-minutow\u0105 rozmow\u0119',email:'Napisz e-mail',phone:'Zadzwo\u0144',monthly:'Abonament miesi\u0119czny',activation:'Op\u0142ata aktywacyjna',activationCopy:'Op\u0142ata aktywacyjna obejmuje pocz\u0105tkow\u0105 konfiguracj\u0119, wdro\u017cenie i uruchomienie uzgodnionego zakresu automatyzacji.',monthlyCopy:'Abonament miesi\u0119czny obejmuje bie\u017c\u0105ce dzia\u0142anie, utrzymanie i obs\u0142ug\u0119 automatyzacji.',priceConfirm:'Dok\u0142adny zakres i ostateczny miesi\u0119czny abonament potwierdzamy przed uruchomieniem.',pricePrefix:'Od ',priceSuffix:' netto \/ miesi\u0105c',tabMonthlySuffix:' netto \/ miesi\u0105c',tabActivationSuffix:' netto'}:{description:'Description',how:'How it works',integrations:'Integrations',faq:'FAQ',price:'Price',contactTitle:'Ready to automate this process?',contactCopy:'We\u2019ll confirm how this solution can be connected, its scope and the final monthly subscription.',calendly:'Book a 30-minute call',email:'Email us',phone:'Call us',monthly:'Monthly subscription',activation:'Activation fee',activationCopy:'The activation fee covers the initial setup, implementation and launch of the agreed automation scope.',monthlyCopy:'The monthly subscription covers the ongoing operation, maintenance and management of the automation service.',priceConfirm:'The exact scope and final monthly subscription are confirmed before launch.',pricePrefix:'From ',priceSuffix:' net \/ month',tabMonthlySuffix:' net \/ month',tabActivationSuffix:' net'};}\nfunction clean(v){return(v||'').replace(\/\u00a0\/g,' ').replace(\/\\s+\/g,' ').trim();}\nfunction money(raw){raw=clean(raw).replace(\/^From\\s+\/i,'').replace(\/^Od\\s+\/i,'').replace(\/\\s+netto\\s*\\\/\\s*miesi\u0105c$\/i,'').replace(\/\\s+net\\s*\\\/\\s*month$\/i,'');var m=raw.match(\/([\\d\\s.,]+)\/);if(!m)return null;var n=m[1].replace(\/\\s\/g,'');var lc=n.lastIndexOf(','),ld=n.lastIndexOf('.'),sep='';if(lc>=0||ld>=0)sep=lc>ld?',':'.';var frac=sep?(n.split(sep)[1]||''):'';var decimals=(frac&&parseInt(frac,10)!==0)?Math.min(frac.length,2):0;var norm=n;if(sep===',')norm=norm.replace(\/\\.\/g,'').replace(',','.');else if(sep==='.')norm=norm.replace(\/,\/g,'');var val=parseFloat(norm);if(isNaN(val))return null;var idx=raw.indexOf(m[1]);var pre=clean(raw.slice(0,idx));var post=clean(raw.slice(idx+m[1].length));if(impLang()==='en'&&post.toLowerCase()==='z\u0142')post='PLN';return{value:val,decimals:decimals,prefix:pre,suffix:post,decimal:sep||'.'};}\nfunction fmt(v,f){var s=Number(v).toFixed(f.decimals);if(f.decimal===',')s=s.replace('.',',');return(f.prefix?f.prefix:'')+s+(f.suffix?' '+f.suffix:'');}\nfunction currentMoney(){var p=document.querySelector('.summary p.price');var root=document.querySelector('.implementi-pf');var fallback=(root&&root.getAttribute('data-base-price')?root.getAttribute('data-base-price'):'399')+' PLN';if(!p)return money(fallback);var txt=clean(p.textContent||p.innerText||'');if(\/^(From|Od)\\s\/i.test(txt)&&p.getAttribute('data-imp-raw'))txt=p.getAttribute('data-imp-raw');else if(txt&&!\/^(From|Od)\\s\/i.test(txt))p.setAttribute('data-imp-raw',txt);return money(txt)||money(fallback);}\nfunction localize(){var t=impText();var map=[['.imp-i18n-contact-title',t.contactTitle],['.imp-i18n-contact-copy',t.contactCopy],['.imp-i18n-calendly',t.calendly],['.imp-i18n-email-label',t.email],['.imp-i18n-phone-label',t.phone],['.imp-i18n-price-title',t.price],['.imp-i18n-monthly-label',t.monthly],['.imp-i18n-activation-label',t.activation],['.imp-i18n-activation-copy',t.activationCopy],['.imp-i18n-monthly-copy',t.monthlyCopy],['.imp-i18n-price-confirm',t.priceConfirm]];map.forEach(function(x){document.querySelectorAll(x[0]).forEach(function(el){el.textContent=x[1];});});document.querySelectorAll('.imp-hero-calendly').forEach(function(a){a.textContent=t.calendly;});document.querySelectorAll('.imp-hero-email').forEach(function(a){a.textContent=t.email;});document.querySelectorAll('.imp-hero-phone').forEach(function(a){a.textContent=t.phone;});}\nfunction updatePrice(){if(impBusy)return;var t=impText(),p=document.querySelector('.summary p.price'),f=currentMoney();if(!f)return;var base=fmt(f.value,f),desired=t.pricePrefix+base+t.priceSuffix;impBusy=true;if(p&&clean(p.textContent)!==desired){p.innerHTML='<span class=\"imp-native-monthly-price\">'+desired+'<\/span>';}document.querySelectorAll('.imp-price-monthly').forEach(function(el){el.textContent=base+t.tabMonthlySuffix;});document.querySelectorAll('.imp-price-activation').forEach(function(el){el.textContent=fmt(f.value*3,f)+t.tabActivationSuffix;});impBusy=false;}\nfunction enforceImpTabsLayout(){\n var wrap=document.querySelector('.woocommerce-tabs, .wc-tabs-wrapper');\n if(!wrap)return;\n var tabs=wrap.querySelector('ul.tabs, ul.wc-tabs');\n if(!tabs)return;\n var important=function(el,prop,val){try{el.style.setProperty(prop,val,'important');}catch(e){}};\n important(tabs,'display','flex');important(tabs,'flex-direction','row');important(tabs,'flex-wrap','nowrap');important(tabs,'align-items','center');important(tabs,'justify-content','flex-start');important(tabs,'gap','8px');important(tabs,'width','100%');important(tabs,'max-width','100%');important(tabs,'min-width','0');important(tabs,'height','auto');important(tabs,'padding','6px');important(tabs,'margin','0 0 24px');important(tabs,'overflow-x','auto');important(tabs,'overflow-y','hidden');important(tabs,'white-space','nowrap');important(tabs,'background','#183457');important(tabs,'border','0');important(tabs,'border-radius','22px');\n Array.from(tabs.children).forEach(function(li){\n  if(li.style.display==='none')return;\n  important(li,'float','none');important(li,'display','block');important(li,'flex','0 0 auto');important(li,'flex-basis','auto');important(li,'flex-grow','0');important(li,'flex-shrink','0');important(li,'width','auto');important(li,'min-width','0');important(li,'max-width','none');important(li,'margin','0');important(li,'padding','0');important(li,'clear','none');important(li,'border','0');important(li,'background','transparent');\n  var a=li.querySelector('a');if(!a)return;\n  important(a,'display','flex');important(a,'align-items','center');important(a,'justify-content','center');important(a,'width','auto');important(a,'min-width','max-content');important(a,'height','44px');important(a,'padding','0 18px');important(a,'margin','0');important(a,'white-space','nowrap');important(a,'font-family','Poppins, Arial, sans-serif');important(a,'font-weight','700');important(a,'font-size','14px');important(a,'text-decoration','none');important(a,'border-radius','18px');\n  if(li.classList.contains('active')){important(a,'background','#183457');important(a,'color','#F9F9F9');important(a,'border-color','#183457');}\n  else{important(a,'background','#F9F9F9');important(a,'color','#183457');important(a,'border','1px solid rgba(24,52,87,.12)');}\n });\n}\nfunction buildTabs(){var wrap=document.querySelector('.woocommerce-tabs, .wc-tabs-wrapper');if(!wrap)return;var tabs=wrap.querySelector('ul.tabs, ul.wc-tabs');var desc=wrap.querySelector('#tab-description, .woocommerce-Tabs-panel--description');if(!tabs||!desc)return;var t=impText();var da=tabs.querySelector('.description_tab a, a[href=\"#tab-description\"]');if(da)da.textContent=t.description;tabs.querySelectorAll('.imp-pf-custom-tab').forEach(function(el){el.remove();});wrap.querySelectorAll('.imp-pf-custom-panel').forEach(function(el){el.remove();});var specs=[['how-it-works',t.how,'imp-tab-how-source'],['integrations',t.integrations,'imp-tab-integrations-source'],['faq',t.faq,'imp-tab-faq-source'],['price',t.price,'imp-tab-price-source']];specs.forEach(function(s){var src=document.getElementById(s[2]);if(!src)return;var li=document.createElement('li');li.className='imp-pf-custom-tab '+s[0]+'_tab';var a=document.createElement('a');a.href='#tab-'+s[0];a.textContent=s[1];li.appendChild(a);tabs.appendChild(li);var panel=document.createElement('div');panel.id='tab-'+s[0];panel.className='woocommerce-Tabs-panel woocommerce-Tabs-panel--'+s[0]+' panel entry-content wc-tab imp-pf-custom-panel';panel.innerHTML=src.innerHTML;panel.style.display='none';wrap.appendChild(panel);});Array.from(tabs.children).forEach(function(li){if(!li.classList.contains('description_tab')&&!li.classList.contains('imp-pf-custom-tab'))li.style.display='none';});Array.from(wrap.querySelectorAll('.woocommerce-Tabs-panel')).forEach(function(panel){if(panel!==desc&&!panel.classList.contains('imp-pf-custom-panel'))panel.style.display='none';});function activate(id){Array.from(tabs.querySelectorAll('li')).forEach(function(li){li.classList.remove('active');});Array.from(wrap.querySelectorAll('.woocommerce-Tabs-panel')).forEach(function(panel){panel.style.display='none';});var a=tabs.querySelector('a[href=\"#'+id+'\"]');if(a&&a.parentElement)a.parentElement.classList.add('active');var panel=wrap.querySelector('#'+id);if(panel)panel.style.display='block';enforceImpTabsLayout();}tabs.addEventListener('click',function(e){var a=e.target.closest('a');if(!a)return;var h=a.getAttribute('href')||'';if(h==='#tab-description'||h==='#tab-how-it-works'||h==='#tab-integrations'||h==='#tab-faq'||h==='#tab-price'){e.preventDefault();e.stopImmediatePropagation();activate(h.slice(1));}},true);if(!tabs.querySelector('li.active'))activate('tab-description');enforceImpTabsLayout();setTimeout(enforceImpTabsLayout,80);var contact=document.getElementById('implementation-contact');if(contact)wrap.insertAdjacentElement('afterend',contact);}\nfunction init(){buildTabs();enforceImpTabsLayout();localize();updatePrice();document.querySelectorAll('.paypal-buttons,.ppc-button-wrapper,.wc-stripe-payment-request-wrapper,.express-payment-button,.wcpay-payment-request-wrapper').forEach(function(el){el.style.display='none';});}\ndocument.addEventListener('DOMContentLoaded',init);window.addEventListener('load',init);setTimeout(init,400);setTimeout(init,1200);setTimeout(init,2400);var s=document.querySelector('.summary');if(s&&window.MutationObserver){new MutationObserver(function(){setTimeout(updatePrice,30);}).observe(s,{childList:true,subtree:true,characterData:true});}\n})();<\/script><\/p>\n<style id=\"imp-v4510-ui-fix\">\n\/* v4.5.10 \u2014 keep light blue only as page background, not inside framed content *\/\n.imp-card-soft,\n.imp-card-blue{\n  background:#F9F9F9!important;\n}<\/p>\n<p>\/* Direct spacing between the end of the implementi product content\/contact and related products *\/\nbody.single-product #implementation-contact{\n  margin-bottom:140px!important;\n}<\/p>\n<p>\/* Hero contact container \u2014 JS below unwraps any wpautop <\/p>\n<p>\/<br \/> wrappers first *\/\nbody.single-product .summary .imp-hero-contact-inline,\nbody.single-product .summary .imp-hero-contact-grid{\n  display:grid!important;\n  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;\n  gap:12px!important;\n  width:100%!important;\n  max-width:100%!important;\n  margin:12px 0 0!important;\n  padding:0!important;\n  box-sizing:border-box!important;\n}\nbody.single-product .summary .imp-hero-contact-inline>.imp-hero-email,\nbody.single-product .summary .imp-hero-contact-inline>.imp-hero-phone,\nbody.single-product .summary .imp-hero-contact-grid>.imp-hero-email,\nbody.single-product .summary .imp-hero-contact-grid>.imp-hero-phone{\n  display:flex!important;\n  align-items:center!important;\n  justify-content:center!important;\n  width:100%!important;\n  max-width:none!important;\n  min-width:0!important;\n  min-height:44px!important;\n  margin:0!important;\n  padding:10px 12px!important;\n  float:none!important;\n  clear:none!important;\n  box-sizing:border-box!important;\n  border:1px solid rgba(24,52,87,.16)!important;\n  border-radius:999px!important;\n  background:#F9F9F9!important;\n  color:#183457!important;\n  text-decoration:none!important;\n  text-align:center!important;\n  font-family:\"Poppins\",Arial,sans-serif!important;\n  font-size:16px!important;\n  font-weight:700!important;\n}<\/p>\n<p>\/* Related products *\/\nbody.single-product .related.products,\nbody.single-product .upsells.products{\n  clear:both!important;\n}\nbody.single-product .related.products ul.products,\nbody.single-product .upsells.products ul.products{\n  width:100%!important;\n  max-width:100%!important;\n  box-sizing:border-box!important;\n}\nbody.single-product .related.products .imp-related-title,\nbody.single-product .upsells.products .imp-related-title,\nbody.single-product .related.products .woocommerce-loop-product__title,\nbody.single-product .upsells.products .woocommerce-loop-product__title{\n  display:block!important;\n  visibility:visible!important;\n  opacity:1!important;\n  height:auto!important;\n  max-height:none!important;\n  overflow:visible!important;\n  margin:14px 0 8px!important;\n  padding:0!important;\n  color:#183457!important;\n  font-family:\"Poppins\",Arial,sans-serif!important;\n  font-size:18px!important;\n  font-weight:700!important;\n  line-height:1.35!important;\n  text-align:center!important;\n}\nbody.single-product .related.products ul.products li.product .price,\nbody.single-product .upsells.products ul.products li.product .price{\n  display:block!important;\n  margin:8px 0 14px!important;\n  text-align:center!important;\n}<\/p>\n<p>@media(max-width:767px){\n  body.single-product #implementation-contact{\n    margin-bottom:72px!important;\n  }\n  body.single-product .summary .imp-hero-contact-inline,\n  body.single-product .summary .imp-hero-contact-grid{\n    grid-template-columns:1fr!important;\n    gap:10px!important;\n  }\n}\n<\/style>\n<p><script id=\"imp-v4510-ui-fix-js\">\n(function(){\n  function impImportant(el, prop, value){\n    if(!el) return;\n    try{ el.style.setProperty(prop,value,'important'); }catch(e){}\n  }<\/p>\n<p>  function fixHeroContact(){\n    var wrap=document.querySelector('.summary .imp-hero-contact-inline, .summary .imp-hero-contact-grid');\n    if(!wrap) return;<\/p>\n<p>    var email=wrap.querySelector('.imp-hero-email');\n    var phone=wrap.querySelector('.imp-hero-phone');\n    if(!email || !phone) return;<\/p>\n<p>    \/* Woo short-description filters can insert <\/p>\n<p>\/<br \/>. Put the two anchors\n       back as DIRECT children so no wrapper can push Call us to the next row. *\/\n    if(email.parentElement!==wrap || phone.parentElement!==wrap || wrap.children.length!==2){\n      wrap.innerHTML='';\n      wrap.appendChild(email);\n      wrap.appendChild(phone);\n    }<\/p>\n<p>    impImportant(wrap,'display','grid');\n    impImportant(wrap,'width','100%');\n    impImportant(wrap,'max-width','100%');\n    impImportant(wrap,'gap',window.innerWidth<=767?'10px':'12px');\n    impImportant(wrap,'grid-template-columns',window.innerWidth<=767?'1fr':'minmax(0,1fr) minmax(0,1fr)');\n\n    [email,phone].forEach(function(a){\n      impImportant(a,'display','flex');\n      impImportant(a,'align-items','center');\n      impImportant(a,'justify-content','center');\n      impImportant(a,'width','100%');\n      impImportant(a,'max-width','none');\n      impImportant(a,'min-width','0');\n      impImportant(a,'margin','0');\n      impImportant(a,'float','none');\n      impImportant(a,'clear','none');\n      impImportant(a,'box-sizing','border-box');\n    });\n  }\n\n  function visibleProductName(li){\n    var title=li.querySelector('.woocommerce-loop-product__title, .product-title, h2.woocommerce-loop-product__title');\n    if(title &#038;&#038; title.textContent.trim()) return {text:title.textContent.trim(), node:title};\n\n    var link=li.querySelector('a.woocommerce-LoopProduct-link, a.woocommerce-loop-product__link, a[href]');\n    var aria=link ? (link.getAttribute('aria-label') || '') : '';\n    if(aria){\n      aria=aria.replace(\/^(Read more about|View product|Select options for)\\s*\/i,'').replace(\/^[\"']|[\"']$\/g,'').trim();\n      if(aria) return {text:aria,node:null};\n    }\n\n    var img=li.querySelector('img');\n    var alt=img ? (img.getAttribute('alt') || '').trim() : '';\n    return {text:alt,node:null};\n  }\n\n  function fixRelatedProducts(){\n    document.querySelectorAll('.related.products, .upsells.products').forEach(function(section){\n      var list=section.querySelector('ul.products');\n      if(!list) return;\n\n      \/* Tell Woo\/theme this is a 3-column list instead of a 4-column list. *\/\n      Array.from(list.classList).forEach(function(c){\n        if(\/^columns-\\d+$\/.test(c)) list.classList.remove(c);\n      });\n      list.classList.add('columns-3');\n\n      var items=Array.from(list.querySelectorAll(':scope > li.product'));\n      items.slice(3).forEach(function(li){ li.remove(); });\n      items=Array.from(list.querySelectorAll(':scope > li.product'));<\/p>\n<p>      \/* Only force our own grid dimensions when the theme doesn't produce\n         a usable 3-column row after changing to columns-3. *\/\n      if(window.innerWidth>900){\n        impImportant(list,'display','grid');\n        impImportant(list,'grid-template-columns','repeat(3,minmax(0,1fr))');\n        impImportant(list,'gap','30px');\n      }else if(window.innerWidth>767){\n        impImportant(list,'display','grid');\n        impImportant(list,'grid-template-columns','repeat(2,minmax(0,1fr))');\n        impImportant(list,'gap','24px');\n      }else{\n        impImportant(list,'display','grid');\n        impImportant(list,'grid-template-columns','1fr');\n        impImportant(list,'gap','22px');\n      }<\/p>\n<p>      items.forEach(function(li){\n        impImportant(li,'width','auto');\n        impImportant(li,'max-width','none');\n        impImportant(li,'min-width','0');\n        impImportant(li,'float','none');\n        impImportant(li,'clear','none');\n        impImportant(li,'margin','0');<\/p>\n<p>        var info=visibleProductName(li);\n        var title=info.node;<\/p>\n<p>        if(title){\n          title.classList.add('imp-related-title');\n        }else if(info.text && !li.querySelector('.imp-related-title')){\n          title=document.createElement('div');\n          title.className='imp-related-title';\n          title.textContent=info.text;\n          var price=li.querySelector('.price');\n          if(price) li.insertBefore(title,price);\n          else li.appendChild(title);\n        }<\/p>\n<p>        if(title){\n          impImportant(title,'display','block');\n          impImportant(title,'visibility','visible');\n          impImportant(title,'opacity','1');\n          impImportant(title,'height','auto');\n          impImportant(title,'max-height','none');\n          impImportant(title,'overflow','visible');\n          impImportant(title,'margin','14px 0 8px');\n          impImportant(title,'color','#183457');\n          impImportant(title,'font-family','Poppins, Arial, sans-serif');\n          impImportant(title,'font-size','18px');\n          impImportant(title,'font-weight','700');\n          impImportant(title,'line-height','1.35');\n          impImportant(title,'text-align','center');\n        }\n      });\n    });\n  }<\/p>\n<p>  function run(){\n    fixHeroContact();\n    fixRelatedProducts();\n  }<\/p>\n<p>  document.addEventListener('DOMContentLoaded',run);\n  window.addEventListener('load',run);\n  window.addEventListener('resize',function(){setTimeout(run,50);});\n  setTimeout(run,250);\n  setTimeout(run,700);\n  setTimeout(run,1600);\n  setTimeout(run,3000);<\/p>\n<p>  if(window.MutationObserver){\n    var mo=new MutationObserver(function(){setTimeout(run,40);});\n    document.addEventListener('DOMContentLoaded',function(){\n      if(document.body) mo.observe(document.body,{childList:true,subtree:true});\n    });\n  }\n})();\n<\/script><\/p>\n<style id=\"imp-v4512-bottom-fix\">\n\/* All customer-facing content cards stay white against the light-blue page background *\/\nbody.single-product .implementi-pf #imp-description-root > .imp-card,\nbody.single-product .implementi-pf .imp-pf-tab-panel > .imp-card,\nbody.single-product .implementi-pf .imp-auto-card{\n  background:#F9F9F9!important;\n  border:1px solid rgba(24,52,87,.10)!important;\n  border-radius:28px!important;\n}<\/p>\n<p>\/* Lower contact copy must never sit loose on the blue page background *\/\nbody.single-product .implementi-pf .imp-contact-copy-card{\n  display:block!important;\n  width:100%!important;\n  margin:0 0 26px!important;\n  padding:clamp(24px,4vw,40px)!important;\n  box-sizing:border-box!important;\n  background:#F9F9F9!important;\n  border:1px solid rgba(24,52,87,.10)!important;\n  border-radius:28px!important;\n}\nbody.single-product .implementi-pf .imp-contact-copy-card h2{\n  margin-top:0!important;\n}<\/p>\n<p>\/* The recommendation area is deliberately separated from Email\/Call cards *\/\nbody.single-product .imp-related-zone{\n  display:block!important;\n  clear:both!important;\n  width:min(1420px,calc(100% - 40px))!important;\n  max-width:100%!important;\n  margin:150px auto 60px!important;\n  padding:38px!important;\n  box-sizing:border-box!important;\n  background:#F9F9F9!important;\n  border:1px solid rgba(24,52,87,.10)!important;\n  border-radius:30px!important;\n}<\/p>\n<p>body.single-product .imp-related-heading{\n  display:block!important;\n  margin:0 0 34px!important;\n  padding:0!important;\n  color:#183457!important;\n  font-family:\"Poppins\",Arial,sans-serif!important;\n  font-size:30px!important;\n  font-weight:800!important;\n  line-height:1.2!important;\n  text-align:left!important;\n}<\/p>\n<p>\/* Exactly 3 products on desktop *\/\nbody.single-product .imp-related-list{\n  display:grid!important;\n  grid-template-columns:repeat(3,minmax(0,1fr))!important;\n  gap:30px!important;\n  width:100%!important;\n  max-width:100%!important;\n  margin:0!important;\n  padding:0!important;\n  box-sizing:border-box!important;\n}\nbody.single-product .imp-related-list > li.product{\n  display:block!important;\n  width:auto!important;\n  max-width:none!important;\n  min-width:0!important;\n  margin:0!important;\n  padding:0!important;\n  float:none!important;\n  clear:none!important;\n}\nbody.single-product .imp-related-list > li.product:nth-of-type(n+4){\n  display:none!important;\n}<\/p>\n<p>\/* Product titles must remain visible *\/\nbody.single-product .imp-related-list .woocommerce-loop-product__title,\nbody.single-product .imp-related-list .product-title,\nbody.single-product .imp-related-list .imp-related-title{\n  display:block!important;\n  visibility:visible!important;\n  opacity:1!important;\n  height:auto!important;\n  max-height:none!important;\n  overflow:visible!important;\n  margin:16px 0 8px!important;\n  color:#183457!important;\n  font-family:\"Poppins\",Arial,sans-serif!important;\n  font-size:18px!important;\n  font-weight:700!important;\n  line-height:1.35!important;\n  text-align:center!important;\n}\nbody.single-product .imp-related-list .price{\n  display:block!important;\n  margin:8px 0 14px!important;\n  text-align:center!important;\n}<\/p>\n<p>@media(max-width:900px){\n  body.single-product .imp-related-zone{\n    width:min(100% - 24px,1100px)!important;\n    margin-top:110px!important;\n    padding:28px!important;\n  }\n  body.single-product .imp-related-list{\n    grid-template-columns:repeat(2,minmax(0,1fr))!important;\n    gap:24px!important;\n  }\n}\n@media(max-width:767px){\n  body.single-product .imp-related-zone{\n    width:calc(100% - 20px)!important;\n    margin-top:80px!important;\n    padding:20px!important;\n    border-radius:24px!important;\n  }\n  body.single-product .imp-related-heading{\n    margin-bottom:24px!important;\n    font-size:24px!important;\n  }\n  body.single-product .imp-related-list{\n    grid-template-columns:1fr!important;\n    gap:22px!important;\n  }\n}\n<\/style>\n<p><script id=\"imp-v4512-bottom-fix-js\">\n(function(){\n  function directProducts(list){\n    return Array.prototype.filter.call(list.children,function(el){\n      return el && el.classList && el.classList.contains('product');\n    });\n  }<\/p>\n<p>  function textForProduct(li){\n    var title=li.querySelector('.woocommerce-loop-product__title,.product-title,h2,h3');\n    if(title && title.textContent.trim()) return {node:title,text:title.textContent.trim()};\n    var img=li.querySelector('img');\n    var alt=img ? (img.getAttribute('alt')||'').trim() : '';\n    if(alt) return {node:null,text:alt};\n    var link=li.querySelector('a[aria-label]');\n    var ar=link ? (link.getAttribute('aria-label')||'').trim() : '';\n    return {node:null,text:ar};\n  }<\/p>\n<p>  function wrapOrphanDescriptionText(){\n    var roots=document.querySelectorAll('#imp-description-root,.imp-pf-tab-panel');\n    roots.forEach(function(root){\n      var group=[];\n      function flush(){\n        if(!group.length) return;\n        var card=document.createElement('section');\n        card.className='imp-card imp-auto-card';\n        root.insertBefore(card,group[0]);\n        group.forEach(function(n){ card.appendChild(n); });\n        group=[];\n      }\n      Array.prototype.slice.call(root.childNodes).forEach(function(n){\n        if(n.nodeType===3){\n          if((n.textContent||'').trim()) group.push(n);\n          return;\n        }\n        if(n.nodeType!==1) return;\n        if(n.matches('section.imp-card,.imp-card,script,style,.imp-tab-source')) {\n          flush();\n        } else if(n.matches('p,h1,h2,h3,h4,ul,ol,blockquote,div:not(.imp-card)')) {\n          group.push(n);\n        } else {\n          flush();\n        }\n      });\n      flush();\n    });\n  }<\/p>\n<p>  function findRecommendationList(){\n    var contact=document.getElementById('implementation-contact');\n    var lists=Array.prototype.slice.call(document.querySelectorAll('ul.products'));\n    if(!lists.length) return null;<\/p>\n<p>    if(contact){\n      var following=lists.filter(function(list){\n        try{\n          return !!(contact.compareDocumentPosition(list) & Node.DOCUMENT_POSITION_FOLLOWING);\n        }catch(e){ return false; }\n      });\n      if(following.length) return following[0];\n    }<\/p>\n<p>    return document.querySelector('.related.products ul.products,.upsells.products ul.products,section.related ul.products,section.upsells ul.products');\n  }<\/p>\n<p>  function fixRecommendations(){\n    var list=findRecommendationList();\n    if(!list) return;<\/p>\n<p>    list.classList.add('imp-related-list');<\/p>\n<p>    Array.prototype.slice.call(list.classList).forEach(function(c){\n      if(\/^columns-\\d+$\/.test(c)) list.classList.remove(c);\n    });\n    list.classList.add('columns-3');<\/p>\n<p>    var items=directProducts(list);<\/p>\n<p>    \/* Physical removal + CSS nth-of-type fallback = exactly 3 visible products. *\/\n    for(var i=items.length-1;i>=3;i--){\n      items[i].remove();\n    }\n    items=directProducts(list);<\/p>\n<p>    var zone=list.closest('section,.related,.upsells');\n    if(!zone) zone=list.parentElement;\n    if(zone){\n      zone.classList.add('imp-related-zone');<\/p>\n<p>      var existing=zone.querySelector(':scope > h2,:scope > h3');\n      if(existing){\n        existing.textContent='Customers also choose';\n        existing.classList.add('imp-related-heading');\n      }else if(!zone.querySelector(':scope > .imp-related-heading')){\n        var h=document.createElement('h2');\n        h.className='imp-related-heading';\n        h.textContent='Customers also choose';\n        zone.insertBefore(h,list);\n      }\n    }<\/p>\n<p>    items.forEach(function(li){\n      var info=textForProduct(li);\n      if(info.node){\n        info.node.classList.add('imp-related-title');\n      }else if(info.text && !li.querySelector('.imp-related-title')){\n        var t=document.createElement('div');\n        t.className='imp-related-title';\n        t.textContent=info.text;\n        var price=li.querySelector('.price');\n        if(price) li.insertBefore(t,price);\n        else li.appendChild(t);\n      }\n    });\n  }<\/p>\n<p>  function run(){\n    wrapOrphanDescriptionText();\n    fixRecommendations();\n  }<\/p>\n<p>  document.addEventListener('DOMContentLoaded',run);\n  window.addEventListener('load',run);\n  window.addEventListener('resize',function(){setTimeout(fixRecommendations,60);});\n  setTimeout(run,250);\n  setTimeout(run,800);\n  setTimeout(run,1800);\n  setTimeout(run,3500);<\/p>\n<p>  if(window.MutationObserver){\n    var queued=false;\n    var mo=new MutationObserver(function(){\n      if(queued) return;\n      queued=true;\n      setTimeout(function(){\n        queued=false;\n        fixRecommendations();\n      },100);\n    });\n    document.addEventListener('DOMContentLoaded',function(){\n      if(document.body) mo.observe(document.body,{childList:true,subtree:true});\n    });\n  }\n})();\n<\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<div class=\"imp-hero-compact\">\n<div class=\"imp-hero-meta\"><span class=\"imp-hero-chip\">Finances and HR<\/span><span class=\"imp-hero-chip\">implementi.ai<\/span><\/div>\n<div class=\"imp-hero-short\">A fully managed monthly service that reduces failed recurring payments and involuntary churn by operating and tuning automated dunning flows. Implementi.ai connects to your billing and customer systems, runs AI\u2011driven recovery logic, and routes exceptions to your teams.<\/div>\n<p>  <a class=\"imp-hero-calendly\" href=\"https:\/\/calendly.com\/d\/cv3s-28d-54k\/30-minutowe-spotkanie\" target=\"_blank\" rel=\"noopener\">Book a 30-minute call<\/a><\/p>\n<div class=\"imp-hero-contact-grid\"><a class=\"imp-hero-email\" href=\"mailto:contact@implementi.ai\">Email us<\/a><a class=\"imp-hero-phone\" href=\"tel:%2B48660983178\">Call us<\/a><\/div>\n<\/div>\n","protected":false},"featured_media":8256,"comment_status":"closed","ping_status":"closed","template":"","meta":[],"product_brand":[32],"product_cat":[39],"product_tag":[],"class_list":["post-7591","product","type-product","status-publish","has-post-thumbnail","product_brand-implementi-ai","product_cat-finances","first","instock","virtual","taxable","product-type-external"],"ams_default_variation_id":0,"ams_product_points_reward":[],"ams_product_discount_percentage":0,"ams_price_to_display":399,"ams_acf":[],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/implementi.ai\/en\/wp-json\/wp\/v2\/product\/7591","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/implementi.ai\/en\/wp-json\/wp\/v2\/product"}],"about":[{"href":"https:\/\/implementi.ai\/en\/wp-json\/wp\/v2\/types\/product"}],"replies":[{"embeddable":true,"href":"https:\/\/implementi.ai\/en\/wp-json\/wp\/v2\/comments?post=7591"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/implementi.ai\/en\/wp-json\/wp\/v2\/media\/8256"}],"wp:attachment":[{"href":"https:\/\/implementi.ai\/en\/wp-json\/wp\/v2\/media?parent=7591"}],"wp:term":[{"taxonomy":"product_brand","embeddable":true,"href":"https:\/\/implementi.ai\/en\/wp-json\/wp\/v2\/product_brand?post=7591"},{"taxonomy":"product_cat","embeddable":true,"href":"https:\/\/implementi.ai\/en\/wp-json\/wp\/v2\/product_cat?post=7591"},{"taxonomy":"product_tag","embeddable":true,"href":"https:\/\/implementi.ai\/en\/wp-json\/wp\/v2\/product_tag?post=7591"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}