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

# Membership Plans

> View available plans and manage your membership

View available membership plans and manage your current membership.

## Current Membership

View your active membership:

* Plan name
* Status (active, expiring, expired)
* Expiry date
* Auto-renewal status
* Benefits included

## Available Plans

Browse membership options:

* Plan comparison
* Pricing (monthly/annual)
* Benefits breakdown
* Upgrade options

## Plan Actions

| Action    | Description                     |
| --------- | ------------------------------- |
| Upgrade   | Move to higher tier             |
| Downgrade | Move to lower tier (at renewal) |
| Cancel    | Cancel auto-renewal             |
| Renew     | Manually renew membership       |

## Plan Change Workflows

Members can change plans in three common ways:

1. **Upgrade** (effective immediately)
2. **Downgrade** (scheduled for renewal by default)
3. **Switch billing period** (monthly ↔ annual)

### Upgrade

* Upgrades are typically **effective immediately**.
* If proration is enabled, the member is charged the prorated difference for the remainder of the current period.

### Downgrade

* Downgrades are typically **scheduled for the next renewal** (no mid-cycle downgrade by default).
* The member retains current benefits until renewal.

### Switch monthly/annual

* Monthly → annual can be immediate (prorated) or scheduled at renewal (configurable).
* Annual → monthly is typically scheduled at renewal to avoid refunds/partial periods (configurable).

## Features

### Membership Plans

#### Acceptance Criteria

##### Frontend

* [ ] UI supports the workflows described in this feature.

##### Backend / API

* [ ] Backend behavior supports this feature as documented.

##### Permissions

* [ ] Access is restricted per the Capabilities matrix on this page (or equivalent role rules).

##### Business Rules

* [ ] All business rules for this feature are enforced.

##### Error Handling

* [ ] Error states return clear messages and appropriate HTTP status codes.

## Implementation Contracts

### Backend (API)

```
GET    /api/member/membership                # Current membership
GET    /api/membership-plans                 # Available plans (public)
POST   /api/member/membership/upgrade        # Upgrade plan
POST   /api/member/membership/change-period  # Switch monthly/annual billing
POST   /api/member/membership/schedule-downgrade # Schedule downgrade for renewal
POST   /api/member/membership/cancel         # Cancel auto-renewal
POST   /api/member/membership/renew          # Manual renewal
```
