Online booking widget â embeddable on any agency site
70% of Hungarian travel-agency websites run on WordPress, 15% on Wix, 10% on plain static HTML and 5% on bespoke builds. The customer wants to book on the agency's own site â not on a third-party platform. The Travelium booking widget solves exactly that: an embeddable component that runs in every environment.
How the embed works
Two lines of code go into the agency site:
<div id="travelium-widget" data-tenant="agency-slug"></div>
<script src="https://widget.travelium.hu/v1/loader.js" async></script>
The loader recognises the tenant id, fetches the matching branding config (logo, colours, font) and renders an iframe-free React component. Avoiding iframes is intentional: from an SEO standpoint the content stays indexable, and it doesn't clash with the host page's CSP.
White-label theme
Every agency gets an admin panel where they can set:
- Primary + secondary colour (hex)
- Logo (SVG or PNG)
- Border radius (0â24 px)
- Font (Google Fonts or inherit the host's
font-family) - Action button copy (HU/EN/DE)
The widget visually becomes the agency's own brand in 5 minutes. The customer does not feel third-party software running underneath.
The booking flow step by step
- Search â destination, dates, traveller count.
- Result list â hotel + flight combinations, sorted by price.
- Package details â photos, description, cancellation terms.
- Customer data â contact + traveller details (name, DOB, passport optional).
- GDPR + ToS consent â two separate checkboxes, mandatory.
- Deposit payment â 20â30% online (Stripe or SimplePay), remainder paid 30 days before departure.
- Confirmation â voucher by email, with calendar invite.
Between step 4 and 5 sits a Stripe Element or SimplePay redirect; PCI-DSS compliant, the agency never sees a card number.
Deposit + final-payment split
The Hungarian agency norm: 20â30% deposit at booking, the remainder 30 days before departure. The widget handles this natively: on Stripe's side two separate PaymentIntents are created â the first captures immediately, the second sits in requires_capture. At the 30-day deadline the Travelium backend triggers capture automatically, or if the card has expired meanwhile, it emails the customer for new details.
Conversion number: 4.2%
Based on 6 months of data from 8 Hungarian agencies: the widget's average conversion (search â successful booking) is 4.2%. For comparison: generic OTAs (Booking, Expedia) sit around 1.8%.
Why higher? Because the visitor already landed on a specific agency's site â their buying intent is pre-qualified. The widget simply doesn't waste that intent with too many steps, foreign UI or SSO pop-ups.
Mobile-first reality
64% of traffic at the 8 Hungarian agencies arrives on mobile. The widget's React components are built mobile-first: the search form collapses to a single column, results are cards (not tables), the payment screen offers Apple Pay and Google Pay alongside a classic card form. The total JS bundle is 84 kB gzipped â loads in 1.1 seconds on an average Hungarian 4G connection.
Accessibility: WCAG 2.1 AA compliance audited. Keyboard navigation works across the entire flow, screen readers (VoiceOver, NVDA) tested on all 7 steps. This is rare at Hungarian agencies but an EU tender condition and a rising market expectation.
Lesson
An own booking widget is not a branding luxury. Its measurable conversion lift is 2.3x over a generic OTA. The key: fast load (iframe-free), CSP-friendly embed, reliable deposit flow, and visual unity with the agency's brand.