What's new in OhMyDesk
New features and improvements shipped weekly — everything we've added to help you run a smoother coworking space. Newest first.
September 2026
-
Marking a reserved day pass paid keeps its price
Mark as paid on a desk reserved from the public booking page now saves the space's day pass rate when the reservation has no price yet, instead of storing €0. The visitor's email, phone and notes stay on the booking.
Read the full feature → -
Repeat flex pack purchases set plan dates for walk-up door codes
When someone who is already in your space buys another flex pack on the public booking page, their plan start and expiry dates are set correctly so a standing door PIN can be issued immediately — not only on the first-ever purchase.
Read the full feature → -
Meeting-room extras priced per person
Mark any meeting-room extra as "Price per person" on the Plans page, and choose which rooms offer it. When a visitor picks one while paying for a room online, the booking asks how many people are coming (up to the room's capacity) and charges the extra for each of them. Operators set the number of people in the room booking dialog; changing it later re-prices per-person extras on the member's balance.
Read the full feature → -
Your Terms of Use and privacy policy at checkout
In Settings → Integrations, upload your Terms of Use and privacy policy as PDFs or link to them on your own website. Every public checkout — desks, passes, meeting rooms and offices — then shows "By placing this order, I accept the Terms of Use" with a link to your document; uploaded PDFs open from an ohmydesk.app address. Visitors must also tick a box confirming they have read your privacy policy before they can book. Spaces without these documents see no change.
Read the full feature → -
Export a month of invoices as CSV
A new Export CSV button on the Invoices page downloads every invoice issued in a chosen month, by issue date, for your accountant. Each row has the invoice number, issue and due dates, status, customer and VAT ID, service period, net, VAT, total and payment date. In German, the file uses semicolons and decimal commas, so it opens directly in Excel.
Read the full feature → -
Public booking and billing QA fixes
Public booking now explains an invalid email and can match a member whose phone is stored in the older contact field. Booking dialogs show submitted company details, and converting a private-office lead keeps those details on the member. Member statements show recurring service dates and the Charge linked to a payment; the monthly-invoice hint points to Billing profiles. Operators can also record payment for an imported invoice with a member.
Read the full feature → -
Payment history keeps its invoice and booking context
Member statements show available invoice service periods and saved payment comments. Payments link to invoices and show readable booking details, and a member multi-select filters both Charges and Payments. Interactive payment actions now open the full form, including Extra earnings; the calendar keeps its express Mark as paid action. Payment details are retained when repricing a booking, and shared billing profiles remain protected while active plans use them.
Read the full feature → -
Jump back to today in the meeting-room calendar
A Today button now sits between the calendar arrows in day, week, and month views, so you can return to the current date after browsing ahead or back.
Read the full feature → -
Choose a shared billing date for each recurring plan
For each Hotdesk or Virtual Office tier and each Private Office, choose a shared calendar-month billing date or a full month from the assignment date. The shared-date option prorates the first charge through month-end, then starts later periods on the 1st. The choice is saved on new assignments and does not change auto-invoicing or existing agreements.
Read the full feature → -
Overview compares past months with the month before
When you look at an earlier month on the Overview, the net profit and expenses changes and the insight card now compare it with the month right before it. Before, they compared it with last month, so August could read "0.0% vs Aug".
-
Overview opens faster, without loading placeholders
The Overview now loads its six months of figures at the same time instead of one after another, so the page is ready in about a second. When you come back, it shows the numbers from your last visit straight away, marked "Updating…", and switches to the fresh ones when they arrive. On a first visit you see the page layout right away instead of grey placeholder blocks.
-
Visitors can add extras when they book a meeting room online
Visitors paying online for a meeting room, by the hour or for the whole day, can now add the extras you marked public, like coffee or catering. Per-hour extras are priced by the booked hours and per-day extras by the booked days, and the total updates as they pick. Each extra gets its own line on the paid invoice.
Read the full feature → -
See the extras a visitor paid for online
When a visitor buys a desk pass online with extras like coffee or a locker, those extras now show under Extras on every day of the booking in the calendar, marked as paid online. If you delete one day of the pass, the extras stay with the remaining days.
-
Visitors can add extras when they buy a desk pass online
Visitors buying a day, weekly, or monthly desk pass online can add extras you marked public, such as coffee or a locker, and pay for them in the same checkout. Each extra is its own line on the paid invoice. On a weekly or monthly subscription the extra is charged once, with the first payment.
Read the full feature → -
Public bookings can link visitors to existing members
The redesigned Settings → Integrations → Public booking card lets you switch on matching by email or phone; a booking links only when one member matches, and names are never used. Contacts with no existing member match appear in Leads, while ambiguous matches stay unlinked. The website embed snippet now has its own card.
Read the full feature → -
Public bookings carry visitor details into member records
When you open a public desk or meeting-room booking, you can save the visitor’s email, phone and company billing details on their member record. The member picker also finds likely existing people by contact details and across Latin and Cyrillic spellings.
Read the full feature → -
Give members access to extra doors like the makerspace
Next to your front door you can now add more locks from the same smart-lock account in Settings → Integrations → Smart locks, each with a name such as Makerspace or Storage. In a member's details on the Members page, tick the extra doors they may open: their booking PIN then works on those doors too, for the same days and hours. Everyone keeps the front door as before. Extra locks are $15/month each on a paid plan and are not part of the trial.
Read the full feature → -
Add extras like coffee, snacks or lockers to bookings
Set up your extras once under Plans → Services & extras, with a price per booking, per day or per hour. Then add them to a desk or meeting-room booking in two clicks. Each extra is charged to the member at your set price and shows up under Unlinked charges when you create their next invoice. Removing an extra, or cancelling the booking, reverses the charge.
-
Weekly and monthly passes can open the door 24/7
In Settings → Integrations → Smart locks you can now switch weekly and monthly passes to 24/7 door access. Members on those passes get one code that works around the clock for the whole period, weekends and closed days included. Day passes keep following your opening hours, and nothing changes until you switch a pass on.
Read the full feature → -
Your dashboard language follows your account
Pick your language when you first set up a space, change it anytime under My OhMyDesk, and it stays saved to your account across browsers. Your own choice now always beats the space default, and the page no longer flips between languages while it loads.
-
Expired door codes no longer show as active
The Overview lists only door codes that are still within their validity window, so past bookings do not look like they still have access. Hourly cleanup also retries removing expired codes from your lock when Seam needs another attempt.
Read the full feature → -
Public and member booking dates follow your language
The public booking page and the member portal now show weekdays, calendar headings, and meeting-room times in the language you are using. German visitors see German weekdays and a 24-hour clock instead of English day names and AM/PM.
-
Choose the language a space opens in
My Space can now open in a language you choose, instead of only following the visitor’s browser. People can still switch, and that choice is remembered for this space only. Spaces that leave the setting unset keep today’s browser language.
Read the full feature → -
The app now remembers your browser language
German-language browsers now see OhMyDesk and your public booking page in German straight away, and it stays German after a reload instead of switching back to English. Picking a language yourself is still remembered, and visiting a space that only offers English no longer switches you to English on every other space.
-
Track public booking conversions in Google Ads and GA4
Paid public checkouts now land on a stable thank-you URL (/book/your-space/complete) for conversion tracking, and every successful booking fires a documented JavaScript event (plus optional dataLayer push) for embedded widgets on Wix and other sites. Copy the URL and GTM snippet from Settings → Integrations → Public booking.
Read the full feature → -
English and German across your operator workspace
The full DeskPlanner dashboard now follows your language choice: calendar, members, billing, invoices, expenses, tasks, settings, and the member portal switch between English and Deutsch with the same language controls you already use on public booking. Pick default languages for your space in My Space; members and visitors keep their own switcher where you offer more than one language.
Read the full feature → -
Private office list view, detail sheet with billing and collapsible filters
Private offices can now be viewed as cards or a table with collapsible filters, sorting, and full detail sheets showing company and billing address info. Virtual office table filters can now be collapsed, and the continuous plan term calculation correctly tracks subscription runs on specific tariffs.
Read the full feature → -
Tidier expense categories, virtual office cards and member links
Pick an expense category's icon by clicking the icon itself. The virtual office edit window shows the start and end dates side by side, with Next billing below. Virtual office names open the virtual office card, which now lists the member as a link. The meeting-room booking popup gets an Open member card link, the owner in "Shared by" on a shared billing profile opens that member, and booking references in Payments open the member's bookings. Editing a meeting-room booking's price no longer resets its length, and the Overview fields line up. The Overview revenue trend now always includes imported history, so its toggle is gone, and the duplicate Edit billing button and the Bill to Edit link are removed. Amber buttons keep white text when hovered.
-
Edit more virtual office details and filter the table by any column
The virtual office edit window now lets you change Virtual office since, Next billing and Notes. The table gains a Next billing column and filters for every column, and Member since moves to the member card where it can be edited. The member name in the table opens the member card.
-
OfficeRnD invoice imports keep member balances correct
Imported and legacy-adopted OfficeRnD invoices now finish their ledger reconciliation before being marked complete. Older imported invoices missing their linked charge are repaired in resumable batches, preventing their payments from appearing as unintended member credit.
-
OfficeRnD imports can be rehearsed safely in another workspace
Importing the same OfficeRnD workspace into a test or replacement organization no longer collides with records from an earlier import. Existing invoices and compatible desk bookings created by the legacy importer are linked instead of duplicated, genuinely occupied desk slots are skipped safely, occupied invoice numbers receive a stable OfficeRnD suffix, and large histories continue in small resumable batches.
-
Free public desk reservations no longer appear as paid
A desk reserved through a public booking page without Stripe payment now stays marked as Booked. Only a confirmed payment marks it as Paid in the calendar and revenue reporting.
Read the full feature → -
Multi-language support: English and German across all surfaces
DeskPlanner now supports English and German across your entire workspace, public booking pages, and member portals. Operators can set their preferred space language in My Space, and visitors can easily toggle languages on public booking doors.
Read the full feature → -
Virtual office cards show the right price, term, and payer
The "custom" price badge no longer shows up just because a member is on a multi-variant or discounted plan — only when their price is genuinely different from what their plan normally costs. The term now reflects how long a member has continuously been on their plan, not just the current billing period. And the detail card now shows who actually pays for the plan and whether auto-invoicing is on, with a link straight to their invoices.
Read the full feature → -
Sort, filter, and see start dates in your virtual address list
The virtual address list now has a Start date column, sorting on every column, and a plan filter — and the price column drops the currency symbol for a cleaner read.
Read the full feature → -
Share a billing profile across members
A billing profile (e.g. a company) can now be used by more than one member — point each member's plan at the same payer instead of re-entering their details. Optionally combine everyone sharing a profile onto one invoice instead of separate ones. Your own billing details also now show as their own card right on your profile, not tucked inside a popup.
-
Billing and invoicing polish
The member statement no longer repeats the currency on every line. Invoice number zero-padding now has its own control in Settings → Billing. And "Tax / company ID" is now labeled "Company / Reg ID" throughout, on both your own space's billing details and every member/client form.
-
Expense categories can now have an icon
Pick from a curated set of icons for any expense category — in the Add/Edit Expense form or from the category list in Settings.
Read the full feature → -
Clearer error messages, and smaller fixes
Sending an invoice or inviting a manager with a bad email address now tells you that, instead of a generic failure. The member picker in Add payment (and similar dialogs) now opens and browses properly instead of only working once you start typing. Global search also now matches a billing profile's legal name, not just a member's own.
-
Mark a booking paid straight from the calendar
Click a booking on the calendar and hit Mark as paid — no need to open the full editor. Records the payment the same way the booking editor does, and skips ongoing contracts (those still use the dedicated renewal flow).
Read the full feature → -
Flex day bookings no longer issue two door codes
Booking a flex day from the member link now sends one PIN and programs one keypad code. A race was creating a second Nuki code with the same name and a different PIN.
Read the full feature → -
Generate a door code when you mark a booking paid
Walk-in or offline payments now mint a PIN when you flip a booking to Paid or Assigned, and you can tap Generate door code on a saved booking if one was missed. Works from the booking editor and the calendar popover when a keypad door is connected.
Read the full feature → -
Clear a member's flex balance
Open a member → Overview → Clear flex balance to zero out a stale or test flex pack without starting a new plan. Distinct from Reset, which sells a fresh pack from your org defaults.
Read the full feature → -
Add a description to any plan or meeting room
Passes and meeting rooms now support an optional description — say what's included, house rules, or anything visitors should know before they book. Shown right on the public booking page once they pick that plan or room.
Read the full feature → -
See who currently has an active door code
Your Overview dashboard now shows a quick list of active door codes — who each one is for, the PIN, and when it expires. Only appears once your space has smart locks connected and an active code issued.
Read the full feature → -
Recurring weekly and monthly passes via Stripe Subscriptions
Weekly and monthly passes bought on your public booking page can auto-renew through Stripe. This is off by default — turn it on in Settings → Integrations → Stripe. Once on, each cycle keeps the same desk when it is free, keeps the door PIN in sync, and members can stop renewal from the portal.
Read the full feature → -
Public booking switcher: easily navigate between desks, passes, and rooms
Visitors can now switch between desks, passes, meeting rooms, and private offices directly from the top of your public booking page. Each door highlights what is active and links directly to the others, so visitors never have to back up or hunt for a separate link.
Read the full feature → -
Flex members can confirm a visit from their booking link again
Confirming a day on a member’s personal flex link could fail with “Failed to book” even when desks were free. That confirm step now saves the visit and shows the usual you’re-in screen.
Read the full feature → -
Choose who pays for a Hotdesk plan
Members on a Hotdesk plan now get the “Bill each plan to” picker too, so their hotdesk can be invoiced to a company billing profile instead of their own details. When a member has both a monthly desk and a hotdesk, one row covers both because they always share the same payer.
Read the full feature → -
Virtual offices activated from a member card are billed like any other
Activating a virtual office from a member’s card now starts the same billing record as activating it on the Virtual Offices page. The plan is included in monthly auto-invoices and recurring charges, and you can choose who pays for it under “Bill each plan to”.
Read the full feature → -
Pick a start date for weekly and monthly passes
Visitors buying a weekly or monthly pass on your public booking page can now choose when it starts instead of being locked to the next available day — handy for anyone planning a few days ahead.
Read the full feature → -
Free weekly and monthly passes now hold one desk for the whole period
Spaces that sell passes without online payment could see a visitor land on a different desk each day of their pass. Pass requests now reserve one desk for every day of the period, the same way a paid Stripe pass already did.
Read the full feature → -
Return to this week from the desk calendar in one click
When you browse past or future desk bookings, the Week view now keeps a Today button between its navigation arrows. One click brings you back to the current week, without stepping through every week in between.
-
Mark invoices as paid via AI Autopilot and Ask AI
Reconcile invoices straight from chat in Telegram or the web app. Tell the AI "mark invoice INV-2026-042 as paid" or "mark Sarah’s invoice paid via cash", and the AI verifies the balance, logs the payment to the ledger, and confirms desk bookings automatically.
Read the full feature → -
Reactivate and unfreeze member plans from AI Autopilot
When a member returns from travel, ask the AI Autopilot or Ask AI to unfreeze their membership (e.g. "unfreeze Alex starting Monday"). The AI checks calendar availability, allocates banked days onto their previous or next free desk, and stages the reactivation for a single-tap confirmation.
Read the full feature → -
OfficeRnD import brings over clients, finance, plans, and bookings
Import data starts with a choice of migration provider and connects to OfficeRnD with read-only permissions. Choose any of four blocks — Clients, Finance, Rooms and desks, Bookings — and review every record before anything is written: members keep their personal billing details, and companies arrive as billing details on their members, or on a contact client when they have no members; invoices keep their exact lines, numbers, and totals; payments keep their method; active virtual office and hotdesk memberships become OhMyDesk plans billed from the first period OfficeRnD had not invoiced; and visit packs keep their remaining visits and expiry. Records that match nothing are skipped with a reason instead of blocking the whole import, and every field conflict lets you keep the current value or use OfficeRnD.
-
Organization settings are now My Space
The workspace setup page is now My Space, with one clear vertical flow instead of uneven cards. General holds the space name, timezone and logo; operating hours holds working days and closure dates; and billing starts with revenue reporting and currency.
Read the full feature → -
Your workspace controls and plan status now live in one place
My OhMyDesk brings together the workspace plan, trial time remaining, feedback, team and owner-only danger controls. Every unpaid workspace keeps its Upgrade button, and anyone can compare plans before the owner requests an invoice; sidebar customization stays in the sidebar footer.
Read the full feature → -
OfficeRnD import brings over clients, finance, plans, and bookings
Import data starts with a choice of migration provider and connects to OfficeRnD with read-only permissions. Choose any of four blocks — Clients, Finance, Rooms and desks, Bookings — and review every record before anything is written: members keep their personal billing details, and companies arrive as billing details on their members, or on a contact client when they have no members; invoices keep their exact lines, numbers, and totals; payments keep their method; active virtual office and hotdesk memberships become OhMyDesk plans billed from the first period OfficeRnD had not invoiced; and visit packs keep their remaining visits and expiry. Records that match nothing are skipped with a reason instead of blocking the whole import, and every field conflict lets you keep the current value or use OfficeRnD.
-
Flex plan billing: one charge when you invoice an activation
Activating a flex plan already posts the sale to the member’s balance. Sending an invoice for that same sale now links to that existing charge instead of adding a second one — so the statement stays at one line (for example €75, not €150 after payment). The Ask AI button also steps aside while the member drawer is open so it no longer covers Activate plan.
Read the full feature → -
Record expenses directly in AI Autopilot and Ask AI
Space owners can now log expenses directly from chat in the web app or Telegram. Mention the amount, category, and date (e.g. "add an expense of 22 EUR today for supplies"), and the AI stages it for a single-tap confirmation into your expense ledger.
Read the full feature → -
Meeting-room bookings show on the member card, and Overview opens the payment form directly
A meeting-room reservation made for a member now appears in a Meeting room bookings section on their card, alongside their desk booking history, instead of looking like it was never saved. The Overview “Add payment” button opens the payment form straight away rather than dropping you on the Charges & payments list to find it again.
Read the full feature → -
Correcting a member name no longer wipes the booking from Overview
Changing the name on a desk booking used to post a reversal and a new charge, and Overview waited until the next night to count the income. Name corrections now keep the same charge on the same member, and paid bookings show up on Overview as soon as you save.
Read the full feature → -
Public booking: clearer date picks and pass options together
On your public booking page, Today and Tomorrow now show a clear selected state when tapped, and the pass list stays visible after someone picks a date — so visitors can choose a day and a pass type without one option disappearing. Day passes use the date they picked.
Read the full feature → -
Overview now counts today's paid bookings right away
Paid desk bookings could sit on the calendar as confirmed while Overview still showed yesterday's revenue total — the service ledger only refreshed once a night. Marking a booking paid or opening Overview now updates the revenue figure immediately, so day passes and other same-day bookings show up in the month total without waiting until tomorrow.
Read the full feature → -
WhatsApp concierge: visitors message your number, the AI answers
Spaces can now connect their own WhatsApp Business number in Integrations. Inbound messages use the same AI concierge as Telegram — hours, prices, live desks, and a lead when someone wants to book. Meta bills your Business Manager. Proactive WhatsApp alerts and the operator copilot on WhatsApp are next.
Read the full feature → -
Unpaid room holds no longer stick, and public bookings keep the member
Backing out of Stripe on a meeting room used to leave the booking on the calendar as if it were paid. Those holds now last 30 minutes, show as awaiting payment, and never raise an invoice. A public booking with an email you already have updates that member instead of creating a second one, and company address plus VAT now appear on the member and the invoice. Flex day-booked and last-day emails carry the book / buy-another-pack link. Door codes already follow operating hours; the lock card no longer has a separate time window.
Read the full feature → -
Charges and payments are easier to audit and reconcile
Finance now separates Payments and Charges into their own tabs, links every assigned member and invoice to its source, and lets an operator attach an unassigned record to an existing member. Member statements group each reversal with its Charge on the same effective date — directly above it in the default newest-first view, so the balance shown at the top of the pair is the one that applies after the reversal — note when it was actually reversed, and link the invoice number without mixing currencies. Eligible same-day meeting-room bookings are marked waived while keeping the full tariff on the booking and in the statement, offset by an equal waiver, so the member pays nothing. Zero-price desk bookings no longer create empty euro charges, and Custom bookings keep their Custom calendar badge.
Read the full feature → -
Paid public bookings now send the door code
A visitor who paid for a desk on your public booking page used to get the confirmation only — the PIN email fired from the calendar, not from Stripe. Paid day, week, and month bookings now issue the same door code as a desk you assign yourself. Buying a flex pack still has no PIN (that is a balance, not a day); the confirmation now includes a Book a Desk button, and the code is emailed when they pick a day.
Read the full feature → -
Letting a private office bills the company straight away
Assigning a company to a private office opened the agreement and marked the office occupied, but the rent never reached the company’s balance — the charge for the started month only appeared after an overnight run, and on some spaces it never appeared at all. The first month is now charged the moment you assign the office, and it shows on the member statement and in Finance without a refresh. Hot-desk and virtual-office plans start the same way.
Read the full feature → -
Door codes now follow your operating hours
The smart lock used to keep its own access window, set once when you picked the lock, with no link to the operating hours in your settings. If you close at 18:00 on Saturday and not at all on Sunday, booking PINs ignored both. Codes are now issued per booked day from your actual operating hours, and no code at all is issued for a day you are closed — members still get one PIN to remember. Bookings longer than two weeks keep a single window, so a month-long member does not use up your lock's limited code slots.
Read the full feature → -
Locks with a keypad are recognised properly again
A Nuki lock with a paired keypad could be read as "no keypad", and OhMyDesk then quietly skipped the PIN on every booking. We now check every signal your lock vendor sends, not just one, and an already-saved front door repairs itself the next time you open Settings — no need to reconnect. The lock card also shows the make and model of the lock we are talking to, plus a panel with exactly what your vendor reports about it, so "no keypad" is something you can check rather than guess at.
Read the full feature → -
Waived meeting rooms no longer look like a credit
When a member with a desk booking reserved an hourly meeting room, the statement showed only the waiver as money back and hid the room charge it cancelled out. Both halves are now listed side by side, so a free room reads as free instead of as credit the member never earned.
Read the full feature → -
Existing Flex members can book their next desk again
Flex plans activated before the new member ledger showed the correct remaining balance but failed when the operator booked the next visit. Those active plans are now linked into the ledger without charging the member again. The booking window also stopped calling every save failure a booking conflict — it now shows what the server actually rejected, so a missing plan is not mistaken for a clash with another reservation.
Read the full feature → -
Clearer public booking when a room is closed or you pick a long stay
A meeting room closed on a given weekday said "fully booked" and sent visitors hunting for a free time that did not exist — it now says the room is closed that day. Multi-day desk bookings stop at 31 days with an explanation while you pick, instead of failing at payment. The desk page no longer shows two buttons to the same meeting-room page, and a page left open past midnight now offers today's dates rather than yesterday's.
Read the full feature →
August 2026
-
Meeting-room payment success no longer says "your desk"
After paying for a whole-day meeting room, the confirmation page used to send you back to the desk booking URL and call it a desk. That return now lands on the meeting-room page and says the room is reserved.
Read the full feature → -
Paid public bookings now ask for the same contact details
A day pass used to skip email, and company details only appeared on free desk bookings or meeting rooms. Every paid public checkout — calendar days, day pass, flex, weekly, monthly — now requires email, and the "booking for my company" invoice fields show on those flows the same way they already did on rooms.
Read the full feature → -
Paid public bookings now send the confirmation email
A card payment used to confirm the booking and still skip the visitor email — whole-day rooms never sent one, and desk or pass checkouts only emailed if the form field was filled, not the address Stripe already collected. Confirmations now go out on every provisioned paid booking that has an email, including the Stripe Checkout address. Operator booking-alert emails for those same payments were using the wrong field names and never sent; that is fixed too.
Read the full feature → -
Hourly meeting rooms now start at your real opening time
If you open at 07:30, the public page used to offer 07:00, 08:00, 09:00 — and those on-the-hour slots were rejected as invalid because checkout already used 07:30. Visitors now pick 07:30, 08:30, and so on, and those bookings confirm.
Read the full feature → -
Public booking now lists every pass and room you sell
Visitors on the public page used to see only a single day pass and a single flex option, even when the space sold more SKUs. The catalog now shows every day-pass, flex, weekly, and monthly variant that is turned on, plus each named meeting room, without requiring an admin login.
Read the full feature → -
Anonymous Stripe payments now show in Payments
A visitor who paid for a desk, flex pass, or office online would see a confirmed booking while the Payments page stayed empty — only meeting-room checkouts wrote an invoice. Those charges now create a paid invoice, so they appear in Payments and Invoices like every other card payment.
Read the full feature → -
VAT is charged the same way on desks, rooms, and plans
Public Stripe checkout used to add VAT on meeting rooms and skip it on desks and passes. Every paid resource now uses the same rule: listed prices are either net (VAT added) or already-gross (visitors pay the listed amount), set once under Organization → Billing. Invoices match the amount charged.
Read the full feature → -
Multi-day desk bookings now charge through Stripe, same as a single day
When you take card for day passes, visitors who pick more than one date on the public booking page now pay for every day before the desks are held — the same checkout as a single day, just multiplied. Spaces that do not take card online are unchanged: those bookings still confirm without payment.
Read the full feature → -
Fix: "Mark as paid" on ongoing contracts now updates the calendar immediately
After marking an open-ended contract month as paid, the calendar could still show the block as booked even though the payment went through — you had to refresh to see it as assigned. The paid month now flips to assigned as soon as the charge is settled, before the next runway month is booked, and the calendar jumps to the week that actually contains the newly booked month instead of landing a week short.
Read the full feature → -
Make hourly meeting rooms free with a same-day desk booking
Each meeting room now has its own rule, enabled by default: when the same member already has an active desk booking on that exact date, their hourly room charge is waived automatically. The original tariff and an equal negative waiver both remain visible for a clean audit trail. Whole-day and multi-day bookings always keep their normal tariff.
Read the full feature → -
Invoices enter the member balance when they are sent
Draft invoices stay editable and do not affect what a member owes. The first send now posts a standalone invoice as one charge using its line descriptions, or links it to booking and recurring charges that already exist so nothing is billed twice. Resending is safe, and marking it paid records one confirmed payment without hidden allocation.
Read the full feature → -
Sell prepaid meeting room hour packs
Sell a member a bundle of meeting room hours at whatever price you set — a tutor buying 10 hours, for example. Book their sessions against the pack and the balance burns down by the real length of each booking, not a flat unit. Top up any time without resetting hours already used. Shows up on their profile only once you have sold them a pack.
Read the full feature → -
Give members a discounted rate automatically with Pricing Groups
Create a named group — Student, Friends & Family, whatever fits your space — with a percentage off, then assign a member to it once. Their discount now pre-fills every time they start a new desk, flex, hotdesk, virtual office, meeting room, or private office plan. If they already have an active plan, you choose whether the new rate applies going forward only or updates their current one too — nothing changes silently. Fully hidden until you create your first group.
Read the full feature → -
Operators can make an exception for closed days and hours
Need to let someone in on a Sunday or keep a meeting room open after its usual closing time? The operator calendar now lets you book a desk on a regular day off and expand the meeting-room grid beyond normal hours. OhMyDesk shows the exception clearly and asks you to confirm before saving; member links and public booking pages keep following the space and room schedules.
Read the full feature → -
A simpler member balance with reversible charges
Charges and payments now work as one straightforward member balance: charges add what is owed, payments reduce it, and refunds or corrections appear as separate negative entries instead of rewriting history. Operators can add and remove manual entries, record a refund, or reverse a charge from the Finance page; payments may reference a charge without being split or allocated behind the scenes.
Read the full feature → -
A cleaner sidebar that hides what you are not using yet
Settings items like Organization and Plans are always visible — no more collapsed section to hunt for. Meeting Rooms disappears from the sidebar until you add your first room on Rooms; it comes back automatically once configured. You can still pin any item visible from Customize sidebar.
-
Website and social links on your public booking page
Visitors can now reach you straight from your booking page — tap to call, email, open your website, or follow you on Instagram and LinkedIn. Add the links once under Organization → Contacts & Space (or Settings → Contact Info); they appear on every public and member booking page.
Read the full feature → -
Pay online for hourly meeting room bookings
When meeting-room Stripe payments are enabled, visitors booking by the hour on your public page now go through Stripe Checkout — same as whole-day rooms and desk passes. The slot is held while they pay, then confirmed automatically with operator alerts and a visitor confirmation email.
Read the full feature → -
Fix: "Mark as paid" on ongoing contracts now settles the whole month
Rolling forward an open-ended desk contract with "Mark as paid" could settle only the first day of the new month instead of the full cycle, leaving the rest of the month showing as unpaid even though it had been collected. Marking a cycle paid now clears the entire month in one action, same as the very first month of a new contract already did.
Read the full feature → -
Set any VAT rate on your space
Organization → Billing & invoices now lets you type your actual VAT rate — 19%, 21%, 7.7%, whatever your jurisdiction requires — instead of picking from a fixed list. Use 0 if you don't charge VAT; "+VAT" on public prices still appears automatically when the rate is above zero.
Read the full feature → -
Set real operating hours — and have them actually enforced
Organization → General now has an Operating hours card: set an open and close time for every day of the week, with a "closed" toggle for days you don't run at all. Meeting rooms can still override the schedule per room. These hours aren't just for show — bookings outside them are blocked on the public page, and smart-lock entries outside them don't burn a flex day.
Read the full feature → -
Give flex balances an expiry date
Flex plans can now be set to auto-expire — turn on "Auto-expire unused balance after" in your Flex Plan settings and pick a number of days. Each member gets a fixed deadline from the day their plan is activated; if days are still unused when it passes, they're quietly forfeited instead of sitting on the books forever. Members get one reminder email two weeks before the deadline so nobody loses days by surprise. Off by default — leave it blank and nothing changes.
Read the full feature → -
Closure dates: close a whole range, see who it hits, and still book through it
Closing for a summer shut-down no longer means adding each day one at a time — Organization → General → Closure dates now takes a second date and closes the whole range in one step, both ends included, folded back into a single row you can lift in one click. On the calendar a closed day now reads as its own thing instead of looking like a weekend, and anyone who booked before you closed that day still shows up, dimmed rather than hidden, so you can see who to contact. And because you run the space, a closure no longer locks you out of your own calendar: booking or editing on a closed day asks you to confirm, then goes through. Members and your public booking page stay blocked.
Read the full feature →
July 2026
-
Choose how revenue is shown in Overview
Your space can now report revenue by the day money was actually received, by the days a booked service was delivered, or keep both views available. Record a payment once and OhMyDesk keeps the audit trail, applies it to the oldest open charge automatically unless you pick one yourself, and records refunds as their own entries.
Read the full feature → -
Turn off company invoicing on your public booking page
The “I’m booking for my company” option on your public desk and meeting-room booking pages is now optional. A new “Let visitors book as a company” switch under Settings → Integrations → Public booking page lets you hide it if you don’t want visitors adding company details for an invoice — on by default, so nothing changes unless you turn it off.
Read the full feature → -
Flex members can book as far ahead as their package lasts
A flex package is prepaid and never expires, so your flex members are no longer stopped at the same booking horizon you set for public visitors — they can now plan visits up to a year out from their personal booking link. Their calendar still shows real desk availability for those further-out dates, so nothing gets double-booked. Your public booking page is unchanged.
Read the full feature → -
Every desk booking shows the plan and saved price
Desk bookings now keep the member, plan, date range, and saved booking price together even for one-day and compact calendar bars. The old Ends badge is gone, and Calendar Tweaks can show or hide the booking duration, show the plan inline, show a Flex, Hotdesk, 1-day, or Dedicated badge above the price, or hide it.
Read the full feature → -
Cleaner member and virtual-office follow-ups
Member cards now focus their header on the person, with a tighter Billing view and only the active plan filters. Virtual Offices remember whether you prefer cards or rows, and Insights now flags virtual-office contracts that are about to end.
Read the full feature → -
A cleaner first task
When your shared task list is empty, Back office now shows one clear “Add your first task” action in the empty state instead of duplicating the same action in the page header.
Read the full feature → -
Meeting-room hours are now visible before you book
When you create a meeting-room booking, times outside that room’s own schedule stay visible as grey hatched slots and cannot be selected. You can see the room’s real booking window at a glance instead of mistaking closed hours for a conflict.
Read the full feature → -
Clearer payments, calmer invoice actions, and restored calendar signals
Use the same Add payment wording in Overview and Payments. Every operator section now has a consistent title position and a visible About control that opens its guidance on hover, click, or keyboard focus, while invoice actions and numbering settings are simpler to scan.
Read the full feature → -
Monthly invoicing controls are easier to find
The monthly auto-invoice switch now sits directly above the member statement.
Read the full feature → -
Member billing now follows the way you reconcile a client
The member card’s new Billing tab starts with the balance, then the latest invoices, then the running statement. Expand older invoices only when you need them; open a booking directly in its editor from the Bookings tab; and correct any non-Stripe payment directly from the statement. Stripe payments remain protected from manual changes.
Read the full feature → -
A full virtual-office record without leaving the list
Open any virtual-office member into the same wide side panel used for Members. Its Overview keeps the selected plan, price, term, and complete billing address together; the member name opens their full member card when you need to go deeper. Mailbox is clearly marked as coming soon.
Read the full feature → -
Plan-ending warnings you can trust — and flex packages now warn too
The Expiring list in Insights now fires only when a plan is genuinely ending: auto-renewing plans, members who already booked their next stretch, and one-day passes no longer raise false alarms. Weekly plans keep their normal seven-day term, but if only the final days are regular days off, the warning moves back to the last working day. Flex members finally get a warning of their own — on the last booked day that uses up their package. One member on several desks shows as one item, not many.
-
Scan a large virtual-office book as a compact list
Virtual Offices now has a Cards / List switch, available from the first member. Cards stay the familiar default; switch to the denser list whenever you want to scan each member’s status, monthly price, billing state and period in one row, then edit, invoice, renew or end the plan from the same place.
Read the full feature → -
See hotdesk pressure before you sell the next membership
When you activate a hotdesk membership, the member card now shows how many overlapping memberships are already active alongside the number of desks in your space. It turns red at the same planning threshold as the calendar demand signal, so you can spot crowding before you sell — while still keeping the final decision in your hands.
Read the full feature → -
Open the exact invoice from a payment or member
Invoice numbers in a member record and linked payments now open that exact invoice instead of merely searching the ledger. The full invoice stays in a shareable URL, with the same preview, send, paid, void, and download actions you already use in the ledger.
Read the full feature → -
A calmer, clearer sidebar
The sidebar now calls out Global search and Back office more clearly, keeps Floor Plan tidy, and folds Settings away until you need it. Its footer is also lighter: plan updates stay easy to spot, while customization, feedback, and sign-out are compact icon actions with clear hover labels.
-
Drag across your meeting-room calendar to book a time range
In the day view, drag from a free time slot to the time you want to finish and the booking form opens with both ends filled in. The selection stops at an existing booking, the room’s own opening hours, and closure dates, so you cannot accidentally carry a range into unavailable time. Rooms with shorter booking slots still receive valid start and end times automatically.
Read the full feature → -
Draft an invoice from chat — Telegram Autopilot and in-app Ask AI
Ask the AI Autopilot to bill someone and it drafts the invoice for you — for an existing member, a new member (it creates the member record too), or a one-off guest who isn’t a member at all. Give it who it’s for and the line item, tap Confirm, and it’s saved as a draft on your Invoices page ready to review and send. It never emails anything on its own. Works the same from Telegram and the in-app Ask AI drawer — owners and admins on both.
Read the full feature → -
“Booked” and “Paid” — clearer statuses, and new bookings start as a hold
The booking status that used to be called “Assigned” is now “Paid”: it counts toward your revenue. “Booked” still means a tentative hold that sits under Upcoming payments. Money actually received through Stripe is tracked separately from this status. New bookings you create now start as Booked, so nothing lands in confirmed revenue until you say so; flex packages still confirm themselves, since a sold package is agreed by definition. Import and export buttons also got clearer icons.
Read the full feature → -
One member card for everything — plus a Leads tab for people who booked but never bought
Opening a member now gives you a wider card split into three tabs: Overview for contact, plan and billing details, Bookings for their whole history — date, room, desk, plan and status, with day-by-day rows folded into readable ranges and a click through to that week on the calendar — and Invoices for the full list, the running statement and the monthly auto-invoice switch. And when you book a desk for someone new, they become a member automatically instead of living on as a name on one booking: they show up under a new Leads tab until they buy a plan, so you can see at a glance who is worth following up.
Read the full feature → -
Closure dates — close the space for holidays and planned shut-downs
Mark public holidays, deep cleans, or any day you’re shut under Organization → General → Closure dates. Those days show as unavailable on the desk calendar, public booking page, and member booking — and the booking APIs refuse new desk and meeting-room bookings on them. If someone already has a booking on a date you close, you’ll see a warning with who’s affected before you add it.
Read the full feature → -
Calendar sync now follows real plan starts and endings
Monthly and weekly desk plans no longer appear as a new arrival every Monday and an ending every Friday. The iCal feed now uses each plan period’s actual start and end dates even when weekends or closed days are skipped; open-ended contracts still show one arrival and ending for each generated monthly period. Regenerating a private calendar URL now refreshes it immediately, and “At event start” reminders stay set to zero minutes.
Read the full feature → -
Company invoicing for public desk bookings
Booking a desk for your company? The public desk booking page now has the same “I’m booking for my company” option as meeting rooms — add the company name, address, and VAT number and OhMyDesk drafts an invoice addressed to that company, ready on your Invoices page to review and send. The amount is worked out from your day rate across every date booked.
-
Week and month views for your meeting-room calendar
The meeting-room calendar now has Day, Week, and Month views — just like your desk calendar. Week and month give an at-a-glance overview of every room across days: each cell shows that day’s bookings (or a booking count in the month view), and clicking any day drops you into the detailed hourly view to book or edit. Switch views from the toggle in the calendar header.
-
Accurate flex balances, no vanishing members, and safer edits to long bookings
Three fixes to keep your member list and bookings trustworthy. A flex member who has used all their days now stays on the Members list instead of quietly disappearing, and their remaining balance again reflects the flex days they have actually booked — so “days left” is right. And when you change the person on a booking that spans several days (like a monthly desk), we now ask first before reassigning every day, so a quick single-day change can’t overwrite the whole month by accident.
-
A public API for your bookings — read availability and take bookings from anywhere
Your space now has a proper API. Read live availability and create bookings — desks, meeting rooms by the hour, whole-day rooms, and private-office requests — straight from your own website, tools, or automations, served from your ohmydesk.app domain with no backend to wire up. For resources you sell online, the API hands back a Stripe checkout link so paid whole-day rooms and private offices can be booked and paid for through it too. With your API key you can now also list your desk and meeting-room bookings, cancel them (a cancelled flex day is refunded automatically), and edit or reschedule a booking (a meeting room by date/time or a desk by date/desk — details too; the new slot is re-checked for conflicts). Public endpoints need no key (safe to call from a website); everything else uses a per-space API key you generate under Settings → Integrations → API. Bookings made through the API notify you just like ones from your booking page. Full reference and an OpenAPI spec live at /developers.
-
Online card payment for whole-day rooms and private offices now works
Visitors can now pay by card to book a meeting room for a whole day, or to reserve a private office (first month), right from your public booking page — both previously stalled at “Couldn’t start checkout.” Whole-day room payments create the booking and a paid invoice automatically; office payments open the letting agreement and mark the office as taken. Enable card payments per type under Settings → Integrations.
-
Embed booking directly on your own website
A new embeddable widget — paste one snippet and your booking calendar lives right on your site, no coding required. Choose inline (embedded in the page), a popup from your own button, or a floating "Book now" badge. Match your brand color, and scope it to a specific pass, meeting room, or office. Get the snippet under Settings → Integrations → Public booking → Embed on your website.
-
Link a website button straight to one pass, room, or office
Under Settings → Integrations → Public booking, each booking link now has a "Link to" picker — point a specific website button at just your day pass, a flex bundle (flex-10), a monthly membership, a named meeting room, or a specific private office, instead of sending everyone to the same combined page. Room links accept a slugified name as well as the id.
-
Open-ended contracts from the member card, and a nudge to the member portal
You can now mark a monthly membership as “Ongoing — open-ended, no end date” straight from a member’s Activate Plan (not only from the calendar), so rolling month-to-month contracts are easy to set up and obvious. And a new nudge on the Members page points you to the self-service portal, where members log in to see their plan, balance, next bill, and invoices — invite anyone from their card.
-
The in-app assistant now knows the app inside out
Ask the AI assistant “how do I…” or “where is…” and it answers from a live map of the real app — naming the exact page and giving you a clickable link, never a made-up button. It now reliably surfaces features people often miss, like rolling/open-ended contracts, automated monthly invoicing, and the member self-service portal — and the same grounding now powers the Telegram Autopilot too.
-
Activating or changing a plan shows up instantly
Assigning a desk, activating a hot-desk, virtual office, or flex plan, or changing a member’s plan now updates the calendar, stats, and member list immediately — no page refresh needed.
-
Search jumps straight to a member or invoice
Press ⌘K and type a member’s name (or their company), or an invoice number — the palette now surfaces matching members and invoices, not just pages. Pick one to jump right to that member’s card or straight to the invoice.
-
Members list opens on Active, and the “missing contact” nudge filters
The Members list now defaults to an Active tab (members with any active plan) so your working set is front and centre — “All” is still one click away. And the “N members missing contact info” nudge’s “Open the list” button now actually filters the list down to just those members, with a clearable banner.
-
Tidier sidebar — a dedicated Finance group
The left menu is reorganized so money lives in one place: a new Finance group gathers Invoices, Payments, and Expenses. The top group is now “Operations” (Overview, Insights, Tasks), and the desk calendar is labelled “Desks”. Same pages, clearer grouping.
-
Show your passes on the public page — no online payment required
Spaces that don’t take card payments online can now surface their day, week, month, and flex passes (with prices) on the public booking page. A visitor picks a pass and sends a request; you confirm and arrange payment your way (cash, transfer). It’s off by default — flip it on under Settings → Integrations → Public booking. Spaces that want a plain, no-pass day-booking page are unaffected.
-
See what a member owes at a glance — statement & running balance
Open a member’s invoices and switch to the Statement tab to see charges and payments side by side in one running balance — so you know instantly whether they’re settled, owe money, or are in credit.
-
New Payments ledger — record every payment you receive
A new Payments page under Finance lets you log every payment a member makes — cash, card, bank transfer, or Stripe — in one place, each with a note and what it was for. Marking an invoice as paid now records the matching payment here automatically, so there’s no double entry. Payments tied to an invoice show its readable number (whether the payment stored that number or the invoice ID), and both it and the member name link straight to the exact invoice or member invoice history. Filter by date, source, or what the payment covers. It’s the first step toward a full per-member reconciliation view.
-
See a member’s plans by name, plan history, and join date
The member card now shows each active plan by its specific name — e.g. which Virtual Office tier, not just “Virtual Office” — alongside a dated plan history of Virtual Office and private-office changes, and the date the member joined. It’s much easier to see at a glance what someone is on and how it has changed over time.
-
Import OfficeRnD plans to the exact plan, not just the type
When migrating from OfficeRnD, the plan-matching step now lets you map each source plan to a specific one of your plans. So if you run two Virtual Office tiers (or two hot-desk plans), each imported member lands on the right one at its own price — instead of both collapsing into a single generic “Virtual Office”. Where you don’t have a match yet, the plan is created from your OfficeRnD name and price.
-
Set opening hours per meeting room
Each meeting room now has its own opening and closing time, set in Rooms settings. Bookings — both yours and on the public booking page — only offer times inside that window, so a room that runs until 20:30 can finally be booked until 20:30 instead of being capped at a fixed 8:00–20:00. Rooms you don’t configure keep following your space’s general hours.
-
Meet your in-app AI Autopilot — ask anything and get things done
A new “Ask AI” button in the corner of every page opens a chat that answers questions about your space — who’s in today, revenue this month, when a desk is next free, which plans are ending — and about OhMyDesk itself, like “how do I freeze a member?”. Every answer is grounded in your live data or our own docs (never made up) and links you straight to the right page. And owners and admins can act from it too: ask it to book a desk, cancel a booking, or mark one paid, and it stages the exact change for you to Confirm before anything is saved. It’s the same brain as the Telegram Autopilot, now built into the app.
Read the full feature → -
Find anything in seconds with ⌘K search
Press ⌘K (or click Search in the sidebar) and start typing to jump straight to any page, setting, or control — even ones you’ve hidden from your sidebar. Search “working hours”, “Stripe”, or “flex plan” and land exactly where you need, no clicking through menus. Results respect your role, so you only see what you can open.
-
Ask the Autopilot when a desk is free for a whole month or week
Your @OhMyDesk_bot can now answer plan-length availability straight from chat — ask “when is the next monthly-plan desk free?” or “when could I start someone on a desk for a week?” and it finds the earliest day a desk is open for that entire run, with the exact dates and which desk. Before, any question that mentioned “monthly” got bounced to the dashboard; now it just answers, and it looks up to four months ahead. Available to owners on the Premium plan.
Read the full feature → -
Ask the website anything — a concierge chat on every page
A friendly AI concierge now sits in the corner of the OhMyDesk website. Visitors can ask anything — what the product does, how pricing works, how it stacks up against other tools — and get an instant, grounded answer instead of hunting through pages. It only answers from our own published content, points people to the right page, and hands off to a human when it is not sure.
-
Members can renew their virtual office or hot desk from the portal
Members on a fixed-term virtual office or hot desk get a “Renew” button in their portal — one card payment extends the plan by a month and moves the end date forward automatically. It uses your Stripe connection and appears once you let members pay in the portal.
Read the full feature → -
Public booking charges the exact plan option chosen
If you offer more than one version of a pass — say two flex bundles or a couple of monthly tiers — the public booking page now charges the price (and, for flex, the day count) of the specific option the visitor picked. Previously every option billed at your first-listed one, so second and third variants could be over- or under-charged.
-
Book a desk and sell the plan in one step
The desk booking dialog now leads with your actual plans by name — pick a specific day-pass, weekly or monthly plan directly (a single plan of a type is one tap; several show grouped under it), instead of choosing a bare plan type. And you can sell a flex package the moment you book: choose it under “Sell a flex package” and it activates on the member and deducts their first visit automatically. Clicking any free slot opens this full dialog straight away, now tidied up with a single “Notes” field and a one-tap share button.
-
Flex members can top up their days from the portal
Members on a flex plan get a “Buy more days” button in their portal — they pay by card for another bundle of their own plan and the days land in their balance automatically once the payment clears. It reuses your Stripe connection and shows only when you accept flex payments, so there’s nothing extra to switch on.
Read the full feature → -
Resuming a frozen membership works reliably again
Freezing a member’s plan and starting it again is fixed on three fronts. The “Reactivate” button is back for every frozen member — on the Members list and now inside the member drawer too — even when their plan auto-renews, where it used to hide behind the “ongoing” label. Resuming now keeps the plan’s own weekday pattern: a Monday–Friday plan comes back Monday–Friday instead of being packed onto consecutive days (weekends included), so the banked days land on the right dates and the plan’s end shifts out by exactly the time the member was away. And the money adds up: the paused and resumed parts now total the original plan price exactly, instead of the resumed part being under-counted.
Read the full feature →
June 2026
-
Members can pay their invoices online
Switch on “Let members pay invoices online” (Settings → Integrations → Stripe) and each member gets a Pay button on their unpaid invoices in the portal — they check out by card and the invoice flips to Paid automatically, with no manual reconciling on your side. It runs on your own Stripe account, stays off until you enable it, and only appears once Stripe is connected.
-
Preview an invoice without downloading it
Every invoice now has a “Preview” action — in a member’s invoice list and in the org-wide Invoices ledger — that opens the full invoice on screen exactly as it prints, so you can check the line items, amounts, billing period and recipient details at a glance. It’s the same document the member receives, and “Download PDF” is still right there when you need the file.
Read the full feature → -
Member portal — your members can now log in (v0.1)
Members get their own login at /portal to see their current plan and day balance, browse their upcoming and past desk bookings, and download their invoices as PDFs — so routine “how many days do I have left?” and “can I get my invoice?” messages stop landing on you. You invite each member from their profile in Members (a “Portal access” link you send however you like), and the members list shows at a glance who’s connected. This first version is read-only and members on a flex plan get a “Book a desk” shortcut; paying invoices and booking inside the portal come next.
-
Meeting room booking calendar lets you pick a date again
On the public meeting room booking page, “Pick another date” opened a calendar where every day was greyed out and unselectable. Visitors can now choose any open day in your booking window, and the available time slots appear as soon as they do.
Read the full feature → -
Public booking shows your real currency
Your public meeting room and private office booking pages now price everything in your space’s configured currency instead of always defaulting to euros. Visitors see the right currency throughout — the room and office lists, the hourly, whole-day and monthly prices, the summary and the confirmation — and any card payment is charged and invoiced in that same currency.
Read the full feature → -
Filter invoices by plan
The Invoices ledger has a new plan filter — tap Virtual office, Dedicated desk, Hotdesk (or whichever plans you bill) to see just those invoices, with each chip showing how many there are. Only the plans that actually appear are offered, and it stacks with the status tabs, month filter, and search.
Read the full feature → -
Get pinged the moment the AI concierge captures a lead
When a visitor messages your space on Telegram and the AI concierge spots booking or visit intent, it already files them as a lead — now it also pings you right away (Telegram, with email fallback) with the visitor’s name and what they’re after, so you can follow up while they’re still warm. One nudge per new lead; tap through to review it in Leads.
Read the full feature → -
Free up a member’s desk for a day in one tap
The calendar’s “Availability” button is now “Free Up Desk”, with a tooltip that spells out what it does — open a desk back up for specific days so someone else can book it, e.g. when a member says they won’t come in. It now defaults to a single day instead of a whole week, and picking a future start date sets the end date to match, so the common “just today” case is one tap. Freeing a few days doesn’t touch the member’s plan or revenue.
-
Flex booking links price each member by their own plan
If you sell more than one flex bundle — say a 10-day and a 20-day option — a member’s personal booking link now prices every visit against the exact plan they were given, and shows that plan’s name above their day balance. Previously the link always used your first flex option, so visits could be recorded at the wrong amount and skew per-plan revenue. Members activated before this keep working on your default flex price.
Read the full feature → -
Set a booking’s price when you mark it paid from chat
When you ask @OhMyDesk_bot to mark a desk booking as paid, you can now set its price in the same message — e.g. “mark Anna’s week paid, 35” — and the amount is saved on the booking, not just the paid status. The Autopilot can also look further ahead now: it answers desk availability up to a month out (was one week), so “any free desks in three weeks?” works straight from chat.
Read the full feature → -
“Review them” now opens your expiring contracts
On the Members page, the AI nudge about contracts ending this week has a “Review them” button — it now narrows the list to exactly those members so you can renew or reach out in one place, with a banner you can clear to return to the full list. Previously the button did nothing.
Read the full feature → -
Disabling a plan updates its card right away
On Settings → Plans, turning off a plan type — hotdesk, virtual office, weekly, monthly, or flex — now greys the card out and clears its “unsaved changes” marker immediately. Previously the card could keep showing “Active” with a misleading unsaved prompt until you refreshed the page, even though the plan was already disabled.
-
Integrations summary shows connected vs available at a glance
The status strip at the top of Settings → Integrations used the same green dot for integrations that are actually connected and ones that are merely available to set up. Now an active/connected integration shows a solid green dot, available-but-not-yet-on shows an amber ring, and off or plan-locked shows grey — so you can immediately tell your live integrations from the ones you haven’t turned on.
-
Set how many seats each meeting room has
Meeting rooms now have an editable seat count in Settings → Rooms, right next to the hourly rate. Previously every room was stuck showing “4 seats” on the booking calendar with no way to change it; now the number you set shows on the booking calendar and your public booking page.
Read the full feature → -
Booking price field stays readable in code-style currencies
When booking a desk in a currency shown as a code rather than a glyph — like RSD, CHF or SEK — the amount you typed could sit underneath the currency prefix and become unreadable. The price field is now clean for every currency, with the code shown in the field label.
-
Bill a one-off recipient without adding them as a member
Pick “Manual invoice (no member)” when creating an invoice and type the recipient’s name and billing details directly. The live PDF preview now renders as you type and the invoice saves normally — previously the preview stayed blank and a manual invoice couldn’t be completed. Handy for a single guest, a partner, or anyone you don’t track as a member.
Read the full feature → -
OfficeRnD import: former members, deleted invoices, and plan variants
Three fixes from real OfficeRnD migrations. Former and inactive companies are now imported too, so their past invoices — most often virtual offices — link to the right member instead of showing as “Unknown”, and you keep the full relationship history for your records. Invoices you deleted in OfficeRnD are no longer pulled in as duplicates. And when you sell a plan in several tiers (say two virtual-office prices), each OfficeRnD plan becomes its own named, priced variant — or reuses the ones you already set up — so every member keeps the exact price they were on.
-
Clearer “Booked” vs “Assigned” across the calendar
Hover the calendar legend or the booking dialog to see what each status means: Assigned is a confirmed booking that counts toward your revenue, while Booked is a tentative hold that shows under Upcoming payments until you confirm it. Switching a booking to Booked no longer wipes the price you entered, so the expected amount is kept for your forecast.
-
Desk booking from your public page works for signed-in visitors
Booking a desk from a space's public link failed with a generic “Failed to submit booking” error for anyone signed in to OhMyDesk — including your own members — even though it worked for logged-out visitors. Bookings now go through reliably whether the visitor is signed in or not, and the desk is assigned against live availability, so a last free desk can't be double-booked.
-
Returning to a left-open tab lands on the login page
If you left OhMyDesk open in a background tab and your session expired, coming back used to occasionally show an error or 404 page. Now it takes you straight to the login screen — and if a new version shipped while the tab sat idle, it quietly reloads to the latest build instead of breaking.
-
Customize invoice labels for your local language
Each space can now rename the labels printed on invoice PDFs — from “Bill from” and “Due date” to table columns, totals, tax, and notes. Use the new Invoice labels dialog in Billing & invoices to set local-language or accountant-preferred wording while leaving empty fields on the English defaults.
Read the full feature → -
New blog post: Virtual offices for coworking spaces
A practical guide to selling business addresses as a high-margin product: what a virtual office actually is, why it never fits a desk-based tool, the alternatives operators reach for (spreadsheets, generic invoicing, mailbox platforms, the big coworking suites) and where each falls short, how to price it, a note on compliance, and how OhMyDesk tracks address-only members so the revenue counts but occupancy stays honest. Live at /blog/virtual-offices-for-coworking-spaces.
Read the full feature → -
Drag nav items between sections and rename sections
You can now drag any sidebar item into a different section — not just reorder within one. Drop an item onto a section header to make it the first item in that group. You can also rename any section label directly in Customize mode: hover the label, click the pencil, and type. Both your order and your custom names are saved per space.
-
Deleting a lead now asks for confirmation
The trash icon on lead cards has moved to the top-right corner and now opens a confirmation dialog before deleting — so accidental taps don't lose a prospect. The icon appears on hover and requires one extra click to confirm. The left/right stage buttons are also slightly larger and easier to tap.
-
Import data page redesigned
The "Import data" page got a full visual refresh: a warm hero header, a numbered step-progress bar, and platform cards that list exactly what gets imported from each source (members, invoices, desk history). The page is now full-width, consistent with every other page in the app.
-
Expenses loads without the numbers jumping
Opening Expenses — or switching months — now shows a calm placeholder while this month, last month, and your categories finish loading, then settles into the final total, the up/down delta, and both lists all at once. No more watching the total or the comparison flicker as each figure lands.
-
Void invoices no longer clutter your ledger
Cancelled (void) invoices are now hidden from the Invoices page, so your ledger shows only the invoices that still matter — drafts, sent, paid. They no longer pad your tab counts or the “All invoices” total. Voiding an invoice simply takes it out of view.
-
Overview loads without the numbers jumping
Opening the Overview used to flash and shift — Net profit could swing from negative to positive — while revenue, expenses and bookings each finished loading at their own pace. Now the page shows a calm placeholder until every figure is ready, then settles into the final numbers all at once. No more watching a total bounce around before it lands.
Read the full feature → -
Overview now counts confirmed revenue only
Your Overview figures — Revenue, Net profit, the trend chart, Revenue by plan, and Top contributors — now count only confirmed bookings. Before, a monthly member’s auto-created next cycle (still tentative) was partly folded into the current month, which could nudge a number up before that money was locked in. Those upcoming renewals now show under “Upcoming payments” instead, so each month reflects what you’ve actually secured. Note: a past month can still tick up later if a tentative booking gets confirmed.
Read the full feature → -
Sign in with Google
You can now sign in to OhMyDesk with your Google account — one tap, no password to remember. New here? The same button creates your account and drops you straight into setup. Already have a password account? Click your name in the sidebar to open Account settings and link Google there — then use either to sign in. Look for “Sign in with Google” on the login and sign-up screens. Email and password still work exactly as before.
-
Recurring expenses now appear exactly once a month
Your recurring expenses — rent, internet, the accountant — are now guaranteed to be created just once for each month. Before, a rare hiccup while the calendar was loading could add a second copy and nudge your monthly totals. We’ve added a safeguard that makes a duplicate impossible, so your expense list and revenue figures stay accurate on their own.
-
Privacy Policy, Terms, Cookie Policy, and a DPA — now public
OhMyDesk now has a full set of public legal pages: a Privacy Policy, Terms of Service, Cookie Policy, and a Data Processing Addendum (DPA). The DPA is the one your members or partners ask for when they check GDPR — it spells out that you’re the controller of your members’ data and OhMyDesk is the processor, lists the subprocessors we rely on, and covers security and international data transfers. You’ll find all four in the site footer under “Legal”.
-
Business-billed members now read as “business”, not “personal”
When a member is billed as a registered business — they have a company or legal name plus a tax or VAT number — OhMyDesk now labels their billing identity “business” instead of “personal” everywhere you choose who to bill: the invoice “Bill to” picker, the member’s billing profiles, and the per-plan billing targets. Sole proprietors and companies are recognised automatically; individuals still show as “personal”. Especially handy after migrating from another system, where most billing identities are registered businesses.
Read the full feature → -
OfficeRnD import: no more “Unknown” on virtual-office invoices
When you migrate from OfficeRnD, invoices for company-billed plans — most often virtual offices — used to import labelled “Unknown”, because OfficeRnD bills those to a company rather than a person. The import now links every company-billed invoice to the right member and carries across their billing details (legal name, address, tax/VAT) so invoices are addressed correctly. A new check on the preview step tells you up front how many invoices couldn’t be matched or members are missing billing, and re-running the import quietly repairs any anonymous invoices already brought over.
-
Send new members a link to sign themselves up
Stop re-typing paper forms. From the Members page, create a single-use “Invite link” and send it to a prospect over WhatsApp or email — they fill in their own details. You get pinged on Telegram or email the moment they do, and their sign-up lands in a Pending review queue to approve into a member. Links expire (24h / 7 days / 30 days) and can be revoked anytime.
-
Never run out of coffee again — track supplies and get restock alerts
A new Inventory tab on the Tasks page keeps a simple list of your consumables — coffee, toilet paper, snacks, cleaning supplies. Adjust stock right on the list with quick +/− buttons. Tap “Running low,” or give an item a quantity and a restock level so it flags itself when stock drops — it’s marked for restock right on the Inventory tab and your team gets a Telegram or email alert. One tap on “Mark restocked” clears it once you’ve topped up.
-
Book a meeting room by the whole day — or for a multi-day event
Meeting rooms can now be booked as a whole day, or across several consecutive days, at a flat price you set — perfect for workshops, training, and multi-day events. Turn it on per room in Settings → Rooms and set a whole-day price; visitors then pick “Whole day”, choose how many days, see the total, and book. If you charge for rooms, they pay online; otherwise it’s booked and an invoice is drafted for you. A whole-day booking holds the room open-to-close and blocks any hourly clashes. You can also create whole-day and multi-day bookings yourself from the meeting-room calendar.
-
Bookings from your public page now stand out on the calendar
Desks and meeting rooms booked through your public page confirm instantly and now carry a “Public” badge on the calendar — and clicking one shows the visitor’s phone, email, and note, so you know exactly who booked and how to reach them. New-booking Telegram alerts now read “booked a desk” rather than “booking request”, making it clear there’s nothing waiting on your approval.
Read the full feature → -
Add a discount to any invoice line
Give a member a one-off discount right on the invoice — a percentage (10% off this month) or a fixed amount (waive 500 RSD) on any line. The total updates as you type, and the discount prints as its own line on the PDF so the payer sees exactly what came off. No more voiding and recreating an invoice just to adjust a price.
Read the full feature → -
Companies can add billing details at booking — and get an invoice automatically
Booking a meeting room for a company? Tick “I’m booking for my company” and add the company name, address, and VAT number — OhMyDesk drafts an invoice addressed to that company straight away, waiting on your Invoices page to review and send. Private office requests capture the same details too, so you never have to chase a corporate client for their invoicing info.
Read the full feature → -
No more unexpected sign-outs when switching tabs
Switching to another browser tab and back could sign you out — and sometimes showed the public homepage at your workspace URL instead of asking you to sign back in. Your session now holds across tab switches and reloads, so you stay logged in and always land where you expect.
-
Partial months are now prorated automatically on invoices
Choose an active monthly desk, virtual office, or private office plan and OhMyDesk splits the covered period into editable calendar-month lines. Full months keep the exact plan price, partial months are prorated by calendar day, and changing the period recalculates the draft until you edit or clear the generated lines.
Read the full feature → -
Occupied private offices stay visible — visitors can register interest
A fully-let private office no longer vanishes from your public booking page. Keep it listed and it shows as occupied — with the date it frees up when the let has an end date — alongside a “Register interest” button. Interested companies land in your Leads, so you can follow up the moment it opens instead of losing them to a dead end.
Read the full feature → -
Private office prices can show “+VAT” on your booking page
When your space charges VAT, the monthly rate on every private office now reads “€500/mo +VAT” on the public request page — so corporate clients can see at a glance that the quote is before tax. It turns on automatically once you set your Default VAT rate in billing settings; spaces that don’t charge VAT keep showing a clean price.
Read the full feature → -
Auto-invoicing fixed for spaces migrated from OfficeRnD
The invoice generator showed an empty list for some spaces — members imported from OfficeRnD were silently skipped, and ongoing plans could pile several past months into a single draft. Both are fixed: the generator now picks up imported memberships and drafts exactly one month per invoice, so the preview always matches what you expect to bill.
-
See exactly which dates every invoice covers
Invoices now carry a clear billing period everywhere you need it: the invoice ledger, member history, and the PDF sent to the payer. Month filtering follows the covered dates instead of only the issue date, so prepaid and paid-later invoices appear in the month they actually belong to.
Read the full feature → -
Run your space from chat — the Operator Autopilot can now act
Your @OhMyDesk_bot doesn’t just answer now — it does the work. From a single Telegram message it can book a desk (or find the next free day for you), cancel a booking, mark one as paid, add a lead, and let or vacate a private office. It also sees your whole space — meeting rooms, private offices and virtual offices, not just desks — and replies in whatever language you write in. Every action is staged and only saved when you tap Confirm, so nothing ever changes without your say-so. Available to owners on the Premium plan.
Read the full feature → -
Ask your bot anything — the AI Operator Autopilot
Your @OhMyDesk_bot notifications bot now answers back. Message it in plain language and get instant answers about your space — who’s in today, how many desks are free this week, revenue this month versus last, members whose plans are ending, and leads that have gone cold. Every figure comes straight from your live data, scoped to your space only, and it never makes a number up. Just open @OhMyDesk_bot and ask. Available to owners on the Premium plan — with more actions from chat, like creating bookings and invoices, coming next.
-
Shared tasks for the whole management team
Owners and managers can now keep one shared to-do list across every location, with notes and optional deadlines. Complete or reopen work together, and tasks due tomorrow trigger a 09:00 reminder through Telegram when connected, with email fallback to the management team.
Read the full feature → -
Auto-invoicing now covers every plan — and bills each to the right payer
The monthly auto-invoice run now drafts invoices for all of a member’s recurring plans — including virtual offices, which were never auto-billed before — not just their desk. And when a member has more than one billing profile, you can point each plan at its own payer: e.g. their desk billed to them personally and their virtual office billed to their company, as two separate invoices in the same run. Set it per plan in the member’s billing details.
-
Bill one member to two payers — billing profiles
A member can now carry more than one set of billing details — their own, plus a company, for example. Add extra billing profiles inside a member’s Billing details, then choose “Bill to” when raising an invoice so it’s addressed (and emailed) to the right entity. Ideal when someone’s virtual office is paid by their company but they pay for their desk personally: two invoices, two emails, from one member.
-
Customize your sidebar — hide what you don’t use
Not every space rents private offices or meeting rooms — now you can tidy those out of the way. Click Customize at the bottom of the sidebar, toggle off any items you don’t need, and hit Done; they disappear from the sidebar and the mobile bar but stay one click away whenever you want them back. Calendar and Organization settings always stay put, and your layout is remembered on this device.
-
Invoices — one page for every invoice, paid or unpaid
All your invoices now live in one place under Finances → Invoices, instead of being tucked inside each member’s profile. See the whole book at a glance, switch between Unpaid / Paid / Void, search by number or name, and optionally narrow to a single month. The strip up top shows what’s still outstanding versus paid. Every row carries its full toolkit — send or resend by email, download the PDF, mark paid, or void — and you can raise a new invoice or generate this month’s batch right from the page. Available to owners and admins.
-
Expenses now work in every currency
If your space bills in a currency other than the euro, dollar or pound — like Serbian dinar (RSD), Norwegian krone (NOK) or Thai baht (THB) — saving an expense failed outright, and amounts rendered jammed together like “RSD85000”. Adding and editing expenses now works for any currency, and every figure on the Expenses page is properly formatted (RSD 85,000, kr 1,200, €420…) with the right symbol placement and thousands separators.
-
AI concierge — answer inbound Telegram messages automatically
Prospects and members can now message your space on Telegram and get an instant, on-brand reply drafted by AI — day or night. Turn it on in Settings → Integrations: share the ready-made OhMyDesk bot link, or plug in your own bot for a white-label front desk. Every reply is grounded in your real data — working hours, plan prices, and live desk availability for the days ahead — answers in the visitor’s own language, and points them to your booking link, without ever inventing a meeting room or a booking window it doesn’t have. Available on the Premium plan.
Read the full feature → -
Virtual Offices — a dedicated page to manage address-only members
Virtual office members now have their own page, right next to Private Offices — not just a chip on the Members list. Everyone on the plan shows as a card, split into Active and Past, and you can search by name, company or email to find someone fast. Manage each member in place: edit their billing, raise invoices, set a per-member monthly price (override the plan default for a specific company), and extend or end their period — with a one-tap open-ended option for ongoing contracts. Expired members are flagged for a one-step renewal, and you can switch the plan on and set its price right from the page.
Read the full feature → -
Meeting Rooms always in reach — add your first room from the page
The Meeting Rooms section now always appears in the sidebar, even before you’ve set any rooms up, so it’s never tucked out of sight. If you don’t have a room yet, the page lets you add your first one right there instead of hunting through settings — and the moment you do, it switches straight to the live hourly booking grid.
-
Private offices — let a whole office to a company
Sell a private office as one unit at a flat monthly price, not desk by desk. Define offices on the new Private Offices page (name, monthly price, optional size), then assign a company on an open-ended or fixed-term agreement — it shows on the member’s record, and the revenue flows into your Overview and Insights. List an office on your public booking page and prospective companies can send a request (which lands as a lead with an instant Telegram + email alert) or, if you switch on Stripe office payments, reserve it on the spot by paying the first month online. Companies on an open-ended office can also be billed automatically: turn on auto-invoicing for them and a monthly draft invoice is raised each cycle, right alongside your dedicated-desk members.
Read the full feature →
May 2026
-
Revenue and stats now show your space’s real currency
If your space uses a currency other than the euro — say Serbian dinar (RSD) — the Overview, revenue and insights figures were still showing €. They now display the currency you set in settings, for any ISO 4217 code, and every amount is properly formatted with the right symbol or code (€197,600, RSD 197,600, kr 197,600…) and thousands separators. Choosing a currency now also flags an unrecognized code so a typo like “XYZ” is easy to catch.
-
New blog post: How to migrate from OfficeRnD to OhMyDesk
A practical walkthrough of moving from OfficeRnD to OhMyDesk without re-keying your data — what comes across (members, plan assignments including virtual offices, invoice history), how to connect via a read-only API app (with the exact permissions to enable), the plan-mapping step, and the concierge option if you would rather we set up the API for you. Live at /blog/migrate-from-officernd-to-ohmydesk.
-
Virtual office plans — track address-only members and their revenue
A new plan type for operators who sell a business address and mail handling without a desk. Enable it on the Plans page and set a monthly price, then activate it per member with a duration — members show a Virtual Office chip and their own filter tab. Because a virtual office member never uses a desk, their fee counts toward revenue but is kept out of desk occupancy and the calendar demand signal, so your space numbers stay honest. Virtual office plans also import cleanly from OfficeRnD: map the plan once in the migration wizard and matching members are activated automatically.
Read the full feature → -
Hotdesk plan type — unlimited monthly desk access, tracked in one place
A new plan type for coworking operators who sell monthly "any free desk" memberships. Enable it on the Plans page, set a monthly price, and activate it per member — no per-day booking rows, no admin overhead per visit. The calendar navigation bar shows a live hotdesk demand chip (green when there is breathing room, red when demand is tight relative to available desks) so operators can spot pressure at a glance. Hotdesk revenue and occupancy are factored into the Revenue by plan donut on the Overview page. When a flex plan runs out of days, the member is now flagged as "No plan" with a one-click renewal path — and their booking link shows the full list of days they used so they can see the value before renewing.
Read the full feature → -
Import members and invoices from OfficeRnD
Operators switching from OfficeRnD can now bring their data with them. A guided wizard imports members, plan assignments, and invoice history — either by uploading exported CSV files or connecting via API token for automatic fetch. Duplicate members are skipped safely, plan types are mapped to OhMyDesk equivalents in a dedicated step, and all historical invoices land in the real invoices ledger with a distinct IMP-XXX number series. A shortcut to the import wizard is also available on the last step of the onboarding flow. (Nexudus import is on the way.)
-
Public meeting room booking
Visitors can now book meeting rooms directly from a dedicated public page — no account required. Operators enable it in Integrations with its own toggle, shareable link, and max-days-ahead setting. The booking flow shows available rooms, filtered time dropdowns that respect open hours and existing reservations, live price calculation, and a contact form. Conflict prevention is handled at the database level so double-bookings are impossible. Operators get instant Telegram and email notifications; visitors receive a confirmation email.
-
Onboarding · Space Info redesigned
The first step new operators see after signing up now lives in the same warm-white chrome as the sign-up card. Above the form: the OhMyDesk wordmark and a five-step progress rail (Space Info → Rooms & Desks → Meeting Rooms → Pricing → Notifications), with the current step shown as an amber-haloed dot and completed steps turning sage. The card itself is paper-cream with a Plovdiv Display title, an amber-tinted icon tile, a 48 px Space Name field, and a brand-new URL row that pins ohmydesk.app/ as a non-editable prefix beside an auto-generated slug — tap Edit to take over the slug, Done to lock it back in. The "I manage multiple locations" row becomes a single tap target: 22 px amber checkbox + pin icon + helper line, and the whole card lights amber when selected. Below the form, Next sits as a 52 px amber CTA (disabled until the slug is confirmed available) and Sign in / Back to workspace lives as a secondary outline button. Sets the visual language for the rest of the onboarding flow as it gets redesigned step by step.
-
Sign-up and sign-in redesigned to match the orchard
The first two screens new operators ever see now wear the same OhMyDesk chrome as the rest of the app. The page sits on a warm-white canvas with a soft amber + sage radial wash; above the card the OhMyDesk wordmark anchors the page with its sage desk mark. The card itself is paper-cream with a deep ambient shadow, a Plovdiv Display title, 48px inputs with a 1.5px border that lifts into amber on focus (with a soft amber halo), a roomy password reveal toggle and a primary amber CTA. Error states use the terracotta-soft pill instead of the previous gray alert. Sign-in mirrors the same shell so the two pages feel like one place — and lands you on a screen that already looks like the product you're about to use.
-
A peach orchard in spring — the redesign is complete
OhMyDesk now wears one palette across every operator-facing screen: cream paper, amber sun, sage leaves, terracotta blossom — a peach orchard in spring. This week's final wave brings Rooms, Plans, Team, Notifications, Integrations and the Floor Plan editor into the same design language as the calendar, Insights, Overview, Expenses and Leads that landed last week. Rooms collapses into a single inline-edit card with a drag handle, − / + desk stepper, expand-to-rename, and N-way merge. Plans gets a brand-new OhMyDesk AI · Pricing Advisor that watches your saved rates against the last 30 days of real bookings — it flags when Weekly and Monthly land too close per day, when Day Pass is your top mover (with revenue math for a €1 raise), and when Flex per-visit cliffs below the daily rate; insights are live, dismissible, and one-tap. Each plan card now shows a 30-day adoption ribbon (sold, revenue, unique members) so you can see which plan is paying the bills. Settings (Team / Notifications) share the same warm card chrome as the Organization page. Integrations gains an at-a-glance status strip (Public booking / Stripe / Smart locks / iCal feed) and an on-demand Request an integration form that pipes straight into the same inbox as the /feedback page. The Floor Plan editor moves to a paper-cream canvas with a warm 20px grid, room-tinted desks (one amber / sage / terracotta / ink tone per room), a zoom control, a Selection detail card, and a full keyboard set — R rotates, arrows nudge, Del unplaces, Esc deselects; the calendar's map view and the public-booking floor plan now wear that same chrome so the floor-plan surface reads as one feature. Stitched together by the AI · Performance chip on the calendar, the AI band on Insights, the AI "what's missing" suggestion on Organization settings, and the new AI Pricing Advisor on Plans — the orchard isn't decoration, it's the new operating room.
-
Organization settings redesigned — calmer, with per-card save state
The Organization page becomes a single column of focused cards (General, Contact & public, Billing & invoices, Booking preferences, Danger zone) instead of a packed two-column grid. Each card has its own dirty/save state — touch a field and the footer flips to "Unsaved changes" with terracotta dot, Save and Discard enable, untouched cards stay quiet. General gathers space name, the public URL (locked behind ohmydesk.app/), currency segmented control, timezone, working-day chips and the logo block. Contact & public shows the live public booking link with a Copy button and the WhatsApp / Viber channel checkboxes echoing your phone handle. Billing & invoices keeps the seller details and adds a Numbering sub-section for VAT rate + next invoice number. Booking preferences exposes the public-booking toggle and booking window. Danger zone collects Export everything, Transfer ownership and Delete workspace — stubbed to reach out via hello@ohmydesk.app while the backend lands. (AI agent settings are deferred until the AI agent itself ships.)
-
Insights — "what to do this week," not just data
Insights gets a full rebuild. The page now reads as a worklist instead of a data dump. A forest AI band leads — it picks the single most pressing signal from your numbers (e.g. "Friday is a pressure point — Лео's contract ends AND the space is near-full") and offers one tap to open the right booking or jump to the calendar. Below it: four operator-flavoured KPIs (Utilization, Weekdays ahead, Contracts expiring, Open desk-days) with a fill bar on Utilization and a terracotta warn state on expiring contracts. The new Capacity outlook heatmap maps your desks × the next 14 days at a glance — amber for booked, sage for free, hatched for off-days, terracotta for contract-end cells; hover for details, click a contract-end cell to open it. Needs action sits beside the heatmap, both height-capped so the whole page fits in one viewport on desktop and each card scrolls inside if it overflows. Bottom row: per-room utilisation with a soft-spot callout when a room dips below 70%, plus the Next availability card that tells new-member enquiries when you can take them.
-
Expenses page redesigned — quick scan, quieter chrome
Expenses now matches the Overview design language. The page header carries the Finances breadcrumb; a single meta strip combines the month picker, monthly total, a sage/terracotta delta pill vs last month, and a quiet inline AI line (a pill, not a hero) that nudges you when a recurring template hasn't been logged yet for the current month — one click to generate it from the template. The list and the categories live side by side: each row has a category-tinted icon (rent terracotta-brown, internet sand, supplies sage, bills terracotta, accountant amber), date, name with an Auto chip on recurring rows, optional description, amount, edit, delete. Categories card keeps the inline rename + add + delete you already had, just with cleaner chrome.
-
Revenue is now Overview — a real finances dashboard
The Revenue page becomes Overview, sitting under Finances. Four KPI cards lead with Net profit (the number that actually matters) followed by Revenue, Expenses and Occupancy — each with a 6-month sparkline tucked in the corner and a delta vs the previous month. The trend chart is now a custom three-series view (filled Revenue area, dashed Expenses, solid Net profit) with a click-to-toggle legend and a hover crosshair that surfaces all three values for any month. The right column shows Revenue by plan as a donut + breakdown so you can see which plan type is carrying the month, plus Upcoming payments for the next 60 days. The bottom row lists Top contributors (member by member, with a bar showing share of monthly revenue) and a clean expenses summary. The signature AI · Performance chip pattern from the calendar lives here as a full forest-deep hero band that reads your current vs previous month and tells you the one thing worth acting on. Old /revenue URLs redirect to /overview so bookmarks keep working.
Read the full feature → -
Waiting list is now Leads — a real pipeline, not a parking lot
The old Waiting List grows up. Leads is a four-stage pipeline (New → Contacted → Toured → Ready) you can run as a kanban board or a flat list — the toggle animates between the two. Each lead carries its channel of origin (WhatsApp, Telegram, Viber, Instagram, Email, Walk-in, Referral) with proper brand icons; an explicit channel picker in the lead drawer lets you override what we parsed from the contact handle. Click any lead to open an editable drawer — change name, contact, dates, notes inline. A one-click Contact button deep-links into WhatsApp / Telegram / Viber / Instagram / mailto using the contact handle you stored, so reaching out doesn't need a tab-switch. An OhMyDesk AI nudge surfaces any lead that's gone quiet for 5+ days, and Ready leads get a one-click Convert to member action.
Read the full feature → -
A calmer calendar, a sharper brand, and an AI that has your back
Today OhMyDesk gets a head-to-toe refresh. The calendar trades its old per-day grid for clean span bars — one bar per booking, day-of-week and date stacked inline, plan tags on the bar, click to see details or cancel without leaving the page. The sidebar now scrolls independently from the main view, the workspace card has its own chrome, and the whole app moves to a four-layer warmth palette (white → cream → warm → soft) tied together by the Plovdiv display face. The headline addition: a new AI · Performance chip in the calendar header that reads your real occupancy, compares it to the previous week or month, and nudges you with one-line advice — quiet week? time to market. healthy week? keep the momentum. The AI chip pattern is now the brand's signature signal and will roll out to other surfaces from here.
-
Auto-invoicing on a schedule you pick
Pick a day of the month in Settings → Billing and OhMyDesk drafts that month's invoices for you. Auto-invoicing is opt-in per member — flip the toggle on each member who needs an invoice (requires their billing legal name and address), leave it off for anyone you bill in cash or comp. On the chosen day you get an email digest summarising what was drafted and what was skipped (and why), so you can review, send, or void from the per-member dialog you already know. There's also a Generate invoices button on the Members page if you'd rather kick it off by hand.
-
Visitors now get a confirmation email after booking
When someone books through your public page — whether it's a free day request or a paid flex / weekly / monthly / daily pass — they receive a branded confirmation email summarising the space, plan, dates, and desk. Replies route to your contact email so questions land in your inbox, not ours. The email field on the free-path form is optional, so visitors in a hurry can still book in two taps.
Read the full feature → -
Upgrade your trial in two clicks — invoice billing is live
When your free trial is winding down, the banner now opens a clean multi-step request flow (period — 3 / 6 / 12 months, with 5% and 10% discounts on the longer plans; then company legal name, tax ID, VAT ID, billing email). We email a PDF invoice from our EU entity, you pay by bank transfer, and the space unlocks for the paid period as soon as the funds arrive. No card on file, no recurring auto-charge.
-
Reactivating a paused plan is now all-or-nothing
Reactivate now runs as a single transaction on the server. If any target day is occupied, the whole reassignment is rejected up-front with a clear message instead of partially applying and leaving banked days stranded. Picks up the slack from the freeze feature's first month in production.
Read the full feature → -
Premium plan introduced — Smart Locks become a Premium-only feature
We renamed the Multi-Location plan to Premium and bundled Smart Lock integration (Nuki, Yale, August, +15) plus the flex burn-on-entry mechanic into it. Trial users keep full access during the free 3 months. Pro plan ($18/$29) members now see a soft upgrade prompt on the Smart Locks card; everything else stays the same. Billing activation comes when Stripe subscriptions land.
-
Door entries audit trail on flex members
Each flex member with a smart-lock connection now shows a small purple chip with the count of door entries to date. Click it for a popover with the last 10 dates and times — useful for spotting who came in when and confirming the burn matched a real visit.
-
New blog post: Set up smart locks for your coworking space in 5 minutes
A practical walkthrough for connecting Nuki, August, Yale, Salto, Latch, TTLock, and 12+ more brands to OhMyDesk. Covers the setup flow, what members see, the flex burn-on-entry twist, and when smart locks are overkill. Live at /blog/smart-lock-setup-walkthrough.
-
Smart lock access codes now follow your space's timezone and update with bookings
Access windows are now computed in your space's local timezone, so an "07:00 access from" setting in Sofia actually starts the code at 07:00 local — not 10:00 like before. Editing a booking's date range now also updates the existing PIN's window in place; if you move the start date or swap desk, OhMyDesk rotates the PIN and sends a fresh email automatically.
-
Flex plans burn balance only when the member walks in
When you have a smart lock connected, flex day balances stop burning at booking time. A day comes off the plan only when the member actually opens the door with their PIN — so flex members never lose days they didn't use. Multiple unlocks the same day count once. Long ranges are still capped: we block a flex booking up front if the plan doesn't have enough days to cover every day in the range, so balances can't go negative.
-
Smart lock integration — bookings unlock the door automatically
Connect your existing lock vendor account (Nuki, August, Yale, Schlage, Salto, Latch, TTLock, and 12+ more brands) in one click via Settings → Integrations. OhMyDesk then handles access for every booking: members get a personal PIN code via email when they book, valid only for their dates, removed automatically on cancellation. Available on the Pro plan, free during the 3-month trial.
Read the full feature → -
Feedback form — three brutal questions, every entry point
Roast or praise OhMyDesk in 30 seconds. New /feedback page, a sidebar shortcut inside the app, and a quiet prompt card that appears at week-1, month-1, and every quarter after. Every submission lands in our Telegram so we actually read them. Lifecycle emails for inactive owners now include a one-click feedback link.
-
New blog post: How to price flex day pass bundles
The math behind bundle pricing — discount thresholds, cash flow, the unused-days factor, and the two inflection points where bundles win against day passes and lose to monthly plans. Includes a worked example using Codeburg's actual numbers. Live at /blog/how-to-price-flex-day-pass-bundles/.
-
New blog post: How to sell coworking passes online without a marketplace
A practical guide to replacing bank-transfer and cash payments with a real Stripe checkout on your public booking page — covering all four pass types, what you keep vs. give up, and a 10-minute setup walkthrough. Live at /blog/sell-coworking-passes-online/.
-
Sell day passes, flex bundles, and monthly plans directly on your public page
Visitors can now buy a pass before they even set foot in your space. Enable weekly, monthly, or flex day-bundle payments in Settings → Integrations, and the plan cards appear on your public booking page automatically. Each purchase goes straight through Stripe to your account — we take no cut. For flex and weekly/monthly buyers, a member record is created automatically (or their balance topped up if they already exist). Day passes remain free-flow as before.
Read the full feature → -
Insights: next available week and month for new members
The Insights tab now shows the earliest date a new member could start a 1-week or 1-month plan. Desk-switching is accounted for — a day counts as available if any desk is free, so the answer reflects the real first slot across your entire space, not just a single desk.
-
New blog post: Why we shipped iCal instead of Google OAuth
The story behind calendar sync — why we chose iCal over Google Calendar OAuth, and the three iterations (daily banners, full-span events, arrivals & departures) it took to land on the right default. Live at /blog/why-we-shipped-ical-not-oauth/.
-
Mobile UX improvements and bug fixes
A round of fixes across the app — especially on mobile. Calendar cells now share equal height regardless of status, long member names are truncated cleanly in both mobile and desktop calendar views, and the Members table no longer causes horizontal page scroll on phones. Adding a new member no longer loses the input row after one second. Revenue chart filters wrap to two lines instead of clipping off-screen. In the Insights tab, tomorrow's expiring assignments now show "Tomorrow" instead of a redundant date. The Telegram Notifications card now shows correctly on narrow screens with no text collision. Invoice numbering no longer errors when the counter is reset to a previously-used number — the system skips already-used numbers automatically. Removing a team member now actually removes them instead of silently failing.
April 2026
-
Calendar sync — arrivals & departures in Google, Outlook, or Apple Calendar
Subscribe your personal calendar to a live feed of bookings at your space. Titles are short and scannable: [ARRIVAL] - Alexey Safonov on day one, [ENDS] - Alexey Safonov on the last day. Full details (full name, plan, desk, run dates, space) live in the event body. Events are marked transparent so they don't block your free/busy availability. Toggle between "Arrivals & departures only" (default) and "All booked days" in Settings. Optional reminders: enable a notification with your preferred lead time (15 min to 2 days before). Token rotatable from Advanced.
Read the full feature → -
New blog post: Nexudus alternatives for small spaces
An honest 2026 comparison of OhMyDesk, OfficeRnD, Cobot, and Spacebring for operators who run 5-50 desks and don't need enterprise-grade tooling. Includes a quick-comparison table, a section per alternative, and an honest 'OhMyDesk is the right fit when…' filter. Live at /blog/nexudus-alternatives-2026/.
-
Bulk import members from a CSV
Bring your existing member list over in one go. On the Members page, click Import, drop in a CSV (or paste it), and OhMyDesk auto-detects which columns are names, emails, phones, billing details, and tax IDs. A preview highlights any rows with errors, flags duplicates against your current members, and shows what will be skipped before you commit. Up to 500 rows at a time — perfect for switching from Google Sheets or Excel without retyping anything.
-
Email invoices, mark as paid, and void
One-click Send on any draft invoice — the PDF is generated, attached to a polite email, and delivered to the member. Status flips from draft to sent automatically and the PDF is archived for re-download. From the same dialog you can now mark an invoice as paid (with a paid-on timestamp) or void one you sent by mistake — the invoice number is preserved, never reused. Resend a sent invoice anytime if a member misplaces it.
-
Invoicing with per-member PDF generation
Stop opening Word or DocuSign to bill your members. Set your space's legal name, tax ID, bank details, and starting invoice number in Settings → Billing (editable per space if you run more than one). On any member, save their company details once — legal name, tax ID, VAT ID, billing address, payment method — and every future invoice auto-fills. Click the invoice icon to see past invoices for that member and create a new one with a live PDF preview as you type. Download the generated PDF in one click. Works in any currency, English labels, Cyrillic / Greek / accented Latin supported for international clients.
Read the full feature → -
Dedicated desk plans with freeze option
Stop juggling spreadsheets for fixed-desk members. Set a weekly or monthly price in Settings, pick the plan when booking, and the system handles everything: auto-creates the member, tracks their remaining days on the Members page, and prorates revenue cleanly. When a member needs a break, freeze their plan from the booking dialog — remaining days are banked and the desk opens up for others. Ready to come back? Hit Reactivate and the system finds available desks automatically, even splitting across multiple desks if no single one is free for the full run.
Read the full feature → -
Stripe Checkout on public booking page
Accept payments the moment a visitor books a desk — no more chasing invoices after the fact. Connect your own Stripe account in Settings, flip one toggle, and your public booking link shows a Pay & Book button. Funds land directly in your account; we take zero commission and never touch your money. When two visitors race for the last desk, only the successful payment wins the seat.
Read the full feature → -
Floor plan on booking confirmation
Help every visitor find their seat without texting you for directions. After booking, the confirmation page now shows your floor plan with their desk highlighted in orange — so no more 'which desk am I?' messages on a Monday morning. Works beautifully on phones. If you haven't drawn a floor plan yet, the page just shows the desk name.
Read the full feature → -
Map calendar view
See your whole space at a glance. The new Map view puts your floor plan front and center with every desk color-coded for the day you pick — free, booked, or assigned. Click any desk to book it; arrow through to the next working day. The fastest way to answer 'how full are we Thursday?'
Read the full feature → -
Interactive floor plan editor
Draw your coworking space the way it actually looks. Drag desks, tables, couches, walls, doors, windows, WC, kitchen, and pillars onto a canvas; rotate anything; combine multiple rooms into one shared view. It auto-saves every 10 seconds so you can close the tab without thinking. Once drawn, your floor plan powers the Map calendar view and every booking confirmation.
Read the full feature → -
Multi-location support
Running two or three coworking spaces? One login now covers them all. Switch between locations from the sidebar — each has its own rooms, members, calendar, and revenue. Built for growing operators who outgrew single-space tools but don't want to pay three separate subscriptions.
Read the full feature →
March 2026
-
Team members with role-based access
Bring your community manager on board without handing them the keys to your revenue. Invite by email — we create their account, send the credentials, and plug them into your space in one step. Managers handle bookings, members, and the waiting list; revenue and expenses stay private to owners. Up to two managers per space.
-
Flex day packages
Sell prepaid day passes without spreadsheets. Set up a plan (say, 10 days for €100), activate it on any member, and they get a personal booking link. Every visit deducts a day; multi-day stays deduct the right number automatically. When the balance runs out, the member sees a friendly 'talk to your space manager' screen — not an error. The easiest way to turn walk-ins into regulars.
Read the full feature → -
Email notifications
Never miss a booking again. A short morning email lists everyone arriving tomorrow and every assignment ending — so you can prep, clean, or follow up. Public bookings trigger an instant inbox alert the moment someone reserves a desk. Turn any email off from Settings whenever you want quiet.
Read the full feature → -
Meeting room hourly grid
Book meeting rooms the way operators actually think about them — by the hour, across every room, at once. The new grid shows every room side-by-side in 30-minute slots from 8 am to 8 pm. Double-booking is impossible. Prices fill in automatically from each room's hourly rate. Meeting-room revenue rolls up into its own line in the Revenue dashboard, so you know exactly which rooms earn their keep.
Read the full feature → -
Public booking page
Turn your Instagram bio, website, or WhatsApp into a booking funnel. Share one link and anyone can book a hot desk in two taps — pick a date, leave a name and phone, done. No account, no password, no app install. You get an instant Telegram ping the moment they book. Low-availability dates show 'Only 2 left' to convert fence-sitters.
Read the full feature → -
Telegram notifications
Get booking updates where you actually read messages — on Telegram. Link your account once in Settings and you'll see a morning summary of tomorrow's arrivals and assignments ending, plus instant pings when a visitor books through your public link. No new app to install, no notification fatigue.
Read the full feature →
Try every feature free for 3 months.
No credit card. Set up your space in under two minutes.
Start Free Trial