What is DocketBEO?
DocketBEO runs the whole room in one login. It covers:
- Reservations and online booking from your own website, with no per-cover fee
- The host stand: floor plan, waitlist, seating
- Floor: servers take the whole table's order, and courses fire when you're ready
- Kitchen: each station sees only its own tickets
- Private events and catering: inquiries, BEOs, client portal, deposits and invoices
- Online payments through your own Stripe account, QuickBooks Online sync, Reports and staff scheduling
It runs in a web browser on devices you already own: tablet, laptop or phone. There is also an Android app, and an iPhone app is coming soon.
Try it without signing up: docketbeo.app/try. Pick a role (work the pass, work the floor, or run the room) and you land in a private sandbox with sample data. It resets after 48 hours.
Plans and pricing
Pricing is per location, not per person. Every plan includes unlimited team members and every feature. Reservations, floor, kitchen, events and BEOs, the client portal, online payments and QuickBooks sync are all included.
| Plan | Price | Locations |
|---|
| House | $129/mo | 1 |
| Small Group | $297/mo | up to 3 |
| Multi-Unit | $790/mo | up to 10 |
| Enterprise | custom | 10+ (talk to us) |
- There are no per-cover reservation fees, no hardware rental, and no setup fees.
- DocketBEO doesn't take a cut of payments your clients make to you. Stripe's normal processing fees still apply.
How the free trial works
- Sign up at docketbeo.app with your venue's name, your work email and a password. You go straight into the app.
- No card to start. You get the whole app for 14 days.
- In the last 5 days, owners and managers see a reminder at the top of the app, and we email you one too. Add a card from that reminder or from Settings → Billing & Payments → Add a card.
- Nothing is charged until day 15, even if you add the card on day 2. Adding it early doesn't shorten or restart the trial.
- If the trial ends without a card, the app locks until you add one. Everything you set up is still there.
- With a card on file, Stripe emails you before the first charge. Cancel before day 15 from Settings → Billing & Payments → Manage Billing and you're never billed.
- Want to look around first? The demo at docketbeo.app/try needs no signup and no card.
Getting started: what to set up first
After you sign up, your dashboard has a Getting Started guide. If you plan to use DocketBEO for service (Docket LIVE turned on), the steps are:
- Add your tables. Add them in bulk: how many 2-tops, 4-tops, and so on.
- Map your floor. Drag tables into the shape of your actual room.
- Route your stations. Choose which kitchen station each menu category goes to.
- Set up online reservations. Add the booking button to your website.
- Build your menu. Paste your menu or upload a photo or PDF, and the AI Menu Uploader builds it for you.
- Invite your team.
If you only use DocketBEO for private events, the guide is just Build your menu and Invite your team.
You can seat a walk-in or take a reservation the same day you sign up.
Turning on Docket LIVE (service mode)
Docket LIVE is the service side: Host, Floor, Kitchen and Reports. It's free on every plan.
- Owners and managers turn it on in Settings → Venue → Docket LIVE → Turn On.
- When LIVE is on, a Docket LIVE tab appears in Settings, with Kitchen Stations, Tables, Floor Plan, Course Timing, Online Reservations, Reservation Pacing and No-Show Protection.
- Leave LIVE off if you only want events and BEOs.
Tables, floor plan and kitchen stations
Once Docket LIVE is on, these are all under Settings → Docket LIVE:
- Tables → Manage: add tables in bulk.
- Floor Plan → Manage: drag tables to match your room.
- Kitchen Stations → Manage: pin a menu category to a station (Pantry, Pasta, Grill, Pastry, Bar, Kitchen, or your own name).
- Course Timing → Manage: give each category a default course. Course 1 fires on send; later courses are held and fire in order from the table card (starters 1, pasta 2, entrees 3, dessert 4 by default). A server can move any line to another course on the order sheet.
Automatic station routing uses words in the category name:
| Category name contains | Goes to |
|---|
| pasta, primi, noodle | Pasta |
| entrée, main, grill, steak | Grill |
| dessert | Pastry |
| beverage, wine, beer, or the word "bar" | Bar |
| starter, appetizer, salad, raw bar | Pantry |
| anything else | Kitchen |
A category named "Cocktails" or "Drinks" goes to Kitchen unless you pin it to Bar in Kitchen Stations.
Online reservations on your website
Settings → Docket LIVE → Online Reservations (owners and managers)
- Copy the one-line code snippet.
- Paste it into your website. It adds a "Reserve a Table" button in the bottom-right corner.
- "Not sure where this code goes?" gives step-by-step instructions you can hand to your web person, or paste into an AI assistant.
- Use Preview the widget to check it, then click I've Added This To My Site.
Where the code goes, by website builder
- Squarespace: Website → Website Tools → Code Injection → Footer. Needs the Core plan or higher; the Basic plan (and the old Personal plan) can't run it. It may not show while you're logged in, so check in a private window.
- Wix: Settings → Custom Code → Add Custom Code, set to Body - end on All pages. Needs a Premium plan with a connected domain, and it only runs on the published site, not in the editor.
- WordPress: any paid WordPress.com plan, or your own WordPress install. Add the free WPCode plugin, then Code Snippets → Header & Footer → Footer.
- Square Online: Settings → Tracking Tools → Add new code → End of body, then publish.
- Shopify: Online Store → Themes → Edit code → theme.liquid, just before
</body>. - Webflow: Project Settings → Custom Code → Footer Code.
When your site won't take the code
- GoDaddy's website builder, Toast websites, BentoBox, Owner.com, the Squarespace Basic plan and free Wix sites can't add a site-wide script, or can only add it boxed inside one section.
- Use a link instead. Share links (same tab) has three plain links: Book a table, Join the waitlist and Plan an event. Add one as a menu link or button on your site.
Share links: Google, Instagram and everywhere else
- Google: in your Business Profile, Edit profile → Booking → Add link, and paste the booking link. Google shows it as a Reserve button on your listing. Your profile has to be verified.
- Instagram: Edit profile → Links. Instagram's own Reserve button only works with its booking partners (OpenTable, Resy and others), so use the link in your bio.
- The waitlist link works when Let guests join the waitlist from their phone is on, under Your booking page.
How booking works
- Guests pick the table first: party size, then a day from the next two weeks (days you're closed are crossed out), then a time. With Reservation Hours on, times are buttons; without them, guests type a time. Then name, phone, optional email and notes.
- The confirmation shows the booking, an Add to calendar button, and a Change or cancel link, even for guests who skipped email.
- Guests who give an email get a confirmation, a reminder the day before, and a note if anything changes or they cancel. Emails come from your venue's name ("The Copper Room via DocketBEO") with your logo, and replies go to you, not to DocketBEO. The confirmation includes a calendar invite.
- Bookings are checked against your capacity (and your Reservation Hours, if you've turned them on) and appear on the Host screen instantly.
- There's no per-cover fee and no booking network in between. They're your guests.
Your booking page (same tab)
- Upload your logo (PNG, JPG or WebP, up to 2 MB) and add the phone guests can call and your address. They show at the top of your booking page, the confirmation and the guest's change-or-cancel page. The phone is tap-to-call.
- No logo? Your initials show in its place.
- Preview your booking page opens it the way a guest sees it.
Reservation Pacing (same tab)
- Set a maximum number of covers within a time window (default 90 minutes).
- If you leave the cover limit blank, DocketBEO uses your total table seats.
- Times that are already full for the guest's party size are crossed out before they pick, and a day with nothing left says so. The check at booking still applies if two guests grab the last spot at once.
Reservation Hours (same tab)
- Off by default: until you turn it on, guests can pick any date and time.
- Tick Only accept online bookings during these hours, then set each day: closed, or one or more services (for example lunch and dinner), each with a first seating and last seating time. Last seating is the last time a guest can book.
- Choose Time slots every 15, 30 or 60 minutes. Guests then pick a time from a list instead of typing one. Today's times that have already passed aren't offered.
- A closed day shows as Closed in the widget, with a shortcut to the next day you're open.
- Services can't run past midnight. For a late service, add an early window on the next day (for example 12:00 AM to 1:00 AM).
- Times follow your venue's timezone (Settings → Venue → Timezone), not the guest's.
- Guests changing a booking from their link get the same party, day and time picker. A booking made before you set your hours can keep its time, but it can only be moved to a time inside your hours.
- Hosts aren't limited. On the Host screen, a booking or edit outside your hours shows a warning, and Save anyway saves it.
Closed Dates (inside Reservation Hours)
- Add a date, like a holiday or a private buyout, with an optional note. No online bookings are taken that day.
- The note is only visible to your team. Guests just see that you're closed.
- Closed dates only apply while Reservation Hours are turned on.
Online pickup ordering
Guests order from your website, pay online, and pick up at the counter. It's pickup only (no delivery), same-day, and paid up front.
Turning it on (Settings → Docket LIVE → Online pickup, owners and managers)
- You need Stripe connected (Settings → Billing & Payments), so guests can pay you directly, and Reservation Hours turned on: pickup times come from your service hours.
- Tick Take pickup orders online. An Order pickup button appears on your website, and your ordering page lives at docketbeo.app/order/…: copy it from the card for your Google profile's order link or your Instagram bio.
- Choose dishes for pickup: everything on your dining menu is offered unless you untick it (the tasting menu, the tableside dishes).
How pickup times are paced around your dining room
- The earliest pickup is now plus your prep time (default 20 minutes), plus a little more when the Pass is backed up: 2 minutes for every ticket on the rail past 8, up to an hour.
- Pickup times come in 15-minute slots, each taking up to your items per 15 minutes (default 12). A slot takes fewer when your dining room is booked up around it: a fully booked room halves it. Full times are crossed out for the guest.
- Pause: Pause to-go on the Pass (or in Settings) stops new orders for 30 minutes; tap again to resume. While it's paused, guests still see your menu and prices, with a note saying ordering is paused and when it's back.
- An 86'd dish, or one whose count has run out, can't be ordered.
What the kitchen sees
- A paid order lands on the Pass and the station screens as To go #12 · Dana · 7:30, split by station like any order, with the guest's notes on the items.
- It waits on deck, marked fires 7:10, and fires on its own at pickup time minus prep time, so a 7:30 pickup doesn't jump ahead of the tables in front of it. Kitchen printers print it when it fires.
- An order with items for two stations sits on deck as one ticket per station, each tagged with its station (PASTA, GRILL) so they don't look like a duplicate.
- Bump it through as usual. When every ticket is ready, the guest gets an email saying it's ready. In the window a pickup has one button, Handed off ✓: tap it when the guest collects the order, and their page says picked up. There's no Call or Hold the table on a pickup. A pickup in the window never turns red the way a plated dish does: it reads Waiting for pickup with the guest's name and pickup time, and only turns amber (Guest is late) once they're 15 minutes past it.
What the guest sees
- Your menu with prices, a pickup time the kitchen can actually hit, their name, email and an optional phone and notes. The total is the food plus sales tax: there's no tip line.
- They pay by card on your own Stripe account. DocketBEO takes no cut.
- A confirmation email from your venue's name (replies come to you) listing each item, the tax and the total, and a page that follows the order live: order in, cooking, ready, picked up.
- In the demo, no payment is taken, so you can place an order and watch it land on the Pass.
Your website
Settings → Venue → Your website (owners and managers)
- DocketBEO builds a one-page website for your venue from what's already in your account:
- your name, logo, phone and address (from Your booking page)
- your hours (from Reservation Hours)
- your dining menu, with prices
- your rooms
- buttons to book a table, join the waitlist and plan an event
- You add the rest:
- a tagline, shown under your name at the top
- a main photo, landscape works best
- an About section, as long as you like up to 1,200 characters (a blank line starts a new paragraph)
- up to 8 photos with optional captions, shown in a Photos section. If you skip the main photo, the first one takes its place; Move first changes which one that is.
- your Instagram handle
- an accent colour for buttons and headings: Copper, Forest, Navy, Plum or Ink. All of them stay easy to read.
- Photos from your phone are fine as they are: they're resized before upload.
- Rooms on your site: for each private room, add a photo, one line, and how many it seats and holds standing. Planners see these under Private events. The rooms themselves are the ones in Rooms & Spaces, the same ones your calendar books.
- Pick your web address: docketbeo.app/site/your-name. It's filled in from your venue's name; change it to anything that isn't taken.
- Preview shows the site before anyone else can see it. Tick Publish my website to put it live, and untick it to take it down.
It stays up to date on its own
- Change your menu, hours, phone or rooms where they live in DocketBEO, and the site shows the change on the next page load.
- 86 a dish on the Floor and the site shows it as "Sold out tonight." Guests see what the kitchen is actually cooking.
- Today's line at the top ("Open today · seating 5:00 PM to 9:30 PM", or "Closed today") comes from your Reservation Hours and closed dates. Hours show first and last seating times.
- The menu shows dining-room items only. Event packages stay on your event pages.
- The site is built for phones: guests get Book, Waitlist and Call buttons fixed at the bottom of the screen.
Search engines
- A published site tells Google your name, address, phone, hours and menu in the format it reads, which helps them show on your Google listing.
- Unpublished sites and the demo's sample site are hidden from search.
- Put your site's address in your Google Business Profile's Website field, and in your Instagram bio if you don't have another site.
Your own domain (like copperroom.com)
- In Your website, type your domain under Your own domain and tap Connect. You'll see two DNS records: an A record for @ and a CNAME for www.
- Add them where you bought the domain (GoDaddy, Namecheap, Squarespace Domains and so on), in its DNS settings. Replace any A record for @ that's already there.
- Tap Check again. Changes usually take a few minutes, sometimes a few hours. When it says Connected, your domain shows your website, with the secure padlock set up for you.
- www.yourdomain.com goes to the same site. Booking, waitlist, pickup and event pages open on your domain too.
- Search engines are told your domain is the site's real address.
- Your site still has to be published for the domain to show it.
- If the domain is also set up with another website host, you'll see a third record (TXT) that proves it's yours.
- Disconnect stops the domain showing your site. Your docketbeo.app/site address keeps working either way.
Google reviews and social posts on Today
Owners, managers and whoever holds the Guests desk see these rows on Today.
Google reviews
- In Settings, under Website, find your restaurant on the Google card once. New reviews then land on Today with a reply already written: a 1-2 star review gets its own urgent row, a 3-star its own row, and 4-5 stars come together in one row.
- Copy reply puts the reply on your clipboard; Open on Google opens the review so you can paste it.
- Let DocketBEO reply for you (under the same card): sign in with the Google account that manages your listing. Then every new review comes in (not only the five Google Maps shows), and the row's main button becomes Post reply, which puts the reply on Google for you. Tap Edit first if you want to change it. Copy reply stays as a backup.
- Google is still approving DocketBEO for posting replies. Until it does, signing in works but Post reply says Google hasn't opened replies yet; use Copy reply in the meantime.
- Stop replying for me signs DocketBEO out of Google and deletes what it stored.
Social posts
- When the week has a story (your best seller, a new dish that's selling, a dish that keeps selling out, a private room that's free on a weekend), Today offers a post with the photo and caption written. Edit changes the caption; Not this one clears it.
- Share opens your phone's share sheet (pick Instagram, Facebook or anything else). On a computer it copies the caption and saves the photo.
- Instagram & Facebook (Settings, under Website): connect once with Facebook and the main button becomes Post to Instagram & Facebook: the photo and caption go straight to your Facebook Page and the Instagram professional account linked to it. Instagram needs a JPEG photo; if a post can't go to Instagram, use Share for that one.
- Once connected, new comments on your recent Instagram posts that ask a question show up on Today with a reply drafted. Reply posts it under the comment, Edit changes it first, Not this one clears it.
- Your Instagram account has to be a professional (business or creator) account linked to your Facebook Page. Meta is still approving DocketBEO for posting; until then the button says coming soon and Share works as before.
- Disconnect signs DocketBEO out of Facebook and deletes what it stored. See the Privacy Policy, section 6, for exactly what's kept.
- In the demo, posting and replying are simulated: nothing goes to Instagram, Facebook or Google.
Reservation confirmations, reminders and cancellations
- Confirmation email: a guest who gives an email gets "You're booked at [your restaurant]" with the details and a link to view or cancel. You get a "New online reservation" email too.
- Reservations entered at the host stand: if you add the guest's email, they get the same confirmation email as an online booking, from your restaurant's name, with the same change-or-cancel link and a calendar invite. Replies come to you.
- Reminder email: the day before, every confirmed reservation with an email gets a reminder with the cancel link.
- Guest changes and cancellations: from the link in their email, guests can change the date, time, party size or notes, or cancel. Changes go through the same availability check as a new booking, and both you and the guest get an "updated" email. If the date moves, the reminder is sent for the new day. You're notified of cancellations too.
- Host edits: on the Host screen, tap Edit on an upcoming reservation to change any detail. If the new time is over your pacing limit you'll see a warning, and Save anyway overrides it.
- Text messages: reservation confirmations by text aren't available yet. Texting is currently for the waitlist ("your table is ready").
- In the demo, nothing is emailed or texted to a guest or client: no confirmations, reminders, change or cancel notes, pickup emails, or client portal emails. The guest pages say so.
No-show protection (card on file)
Require a card to hold online reservations, and charge a fee if a guest doesn't show or cancels late.
Setup: Settings → Docket LIVE → No-Show Protection (owners and managers). Stripe must be connected first (see "Accepting online payments").
- Fee per guest: default $25.
- Cancel window: default 24 hours.
- Parties of at least: optional, e.g. only require a card for parties of 6 or more.
How it works
- The guest enters a card and ticks "I agree to this no-show policy." Nothing is charged at booking. The card is saved to your own Stripe account.
- The fee and window are locked in when the guest books, so changing your settings later doesn't affect existing bookings.
- You decide whether to charge. Nothing is charged automatically. On the Host screen, mark the reservation No-show, or Cancel it if the guest cancelled inside the window. A "Charge $X fee" button appears, and you confirm before anything is charged. In the demo the button explains what it would charge; no card is ever charged.
- The fee is the per-guest fee × party size. It can only be charged once per reservation.
- If the guest's bank requires extra approval, the charge may not go through.
- Reservations entered at the host stand never require a card.
The Host screen and waitlist
Host shows:
- your floor plan: open, seated, or needs bussing
- tonight's reservations: Seat, No-show, Cancel
- the waitlist
A reservation's notes carry over to the table, and from there onto the kitchen tickets.
Server sections
- On the Host screen, tap Sections (or Assign sections) and pick who works each section tonight. Sections come from the tables you set up in Settings → Tables.
- Every table seated in a section goes to that section's server, whether it's seated from Host or opened on Floor. Kitchen tickets print the server's name.
- Section tabs show each server's seated covers, and walk-in suggestions lean toward the lighter section when two tables fit equally well.
- To hand one table to someone else, tap it on the Host floor plan and pick a server. At a shift change, turn on Also hand over the tables already open before changing a section.
- On Floor, the chips at the top (All · Devon · Sam) show one server's tables. The choice is remembered on each device.
- Every place you seat a party names whose section it lands in: walk-in suggestions, the waitlist's Seat at button, and the reservation Seat picker. The picker lists the best fit first and marks any table that's too small for the party.
- + New Table on Floor only lists tables that are free, each with its server. The kitchen's window cards show the server too, so the runner knows who to find.
- Each server gets a colour. Seated tables on the Host map carry their server's initial in that colour, and the same colour marks them on Floor and in the kitchen.
- On the Host map, the tables that fit the walk-in get a green ring, and the best one says Best. Change the party size and the map jumps to the section with the best table.
- A server signed in with their own account sees Your section tonight on the Dashboard and on Floor, one tap from their tables.
- Reports has a By server table: tables, covers, sales, average check, per cover and table time for each server.
Waitlist
- Add a party with name, size, quoted wait, and an optional phone number.
- The list shows how long each party has waited against their quote, and flags anyone running over.
- Text them sends: "Hi [name], your table is ready at [your restaurant] — come on back to the host stand. Reply STOP to opt out."
- Texts go from DocketBEO's number, with your restaurant's name in the message.
- US and Canadian mobile numbers only.
- If a text can't be sent, your device's own messaging app opens with the message ready to go.
- In the demo, Text them marks the party notified and says so; no text is sent and nothing opens.
- Seat at [table] seats them; Left removes them.
Waitlist from the guest's phone (Settings → Docket LIVE → Online Reservations → Your booking page)
- Tick Let guests join the waitlist from their phone, then Print the QR sign for the door or the host stand.
- Guests scan it, see how many parties are waiting and roughly how long, and join with a name, party size and an optional phone number.
- They get their own page showing their place in line and the time left on their quote, with Leave the list. It updates by itself.
- On the Host screen they show up marked 📱 Online. Text them works as usual. If they didn't leave a phone, the button says Call them up, and their page changes to Your table is ready.
- The wait they see before joining is an estimate from how many parties are ahead, how many tables are free, and your usual table time. You can change a party's quote as always.
- When a table opens up while people are waiting, the table card shows "Someone on the waitlist could have it", so the host can offer it right away.
Drop the check closes a table and marks it for bussing until it's cleared.
Guest book
One record per guest, built from what you already keep: reservations (typed at the host stand or booked online), your Clients list, member accounts, and online pickup orders. The same phone number or email across any of those is one guest. Nothing to set up.
What a guest's record holds:
- completed visits (a closed table, an event that happened, a paid pickup), the date of the last one, and lifetime spend
- what they usually have, from their tickets and pickup orders
- the server who had them last
- allergies and a staff note, which your team keeps by hand
- occasions ("anniversary", "birthday"). A reservation note that mentions an anniversary or a birthday adds one on that date; a note that mentions an allergy fills the allergy field if it's empty.
Where it shows:
- Host: a line under each reservation — "3rd visit · last had Crudo of the Day · Shellfish allergy · anniversary tonight". A first-timer reads "First visit". Tap the line to open the record and edit the allergy or the note.
- Floor: the same line on a table that was seated from a reservation.
- Guests (under Events, next to Clients): everyone, newest visit first, searchable by name or phone. Tap a guest to open the record.
- Dashboard: one row for tonight — "Tonight's book: 3 regulars, 2 allergies, 2 occasions" — naming up to three guests and what matters.
Anyone on your team can edit the allergy and the note. Keep notes factual and kind: they're there so a guest is looked after, and a guest may ask to see what's written about them.
Taking orders and firing courses (Floor)
- Open a table, set the party size, and tap Take Order.
- Enter the whole table's order at once, with seat numbers and courses 1–9.
- Course 1 fires when you send the order. Later courses (entrées by default) wait until you fire them from the table card.
- Items marked "ask for temperature" prompt the server.
- Made a mistake? Recall undoes an accidental fire.
- Opening a table takes you straight to its order. After you send, the Floor scrolls to that table.
- Each table card reads top to bottom in the order you'll act: food to pick up, the next course to fire, what's cooking, then later courses. Cards are in table-number order and show how long the table has been seated.
- The next course's Fire button turns orange once the course before it has been served. While that course is still out, the button stays quiet ("fire when course 2 is down"), so entrées don't go in on top of the pasta by accident. You can still fire early.
- Under the table numbers, a line shows what needs you: tables with food to pick up, a course to fire, or a check to close. Tap one to jump to the first table.
The Kitchen screen
- Lanes: Not fired yet — don't start, On the rail, In the window.
- Each ticket has one button that moves it along: Heard ▶ when a cook takes it (the ticket then says Working), Up ✓ when it's plated, Run it ✓ when it leaves. Once it's run, it leaves the kitchen screen.
- The top of the Kitchen screen reads left to right like the lanes: how many tickets are on deck, on the rail and in the window.
- On a phone the top is tighter so the rail starts on the first screen: swipe the station filter and the All day tally sideways. ⌨ Keys and Full screen are on tablets and computers only.
- Filter to one station, or open the single-station screen for a tablet at the grill. Each screen remembers its own choice on each device, and a filtered Kitchen screen says so, with Show all to clear it.
- A ticket that's been fired but not started shows New. After five minutes with nobody on it, it turns red: Not started.
- Courses cooked at two stations go out together. When one course has parts at, say, Grill and Pasta, the plate in the window says Hold · waiting on Pasta until the rest is up, then All up · run with Pasta. The cook still working sees Grill is up · the table is waiting on you. The server's Floor card says the same, so nobody runs half a course. Drinks never hold food.
- Run all: when every part of a course is up, one tap (Run all ✓) runs all its plates.
- Call for hands: tap Hands · Sam on a plate in the window. Sam's Floor screen shows a red Expo is calling bar with the table, and the table's card flashes, until the plate is run. The button then reads Sam · 3m ↻: tap it again to call again.
- Hold a table: guest stepped away, party not all here, or a pause before mains? Tap ⏸ Hold on the table's Floor card, or Hold the table on a plate in the window. Every ticket for that table then says Table on hold: "hold the plate" on the line, "don't run it" in the window. The kitchen keeps cooking what's already going. Tap Fire it ▶ on the Floor or the Kitchen screen to lift it.
- Keyboard and bump bars: most bump bars plug in as a keyboard. On the Kitchen screen, number keys pick a ticket, Enter bumps it one step, Backspace recalls it, H holds the table and C calls for hands. On a station screen, number keys pick a ticket, Enter ticks its next line and Backspace un-ticks the last. Numbers appear on the tickets after the first key press. Tap ⌨ Keys for the full list.
- On the single-station screen, tick each line as it's made. The last tick sends the ticket to the window. Ticked the wrong line? Tap it again. Sent a ticket up by accident? Tap Recall ↶ on the strip that appears for a few seconds.
- Tickets show Table note, Guest profile, and BEO note strips, so allergies and requests reach the line.
- Event courses and regular tables share one rail and are easy to tell apart.
- Ticket times are learned from each station's own history.
- Wi-Fi drops: the Kitchen screens keep working offline. Every tap is saved on the tablet and syncs when you reconnect. (Host and Floor need a connection.)
- There's a practice ticket for training new cooks.
- 86 board: on the Kitchen screen, 86 board lists every item. Put a count on a limited item ("12 left"): it goes down as the floor orders and the item 86es itself at zero. Tap 86 to take anything off, Back on to bring it back. The Floor's order sheet greys out an 86'd item and shows "n left" on counted ones within a second.
- Sound: tap Sound off on the Kitchen or station screen to turn on a chime for a new ticket (and, on the Kitchen screen, a different sound for a plate dying in the window). The ♪ button next to it picks the sound (Chime, Bell, Ding-ding, Buzzer), the volume (Low, Medium, Loud) and has test buttons. All per device. Browsers only play sound after the screen has been tapped once; on an iPad, if you still hear nothing, flip the side switch off silent and tap again.
Checking out a table and taking card payments
On Floor, Check Out becomes available once everything at the table has been served.
- Tip: none, 15%, 18%, 20% or custom, calculated on the pre-tax subtotal.
- Paid by:
- Cash, Comp or Other: tap Mark Paid & Close.
- Card: Enter Card (typed in) or Use Reader (a Stripe card reader). Card payments need Stripe connected, and the guest can get an emailed receipt.
- No Stripe yet? Card still works: run the card on your own terminal, then tap Mark Paid. Docket records it as a card payment.
- Split Check: split evenly (2–20 ways) or by seat. Shared items are divided across seats, and you can tap an item to move it to another guest. Each part gets its own tip and payment method, and the table closes when the last part is paid. A split can be undone until someone pays.
- Refunds aren't available in the app yet. Refund through your Stripe dashboard.
- Printing a check: use Print Check. For a split table you can print one guest's check or all of them. See "Printing."
Card readers
- DocketBEO works with Stripe's own readers: the Reader S700 ($299), ordered from your Stripe Dashboard under Terminal → Shop. A WisePOS E you already own works too, but Stripe stopped selling new ones on September 1, 2026.
- After Stripe is connected, add the reader in Settings → Billing & Payments → Card reader with its registration code (owners and managers).
- You can always type a card in with no reader at all.
- Readers from other processors (Square, Clover, etc.) can't connect to Stripe. They're locked to their own processor.
Printing
- You can print the BEO menu, the event timeline, and table checks.
- Printing uses your device's normal print dialog, so the printer must support AirPrint (iPhone/iPad) or Mopria (Android) and be on the same Wi-Fi.
- Check the printer's spec sheet for AirPrint or Mopria by name. Many "POS receipt printers" don't support either.
- Kitchen ticket printers: Settings → Docket LIVE → Kitchen Printers → Manage (owners and managers). Works with Star printers that support CloudPRNT (e.g. mC-Print3, TSP143IV) and Epson printers that support Server Direct Print (e.g. TM-m30III, TM-T88VII). The printer only needs a network connection, with no computer or driver.
- Add the printer, choose which station's tickets it prints (or all stations), and paste the web address shown into the printer's own setup page. Treat that address like a password.
- Tickets print automatically when a course is fired, with table notes and allergies highlighted. A course that's fired again prints a "FIRED AGAIN" copy.
- Settings shows whether each printer is online, and Print test ticket checks the setup.
- Tickets older than 20 minutes are skipped, so a printer that was off overnight won't flood the kitchen.
Private events: inquiries, BEOs and the client portal
Inquiries
- Add the inquiry form to your website from Settings → Venue → Embed on Your Website.
- The form asks what you need to quote, as taps: the occasion (birthday, rehearsal dinner, wedding, work event and more), the date (or "our dates are flexible"), time of day, headcount and an optional budget range, then name, email and phone. It carries your logo, address and phone.
- Each inquiry shows those answers. Book it names the event after the occasion (for example "Birthday"; the client's name is added on the BEO and calendar) and sets the start time from the time of day they picked.
- Inquiries land in Inquiries with the stages New, Quoted, Held, Won and Lost.
- Reply with a quote emails the client.
- Book it opens a pre-filled new event, On Hold in the first room that's free that day, with their date, headcount and message. Their email and phone go on the new client.
Creating an event (owners and managers)
- New Event walks through four steps: client, date/time/room, guests and deposit, then menu.
- To book a particular day, tap it on the Calendar and use + Add event next to the date. The date is filled in for you.
- A BEO is drafted automatically. Your default tax, gratuity and payment schedule are applied.
- Default tax rate: set it in Settings → Venue → Billing Defaults. For a US venue, DocketBEO suggests a rate from the address on your booking page (or a ZIP you type): "Suggested for Naples, NY 14512: 7.50%". Tap Use this to fill it in, then Save; nothing changes until you do. In New York, Washington and California, and in states with no local sales tax, the suggestion is the full combined rate from the state's own published rates. Elsewhere it's only the state rate, marked as not your full rate, with a link to look yours up. Restaurant and catering sales can be taxed differently, so check the rate with your accountant.
- If the room is already booked that day, you'll see both bookings side by side and choose: another room that's free, the next date the room is free, or Book both anyway (it shows how many covers the kitchen would have that day).
- When the event is created, Open event takes you to its page.
Event statuses
- On Hold: pencilled in, not booked. Confirmed: booked. Fired: happening, or happened. Closed: it happened and the bill is settled. Cancelled: kept on record, but nothing is owed or sent.
- Closing an event: once an event is fired or its date has passed, pick Closed from the status on its event page.
- It closes itself when a fired event's balance reaches $0.00: a payment typed into Paid so far, an online payment through Stripe, or a change that brings the total down to what's been paid. An event paid off before it was fired closes the morning after its date.
- A closed event counts in revenue, Reports and the client's lifetime value, like a fired one. It gets no reminders, isn't chased on the Dashboard, can't start live service on the Pass, and its client portal says Your event is complete with the final invoice and no sign or pay buttons. You can change the status back at any time.
The Calendar
- On a tablet or computer, each day shows its event names, coloured by status (on hold has a dashed outline). On a phone, each event is a dot: orange for confirmed, green for fired, slate for closed, an empty ring for on hold. Cancelled events don't count toward a day, but still show in that day's list, crossed out.
- Search finds events by client name or event name. Upcoming events come first.
- Today jumps back to today's date, in your venue's timezone.
Clients
- Search by name, email or phone. Tap a client to see every event they've booked, and tap an event to open it.
- Lifetime value counts confirmed, fired and closed events only, the same as Reports. Holds and cancellations stay in the history, labelled, but don't add to it.
- Edit changes name, email, phone, type, referral source, notes and VIP. Email can be left blank.
The BEO
- Has sign-offs for Kitchen, Floor, Bar and GM Final Review.
- Only owners and managers see pricing. Everyone else sees the menu, timeline and setup notes.
The client portal (no login for your client)
- Send event page to client on the event page emails your client their link, branded with your venue's name, logo and phone. Their replies come to you.
- Clients can adjust the guest count, choose menu items within your limits, see the live invoice, message you, and pay online if Stripe is connected.
- Review and sign: the client's first step. They see the date, room, guest count and total, type their full name and tick I agree. The signature is stamped with the time and the total and headcount they agreed to. Your event page shows Client signed · name · date. The BEO shows it too, above the team's sign-offs. If the count or total changes afterward, your event page and the BEO say what they signed for, and the event page has an Ask them to sign again button (the BEO links to it). The email tells the client what changed.
- The portal only offers menu items marked for events. Dining-room-only items stay off it.
- Without online payments, the pay button says Ask [coordinator] how to pay and opens a message to you. In the demo, the Pay button shows where it would be and explains that it opens secure checkout in your account; the demo takes no payments.
- Until an event has a price, the portal's invoice says Pricing coming soon from [coordinator] instead of a $0 balance.
- Under the event name the portal counts down in your venue's timezone: 12 days away, Tomorrow, Today, then Held on [date] once it's passed.
- If you cancel the event, the portal says This event was cancelled and only offers the message button: nothing to choose, sign or pay.
- Once an event is Closed, the portal says Your event is complete and shows the final invoice, with Paid in full when it is. There's nothing left to choose, sign or pay.
- The portal is yours alone: there's no DocketBEO help button on it, so every question your client has comes to you through Message [coordinator].
- The portal is English only for now.
Menu lock
- Client menu changes lock a set number of days before the event (Settings → Venue → Billing Defaults, default 5).
- Clients get a reminder email before the lock.
- You can also Lock Menu Now from the event page.
Day-of staff access
- A QR code on the event page opens a no-login page showing the menu and setup notes, with no prices.
Payment schedules and payment reminders
Setting a schedule
- Set a default in Settings → Venue → Payment Schedule (owners and managers). It's applied to every new event: for example a deposit of 25% at booking, 50% 30 days before, and the remainder on the night.
- Each installment is a percentage of the total, a fixed amount, or the remainder, with a due date or Night of event.
- Change any event's schedule on its event page under Payment Schedule. An event with no schedule is treated as one payment, due on the event date.
- A new installment goes in by its due date, ahead of anything due later. Night of event counts as the event date.
- Amounts are to the cent, and the remainder takes whatever is left, so the installments always add up to the total.
How payments count toward it
- Every payment goes toward the earliest installment first. Record payments in Paid so far on the event page: it's the total of every payment from the client, so when one comes in, add it to the number that's there and tap Save Guests, Payments & Rates. Online payments through Stripe are recorded for you.
- Each installment shows Paid, Partial ("$400 left of $1,000"), Due or Overdue.
- An installment that's past its due date and not fully paid is Overdue, even if part of it came in.
Seeing what's owed
- The Dashboard's Needs you list shows events with a payment overdue, including events that have already happened (except closed events, and past events imported from Tripleseat, which are history), and any payment due within the next week. Open event takes you straight to that event's payment schedule. Only owners and managers see money on the Dashboard, and only they see the payment schedule on the event page and the BEO.
- Needs you is the first thing on the Dashboard. It also lists BEOs nobody has signed within two days of the event, inquiries unanswered for over a day, a table that has waited too long on a course, supplier invoices and price moves, dishes over your food-cost line, Google reviews with the reply drafted, and (with Docket LIVE) a day with nobody on the schedule. Each row shows what's already prepared under Ready, and one tap finishes it. Rows that only tell you something (this month's purchases pace, last week's labor %, someone heading for overtime, a group due for a count, tonight's book, "N more inquiries") have Got it: the row reads done and drops out of the count, and it comes back on its own when the thing changes (the month turns, the next pay week, tomorrow's book). The most urgent come first and anything already sent sinks to the bottom. It shows ten at a time; Show N more opens the rest.
Payment reminders
- Automatic reminders: turn on Email clients payment reminders automatically in Settings → Venue → Payment Schedule. Your client gets one email 3 days before each payment is due, and one the day after if it's missed. They go out each morning, in your venue's timezone.
- Each reminder goes out once. A client never gets more than one reminder a day per event, and paid installments and closed events are never chased.
- The email comes from your venue's name and shows your logo. It includes what's due, the full schedule, what's been paid so far, and a link to their event page. If Stripe is connected, the button is Pay on your event page; if not, it asks them to reply for how to pay. Replies come to you.
- Send one now: Email payment reminder on the event page sends the same email right away, for whatever is most pressing.
- The event page shows whether automatic reminders are on, and when the client was last reminded (automatic or sent by hand).
- New venues start with automatic reminders on. You can switch them off at any time, and it takes effect from the next morning.
- Nothing is emailed from the demo.
- The client needs an email on file. Add or change it at the top of the event page, under the client's name. Events whose client has no email are skipped.
- Events imported from Tripleseat start with automatic reminders off. Past ones stay off; for an upcoming one, tap Turn them on at the top of its event page.
Accepting online payments (Stripe)
Settings → Billing & Payments → Accept online payments → Connect Stripe (owners and managers)
- Finish Stripe's onboarding. When it's done you'll see "Connected — clients can pay online."
- Clients can then pay deposits, installments, or the full balance from their event portal. Money goes straight to your Stripe account, and DocketBEO takes no cut.
- Your dashboard updates as soon as a client pays, and the client gets a receipt from your venue's name: what they paid, what's paid so far, the balance left, and a link back to their event page. Replies come to you.
- Stripe is also required for card payments at checkout, card readers, and no-show protection.
- Set default payment schedules in Settings → Venue → Payment Schedule.
QuickBooks Online
Settings → Billing & Payments → Sync to QuickBooks → Connect to QuickBooks (owners and managers)
- To connect: press Connect to QuickBooks, sign in to Intuit, and choose the company. You land back in Settings with "Connected — syncing to QuickBooks." That's it.
- Event payments: when a client pays online through the portal, DocketBEO creates the matching Customer, Invoice and Payment in QuickBooks Online. One invoice per event (against a single "Private Event Revenue" item), not line by line. Payments you record by hand on the event page (Record a payment: cash, check, bank transfer) sync the same way, and each row shows "Synced to QuickBooks" or the error. The event needs a client email. Deposits you record by hand aren't synced.
- Daily dining sales: if Docket LIVE is on, each morning yesterday's closed-table sales go to QuickBooks Online as one Sales Receipt. The amount excludes tax and tips.
- To disconnect: Settings → Billing & Payments → Disconnect from QuickBooks. Syncing stops; nothing already in QuickBooks Online is changed or removed. Removing DocketBEO from your connected apps on the QuickBooks Online side does the same thing.
- If the connection expires (about 100 days without a sync, or access revoked from the QuickBooks side), the owner gets an email and Settings shows a reconnect notice. Press Connect to QuickBooks again to resume. Payments taken while disconnected aren't synced after the fact.
- The full picture, including pricing, is at docketbeo.app/quickbooks.
Invoices (Purchases)
Purchases in the sidebar (owners and managers). Supplier invoices in, ingredient prices out.
- Add an invoice: press Add an invoice and take a photo of the delivery slip or choose the PDF. DocketBEO reads the supplier, the date and every line (product, pack, quantity, unit price, line total), then shows you what it read. Fix anything that's off and press Save invoice. Each line becomes an ingredient with a price; the same ingredient on a later invoice extends its price history.
- Fees, deposits and credits: leave the ingredient blank on those lines and they stay on the invoice without becoming a price.
- Prices: the bottom of the page shows every ingredient's latest price and the change since the one before. The Today screen also tells you when an invoice is in and which prices moved ("Invoice from Sysco is in. 2 prices moved: chicken thighs +11%, heavy cream +6%"); Mark reviewed clears it.
- Suppliers: each supplier has a category (food, alcohol, dry goods, other), which decides whether its invoices land on the Kitchen or the Bar desk, and an order email, where the Today screen's Send the order sends a drafted order (see Counts).
- Open the file: on any saved invoice, Show lines → Open the file opens the original photo or PDF.
- By email: each venue has its own intake address, shown at the top of Purchases (it looks like
a1b2c3d4e5@invoices.docketbeo.app). You'll forward your distributor's invoice emails to it once (a forwarding rule in Sysco Shop, US Foods, Gmail or Outlook) and every invoice after that files itself; a clear read is filed with no one in the loop, an unclear one waits in Purchases marked Needs review. Only PDF and image attachments are read; the email itself is not kept.
Dish costs
Dish costs in the sidebar (owners and managers). What each plate costs to make, priced from the invoices on Purchases.
- Cost a dish: tap a menu item and answer one question at a time: which ingredient (search your list, or add one you buy that hasn't been on an invoice yet), how much per plate (in the unit you think in: oz, lb, g, each, fl oz, cup, qt), an optional note for the kitchen, then Add another or Done. If the recipe is a batch, say how many plates it makes. The plate cost at the top updates as you go, and Save recipe keeps it.
- What the numbers mean: the list shows each dish's price, plate cost and food cost % (plate cost as a share of price). A line counts as missing when its ingredient has no price yet or its unit can't convert to the price unit (oil priced by the pound, measured by the cup); the cost shown leaves it out.
- It moves on its own: plate costs use the newest invoice price for each ingredient, so a price jump on Purchases shows up here without retyping anything.
- Events: an event's invoice shows "Food cost 31% · $620 on $2,000" for the menu at the current headcount, and how many dishes on it aren't costed yet.
- Today screen: a dish at or over 35% food cost, or one whose plate cost rose since you last looked, gets a row with the price that brings it back under 30% ("Raise it to $23.00 and it's back at 30%"). Raise to updates the menu and your website; Got it keeps the price and the row stays quiet until the cost moves again.
Counts
Counts in the sidebar (owners and managers). A rotating cycle count on the phone in the walk-in, not a full inventory.
- Set up counts: give each ingredient a group (proteins, dairy, produce, dry goods, bar, other) and, if you like, a par: the least you want on the shelf, in the ingredient's own unit.
- Count a group: the groups list shows when each was last counted, the one that's due first. Tap a group, type what's on the shelf for each ingredient (leave a line blank to skip it), and press Save count. The last count and what should be there are shown faintly under each name.
- What should be there: expected on hand = last count + what invoices on Purchases delivered since − what the kitchen used since. Usage is theoretical: every ticket the Pass fired, and fired or closed events that never ran through the Pass, times the recipe on Dish costs. An ingredient with no recipe on any dish shows no usage.
- After a save: the gaps come back biggest first. "Short" means less on the shelf than expected; the first count of an ingredient has nothing to compare against yet.
- Today screen: three rows come from the counts. A gap worth money at the last count ("Sea scallop: 3 lb short since Sep 25") with Got it to keep it quiet until the next count; an ingredient under par or under what the next week's events need, with the order already drafted for the preferred (or last) supplier, rounded up to whole packs, and Draft the order to save it; and "Count the proteins tonight" when a group is seven days old or never counted.
- Order drafts: saved drafts sit at the bottom of Purchases with Copy for email, and each open draft is also a row on the Today screen: "Order for Lakeside Foodservice is drafted: 3 lines, $408", with the email it will send shown under Ready (a short note, then the lines). Send the order emails it to the supplier's order address from your venue, with you as reply-to, after a ten-second Undo; Review first opens the note to edit before it goes. The draft then shows Sent to orders@… · Oct 16 on Purchases. A supplier with no order address on file gets Copy the order instead: the same text goes to your clipboard for your own email, and the draft is marked sent.
- Supplier order addresses: under Suppliers on Purchases (owners and managers), each supplier has an order email beside its category. Leave it empty and the Today row offers Copy rather than Send. The demo never emails anyone; its "Send the order" marks the draft sent and stops there.
Reports
Reports (owners and managers, Docket LIVE on)
- Pick Today, 7, 30 or 90 days, or a custom range. Results are compared with the previous period of the same length.
- Revenue is split between the dining room and private events. Private events count on their event date: confirmed, fired and closed only.
- Covers, average check, the by-day chart and everything below them are the dining room only. An event's kitchen tickets count toward station times, not sales, so nothing is counted twice.
- This week sits at the top: up to eight rows of what the week's numbers need you to do, each already worked out, with one tap that finishes it where there is one. A dish over the line with the price that brings it back under target (Raise to), the same ingredient cheaper at another supplier (Prefer), a price that jumped or a count that came up short (Got it), an ingredient under par with its order drafted (Draft the order), a group due for a count, someone heading past overtime, and the report's own findings (food cost over target, purchases up 15% or more, your slowest kitchen station, what no-shows cost you at your average check, how events compared with the dining room), each with a link to the page it lives on. Money first, then purchases, counts and the room. The numbers follow in five sections, each opening with one line on what changed: Money (revenue split between the dining room and private events, food cost against target, labor, prime cost, purchases against the period before, the dishes that cost the most and the biggest price moves), Room (covers, per-cover spend, average check, table time, busiest day, by day, by service period, reservations and no-shows), Kitchen (fire-to-window time by station, item mix, what the counts found), Team (tables by server; hours, overtime and wages for the range once rates are set on Payroll) and Guests (guests seen in the range, first visits, the returning share, your top regulars and their last visit). Food cost is worked out from the item mix times each dish's recipe on Dish costs at today's prices; dishes without a recipe are left out of the percentage and shown as the share of food sales that isn't costed yet.
- The Monday note: every Monday at 7am Eastern the owner gets an email with last week's sales, food cost and events booked, and the top three rows of This week, each linking into the app; the page is where the work lives, the email is the doorway. Send me this week's note now on Reports (owners only) emails it to you on the spot; in the demo it shows on the page instead.
- Export CSV, or Send to my accountant, which opens a pre-filled email in your mail app.
Payroll
Payroll in the sidebar (the owner only). DocketBEO prepares the numbers and the export for your payroll provider; it does not pay anyone, file anything or move money.
- Rates: tap Rates and set each person to hourly (a rate) or salary (a weekly amount), and whether they share in tips. Pay week start (Monday by default) and the overtime line (40 hours) are on the same sheet. Rates are visible to the owner and managers only; the rest of the team never sees them.
- The period: this pay week, last pay week, or a custom range. One row per person: scheduled hours (from the schedule) next to worked hours (from the time clock, breaks taken out), regular and overtime hours, pay, tips and the total. Someone still on the clock is counted up to now and flagged.
- Overtime is weekly: hours over the overtime line in each pay week, paid at 1.5×. Run the report on whole pay weeks; a custom range that starts mid-week only sees the hours inside it.
- Tips are pooled by service day: each day's tips on closed checks are shared across the tip-eligible people who worked that day, in proportion to their hours. If your tips go straight to the server, ignore the column.
- Approve period freezes the totals as a record (hours, pay, tips) so a later correction on the time clock never changes an approved period's numbers.
- Export: a CSV in Gusto's hours-import layout (Last_name, First_name, Regular_hours, Overtime_hours, paycheck_tips, the rest blank), or a plain CSV with every column on the page. Upload it in your provider; you still run payroll there.
- Today screen: "Devon is at 38 h with 1 shift left this week" when someone's hours so far plus the shifts still ahead pass the overtime line (the fix is on the schedule), and "Labor last week ran 34% of sales" when last pay week ran hot.
- Reports: once rates are set, the Costs card shows labor % and prime cost (food cost + labor), and the Monday note carries both.
Your team: invites, roles and scheduling
Unlimited team members on every plan.
Inviting people
- Settings → Team → Invite Team Member (owners and managers): name, email, and a job title.
- They get an email (and there's a QR code) to create their account with that same email.
Roles
- Owner and Manager can:
- invite and remove people
- create events
- see pricing and Reports
- manage billing, payments and online reservations
- Team members use the service screens, BEOs, menu and messages, without financial details.
- Promote someone with Make Manager after they've logged in once.
Schedule
- A weekly grid: click a cell to add a shift with time, role and notes. A shift can end after midnight (for example 5 PM to 1 AM).
- On today at the top lists who's working today, and today's column is highlighted.
- Copy Last Week repeats a schedule. Shifts already on this week aren't copied twice.
- Shift swap requests aren't available yet.
Messages
- Internal team channels, plus a channel for each event that's shared with that client. Clients see those messages in their portal and get an email.
Email notifications
- Settings → Team → My Notifications: get an email when a teammate books an event.
Devices and hardware
You don't need to buy hardware from us. DocketBEO runs on devices you already have.
| Station | Recommended device |
|---|
| Host stand | 10–11" tablet on a stand |
| Servers | 6–8" rugged handheld, or a large phone in a rugged case |
| Cook line (grill, fryer, sauté) | Sealed commercial touchscreen monitor (IP54+), about 15.6". Heat and grease wear out regular tablets |
| Shared expo screen | 21–22" sealed monitor |
| Bar | Tablet in a splash-resistant case |
| Office (settings, reports) | Any laptop or desktop |
- The full guide is at docketbeo.app/answers.
- DocketBEO's own check presenter and kitchen bump bar are in design, not for sale yet. You can sign up for updates at docketbeo.app/hardware.
Mobile apps and languages
- Android app: available now.
- iPhone/iPad app: coming soon to the App Store. Until then, DocketBEO works in Safari on any iPhone or iPad; you can add it to your home screen. When the app launches, create your account at docketbeo.app first, then sign in.
- Languages: the staff app can be switched to English, Spanish, French, Italian, Portuguese, Arabic, Japanese, Korean or Chinese from the language menu in the sidebar. The setting is per device.
- Some screens are still being translated.
- The client portal is English only for now.
- Appearance: Dark or Paper, also per device.
- Calendar sync: Settings → Venue → Sync to Your Personal Calendar gives you a link for Google, Apple or Outlook Calendar. Events show up with a link to the BEO.
Moving from Tripleseat
You can bring your whole private-events history over: past parties, upcoming bookings, and the clients who booked them. Nothing is saved until you've checked a preview, and any import can be removed afterwards. Owners and managers only.
1. Export your events from Tripleseat
- In Tripleseat, go to Reports → Event Details Report → Custom, then click Customize.
- Set Date of Event to cover everything, past and future. Leave Status, Owner and Location unticked, so nothing is filtered out.
- On the Columns tab, tick everything under Event, Account and contact and Financials. Make sure the event ID is ticked: it's what lets you import again later without duplicates.
- Click Run Report, then Export. You get a CSV file.
- A long history can go in as two files (past events and upcoming ones). You can upload both at once.
- Tripleseat's BEO and contract PDFs aren't part of this export. If you want copies for your records, use Download Documents on Tripleseat's Events list.
2. Import it into DocketBEO
- Go to Calendar → Import, or Settings → Venue → Moving from Tripleseat?
- Upload the file. CSV and Excel (.xlsx) both work. An old .xls file needs saving as .xlsx or .csv first.
- Check the columns. Each column is matched to where it goes: event name, date, times, status, room, guest count, client name, email and phone, total, amount paid, notes and menu. Change any that are wrong. Columns we don't recognise are kept as a note on each event (More from Tripleseat on the event page), so nothing is lost.
- If your dates could be read either way (03/04/2026), pick whether the month or the day comes first.
3. Read the preview
- It tells you what will happen in plain numbers, for example "We found 212 past events and 18 upcoming ones for 164 clients."
- Clients: existing clients are matched by phone, then email, the same way as Import Clients, and linked instead of duplicated. Someone who booked five times becomes one client with five events.
- Statuses: Definite comes across as Confirmed, Closed as Closed (done and paid), Tentative and Prospect as On Hold, and Lost events aren't imported. You can change how each status comes across, including keeping lost events as Cancelled history. A Closed event that hasn't happened yet comes across as Confirmed, and a past Definite event that was paid in full comes across as Closed.
- Rooms: rooms are matched to yours by name. Rooms you haven't set up yet can be added for you.
- Rows that can't be read (no date, a date that doesn't exist) are listed with the reason. Everything else still imports.
What you get
- Past events are history: on the calendar and on each client's record, counted in lifetime value and Reports. They never send reminders, emails or kitchen tickets, and they don't show as money owed on the Dashboard.
- Upcoming events are real bookings: on the calendar, the Dashboard and the Pass on the day, with a BEO and a client portal ready.
- Each event's Tripleseat total comes across as one line on its invoice (Total carried over from Tripleseat), and the amount already paid is recorded in Paid so far. Tripleseat's total already includes its tax and service charge, so that line is never taxed again: the invoice total matches Tripleseat's exactly.
- Upcoming events get your default tax and gratuity rates. They only apply to what you add in DocketBEO later (a menu item, an add-on), so the total still matches Tripleseat's until you add something. Past events keep 0% and stay exactly as Tripleseat had them. Menu items and notes from the export go into the event's setup notes, so they're on the BEO.
- The import never emails your clients. You decide when to send someone their event page.
- Automatic payment and menu reminders are off for imported upcoming events, since Tripleseat may already be reminding them. Tick Send automatic payment and menu reminders on the preview to turn them on for all of them, or turn them on one event at a time from the event page.
- Imported events don't get your default payment schedule. Add one on the event page if you want installments.
Importing again
- Keep using Tripleseat for a few weeks if you like, then import a fresh export right before you switch. Events already here are matched by their Tripleseat ID: unchanged ones are skipped, changed ones are updated, new ones are added. No duplicates.
- Anything you've changed in DocketBEO since the last import stays as you left it. Payments recorded here aren't overwritten either.
- An event that was imported before and is now Lost in Tripleseat is marked Cancelled here.
- Without an ID column, events are matched by date, time, name and client instead, so an event whose date changed in Tripleseat would come across as a new one.
Removing an import
- Remove this import (at the end of an import, or under Your imports on the Import page) deletes the events that import added, plus the clients and rooms it created that nothing else uses. Clients and events that were already here are never touched.
Moving from another system (importing clients)
- Coming from Tripleseat? Use Moving from Tripleseat above instead: it brings your clients along with their events.
- Clients → Import Clients (owners and managers): upload a CSV exported from your old system.
- Choose the file, or drag it onto the box. Match its columns to Name, Email, Phone, VIP, Segment, Referral source and Notes.
- It works in the demo too, and in every language DocketBEO speaks.
- Existing clients are matched by phone or email. Only empty fields are filled in, so nothing you already have is overwritten.
Referral program
- Find your referral link in Settings → Billing & Payments → Refer a Friend.
- When a venue you referred pays its first bill, you get a free month as account credit. There's no limit on how many you can earn.
- They get 20% off their first 3 months.
Billing, plan changes and cancelling
- Settings → Billing & Payments → Manage Billing (owners and managers) opens your Stripe billing page to update your card and see invoices.
- Cancelling: Manage Billing → Cancel subscription. You keep access until the end of the current billing period, and you won't be charged again.
- Changing plans: email hello@docketbeo.app and we'll switch you over.
- You'll get an email receipt for each payment.
- Adding a location: Settings → Venue → Add Venue. Your plan sets how many locations you can have.
Deleting your account and your data
- Email hello@docketbeo.app with the subject "Account Deletion Request."
- Say whether you want just your login deleted, or your whole venue and its data.
- We'll verify it's you and complete the deletion within 30 days.
- Billing records are kept as required by law.
- Details: docketbeo.app/delete-account.
Contacting support
- Email hello@docketbeo.app, or use the ? help button inside the app ("Message us"). You can ask for a call there too.
- The team replies by email.