{"id":1975,"date":"2026-05-28T12:21:01","date_gmt":"2026-05-28T12:21:01","guid":{"rendered":"https:\/\/mutualafricapay.com\/?page_id=1975"},"modified":"2026-05-28T12:21:01","modified_gmt":"2026-05-28T12:21:01","slug":"recurring-billing","status":"publish","type":"page","link":"https:\/\/mutualafricapay.com\/za\/payments-2\/recurring-billing\/","title":{"rendered":"Recurring Billing"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"1975\" class=\"elementor elementor-1975\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5a14adc e-con-full e-flex wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no wpr-column-slider-no wpr-equal-height-no e-con e-parent\" data-id=\"5a14adc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d6f5051 elementor-widget elementor-widget-html\" data-id=\"d6f5051\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!DOCTYPE html>\r\n<html lang=\"en\">\r\n<head>\r\n<meta charset=\"UTF-8\">\r\n<meta name=\"viewport\" content=\"width=device-width,initial-scale=1.0,maximum-scale=5.0\">\r\n<title>Recurring Billing \u2014 Mutual Africa Pay<\/title>\r\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Space+Grotesk:wght@400;500;600;700&display=swap\" rel=\"stylesheet\">\r\n<style>\r\n*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }\r\nbody { font-family: 'Space Grotesk', sans-serif; background: #07091A; color: #FFFFFF; -webkit-font-smoothing: antialiased; }\r\n.sec { padding: clamp(64px,10vw,112px) clamp(20px,6%,80px); position: relative; overflow: hidden; }\r\n.bg { position: absolute; inset: 0; pointer-events: none; overflow: hidden; }\r\n.bg-dots { position: absolute; inset: 0; background-image: radial-gradient(rgba(255,255,255,0.04) 1px, transparent 1px); background-size: 30px 30px; }\r\n.bg-line { position: absolute; left: 0; right: 0; height: 1px; background: linear-gradient(90deg, transparent, rgba(46,158,68,0.16), transparent); }\r\n.bg-glow { position: absolute; border-radius: 50%; }\r\n.eyebrow { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 16px; }\r\n.edot { width: 6px; height: 6px; border-radius: 50%; background: #2E9E44; box-shadow: 0 0 8px rgba(46,158,68,0.7); animation: pulsedot 2.5s ease infinite; }\r\n.etxt { font-size: 0.72rem; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; color: #2E9E44; }\r\n.h2 { font-size: clamp(1.9rem,3.2vw,2.9rem); font-weight: 700; letter-spacing: -0.025em; line-height: 1.08; color: #FFFFFF; }\r\n.body { font-size: 0.975rem; color: #FFFFFF; line-height: 1.78; }\r\n@keyframes fadeUp { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }\r\n@keyframes pulsedot { 0%,100%{opacity:1;box-shadow:0 0 8px rgba(46,158,68,0.7)}50%{opacity:0.4;box-shadow:0 0 3px rgba(46,158,68,0.3)} }\r\n@keyframes float1 { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-8px)} }\r\n@keyframes float2 { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-12px)} }\r\n@keyframes float3 { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-6px)} }\r\n@keyframes float4 { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-10px)} }\r\n@keyframes float5 { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-9px)} }\r\n@keyframes float6 { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-11px)} }\r\n.btn-green { display:inline-flex;align-items:center;gap:8px;background:#2E9E44;color:#FFFFFF;padding:13px 28px;border-radius:7px;font-size:.92rem;font-weight:600;text-decoration:none;transition:background 150ms,transform 150ms,box-shadow 150ms; }\r\n@media(hover:hover)and(pointer:fine){.btn-green:hover{background:#38B850;transform:translateY(-2px);box-shadow:0 8px 24px rgba(46,158,68,.35);}}\r\n.btn-green:active{transform:scale(0.97)!important;}\r\n.btn-ghost { display:inline-flex;align-items:center;gap:8px;background:transparent;color:#FFFFFF;padding:13px 28px;border-radius:7px;font-size:.92rem;font-weight:500;text-decoration:none;border:1px solid rgba(255,255,255,0.15);transition:border-color 150ms,background 150ms; }\r\n@media(hover:hover)and(pointer:fine){.btn-ghost:hover{border-color:rgba(255,255,255,.35);background:rgba(255,255,255,.05);}}\r\n#s-hero { background:#07091A; min-height:60vh; display:flex; align-items:center; }\r\n.hero-inner { position:relative;z-index:2;max-width:820px;animation:fadeUp 0.55s cubic-bezier(0.23,1,0.32,1) both; }\r\n.breadcrumb { display:flex;align-items:center;gap:8px;margin-bottom:24px;flex-wrap:wrap; }\r\n.breadcrumb a { font-size:0.78rem;color:#FFFFFF;opacity:0.45;text-decoration:none;transition:opacity 150ms; }\r\n@media(hover:hover)and(pointer:fine){.breadcrumb a:hover{opacity:1}}\r\n.breadcrumb-sep { font-size:0.78rem;color:#FFFFFF;opacity:0.25; }\r\n.breadcrumb-cur { font-size:0.78rem;color:#2E9E44;font-weight:500; }\r\n.hero-inner h1 { font-size:clamp(2.8rem,5.5vw,5rem);font-weight:700;letter-spacing:-0.03em;line-height:1.04;color:#FFFFFF;margin-bottom:22px; }\r\n.hero-inner h1 span { color:#2E9E44; }\r\n.hero-inner p { font-size:1.05rem;color:#FFFFFF;line-height:1.74;max-width:640px;margin-bottom:40px; }\r\n.hero-actions { display:flex;gap:12px;flex-wrap:wrap;margin-bottom:52px; }\r\n.hero-pills { display:flex;flex-wrap:wrap;gap:8px; }\r\n.pill { display:inline-flex;align-items:center;gap:7px;padding:6px 14px;border-radius:100px;border:1px solid rgba(255,255,255,0.1);background:rgba(255,255,255,0.04);font-size:0.78rem;font-weight:500;color:#FFFFFF; }\r\n.pill-dot { width:5px;height:5px;border-radius:50%;background:#2E9E44;flex-shrink:0; }\r\n#s-cap { background:#060810; }\r\n.cap-header { margin-bottom:52px;position:relative;z-index:2;animation:fadeUp 0.5s cubic-bezier(0.23,1,0.32,1) both; }\r\n.fgrid { display:grid;grid-template-columns:repeat(3,1fr);gap:14px;position:relative;z-index:2;perspective:1200px; }\r\n.fcard { background:linear-gradient(160deg,#0D1033,#090C22);border:1px solid rgba(255,255,255,0.07);border-radius:16px;padding:28px 24px 36px;position:relative;overflow:hidden;display:block;color:inherit;text-decoration:none;transition:border-color 160ms cubic-bezier(0.23,1,0.32,1),box-shadow 240ms cubic-bezier(0.23,1,0.32,1); }\r\n.fcard.f1{animation:fadeUp 0.5s 0.03s cubic-bezier(0.23,1,0.32,1) both,float1 6s 0.5s ease-in-out infinite}\r\n.fcard.f2{animation:fadeUp 0.5s 0.07s cubic-bezier(0.23,1,0.32,1) both,float2 7s 0.8s ease-in-out infinite}\r\n.fcard.f3{animation:fadeUp 0.5s 0.11s cubic-bezier(0.23,1,0.32,1) both,float3 5.5s 0.3s ease-in-out infinite}\r\n.fcard.f4{animation:fadeUp 0.5s 0.15s cubic-bezier(0.23,1,0.32,1) both,float4 8s 1s ease-in-out infinite}\r\n.fcard.f5{animation:fadeUp 0.5s 0.19s cubic-bezier(0.23,1,0.32,1) both,float5 6.5s 0.6s ease-in-out infinite}\r\n.fcard.f6{animation:fadeUp 0.5s 0.23s cubic-bezier(0.23,1,0.32,1) both,float6 7.5s 1.2s ease-in-out infinite}\r\n.fcard::before{content:'';position:absolute;top:0;left:15%;right:15%;height:1px;background:linear-gradient(90deg,transparent,rgba(46,158,68,.45),transparent);opacity:0;transition:opacity 200ms}\r\n.fcard::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 0%,rgba(46,158,68,.08),transparent 60%);opacity:0;transition:opacity 250ms;pointer-events:none}\r\n@media(hover:hover)and(pointer:fine){.fcard:hover{border-color:rgba(46,158,68,0.42);box-shadow:0 20px 52px rgba(0,0,0,.5),0 0 30px rgba(46,158,68,.07)}.fcard:hover::before,.fcard:hover::after{opacity:1}}\r\n.fcard:active{transform:scale(0.98)!important}\r\n.fcard-ico{font-size:1.6rem;margin-bottom:16px;line-height:1;position:relative;z-index:1}\r\n.fcard-title{font-size:1rem;font-weight:600;color:#FFFFFF;margin-bottom:10px;line-height:1.3;position:relative;z-index:1}\r\n.fcard-body{font-size:0.835rem;color:#FFFFFF;line-height:1.68;position:relative;z-index:1}\r\n#s-how { background:#07091A; }\r\n.how-grid { display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start;position:relative;z-index:2;animation:fadeUp 0.55s cubic-bezier(0.23,1,0.32,1) both; }\r\n.steps { display:flex;flex-direction:column;gap:3px; }\r\n.step { display:flex;align-items:flex-start;gap:20px;padding:22px 24px;background:linear-gradient(145deg,#0D1033,#090C22);border:1px solid rgba(255,255,255,0.07);border-radius:12px;transition:border-color 160ms,background 160ms; }\r\n@media(hover:hover)and(pointer:fine){.step:hover{border-color:rgba(46,158,68,0.35);background:linear-gradient(145deg,#111440,#0d1035)}}\r\n.step-num { width:36px;height:36px;border-radius:50%;flex-shrink:0;background:rgba(46,158,68,0.1);border:1px solid rgba(46,158,68,0.28);display:flex;align-items:center;justify-content:center;font-size:0.78rem;font-weight:700;color:#2E9E44; }\r\n.step h3 { font-size:0.95rem;font-weight:600;color:#FFFFFF;margin-bottom:5px; }\r\n.step p { font-size:0.845rem;color:#FFFFFF;line-height:1.62; }\r\n#s-use { background:#060810; }\r\n.use-header { margin-bottom:48px;position:relative;z-index:2;animation:fadeUp 0.5s cubic-bezier(0.23,1,0.32,1) both; }\r\n.use-grid { display:grid;grid-template-columns:repeat(2,1fr);gap:14px;position:relative;z-index:2; }\r\n.use-card { background:linear-gradient(145deg,#0D1033,#090C22);border:1px solid rgba(255,255,255,0.07);border-radius:14px;padding:32px 28px;animation:fadeUp 0.5s cubic-bezier(0.23,1,0.32,1) both;transition:border-color 160ms,box-shadow 220ms; }\r\n.use-card:nth-child(1){animation-delay:.04s}.use-card:nth-child(2){animation-delay:.09s}.use-card:nth-child(3){animation-delay:.14s}.use-card:nth-child(4){animation-delay:.19s}\r\n@media(hover:hover)and(pointer:fine){.use-card:hover{border-color:rgba(46,158,68,0.35);box-shadow:0 14px 36px rgba(0,0,0,.4)}}\r\n.use-tag { display:inline-flex;align-items:center;gap:7px;font-size:0.68rem;font-weight:700;letter-spacing:0.07em;text-transform:uppercase;color:#2E9E44;background:rgba(46,158,68,0.1);border:1px solid rgba(46,158,68,0.2);border-radius:4px;padding:4px 10px;margin-bottom:16px; }\r\n.use-card h3 { font-size:1.05rem;font-weight:600;color:#FFFFFF;margin-bottom:10px;line-height:1.3; }\r\n.use-card p { font-size:0.855rem;color:#FFFFFF;line-height:1.7; }\r\n#s-africa { background:#07091A; }\r\n.africa-inner { position:relative;z-index:2;background:linear-gradient(145deg,#0D1140,#090C2E);border:1px solid rgba(46,158,68,0.25);border-radius:20px;padding:clamp(44px,8vw,80px) clamp(28px,8vw,72px);overflow:hidden;animation:fadeUp 0.55s cubic-bezier(0.23,1,0.32,1) both; }\r\n.africa-inner::before{content:'';position:absolute;top:-1px;left:12%;right:12%;height:1px;background:linear-gradient(90deg,transparent,rgba(46,158,68,.6),transparent)}\r\n.africa-inner::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 0%,rgba(46,158,68,.07),transparent 55%);pointer-events:none}\r\n.africa-grid { display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center; }\r\n.africa-points { display:flex;flex-direction:column;gap:12px; }\r\n.africa-point { display:flex;align-items:flex-start;gap:12px; }\r\n.africa-point-dot { width:20px;height:20px;border-radius:50%;background:rgba(46,158,68,0.12);border:1px solid rgba(46,158,68,0.32);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px; }\r\n.africa-point-dot svg { width:9px;height:9px; }\r\n.africa-point span { font-size:0.9rem;color:#FFFFFF;line-height:1.55; }\r\n#s-related { background:#060810; }\r\n.related-header { margin-bottom:40px;position:relative;z-index:2;animation:fadeUp 0.5s cubic-bezier(0.23,1,0.32,1) both; }\r\n.related-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:12px;position:relative;z-index:2; }\r\n.related-card { display:block;text-decoration:none;color:inherit;background:linear-gradient(145deg,#0D1033,#090C22);border:1px solid rgba(255,255,255,0.07);border-radius:12px;padding:24px 22px;transition:border-color 160ms,box-shadow 200ms,transform 200ms cubic-bezier(0.23,1,0.32,1);animation:fadeUp 0.5s cubic-bezier(0.23,1,0.32,1) both; }\r\n.related-card:nth-child(1){animation-delay:.04s}.related-card:nth-child(2){animation-delay:.09s}.related-card:nth-child(3){animation-delay:.14s}\r\n@media(hover:hover)and(pointer:fine){.related-card:hover{border-color:rgba(46,158,68,0.35);box-shadow:0 10px 28px rgba(0,0,0,.4);transform:translateY(-3px)}}\r\n.related-card:active{transform:scale(0.98)!important}\r\n.related-ico { font-size:1.4rem;margin-bottom:12px; }\r\n.related-title { font-size:0.92rem;font-weight:600;color:#FFFFFF;margin-bottom:6px; }\r\n.related-desc { font-size:0.8rem;color:#FFFFFF;line-height:1.6; }\r\n.related-link { display:inline-flex;align-items:center;gap:5px;font-size:0.76rem;font-weight:600;color:#2E9E44;margin-top:12px;transition:gap 150ms; }\r\n@media(hover:hover)and(pointer:fine){.related-card:hover .related-link{gap:9px}}\r\n#s-cta { background:#07091A; }\r\n.cta-box { position:relative;z-index:2;background:linear-gradient(145deg,#0D1140,#090C2E);border:1px solid rgba(46,158,68,0.28);border-radius:20px;padding:clamp(48px,8vw,88px) clamp(28px,8vw,80px);text-align:center;overflow:hidden;animation:fadeUp 0.55s cubic-bezier(0.23,1,0.32,1) both }\r\n.cta-box::before{content:'';position:absolute;top:-1px;left:12%;right:12%;height:1px;background:linear-gradient(90deg,transparent,rgba(46,158,68,.6),transparent)}\r\n.cta-box::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 0%,rgba(46,158,68,.08),transparent 55%);pointer-events:none}\r\n.cta-box h2{font-size:clamp(1.8rem,3.5vw,2.8rem);font-weight:700;letter-spacing:-0.025em;line-height:1.08;color:#FFFFFF;margin-bottom:16px;position:relative;z-index:1}\r\n.cta-box p{font-size:.97rem;color:#FFFFFF;max-width:460px;margin:0 auto 40px;line-height:1.7;position:relative;z-index:1}\r\n.cta-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;position:relative;z-index:1}\r\n@media(max-width:900px){.fgrid{grid-template-columns:1fr 1fr}.how-grid{grid-template-columns:1fr;gap:40px}.africa-grid{grid-template-columns:1fr;gap:36px}.related-grid{grid-template-columns:1fr 1fr}}\r\n@media(max-width:480px){.fgrid{grid-template-columns:1fr 1fr}.use-grid{grid-template-columns:1fr 1fr}.related-grid{grid-template-columns:1fr 1fr}.sec{padding:64px 20px}}\r\n@media(prefers-reduced-motion:reduce){.fcard{animation:fadeUp 0.01ms both !important}*{animation-duration:0.01ms !important}}\r\n<\/style>\r\n<\/head>\r\n<body>\r\n\r\n<section class=\"sec\" id=\"s-hero\">\r\n  <div class=\"bg\"><div class=\"bg-dots\"><\/div><div class=\"bg-glow\" style=\"top:-100px;left:50%;transform:translateX(-50%);width:900px;height:500px;background:radial-gradient(ellipse,rgba(46,158,68,0.1) 0%,transparent 65%)\"><\/div><\/div>\r\n  <div class=\"hero-inner\">\r\n    <div class=\"breadcrumb\">\r\n      <a href=\"https:\/\/mutualafricapay.com\/products\">Products<\/a><span class=\"breadcrumb-sep\">\/<\/span>\r\n      <a href=\"https:\/\/mutualafricapay.com\/products\/payments\">Payments<\/a><span class=\"breadcrumb-sep\">\/<\/span>\r\n      <span class=\"breadcrumb-cur\">Recurring Billing<\/span>\r\n    <\/div>\r\n    <h1>Automate every subscription<br><span>and recurring payment<\/span><\/h1>\r\n    <p>Set up billing cycles once and Mutual Africa Pay handles collection automatically \u2014 every period, every client, every currency. No manual invoicing, no missed billing cycles, no chasing.<\/p>\r\n    <div class=\"hero-actions\">\r\n      <a href=\"https:\/\/mutualafricapay.com\/pricing\" class=\"btn-green\">Get Started <svg width=\"14\" height=\"14\" viewBox=\"0 0 14 14\" fill=\"none\"><path d=\"M2 7h10M7 2l5 5-5 5\" stroke=\"currentColor\" stroke-width=\"1.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg><\/a>\r\n      <a href=\"https:\/\/mutualafricapay.com\/contact\" class=\"btn-ghost\">Contact Sales<\/a>\r\n    <\/div>\r\n    <div class=\"hero-pills\"><span class=\"pill\"><span class=\"pill-dot\"><\/span>Automated Billing<\/span><span class=\"pill\"><span class=\"pill-dot\"><\/span>Custom Cycles<\/span><span class=\"pill\"><span class=\"pill-dot\"><\/span>Multi-Currency<\/span><span class=\"pill\"><span class=\"pill-dot\"><\/span>Auto-Reminders<\/span><span class=\"pill\"><span class=\"pill-dot\"><\/span>Subscription Management<\/span><span class=\"pill\"><span class=\"pill-dot\"><\/span>Failed Payment Handling<\/span><\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<section class=\"sec\" id=\"s-cap\">\r\n  <div class=\"bg\"><div class=\"bg-dots\"><\/div><div class=\"bg-glow\" style=\"top:-60px;right:-80px;width:480px;height:420px;background:radial-gradient(ellipse,rgba(46,158,68,0.08) 0%,transparent 65%)\"><\/div><div class=\"bg-line\" style=\"bottom:0\"><\/div><\/div>\r\n  <div class=\"cap-header\">\r\n    <div class=\"eyebrow\"><span class=\"edot\"><\/span><span class=\"etxt\">Capabilities<\/span><\/div>\r\n    <h2 class=\"h2\">Six capabilities that make recurring revenue effortless<\/h2>\r\n    <p class=\"body\" style=\"margin-top:16px;max-width:580px\">From subscription businesses to retainer clients \u2014 recurring billing automates the entire collection cycle so revenue arrives without administrative effort.<\/p>\r\n  <\/div>\r\n  <div class=\"fgrid\"><div class=\"fcard f1\"><div class=\"fcard-ico\">\ud83d\udd04<\/div><div class=\"fcard-title\">Automated Invoice Generation<\/div><p class=\"fcard-body\">Mutual Africa Pay generates invoices automatically at the start of every billing cycle \u2014 daily, weekly, monthly, or annually. No manual invoice creation required. The correct amount, currency, and client details are applied automatically every time.<\/p><\/div><div class=\"fcard f2\"><div class=\"fcard-ico\">\u2699\ufe0f<\/div><div class=\"fcard-title\">Flexible Billing Cycles<\/div><p class=\"fcard-body\">Set any billing cycle for any client \u2014 weekly, biweekly, monthly, quarterly, or annual. Each subscription can have its own cycle, amount, and currency. Multiple subscriptions per client supported simultaneously.<\/p><\/div><div class=\"fcard f3\"><div class=\"fcard-ico\">\ud83c\udf0d<\/div><div class=\"fcard-title\">Multi-Currency Subscriptions<\/div><p class=\"fcard-body\">Recurring billing works across all supported currencies. A client billed in USD receives USD invoices. A client billed in ZAR receives ZAR invoices. Exchange rates applied automatically \u2014 no manual currency management required.<\/p><\/div><div class=\"fcard f4\"><div class=\"fcard-ico\">\ud83d\udd14<\/div><div class=\"fcard-title\">Automated Payment Reminders<\/div><p class=\"fcard-body\">Reminders sent automatically before and after each billing due date \u2014 via email, WhatsApp, or SMS. Clients are notified without manual intervention, reducing late payments across subscription portfolios.<\/p><\/div><div class=\"fcard f5\"><div class=\"fcard-ico\">\u274c<\/div><div class=\"fcard-title\">Failed Payment Handling<\/div><p class=\"fcard-body\">When a payment fails, Mutual Africa Pay flags it immediately and triggers a retry or notification workflow. Failed payments are tracked, outstanding balances are updated, and follow-up reminders are sent \u2014 so no revenue slips through without action.<\/p><\/div><div class=\"fcard f6\"><div class=\"fcard-ico\">\ud83d\udcca<\/div><div class=\"fcard-title\">Subscription Revenue Reporting<\/div><p class=\"fcard-body\">Track total recurring revenue by client, cycle, or currency across your subscription portfolio. Understand Monthly Recurring Revenue, churn, and renewal patterns \u2014 giving you the financial visibility to manage a subscription-based business with confidence.<\/p><\/div><\/div>\r\n<\/section>\r\n\r\n<section class=\"sec\" id=\"s-how\">\r\n  <div class=\"bg\"><div class=\"bg-dots\"><\/div><div class=\"bg-glow\" style=\"bottom:-60px;left:-80px;width:460px;height:380px;background:radial-gradient(ellipse,rgba(46,158,68,0.07) 0%,transparent 65%)\"><\/div><div class=\"bg-line\" style=\"bottom:0\"><\/div><\/div>\r\n  <div class=\"how-grid\">\r\n    <div>\r\n      <div class=\"eyebrow\"><span class=\"edot\"><\/span><span class=\"etxt\">How It Works<\/span><\/div>\r\n      <h2 class=\"h2\" style=\"margin-bottom:20px\">Set up once. Collect every period.<\/h2>\r\n      <p class=\"body\">Recurring billing in Mutual Africa Pay eliminates the manual work of subscription collection entirely. Once configured, the system handles invoice generation, delivery, payment collection, and reconciliation \u2014 automatically, every cycle.<\/p>\r\n    <\/div>\r\n    <div class=\"steps\"><div class=\"step\"><div class=\"step-num\">01<\/div><div><h3>Configure the subscription<\/h3><p>Set the client, billing cycle, amount, and currency. Add any line items or notes. Configure the start date and any end date if applicable. Takes under two minutes to set up.<\/p><\/div><\/div><div class=\"step\"><div class=\"step-num\">02<\/div><div><h3>Invoices generate automatically<\/h3><p>At the start of each billing period, Mutual Africa Pay generates and sends the invoice automatically. The client receives it via email, WhatsApp, or SMS \u2014 with a payment link included.<\/p><\/div><\/div><div class=\"step\"><div class=\"step-num\">03<\/div><div><h3>Payment collected and recorded<\/h3><p>When the client pays, the payment is recorded against the invoice automatically \u2014 updating the P&L, clearing the receivable, and confirming the subscription is current for that period.<\/p><\/div><\/div><div class=\"step\"><div class=\"step-num\">04<\/div><div><h3>Review and manage your portfolio<\/h3><p>Monitor all active subscriptions, renewal dates, and outstanding balances from one dashboard. Identify at-risk subscriptions, manage upgrades, and export subscription revenue reports at any time.<\/p><\/div><\/div><\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<section class=\"sec\" id=\"s-use\">\r\n  <div class=\"bg\"><div class=\"bg-dots\"><\/div><div class=\"bg-glow\" style=\"top:-60px;right:-80px;width:460px;height:380px;background:radial-gradient(ellipse,rgba(46,158,68,0.07) 0%,transparent 65%)\"><\/div><div class=\"bg-line\" style=\"bottom:0\"><\/div><\/div>\r\n  <div class=\"use-header\">\r\n    <div class=\"eyebrow\"><span class=\"edot\"><\/span><span class=\"etxt\">Use Cases<\/span><\/div>\r\n    <h2 class=\"h2\">How African businesses use recurring billing<\/h2>\r\n    <p class=\"body\" style=\"margin-top:14px;max-width:560px\">From SaaS businesses to professional retainers \u2014 recurring billing removes the administrative burden of regular collection.<\/p>\r\n  <\/div>\r\n  <div class=\"use-grid\"><div class=\"use-card\"><div class=\"use-tag\">SaaS & Software<\/div><h3>A Cape Town software company automates monthly subscriber billing<\/h3><p>A software business with 200 monthly subscribers previously spent two days each month manually generating and sending invoices. After switching to recurring billing in Mutual Africa Pay, invoices generate and send automatically on the first of every month. The finance team now spends those two days on value-adding work instead of billing administration.<\/p><\/div><div class=\"use-card\"><div class=\"use-tag\">Professional Services<\/div><h3>A Nairobi consulting firm manages 15 monthly retainer clients<\/h3><p>A management consulting firm with 15 retainer clients bills each client a fixed monthly fee. Recurring billing generates all 15 invoices on the agreed date each month, sends payment links via WhatsApp, and records each payment automatically. Retainer revenue arrives consistently without any monthly billing effort from the firm.<\/p><\/div><div class=\"use-card\"><div class=\"use-tag\">Media & Content<\/div><h3>A Lagos digital agency bills content clients weekly<\/h3><p>A digital content agency charges clients weekly for ongoing content production. Recurring billing generates weekly invoices automatically, ensuring no billing cycle is missed regardless of how busy the team is with client delivery. Revenue is predictable and collection is consistent.<\/p><\/div><div class=\"use-card\"><div class=\"use-tag\">Fitness & Wellness<\/div><h3>A Johannesburg gym manages monthly membership billing<\/h3><p>A gym with 300 members uses recurring billing to collect monthly membership fees automatically. Members receive their invoice and payment link via WhatsApp each month. Payment failures are flagged immediately, allowing the team to follow up before access is suspended \u2014 reducing revenue leakage from failed payments significantly.<\/p><\/div><\/div>\r\n<\/section>\r\n\r\n<section class=\"sec\" id=\"s-africa\">\r\n  <div class=\"bg\"><div class=\"bg-dots\"><\/div><div class=\"bg-glow\" style=\"top:50%;left:50%;transform:translate(-50%,-50%);width:700px;height:420px;background:radial-gradient(ellipse,rgba(46,158,68,0.06) 0%,transparent 65%)\"><\/div><\/div>\r\n  <div class=\"africa-inner\">\r\n    <div class=\"africa-grid\">\r\n      <div style=\"position:relative;z-index:1\">\r\n        <div class=\"eyebrow\"><span class=\"edot\"><\/span><span class=\"etxt\">Built for Africa<\/span><\/div>\r\n        <h2 class=\"h2\" style=\"margin-bottom:20px\">Recurring billing built for African subscription businesses<\/h2>\r\n        <p class=\"body\">Subscription and recurring revenue models are growing rapidly across African markets \u2014 from SaaS and professional services to fitness, media, and education. Mutual Africa Pay's recurring billing is designed to support this growth with infrastructure built for African payment channels, currencies, and business models.<\/p>\r\n      <\/div>\r\n      <div class=\"africa-points\" style=\"position:relative;z-index:1\"><div class=\"africa-point\"><div class=\"africa-point-dot\"><svg viewBox=\"0 0 9 9\" fill=\"none\"><path d=\"M1.5 4.5l2 2L7.5 2\" stroke=\"#2E9E44\" stroke-width=\"1.4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg><\/div><span>WhatsApp and SMS invoice delivery \u2014 recurring invoices reach clients in the channels they use across Africa<\/span><\/div><div class=\"africa-point\"><div class=\"africa-point-dot\"><svg viewBox=\"0 0 9 9\" fill=\"none\"><path d=\"M1.5 4.5l2 2L7.5 2\" stroke=\"#2E9E44\" stroke-width=\"1.4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg><\/div><span>Multi-currency subscription management \u2014 bill clients across Africa in their local currency automatically<\/span><\/div><div class=\"africa-point\"><div class=\"africa-point-dot\"><svg viewBox=\"0 0 9 9\" fill=\"none\"><path d=\"M1.5 4.5l2 2L7.5 2\" stroke=\"#2E9E44\" stroke-width=\"1.4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg><\/div><span>Works across African payment rails \u2014 mobile money, card, and bank transfer payment options for subscribers<\/span><\/div><div class=\"africa-point\"><div class=\"africa-point-dot\"><svg viewBox=\"0 0 9 9\" fill=\"none\"><path d=\"M1.5 4.5l2 2L7.5 2\" stroke=\"#2E9E44\" stroke-width=\"1.4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg><\/div><span>Handles informal billing arrangements \u2014 flexible cycle configuration supports the diverse retainer and subscription structures common in African markets<\/span><\/div><div class=\"africa-point\"><div class=\"africa-point-dot\"><svg viewBox=\"0 0 9 9\" fill=\"none\"><path d=\"M1.5 4.5l2 2L7.5 2\" stroke=\"#2E9E44\" stroke-width=\"1.4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg><\/div><span>Mobile management \u2014 manage your entire subscription portfolio from anywhere via the Mutual Africa Pay mobile app<\/span><\/div><div class=\"africa-point\"><div class=\"africa-point-dot\"><svg viewBox=\"0 0 9 9\" fill=\"none\"><path d=\"M1.5 4.5l2 2L7.5 2\" stroke=\"#2E9E44\" stroke-width=\"1.4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg><\/div><span>Failed payment recovery \u2014 critical in markets where payment failures are more frequent due to connectivity and banking infrastructure constraints<\/span><\/div><\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<section class=\"sec\" id=\"s-related\">\r\n  <div class=\"bg\"><div class=\"bg-dots\"><\/div><div class=\"bg-line\" style=\"bottom:0\"><\/div><\/div>\r\n  <div class=\"related-header\">\r\n    <div class=\"eyebrow\"><span class=\"edot\"><\/span><span class=\"etxt\">Related Features<\/span><\/div>\r\n    <h2 class=\"h2\">Features that work alongside recurring billing<\/h2>\r\n  <\/div>\r\n  <div class=\"related-grid\"><a href=\"https:\/\/mutualafricapay.com\/products\/payments\/links\" class=\"related-card\"><div class=\"related-ico\">\ud83d\udd17<\/div><div class=\"related-title\">Payment Links<\/div><p class=\"related-desc\">Every recurring invoice includes a payment link \u2014 clients pay immediately via WhatsApp or SMS without any friction.<\/p><div class=\"related-link\">Learn more <svg width=\"11\" height=\"11\" viewBox=\"0 0 11 11\" fill=\"none\"><path d=\"M2 5.5h7M5.5 2l3.5 3.5L5.5 9\" stroke=\"currentColor\" stroke-width=\"1.4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg><\/div><\/a><a href=\"https:\/\/mutualafricapay.com\/products\/accounting\/invoicing\" class=\"related-card\"><div class=\"related-ico\">\ud83e\uddfe<\/div><div class=\"related-title\">Invoicing & Billing<\/div><p class=\"related-desc\">Recurring billing is built on the same invoicing infrastructure \u2014 all recurring invoices appear in your invoice history and aged receivables automatically.<\/p><div class=\"related-link\">Learn more <svg width=\"11\" height=\"11\" viewBox=\"0 0 11 11\" fill=\"none\"><path d=\"M2 5.5h7M5.5 2l3.5 3.5L5.5 9\" stroke=\"currentColor\" stroke-width=\"1.4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg><\/div><\/a><a href=\"https:\/\/mutualafricapay.com\/products\/people#cashflow\" class=\"related-card\"><div class=\"related-ico\">\ud83e\udde0<\/div><div class=\"related-title\">Cash Flow Intelligence<\/div><p class=\"related-desc\">Recurring billing data feeds into cash flow forecasting \u2014 giving you visibility into expected subscription revenue for weeks ahead.<\/p><div class=\"related-link\">Learn more <svg width=\"11\" height=\"11\" viewBox=\"0 0 11 11\" fill=\"none\"><path d=\"M2 5.5h7M5.5 2l3.5 3.5L5.5 9\" stroke=\"currentColor\" stroke-width=\"1.4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg><\/div><\/a><\/div>\r\n<\/section>\r\n\r\n<section class=\"sec\" id=\"s-cta\">\r\n  <div class=\"bg\"><div class=\"bg-dots\"><\/div><div class=\"bg-glow\" style=\"top:0;left:50%;transform:translateX(-50%);width:700px;height:300px;background:radial-gradient(ellipse,rgba(46,158,68,0.08) 0%,transparent 65%)\"><\/div><\/div>\r\n  <div class=\"cta-box\">\r\n    <div class=\"eyebrow\" style=\"justify-content:center;margin-bottom:20px\"><span class=\"edot\"><\/span><span class=\"etxt\">Get Started<\/span><\/div>\r\n    <h2>Automate your recurring revenue today<\/h2>\r\n    <p>Recurring billing is included in Mutual Africa Pay's Growth plan and above. Set up your first subscription in minutes.<\/p>\r\n    <div class=\"cta-btns\">\r\n      <a href=\"https:\/\/mutualafricapay.com\/pricing\" class=\"btn-green\">View Pricing <svg width=\"14\" height=\"14\" viewBox=\"0 0 14 14\" fill=\"none\"><path d=\"M2 7h10M7 2l5 5-5 5\" stroke=\"currentColor\" stroke-width=\"1.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg><\/a>\r\n      <a href=\"https:\/\/mutualafricapay.com\/contact\" class=\"btn-ghost\">Contact Sales<\/a>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<\/body>\r\n<\/html>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Recurring Billing \u2014 Mutual Africa Pay *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; } body { font-family: &#8216;Space Grotesk&#8217;, sans-serif; background: #07091A; color: #FFFFFF; -webkit-font-smoothing: antialiased; } .sec { padding: clamp(64px,10vw,112px) clamp(20px,6%,80px); position: relative; overflow: hidden; } .bg { position: absolute; inset: 0; pointer-events: none; overflow: hidden; } .bg-dots { position: absolute; inset: 0; background-image: radial-gradient(rgba(255,255,255,0.04) 1px, transparent 1px); background-size: 30px 30px; } .bg-line { position: absolute; left: 0; right: 0; height: 1px; background: linear-gradient(90deg, transparent, rgba(46,158,68,0.16), transparent); } .bg-glow { position: absolute; border-radius: 50%; } .eyebrow { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 16px; } .edot { width: 6px; height: 6px; border-radius: 50%; background: #2E9E44; box-shadow: 0 0 8px rgba(46,158,68,0.7); animation: pulsedot 2.5s ease infinite; } .etxt { font-size: 0.72rem; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; color: #2E9E44; } .h2 { font-size: clamp(1.9rem,3.2vw,2.9rem); font-weight: 700; letter-spacing: -0.025em; line-height: 1.08; color: #FFFFFF; } .body { font-size: 0.975rem; color: #FFFFFF; line-height: 1.78; } @keyframes fadeUp { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } } @keyframes pulsedot { 0%,100%{opacity:1;box-shadow:0 0 8px rgba(46,158,68,0.7)}50%{opacity:0.4;box-shadow:0 0 3px rgba(46,158,68,0.3)} } @keyframes float1 { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-8px)} } @keyframes float2 { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-12px)} } @keyframes float3 { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-6px)} } @keyframes float4 { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-10px)} } @keyframes float5 { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-9px)} } @keyframes float6 { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-11px)} } .btn-green { display:inline-flex;align-items:center;gap:8px;background:#2E9E44;color:#FFFFFF;padding:13px 28px;border-radius:7px;font-size:.92rem;font-weight:600;text-decoration:none;transition:background 150ms,transform 150ms,box-shadow 150ms; } @media(hover:hover)and(pointer:fine){.btn-green:hover{background:#38B850;transform:translateY(-2px);box-shadow:0 8px 24px rgba(46,158,68,.35);}} .btn-green:active{transform:scale(0.97)!important;} .btn-ghost { display:inline-flex;align-items:center;gap:8px;background:transparent;color:#FFFFFF;padding:13px 28px;border-radius:7px;font-size:.92rem;font-weight:500;text-decoration:none;border:1px solid rgba(255,255,255,0.15);transition:border-color 150ms,background 150ms; } @media(hover:hover)and(pointer:fine){.btn-ghost:hover{border-color:rgba(255,255,255,.35);background:rgba(255,255,255,.05);}} #s-hero { background:#07091A; min-height:60vh; display:flex; align-items:center; } .hero-inner { position:relative;z-index:2;max-width:820px;animation:fadeUp 0.55s cubic-bezier(0.23,1,0.32,1) both; } .breadcrumb { display:flex;align-items:center;gap:8px;margin-bottom:24px;flex-wrap:wrap; } .breadcrumb a { font-size:0.78rem;color:#FFFFFF;opacity:0.45;text-decoration:none;transition:opacity 150ms; } @media(hover:hover)and(pointer:fine){.breadcrumb a:hover{opacity:1}} .breadcrumb-sep { font-size:0.78rem;color:#FFFFFF;opacity:0.25; } .breadcrumb-cur { font-size:0.78rem;color:#2E9E44;font-weight:500; } .hero-inner h1 { font-size:clamp(2.8rem,5.5vw,5rem);font-weight:700;letter-spacing:-0.03em;line-height:1.04;color:#FFFFFF;margin-bottom:22px; } .hero-inner h1 span { color:#2E9E44; } .hero-inner p { font-size:1.05rem;color:#FFFFFF;line-height:1.74;max-width:640px;margin-bottom:40px; } .hero-actions { display:flex;gap:12px;flex-wrap:wrap;margin-bottom:52px; } .hero-pills { display:flex;flex-wrap:wrap;gap:8px; } .pill { display:inline-flex;align-items:center;gap:7px;padding:6px 14px;border-radius:100px;border:1px solid rgba(255,255,255,0.1);background:rgba(255,255,255,0.04);font-size:0.78rem;font-weight:500;color:#FFFFFF; } .pill-dot { width:5px;height:5px;border-radius:50%;background:#2E9E44;flex-shrink:0; } #s-cap { background:#060810; } .cap-header { margin-bottom:52px;position:relative;z-index:2;animation:fadeUp 0.5s cubic-bezier(0.23,1,0.32,1) both; } .fgrid { display:grid;grid-template-columns:repeat(3,1fr);gap:14px;position:relative;z-index:2;perspective:1200px; } .fcard { background:linear-gradient(160deg,#0D1033,#090C22);border:1px solid rgba(255,255,255,0.07);border-radius:16px;padding:28px 24px 36px;position:relative;overflow:hidden;display:block;color:inherit;text-decoration:none;transition:border-color 160ms cubic-bezier(0.23,1,0.32,1),box-shadow 240ms cubic-bezier(0.23,1,0.32,1); } .fcard.f1{animation:fadeUp 0.5s 0.03s cubic-bezier(0.23,1,0.32,1) both,float1 6s 0.5s ease-in-out infinite} .fcard.f2{animation:fadeUp 0.5s 0.07s cubic-bezier(0.23,1,0.32,1) both,float2 7s 0.8s ease-in-out infinite} .fcard.f3{animation:fadeUp 0.5s 0.11s cubic-bezier(0.23,1,0.32,1) both,float3 5.5s 0.3s ease-in-out infinite} .fcard.f4{animation:fadeUp 0.5s 0.15s cubic-bezier(0.23,1,0.32,1) both,float4 8s 1s ease-in-out infinite} .fcard.f5{animation:fadeUp 0.5s 0.19s cubic-bezier(0.23,1,0.32,1) both,float5 6.5s 0.6s ease-in-out infinite} .fcard.f6{animation:fadeUp 0.5s 0.23s cubic-bezier(0.23,1,0.32,1) both,float6 7.5s 1.2s ease-in-out infinite} .fcard::before{content:&#8221;;position:absolute;top:0;left:15%;right:15%;height:1px;background:linear-gradient(90deg,transparent,rgba(46,158,68,.45),transparent);opacity:0;transition:opacity 200ms} .fcard::after{content:&#8221;;position:absolute;inset:0;background:radial-gradient(ellipse at 50% 0%,rgba(46,158,68,.08),transparent 60%);opacity:0;transition:opacity 250ms;pointer-events:none} @media(hover:hover)and(pointer:fine){.fcard:hover{border-color:rgba(46,158,68,0.42);box-shadow:0 20px 52px rgba(0,0,0,.5),0 0 30px rgba(46,158,68,.07)}.fcard:hover::before,.fcard:hover::after{opacity:1}} .fcard:active{transform:scale(0.98)!important} .fcard-ico{font-size:1.6rem;margin-bottom:16px;line-height:1;position:relative;z-index:1} .fcard-title{font-size:1rem;font-weight:600;color:#FFFFFF;margin-bottom:10px;line-height:1.3;position:relative;z-index:1} .fcard-body{font-size:0.835rem;color:#FFFFFF;line-height:1.68;position:relative;z-index:1} #s-how { background:#07091A; } .how-grid { display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start;position:relative;z-index:2;animation:fadeUp 0.55s cubic-bezier(0.23,1,0.32,1) both; } .steps { display:flex;flex-direction:column;gap:3px; } .step { display:flex;align-items:flex-start;gap:20px;padding:22px 24px;background:linear-gradient(145deg,#0D1033,#090C22);border:1px solid rgba(255,255,255,0.07);border-radius:12px;transition:border-color 160ms,background 160ms; } @media(hover:hover)and(pointer:fine){.step:hover{border-color:rgba(46,158,68,0.35);background:linear-gradient(145deg,#111440,#0d1035)}} .step-num { width:36px;height:36px;border-radius:50%;flex-shrink:0;background:rgba(46,158,68,0.1);border:1px solid rgba(46,158,68,0.28);display:flex;align-items:center;justify-content:center;font-size:0.78rem;font-weight:700;color:#2E9E44; } .step h3 { font-size:0.95rem;font-weight:600;color:#FFFFFF;margin-bottom:5px; } .step p { font-size:0.845rem;color:#FFFFFF;line-height:1.62; } #s-use { background:#060810; } .use-header { margin-bottom:48px;position:relative;z-index:2;animation:fadeUp 0.5s cubic-bezier(0.23,1,0.32,1) both; } .use-grid { display:grid;grid-template-columns:repeat(2,1fr);gap:14px;position:relative;z-index:2; } .use-card { background:linear-gradient(145deg,#0D1033,#090C22);border:1px solid rgba(255,255,255,0.07);border-radius:14px;padding:32px 28px;animation:fadeUp 0.5s cubic-bezier(0.23,1,0.32,1) both;transition:border-color 160ms,box-shadow 220ms; } .use-card:nth-child(1){animation-delay:.04s}.use-card:nth-child(2){animation-delay:.09s}.use-card:nth-child(3){animation-delay:.14s}.use-card:nth-child(4){animation-delay:.19s} @media(hover:hover)and(pointer:fine){.use-card:hover{border-color:rgba(46,158,68,0.35);box-shadow:0 14px 36px rgba(0,0,0,.4)}} .use-tag { display:inline-flex;align-items:center;gap:7px;font-size:0.68rem;font-weight:700;letter-spacing:0.07em;text-transform:uppercase;color:#2E9E44;background:rgba(46,158,68,0.1);border:1px solid rgba(46,158,68,0.2);border-radius:4px;padding:4px 10px;margin-bottom:16px; } .use-card h3 { font-size:1.05rem;font-weight:600;color:#FFFFFF;margin-bottom:10px;line-height:1.3; } .use-card p { font-size:0.855rem;color:#FFFFFF;line-height:1.7; } #s-africa { background:#07091A; } .africa-inner { position:relative;z-index:2;background:linear-gradient(145deg,#0D1140,#090C2E);border:1px solid rgba(46,158,68,0.25);border-radius:20px;padding:clamp(44px,8vw,80px) clamp(28px,8vw,72px);overflow:hidden;animation:fadeUp 0.55s cubic-bezier(0.23,1,0.32,1) both; } .africa-inner::before{content:&#8221;;position:absolute;top:-1px;left:12%;right:12%;height:1px;background:linear-gradient(90deg,transparent,rgba(46,158,68,.6),transparent)} .africa-inner::after{content:&#8221;;position:absolute;inset:0;background:radial-gradient(ellipse at 50% 0%,rgba(46,158,68,.07),transparent 55%);pointer-events:none} .africa-grid { display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center; } .africa-points { display:flex;flex-direction:column;gap:12px; } .africa-point { display:flex;align-items:flex-start;gap:12px; } .africa-point-dot { width:20px;height:20px;border-radius:50%;background:rgba(46,158,68,0.12);border:1px solid rgba(46,158,68,0.32);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px; } .africa-point-dot svg { width:9px;height:9px; } .africa-point span { font-size:0.9rem;color:#FFFFFF;line-height:1.55; } #s-related { background:#060810; } .related-header { margin-bottom:40px;position:relative;z-index:2;animation:fadeUp 0.5s cubic-bezier(0.23,1,0.32,1) both; } .related-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:12px;position:relative;z-index:2; } .related-card { display:block;text-decoration:none;color:inherit;background:linear-gradient(145deg,#0D1033,#090C22);border:1px solid rgba(255,255,255,0.07);border-radius:12px;padding:24px 22px;transition:border-color 160ms,box-shadow 200ms,transform 200ms cubic-bezier(0.23,1,0.32,1);animation:fadeUp 0.5s cubic-bezier(0.23,1,0.32,1) both; } .related-card:nth-child(1){animation-delay:.04s}.related-card:nth-child(2){animation-delay:.09s}.related-card:nth-child(3){animation-delay:.14s} @media(hover:hover)and(pointer:fine){.related-card:hover{border-color:rgba(46,158,68,0.35);box-shadow:0 10px 28px rgba(0,0,0,.4);transform:translateY(-3px)}} .related-card:active{transform:scale(0.98)!important} .related-ico { font-size:1.4rem;margin-bottom:12px; } .related-title { font-size:0.92rem;font-weight:600;color:#FFFFFF;margin-bottom:6px; } .related-desc { font-size:0.8rem;color:#FFFFFF;line-height:1.6; } .related-link { display:inline-flex;align-items:center;gap:5px;font-size:0.76rem;font-weight:600;color:#2E9E44;margin-top:12px;transition:gap 150ms; } @media(hover:hover)and(pointer:fine){.related-card:hover .related-link{gap:9px}} #s-cta { background:#07091A; } .cta-box { position:relative;z-index:2;background:linear-gradient(145deg,#0D1140,#090C2E);border:1px solid rgba(46,158,68,0.28);border-radius:20px;padding:clamp(48px,8vw,88px) clamp(28px,8vw,80px);text-align:center;overflow:hidden;animation:fadeUp 0.55s cubic-bezier(0.23,1,0.32,1) both } .cta-box::before{content:&#8221;;position:absolute;top:-1px;left:12%;right:12%;height:1px;background:linear-gradient(90deg,transparent,rgba(46,158,68,.6),transparent)} .cta-box::after{content:&#8221;;position:absolute;inset:0;background:radial-gradient(ellipse at 50% 0%,rgba(46,158,68,.08),transparent 55%);pointer-events:none} .cta-box h2{font-size:clamp(1.8rem,3.5vw,2.8rem);font-weight:700;letter-spacing:-0.025em;line-height:1.08;color:#FFFFFF;margin-bottom:16px;position:relative;z-index:1} .cta-box p{font-size:.97rem;color:#FFFFFF;max-width:460px;margin:0 auto 40px;line-height:1.7;position:relative;z-index:1} .cta-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;position:relative;z-index:1} @media(max-width:900px){.fgrid{grid-template-columns:1fr 1fr}.how-grid{grid-template-columns:1fr;gap:40px}.africa-grid{grid-template-columns:1fr;gap:36px}.related-grid{grid-template-columns:1fr 1fr}} @media(max-width:480px){.fgrid{grid-template-columns:1fr 1fr}.use-grid{grid-template-columns:1fr 1fr}.related-grid{grid-template-columns:1fr 1fr}.sec{padding:64px 20px}} @media(prefers-reduced-motion:reduce){.fcard{animation:fadeUp 0.01ms both !important}*{animation-duration:0.01ms !important}} Products\/ Payments\/ Recurring Billing Automate every subscriptionand recurring payment Set up billing cycles once and Mutual Africa Pay handles collection automatically \u2014 every period, every client, every currency. No manual invoicing, no missed billing cycles, no chasing. Get Started Contact Sales Automated BillingCustom CyclesMulti-CurrencyAuto-RemindersSubscription ManagementFailed Payment Handling Capabilities Six capabilities that make recurring revenue effortless From subscription businesses to retainer clients \u2014 recurring billing automates the entire collection cycle so revenue arrives without administrative effort. \ud83d\udd04Automated Invoice Generation Mutual Africa Pay generates invoices automatically at the start of every billing cycle \u2014 daily, weekly, monthly, or annually. No manual invoice creation required. The correct amount, currency, and client details are applied automatically every time. \u2699\ufe0fFlexible Billing Cycles Set any billing cycle for any client \u2014 weekly, biweekly, monthly, quarterly, or annual. Each subscription can have its own cycle, amount, and currency. Multiple subscriptions per client supported simultaneously. \ud83c\udf0dMulti-Currency Subscriptions Recurring billing works across all supported currencies. A client billed in USD receives USD invoices. A client billed in ZAR receives ZAR invoices. Exchange rates applied automatically \u2014 no manual currency management required. \ud83d\udd14Automated Payment Reminders Reminders sent automatically before and after each billing due date \u2014 via email, WhatsApp, or SMS. Clients are notified without manual intervention, reducing late payments across subscription portfolios. \u274cFailed Payment Handling When a payment fails, Mutual Africa Pay flags it immediately and triggers a retry or notification workflow. Failed payments are tracked, outstanding balances are updated, and follow-up reminders are sent \u2014 so no revenue slips through without action. \ud83d\udccaSubscription Revenue Reporting Track total recurring revenue by client, cycle, or currency across your subscription portfolio. Understand Monthly Recurring Revenue, churn, and renewal patterns \u2014 giving you the financial visibility to manage a subscription-based business with confidence. How It Works Set up once. Collect every period. Recurring billing in Mutual Africa Pay eliminates the manual work of subscription collection entirely. Once configured, the system handles invoice generation, delivery, payment collection, and reconciliation \u2014 automatically, every cycle. 01 Configure the subscription Set the client, billing cycle, amount, and currency. Add any line items or notes. Configure the start date<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":1854,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_canvas","meta":{"footnotes":""},"class_list":["post-1975","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/mutualafricapay.com\/za\/wp-json\/wp\/v2\/pages\/1975","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mutualafricapay.com\/za\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/mutualafricapay.com\/za\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/mutualafricapay.com\/za\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mutualafricapay.com\/za\/wp-json\/wp\/v2\/comments?post=1975"}],"version-history":[{"count":0,"href":"https:\/\/mutualafricapay.com\/za\/wp-json\/wp\/v2\/pages\/1975\/revisions"}],"up":[{"embeddable":true,"href":"https:\/\/mutualafricapay.com\/za\/wp-json\/wp\/v2\/pages\/1854"}],"wp:attachment":[{"href":"https:\/\/mutualafricapay.com\/za\/wp-json\/wp\/v2\/media?parent=1975"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}