How it works

Architecture, principles and the life of a message, from arriving on a channel to becoming a task, an action or an alert.

Updated:

Principles

  1. Deterministic core, AI as interpreter. The AI understands the customer and calls tools. The engine computes availability, holds and confirms. The AI never invents a time or a price.
  2. The database guarantees the rules. Double booking is impossible because PostgreSQL rejects overlapping allocations, not because the app "checks first".
  3. One operational truth, many views. A task is a single object; you see it in Today, as a list, in the calendar or on the map.
  4. API first. The dashboard, the bot, MCP and Wagy use the same services. If something cannot be done through the API, the API is missing it.
  5. The credential defines the business. A key or session always belongs to one project.

Architecture

Channels:   WhatsApp · Web chat · Telegram · Dashboard · Wagy · API · MCP
                 │
Gateway:    credential → project · permissions · limits · pauses · signed webhooks
                 │
Core:       conversations + AI │ scheduling and task engine │ flows │ knowledge
                 │
Data:       PostgreSQL (row-level security, exclusion constraints) · Redis
External:   AI models · audio transcription · channel providers · maps

The life of a message

  1. It arrives. The channel (WhatsApp, web chat or Telegram) delivers the message. The signature or key is verified, duplicates are dropped and it is stored in the Inbox. If the channel is paused, the pause applies before anything else.
  2. It is understood. Audio is transcribed. The customer is identified (one customer can have several identities: phone, Telegram) along with the conversation. If a person took over, the bot does not answer. Channel rules (for example asking for phone and email on the web chat) apply before the AI is called.
  3. The AI asks. The model receives the business context, the local date and time and the latest messages. It can only call tools: find slots, hold, confirm, query knowledge, save a shared location or hand off to a person.
  4. The engine decides. Every call is validated against the business rules and only then executed. If something changed, the engine returns alternatives and the AI asks again.
  5. Exact reply. Dates, times, services, prices and addresses come from templates filled with the real result.
  6. Work and events. A booking is a task with stages. Every stage change or action produces events that trigger flows, team alerts (via Telegram or WhatsApp) and webhooks.

Tasks, stages and actions

Each business defines the stages its work goes through and the actions that move a task from one to another (take, release, complete, "no-show"). An action can have effects: assign it to whoever runs it, release it, close it with an outcome. See Work and actions.

Flows

A flow says "when this happens, if this condition holds, do that": send a message, notify the team, wait, run an action. Conditions are simple expressions about the task, the customer or the time.

Security

Each business is isolated in the database itself, secrets are encrypted and every change is recorded in an audit log. You are responsible for your customers' data; Fiuit processes it on your behalf.

Where to go next