Schedule hotel pickup
book_hotel_pickupSchedule a laundry pickup for a hotel guest. Creates an order without requiring a Fold account. Returns an order tracking code (FHL-XXXXXX) and a Stripe payment-setup URL. The user must visit the Stripe URL to enter their card before pickup. The card is NOT charged when scheduling — only after intake when the actual price is known.
Hotel guest pricing: wash & fold is $49.99 flat for up to 15 lb, then $2.65/lb over 15 lb; dry cleaning is priced per garment. $49.99 hotel order minimum (covers wash & fold and dry cleaning — smaller orders are billed at $49.99). A flat $9.99 hotel service charge is added to every hotel order on top of that, and the $30 Express surcharge (when chosen) is also on top — neither counts toward the minimum.
Return-time tiers: • same_day — guest must drop the bag before 9 AM Pacific. Standard same-day return (back by 8 PM), no surcharge. Covers wash & fold AND dry cleaning. • express_same_day — drop between 9 AM and 12 PM. ⚡ Express same-day (back by 8 PM tonight). $30 flat surcharge. • next_day — drop any time. Standard next-day return (back by 8 PM tomorrow). No surcharge. Most common choice. • flexible — 48+ hours. No surcharge.
Same-day options are not available after 12 PM Pacific time (Los Angeles / San Francisco); requests after noon are next_day or later. The server enforces these cut-offs on its own clock: a same_day request between 9 AM and noon is refused with a message to use express_same_day (+$30) — confirm the $30 with the guest before retrying — and any same-day request after noon is refused (use next_day). It never adds a surcharge or changes the day silently.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| notes | No | Optional special instructions (e.g. "no fabric softener", "handle silk delicately"). | |
| services | Yes | What services to perform. Most guests pick WASH_AND_FOLD. | |
| hotelName | Yes | Hotel display name (from search_hotels result). Required. | |
| guestEmail | Yes | Guest email (used for tracking + receipts) | |
| guestPhone | Yes | Guest phone in E.164 format (+1XXXXXXXXXX) or US 10-digit | |
| roomNumber | Yes | Guest room number at the hotel | |
| hotelPlaceId | Yes | Google Place ID for the hotel, obtained from search_hotels. Required. | |
| guestLastName | Yes | Guest last name | |
| guestFirstName | Yes | Guest first name | |
| idempotencyKey | No | OPTIONAL — pass a unique identifier (UUID recommended) to make this call safe to retry. If we have already seen this key, we return the EXISTING order code instead of creating a duplicate. Highly recommended for production agents that may retry on network errors. | |
| returnPreference | Yes | When the guest wants the laundry back. same_day requires drop-off before 9 AM (no surcharge). express_same_day works for drop-off between 9 AM and 12 PM noon (+$30 surcharge, back by 8 PM tonight). next_day is the typical choice — drop any time, back by 8 PM tomorrow (no surcharge). flexible = 48hr+. Pick same_day or express_same_day only if local time clearly allows it. |