Changelog

What's new in oToK

Every release — the new features, improvements, and fixes, as they ship.

14.9.0

v14.9.0

New

  • Summary row for table reports: under the table, one figure per column — count, sum, average, minimum or maximum — computed over the whole filtered result, not just the page on screen. Switch the function with a click on the footer cell, and your choice is saved with the report. Money is summed per currency or converted into your workspace currency.
  • Connect AI assistants (MCP) to several workspaces at once: on the approval page, tick which workspaces to connect — or pick them all — and one connection covers them, instead of connecting each separately. The assistant names the workspace it's acting in on every call, and you can disconnect the connection from every workspace at once from Settings.
  • Share what you're looking at from the app: in the mobile app and the installed PWA, where there's no address bar, a share button in the top bar and in the ⋯ menu of a contact and of a conversation sends a teammate a direct link to the page, contact or conversation you are viewing — and it opens in the right workspace.

Fixed

  • Event attendees table: on wide screens the table was clipped and the columns on the right were out of reach. It now scrolls sideways and every column is available.
  • Cardcom transaction sync: transient read failures are retried automatically, so brief interruptions are less likely to stop the daily sync.

14.8.2

v14.8.2

New

  • Sign in with a passkey without typing your email: tap "Continue with Passkey" and your device offers the passkeys it holds for oToK — one touch and you're in. An older passkey that can't do this keeps working with the email field, and My settings marks which passkey may still ask for your email. Registering a new passkey explains itself clearly too, including when a device can't store one.

Fixed

  • Scrolling in bottom sheets on mobile: sheets whose content is taller than the sheet now scroll by touch, so everything is reachable — on a real phone, not just on desktop.

14.8.1

v14.8.1

New

  • Automatic SMS credit renewal: enable automatic renewal to replenish a low balance. SMS campaigns paused for lack of credits and waiting automations resume after the balance is replenished, with a notification if renewal fails.

Fixed

  • WhatsApp campaigns with dynamic link buttons: approved templates with a website button that holds a variable now send correctly. Set a value for each button, preview the completed link, and a send with a missing or invalid value is stopped before it goes out.
  • Report CSV export is now on by default for everyone who can read reports, with no separate permission to grant — and it still respects each person's data access.

14.8.0

v14.8.0

New

  • Payment terms, overdue and reminders: give a sale a due date (net 7 to 90 days from the sale date, or a fixed day) and an optional deposit milestone. A sale with money still owed past its due date reads Overdue, with the amount and its age (0–30, 31–60, 61+ days) — on the sale record, in a Due column and filter on the Sales page, in an Overdue tile on the dashboard, in reports, in exports and in the API. The Payments page gains an Overdue status. You can also turn on reminders before and after the due date (off by default): each one carries a fresh pay link for what is still owed, and stops by itself the moment the money arrives. Reminders are available on Scale and up.
  • Access that expires: products and cycles now have an Access lasts setting — never, until a date, a span from when access is received or from the cycle's start, or until the cycle's end. Expired access closes on its own, fires the Access ended automation and cancels the attendance the sale created. Change or clear one person's end date, and apply a changed term to people who already have access. On a per-period plan, each period's payment extends the existing access instead of stacking a new seat. Available on every plan.
  • Bulk actions, import and duplicates: on the Sales page, tick sales (or everything matching your search and filters) and change their owner in one go, cancel them with a choice of what happens to the money, or export the selection — as a background job with live progress, a Stop button and a result for every sale. You can also import past sales from a CSV file, silently — no automations fire and no customer is contacted — with an error report to download. A Possible duplicates filter and a chip on each suspect row help you clean up the list.
  • Receipts for manual payments, plus cheque, Bit and PayBox: record a payment by cash, transfer, cheque, Bit or PayBox and issue a receipt for it through Cardcom or Sumit — with the payment method and its details printed on it, from the New payment form or later from the payment's details. A post-dated cheque is recorded as Scheduled and counts as revenue only on its date. Available on Scale and up.
  • Connect AI assistants by signing in, no token to paste: connect oToK to Claude and other assistants through the MCP connector with an ordinary sign-in and approval screen — pick the workspace and how long the connection lasts, and the assistant acts strictly within your permissions. The connection appears under Settings → AI Agents and can be revoked at any moment. Available on Growth and up.

Improved

  • Numbers that agree everywhere: Outstanding is calculated by the same rule on every screen, and MRR no longer counts sale payment plans or paused plans. Revenue analytics, LTV and MRR convert foreign currency at the rate of the day the money was recognised rather than today's — and the screens say so. On a contact, one Sales & payments tab brings together deals, quotes, sales, payments and orders; the Sales and Payments pages gain a sortable balance column, a menu on every row, sorting, sale-number links and a comfortable phone layout. Reminder and receipt settings moved to Settings → Sales tools → Payments.
  • More reliable recurring and multi-payment billing: installments are card-only, and an amount charged on a card is booked as full revenue; a recurring cycle not charged to a card is added as Scheduled and counts as revenue only when you mark it paid, with a card collection rate alongside. A plan that gets stuck is flagged Needs attention with a Resume charging button, every decline is kept with the provider's reason, and sales follow-ups that fail retry on their own and can be retried by hand from the Sales page.
  • Integrations and developer tools: with Salesforce connected, you can switch on updating a campaign member's status when access to a course ends (off by default). In the API and the MCP connector, filter sales by date, product and cycle, add, edit and remove items on a sale, and record a sale with several items.

Fixed

  • Report CSV exports include every row: Export all rows as CSV now exports all matching results, not just the page that was loaded. Also: contact merges preserve the original consent and attendance records and can be fully undone, sale numbers are never reused after a deletion, and the Sale paid automation no longer fires again after a price cut.

14.7.0

v14.7.0

New

  • Zoom overlap warning: when you create, edit or schedule a Zoom-linked event, oToK now shows which other Zoom events in your workspace overlap it — with their names and start and end times. It's a heads-up only — you can still save when there's an overlap.

Improved

  • Attribution that covers more outcomes: on top of new contacts, inquiries and sales, the attribution report now credits channels and campaigns for meetings booked, event registrations, and quotes sent and accepted — under the model and lookback you choose, in the KPI row and in both the Channel and Campaign tables.
  • Events — who actually signed up: the events table and cards now show a clear pair of numbers — current registrants, with everyone who ever signed up in brackets. On past events you see the participants who actually showed up out of those registrants. An Advanced view in the table lays every count and rate side by side (registrants, unregistered, participants, no-shows, waitlist, and attendance, no-show and unregistration rates), and CSV export follows the view you picked.
  • Inbox and WhatsApp: message buttons — links, phone numbers, copy-code coupons and quick replies — now look and behave the same on every kind of message, including ones sent from the phone app. WhatsApp Flow form replies show as readable fields, and web addresses without https:// become tappable links.
  • A tighter, clearer contact page — on phones too: the Products, Quotes, Deals and Sales tabs are now compact, sortable tables. Quotes show validity and payment state, deals are totalled by open, won and lost, and automation runs read as a single line that fits their status. The Inquiries, Tasks and Payments tabs were reworked so titles and amounts no longer get cut off on small screens.

Fixed

  • Contact details no longer disappear: when a form or payment provider such as Cardcom sends a contact without an email or phone, the details you already have stay as they are. New details still update, and clearing a field by hand from the contact card still works.

14.5.1

v14.5.1

Fixed

  • Shared WhatsApp and SMS consent: when someone opts out of messages on WhatsApp, that opt-out is now recorded for SMS too, and no fallback text goes out to them. Consent is checked again just before each send, and campaign counts, previews and retries all treat the opt-out the same way. Email is unaffected.

14.5.0

v14.5.0

New

  • Campaigns to an event's audience: a Send campaign button on the event page and on attendee lists takes you straight into the WhatsApp, SMS or email composer — no rebuilding the audience by hand. Send to everyone matching or only the people you've selected, even across pages, pick any attendance status, and exclude people by event and status. A preview shows how many recipients will get it and who was left out and why, and saving it as a reusable audience is your call. If someone registers for an excluded event or opts out after the campaign is set up, they don't get the message — the audience is checked again just before each send. Campaigns sent from an event show up in its history. Available on every plan.

14.4.0

v14.4.0

New

  • Automatic Zoom recording: Zoom-connected events now have a single "Automatically start recording" switch on creation and edit — on by default for new events. In the Zoom integration settings you choose whether recordings go to the cloud or stay local, and oToK checks against the host's Zoom account that your choice is possible before it creates the meeting. Other edits to an event never change its recording, and events imported from Zoom are left as they are.
  • Event category management: a new Categories dialog lists every category in your workspace with its event count — rename one, merge categories into one, or delete, and every event updates at once, including screens you have open. Automation rules and API filters that rely on a category need a manual check after a change.
  • Dedicated product and cycle editors: editing a product or a cycle opens on a page of its own, with protection against leaving without saving and a return to the tab you came from. Creating a product from a quote or a deal keeps your draft. You can also classify any product as physical, digital or a service — in the editor, the API and the catalog output — and fields that don't apply to the chosen kind are hidden. Available on every plan.
  • Reorder your sidebar shortcuts: drag the shortcuts you've pinned into the order that suits you, or reorder with the keyboard alone, with accessible announcements. The order is saved per user, and on mobile the bottom tab bar stays as it is.

Fixed

  • Inbox: the jump-to-latest button no longer disappears after an interrupted scroll, and emoji reactions to messages no longer inflate the new-message counter.
  • Filters: relative-date conditions (such as "in the last 7 days") inside grouped filters are now calculated correctly in bulk actions and exports, and keyboard focus moves to the neighbouring condition after you remove a condition row.

14.3.0

v14.3.0

Improved

  • Zoom attendee short links: next to each registrant's short link in the attendee table there's now an Inspect destination button — see where the link points right now, the Zoom address saved in oToK, and whether they match, differ or can't be checked, with the check time and copy controls. It's read-only: it never changes links, registrations or messages, and existing links can be inspected without recreating them. When a link can't be verified as belonging to the attendee, it says so plainly.

14.2.1

v14.2.1

Fixed

  • Refresh Zoom links: refreshing short links after a passcode change now works for existing links in the current format, and links you've already distributed are kept as they are. A short link still waiting to be verified stays visible with a verification label, but is not clickable from the attendee table until verified — and attendees who share a link are updated together.

Ready to upgrade your customer communication?

Get started with oToK — connecting a WhatsApp number takes minutes.

No credit card required — start right away