[{"data":1,"prerenderedAt":692},["ShallowReactive",2],{"doc:\u002Fv\u002F2026.3\u002Fscheduling\u002Fconfigure-a-service-for-online-booking":3},{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":8,"description":9,"section":10,"version":11,"lastUpdated":12,"body":13,"_type":686,"_id":687,"_source":688,"_file":689,"_stem":690,"_extension":691},"\u002Fv\u002F2026.3\u002Fscheduling\u002Fconfigure-a-service-for-online-booking","scheduling",false,"","Configure a service for online booking","Turn on online booking for a service and set duration, buffers, notice, hosts, location, deposits, cancellation policy, email and text reminders, and intake questions.","Scheduling","2026.3","2026-09-07",{"type":14,"children":15,"toc":673},"root",[16,24,31,77,89,95,214,220,232,242,290,307,313,318,331,337,407,412,424,430,435,463,468,474,512,518,596,602,607,612,618,654,664],{"type":17,"tag":18,"props":19,"children":20},"element","p",{},[21],{"type":22,"value":23},"text","Every rule that shapes an online booking lives on the service itself: how long it takes, who can deliver it, where it happens, whether the client pays up front, and what they must tell you. Booking pages only choose which of these services to show, so configure the service first.",{"type":17,"tag":25,"props":26,"children":28},"h2",{"id":27},"open-a-services-online-booking-settings",[29],{"type":22,"value":30},"Open a service's online booking settings",{"type":17,"tag":32,"props":33,"children":34},"ol",{},[35,49,61,72],{"type":17,"tag":36,"props":37,"children":38},"li",{},[39,41,47],{"type":22,"value":40},"Open ",{"type":17,"tag":42,"props":43,"children":44},"strong",{},[45],{"type":22,"value":46},"Products",{"type":22,"value":48}," and select a service-type product. Physical and digital products cannot be booked online.",{"type":17,"tag":36,"props":50,"children":51},{},[52,54,59],{"type":22,"value":53},"On the product, open ",{"type":17,"tag":42,"props":55,"children":56},{},[57],{"type":22,"value":58},"Configure booking",{"type":22,"value":60},".",{"type":17,"tag":36,"props":62,"children":63},{},[64,66,71],{"type":22,"value":65},"Turn on ",{"type":17,"tag":42,"props":67,"children":68},{},[69],{"type":22,"value":70},"Accept public bookings",{"type":22,"value":60},{"type":17,"tag":36,"props":73,"children":74},{},[75],{"type":22,"value":76},"Work through each section below, then save.",{"type":17,"tag":18,"props":78,"children":79},{},[80,82,87],{"type":22,"value":81},"Once booking is on, the product card's switch reads ",{"type":17,"tag":42,"props":83,"children":84},{},[85],{"type":22,"value":86},"Accept bookings",{"type":22,"value":88},". Turn it off to stop offering the service online.",{"type":17,"tag":25,"props":90,"children":92},{"id":91},"set-the-appointment-basics",[93],{"type":22,"value":94},"Set the appointment basics",{"type":17,"tag":96,"props":97,"children":98},"table",{},[99,118],{"type":17,"tag":100,"props":101,"children":102},"thead",{},[103],{"type":17,"tag":104,"props":105,"children":106},"tr",{},[107,113],{"type":17,"tag":108,"props":109,"children":110},"th",{},[111],{"type":22,"value":112},"Setting",{"type":17,"tag":108,"props":114,"children":115},{},[116],{"type":22,"value":117},"What it does",{"type":17,"tag":119,"props":120,"children":121},"tbody",{},[122,136,149,162,175,188,201],{"type":17,"tag":104,"props":123,"children":124},{},[125,131],{"type":17,"tag":126,"props":127,"children":128},"td",{},[129],{"type":22,"value":130},"Duration",{"type":17,"tag":126,"props":132,"children":133},{},[134],{"type":22,"value":135},"How long the appointment lasts and how much calendar time it blocks",{"type":17,"tag":104,"props":137,"children":138},{},[139,144],{"type":17,"tag":126,"props":140,"children":141},{},[142],{"type":22,"value":143},"Slot interval",{"type":17,"tag":126,"props":145,"children":146},{},[147],{"type":22,"value":148},"How far apart the offered start times are",{"type":17,"tag":104,"props":150,"children":151},{},[152,157],{"type":17,"tag":126,"props":153,"children":154},{},[155],{"type":22,"value":156},"Buffer before \u002F Buffer after",{"type":17,"tag":126,"props":158,"children":159},{},[160],{"type":22,"value":161},"Time kept free before and after each appointment so consecutive bookings do not touch",{"type":17,"tag":104,"props":163,"children":164},{},[165,170],{"type":17,"tag":126,"props":166,"children":167},{},[168],{"type":22,"value":169},"Minimum notice",{"type":17,"tag":126,"props":171,"children":172},{},[173],{"type":22,"value":174},"How far in advance a booking must be made; times inside this window are not offered",{"type":17,"tag":104,"props":176,"children":177},{},[178,183],{"type":17,"tag":126,"props":179,"children":180},{},[181],{"type":22,"value":182},"Booking window",{"type":17,"tag":126,"props":184,"children":185},{},[186],{"type":22,"value":187},"How far into the future the calendar opens",{"type":17,"tag":104,"props":189,"children":190},{},[191,196],{"type":17,"tag":126,"props":192,"children":193},{},[194],{"type":22,"value":195},"Daily limit",{"type":17,"tag":126,"props":197,"children":198},{},[199],{"type":22,"value":200},"The most bookings of this service accepted on one day",{"type":17,"tag":104,"props":202,"children":203},{},[204,209],{"type":17,"tag":126,"props":205,"children":206},{},[207],{"type":22,"value":208},"Quantity range",{"type":17,"tag":126,"props":210,"children":211},{},[212],{"type":22,"value":213},"The lowest and highest quantity one booking can cover, and whether clients can choose the quantity themselves",{"type":17,"tag":25,"props":215,"children":217},{"id":216},"choose-hosts-and-routing",[218],{"type":22,"value":219},"Choose hosts and routing",{"type":17,"tag":18,"props":221,"children":222},{},[223,225,230],{"type":22,"value":224},"Choose the team members who can deliver the service. Availability is calculated from each eligible host's hours, so a service with no eligible hosts offers no times. A host's approved time off and workspace holidays, both set in ",{"type":17,"tag":42,"props":226,"children":227},{},[228],{"type":22,"value":229},"Time Off",{"type":22,"value":231}," settings, block bookings on those days automatically, and a host's recurring calendar events block the times they cover.",{"type":17,"tag":18,"props":233,"children":234},{},[235,240],{"type":17,"tag":42,"props":236,"children":237},{},[238],{"type":22,"value":239},"Assignment strategy",{"type":22,"value":241}," decides who receives a booking when the booking page assigns hosts automatically:",{"type":17,"tag":96,"props":243,"children":244},{},[245,261],{"type":17,"tag":100,"props":246,"children":247},{},[248],{"type":17,"tag":104,"props":249,"children":250},{},[251,256],{"type":17,"tag":108,"props":252,"children":253},{},[254],{"type":22,"value":255},"Strategy",{"type":17,"tag":108,"props":257,"children":258},{},[259],{"type":22,"value":260},"Behavior",{"type":17,"tag":119,"props":262,"children":263},{},[264,277],{"type":17,"tag":104,"props":265,"children":266},{},[267,272],{"type":17,"tag":126,"props":268,"children":269},{},[270],{"type":22,"value":271},"First available",{"type":17,"tag":126,"props":273,"children":274},{},[275],{"type":22,"value":276},"The booking goes to the first eligible host who is free at the chosen time",{"type":17,"tag":104,"props":278,"children":279},{},[280,285],{"type":17,"tag":126,"props":281,"children":282},{},[283],{"type":22,"value":284},"Round-robin",{"type":17,"tag":126,"props":286,"children":287},{},[288],{"type":22,"value":289},"Bookings rotate across eligible hosts so the work is shared evenly",{"type":17,"tag":18,"props":291,"children":292},{},[293,294,299,301,306],{"type":22,"value":65},{"type":17,"tag":42,"props":295,"children":296},{},[297],{"type":22,"value":298},"Manual confirmation",{"type":22,"value":300}," when a person should look at each booking before it is final. The calendar event is still created, but it stays tentative until your team confirms it from the ",{"type":17,"tag":42,"props":302,"children":303},{},[304],{"type":22,"value":305},"Booking Queue",{"type":22,"value":60},{"type":17,"tag":25,"props":308,"children":310},{"id":309},"set-the-location",[311],{"type":22,"value":312},"Set the location",{"type":17,"tag":18,"props":314,"children":315},{},[316],{"type":22,"value":317},"Choose where the appointment takes place: In person, Phone, Google Meet, or Custom.",{"type":17,"tag":18,"props":319,"children":320},{},[321,323,330],{"type":22,"value":322},"For Google Meet, the host must have connected Google Meet to their account; the meeting link is then created automatically for each booking. See ",{"type":17,"tag":324,"props":325,"children":327},"a",{"href":326},"\u002Fv\u002F2026.3\u002Fadmin\u002Fintegrations-and-api\u002F",[328],{"type":22,"value":329},"Integrations and API",{"type":22,"value":60},{"type":17,"tag":25,"props":332,"children":334},{"id":333},"take-a-deposit-or-full-payment",[335],{"type":22,"value":336},"Take a deposit or full payment",{"type":17,"tag":96,"props":338,"children":339},{},[340,356],{"type":17,"tag":100,"props":341,"children":342},{},[343],{"type":17,"tag":104,"props":344,"children":345},{},[346,351],{"type":17,"tag":108,"props":347,"children":348},{},[349],{"type":22,"value":350},"Option",{"type":17,"tag":108,"props":352,"children":353},{},[354],{"type":22,"value":355},"What the client pays at booking time",{"type":17,"tag":119,"props":357,"children":358},{},[359,375,391],{"type":17,"tag":104,"props":360,"children":361},{},[362,370],{"type":17,"tag":126,"props":363,"children":364},{},[365],{"type":17,"tag":42,"props":366,"children":367},{},[368],{"type":22,"value":369},"No payment required",{"type":17,"tag":126,"props":371,"children":372},{},[373],{"type":22,"value":374},"Nothing; the booking is confirmed or queued without a payment step",{"type":17,"tag":104,"props":376,"children":377},{},[378,386],{"type":17,"tag":126,"props":379,"children":380},{},[381],{"type":17,"tag":42,"props":382,"children":383},{},[384],{"type":22,"value":385},"Deposit required",{"type":17,"tag":126,"props":387,"children":388},{},[389],{"type":22,"value":390},"A fixed amount or a percentage of the service price, in the currency you choose",{"type":17,"tag":104,"props":392,"children":393},{},[394,402],{"type":17,"tag":126,"props":395,"children":396},{},[397],{"type":17,"tag":42,"props":398,"children":399},{},[400],{"type":22,"value":401},"Full payment required",{"type":17,"tag":126,"props":403,"children":404},{},[405],{"type":22,"value":406},"The whole service price",{"type":17,"tag":18,"props":408,"children":409},{},[410],{"type":22,"value":411},"Deposits and full payments are collected through Stripe. Connect Stripe first — otherwise visitors see an error at checkout. When a payment is required, the client's slot is held for 30 minutes while they pay. If the payment does not complete in time, the hold expires, the time is released, and the request is marked expired and leaves the Booking Queue.",{"type":17,"tag":18,"props":413,"children":414},{},[415,417,423],{"type":22,"value":416},"Refunds are automatic in three cases: the client cancels within the service's cancellation policy, your team declines the booking, or the payment arrives after its hold had already expired. The full payment goes back to the original payment method and takes 5–10 business days to appear. There are no partial refunds, and a booking your team cancels from the calendar is not refunded automatically. See ",{"type":17,"tag":324,"props":418,"children":420},{"href":419},"\u002Fv\u002F2026.3\u002Fscheduling\u002Fmanage-booking-requests\u002F",[421],{"type":22,"value":422},"Manage booking requests",{"type":22,"value":60},{"type":17,"tag":25,"props":425,"children":427},{"id":426},"set-the-client-policy",[428],{"type":22,"value":429},"Set the client policy",{"type":17,"tag":18,"props":431,"children":432},{},[433],{"type":22,"value":434},"Decide what a client can change after booking:",{"type":17,"tag":436,"props":437,"children":438},"ul",{},[439,451],{"type":17,"tag":36,"props":440,"children":441},{},[442,444,449],{"type":22,"value":443},"Whether the client can cancel, and the notice a cancellation needs. ",{"type":17,"tag":42,"props":445,"children":446},{},[447],{"type":22,"value":448},"Cancel notice minutes",{"type":22,"value":450}," is counted in minutes; the default, 1440 minutes, is 24 hours.",{"type":17,"tag":36,"props":452,"children":453},{},[454,456,461],{"type":22,"value":455},"Whether the client can reschedule, and the notice a reschedule needs. ",{"type":17,"tag":42,"props":457,"children":458},{},[459],{"type":22,"value":460},"Reschedule notice minutes",{"type":22,"value":462}," works the same way and also defaults to 1440 minutes.",{"type":17,"tag":18,"props":464,"children":465},{},[466],{"type":22,"value":467},"Both actions are offered through the manage link in the client's confirmation email. Once the notice window has passed, the client can no longer cancel or reschedule from the manage link.",{"type":17,"tag":25,"props":469,"children":471},{"id":470},"configure-notifications",[472],{"type":22,"value":473},"Configure notifications",{"type":17,"tag":436,"props":475,"children":476},{},[477,487,497,502],{"type":17,"tag":36,"props":478,"children":479},{},[480,485],{"type":17,"tag":42,"props":481,"children":482},{},[483],{"type":22,"value":484},"Email clients",{"type":22,"value":486},": whether the client receives booking emails such as the confirmation with its manage link.",{"type":17,"tag":36,"props":488,"children":489},{},[490,495],{"type":17,"tag":42,"props":491,"children":492},{},[493],{"type":22,"value":494},"Email assigned teammate",{"type":22,"value":496},": whether the assigned host receives an email for each new booking, and again when the client cancels or reschedules through their manage link. Only the host receives it, not the whole team.",{"type":17,"tag":36,"props":498,"children":499},{},[500],{"type":22,"value":501},"Reminder minutes: when reminder emails reach the client before the appointment, as a comma-separated list of minutes. The defaults, 1440 and 60, are 24 hours and 1 hour before; adjust them to suit the service.",{"type":17,"tag":36,"props":503,"children":504},{},[505,510],{"type":17,"tag":42,"props":506,"children":507},{},[508],{"type":22,"value":509},"Text message reminders",{"type":22,"value":511},": sends the same reminders by text message to the client's phone number, when it was entered with a country code (for example +1 …). Standard messaging charges apply through the workspace's SMS balance. Off by default.",{"type":17,"tag":25,"props":513,"children":515},{"id":514},"add-intake-questions",[516],{"type":22,"value":517},"Add intake questions",{"type":17,"tag":18,"props":519,"children":520},{},[521,523,529,531,537,538,544,545,551,552,558,559,565,566,572,574,580,582,587,589,594],{"type":22,"value":522},"Add the questions the client must answer when booking. Each question has a label and a type: ",{"type":17,"tag":524,"props":525,"children":527},"code",{"className":526},[],[528],{"type":22,"value":22},{"type":22,"value":530},", ",{"type":17,"tag":524,"props":532,"children":534},{"className":533},[],[535],{"type":22,"value":536},"textarea",{"type":22,"value":530},{"type":17,"tag":524,"props":539,"children":541},{"className":540},[],[542],{"type":22,"value":543},"email",{"type":22,"value":530},{"type":17,"tag":524,"props":546,"children":548},{"className":547},[],[549],{"type":22,"value":550},"phone",{"type":22,"value":530},{"type":17,"tag":524,"props":553,"children":555},{"className":554},[],[556],{"type":22,"value":557},"number",{"type":22,"value":530},{"type":17,"tag":524,"props":560,"children":562},{"className":561},[],[563],{"type":22,"value":564},"select",{"type":22,"value":530},{"type":17,"tag":524,"props":567,"children":569},{"className":568},[],[570],{"type":22,"value":571},"multiselect",{"type":22,"value":573},", or ",{"type":17,"tag":524,"props":575,"children":577},{"className":576},[],[578],{"type":22,"value":579},"checkbox",{"type":22,"value":581},". The ",{"type":17,"tag":524,"props":583,"children":585},{"className":584},[],[586],{"type":22,"value":564},{"type":22,"value":588}," and ",{"type":17,"tag":524,"props":590,"children":592},{"className":591},[],[593],{"type":22,"value":571},{"type":22,"value":595}," types take a comma-separated list of options for the client to choose from. Mark a question required so the booking cannot be submitted without it. Answers are captured with the booking.",{"type":17,"tag":25,"props":597,"children":599},{"id":598},"add-blackout-dates-and-public-instructions",[600],{"type":22,"value":601},"Add blackout dates and public instructions",{"type":17,"tag":18,"props":603,"children":604},{},[605],{"type":22,"value":606},"Blackout dates remove whole days from the service's availability, such as dates when the service is not offered, without changing anyone's working hours. Workspace holidays and each host's approved time off already block their days automatically, so blackout dates are for days specific to this service.",{"type":17,"tag":18,"props":608,"children":609},{},[610],{"type":22,"value":611},"Public instructions are the notes clients see for this service: what to bring, where to park, how to prepare.",{"type":17,"tag":25,"props":613,"children":615},{"id":614},"verify-on-the-booking-page",[616],{"type":22,"value":617},"Verify on the booking page",{"type":17,"tag":32,"props":619,"children":620},{},[621,639,644,649],{"type":17,"tag":36,"props":622,"children":623},{},[624,625,630,632,638],{"type":22,"value":40},{"type":17,"tag":42,"props":626,"children":627},{},[628],{"type":22,"value":629},"Booking Pages",{"type":22,"value":631}," and make sure a page includes the service. See ",{"type":17,"tag":324,"props":633,"children":635},{"href":634},"\u002Fv\u002F2026.3\u002Fscheduling\u002Fcreate-and-share-a-booking-page\u002F",[636],{"type":22,"value":637},"Create and share a booking page",{"type":22,"value":60},{"type":17,"tag":36,"props":640,"children":641},{},[642],{"type":22,"value":643},"Open the page's public link in a private browser window.",{"type":17,"tag":36,"props":645,"children":646},{},[647],{"type":22,"value":648},"Choose the service and confirm that the duration, price, offered times, and questions match what you configured.",{"type":17,"tag":36,"props":650,"children":651},{},[652],{"type":22,"value":653},"Make a test booking with your own email address, then decline it from the Booking Queue or cancel it through the manage link in the confirmation email.",{"type":17,"tag":18,"props":655,"children":656},{},[657,659,663],{"type":22,"value":658},"Continue to ",{"type":17,"tag":324,"props":660,"children":661},{"href":634},[662],{"type":22,"value":637},{"type":22,"value":60},{"type":17,"tag":665,"props":666,"children":667},"blockquote",{},[668],{"type":17,"tag":18,"props":669,"children":670},{},[671],{"type":22,"value":672},"Deposits and full payments need a connected Stripe account. Google Meet links are created only when the assigned host has connected Google Meet.",{"title":7,"searchDepth":674,"depth":674,"links":675},2,[676,677,678,679,680,681,682,683,684,685],{"id":27,"depth":674,"text":30},{"id":91,"depth":674,"text":94},{"id":216,"depth":674,"text":219},{"id":309,"depth":674,"text":312},{"id":333,"depth":674,"text":336},{"id":426,"depth":674,"text":429},{"id":470,"depth":674,"text":473},{"id":514,"depth":674,"text":517},{"id":598,"depth":674,"text":601},{"id":614,"depth":674,"text":617},"markdown","content:v:2026.3:scheduling:configure-a-service-for-online-booking.md","content","v\u002F2026.3\u002Fscheduling\u002Fconfigure-a-service-for-online-booking.md","v\u002F2026.3\u002Fscheduling\u002Fconfigure-a-service-for-online-booking","md",1788762395658]