Stripe Integration
Enable paid WiFi access by accepting credit card payments directly on your captive portal using Stripe's secure payment platform.
Overview
The Stripe integration allows you to:
- Accept one-time payments for WiFi access
- Create subscription plans for recurring access
- Process payments securely via Stripe's PCI-compliant platform
- Offer multiple access tiers (time-based or data-based)
Prerequisites
- IronWiFi account with captive portal configured
- Stripe account (free to create at stripe.com)
- Stripe API keys (publishable and secret keys)
Stripe Account Setup
Create Stripe Account
- Go to stripe.com and sign up
- Complete account verification
- Enable live mode when ready for production
Get API Keys
- Log in to Stripe Dashboard
- Go to Developers > API keys
- Copy:
- Publishable key: or
pk_live_...pk_test_... - Secret key: or
sk_live_...sk_test_...
- Publishable key:
Use test keys during development, live keys for production.
IronWiFi Configuration
Step 1: Add Stripe Provider
- Log in to IronWiFi Console
- Navigate to Networks > Captive Portals
- Select your captive portal
- Go to Authentication Providers
- Click Add Provider > Stripe
Step 2: Configure API Keys
Enter your Stripe credentials:
- Publishable Key: Your Stripe publishable key
- Secret Key: Your Stripe secret key
- Webhook Secret: Generated after webhook setup
Step 3: Create Access Plans
Create plans that users can purchase:
- In the Stripe provider settings, click Add Plan
- Configure:
- Name: Display name (e.g., "1 Hour Access")
- Price: Amount in cents (e.g., 500 for $5.00)
- Currency: USD, EUR, etc.
- Duration: Access time (minutes)
- Data Limit: Optional data cap (MB)
Example plans:
| Plan | Price | Duration | Data |
|---|---|---|---|
| 1 Hour | $2.00 | 60 min | Unlimited |
| Day Pass | $5.00 | 1440 min | Unlimited |
| Week Pass | $15.00 | 10080 min | 10 GB |
Step 4: Configure Webhook
Set up webhook for payment confirmations:
- In Stripe Dashboard, go to Developers > Webhooks
- Click Add endpoint
- Enter webhook URL from IronWiFi console
- Select events:
checkout.session.completedpayment_intent.succeededpayment_intent.payment_failed
- Copy the Signing secret to IronWiFi
Payment Flow
- User connects to WiFi and sees captive portal
- User selects a plan and clicks "Buy"
- Stripe Checkout opens (secure, hosted by Stripe)
- User enters payment details
- On success, IronWiFi authorizes the user
- User receives confirmation and WiFi access
Customization
Splash Page Integration
Add Stripe payment buttons to your splash page:
Was this page helpful?