Clickatell Integration
Enable SMS-based WiFi authentication with one-time passwords and phone verification on your captive portal using Clickatell's global messaging platform.
Overview
The Clickatell integration provides:
- SMS OTP authentication for captive portal
- Phone verification for guests
- SMS notifications and alerts
- Global SMS delivery coverage
Prerequisites
- IronWifi account with captive portal
- Clickatell account (clickatell.com)
- Clickatell API credentials
Clickatell Setup
Create Account
- Sign up at clickatell.com
- Complete account verification
- Add credits or set up billing
Create SMS Integration
- In Clickatell portal, go to SMS > Integrations
- Click Create new integration
- Select REST API
- Configure:
- Name: IronWifi
- Features: Enable One API
- Note your API Key
Get Credentials
You'll need:
- API Key: From integration settings
- From Number (optional): Sender ID or number
IronWifi Configuration
Step 1: Add Clickatell Provider
- Log in to IronWifi Console
- Navigate to Networks > Captive Portals
- Select your captive portal
- Go to Authentication Providers
- Click Add Provider > Clickatell (SMS)
Step 2: Configure API
Enter Clickatell credentials:
- API Key: Your Clickatell API key
- From: Sender ID or phone number (optional)
Step 3: SMS Settings
Message Template:
Your WiFi access code is: {{code}}
Valid for {{expiry}} minutes.
Configuration:
- Code Length: 4-8 digits
- Code Expiry: Minutes until code expires
- Max Attempts: Verification attempts allowed
Authentication Flow
SMS Login Process
- Guest connects to WiFi
- Captive portal displays phone input
- Guest enters mobile number
- Clickatell sends SMS with OTP
- Guest enters code on portal
- Code verified, access granted
User Experience
[Phone Number Input]
+1 (___) ___-____
[Send Code]
↓ SMS Sent ↓
[Enter Code]
______
[Verify]
Configuration Options
Sender ID
Configure sender identification:
- Alphanumeric: Company name (e.g., "GuestWiFi")
- Numeric: Phone number
- Shortcode: If available in region
Note: Sender ID support varies by country.
Message Customization
Available variables:
| Variable | Description |
|---|---|
{{code}} | One-time password |
{{expiry}} | Expiry time in minutes |
{{network}} | Network name |
{{location}} | WiFi location |
Rate Limiting
Configure abuse prevention:
- SMS per number per hour: 3
- SMS per IP per hour: 10
- Cooldown period: 60 seconds between requests
Country Configuration
Allowed Countries
Restrict SMS to specific countries:
- In provider settings, find Country Restrictions
- Enter allowed country codes:
US- United StatesCA- CanadaGB- United Kingdom
- Requests from other countries are rejected
International Formatting
Ensure numbers are in E.164 format:
- US: +14155551234
- UK: +447911123456
- Format validation prevents errors
Two-Factor Authentication
Add SMS as 2FA
- Configure primary authentication (social, email, etc.)
- Enable Two-Factor Authentication
- Select Clickatell SMS as 2FA method
- Configure 2FA settings
2FA Flow
- User completes primary login
- Prompted for phone number
- SMS code sent
- Code verified
- Full access granted
Notifications
Welcome SMS
Send after successful authentication:
Welcome to {{network}}!
You have {{duration}} of WiFi access.
Expiry Warning
Notify before access expires:
Your WiFi access expires in 10 minutes.
Troubleshooting
SMS Not Received
- Verify phone number format (E.164)
- Check Clickatell account has credits
- Review Clickatell message logs
- Check country is supported
- Verify carrier isn't blocking
Invalid Code Errors
- Check code hasn't expired
- Verify correct code entered
- Ensure max attempts not exceeded
- Request new code
API Errors
- Verify API key is correct
- Check account status (active, funded)
- Review Clickatell API logs
- Test API directly
Monitoring
Clickatell Dashboard
Monitor in Clickatell:
- Message delivery status
- Delivery reports
- Error rates
- Credit usage
IronWifi Logs
Review in IronWifi:
- Authentication attempts
- Success/failure rates
- Phone numbers used
Costs
Clickatell Pricing
- Per-message pricing varies by country
- Typically $0.01 - $0.10 per SMS
- Volume discounts available
- Prepaid or postpaid billing
Cost Optimization
- Implement rate limiting
- Use country restrictions
- Validate numbers before sending
- Monitor for abuse
Security
Best Practices
- Rate limiting - Prevent SMS bombing
- Country restrictions - Limit to service area
- Number validation - Reject invalid numbers
- Short code expiry - 5 minutes recommended
- Attempt limits - Block after failures
Related Topics
- Twilio Integration - Alternative SMS provider
- Authentication Providers
- Captive Portals