# Réserver un vol (staff) `VERIFIED IN CODE` · live nav label **Réserver un vol** · `SCREENSHOT REQUIRED` ## 1. Purpose Staff flight funnel using the same B2C REST as the public `/flights/` widget. Return hash `#book-flight` (not `/resa-confirmation/`). ## 2. Screenshot `SCREENSHOT REQUIRED` / `LIVE SCREEN NOT CAPTURED` ## 3. Navigation Cockpit: https://alyatrip.com/function-user-settings/#book-flight Source: `FrontDashboard/RenderHelpers.php` nav. ## 4. Fields NOT DETERMINED FROM CURRENT EVIDENCE beyond public flight form (IATA, dates, occupancy/passengers) — staff screen not captured. ## 5. Buttons Search / continue / Pay as in `alya-front-book-flight.js`. Exact labels: SCREENSHOT REQUIRED. ## 6. Filters NOT DETERMINED FROM CURRENT EVIDENCE on the staff screen. ## 7. Actions Search → verify → extras (before book) → prebook → pay → book. Payment SDK not restyled vs public. ## 8. Workflow Same as traveler flight path, with staff session and return to cockpit hash. ## 9. REST/API Flights: `/alya/v1/flights/airports`, `/search`, `/verify`, `/prebook`, `/book`. Limits in rest-api-reference.md. ## 10. Database `alya_hs_flight_sessions` on success. CPT after book. This pass: no successful staff flight book. ## 11. Permissions Book gate (`edit_alya_bookings`). Agency Staff: **no**. ## 12. Business meaning Lets agency book flights for a traveler without using the public page chrome. ## 13. Limitations Not live-tested this pass. Public nonce expiry also applies if nonce is stale. Post-book extras: NOT FOUND. ## 14. Evidence status `VERIFIED IN CODE` · live visual `REQUIRES ACCESS` ## Related [flight-booking-complete.md](../user-guide/flight-booking-complete.md) · [user-guide/index.html](../user-guide/index.html)