# Welcome to Redux

Redux is the first recovery platform built for B2C.

Recover failed payments, cut involuntary churn and boost ARR on autopilot.&#x20;

The Redux Payments Developer Hub provides all the documentation and guides you need to seamlessly integrate our AI-powered failed payment recovery engine and maximize your annual recurring revenue (ARR).&#x20;

Redux operates alongside your existing payment infrastructure (e.g., Stripe) to automatically resolve payment declines and prevent unnecessary churn.

### Jump right in

<table data-view="cards"><thead><tr><th></th><th></th><th></th><th data-hidden data-card-cover data-type="files"></th><th data-hidden></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><h4><i class="fa-bolt">:bolt:</i></h4></td><td><strong>Quickstart Guide</strong></td><td></td><td></td><td></td><td><a href="/pages/7FvWQMF0kTK7HGhlQfmo">/pages/7FvWQMF0kTK7HGhlQfmo</a></td></tr></tbody></table>


# Quickstart Guide

Here's how you can get started with Redux in less than 30 minutes:

***

### Silent Recovery

> Redux recovers the majority of failed subscriptions silently, behind the scenes. By identifying optimal windows for bank approval based on millions of B2C transactions, our AI retries and recovers revenue without interrupting the customer experience. Most declines are resolved before you ever need to send an email.

### 1) Configure AI Retries:

1\) In Stripe, navigate to [Revenue Recovery > Retries](https://dashboard.stripe.com/revenue-recovery/retries)

2\) Select “Use a custom retry policy for subscriptions”. X out of the default attempts. Have it look exactly like below:

<figure><img src="/files/LKHjbzppzIQeGbx42t6d" alt=""><figcaption></figcaption></figure>

3\) It should look like this when you’re done:

<figure><img src="/files/Dy2BhL6ecgo0FQDvYWdr" alt=""><figcaption></figcaption></figure>

4\) Scroll down and set Subscription Status to “leave the subscription past-due”:

<div align="center" data-full-width="false" data-with-frame="true"><figure><img src="/files/rF2HUimdr0O2icwxB6KH" alt=""><figcaption></figcaption></figure></div>

5\) Navigate to the [Emails](https://dashboard.stripe.com/revenue-recovery/emails) tab and turn off Stripe's emails

<div align="left" data-full-width="false" data-with-frame="true"><figure><img src="/files/xZBkKkJjgB3SnipPF7oK" alt=""><figcaption></figcaption></figure></div>

5\) Lastly, send a screenshot of your configuration settings to our team to confirm and set your account live

That's it. Redux will now start layering in additional retries that optimize to your business and your customers to increase recovery.&#x20;

***

### Active Recovery

> When a transaction is unrecoverable via retries, such as a hard decline or an expired card, Redux triggers Active Recovery. This stage engages the customer directly with smart email sending, magic links and no-login update forms to prompt a payment method update with no friction.

### 2) Configure Email Smart Sending:

When you enable Smart Sending, Redux will help you find the optimal recovery email sending time to increase open and click rates. Redux learns your customer's behaviors to send emails in their local time. &#x20;

**1) Confirm your email address' domain**

The following instructions are set up so that we can send from a `yourdomain.com` email address on your behalf.

**2) Add the DKIM and Return-Path records from your account to your DNS provider**

You can find these inside your [dashboard.reduxpayments.com](https://dashboard.reduxpayments.com) account. You'll also receive step-by-step instructions from Postmark, our email provider, with all the details you need.&#x20;

<table><thead><tr><th width="127.6881103515625">Type</th><th>Host</th><th>Value</th><th>TTL</th></tr></thead><tbody><tr><td>TXT</td><td>Unique value found in your Redux dashboard</td><td>Unique value found in your Redux dashboard</td><td>Default (or 1 hour)</td></tr><tr><td>CNAME</td><td>redux-pm</td><td>pm.mtasv.net</td><td>Default (or 1 hour)</td></tr></tbody></table>

Our team will verify DKIM and Return-Path on our side and confirm they’re active.<br>

{% hint style="warning" %}
Need help? Our email provider, Postmark, has a [setup guide](https://postmarkapp.com/support/article/resources-for-adding-dkim-and-return-path-records-to-dns-for-common-hosts-and-dns-providers) for the most common DNS providers
{% endhint %}

***

### 3) Configure Instant Update Forms:

The last step is to add the recovery form snippet to your website. Customers who click on your recovery emails will be sent to this form so they can update their payment information without having to login. This increases recovery rates on your failed payments.&#x20;

<div data-with-frame="true"><figure><img src="/files/YBwKIk2sjozmcW8PJ1cQ" alt=""><figcaption></figcaption></figure></div>

**1) Add this script to the \<head> tag on your website's homepage**

```
<script defer src="https://public.reduxpayments.com/redux-payments.min.js"></script>
```

**2) Deploy and verify**&#x20;

Let us know when this is ready and our team will verify to make sure the snippet is correctly installed.

{% hint style="success" %}
That's all you need to do to setup Redux! Most teams are fully live within 30 minutes.&#x20;
{% endhint %}


# What Happens After You Install Redux

After you install Redux through the Stripe App Store, a few things happen immediately behind the scenes.

### 1) We ingest your billing data

Redux pulls in your historical and current failed payment data. This gives us a full view of how your payments behave across decline codes, card types, issuers, and timing.

### **2) We establish your baseline recovery rate**

We calculate how much Stripe’s native logic is currently recovering for you. This baseline becomes the reference point for all future performance so you always know the incremental lift Redux creates.

### **3) We run a full recovery audit**

Our system analyzes your failure patterns, identifies the biggest sources of lost revenue, and maps out the highest leverage recovery opportunities.

### **4) We send you a detailed audit report**

You receive a clear summary of your baseline, what’s driving your failed payments, and what Redux will do to increase recovery. It also outlines expected lift based on your data.

### **5) You review and approve the plan**

Nothing starts automatically. You review the audit, confirm you want to move forward, and sign off. This ensures you are fully aligned before Redux begins active recovery.

### **6) Redux begins intelligent recovery**

As failed payments occur, Redux classifies the decline, times retries based on customer and issuer behavior, and begins recovering failed payments.

### **7) You track performance in your dashboard**

You’ll see recovered revenue, active recovery campaigns, baseline vs. Redux lift, and LTV boost all in one place.


# How Long Data Ingestion Takes

Depending on how many failed payments you have, this process can take anywhere from a few minutes to a few hours. We'll email you once your data is ready.&#x20;

<figure><img src="/files/JHWUBvuELEwT8gNki6HQ" alt=""><figcaption></figcaption></figure>


# How To Read Your Payment Health Audit


# Connecting Stripe

We partnered with Stripe to offer Redux directly in the [Stripe App Store](https://marketplace.stripe.com/apps/alpha-redux). This lets you install Redux safely and start recovery without any custom development or engineering work. The Stripe connection gives Redux the secure access it needs to read your billing data, identify failed payments, and run smarter retries behind the scenes.


# Understanding Your Dashboard Metrics


# What Permissions Redux Uses And Why

{% hint style="success" %}
To recover failed payments, Redux needs visibility into how billing works inside Stripe and the ability to retry charges. The permissions shown are the minimum required to do that safely and effectively.
{% endhint %}

Redux recovers failed payments inside your Stripe account. To do that, it needs access to the parts of Stripe where payment attempts, declines, customer data, and subscription details live. These permissions allow Redux to detect failures, understand why they happened, and retry them at the right time.

Here’s what each category is doing at a high level:

**Customers and Subscriptions**\
Redux needs to see who is being billed and what they’re subscribed to. This tells Redux which payments belong to which customers and what should be retried.

**Invoices, PaymentIntents, Charges, PaymentMethods**\
This is where Stripe records every payment attempt, every decline, and the reason it failed. Redux reads these so it can run smarter retries. It also needs permission to create a retry attempt when the timing or conditions are better.

**SetupIntents**\
Used when customers add or update cards. Redux needs to monitor this so it knows when a new payment method is available for recovery.

**Events and Webhooks**\
Stripe sends real-time notifications whenever a payment succeeds, fails, or changes. Redux listens to these events so it can react immediately instead of waiting for batch data.

**Everything listed as Read-only**\
These are supporting objects that help Redux understand your billing environment. They are not modified. They just allow Redux to stay in sync with how Stripe is set up.

<div align="left" data-with-frame="true"><figure><img src="/files/RKBW7Zq8S29bHryjodMn" alt=""><figcaption></figcaption></figure></div>


# How To Contact Support

You can contact support through [email](https://www.reduxpayments.com/contact) or through your dedicated slack channel. We generally respond in less than an hour.


# Copy of Quickstart Guide

<figure><img src="https://gitbookio.github.io/onboarding-template-images/quickstart-hero.png" alt=""><figcaption></figcaption></figure>

Beautiful documentation starts with the content you create — and GitBook makes it easy to get started with any pre-existing content.

{% hint style="info" %}
Want to learn about writing content from scratch? Head to the [Basics](/basics/editor) section to learn more.
{% endhint %}

### Import

GitBook supports importing content from many popular writing tools and formats. If your content already exists, you can upload a file or group of files to be imported.

<div data-full-width="false"><figure><img src="https://gitbookio.github.io/onboarding-template-images/quickstart-import.png" alt=""><figcaption></figcaption></figure></div>

### Sync a repository

GitBook also allows you to set up a bi-directional sync with an existing repository on GitHub or GitLab. Setting up Git Sync allows you and your team to write content in GitBook or in code, and never have to worry about your content becoming out of sync.


# Editor

GitBook has a powerful block-based editor that allows you to seamlessly create, update, and enhance your content.

<figure><img src="https://gitbookio.github.io/onboarding-template-images/editor-hero.png" alt=""><figcaption></figcaption></figure>

### Writing content

GitBook offers a range of block types for you to add to your content inline — from simple text and tables, to code blocks and more. These elements will make your pages more useful to readers, and offer extra information and context.

Either start typing below, or press `/` to see a list of the blocks you can insert into your page.

### Add a new block

{% stepper %}
{% step %}

#### Open the insert block menu

Press `/` on your keyboard to open the insert block menu.
{% endstep %}

{% step %}

#### Search for the block you need

Try searching for “Stepper”, for exampe, to insert the stepper block.
{% endstep %}

{% step %}

#### Insert and edit your block

Click or press Enter to insert your block. From here, you’ll be able to edit it as needed.
{% endstep %}
{% endstepper %}


# Markdown

GitBook supports many different types of content, and is backed by Markdown — meaning you can copy and paste any existing Markdown files directly into the editor!

<figure><img src="https://gitbookio.github.io/onboarding-template-images/markdown-hero.png" alt=""><figcaption></figcaption></figure>

Feel free to test it out and copy the Markdown below by hovering over the code block in the upper right, and pasting into a new line underneath.

```markdown
# Heading

This is some paragraph text, with a [link](https://docs.gitbook.com) to our docs. 

## Heading 2
- Point 1
- Point 2
- Point 3
```

{% hint style="info" %}
If you have multiple files, GitBook makes it easy to import full repositories too — allowing you to keep your GitBook content in sync.
{% endhint %}


# Images & media

GitBook allows you to add images and media easily to your docs. Simply drag a file into the editor, or use the file manager in the upper right corner to upload multiple images at once.

<figure><img src="https://gitbookio.github.io/onboarding-template-images/images-hero.png" alt=""><figcaption><p>Add alt text and captions to your images</p></figcaption></figure>

{% hint style="info" %}
You can also add images simply by copying and pasting them directly into the editor — and GitBook will automatically add it to your file manager.
{% endhint %}


# Interactive blocks

In addition to the default Markdown you can write, GitBook has a number of out-of-the-box interactive blocks you can use. You can find interactive blocks by pressing `/` from within the editor.

<figure><img src="https://gitbookio.github.io/onboarding-template-images/interactive-hero.png" alt=""><figcaption></figcaption></figure>

### Tabs

{% tabs %}
{% tab title="First tab" %}
Each tab is like a mini page — it can contain multiple other blocks, of any type. So you can add code blocks, images, integration blocks and more to individual tabs in the same tab block.
{% endtab %}

{% tab title="Second tab" %}
Add images, embedded content, code blocks, and more.

```javascript
const handleFetchEvent = async (request, context) => {
    return new Response({message: "Hello World"});
};
```

{% endtab %}
{% endtabs %}

### Expandable sections

<details>

<summary>Click me to expand</summary>

Expandable blocks are helpful in condensing what could otherwise be a lengthy paragraph. They are also great in step-by-step guides and FAQs.

</details>

### Embedded content

{% embed url="<https://www.youtube.com/watch?v=YILlrDYzAm4>" %}

{% hint style="info" %}
GitBook supports thousands of embedded websites out-of-the-box, simply by pasting their links. Feel free to check out which ones[ are supported natively](https://iframely.com).
{% endhint %}


# Integrations

GitBook integrations allow you to connect your GitBook spaces to some of your favorite platforms and services. You can install integrations into your GitBook page from the *Integrations* menu in the top left.

<figure><img src="https://gitbookio.github.io/onboarding-template-images/integrations-hero.png" alt=""><figcaption></figcaption></figure>

### Types of integrations

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th><th data-hidden data-card-cover data-type="files"></th><th data-hidden></th></tr></thead><tbody><tr><td><strong>Analytics</strong></td><td>Track analytics from your docs</td><td><a href="https://www.gitbook.com/integrations#analytics">https://www.gitbook.com/integrations#analytics</a></td><td></td><td></td></tr><tr><td><strong>Support</strong></td><td>Add support widgets to your docs</td><td><a href="https://www.gitbook.com/integrations#support">https://www.gitbook.com/integrations#support</a></td><td></td><td></td></tr><tr><td><strong>Interactive</strong></td><td>Add extra functionality to your docs</td><td><a href="https://www.gitbook.com/integrations#interactive">https://www.gitbook.com/integrations#interactive</a></td><td></td><td></td></tr><tr><td><strong>Visitor Authentication</strong></td><td>Protect your docs and require sign-in</td><td><a href="https://www.gitbook.com/integrations#visitor-authentication">https://www.gitbook.com/integrations#visitor-authentication</a></td><td></td><td></td></tr></tbody></table>


# How Redux Recovers Failed Payments


# What Is Involuntary Churn


# How The AI Retry Engine Works


# Timing Optimization Explained


# Decline Code Classification Explained


# How Email, SMS, And In App Recovery Work


# Does Redux Contact Customers


# How Redux Protects The User Experience


# What Is Baseline Recovery

It's simply your historical recovery rate. The percentage of failed payments Stripe's been recovering for you before Redux steps in.

### **How do we measure it:**

During your audit, we look at two things:

1. How many payments have failed historically&#x20;
2. How many of those Stripe eventually recovered with its built-in recovery

We take those recovered payments, divide by total failures, and that gives us your baseline percentage. It's your real-world number and reflects what's actually been happening in your account without any extra help.

### **How we're different:**

Redux was the first to offer "billing above baseline." We only charge you for the extra lift we create beyond what you've historically recovered. Simple as that. You only pay when we increase your recovery rate. When you win, we win.


# What is All-time Revenue Recovered?

It's simply your historical recovery rate. The percentage of failed payments Stripe's been recovering for you before Redux steps in.

### **How do we measure it:**

During your audit, we look at two things:

1. How many payments have failed historically&#x20;
2. How many of those Stripe eventually recovered with its built-in recovery

We take those recovered payments, divide by total failures, and that gives us your baseline percentage. It's your real-world number and reflects what's actually been happening in your account without any extra help.

### **How we're different:**

Redux was the first to offer "billing above baseline." We only charge you for the extra lift we create beyond what you've historically recovered. Simple as that. You only pay when we increase your recovery rate. When you win, we win.


# What is All-time LTV Recovered?

It's simply your historical recovery rate. The percentage of failed payments Stripe's been recovering for you before Redux steps in.

### **How do we measure it:**

During your audit, we look at two things:

1. How many payments have failed historically&#x20;
2. How many of those Stripe eventually recovered with its built-in recovery

We take those recovered payments, divide by total failures, and that gives us your baseline percentage. It's your real-world number and reflects what's actually been happening in your account without any extra help.

### **How we're different:**

Redux was the first to offer "billing above baseline." We only charge you for the extra lift we create beyond what you've historically recovered. Simple as that. You only pay when we increase your recovery rate. When you win, we win.


# How Incremental Lift Is Calculated

It's the extra revenue Redux recovers above what you were already getting. This is how we measure our real impact, not just recovery that would've happened anyway.

### **How we calculate it:**

#### **Step 1: Start with your baseline**&#x20;

Your baseline is your historical recovery rate from the audit (recovered failures divided by total failures).

#### **Step 2: Track recoveries with Redux running**&#x20;

As new failed payments come in, we measure how many get recovered through Redux's optimized system.

#### **Step 3: Subtract what would've happened anyway**&#x20;

We apply your historical baseline rate to your new failure volume. This tells us how much Stripe would've recovered on its own.

#### **Step 4: Find the difference**&#x20;

Recovered with Redux minus what your baseline would've produced equals the true lift Redux created.

### **Why this matters:**

This is the only metric that really counts because it shows exactly what we're contributing. No inflated numbers. No double counting. If Redux doesn't beat your historical recovery rate, you don't pay anything. You only win when we deliver real results.


# Why Recovery Varies Month To Month


# Why Results Look Low Early In The Month


# How Volume Spikes Affect Recovery

When you get a big surge in failed payments, recovery rates can look temporarily worse even though everything's working fine. Recovery takes time, so when a large batch of failures hits all at once, Redux needs time to work through them.

### **What's really happening:**

#### **1. Both baseline and Redux recovery take time**&#x20;

A sudden jump in failures immediately increases your total failure count, but recoveries happen over several days or weeks. This temporarily pushes recovery rates down even though nothing's actually wrong.

#### **2. Performance stabilizes as retries run**&#x20;

As Redux processes the spike, classifies each failure, and times the retries properly, recovered payments start catching up. Your performance naturally moves back to normal as the spike gets absorbed.

#### **3. More volume often means more opportunity**&#x20;

Bigger batches usually include more recoverable failures. Once the system works through them, you often see higher lift because there's simply more recoverable revenue to capture.

#### **4. Spikes aren't a performance problem**&#x20;

They're just a timing mismatch between when failures happen (instantly) and when recoveries can logically complete (over several days).

### **The bottom line:**&#x20;

Volume spikes temporarily make recovery rates look worse, then normalize as retries complete. They don't hurt actual performance and often lead to higher total revenue recovered once everything's processed.


# Why Redux Might Not Outperform Stripe In A Given Month


# How Long It Takes To See Lift

Redux gets to work the moment you turn it on. It immediately starts classifying failures and scheduling optimized retries. But here's the thing: those retries don't all happen on day one. Redux runs them when they're most likely to succeed, which could be hours, days, or even a week later depending on the failure type.

### **What to expect:**

#### **1. Immediate start**&#x20;

Redux begins analyzing failures and scheduling retries right away.

#### **2. First results in a few days**&#x20;

As the first wave of scheduled retries runs, you'll start seeing early recoveries coming through.

#### **3. Clear lift within 30 days**&#x20;

Most recoverable failures will respond within the first billing cycle once Redux optimizes the timing.

#### **4. Peak performance at 6 to 8 weeks**&#x20;

Redux keeps learning your specific patterns. It gets better at handling your issuers, understanding your customer behavior, and nailing your subscription timing. The system hits its stride after about 6 to 8 weeks of learning from your real payment data.

#### **The bottom line:**&#x20;

You'll see early results within days, meaningful lift within your first month, and fully optimized performance once Redux has had 6 to 8 weeks to learn your unique payment patterns.


# Common Reasons Payments Fail And How Redux Fixes Them

{% hint style="success" %}
Most failures are recoverable when you handle the timing and strategy correctly. Redux customizes recovery for each failure type, capturing revenue that standard retry systems miss.
{% endhint %}

Behind every failure, there's an issuer making a decision, risk rules being applied, customer behavior patterns at play, and a payments landscape that's constantly changing. Stripe shows you these outcomes through dozens of decline codes, soft and hard categories, bank-specific quirks, and real-time network conditions.

### **How Redux approaches this differently:**

We treat each failure as its own unique problem. Every decline comes with context, signals, and timing patterns that affect whether a retry will succeed. Redux reads all of this information and picks the recovery strategy with the highest chance of working.

### **Common failure types and our solutions:**

#### **1. Insufficient funds**&#x20;

The customer's balance is too low when you try to charge them.&#x20;

*Redux solution:* We time retries around pay cycles and historical success windows.

#### **2. Do Not Honor / Generic Declines**&#x20;

Banks temporarily block or flag the charge for various reasons.&#x20;

*Redux solution:* We space out retries, avoid patterns that look suspicious, and retry when the bank is more likely to approve.

#### **3. Expired or outdated cards**&#x20;

Card details have changed or the card's no longer active.&#x20;

*Redux solution:* We trigger card update events, prompt frictionless updates, and react immediately when customers add new payment methods.

#### **4. Network or issuer errors**&#x20;

Temporary outages or routing problems.&#x20;

*Redux solution:* We retry when network conditions stabilize and skip attempts that probably won't work.

#### **5. Card limits and velocity issues**&#x20;

Customer hits spending limits or frequency rules.&#x20;

*Redux solution:* We retry when limits reset and avoid patterns that trigger bank throttling.

#### **6. Restricted or unsupported transactions**&#x20;

Some banks block certain recurring payments.&#x20;

*Redux solution:* We use bank-specific retry patterns based on what's worked before.

#### **7. Soft declines that can succeed later**&#x20;

These failures are all about timing.&#x20;

*Redux solution:* We align retries with known success windows instead of using a fixed schedule.

#### **8. Hard declines**&#x20;

Permanent failures where the card can't be charged under any conditions.&#x20;

*Redux solution:* We stop retries immediately to avoid bank flags and shift to card update flows so subscribers can add valid payment methods.


# Why do I need Redux if i'm already using Stripe Smart Retries?

This is a question we get a lot, and for good reason. Stripe is a multi-billion dollar company. Haven't they solved failed payments already?&#x20;

The answer is yes and no.&#x20;

Stripe has built a product that works well for its 300,000 customers on Stripe Billing. It's good if you want generic recovery. But bad if you want to get the absolute most out of failed payments.&#x20;

They recognize this which is why they partner with 3rd party solutions like Redux to boost recovery even further.&#x20;

Here are 3 reasons you need Redux even if you're already using Stripe Smart Retries:&#x20;

### **1) Redux is the top performing failed payments recovery engine for B2C subscriptions**&#x20;

We're the only recovery platform on the market focused exclusively on B2C subscriptions. Stripe built their recovery to perform for B2B, B2C, Enterprise, etc... It's a broad good-enough solution.&#x20;

But a B2B buyer with a corporate card needs to be recovered very differently than a B2C consumer. This nuance is completely ignored with basic recovery.&#x20;

We train our AI models exclusively on consumer behavior and banking patterns. Our obsessive focus allows us to recover B2C subscriptions better than anyone else.&#x20;

***

### **2)** Stripe caps you at 8 retries, Redux let's you **go further**

Stripe caps you at 8 retries. But that's not what the best consumer subscription companies on the planet do.&#x20;

Hulu, for example, will retry a payment up to [13 times over a 50 day period](https://www.linkedin.com/posts/philip-pages-a881b5139_if-you-want-to-witness-absolutely-shameless-activity-7383521354836496385-U7c0/).&#x20;

<div align="left" data-with-frame="true"><figure><img src="/files/lgHuNjaoaO94WLKmmMUT" alt=""><figcaption></figcaption></figure></div>

But just spamming 13 retries and calling a day is terrible practice. The key is to retry intelligently when your customer has funds in their account or when banks are more likely to approve transactions. It's a balance you need to get right.&#x20;

The key is to recover a failed payment in as few retry attempts as possible. But you should have the option to retry more over a longer period if that means you can recover that transaction safely.&#x20;

Redux intelligently retries your B2C failed payments when they're most likely to go through and prevents you from being capped by Stripe's 8 attempt limit.&#x20;

***

### **3) Stripe sends too many emails which increases churn**

For every retry attempt, Stripe will send a recovery email. So if you do 8 retry attempts, customers will get blasted with 8 identical generic emails. This trains your customers to ignore future messages and is known to increase voluntary churn. &#x20;

Not great if you're trying to build a better relationship with your customers.&#x20;

<div data-with-frame="true"><figure><img src="/files/VgC3nKwRGZPrktQbdL1n" alt=""><figcaption></figcaption></figure></div>

Our team comes from the consumer world. Having previously built and exited a consumer startup, we know how important every customer touch point.

That's why we handle communication differently.&#x20;

Just like with retries, less is more.&#x20;

Recovery emails use Smart Sending to optimize send times for when your customers are most likely to open and click. They also send from your domain and use your branding.

The goal should be to help build a better relationship with your customers while helping them fix their payment. Not spam them into submission.&#x20;


# How Redux Billing Works


# What Is Performance Based Pricing


# What Is The 30 Day Performance Trial


# When You Get Charged


# What Happens If Recovery Is Below Baseline


# Billing FAQ


# How To Cancel

Short answer? Very easy

Just email us at <philip@reduxpayments.com> to cancel.&#x20;

There are 3 steps to uninstalling Redux.&#x20;

### **1) Uninstalling the Stripe App**

The first step is to uninstall the [Redux Stripe App](https://marketplace.stripe.com/apps/alpha-redux).&#x20;

In your Stripe dashboard, navigate to [Settings > Apps > Alpha Redux](https://dashboard.stripe.com/settings/apps)

<div data-with-frame="true"><figure><img src="/files/HKCu7K1gCRW32K0PqJer" alt=""><figcaption></figcaption></figure></div>

Then click "Uninstall."&#x20;

This cuts off access and prevents Redux from being able to retry payments.&#x20;

***

### **2) Removing the DKIM and Return-Path records from your DNS provider**

Find these 2 records in your DNS provider's settings and remove them:

<table><thead><tr><th width="127.6881103515625">Type</th><th>Host</th><th>Value</th><th>TTL</th></tr></thead><tbody><tr><td>TXT</td><td>Unique value found in your Redux dashboard</td><td>Unique value found in your Redux dashboard</td><td>Default (or 1 hour)</td></tr><tr><td>CNAME</td><td>redux-pm</td><td>pm.mtasv.net</td><td>Default (or 1 hour)</td></tr></tbody></table>

This prevents Recovery emails from being sent out.&#x20;

***

### **3) Removing the forms snippet from your website**&#x20;

Remove this snippet from your website's header:&#x20;

```
<script defer src="https://public.reduxpayments.com/redux-payments.min.js"></script>
```

This remove the Redux card update forms.&#x20;

***

And that's it. We're here to make things as easy as possible and our team is always happy to help if you have any questions&#x20;


# API And Webhook Events Used


# Does Redux Conflict With Other Recovery Tools


# How To Disable Or Limit Stripe Smart Retries


# Engineering Requirements And Zero Lift Setup


# My Recovery Rates Look Wrong


# My Dashboard Shows No Data


# Why Recovery Spiked Unexpectedly


# Why Recovery Dropped Unexpectedly


# Stripe Data Import Issues


# Contact Support


# Page 1

* Involuntary Churn
* Decline Codes
* Do Not Honor
* Generic Decline
* Insufficient Funds
* Expired Cards
* Recovery Window
* Consumer Subscription Behavior
* Lift
* Baseline
* Retry Optimization
* Smart Retries


