AWRA OpsHub Search

What an In-App AI Assistant Is Best At

Every business system now has a chat box in the corner. Almost none of them do what users assume they do on first sight. Here is precisely what ours answers — including a fixed set of questions about your own figures — what it will not do, why the boundary sits where it does, and how to tell what any vendor's assistant really is.

AI & Insights Washingtone Aura 10 min read

Put a chat box in a business system and the first question every user types is some version of "what were sales last month?". It is the obvious thing to ask. In most products it is also the one category of question the assistant cannot answer — and the gap between what users assume and what is actually there is where most disappointment with these features comes from.

So this article does the thing product pages usually avoid: it draws the line precisely, and explains why the line is where it is.

Two completely different products wear the same interface

A chat box in the corner of an application can be one of two fundamentally different things, and they look identical until you ask the right question.

A guidance assistant

  • Answers "how do I do X in this system?"
  • Matches your phrasing to a known task and routes you to the page
  • Knows the product; knows nothing about your records
  • Cheap, predictable, and cannot state a wrong figure
  • Replaces reading documentation and asking a colleague

A data agent

  • Answers "what were sales in Nakuru last month?"
  • Translates a question into a query against your database
  • Must respect every permission the asking user has
  • Expensive, harder to make correct, and can confidently be wrong
  • Replaces building a report — when it works

Ours is the first kind with a deliberately narrow slice of the second. The in-app assistant matches what you typed against a library of known tasks and answers with guidance and a link to the right screen. And for a fixed set of everyday questions about your own workspace — what is waiting for approval, what is low on stock, what is overdue — it reads the figure directly, under your own permissions, and tells you.

The questions it answers from your data

Asked in ordinary words, answered from your workspace

  • Pending approvals, broken down by module.
  • Low stock, and the stock of a named item.
  • Overdue customer invoices — the largest currency first, with the rest disclosed rather than added together.
  • Till sales today, yesterday, this week or this month. These are point-of-sale sales only, not invoiced revenue.
  • Late purchase orders.
  • Your own open tasks, and open or assigned tickets.
  • Active Smart Alerts, with who owns each one and whether it has been acknowledged.

Each question is tied to the permission that guards the screen showing the same figure. If you cannot open the low-stock list, the assistant says you do not have access and reads nothing — it is not a way round a role. And any link in an answer that you could not open is dropped rather than offered.

The figure is the query result, worded by a template. It is never passed through a language model, because passing a count through a model invites it to round, restate or invent one, and a wrong number delivered confidently is worse than no number.

How the rest of it works

Anything outside that set goes to guidance, and under the friendly surface the mechanism is deliberately simple. Knowing it tells you how to get good answers out of it.

  1. Your question is normalised and expanded

    Casing and punctuation are stripped, and common synonyms are expanded — so "buy", "purchase" and "procure" reach the same place. This is why phrasing matters less than people expect.

  2. A question about your own figures is tried first

    If it matches one of the data questions above, the answer comes from your workspace. A question phrased as how-to — "how do I approve" rather than "what is waiting for approval" — is left to guidance, because that is what the asker wants.

  3. Otherwise it is scored against known tasks

    Each known task carries keywords, and the best-scoring match wins. Where the score is zero, you get a helpful fallback rather than a guess — a deliberate choice, because a confident wrong answer is worse than an admission.

  4. The page you are on nudges the match

    Asking "how do I approve this?" from the procurement screen and from the leave screen are different questions, and where you are asking from is used as a hint.

  5. A guidance answer may be phrased by a language model

    Where an AI provider is configured, a matched how-to answer can be expressed in natural language rather than as canned text. The provider phrases; it does not decide, and it never sees a data answer. If no provider is available it falls back to the written answer, which is why the assistant never simply breaks.

  6. The question is logged

    Including whether anything matched. Unmatched questions are the most valuable output of the whole feature — they are a list, written by your own staff, of what the product or its documentation fails to explain.

The most valuable thing an assistant produces is not its answers. It is the log of the questions it could not answer — a list, written by your own users, of everything your system fails to explain.

Why it answers a fixed set, and not anything

A general data agent is the obvious next step and we have chosen not to take it yet. There are three reasons worth stating, and each of them shaped the slice we did build.

The first is permissions. An assistant that answers questions about your records has to enforce, perfectly, every permission the asking user holds — including the ones that separate own payslips from all payslips, and sensitive fields from ordinary ones. An assistant that leaks a salary because a question was phrased unusually is not a feature with a bug; it is a data-protection incident with a chat interface. A fixed set of questions, each bound to a named permission, is something we can prove. A free-form query is not, yet.

The second is correctness. "Sales last month" has to resolve to a definition — invoiced or paid, gross or net of returns, by document date or by payment date. Your finance team already has answers to those questions and they are encoded in your reports. That is why the sales answer says plainly that it is till sales, and why overdue invoices are never summed across currencies.

The third is that the honest alternative already exists. A report definition gives you any other answer, defined once, repeatable, shareable and schedulable. Where a number matters enough to ask about monthly and it is not in the set above, it deserves to be a report rather than a conversation — see building your own reports.

The question to ask any vendor

Four questions separate the products

"Ask your assistant what our total sales were last month, in front of me, on a real dataset."

What you will hear

A number, or an offer to find the sales report.

How to read it

Ours answers till sales for today, yesterday, this week and this month, and says that is what it is. For invoiced revenue last month it points you at the report.

"Now ask it the same question as a user who cannot see sales."

What you will hear

A refusal that names the missing access.

How to read it

This is the question that matters, and it is rarely asked. Ours tells that user they do not have access and reads nothing.

"Does its number match what the sales screen says, to the shilling?"

What you will hear

"It uses the same underlying data."

How to read it

Same data, possibly different definition. Ask them to run both side by side, and ask whether a language model touched the figure on the way. Ours does not let one.

"Show me the log of questions it failed to answer."

What you will hear

Often genuine surprise that you asked.

How to read it

Whether they capture unanswered questions tells you whether the feature is being improved or was shipped as a demo.

Getting value from the one you have

A guidance assistant is genuinely useful in one specific circumstance, which happens to be the most expensive circumstance in software adoption: a new user, mid-task, who does not know what the feature is called. That person's alternatives are to interrupt a colleague, guess, or stop. The data answers add a second: a manager who wants to know what is waiting for them before opening five screens to find out.

  • Point new staff at it during induction as a "how do I" tool, and point managers at it for "what is waiting" — the framing prevents the disappointment.
  • Read the unmatched-question log monthly. It is the cheapest usability research you will ever get.
  • When a question recurs and is unmatched, that is a documentation or training gap — or a data question worth adding — and now you know exactly how your staff phrase it.
  • Do not put it in front of customers expecting it to answer questions about their orders. It is an internal tool.

What we do, and what we can add

The in-app assistant — the straight answer

What AWRA OpsHub does today

  • Answers about your own workspace for a fixed set of questions — pending approvals, low stock, a named item's stock, overdue invoices, till sales, late purchase orders, your open tasks, tickets and active Smart Alerts.
  • Every data answer under the asker's own permissions, refusing and reading nothing where the asker lacks access.
  • Figures read directly and worded by template, never rewritten by a language model.
  • Links you cannot open left out of every answer.
  • Task guidance across the product — how to do a thing, and a link to the screen where you do it.
  • Synonym-aware matching, so everyday phrasing reaches the right task without exact wording.
  • Page-aware hints, using where you are asking from to disambiguate.
  • Optional natural-language phrasing of guidance answers through a configured AI provider, with fallback to the written answer when none is available.
  • Query logging, including which questions matched nothing — visible to you.
  • A separate public assistant on the website, answering product questions for visitors from published content.

More we can add to your workspace

  • Arbitrary questions about your data, beyond the fixed set — a revenue figure by branch, a margin by category, a supplier ranking.
  • Follow-up questions about a figure, so "and last week?" or "which ones?" continues from the answer before.
  • Charts in an answer, rather than a figure and a link to the screen that draws one.

Where we point you to a specialist

  • It cannot perform actions. It will not raise a purchase order, approve a request or edit a record on your behalf.
  • It is not a support agent. It does not open tickets or escalate to a human within the same conversation.
  • It does not learn from your corrections. Improvement happens when the task library is extended, informed by the unmatched-question log — a deliberate process, not silent drift.

If a vendor tells you their assistant answers anything about your data, ask for a live demonstration against a real dataset with a restricted user account. That single request separates working products from convincing ones.

More we can add to your workspace

Anything above that you need, we can build for you

Everything listed above as something we can add describes what ships in the standard product today — it is a starting point, not a limit on what AWRA OpsHub can do for your organisation. Kenya's eTIMS integration and its maintained payroll engine are both in the product because clients needed them and commissioned them; neither appeared by itself, and the same door is open for whatever you just read about. One qualification so this is worth what it claims: a small number of things on this blog we deliberately leave to a specialist rather than build — a statutory ledger we will not sign our name to, a rule that would decide a tax question for you, a clinical or member-funds record that belongs in a regulated system — and where that is true the post says so in those words. Everything else is a scope, a timeline and a price.

The operational work, which is what most commissions actually are

An extra approval stage in a chain that does not match the standard one, a custom field set on employees or assets that only your sector needs, an expiry that has to block an order rather than send an email, a report your board asks for in a shape nothing produces, or a scanner or weighbridge feeding the goods-in door. These are the commissions we are asked for most often and the smallest ones we quote — and unlike a revenue-authority pipeline, none of them waits on a regulator.

The module-shaped additions, which are the ones readers ask for most often

A price list with real discount authority, a customer-facing quotation that expires, a bill of materials or recipe costing, a staff advance that is issued, acquitted and chased, a member or unit ledger, a matching rule that holds a payment. Each of these is a build rather than a setting, and each has been quoted before — a bigger piece of work than a custom field, with a written spec and a date instead of a roadmap slide.

The report, document or pack nothing currently produces

The board pack in the shape your board actually asks for, a donor or funder layout, an invoice or receipt template carrying what your regulator or your customer expects, a dataset the report builder cannot reach yet. Usually the fastest thing on this list to deliver, because the data is already in the system.

Systems, rails and hardware you already run

The accounting package, CRM, online store, core banking or custom database you intend to keep — connected through our API so a fact is entered once and appears everywhere it is needed. Plus the physical edge: a scanner, a scale, a weighbridge or a till peripheral feeding the door it belongs to.

How it works: you describe the requirement, we return a written scope, timeline and cost, and once agreed it is built into your environment and maintained as part of the product. Nothing here waits on a regulator or a published specification, which is why operational builds are the ones we quote fastest. Tell us the requirement that would otherwise rule us out — that is a better first conversation than a demo.

Tell us what your operation needs

Our take

Judge an assistant by what it refuses to answer, and by whom it refuses. Ours answers "how do I", answers a short list of "what is waiting" questions from your own figures under your own permissions, and routes you to a report for everything else. Then read the unmatched-question log every month — that log, not the chat box, is where the actual return on this feature lives.

See the AWRA assistants

An in-app assistant that routes you to the right screen and answers everyday questions about your workspace, a public assistant for website visitors, and a log of the questions neither could answer.

Explore the assistants

Frequently asked questions

Can the assistant tell me our sales figure for last month?

It answers till sales — point-of-sale sales — for today, yesterday, this week and this month, provided you hold the permission to see point-of-sale sales. It does not answer invoiced revenue for an arbitrary period; for that it routes you to the report, because a sales figure has to agree exactly with your reports on definitions like invoiced versus paid.

What questions about our data can it answer?

A fixed set: pending approvals by module, low stock, the stock of a named item, overdue customer invoices, till sales for today, yesterday, this week or this month, late purchase orders, your own open tasks, open or assigned tickets, and active Smart Alerts with their owner and acknowledgement. Each is tied to the permission that guards the same figure on screen.

Does our data get sent to an AI provider?

Not the figures. A data answer is the query result worded by a template and never passes through a language model. What can be sent is the phrasing of a how-to answer, where a provider is configured. If your policy requires that nothing at all leaves your environment, the assistant still works with no provider configured; you get the written answers rather than conversational phrasing.

What happens when it does not understand a question?

It says so and offers a fallback with suggested questions, rather than guessing at the closest match. That is a deliberate choice — a confident wrong answer in a business system costs more than an admission. Every unmatched question is logged, and that log is the most useful output of the feature: it is a list, in your staff's own words, of what your system or its training fails to explain.

Can we add our own answers to it?

The task library is configuration rather than code, and the unmatched-question log is what should drive additions to it. If you have organization-specific procedures you want it to answer — your own approval thresholds, your own naming for things — raise that as a requirement; it is a reasonable ask, but treat it as scoped work rather than assuming a self-service editor exists.

Is the assistant on your website the same thing?

Related but separate. The public assistant answers product and company questions for website visitors from published content — documentation, blog posts, feature pages — while the in-app assistant guides signed-in users through tasks and answers questions about their own workspace. The public one reads no customer or business data, which is why it can be open to anyone without any access question arising.

Share this article

LinkedIn X WhatsApp

Help Center

Need a quick answer while you read?

Run inventory, procurement, assets, sales, and field work with approved AWRA guidance for setup, migration, integrations, security, pricing, and support.

Search all approved AWRA public help articles.

Open Help Center