Booking a stay usually means hunting: a dozen tabs, the same room at five prices. StayRequest turns it around. The traveller says what they want once, and the places to stay compete to answer.
The idea
StayRequest is a reverse marketplace. Instead of browsing prices, the traveller publishes a request: where, when (give or take a few days), who is coming and how much they want to spend. They pick up to five places, and those places answer with an offer.
Accepting an offer is free and confirms the booking straight away. The guest pays at the property. The hotels carry the cost, and only when a stay is completed.
noloop designed and built the whole platform: the traveller app in Greek and English, the API behind it, the panel hotels answer from, the admin panel the StayRequest team runs, and the billing that ties it together.
One request, five offers
The traveller's side is a single slip: where, when, who and how much. Everything else follows from it.

Say what you want
A destination or an area, dates with a day or two of flexibility, guests, rooms and pets. The budget covers the whole stay, with a per-night hint so nobody has to do the maths.

Pick up to five places
Every property in the area is listed. Choose up to five and they all receive the same request. Paid placements are labelled as promoted, as EU platform rules require.

Offers arrive
Each place answers with a price, a room type, breakfast and cancellation terms. Offers stay valid for 48 hours and appear live on screen, with a push notification when the app is closed.

See where it went
A delivery trail shows, for every property, whether it saw the request, declined it or sent an offer. Nobody is left wondering whether anyone read it.

Booked
One tap confirms the stay. The voucher carries a booking code, the property’s phone and e-mail, directions and an add-to-calendar file. The guest pays at the property.
For hotels: one e‑mail, one offer
Hotels install nothing and remember no password. A new request arrives by e-mail, and one tap signs the property into its panel through a magic link, straight onto that request. An offer needs a price, a room type and the terms. Check-in and check-out are held to the traveller’s dates and flexibility, so an offer can never miss the request.
The same panel runs the listing (Greek and English text, a photo gallery, a location picked on Google Maps), the bookings and the billing, with roles for owners, administrators and receptionists.

Paid only when guests stay
8%
A success fee on completed stays, due three days after check-out. No fixed fee, no sign-up cost and nothing for cancellations or no-shows. Travellers pay nothing at all.
Half the usual platform fee
StayRequest sets its 8% against the 15–25% that well-known booking platforms usually charge. Drag the booking value and see what stays with the property.
You pay · 8%
€40
Typical platform · 15–25%
€75–€125
Kept by the property: +€35–€85 per stay
The business model, built in
The fee is not a spreadsheet at the end of the month. The platform runs it:
- Each completed stay creates a commission, and the property gets one statement on the 1st of every month, with 15 days to pay by card (Viva Wallet) or bank transfer.
- Properties can buy a week (€19) or a month (€59) of promoted placement, at most three per destination, labelled under EU Regulation 2019/1150 and the Omnibus Directive.
- The admin panel follows destinations, hotels, requests, bookings, commissions, statements and revenue in one place.

Under the hood
- Live, with a safety net
- Offers reach the traveller over WebSockets with Laravel Reverb and Laravel Echo. If the socket drops, the app quietly checks again every 30 seconds.
- Push without an app store
- Web Push with VAPID keys, opt-in per device, plus step-by-step help for adding the app to an iPhone home screen.
- Search in both alphabets
- A MySQL trigger folds the Greek and English names of every place into one full-text index, so typing “paros” finds Πάρος.
- An event-driven core
- Seven domain events and six listeners move every request, offer and booking through its states. Seven queued notifications go out by e-mail and push, in Greek or English.
- Jobs that run themselves
- Scheduled commands expire unanswered requests every hour, mark fees due every night and issue statements on the first of the month.
- Sign-in that stays out of the way
- E-mail with verification, Google sign-in and One Tap for travellers, magic links for hotels, and an admin panel open only to verified staff addresses.
- Tested and watched
- 58 backend feature tests, Jest and Playwright on the front end, and Sentry on both sides.
Every screen, in two languages
Greek is the default and English is one tap away: the interface, the e-mails and every property’s own description. The app installs from the browser, follows the system’s light or dark theme and shows prices in euros or dollars.

Greek by default

Destinations

Check before sending

Your requests

After booking

English, one tap away
A page that sells to hotels too
The marketplace needs both sides, so hotels get their own page: the model in four steps, the fee on a €500 booking next to a typical platform, the promotion packages and six straight answers, marked up as FAQ data for search engines.

What we delivered
- A traveller app built with Next.js as an installable PWA, in Greek and English
- A Laravel API with real-time updates, Web Push and an event-driven booking flow
- A hotelier panel and an admin panel on Filament
- Commissions, monthly statements, card payments and paid promotion
- Bilingual transactional e-mails for every step of a booking
- SEO from day one: hreflang, structured data, dynamic share images and a sitemap
