Appearance
Add New Subscriber
Overview
Add New Subscriber allows you to create individual subscriber accounts in the system. This feature automatically sets up the subscriber profile, creates Radius authentication, assigns packages, and sends welcome notifications via SMS and email.
WHAT IS ADD NEW SUBSCRIBER?
Add New Subscriber is a comprehensive account creation feature that:
- Quick Setup - Create subscriber in one step
- Auto Radius - Automatically creates Radius authentication
- 3-Minute Trial - Auto-expires in 3 minutes (requires activation)
- Package Assignment - Links subscriber to selected package
- Identity Verification - Optional document upload
- Duplicate Prevention - Validates unique username, phone, identity
- Auto Notifications - Sends SMS/Email with credentials
- Permission-Based - Admin/Staff can assign salesperson, Resellers auto-assigned
Perfect for: Quick subscriber onboarding, trial accounts, new customer registration!
📋 Table of Contents
- How It Works
- Permission-Based Access
- Step-by-Step Guide
- Required Fields
- Optional Fields
- Validation Rules
- Auto-Generated Data
- Best Practices
How It Works
The Process
1. Fill Subscriber Form → 2. Validate Data → 3. Upload Document (Optional) →
4. Create Subscriber → 5. Create Radius Auth → 6. Set 3-Min Expiry →
7. Send Notifications → 8. Activity LoggedWhat Happens When You Add
Automatic Actions:
- ✅ Subscriber profile created with status 2 (Active)
- ✅ Radius authentication created (Expiration attribute)
- ✅ Package pool updated in Radius
- ✅ Radusergroup updated
- ✅ Subscriber password set in Radius
- ✅ Auto-expiration set to 3 minutes from now
- ✅ Subscriber service record created
- ✅ Document linked to subscriber (if uploaded)
- ✅ SMS sent with credentials
- ✅ Email sent with credentials
- ✅ Activity log generated
Permission-Based Access
Admin & Staff
Can Do:
- ✅ Add subscribers for any salesperson
- ✅ Select salesperson from dropdown
- ✅ Assign to Reseller, Sub-reseller, or Retailer
- ✅ Full access to all fields
Salesperson Selection:
Admin/Staff → Can select any salesperson
Subscriber assigned to selected salespersonReseller, Sub-reseller, Retailer
Can Do:
- ✅ Add subscribers for themselves only
- ✅ Salesperson auto-assigned (cannot change)
- ✅ Access to all subscriber fields
- ✅ Must have assigned packages
Salesperson Assignment:
Reseller → Subscriber assigned to Reseller
Sub-reseller → Subscriber assigned to Sub-reseller
Retailer → Subscriber assigned to RetailerReseller Staff
Can Do:
- ✅ Add subscribers for parent reseller
- ✅ Salesperson auto-assigned to parent
- ✅ Access to all subscriber fields
Salesperson Assignment:
Reseller Staff → Subscriber assigned to Parent ResellerStep-by-Step Guide
Step 1: Access Add Subscriber
From Subscriber List:
- Go to Subscribers
- Click "Add Subscriber" button
- Modal/Form opens
Step 2: Fill Required Fields
Must Provide:
- Full Name (3-32 characters)
- Username (3-25 characters, unique)
- Password (max 32 characters)
- Phone (numeric, unique by default)
- Identity (numeric, unique by default)
- Package (select from assigned packages)
Admin/Staff Only: 7. Salesperson (select from dropdown)
Step 3: Fill Optional Fields
Can Provide:
- Email (valid email format)
- Connection Password (defaults to password)
- Connection Type (PPPoE, Hotspot, etc.)
- NAS (select from available NAS)
- Address
- Country, Province, City, Area, Subarea
- Latitude, Longitude (for mapping)
- Department
- Join Date (defaults to current datetime)
Step 4: Upload Identity Document (Optional)
If Identity File Setting Enabled:
- Document Type (required)
- Passport
- Driver's License
- National ID
- Other
- Identity File (required)
- Formats: PDF, DOCX, JPEG, PNG
- Upload document
Step 5: Submit
- Review all entered data
- Click "Submit" or "Add" button
- Wait for processing
- System validates and creates subscriber
Step 6: Review Results
Success Message:
Subscriber Successfully Added.What Happened:
- Subscriber profile created
- Radius authentication set up
- 3-minute trial expiration set
- Notifications sent
- Activity logged
Next Steps:
- Activate subscriber (required within 3 minutes)
- Subscriber can connect but will expire in 3 minutes
- Must activate to extend expiration
Required Fields
1. Full Name
What It Is:
- Subscriber's full name for identification
Requirements:
- Minimum: 3 characters
- Maximum: 32 characters
- Required field
Example:
John Doe
Muhammad Rahman2. Username
What It Is:
- Unique username for Radius authentication
- Used for PPPoE/Hotspot login
Requirements:
- Minimum: 3 characters
- Maximum: 25 characters
- Must be unique (system-wide)
- Spaces automatically removed
- Required field
Example:
john.doe
user123453. Password
What It Is:
- Subscriber's account password
- Hashed in database (bcrypt)
Requirements:
- Maximum: 32 characters
- Required field
- Stored securely (hashed)
Example:
SecurePass123
MyPassword@20244. Phone
What It Is:
- Subscriber's contact phone number
- Used for SMS notifications
Requirements:
- Must be numeric
- Unique by default (configurable)
- Non-numeric characters removed
- Required field
Duplicate Prevention:
- Default: Phone must be unique
- Can be disabled in Subscriber Settings
- Setting:
allow_duplicate_phone
Example:
01712345678
+8801712345678 (cleaned to 8801712345678)5. Identity
What It Is:
- National ID, Passport, or other identity number
- Used for subscriber identification
Requirements:
- Must be numeric
- Unique by default (configurable)
- Required field
Duplicate Prevention:
- Default: Identity must be unique
- Can be disabled in Subscriber Settings
- Setting:
allow_duplicate_nid
Format Validation:
- Optional format checking
- Setting:
identity_formate_status - Country-specific format rules
Example:
1234567890123
9876543216. Package
What It Is:
- Internet package assigned to subscriber
- Determines speed, quota, pricing
Requirements:
- Must select from assigned packages
- Package must exist
- Required field
Package Assignment:
- Admin: All packages
- Reseller: Assigned packages only
- Sub-reseller: Parent's assigned packages
- Retailer: Parent's assigned packages
7. Salesperson (Admin/Staff Only)
What It Is:
- User responsible for subscriber
- Determines package availability
Requirements:
- Admin/Staff: Must select from dropdown
- Reseller: Auto-assigned (self)
- Sub-reseller: Auto-assigned (self)
- Retailer: Auto-assigned (self)
- Reseller Staff: Auto-assigned (parent)
Optional Fields
1. Email
What It Is:
- Subscriber's email address
- Used for email notifications
Requirements:
- Must be valid email format (RFC)
- Not required
- Auto-generates fake email if invalid
Auto-Generated Email:
If invalid or empty:
[email protected]Example:
2. Connection Password
What It Is:
- Password for Radius authentication (PPPoE/Hotspot)
- Different from account password
Requirements:
- Optional
- Defaults to account password if not provided
- Stored in plain text (for Radius)
Default Behavior:
If not provided: connection_password = password3. Connection Type
What It Is:
- Type of connection method
- PPPoE, Hotspot, Static IP, etc.
Requirements:
- Optional
- Select from available types
4. NAS
What It Is:
- Network Access Server (Router/OLT)
- Where subscriber connects
Requirements:
- Optional
- Select from NAS in user's NAS group
5. Address & Location
What It Is:
- Physical address and geographic location
- Used for mapping and service area
Fields:
- Address - Street address
- Country - Country code/name
- Province - Province/State
- City - City name
- Area - Area name
- Subarea - Subarea name
- Latitude - GPS latitude
- Longitude - GPS longitude
Fallback Behavior:
If not provided:
Use salesperson's location data6. Department
What It Is:
- Department for subscriber categorization
- Optional organizational grouping
7. Join Date
What It Is:
- Date subscriber joined
- Used for reporting
Default Behavior:
If not provided: join_date = current datetime8. Identity Document (If Enabled)
What It Is:
- Document file for identity verification
- PDF, DOCX, JPEG, PNG
Requirements:
- Required if
identity_filesetting = 1 - Must select document type
- Must upload file
Document Types:
- Passport
- Driver's License
- National ID
- Voter ID
- Other
Validation Rules
Username Validation
✅ Minimum 3 characters
✅ Maximum 25 characters
✅ Must be unique system-wide
✅ Spaces removed automatically
❌ Cannot be duplicatePhone Validation
✅ Must be numeric
✅ Non-numeric characters removed
✅ Unique by default (configurable)
✅ Format validation (optional)
❌ Cannot be duplicate (by default)Phone Format Check:
- Setting:
phone_formate_status - Country-specific format rules
- Validates phone number structure
Identity Validation
✅ Must be numeric
✅ Unique by default (configurable)
✅ Format validation (optional)
❌ Cannot be duplicate (by default)Identity Format Check:
- Setting:
identity_formate_status - Country-specific format rules
- Validates identity number structure
Email Validation
✅ Must be valid email format (RFC)
✅ Not required
✅ Auto-generates if invalidPackage Validation
✅ Must exist in system
✅ Must be assigned to salesperson
❌ Cannot be emptyDocument Validation (If Enabled)
✅ File formats: PDF, DOCX, JPEG, PNG
✅ Document type required
✅ File upload required
❌ Cannot be empty if setting enabledAuto-Generated Data
1. Profile Status
Auto-Set:
profile_status = 2 (Active)Status Codes:
- 1 = Register (not used)
- 2 = Active
- 3 = Disable
- 4 = Expired
2. Expiration Date
Auto-Set:
expiration_date = current datetime + 3 minutesPurpose:
- Creates trial period
- Subscriber can connect immediately
- Must activate within 3 minutes
- After 3 minutes: Auto-expires
Radius Attribute:
Attribute: Expiration
Value: "22 Nov 2025 21:03:00" (formatted)3. SMS & Email Status
Auto-Set:
sms_status = 1 (Enabled)
email_status = 1 (Enabled)Purpose:
- Enables notifications by default
- Can be changed later
4. Salesperson Assignment
Auto-Set Based on User Type:
Admin/Staff:
salesperson_id = selected from dropdownReseller/Sub-reseller/Retailer:
salesperson_id = current user IDReseller Staff:
salesperson_id = parent reseller ID (created_by_id)5. ISP & Branch
Auto-Set:
isp_id = current session ISP ID
branch_id = current session Branch ID6. Created By
Auto-Set:
created_by_id = current logged-in user ID7. Location Data (If Not Provided)
Auto-Set from Salesperson:
country = salesperson's country
province = salesperson's province
city = salesperson's city
area = salesperson's area
subarea = salesperson's subarea8. Fake Email (If Invalid)
Auto-Generated:
If email invalid or empty:
email = [email protected]Example:
Input: john.doe (invalid)
Generated: [email protected]Best Practices
Before Adding
1. Verify Package Assignment
✅ Salesperson has assigned packages
✅ Package is active
✅ Package pricing configured2. Prepare Subscriber Data
✅ Collect all required information
✅ Verify phone number format
✅ Verify identity number format
✅ Prepare identity document (if required)3. Check Duplicate Settings
✅ Know if duplicate phone allowed
✅ Know if duplicate identity allowed
✅ Verify username is uniqueDuring Adding
1. Use Strong Passwords
✅ Minimum 8 characters
✅ Mix of letters and numbers
✅ Avoid common passwords2. Provide Valid Email
✅ Use real email address
✅ Verify email format
✅ Avoid typos3. Select Correct Package
✅ Verify package speed
✅ Verify package pricing
✅ Ensure package is active4. Assign Correct Salesperson (Admin/Staff)
✅ Verify salesperson has package
✅ Verify salesperson is active
✅ Ensure correct hierarchyAfter Adding
1. Activate Immediately
✅ Subscriber expires in 3 minutes
✅ Must activate to extend expiration
✅ Activation sets real expiration date2. Verify Notifications
✅ Check SMS sent
✅ Check Email sent
✅ Verify credentials received3. Test Connection
✅ Subscriber can authenticate
✅ Radius working correctly
✅ Package policy applied4. Update Profile (If Needed)
✅ Add additional information
✅ Upload more documents
✅ Set static IP (if required)Common Use Cases
Use Case 1: Quick Trial Account
Scenario:
New customer wants to test service
Need immediate access
3-minute trial periodSteps:
- Add subscriber with basic info
- Subscriber connects immediately
- Service works for 3 minutes
- Activate for full service
Result:
- Instant trial access
- No payment required yet
- Can activate after trial
Use Case 2: New Customer Registration
Scenario:
New customer signs up
Full registration with documents
Immediate activation neededSteps:
- Collect all customer information
- Upload identity document
- Add subscriber
- Activate immediately
- Customer starts service
Result:
- Complete profile created
- Documents verified
- Service activated
- Notifications sent
Use Case 3: Bulk Onboarding
Scenario:
Multiple new subscribers
Same package
Same area
Quick setup neededSteps:
- Prepare subscriber list
- Add each subscriber individually
- Or use Import Subscriber feature
- Activate all subscribers
Result:
- Multiple subscribers added
- All ready for activation
- Consistent setup
Use Case 4: Reseller Adding Subscriber
Scenario:
Reseller adds new customer
Auto-assigned to reseller
Package from reseller's listSteps:
- Reseller logs in
- Adds subscriber (auto-assigned)
- Selects from assigned packages
- Subscriber created under reseller
Result:
- Subscriber linked to reseller
- Reseller earns profit
- Hierarchical structure maintained
Use Case 5: Staff Adding for Reseller
Scenario:
Staff adds subscriber
Assigns to specific reseller
Reseller earns profitSteps:
- Staff logs in
- Selects reseller from dropdown
- Adds subscriber
- Subscriber assigned to reseller
Result:
- Subscriber under reseller
- Staff facilitates onboarding
- Reseller manages subscriber
Summary
Add New Subscriber is a comprehensive onboarding feature that:
✅ Quick Setup:
- One-step subscriber creation
- All data in single form
- Immediate Radius authentication
✅ Auto-Configuration:
- 3-minute trial expiration
- Radius attributes set automatically
- Package pool and groups updated
- Passwords synchronized
✅ Permission-Based:
- Admin/Staff: Select salesperson
- Reseller: Auto-assigned
- Staff: Assign to resellers
- Hierarchical structure maintained
✅ Validation & Security:
- Unique username enforcement
- Duplicate phone/identity prevention (configurable)
- Format validation (optional)
- Password hashing
- Document verification (optional)
✅ Auto-Notifications:
- SMS with credentials
- Email with credentials
- Welcome messages
- Activity logging
✅ Flexible Configuration:
- Required/optional fields
- Duplicate prevention settings
- Document upload settings
- Format validation settings
✅ Trial Period:
- 3-minute auto-expiration
- Immediate connection
- Must activate for full service
- Perfect for testing
Perfect for ISPs wanting quick subscriber onboarding with automatic Radius setup, trial periods, and comprehensive validation!
