> ## Documentation Index
> Fetch the complete documentation index at: https://test-docs.upayments.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Subscriptions

> Detected and NMI-managed recurring subscriptions

# Subscriptions

Subscriptions can come from two sources: **NMI's recurring module** or **automatic detection** from transaction patterns.

## Subscription Detection

FinMI can automatically identify recurring payment patterns from your transaction history. This is especially useful for merchants using GoHighLevel, Stripe Billing, or other platforms that process through NMI without using NMI's built-in recurring module.

### How Detection Works

The algorithm looks for:

1. **Same customer + same amount** with 2+ successful payments
2. **Consistent intervals** between payments (weekly, bi-weekly, monthly, quarterly, yearly)
3. **Description matching** — Transactions containing keywords like "subscription", "recurring", "monthly"
4. **Custom terms** — Your own search terms (e.g. "Consulting Services")

### Detection Settings

Click **Detect Subscriptions** on the subscriptions page:

| Setting                  | Description                                              |
| ------------------------ | -------------------------------------------------------- |
| **Sensitivity**          | Minimum number of matching payments (2+, 3+, 4+)         |
| **Match by description** | Search for built-in keywords in transaction descriptions |
| **Custom terms**         | Your own terms to search for (e.g. "Monthly Retainer")   |
| **Include terms**        | Additional terms that qualify a transaction              |
| **Exclude terms**        | Terms that disqualify (e.g. "one-time", "setup fee")     |
| **Merchant**             | Which merchant(s) to scan                                |
| **Remove existing**      | Clear previous detected subscriptions before re-scanning |

<Info>
  Only **successful** payments (Approved/Settled) count toward detection. Failed payments before the first success are ignored. Failed payments after a successful sequence are included and tracked as subscription failures.
</Info>

### Auto-Detection

If enabled in **Merchants → Gateway & Sync → Settings**, subscription detection runs automatically after each sync cycle using your saved settings.

## Subscription List

| Column           | Description                             |
| ---------------- | --------------------------------------- |
| **Description**  | Plan name or transaction description    |
| **Customer**     | Linked customer (clickable)             |
| **Amount**       | Recurring payment amount                |
| **Frequency**    | Weekly, Monthly, Quarterly, Yearly      |
| **Status**       | Active, Expired, Dismissed              |
| **Last Billing** | Date of most recent payment             |
| **Payments**     | Successful payment count + failed count |

### Metrics Bar

* **MRR** — Monthly Recurring Revenue (all amounts normalized to monthly)
* **Active** — Currently active subscriptions
* **Churn** — Churn rate for the selected period
* **Failed Payments** — Percentage of failed subscription payments

## Subscription Detail

* **Billing amount** and frequency
* **Total collected** and payment count
* **Success rate** — Calculated from actual transaction outcomes
* **Customer link** — Click to view customer profile
* **Payment history** — All transactions linked to this subscription
* **Subscription health** — Churn risk, days since last payment, consecutive failures

### Removing Detected Subscriptions

Click **Remove Subscription** to dismiss a detected subscription that isn't actually recurring. The transactions remain — only the subscription record is removed. To re-add it, run detection again.
