omnibase / booking
Stays booking for omnibase sites, built on omnisense/omnistay: hosts' listings with their calendars (blocked nights, minimum stays, prices per night and season), bookings held without double booking (symfony/lock) and paid through omnisense/omnitrade, reviews in both directions, guest-host messages,
Package info
github.com/glitchr-omnisense/omnibase-booking
Type:symfony-bundle
pkg:composer/omnibase/booking
Requires
- php: >=8.2
- doctrine/orm: ^2.15|^3.0
- omnibase/admin: dev-main
- omnibridge/symfony: 1.x-dev
- omnisense/omnibase: 5.0.*-dev
- omnisense/omnistay: 1.x-dev
- omnistay/local: 1.x-dev
- symfony/config: ^6.4|^7.0|^8.0
- symfony/dependency-injection: ^6.4|^7.0|^8.0
- symfony/form: ^6.4|^7.0|^8.0
- symfony/http-kernel: ^6.4|^7.0|^8.0
- symfony/lock: ^6.4|^7.0|^8.0
- symfony/security-bundle: ^6.4|^7.0|^8.0
Requires (Dev)
- phpunit/phpunit: ^10.5|^11.0|^12.0
Suggests
- omnisense/omnitrade: the payment of a booking (omnitrade/stripe: Stripe Checkout)
- omnisense/omnitravel: the journey to the stay (a later step)
- omnistay/amadeus: hotels searched beside the site's listings
Provides
None
Conflicts
None
Replaces
None
This package is auto-updated.
Last update: 2026-11-09 22:24:03 UTC
README
Stays booking for omnibase sites, built on omnisense/omnistay: hosts rent out their places, guests search them beside the hotels of other omnistay providers, book and pay, and both review each other.
- Entities:
Listing(what, where, how priced, what it accepts),ListingPhoto,Season,CalendarNight(a night blocked or priced on its own),Booking,Review(both directions),Message(a booking's thread),HostProfile,Payout. - The site's listings as an omnistay provider:
Stay\DoctrineListingStoreis omnistay/local's store;Stay\StayRegistryFactorybuilds the site'sOmnistay\Registryfrombooking.providers(local, amadeus...). - Calendar logic:
Calendar\HostCalendar(a month night by night, block, open, price nights); the rules - minimum stay, seasons, notice, check-in days - are omnistay/local's. - The booking flow:
Checkout\BookingFlow- quote, hold (under a lock per listing: symfony/lock; no night sold twice), pay (Payment\BookingPayments, omnitrade: Stripe Checkout), complete, a host's answer to a request, cancellation with the policy's penalty and refund;booking:maintainlets expired holds go, completes past stays, releases payouts. - Reviews in both directions, blind until both are written (
Review\Reviews); messages between guest and host (Conversation\Conversations); payouts less a host fee (Payout\Payouts). - Back office: omnibase/admin screens for every entity (bookings, payouts and messages
read-only); voters
BOOKING_VIEW,BOOKING_MESSAGE,BOOKING_CANCEL,BOOKING_RESPOND,LISTING_MANAGE. - Translations: English, French, Japanese.
The site's pages (search, a place, trips, the host space) are the application's: the bundle gives the services, the entities, the payment's return and webhook routes and the back office. solstay is the reference site. Manual: docs/index.md. License: MIT.