Publish a page where prospects pick a consultation, see live availability, and pay up front. The link lives on Settings → Scheduling, along with the intro text shown at the top of it and the link name itself.The page can be switched off — visitors then see a not-found page until you switch it back on.
Changing the link name breaks the old link everywhere it’s shared.
Each consultation link is one bookable meeting type — its duration, price, host, and where it happens. Share a link directly, or let prospects pick from your booking page.
Duration and price. Anything from 5 to 480 minutes. A price of 0 makes it free and skips the payment step; charging requires Stripe connected.
Location options — Google Meet, Zoom, a video link of your own, phone, or in person. Meet and Zoom links are generated automatically when the host has connected that account.
Creates leads. Switch this on and every confirmed booking creates or updates a card on your Leads pipeline.
Advanced — buffers before and after, minimum notice, how far ahead people can book, a daily cap, and the cancel/reschedule cutoff.
My availability is your weekly hours in your own time zone; the booking page only offers times inside those windows. Date overrides handle the days that differ — holidays, court days, one-off openings, or closed all day.Connect Google Calendar and your busy times are hidden from the booking page automatically, so you’re never double-booked.
A consultation is only as good as what you know walking in. You decide what your booking page asks:
Ready-made questions, one switch each — how they heard about you, what the matter is about, preferred language, prior attorney. Phone and the pre-meeting note are switches too, required by default on new consultation types.
Your own questions — short answer, paragraph, multiple choice, or checkbox — up to ten per consultation type, any of them markable required.
Answers arrive with the booking: on your bookings list, in the email telling you someone booked, and on the calendar event itself. They’re kept word for word with each booking even if you rewrite the question later.
Bookings in the sidebar shows what’s booked, split into Upcoming, Past and Canceled. Each booking carries its status — awaiting payment, confirmed, completed, canceled — whether it was paid or refunded, a Join link for video meetings, the answers to your questions, and a link to the lead if one was created. A consultation your firm booked is marked Booked by firm, and one you settled by hand is marked Paid offline.An upcoming booking still awaiting payment shows its deadline and three actions: Send (or Resend) payment link emails the invitee their link again, Copy link puts it on your clipboard to paste into an email or text of your own, and Mark as paid records a fee you collected another way.Anything not canceled also sits on your firm’s calendar, on the day it starts — dimmed and dashed while it’s awaiting payment.Canceling notifies the invitee by email, with an optional reason shared with them.
Payments are not refunded automatically when you cancel — issue the refund
from your firm’s own Stripe dashboard if one applies.
Ask Lex. At the Desk, ask “what consultations do I have this week?” or “who hasn’t paid for their consult?”. Lex reads the same three tabs — upcoming, past and canceled — for any window you name, narrowed to your own consultations or to unpaid ones. Each comes with its time in your firm’s time zone, the invitee, the consultation type, the location or join link, the host and co-hosts, and whether it’s paid. Lex also reads your setup from Settings → Scheduling: “what’s my booking link?”, “what are my hours?”, “how much is a consult?” are answered from the booking link and whether the page is live, your hours, time zone and date overrides, each consultation type’s length, price, host, locations and notice and cutoff rules, and whether Google Calendar and Zoom are connected. When booking isn’t turned on for your firm, Lex says so. It only reads: it can’t change your hours, prices or page, and it can’t cancel or reschedule a booking.
The host and any co-hosts get a notification in Lexfill when a consultation is reserved, and another when it’s confirmed — never the whole firm, and never the person who did it: booking a slot yourself, or marking one as paid, doesn’t ring your own bell. A free consultation is confirmed the moment it’s booked, so it rings once rather than twice.Both live under the Consultations category in notification preferences. Muting it silences the bell only — the booking emails keep arriving. Clicking one opens the lead behind the booking, or the Bookings list when there isn’t one.
Some prospects will never book themselves — they call or email and ask you to set it up. New booking on the Bookings page, or Schedule consultation on a lead’s page, reserves the slot for them.Pick the consultation type, the date and time (in the host’s time zone), and who it’s with — from a lead’s page the name, email and phone are already filled in. You can override the price, choose where it happens, and add a note for the host. Availability rules don’t apply here: you can book outside your published hours, inside a buffer, or at short notice. The only time Lexfill refuses is when the slot overlaps a live booking for the host or a co-host; conflicts on a connected Google Calendar are shown as a warning you can book straight through.A free consultation is confirmed on the spot. A priced one is held until it’s paid.
The invitee gets an email saying their consultation is reserved, with a Confirm and pay button that opens the same page they’d use to reschedule or cancel. Once they pay, everything a self-service booking does happens then: the calendar event, the meeting link, the confirmation email with the invite attached, and the lead moving along your pipeline.Until the payment lands the booking sits at Awaiting payment — and the invitee sees no meeting link, because the link travels with the confirmation.You choose the deadline when you book (72 hours by default). It has to be at least half an hour away and at least an hour before the consultation starts.
Choose Offline when your firm collects the fee another way — a check, a transfer, a card taken over the phone. Lexfill never asks the invitee for money: the reservation email tells them your firm will be in touch about payment, and the booking waits.When the money arrives, Mark as paid on the booking confirms it exactly as a card payment would, with an optional note about how it was collected. That note and who recorded it are kept with the booking, and the lead’s timeline records the payment. It can’t be undone.
If nothing is paid, the reservation is released shortly after your deadline — about half an hour later, so a payment started at the last minute still has time to finish. The host and any co-hosts get an email telling them the slot is free again; the invitee is not emailed, since they never confirmed.A released hold stays visible under Canceled. If the prospect comes back, book them again — and if they paid after the deadline, Mark as paid still confirms the booking, as long as nobody else has taken the slot.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Lexfill","description":"Lex, the AI paralegal for immigration law firms — and the practice it runs on","colors":{"primary":"#D97706","light":"#F59E0B","dark":"#B45309"},"logo":{"light":"https://mintcdn.com/lexfill-ai/u8uP0lc6HW-jzB2O/logo/light.svg?fit=max\u0026auto=format\u0026n=u8uP0lc6HW-jzB2O\u0026q=85\u0026s=9de039c2e5260be387280b2c979c90a3","dark":"https://mintcdn.com/lexfill-ai/u8uP0lc6HW-jzB2O/logo/dark.svg?fit=max\u0026auto=format\u0026n=u8uP0lc6HW-jzB2O\u0026q=85\u0026s=c6a54be419d436b646ddc94e4c0b933b"},"favicon":"https://mintcdn.com/lexfill-ai/u8uP0lc6HW-jzB2O/favicon.svg?fit=max\u0026auto=format\u0026n=u8uP0lc6HW-jzB2O\u0026q=85\u0026s=a9af3cfd96a530bb025771214171a2b3","navbar":{"links":[{"href":"https://www.lexfill.ai","label":"Website"}],"primary":{"type":"button","label":"Open console","href":"https://app.lexfill.ai"}},"footer":{"socials":{"website":"https://www.lexfill.ai"}},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"lexfill-ai","hasAudioNarration":false,"actualSubdomain":"lexfill-ai","customDomains":["help.lexfill.ai"],"gitSource":{"type":"github","owner":"hamittokay","repo":"lexfill","deployBranch":"main","contentDirectory":"docs","isPrivate":true,"mountPath":"","label":""},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6af4b6d1a92ed7cc8a4a83f4","clientVersion":"0.0.4111","searchFilterCounts":[{"language":"default","tag":"Lex, your AI paralegal","count":5},{"language":"default","tag":"Clients","count":5},{"language":"default","tag":"Case work","count":5},{"language":"default","tag":"Your firm","count":3},{"language":"default","tag":"Getting started","count":2},{"language":"default","tag":"Getting paid","count":1}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"guides/bookings","slug":"/guides/bookings","pageMetadata":{"title":"Consultations","description":"A booking page that shows live availability, asks your questions, and takes payment","href":"/guides/bookings"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"A booking page that shows live availability, asks your questions, and takes payment\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,li:`li`,p:`p`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{Heading,Note,Warning}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Note)_missingMdxReference(`Note`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(Heading,{level:`2`,id:`your-booking-page`,children:`Your booking page`}),`\n`,_jsxs(_components.p,{children:[`Publish a page where prospects pick a consultation, see live availability, and pay up front. The link lives on `,_jsx(_components.strong,{children:`Settings → Scheduling`}),`, along with the intro text shown at the top of it and the link name itself.`]}),`\n`,_jsx(_components.p,{children:`The page can be switched off — visitors then see a not-found page until you switch it back on.`}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`Changing the `,_jsx(_components.strong,{children:`link name`}),` breaks the old link everywhere it’s shared.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`consultation-links`,children:`Consultation links`}),`\n`,_jsx(_components.p,{children:`Each consultation link is one bookable meeting type — its duration, price, host, and where it happens. Share a link directly, or let prospects pick from your booking page.`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Duration and price.`}),` Anything from 5 to 480 minutes. A price of 0 makes it free and skips the payment step; charging requires `,_jsx(_components.a,{href:`/guides/invoicing#getting-paid-online`,children:`Stripe connected`}),`.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Location options`}),` — Google Meet, Zoom, a video link of your own, phone, or in person. Meet and Zoom links are generated automatically when the host has connected that account.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Creates leads.`}),` Switch this on and every confirmed booking creates or updates a card on your `,_jsx(_components.a,{href:`/guides/leads`,children:`Leads pipeline`}),`.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Advanced`}),` — buffers before and after, minimum notice, how far ahead people can book, a daily cap, and the cancel/reschedule cutoff.`]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`availability`,children:`Availability`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`My availability`}),` is your weekly hours in your own time zone; the booking page only offers times inside those windows. `,_jsx(_components.strong,{children:`Date overrides`}),` handle the days that differ — holidays, court days, one-off openings, or closed all day.`]}),`\n`,_jsx(_components.p,{children:`Connect Google Calendar and your busy times are hidden from the booking page automatically, so you’re never double-booked.`}),`\n`,_jsx(Heading,{level:`2`,id:`booking-questions`,children:`Booking questions`}),`\n`,_jsx(_components.p,{children:`A consultation is only as good as what you know walking in. You decide what your booking page asks:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Ready-made questions`}),`, one switch each — how they heard about you, what the matter is about, preferred language, prior attorney. Phone and the pre-meeting note are switches too, required by default on new consultation types.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Your own questions`}),` — short answer, paragraph, multiple choice, or checkbox — up to `,_jsx(_components.strong,{children:`ten per consultation type`}),`, any of them markable required.`]}),`\n`]}),`\n`,_jsx(_components.p,{children:`Answers arrive with the booking: on your bookings list, in the email telling you someone booked, and on the calendar event itself. They’re kept word for word with each booking even if you rewrite the question later.`}),`\n`,_jsx(Heading,{level:`2`,id:`the-bookings-list`,children:`The bookings list`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Bookings`}),` in the sidebar shows what’s booked, split into `,_jsx(_components.strong,{children:`Upcoming`}),`, `,_jsx(_components.strong,{children:`Past`}),` and `,_jsx(_components.strong,{children:`Canceled`}),`. Each booking carries its status — awaiting payment, confirmed, completed, canceled — whether it was paid or refunded, a `,_jsx(_components.strong,{children:`Join`}),` link for video meetings, the answers to your questions, and a link to the lead if one was created. A consultation your firm booked is marked `,_jsx(_components.strong,{children:`Booked by firm`}),`, and one you settled by hand is marked `,_jsx(_components.strong,{children:`Paid offline`}),`.`]}),`\n`,_jsxs(_components.p,{children:[`An upcoming booking still awaiting payment shows its deadline and three actions: `,_jsx(_components.strong,{children:`Send`}),` (or `,_jsx(_components.strong,{children:`Resend`}),`) `,_jsx(_components.strong,{children:`payment link`}),` emails the invitee their link again, `,_jsx(_components.strong,{children:`Copy link`}),` puts it on your clipboard to paste into an email or text of your own, and `,_jsx(_components.strong,{children:`Mark as paid`}),` records a fee you collected another way.`]}),`\n`,_jsxs(_components.p,{children:[`Anything not canceled also sits on your firm’s `,_jsx(_components.a,{href:`/guides/calendar`,children:`calendar`}),`, on the day it starts — dimmed and dashed while it’s awaiting payment.`]}),`\n`,_jsx(_components.p,{children:`Canceling notifies the invitee by email, with an optional reason shared with them.`}),`\n`,_jsx(Note,{children:_jsx(_components.p,{children:`Payments are not refunded automatically when you cancel — issue the refund\nfrom your firm’s own Stripe dashboard if one applies.`})}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Ask Lex.`}),` At the `,_jsx(_components.a,{href:`/guides/lex`,children:`Desk`}),`, ask “what consultations do I have this week?” or “who hasn’t paid for their consult?”. Lex reads the same three tabs — upcoming, past and canceled — for any window you name, narrowed to your own consultations or to unpaid ones. Each comes with its time in your firm’s time zone, the invitee, the consultation type, the location or join link, the host and co-hosts, and whether it’s paid. Lex also reads your setup from `,_jsx(_components.strong,{children:`Settings → Scheduling`}),`: “what’s my booking link?”, “what are my hours?”, “how much is a consult?” are answered from the booking link and whether the page is live, your hours, time zone and date overrides, each consultation type’s length, price, host, locations and notice and cutoff rules, and whether Google Calendar and Zoom are connected. When booking isn’t turned on for your firm, Lex says so. It only reads: it can’t change your hours, prices or page, and it can’t cancel or reschedule a booking.`]}),`\n`,_jsx(Heading,{level:`2`,id:`who-gets-told`,children:`Who gets told`}),`\n`,_jsxs(_components.p,{children:[`The host and any co-hosts get a notification in Lexfill when a consultation is `,_jsx(_components.strong,{children:`reserved`}),`, and another when it’s `,_jsx(_components.strong,{children:`confirmed`}),` — never the whole firm, and never the person who did it: booking a slot yourself, or marking one as paid, doesn’t ring your own bell. A free consultation is confirmed the moment it’s booked, so it rings once rather than twice.`]}),`\n`,_jsxs(_components.p,{children:[`Both live under the `,_jsx(_components.strong,{children:`Consultations`}),` category in `,_jsx(_components.a,{href:`/guides/team-and-settings#notifications`,children:`notification preferences`}),`. Muting it silences the bell only — the booking emails keep arriving. Clicking one opens the lead behind the booking, or the Bookings list when there isn’t one.`]}),`\n`,_jsx(Heading,{level:`2`,id:`booking-for-a-lead`,children:`Booking for a lead`}),`\n`,_jsxs(_components.p,{children:[`Some prospects will never book themselves — they call or email and ask you to set it up. `,_jsx(_components.strong,{children:`New booking`}),` on the Bookings page, or `,_jsx(_components.strong,{children:`Schedule consultation`}),` on a lead’s page, reserves the slot for them.`]}),`\n`,_jsx(_components.p,{children:`Pick the consultation type, the date and time (in the host’s time zone), and who it’s with — from a lead’s page the name, email and phone are already filled in. You can override the price, choose where it happens, and add a note for the host. Availability rules don’t apply here: you can book outside your published hours, inside a buffer, or at short notice. The only time Lexfill refuses is when the slot overlaps a live booking for the host or a co-host; conflicts on a connected Google Calendar are shown as a warning you can book straight through.`}),`\n`,_jsx(_components.p,{children:`A free consultation is confirmed on the spot. A priced one is held until it’s paid.`}),`\n`,_jsx(Heading,{level:`3`,id:`pay-to-confirm`,children:`Pay-to-confirm`}),`\n`,_jsxs(_components.p,{children:[`The invitee gets an email saying their consultation is reserved, with a `,_jsx(_components.strong,{children:`Confirm and pay`}),` button that opens the same page they’d use to reschedule or cancel. Once they pay, everything a self-service booking does happens then: the calendar event, the meeting link, the confirmation email with the invite attached, and the lead moving along your pipeline.`]}),`\n`,_jsxs(_components.p,{children:[`Until the payment lands the booking sits at `,_jsx(_components.strong,{children:`Awaiting payment`}),` — and the invitee sees no meeting link, because the link travels with the confirmation.`]}),`\n`,_jsx(_components.p,{children:`You choose the deadline when you book (72 hours by default). It has to be at least half an hour away and at least an hour before the consultation starts.`}),`\n`,_jsx(Heading,{level:`3`,id:`offline-payment`,children:`Offline payment`}),`\n`,_jsxs(_components.p,{children:[`Choose `,_jsx(_components.strong,{children:`Offline`}),` when your firm collects the fee another way — a check, a transfer, a card taken over the phone. Lexfill never asks the invitee for money: the reservation email tells them your firm will be in touch about payment, and the booking waits.`]}),`\n`,_jsxs(_components.p,{children:[`When the money arrives, `,_jsx(_components.strong,{children:`Mark as paid`}),` on the booking confirms it exactly as a card payment would, with an optional note about how it was collected. That note and who recorded it are kept with the booking, and the lead’s timeline records the payment. It can’t be undone.`]}),`\n`,_jsx(Heading,{level:`3`,id:`expired-holds`,children:`Expired holds`}),`\n`,_jsx(_components.p,{children:`If nothing is paid, the reservation is released shortly after your deadline — about half an hour later, so a payment started at the last minute still has time to finish. The host and any co-hosts get an email telling them the slot is free again; the invitee is not emailed, since they never confirmed.`}),`\n`,_jsxs(_components.p,{children:[`A released hold stays visible under `,_jsx(_components.strong,{children:`Canceled`}),`. If the prospect comes back, book them again — and if they paid after the deadline, `,_jsx(_components.strong,{children:`Mark as paid`}),` still confirms the booking, as long as nobody else has taken the slot.`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Consultations","description":"A booking page that shows live availability, asks your questions, and takes payment","href":"/guides/bookings"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Your booking page","slug":"your-booking-page","depth":2,"children":[]},{"title":"Consultation links","slug":"consultation-links","depth":2,"children":[]},{"title":"Availability","slug":"availability","depth":2,"children":[]},{"title":"Booking questions","slug":"booking-questions","depth":2,"children":[]},{"title":"The bookings list","slug":"the-bookings-list","depth":2,"children":[]},{"title":"Who gets told","slug":"who-gets-told","depth":2,"children":[]},{"title":"Booking for a lead","slug":"booking-for-a-lead","depth":2,"children":[{"title":"Pay-to-confirm","slug":"pay-to-confirm","depth":3,"children":[]},{"title":"Offline payment","slug":"offline-payment","depth":3,"children":[]},{"title":"Expired holds","slug":"expired-holds","depth":3,"children":[]}]}],"codeExamples":{}},"jsLinks":[],"subdomain":"lexfill-ai","siteName":"Lexfill","title":"Consultations - Lexfill","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-25T03:37:03.775Z","originalFileLocation":"guides/bookings.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"A booking page that shows live availability, asks your questions, and takes payment\">\u003cmeta data-mint-head name=\"application-name\" content=\"Lexfill\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/lexfill-ai/yu0ar7JDabKQBeIr/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/lexfill-ai/yu0ar7JDabKQBeIr/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/lexfill-ai/yu0ar7JDabKQBeIr/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/lexfill-ai/yu0ar7JDabKQBeIr/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/lexfill-ai/yu0ar7JDabKQBeIr/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/lexfill-ai/yu0ar7JDabKQBeIr/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/lexfill-ai/yu0ar7JDabKQBeIr/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/lexfill-ai/yu0ar7JDabKQBeIr/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/lexfill-ai/yu0ar7JDabKQBeIr/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Consultations - Lexfill\">\u003cmeta data-mint-head property=\"og:description\" content=\"A booking page that shows live availability, asks your questions, and takes payment\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Lexfill\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://help.lexfill.ai/guides/bookings\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://lexfill-ai.mintlify.site/_mintlify/api/og/v2?division=Clients\u0026amp;title=Consultations\u0026amp;description=A+booking+page+that+shows+live+availability%2C+asks+your+questions%2C+and+takes+payment\u0026amp;theme=4dab1e6c7977235732593a82\u0026amp;signature=f9b8edcba02b642d631e46409e3fc10f3c8edb477a619758a7ee8936e6d5e9c6\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Consultations - Lexfill\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"A booking page that shows live availability, asks your questions, and takes payment\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://lexfill-ai.mintlify.site/_mintlify/api/og/v2?division=Clients\u0026amp;title=Consultations\u0026amp;description=A+booking+page+that+shows+live+availability%2C+asks+your+questions%2C+and+takes+payment\u0026amp;theme=4dab1e6c7977235732593a82\u0026amp;signature=f9b8edcba02b642d631e46409e3fc10f3c8edb477a619758a7ee8936e6d5e9c6\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/lexfill-ai/yu0ar7JDabKQBeIr/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Lexfill\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#D97706\">\u003clink data-mint-head rel=\"canonical\" href=\"https://help.lexfill.ai/guides/bookings\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/guides/bookings.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://help.lexfill.ai/#organization\",\"name\":\"Lexfill\",\"url\":\"https://help.lexfill.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/lexfill-ai/u8uP0lc6HW-jzB2O/logo/light.svg?fit=max\u0026auto=format\u0026n=u8uP0lc6HW-jzB2O\u0026q=85\u0026s=9de039c2e5260be387280b2c979c90a3\"}},{\"@type\":\"WebSite\",\"@id\":\"https://help.lexfill.ai#website\",\"name\":\"Lexfill\",\"url\":\"https://help.lexfill.ai\",\"publisher\":{\"@id\":\"https://help.lexfill.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://help.lexfill.ai/guides/bookings#webpage\",\"url\":\"https://help.lexfill.ai/guides/bookings\",\"name\":\"Consultations\",\"description\":\"A booking page that shows live availability, asks your questions, and takes payment\",\"dateModified\":\"2026-10-25T03:37:03.775Z\",\"isPartOf\":{\"@id\":\"https://help.lexfill.ai#website\"},\"breadcrumb\":{\"@id\":\"https://help.lexfill.ai/guides/bookings#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://help.lexfill.ai/guides/bookings#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Clients\",\"item\":\"https://help.lexfill.ai/guides/leads\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Consultations\",\"item\":\"https://help.lexfill.ai/guides/bookings\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://help.lexfill.ai/guides/bookings#article\",\"headline\":\"Consultations\",\"name\":\"Consultations\",\"description\":\"A booking page that shows live availability, asks your questions, and takes payment\",\"url\":\"https://help.lexfill.ai/guides/bookings\",\"mainEntityOfPage\":{\"@id\":\"https://help.lexfill.ai/guides/bookings#webpage\"},\"dateModified\":\"2026-10-25T03:37:03.775Z\",\"publisher\":{\"@id\":\"https://help.lexfill.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://help.lexfill.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Lexfill\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Lexfill\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/guides/bookings.md","siteName":"Lexfill","nav":{"global":null,"groups":[{"group":"Getting started","pages":[{"title":"What is Lexfill?","href":"/index"},{"title":"Quickstart","href":"/quickstart"}]},{"group":"Lex, your AI paralegal","pages":[{"title":"Working with Lex","href":"/guides/lex"},{"title":"AI review","href":"/guides/ai-review"},{"title":"Review","href":"/guides/review"},{"title":"Filing packets","href":"/guides/packets"},{"title":"Litigation","href":"/guides/litigation"}]},{"group":"Clients","pages":[{"title":"Leads","description":"Capture prospects with a public form, work them through a pipeline, and convert the ones you hire","href":"/guides/leads"},{"title":"Consultations","href":"/guides/bookings"},{"title":"Clients \u0026 intakes","description":"Manage clients, send questionnaires, and track intake progress","href":"/guides/clients-and-intakes"},{"title":"Client portal","href":"/guides/client-portal"},{"title":"Messaging","href":"/guides/messaging"}]},{"group":"Case work","pages":[{"title":"Forms","href":"/guides/forms"},{"title":"Documents","href":"/guides/documents"},{"title":"Government tracking","href":"/guides/government"},{"title":"Tasks","href":"/guides/tasks"},{"title":"Calendar","href":"/guides/calendar"}]},{"group":"Getting paid","pages":[{"title":"Invoicing \u0026 payments","href":"/guides/invoicing"}]},{"group":"Your firm","pages":[{"title":"Firm Library","href":"/guides/library"},{"title":"Team \u0026 settings","href":"/guides/team-and-settings"},{"title":"Integrations","href":"/guides/integrations"}]}]},"basePath":"","title":"Consultations - Lexfill","buildId":"dpl_DqYu5MPb49gWBBbUGgpHQUmCHY3P","deploymentId":"dpl_DqYu5MPb49gWBBbUGgpHQUmCHY3P","dynamics":[],"chunks":[]}