AI & Engineering8 min read
AIFintechResponsible AILLMMultilingual

How We Built AI That Explains Money Without Hallucinating

AI that gets a number wrong in a finance app isn't a quirk — it's harm. Here's how we built assistants that explain credit, budgeting, and debt in 13 languages without inventing advice or numbers.

Svetlana Burninova

Svetlana Burninova

CTO & Co-Founder

How We Built AI That Explains Money Without Hallucinating

YPA-FINANCE's AI explains financial concepts, it never invents advice or numbers. Every calculation that touches your money runs in audited code, not in a language model. This post is how we drew that line, and why it's the most important engineering decision behind our AI assistants.

When people hear "AI financial assistant," they usually picture a chatbot that answers money questions. That's the easy part. The hard part: the part almost nobody talks about is making sure it never confidently tells you something false. In most products, a hallucination is an embarrassing screenshot. In a finance app used by someone navigating a new country's system in their second language, it's a person making a real decision based on a number we made up.

So I want to walk through how we actually built this: where we let the AI speak freely, where we don't let it anywhere near, and the guardrails in between.

A hallucination in finance isn't a quirk. It's harm.

Large language models predict plausible text. That's what they do. Most of the time plausible and correct overlap — which is exactly what makes the gap dangerous, because it's invisible until it isn't.

Ask a general-purpose chatbot "if I pay $200 a month on a $5,000 balance at 24% APR, when am I debt-free?" and it will give you a confident, specific, nicely formatted answer. Sometimes it's right. Sometimes it's off by a year. You can't tell which from looking at it, and neither can the person who needed to ask the question in the first place.

Now layer on our actual users: immigrants and newcomers who often don't have a financial safety net, a parent who already knows the system, or the English fluency to sanity-check a confident-sounding paragraph. The whole reason they're using YPA-FINANCE is that they *can't* easily verify this stuff themselves. That's not a user we get to hand a plausible guess. So we designed around a hard rule: the model is never the source of truth for anything that has to be correct.

Explain ≠ advise

The single most important line we drew is between explaining and advising.

Explaining is: "APR is the yearly cost of borrowing money, including interest. A 24% APR means that, roughly, for every $100 you carry on the card for a year, about $24 is added in interest." That's a concept. It's stable, it's true regardless of your specific situation, and the AI can explain it in plain words — in any of our 13 languages.

Advising is: "You should put $300 toward this card and stop using your other one." That's a prescription about a specific person's money. It depends on numbers that must be exact, and it carries consequences if it's wrong.

Our AI does the first thing. It is deliberately not built to do the second. That boundary isn't a limitation we apologize for — it's a safety feature. A tool that explains how credit works empowers you to make your own decision. A tool that quietly makes the decision for you, based on a guess, is the thing we're trying to protect people from.

The guardrails, concretely

Here's what that boundary looks like in the actual system.

Math runs in code, not in the model. Every calculation — debt payoff timelines, interest paid, payoff comparisons between strategies — runs in deterministic, tested code. The same logic behind Calculator PRO. The language model never does the arithmetic. When you ask a question that needs a number, the model's job is to recognize what you're asking and hand it to the calculator, then explain the result in your language. The number is computed; only the explanation is generated. If the math engine can't answer, the AI says so — it doesn't improvise.

Explanations are grounded, not free-form. When the AI explains a concept, it's working from our own vetted financial content — the same material behind our guides — not from whatever it happened to absorb in training. Grounding the answer in a known source is what keeps "what is a minimum payment" from drifting into a confident invention.

The scope is constrained on purpose. The assistant is built to talk about credit, budgeting, debt, and understanding financial documents. Ask it something outside that — to predict a stock, to promise you'll be approved for a card, to guarantee a credit score in 30 days — and it's designed to decline rather than please you with an answer. "I don't know" and "that depends, here's what to consider" are valid, correct responses. We treat them as features.

There's always a human path. When a question goes beyond what the AI should answer, the right move isn't a better guess — it's a person. Users can reach a real human through WhatsApp or Telegram. The AI knowing where its job ends is as important as what it does inside it.

Doing this in 13 languages multiplies the risk

Here's a problem most "AI finance app" write-ups skip entirely: hallucination risk and translation risk compound.

It's one thing to make a model explain APR correctly in English. It's another to ensure the *same* explanation is accurate, plain, and culturally legible in Spanish, Arabic, Russian, Korean, Vietnamese, Tagalog, and seven more — including right-to-left languages and ones where the financial vocabulary doesn't map cleanly onto U.S. concepts. A subtle mistranslation of "minimum payment" or "statement balance" can be just as harmful as a hallucinated number, and it's harder to catch because the English looked fine.

So the same principle applies across languages: the financial concepts we explain come from vetted, controlled source material, and the model's job is to render them clearly in the user's language — not to reinvent the financial meaning each time it translates. The structure stays fixed; the language adapts. That's how you keep "plain language in 13 languages" from quietly becoming "13 chances to get it subtly wrong."

What we don't let it do

It's worth being explicit, because the list is the trust:

  • It does not invent numbers. If a figure matters, it's computed, not generated.
  • It does not give specific buy/sell or investment advice.
  • It does not promise outcomes — no "you'll be approved," no "your score will hit X by then."
  • It does not answer outside its scope just to seem helpful.
  • It does not see or use data we don't hold — the same architectural constraint behind how we handle your data.
  • Why this is the whole point

    I've said before that financial confusion isn't a personal failing — it's a design flaw, and design flaws can be fixed. AI is the most powerful tool we've ever had for fixing it: a patient explainer that works in your language, at your pace, without judgment.

    But that power cuts both ways. An AI that explains clearly *and accurately* is genuinely transformative for someone locked out of the financial system by language. An AI that explains clearly and is *sometimes wrong* is worse than nothing for that same person, because they have no way to know which time is which.

    That's why we built it the way we did. Most finance tools our users have dealt with — banks, call centers, generic chatbots — sound confident and quietly get things wrong. We refused to ship one more of those. The guardrails aren't what we added after building the AI. They're the reason the AI is worth shipping at all.

    You can see how the assistant works in practice on the AI assistant page, or see how YPA-FINANCE compares to other finance apps on our comparison page.

    ---

    Svetlana Burninova is Co-Founder and CTO of YPA Finance, with 15 years in financial systems and 7 years in infrastructure. She holds AWS, CKA, CKAD, and HashiCorp Terraform certifications. Questions about how we build our AI? Reach her at hello@ypa.finance.