ZaaNet Documentation
Welcome to ZaaNet - the decentralized WiFi sharing platform that enables hosts to monetize their internet connections through captive portal technology and blockchain-secured transactions.
Our Mission
To democratize internet access by enabling WiFi owners to create paid hotspots using Raspberry Pi devices, generating passive income while providing affordable connectivity to users.
Key Benefits
- • Zero-configuration installer for Raspberry Pi
- • Automatic captive portal setup
- • Secure firewall-based access control
- • Mobile money & card payment integration
Getting Started with ZaaNet
Connecting to ZaaNet WiFi
- Find Network: Look for WiFi networks prefixed "ZN", eg.
ZN-Cafe
. - Connect: Join the open WiFi network. No password required initially.
- Portal Redirect: Open
http://192.168.100.1
or just open any website on your browser and you'll be redirected there. - Buy a Voucher: Purchase a data voucher on www.zaanet.xyz/evouchers for internet access.
- Payment: Complete payment using mobile money or card through our secure payment gateway.
- Use Your Voucher: Enter your voucher code on the portal to activate your internet access.
- Access Granted: Your device IP is automatically whitelisted for internet access after payment confirmation.
Payment Methods
Mobile Money (Ghana)
- • MTN Mobile Money
- • Vodafone Cash
- • AirtelTigo Money
International Cards
- • Visa & Mastercard
- • Local bank cards
Setting Up Your ZaaNet Host
Hardware Setup
Required Hardware
- • Raspberry Pi 4 (4GB+ RAM recommended)
- • MicroSD card (32GB+ Class 10)
- • Power supply (official Pi adapter)
- • Ethernet cable for internet connection
Network Architecture
- • Internet → Router → Pi (ethernet)
- • Pi creates WiFi hotspot (wlan0)
- • Users connect to Pi's WiFi network
- • Captive portal controls internet access
- • Dual-Band Wireless USB Adapter for improved connection capacity
Installation Commands
ZaaNet provides a zero-configuration installer that automatically sets up everything needed for your captive portal:
sudo wget https://zaanet.github.io/zaanet-installer/install.sh
chmod +x install.sh
sudo ./install.sh
Management Commands
After installation, use these commands to manage your ZaaNet host:
# Start captive portal mode
sudo zaanet start
# Check current status
sudo zaanet status
# View live logs
sudo zaanet logs
# Stop captive portal (return to normal internet)
sudo zaanet stop
# Restart services
sudo zaanet restart
# Enable auto-start on boot
sudo zaanet enable
# Show configuration details
sudo zaanet config
# Update to latest version
sudo zaanet update
Firewall & User Management
# Show authenticated users
sudo zaanet firewall status
# Manually grant internet access to IP
sudo zaanet firewall allow 192.168.100.105
# Revoke internet access
sudo zaanet firewall block 192.168.100.105
# List all firewall rules
sudo zaanet firewall list
How ZaaNet Works
System Architecture
WiFi Hotspot
Raspberry Pi creates isolated WiFi network using hostapd on 192.168.100.x subnet
Firewall Control
Firewall FILTER method blocks internet by default, whitelists paid users
Captive Portal
Node.js application serves portal, processes payments, manages user sessions
Payment Processing Flow
User Connects
Device joins WiFi, gets blocked by firewall
Portal Redirect
DNS hijacking redirects to captive portal
Payment Process
User pays via mobile money or card
Access Granted
IP whitelisted, internet access enabled
Network Configuration Details
Portal IP:
192.168.100.1DHCP Range:
192.168.100.100 - 192.168.100.200WiFi SSID:
ZaaNet-Portal (customizable)
Blockchain Integration
ZaaNet operates on Arbitrum One mainnet with a modular smart contract architecture ensuring transparent, secure, and automated operations:
ZaaNetNetwork Contract
registerNetwork()
- Register WiFi network with hosting fee paymentupdateNetwork()
- Modify pricing and network settingsgetHostNetworks()
- Retrieve host's registered networks
ZaaNetPayment Contract
processPayment()
- Process individual voucher payments to hostsprocessBatchPayments()
- Batch process up to 50 payments (90% gas savings)getRemainingDailyLimit()
- Check available daily withdrawal limits
ZaaNetAdmin Contract
setPlatformFee()
- Configure platform revenue sharing (1-20%)setHostingFee()
- Adjust network registration fees (0-100 USDT)emergencyDeactivateNetwork()
- Emergency network controls
Key Benefits
- Transparent Earnings: All payments tracked on-chain with real-time visibility
- Automated Payouts: Direct USDT transfers to host wallets upon voucher usage
- Gas Optimized: Batch processing reduces transaction costs by up to 90%
- Security Controls: Daily limits, emergency pause, and multi-operator governance
Frequently Asked Questions
General Questions
What if my Pi loses power?
ZaaNet is configured to auto-start on boot. When power is restored, the captive portal automatically resumes operation. User sessions and firewall rules are restored from the database. We recommend using a UPS for business-critical installations.
Business Questions
How do I receive payments?
Payments are processed daily to your registered wallet address via the ZaaNet Payment smart contract on the Arbitrum network. You can track real-time earnings through your host dashboard. ZaaNet takes a platform fee from each transaction, transparent on the blockchain.
Can I set my own prices?
Yes! You have full control over hourly/session rates. The system supports flexible pricing - you can offer different packages and adjust prices based on demand or local market conditions.
What are the ongoing costs?
Only your internet bill for your WiFi and electricity for the Raspberry Pi + USB WiFi Adapter for extension. ZaaNet charges a small percentage fee of transaction value - no monthly fees, setup costs, or hidden charges. You only pay when you earn.
Technical Questions
What hardware do I need?
Raspberry Pi 4 (4GB+ RAM recommended), microSD card (32GB+ Class 10), official power supply, USB WiFi adapter for extended capacity, and ethernet cable. The Pi connects to your router via ethernet and creates a WiFi hotspot for customers.
Do I need technical knowledge?
No! Our one-command installer handles everything automatically. Just run the installation commands, provide your WiFi name/SSID, and the system configures itself. The management commands are simple and user-friendly.
How does the captive portal work?
The captive portal runs on the Raspberry Pi. It intercepts user traffic, displays the payment portal, and manages user sessions. When a user connects, they are redirected to the portal where they can pay for access. Once payment is confirmed, their IP is whitelisted in the firewall, allowing internet access.
What if I have issues?
Use the sudo zaanet logs
command to view real-time system logs. You can also join our Telegram support group for community assistance. Detailed troubleshooting guides are available in the documentation.
Common Issues & Solutions
WiFi Network Not Visible
If users can't see your ZaaNet WiFi network:
# Restart ZaaNet sudo zaanet restart
# Check WiFi interface status
ip addr show wlan0
Portal Not Loading
If the captive portal doesn't appear:
# Check portal application status
# Test portal directly
curl -I http://192.168.100.1
Internet Access Issues
If paid users can't access the internet:
# Check firewall rules
sudo zaanet firewall status
# Test internet connectivity
ping -c 3 8.8.8.8
# Restart firewall
sudo systemctl restart zaanet-manager
Payment Issues
If payment processing fails:
# Check API connectivity
curl -I https://api.zaanet.xyz/health
# View payment logs
sudo tail -f /var/log/zaanet/payments.log
# Test database connection
sudo zaanet config test
sudo zaanet logs
to view real-time system logs, or join our Telegram support group for assistance from the community.Get Help & Connect
/var/log/zaanet-install.log
for detailed installation logs.