Contacts, CRM & Deals

Every customer's full story — down to the closed deal.

No more scattered spreadsheets: one profile per customer with every conversation, field and activity — plus deals, products and payments in the same system.

A customer base that fits your business

Add custom fields, tag and group — and every profile tells you exactly who the customer is, where they came from and everything that has happened since.

  • Custom fields of any type — usable in filters, forms, imports and automations
  • Marketing fields on the contact itself — the page they arrived from and its title, the referrer, their browser and the affiliate who sent them — kept automatically in sync with their first touch from every channel; only the affiliate, browser and IP can be edited by hand
  • Tags and groups for fast organizing and segmenting
  • Lead score and lifecycle stage on every contact
  • A full activity timeline: messages, campaigns, deals, payments, events and imports
  • Filter and segment by what's linked to a contact — has deals, tasks or payments and more, or conditions on those linked records
  • Bring the report columns into the Contacts list itself — related records such as sales, deals and tasks, a field one hop further away (Sales › Cycle › Name) and calculated counts and totals — then save the layout
  • Workspace owners can merge custom fields of the same type, preview conflicts and choose the value to keep
  • Mobile contact records with quick actions and touch-friendly editing; quick search also shows lifecycle stage

An owner on every contact — and everything they carry

Responsibility belongs to the person, not to a single conversation: give a contact an owner and their conversations, deals, tasks, quotes, inquiries and meetings travel with them.

  • An Owner column and a My contacts view on the contacts list — plus an owner chip on every profile
  • Hand a contact over and the dialog shows exactly what moves along: open deals and tasks, live quotes, open inquiries and upcoming meetings
  • A contact nobody owns is claimed automatically — by whoever answers the first message, or shared out round-robin and by workload as new leads arrive
  • A deal, task or quote created on a contact inherits their owner, so a new record is never left ownerless
  • Set the owner in bulk, assign by team-member email during a CSV import, and carry it through exports, the API and contact webhooks
  • Automations can assign a contact — to a named agent, round-robin, or whoever is least busy — and react the moment the owner changes

Every inquiry lands in a queue — with an owner and a clock

Someone who fills in a form shouldn't just become another row in your contact list. Every way a lead arrives — a form, a landing page, a popup, a Meta lead ad, a webhook, a booking, an API write, or the first WhatsApp message of a new conversation — opens an inquiry that somebody owns and answers.

  • Intake procedures route each inquiry by ordered rules: what was submitted, who the contact is, where it came from, and whether it is business hours
  • Send it to a named agent, or to a team — round-robin, or whoever is least busy right now
  • Set a first-response target and the clock runs on your business hours: the owner is warned as it approaches, and a missed target escalates to the people you choose
  • The Inquiries page shows the submitted content, where it came from, and that person's other open inquiries and who is holding them
  • The queue works like an inbox: tabs for New, In progress, Needs attention and Closed with live counts, a switch between Everyone, Mine and Unassigned, a one-click Take on anything nobody owns, bulk triage, and a sort that puts the longest wait first
  • Turn an inquiry into a deal without leaving it — open one with the contact and title already filled in, or link it to a deal that person already has open
  • An Inquiries tab on the contact, a dashboard panel, a report dataset and CSV export — so the backlog is measurable, not anecdotal
  • Automations gain an Inquiry trigger (created, assigned, resolved, target missed), the submitted fields as variables, and a Manage inquiry action
  • Nothing is ever swallowed: when routing cannot work out where an inquiry belongs, it waits in the queue unassigned rather than disappearing

Import, manage and export at scale

A guided CSV import wizard walks you from field mapping to the final report — and bulk operations run safely in the background, even across thousands of contacts at once.

  • A guided import wizard with field mapping and smart name completion
  • Choose which identifiers an import matches on — phone, email, national ID — and in what priority order
  • Live progress, cancel and retry — plus a downloadable row-by-row error report
  • Bulk edit, delete and start-automation — with progress tracking on every job
  • Export to Excel (xlsx) or CSV — contacts, deals and stage history, campaign recipients, product and cycle recipients, payments, tasks, calls, timesheets and event attendees
  • Large exports run in the background — the file is ready to download when it finishes
  • Exports respect permissions — every agent exports only what they are allowed to see

Duplicates prevented — and resolved without losing a thing

oToK stops duplicates before they are created — and when they already exist, gathers everything into a single resolution screen. Identity runs on three values, so a contact is matched by whichever one you actually have.

  • National ID numbers are a full identifier beside phone and email — validated as you type against the rule for your workspace's country (a check-digit rule for Israel, a general rule everywhere else), unique per workspace, and usable in search, import matching, filters, automations and the API
  • Shown masked to the last four digits everywhere a list shows many contacts at once — the full number stays visible on the contact's own record and on the merge and identity-resolution screens
  • A duplicate warning as you type — before the contact is even saved; choose per workspace whether to warn or block
  • Integrations, API and webhooks never create a duplicate quietly — every identity conflict is either resolved or raised for review
  • Compatible matches — a phone that matches one contact and an email that matches another — merge automatically the moment they arrive, through the API, a webhook or an integration; anything uncertain or conflicting still waits for review
  • Side-by-side, field-by-field merge — pick the right value for every field
  • The resolver shows why contacts were grouped — a shared phone or email, even one shared only in the past — and each value's change history, so you keep the current one
  • Identifiers that carry real history get flagged — so they're never discarded by mistake
  • Changed your mind? Undo a merge for up to 24 hours
  • Decide to keep contacts separate and it's remembered — the pair won't resurface

Complete missing details — automatically

A lead left just an email? Enrichment fills in the rest of the picture — through providers you already trust.

  • Turn a bare email address into a fuller profile — company, role and contact details
  • Bring your own Dropcontact or Hunter API key — enrichment runs through your own account, without metering
  • Conflicting details are never overwritten silently — changes route through the same duplicate-review queue

Every phone call, on the record

Phone calls are where deals actually happen — and they finally leave a trace: logged on the customer, feeding automations and follow-ups.

  • Log a call in seconds — outcome, notes and a follow-up task in one dialog
  • A dedicated calls tab on every contact — the full call history: direction, outcome, duration, agent and notes
  • A logged call can trigger an automation — send a summary, update a field, start a sequence
  • Connect Extra Mobile and calls log themselves — with click-to-call and recording playback right inside oToK
  • AI call summaries and next steps with GenieAI — when the service is active on your Extra account

Tasks, notes and follow-ups that don't slip

Every "I'll get back to you" becomes a task tied to the customer — and the system makes sure it resurfaces at the right moment.

  • Tasks with due dates, linked to the customer — including follow-ups created straight from a phone call
  • A daily agenda email — only on days something is actually due or overdue
  • Notes on the customer record — context stays where the whole team finds it
  • Tasks are a data source in the report builder — see what's open, done and overdue

Deals & sales pipelines

A drag-and-drop Kanban board that shows exactly where every deal stands — and any deal change can trigger an automation.

  • Multiple pipelines side by side — sales, renewals, partnerships — each with its own stages
  • Won/lost status separate from stage — with lost reasons plus funnel and velocity insights
  • An owner on every deal — including permissions that show agents only their own deals
  • Two-way deal sync with Salesforce — via the Integrations page
  • Select up to 50 deals on the list to edit a shared field, assign or unassign an owner, archive, or permanently delete with a typed confirmation — permanent deletion stays owner-only

Products, payments & LTV

One product catalog serves both deals and payments — pick a product and the title and amount fill themselves. Alongside it, a payments ledger tracks what customers actually pay you — and with a connected Cardcom or Sumit account, you can charge customers directly from oToK.

  • A product catalog with a default price and SKU — optional price adjustments configured independently for products and cycles
  • A dedicated editor page for every product and cycle — unsaved-change protection, a return to the tab you came from, and your quote or deal draft kept when you create a product on the fly; classify a product as physical, digital or a service
  • Cycles per product — cohorts, runs or versions, each with its own dates, price and seat count; sales, deals and events file under the right one, and a page per product shows sales, revenue, open deals, cycles and events together; a Cycles view lists every cycle across the whole catalog, a cycle's status follows its dates on its own, and rows can be edited in bulk or saved as a named view
  • One-time payments, recurring charges with auto-generated cycles — and installment plans
  • Revenue analytics: LTV, MRR/ARR and trends over time
  • Record payments from automations and the API — and an incoming payment can trigger an automation
  • Charge customers through your own payment provider — payment requests by email with automatic reminders, personal pay links, a hosted payment page and payer receipts
  • Save a customer's card securely with your provider — one-click charges, and recurring automatic billing with smart retries when a charge fails
  • A Documents view on the contact's Payments tab — invoices, receipts and tax documents in one place

One sale, every item and payment

See who bought what and how much remains to pay — in a sale that connects products, cycles, discounts, payments and refunds.

  • Several items on one sale, with a price and quantity per item and a sale discount
  • Allocate payments across sales or collect from several payers, with an up-to-date balance
  • Quotes, orders, product forms and pay links connect to the sale record
  • Purchase-based segments, status history, and cancelling or reinstating a sale with a reason
  • Record sales and start follow-up through automations and the API
  • Payment terms — a due date, an optional deposit milestone and an Overdue status with aging, on the sale, the Sales page, the dashboard and in reports
  • Act on many sales at once — change owner, cancel or export — and import past sales from a CSV file, with a Possible duplicates filter

The buyer and the participant, each in the right place

Connect a product to its recipient, even when someone else paid or the product was a gift. Available on every plan.

  • A separate recipient for each sale item, plus enrolments and gifts without a sale
  • A Products tab on the recipient’s record and participant lists by product or cycle
  • Cycle capacity follows active enrolments; refunds and product access are shown separately
  • Set how long access lasts for a product or cycle — a date, a span, or the cycle's end — and expired access closes on its own

A menu that fits your work

Arrange the sidebar for a workspace, role, team or individual.

  • Choose a shared layout or allow personal adjustments
  • Drag your pinned shortcuts into your own order — or reorder with the keyboard alone; the order is saved per user
  • Menu order and visibility do not change access permissions

Ready to upgrade your customer communication?

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

No credit card required — start right away