Captive Portal

Journey

A Journey defines the complete guest experience on your captive portal — which login methods are available, what page design is shown, and where users are redirected after authentication. Every captive portal zone is mapped to a Journey.

'alt' => 'Dashboard overview', 'caption' => 'The default Kiwire dashboard layout', 'screenshot' => true, 'class' => '', ]) Drop images into: public/assets/img/docs/{page}/{filename} --}}
Image not uploaded yet public/assets/img/docs/journey/overview.png
The Journey list — each row shows the name, slug, active status, assigned template, and zone count.

What Is a Journey?

When a guest connects to your WiFi and opens a browser, Kiwire intercepts the request and serves a captive portal page. The Journey determines:

  • Which portal template (visual design) the guest sees
  • Which login methods are available on that page (e.g., username/password, Google, SMS OTP)
  • Where the guest is redirected after successful login

A single tenant can have multiple Journeys — for example, a "Staff" journey with Active Directory login and a "Guest" journey with click-to-connect. Each zone is mapped to exactly one Journey at a time.

Journey Fields

FieldDescription
nameDisplay name shown in the admin interface and zone mapping picker.
slugURL-safe identifier used in portal routing (e.g., guest-wifi). Must be unique per tenant. Auto-generated from the name but can be customised.
is_activeEnable or disable the journey. Inactive journeys are not served to guests — zones mapped to an inactive journey will fall back to the tenant default, if configured.
template_idThe Portal Designer template to display. Only Published templates appear in this picker.
login_methodsJSON array of the login method IDs enabled for this journey. The order in this array controls the display order on the portal page.
redirect_urlThe URL guests are sent to after a successful login. Leave blank to redirect to the guest's original requested URL.
descriptionInternal admin notes. Not shown to guests.

Login Method Configuration

Each Journey has its own login method panel within the edit form. You can:

  • Toggle which methods appear on the portal page for this specific journey
  • Reorder methods by dragging — the order here is the order guests see them
  • Override labels — customise the button or tab label per journey (e.g., rename "Username/Password" to "Member Login" for a specific hotel property)

Login methods must be configured globally in Login Methods before they can be toggled on for a Journey. A method toggle here only controls visibility — the underlying method settings (API keys, RADIUS config, etc.) are managed in the Login Methods module.

If a login method is disabled globally in the Login Methods module, it will not appear on the portal even if it is toggled on in a Journey.

Zone Assignment

The Journey edit form shows a Zones count — the number of network zones currently using this journey. Clicking the count opens a summary list of those zones.

Zone-to-Journey mapping is managed in the Zone Mapping module, not here. This read-only count is provided as a quick reference so you know how many zones would be affected by changes to this journey.

Changing the template_id or login_methods on a Journey takes effect immediately for all zones mapped to it — there is no staging or scheduled publishing at the Journey level.

Journey Preview

Click Preview on a Journey to open the portal renderer for that specific Journey. The preview uses the assigned template and resolves login method configuration, giving you an accurate representation of what a guest will see without needing to be on the WiFi network.

For a fully interactive test (including logging in with test credentials and following the success flow), use the Simulation module.

'alt' => 'Dashboard overview', 'caption' => 'The default Kiwire dashboard layout', 'screenshot' => true, 'class' => '', ]) Drop images into: public/assets/img/docs/{page}/{filename} --}}
Image not uploaded yet public/assets/img/docs/journey/preview.png
Journey preview — the portal page rendered exactly as guests will see it, with all enabled login methods shown.

Available Actions

ActionDescription
CreateOpen the create form in the side panel. Name, slug, and template are required.
EditModify any field including login method toggles and redirect URL.
PreviewOpen the portal renderer for this journey in a new browser tab.
CloneDuplicate the journey with all its settings under a new name and slug. Useful for creating similar journeys for different zones without starting from scratch.
DeletePermanently remove the journey. Journeys that have zones actively mapped to them cannot be deleted — reassign those zones first.

Tips

Create a Default Journey with broad login method support and assign it to your main guest zones. Then create specialist journeys (e.g., staff-only Active Directory login) and map them to restricted zones.

Use descriptive slugs — the slug appears in the portal URL and in Simulation mode. For example, hotel-lobby-guest is far easier to identify in logs than journey-003.

Required Permissions

view-journeys · create-journeys · update-journeys · delete-journeys