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

# Memberships

> Create recurring membership plans with credits, discounts, and automated billing for loyal patients.

<Info>
  **Prerequisites:** You should have [Services](/modules/settings/services) and/or [Products](/modules/settings/products) created before setting up memberships, since membership discounts and credits reference existing catalog items.
</Info>

Memberships generate predictable recurring revenue for your clinic. Patients enroll, get billed automatically, and receive benefits like discounts and credits — so they keep coming back.

Memberships let you offer recurring subscription plans to patients. Each membership defines its own pricing, billing frequency, discounts, credits, and enrollment terms. Patients enroll in a membership and are billed automatically on a recurring schedule, while receiving the benefits you configure.

For how a membership's cycle billing translates into revenue on your accounting reports — including the choices that affect when revenue is counted (per redemption, spread over the cycle, as credit is spent, or at renewal) — see [Membership Revenue Recognition](/guides/membership-revenue-recognition).

## Create a Membership

<Steps>
  <Step title="Navigate to Memberships">
    Go to **Settings** and select **Memberships**.
  </Step>

  <Step title="Add Membership">
    Click the **Add Membership** button in the top right corner. This opens a full-page editor with multiple sections.
  </Step>

  <Step title="Fill in Basic Information">
    Enter the following details:

    * **Membership Name:** The name patients will see (e.g., "Gold Membership", "VIP Monthly Plan").
    * **Description:** An optional summary of what the membership includes. Use the AI generator to draft this automatically.
    * **Setup Fee / Promotional Discount:** A one-time charge when a patient enrolls. Enter a negative value to apply a promotional discount to the first payment.
    * **Freeze Fee:** The amount charged when a patient freezes (pauses) their membership.
    * **Pass Processing Fee to Patient:** Toggle on to apply your credit card surcharge to membership charges (setup fee, recurring billing, and freeze fee). Leave off to absorb the surcharge yourself. Processing fees are only added when the membership payment uses a credit card; debit cards and ACH bank transfers are not charged this fee.
    * **Minimum Billing Cycles:** The number of billing cycles a patient must complete before they can cancel.
    * **Maximum Billing Cycles:** The total number of billing cycles before the membership expires automatically. Set to 0 for unlimited.
    * **Invoice Rule Set:** Select the rule set used to create an invoice when a member becomes delinquent (a payment fails). Choose **None** to skip automatic invoice creation.
    * **Text Color:** Pick a color to visually distinguish this membership name in the platform.
    * **Show in patient portal:** On by default. Turn off to hide the plan from the patient portal's enrollment list — patients won't be able to browse or self-enroll, but staff can still assign it and existing members continue to see their plan.
  </Step>

  <Step title="Configure Fee Schedule">
    Set the recurring price and optional cycle-specific pricing overrides. See the [Fee Schedule](#configure-a-fee-schedule) section below.
  </Step>

  <Step title="Set Billing Frequency">
    In the Billing Frequency section, set the **Billing Cycle** to choose how often the membership bills: Daily, Weekly, Biweekly, Every Six Weeks, Every Ten Weeks, Every Twelve Weeks, Monthly, Quarterly, Every Four Months, Semi-Annually, or Yearly. If you have multiple bank accounts configured, use **Deposit to** to route membership payments — pick **Bank account** to always deposit to one specific account, or **Sale location** to deposit to whichever account is tied to the location where each member signed up. When you choose **Sale location**, also pick a **Fallback bank account** that's used whenever a member's sale location has no account of its own.
  </Step>

  <Step title="Configure Credits and Discounts">
    Set up patient credits, global discounts, category-level discounts, item type discounts, and per-item discounts. See the sections below for details.
  </Step>

  <Step title="Save">
    Click **Save Membership** in the top right corner. The membership is immediately available for patient enrollment.
  </Step>
</Steps>

## Configure a Fee Schedule

The fee schedule lets you set different prices for specific billing cycles, which is useful for introductory pricing or promotional periods.

* **Cycle-Specific Prices:** Click **Add Cycle-Specific Price** to override the price for a specific cycle number (e.g., Cycle 1 at \$0, Cycle 2 at \$50).
* **Going-Forward Price:** The standard recurring price that applies to all cycles without a specific override. If no cycle-specific prices are defined, this is the membership price.

For example, you could set Cycle 1 to \$0 (free trial), Cycle 2 to \$25 (half price), and \$50 going forward.

## Set Up Credits and Discounts

Memberships can include multiple types of benefits that apply to enrolled patients.

<Note>
  New discount benefits are only issued while the membership is active. Whether a patient can still redeem already-earned benefits at checkout depends on the current status — see [When membership benefits stop being redeemable](#when-membership-benefits-stop-being-redeemable) for the full breakdown by status.
</Note>

### Patient Credits

A dollar amount credited to the patient's account each billing cycle. Credits can be used toward any purchase. Configure the credit amount in the **Patient Credits** field.

**Banking Options:** Enable **Rollover Unused** so unused credits carry over to the next billing cycle instead of disappearing. For example, if the membership includes \$50/month in credits and the patient only uses \$30, the remaining \$20 rolls to next month. Optionally set a **Rollover Expiry** in days to automatically expire banked credits after a specified period. Leave blank for no expiry. Use **Renewal Cycle** to control how often new credits are issued — enter a number of billing cycles between re-issuances (for example, `3` to refresh credits every three cycles), or leave blank to refresh every cycle.

### Global Discount

A blanket percentage discount applied to all services for membership holders. Set the percentage in the **Global Discount** field (0-100%).

### Category Discounts

Each discount benefit can target one specific item, a category, an item type, or all items. Create separate discount rows when a membership needs more than one specific item target.

Apply discounts to all items within a specific category. Click **Add Category Discount** to open the **Add Category Discounts** window. In the window:

* Pick one or more categories from the **Item Categories** menu. Selected categories appear as pills you can remove individually.
* Optionally type a new category name in **Custom Category (optional)** to add a category that is not in the list — it is added alongside any categories you picked from the menu.
* Set the **Discount Percentage** (1-100%) and the per-cycle quantity. Leave **Unlimited Uses** on for no cap, or turn it off and enter a quantity (set to 0 for unlimited usage within that category).

Click the **Add Category Discounts** confirm button in the window to create one discount per selected category, all sharing the same percentage and quantity. You can edit each one afterward — including its **Renewal cycle (billing periods)** field, which controls how many billing cycles pass between re-issuances of that category's discount quantity. Leave it blank to refresh every cycle.

### Item Type Discounts

Apply discounts broadly to all physical products or all services. Click **Add Item Type Discount** and choose whether the discount applies to physical items or services. Set the discount percentage and quantity.

### Per-Item Discounts

Discount specific services, products, or packages individually.

<Steps>
  <Step title="Search and Select">
    Use the item search field under the **Discounts** section to find and add specific services, products, or packages. You can also click **+ Create new item or package** to create one inline.
  </Step>

  <Step title="Set Discount Details">
    For each added item, configure:

    * **Quantity:** How many times per billing cycle the patient can use this discount. Set to 0 for unlimited usage.
    * **Discount Amount:** The dollar amount off the original price.
    * **Discount Percentage:** The percentage off the original price. Changing one automatically recalculates the other.
  </Step>

  <Step title="Configure Rollover">
    For items with a set quantity, enable **Rollover Unused** to bank unused quantities for future cycles. Optionally set an expiry period in days, and use **Renewal Cycle** to issue new quantities every N billing cycles instead of every cycle (leave blank for every cycle).
  </Step>
</Steps>

<Info>
  Items with a 100% discount must have a quantity specified. Set quantity to 0 for unlimited free usage, or enter a specific number to cap how many times the item is included per cycle.
</Info>

<Info>
  **What your patients see:** At checkout, membership discounts are applied automatically. The patient sees the original price crossed out with the discounted price below it. Staff don't need to manually apply anything.
</Info>

### Discount Groups

Group multiple item discounts together so patients can choose one option from the group each cycle, rather than receiving all discounts independently.

<Steps>
  <Step title="Select Items for Grouping">
    Check the **Add to a group** checkbox on two or more individual item discounts. Only items with a set quantity (greater than 0) can be grouped.
  </Step>

  <Step title="Create the Group">
    When two or more items are selected, a blue banner appears. Click **Create Group** and enter a group name.
  </Step>

  <Step title="Configure Group Settings">
    Set the discount percentages and quantities for each item in the group. Rollover settings — including **Rollover Unused**, **Rollover Expiry**, and the **Renewal Cycle** that controls how often the group's quantity is re-issued — are managed at the group level and apply to all items in the group.
  </Step>
</Steps>

## Require an Enrollment Form

You can attach a [form](/modules/forms) that patients must complete before they're enrolled — useful for membership agreements, consent, or terms. In the membership editor's **Enrollment Form** section, pick a **Required Form** from the list (search and select a form). Choose **None** to require no form.

When a required form is set:

* If staff enroll the patient and the form is sent for the patient to complete later, the member is created with an **Awaiting Form** status. Their membership benefits — credits and discounts — don't start until the form is submitted.
* Once the patient submits the form, the membership activates automatically.

If the form includes a **Payment Methods** block with a required Payment Method question (see [Form Structure](/modules/forms/form-structure#block-types)), the card the patient saves on the form is attached to the membership automatically — staff don't need to capture a payment method during enrollment. Save the membership before sending the form so the saved method can flow back in when the form is submitted.

## Enroll a Patient

<Steps>
  <Step title="Open Enrollment Page">
    From the memberships list, click the actions menu (gear icon) on any membership and select **Add New Member**. Or click **Add Membership** from a patient's profile.
  </Step>

  <Step title="Select Patient and Membership">
    Search for and select a patient. If navigating from a specific membership, it is pre-selected; otherwise, choose from the list of active memberships.
  </Step>

  <Step title="Choose Sold By Provider">
    In the **Sold By Provider** section, optionally select the provider who sold this membership. Leave it blank if you don't want to attribute the sale.
  </Step>

  <Step title="Set Schedule and Billing Dates">
    In the **Schedule & Billing** section:

    * **Benefits Start Date:** When the patient begins receiving membership benefits. Type a date or use shortcuts like "today", "tomorrow", or "next week".
    * **Next Billing Date:** When the recurring cycle first bills. It defaults to one billing cycle after the benefits start. Change it to anchor future charges to another day (for example, sign up June 15 with the next billing on July 1 so future charges land on the 1st).
    * **Defer today's charge:** When shown, turn this switch on to skip today's payment entirely — the first charge lands on the next billing date. Leave it off to charge today and still start the recurring cycle on the date you picked.
    * **Prorate First Payment:** When shown, turn this switch on to adjust today's charge based on the membership dates.

    Some clinics have **Defer today's charge** turned on by default. Staff can turn it off for an enrollment when the patient should pay today. **Prorate First Payment** appears after defer is turned off when the selected dates support proration.

    The Enrollment Summary on the right shows when benefits start, the date and amount of the first charge, and the ongoing recurring price.
  </Step>

  <Step title="Set Up Payment Method">
    The payment options shown depend on whether today's charge is deferred or immediate. Free memberships skip this step entirely.

    **For immediate billing (charging today):**

    * Pick from the patient's saved payment methods, or enter a new card in the payment terminal.
    * Check **Save Payment Method** to save a newly-entered card for future recurring charges. Make sure you have the patient's consent.

    **For deferred billing (today's charge is skipped):**

    * Select one of the patient's saved payment methods, or click **Add Card** to add a new one. A saved payment method is required to continue.

    <Note>
      If the chosen payment method is ACH (or the patient already has another active membership billed to ACH), an **ACH Warning** appears. ACH payments take several business days to validate and may fail due to insufficient funds, so membership benefits don't start until the payment clears. A credit or debit card is recommended for recurring membership billing.
    </Note>

    <Note>
      **Apple Pay and Google Pay aren't offered for memberships.** Digital-wallet cards are one-time use and can't be charged on a recurring schedule, so they can't be saved for a membership's future billing. When you add a card for a membership — whether during enrollment or through a payment link you send the patient — only a regular card or bank account is offered. This keeps staff from saving a wallet card that would then block the recurring draw. One-time payment links (not tied to a membership) still offer Apple Pay as usual.
    </Note>
  </Step>

  <Step title="Complete Enrollment">
    Click the action button at the bottom. Its label changes based on the enrollment type:

    * **Enroll Patient** — for free (\$0) memberships.
    * **Enroll Patient — first charge {date}** — for deferred billing.
    * **Charge \$X & Enroll** — for immediate billing, where \$X is the total charged today.
  </Step>
</Steps>

<Info>
  A patient cannot be enrolled in the same membership twice if they already have an active, frozen, or delinquent status on that membership.
</Info>

## Manage Enrolled Members

Click the **active members** count on any membership row, or select **View Members** from the actions menu, to open the members page.

The members table shows each enrolled patient with their status, start/end dates, billing details, sold-by provider, and recent activity. Use the filters to narrow by **Name**, **Status** (Active, Frozen, Cancelled, Expired, Delinquent), or **Start Date**.

### Member Actions

Click the actions menu on any member row to access these options:

* **Freeze Membership:** Pause billing temporarily. You can schedule a freeze for a future date and optionally set an auto-unfreeze date. A freeze fee is charged if configured on the membership.
* **Unfreeze Membership:** Resume billing for a frozen membership.
* **Change Payment Method:** Update the card on file for future recurring charges.
* **Change Billing Date:** Adjust when the next billing cycle occurs.
* **Deposit Account:** Override which bank account this specific member's payments deposit to, without changing the plan or affecting other members. Open the member's row on the patient's memberships tab and pick an account under **Deposit Account**. The line under the picker shows what's resolving today — an override, a plan-level bank account, or a location-based route. Choose the "Uses plan default" option to clear the override and go back to whatever the membership plan resolves to. If the member has a saved card that's tied to specific merchants, only the compatible accounts appear in the list.
* **Cancel Membership:** Permanently end the membership. Requires a comment explaining the reason. Available for active, frozen, and delinquent members. The cancel window has an **Archive unused benefits** checkbox — leave it on to make unused credits and discounts unusable right away, or turn it off to let the patient keep redeeming them until each benefit's own expiry date.
* **Process Payment:** (Delinquent members only) Manually collect a failed payment. When an outstanding renewal is paid in full—here or through checkout, POS, a payment link, or the patient portal—the membership returns to **Active**, receives new benefits, and moves to its next billing period.
* **Reactivate Membership:** (Delinquent members only) Restore the membership to active status.
* **View Member:** Navigate to the patient's profile, opened to their memberships tab.

### Bulk Member Actions

To act on several members at once, tick the checkbox at the left of each row in the members table — a bulk-action bar appears with the count selected. Pick one of:

* **Freeze** — freeze every selected member with one reason and one optional unfreeze date.
* **Rerun billing** — re-attempt the most recent charge for each selected member. Useful after a card update on file.
* **Adjust billing date** — set every selected member's next billing date to the same day, with one shared reason.
* **Deactivate** — cancel every selected membership. Requires a reason and can't be undone.

Each bulk action shows a confirmation window with the count of members affected before it runs.

### Member Statuses

| Status            | Meaning                                                                                                                                                  |
| ----------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Active**        | Patient is enrolled and billing normally.                                                                                                                |
| **Pending**       | The initial payment is in flight (e.g. ACH still clearing). The member row exists for visibility but benefits aren't granted until the payment succeeds. |
| **Awaiting Form** | The patient was enrolled but still needs to complete the required enrollment form. Benefits activate once it's submitted.                                |
| **Frozen**        | Billing is paused. Can be unfrozen to resume.                                                                                                            |
| **Delinquent**    | A payment has failed. Requires manual intervention.                                                                                                      |
| **Cancelled**     | Membership has been terminated by staff.                                                                                                                 |
| **Expired**       | Membership reached its maximum billing cycles.                                                                                                           |
| **Inactive**      | Membership has been ended administratively without going through cancellation or expiry.                                                                 |

A membership becomes **Frozen** when staff use **Freeze Membership** from the member's actions menu — either immediately or scheduled to start on a future date. While frozen, recurring billing is paused and the patient stops receiving membership benefits (credits, discounts) until the membership is reactivated. The patient sees a **Frozen** status pill on their billing page in the patient portal. To resume, use **Unfreeze Membership** from the actions menu, or set an automatic unfreeze date when freezing so the membership reactivates on its own.

<Info>
  **Automatic alerts on delinquency.** When a member's recurring charge fails and the membership flips to **Delinquent**, Decoda posts a **Membership Delinquent** alert and creates a follow-up task so someone on the billing team owns the recovery. The task is required — it can't be turned off — but who receives the alert is controlled in **Settings > Notifications**.
</Info>

#### When membership benefits stop being redeemable

A discount that came from a membership stops being redeemable when:

* The membership is **Frozen**, **Pending** (initial payment hasn't settled yet), or **Awaiting Form**. The discount is paused; it becomes redeemable again the moment that status clears.
* The membership is **Cancelled** or **Expired**. Decoda archives the patient's unused membership discounts when either status is set, so they stop appearing at checkout. You can re-enable them later by picking **Restore membership discounts** in [Reverse side effects](/modules/billing/charges-and-payments#reverse-side-effects) on a refund or charge deletion.
* The discount has reached its **expiry date** or its **quantity limit**.

**Delinquent** and **Inactive** memberships keep their already-earned discounts available until each discount hits its own expiry or quantity limit. Patient credit balances aren't archived on cancellation or expiry either — any credit the patient has already accrued stays on their account until it reaches the credit's own expiry.

<Info>
  **Archiving a patient stops their membership billing.** When you archive a patient, any membership that is still billing (active, frozen, or delinquent) is automatically cancelled, so the patient is never charged again. The next billing date is cleared and the cancellation is recorded in the membership's history. Archived patients are also skipped by the nightly billing run as an extra safeguard.
</Info>

## Edit a Membership

From the memberships list, click the actions menu on any membership and select **Edit Membership**, or click the membership name to expand it, then navigate to the edit page. The editor contains the same sections used during creation.

<Info>
  **Discount changes apply to current members.** When you update a membership's discounts, the changes automatically take effect for all active, frozen, and delinquent members:

  * **Changed discounts** (e.g., new amount or percentage) update each member's discount while preserving their remaining usage when possible. If you reduce a quantity limit, remaining usage is capped at the new limit.
  * **Removed discounts** are no longer available to current members.
  * **New discounts** are issued to all current members immediately.

  Discounts that haven't changed are not affected.
</Info>

## Duplicate a Membership

To quickly create a similar plan, click the actions menu on any membership and select **Duplicate**. A copy is created with the same settings, which you can then rename and modify.

## Bulk Edit Memberships

Select multiple memberships using the checkboxes in the table. A bulk actions bar appears at the bottom with two options:

* **Edit:** Opens a drawer with two tabs:
  * **Details:** Update **Name**, **Description**, and **Price** for all selected memberships at once. Only fields you modify are applied.
  * **Tags:** Apply or remove tags. Click an existing tag to apply it to every selected membership, or type a name into **Create new tag…** and press **Enter** to make a new one. Tags are shared across memberships, services, products, and medications.
* **Archive:** Archive all selected memberships simultaneously.

## View Membership Details

Click the expand arrow next to any membership name in the list to view an inline summary showing:

* **Financial Details:** Price (or fee schedule), setup fee, freeze fee, and patient credit amount.
* **Membership Stats:** Active member count, total lifetime revenue, billing frequency, and cancellation policy.
* **Members:** Expandable list of enrolled patients with search and pagination.
* **Discounts:** Expandable list of all configured discounts (grouped and individual) with search and pagination.

## Advanced Configuration

<AccordionGroup>
  <Accordion title="Grouping by Billing Frequency">
    Use the **Group By** dropdown above the memberships table to organize memberships by billing frequency (Monthly, Weekly, Yearly, etc.). This helps you see all plans of the same type together.
  </Accordion>

  <Accordion title="Filtering and Searching">
    Use the filter bar to search memberships by **Name** or by **Discount Item** name. Combine filters to quickly find specific plans.
  </Accordion>

  <Accordion title="Revenue Tracking">
    Each membership row in the table displays its **Total Revenue** -- the lifetime sum of all payments collected from enrolled members. Use this to evaluate the financial performance of each plan.
  </Accordion>

  <Accordion title="Archiving a Membership">
    To discontinue a membership, click the actions menu and select **Archive**. Memberships with active members cannot be archived -- you must cancel or move all enrolled patients first. Archived memberships no longer appear in enrollment flows but historical billing data is preserved.
  </Accordion>

  <Accordion title="Permissions">
    * **View Memberships** -- Required to view the Memberships page, membership details, and enrolled members.
    * **Process Payments** -- Required to enroll patients (since enrollment processes a payment) and to manually collect failed payments for delinquent members.
    * **Process Refunds** -- Required to process refunds on membership payments.

    Admin users have full access to all membership features by default. Membership creation and editing within Settings requires settings-level access.
  </Accordion>

  <Accordion title="Deposit Routing">
    If your organization has multiple bank accounts (merchant accounts), you can route membership payments in the **Billing Frequency** section of the membership editor. Pick **Bank account** to always deposit to the same account, or **Sale location** to deposit to whichever account is tied to each member's sign-up location (with a **Fallback bank account** for locations that don't have one). You can also override the account for a single member on the patient's memberships tab — see **Deposit Account** under [Member Actions](#member-actions).
  </Accordion>
</AccordionGroup>
