Deploy Openfront Travel Agent
Opensource Travefy alternative based on Next.js and Keystone.js
Just deployed
/var/lib/postgresql/data
openfront-travel-agent
Just deployed
Storage
Bucket
Just deployed
Deploy and Host Openfront Travel Agent with Railway
Openfront Travel Agent is a self-hostable back office and client site for independent travel advisors and small host agencies. Advisors turn inquiries into proposals, book supplier components, collect client payments, and track supplier commission through to receipt.
About Hosting Openfront Travel Agent
This template provisions the application from its GitHub repository, PostgreSQL, and a private native Railway Bucket named Storage. The database starts empty; no demo records or reusable credentials are included. After deployment, open /dashboard/init to create the first admin, then load the complete or basic setup template from the sidebar.
DATABASE_URL references Postgres and the five S3_* variables reference the Storage bucket. Generated per deployment: SESSION_SECRET. Other references: SMTP_STORE_LINK. Defaults: NODE_ENV=production, PUBLIC_SIGNUPS_ALLOWED=false.
Optional and blank until you configure the provider: NEXT_PUBLIC_STRIPE_KEY, SMTP_FROM, SMTP_HOST, SMTP_PASSWORD, SMTP_PORT, SMTP_USER, STRIPE_PUBLISHABLE_KEY, STRIPE_SECRET_KEY, STRIPE_WEBHOOK_SECRET.
The app gets a Railway-generated public domain on port 8080. No custom domains are included.
Admin Dashboard
A trip workspace covers overview, travelers, proposals, components, itinerary, payments, client funds, commissions, documents, and tasks. Staff also work from Inquiries, Approvals, Commissions boards, Clients and travelers, Suppliers, Invoices, Tasks, Payment providers, and Settings.
Client Pages
Visitors browse destinations and send an inquiry. Clients open a private proposal link, choose an option and accept it with their name, view the itinerary, and pay invoices by card through Stripe. A booking lookup finds a trip by email and code.
Trips, Proposals & Bookings
- Proposals with options and line items that become trip components on acceptance.
- Supplier components (hotels, cruises, tours, flights, transfers, rail, insurance) with confirmation numbers and payment schedules.
- Day-by-day itineraries.
Client Funds & Commissions
- Client invoices and a per-trip client funds ledger that can never go below zero.
- Expected, invoiced, received, short-paid, and written-off supplier commission, with an append-only advisor commission ledger.
- Refunds to the original card payment, with manager approval above a threshold.
Common Use Cases
- Trips, Proposals & Bookings
- Client Funds & Commissions
- Inquiry to Itinerary
Dependencies for Openfront Travel Agent Hosting
The app needs a PostgreSQL database and S3-compatible object storage. Both are provisioned by this template.
Deployment Dependencies
- openfront-travel-agent on GitHub
- Full README and onboarding instructions
- Documentation
- Railway Buckets
Implementation Details
Next.js and Keystone 6 with a GraphQL API, Prisma, and PostgreSQL. Migrations run at start (npm run migrate && next start). Payments, email, and other external providers need their own operator configuration; this template does not activate them. For card payments, point a Stripe webhook at /api/integrations/payment/pp_stripe/webhook.
Why Deploy Openfront Travel Agent on Railway?
Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.
By deploying Openfront Travel Agent on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.
Template Content
openfront-travel-agent
openshiporg/openfront-travel-agentStorage
Bucket