🏊‍♂️

# Staking Pool Management

Create & Manage Basic Staking Pools

## 🎯 Pool Overview

The staking system provides basic pool management functionality where administrators can create staking pools with defined parameters like APR rates, lock periods, and minimum stakes. Users can stake tokens in these pools and earn rewards based on the configured rates.

## ⚙️ Pool Features

🎯

### Basic Pool Configuration

Simple pool setup with essential parameters

- • Pool name and description
- • Token symbol and icon
- • APR rate configuration
- • Lock period settings

📊

### Pool Management

Administrative controls for pool operations

- • Pool status control (Active/Inactive/Coming Soon)
- • Minimum/maximum stake limits
- • Early withdrawal fees
- • Admin fee percentages

## ➕ Creating Staking Pools

1

### Access Pool Management

Navigate to the pool management section:

Admin Panel → Staking → Pools

Click the "Create New Pool" button to start creating your staking pool.

2

### Basic Pool Information

Configure the basic pool details:

Name: Pool display name (e.g., "Bitcoin Staking Pool")
Token & Symbol: Token name and symbol for the pool
Description: Brief description of the pool
Icon: Optional icon URL for the pool
3

### Financial Parameters

Set the pool's financial terms:

APR Rate Annual percentage rate (e.g., 12.5%)
Lock Period Days tokens are locked (e.g., 30, 90, 365)
Min/Max Stake Minimum and optional maximum stake amounts
Fees Early withdrawal and admin fee percentages
4

### Pool Settings

Configure additional pool options:

Status: ACTIVE, INACTIVE, or COMING_SOON
Earning Frequency: DAILY, WEEKLY, MONTHLY, or END_OF_TERM
Auto Compound: Enable automatic reward reinvestment
Promoted: Mark pool as promoted/featured

## 🔧 Pool Management

### Pool Listing & Overview

The pool management interface provides:

- • Pool List: View all created pools with basic information
- • Status Control: Change pool status between Active, Inactive, and Coming Soon
- • Pool Details: View detailed information about each pool
- • Pool Editing: Modify pool parameters (where allowed)
- • Pool Ordering: Reorder pools for display priority

### Pool Status Management

#### ACTIVE

Pool is open for new stakes and active rewards

#### INACTIVE

Pool is closed for new stakes but existing positions remain

#### COMING_SOON

Pool is announced but not yet available for staking

## 🔌 API Integration

### Available Endpoints

`POST /api/admin/staking/pool`

Create a new staking pool

`GET /api/admin/staking/pool/all`

Get all staking pools

`GET /api/admin/staking/pool/{id}`

Get specific pool details

`PUT /api/admin/staking/pool/status`

Update pool status

`DELETE /api/admin/staking/pool/{id}`

Delete a staking pool

## 📋 Pool Model Structure

### stakingPool Fields

Field | Type | Description
--- | --- | ---
id | UUID | Unique pool identifier
name | String | Pool display name
token, symbol | String | Token name and symbol
apr | Float | Annual percentage rate
lockPeriod | Integer | Lock period in days
minStake, maxStake | Float | Minimum and maximum stake amounts
status | Enum | ACTIVE | INACTIVE | COMING_SOON
earningFrequency | Enum | DAILY | WEEKLY | MONTHLY | END_OF_TERM
autoCompound | Boolean | Enable automatic reinvestment

## 💡 Best Practices

### APR Setting

Set realistic APR rates that can be sustained by your platform's revenue model.

### Lock Periods

Offer varied lock periods to accommodate different user preferences and risk tolerances.

### Pool Monitoring

Regularly monitor pool performance and user engagement to optimize pool parameters.