Floosi Floosi ← Back to home

User guide

Everything you need to know about Floosi — your finance assistant on WhatsApp and on the web: it reads your statements, follows your spending, builds real financial statements, and answers you in plain language.

Any bankin the world
Any currencyfrom the document
Any statementPDF, Excel or CSV
01
Upload a bank statement

Download your statement as a PDF from your bank's app or website and send it to the bot on WhatsApp — exactly like sending a photo to a friend. It reads every transaction (date, description, amount, balance), categorises it automatically, and gives you a summary with notes.

Any bank. Any country. Any statement.

Floosi is not limited to a list of banks or countries. The system reads any bank statement, whatever the bank, the country or the currency. Send the PDF and we handle the rest. In the web app you can upload Excel and CSV files too — those are read on our own server and never leave it.

🌐 Any bank worldwide 💱 Any currency 📄 PDF · XLSX · CSV
During the free trial you can upload 2 statements a month. On a paid plan the limit is 100 a month.
02
Automatic categorisation

Every transaction is categorised automatically into one of 27 built-in categories — with no effort from you. And the moment you correct a merchant, your correction becomes a rule that applies to every matching row, now and in future.

Category names appear in the app and the reports exactly as below — they are the keys the system stores — and you can create your own alongside them.

GroceriesDiningTransportSubscriptionsUtilitiesHealthcareShoppingEntertainmentTravelOwn accountsSent to someoneTransfersATM/CashSalary/IncomeRent/HousingEducationFuelGovernment/FeesSavingsInvestmentOtherInvestment incomeInterest receivedRental incomeOther incomeInterest paidInsurance
Choosing the category is a decision the model makes. Choosing the element — whether a category is revenue, expense, asset or liability — is not: the model never changes it. An element change is queued in the Review tab and nothing is applied until you confirm it.
03
Ask questions about your money

Write a question in plain English, Arabic or Thai and the bot answers from your own account data — no special commands — and it remembers the last 30 messages so the conversation reads naturally.

How much did I spend on dining last month?
In January 2026 you spent 310 JOD on dining across 18 transactions. The largest was 21.48 JOD.
What is my biggest expense this year?
The largest single transaction in 2026 is 200 JOD at MAIBI on 15 January.
04
More than one currency

The currency comes from the document alone — never from your country, your phone number or the brand. When a statement does not state it, it shows as unknown rather than being guessed. There is no closed list of currencies: every amount stays in the one it arrived in.

Totals are grouped by currency and never summed across them. If you want a single number, choose a reporting currency in the web app's settings — a presentation choice applied at render time to rows whose own currency is already known, shown with the rate's source and date. A row with no currency is stated as such: never dropped, never guessed.

05
Budget tracking

Set a monthly ceiling per category and the bot tracks your progress and warns you as you approach it.

Set a dining budget of 200
Budget set: Dining — 200 a month.
What are my budgets?
Dining 150/200 (75%) · Shopping 280/300 (93%) · Transport 60/150 (40%).
06
Teach the bot your own rules

Teach the bot to recognise particular merchants your way. Your rules override the model's categorisation permanently and apply to every matching transaction. You can also create your own categories alongside the built-in ones, and list and delete your rules from the Transactions tab.

Careem is transport
Rule saved: every transaction containing "Careem" is categorised as Transport.
Create a category called Childcare
New category created: Childcare. You can assign transactions to it now.
07
Spending coach

After every statement upload the bot gives you observations without being asked, comparing this month against the last three.

Dining up 45%Transport down 30%A new merchantIncome 3,000 · Spent 2,200 · Saved 800
08
Budget adviser

Tell the bot your income and it builds a budget plan from your actual spending — not generic advice.

My salary is 3,000
Monthly income set to 3,000. Say "suggest budgets" whenever you want a plan.
Based on the last three months: Groceries 500 · Dining 200 · Transport 150 · Savings 800. Say "apply all", or change any of them.
09
Savings goals

After every upload the bot tells you how much you saved (income minus spending), and you can set savings goals and follow the progress over time. A goal is a plan, not a wallet: the money behind it is already counted in the account it sits in, so goals never appear on your balance sheet.

I want to save 20,000 for a car
Savings goal set. I'll track your progress towards 20,000 for the car.
How are my savings goals?
Car: 3,200 / 20,000 (16%). Keep going.
10
Debt tracking

A simple ledger of what you lent and what you borrowed, with the payment history and a due date if you want one. Debts are not spending: they stay out of your income statement and your budgets, and they appear on your balance sheet — what you are owed is something you own, and what you owe is something you owe. Only the interest is income or expense.

I lent 500 to Ali
Recorded: you lent 500 to Ali.
Who owes me?
Owed to you: Ali 300 · Sara 150.
The due reminder appears when you open the app; nothing is sent to your phone. Dismissing it only stops it appearing — it does not mean the debt was paid, and the balance is unchanged.
11
Loan calculator

Thinking about a loan? Tell the bot the amount and the term and it works out the monthly payment and the total interest, and compares the options side by side so you can pick the cheaper one — it never shows a single number. Personal, car and housing loans are supported. It is available to everyone, including during the trial, and needs neither encryption nor bank data.

A car loan of 20,000 over 5 years
Over 5 years: about 385 a month, 3,100 total interest. For comparison, over 3 years: 605 a month, but you save 1,200 in interest.
What if I pay 100 extra every month?
You finish 8 months earlier and save about 450 in interest.
I don't know the interest rate
That's fine — I'll work out three scenarios across a range of rates so you can see the spread, and I'll say plainly that they are assumptions, not bank offers.
Terms compared automaticallyExtra-payment simulationRate-rise stress test (housing)Interest as a share of the loan
The bot gives no financial advice and recommends no particular option — it shows you what the numbers say so you can decide.
12
Encryption and security

Encryption is optional and you switch it on. Not switching it on does not stop you using the bot — and until you do, your database sits on our server unencrypted. We say that plainly, because a sentence that reassures the reader without describing reality is worse than one that describes it.

When you turn it on with /encrypt, the bot sends you a link to a secure web page where you enter your passphrase — the passphrase is never typed into WhatsApp. Your whole database is then locked with a key derived from that passphrase (AES-256-GCM over PBKDF2-HMAC-SHA256). We do not store the passphrase, so nobody opens the database without it — us included. A session locks itself automatically after 90 minutes of inactivity.

/encrypt turn encryption on /unlock open the session /lock lock immediately /status account status /mydata what is stored about you /speak the language of your voice notes
There is no recovery — none. If you forget your passphrase, your encrypted data is gone for good; the key is only in your head. And /email adds an email address as a way of signing in — it is not a passphrase reset and it decrypts nothing.
13
Privacy and your data

Every user has a separate database. We do not sell your data and we do not use it for advertising. The statement file itself is never saved as a file on our server: it is passed to our extraction provider, stays there for 90 days — a period we set on our own mailbox with them — and is then deleted, and we keep the transactions extracted from it. Excel and CSV files are read on our own server and never leave it.

To delete everything permanently, send DELETE ALL MY DATA and confirm with YES DELETE. There is one deletion path and no second one, and it takes with it the databases that were merged into your account and the merge-reversal snapshots.

The full list of who processes your data, where, what is kept and for how long is in the privacy policy, which is the binding text.

14
Family accounts

A family group lets one admin see the family's data in one place while it stays encrypted: each member's key is stored inside an "envelope" locked with the family key, which the admin opens with their own passphrase. Members cannot see each other's data, and every member controls their own — leave, lock, delete — at any time.

/family setup set up (admin only) /family status group information
15
In the web app — how the numbers are worked out

This section is not written here. It is the guide the product itself shows under Settings → User guide, generated from its single source on every build, with the policy sentences taken from the accounting engine's own constants at build time. This page cannot disagree with the product.

This is the guide the app itself serves, under Settings → User guide. It is the only source: scripts/build_guide.py turns it into the JSON the SPA renders, so the guide and the app cannot drift apart.

Policy statements below are substituted from the constants in accounting.py at build time, so a policy stated here is, literally, the policy the engine applies. The build fails on an unknown name rather than shipping a placeholder.


Getting started

Everything below this section explains why the numbers are what they are. This one is the short version of what to do.

1 · Sign up. An email address and a password. We send a six-digit code to that address; enter it and you are in. The phone field is optional and does one thing only: it links this login to books you already have on WhatsApp or LINE. Leave it blank if you are new.

2 · Set up your balance sheet. The five-step form on your first visit asks what your statements cannot tell us — what each account holds today, what else you own, what you owe, and money between you and other people. You can skip it and come back later from Settings → Set up my balance sheet.

The last step asks when your balance sheet should start, and it matters more than it looks. Statements that end before that date do not change your balance sheet, because the opening balances you just typed already contain them; their transactions still count in your income statement. So if you are about to upload last month's statement, pick a date before that statement's period. We suggest one — the first day of the month your oldest statement covers — and if you have not uploaded anything yet we say so rather than pretending today is the answer. You can change it later from Settings → Books open date without redoing any of this.

3 · Add your accounts. Accounts → + New account, one per real account. Say which kind it is: a credit card balance is money you owe, and reading it as cash is the difference between a net worth that is right and one that is wrong by twice the card balance. You can also let step 4 create the account for you.

4 · Upload a statement. Upload takes a PDF, an XLSX or a CSV.

  • A PDF goes to our parser and comes back as rows.
  • A spreadsheet is read here and costs nothing. You confirm which column is the date, the description and the amounts. If the file has no currency column, type the currency — we never guess it from your country or your phone number, so leaving it blank means the rows carry no currency at all. You are also asked what period the file covers. A bank statement prints that in its header; an export does not, and only you know. Say so and we can tell a complete month from a partial one, which is what the budget comparison needs. We offer the file's own first and last date as a starting point — accepting that is you telling us, which is not the same as us assuming it. Leave it blank if you would rather; nothing breaks, that file simply cannot prove a month is complete. If the dates you give do not cover every row in the file, we say which rows and stop — we will not quietly stretch the period to fit.

Then file the statement into an account. Anything unfiled waits at the top of Review.

5 · Read the reports. Reports shows only the reports your data can support: the income statement needs transactions, the balance sheet does not. Every figure is a button, and it opens the rows behind it.

6 · Fix what we got wrong. On Transactions, the category dropdown on any row changes it. When you do, we may offer to remember it as a rule — a rule applies to every matching row, now and in future, and you can see and remove your rules on the same tab.

The Review tab is where anything we could not decide waits for you: a transfer we cannot attribute, a row whose description told us nothing, an account whose type we had to assume. Nothing there is hidden from your reports — it is counted the safe way and flagged, and the screen says which way.

7 · Goals and debts have their own tabs. Goals is what you are putting money aside for — a deposit, a trip, a rainy day. Say how much you need and, if you want, by when; a goal with no date is fine. Each time you put money aside, record it, and the list behind the progress bar is every contribution you have recorded, so a wrong entry can be removed one line at a time instead of by editing a total. A goal is a plan, not a pot: the money behind it is already counted in the account it sits in, so goals never appear on your balance sheet.

Debts is money you lent and money you borrowed, per person, with the payment history behind each one. You can give a debt a due date, and one that is due soon or already overdue appears at the top of that tab. Be clear about what that reminder is: it shows when you open the app. Nothing is sent to your phone. Dismissing a reminder stops it appearing; it does not mark the debt as paid, and the balance stays exactly where it was.

What deleting takes with it. Deleting a statement removes its transactions too, and you can re-upload the same file cleanly afterwards. Deleting an account unfiles its transactions and removes the opening balance you gave it. Removing a rule stops it applying from now on and leaves the categories it has already set. Deleting a loan puts its repayments back to counting as an expense in full. Each of those says so before you confirm.


Basis of preparation

Prepared on a cash basis: every figure is recognised on the date the money moved through your bank, not the date you were invoiced or the period a bill covers. A December invoice paid in January counts as January.

Being on a cash basis governs timing, not classification. It does not make every outflow an expense. These six movements are cash leaving or arriving and are not income-statement items:

MovementIncome statement?Cash flow
Between your own accountsnointernal
Loan principal repaymentno — interest onlyout
Buying an assetnoout
Money you lendno — interest onlyout
Money you borrownoin
Paying a credit cardnointernal

Accounts and their type

An account's type decides how its balance is read. 42,000 in a current account is money you have; 42,000 on a credit card is money you owe.

Types: current · savings · credit card · loan · investment.

We read the type from your statement where the statement says so — an explicit header, or language only a card statement carries (a minimum payment, a credit limit). Where it does not say, we leave the account as a current account and ask, because inventing a liability is no better than missing one.

A type we inferred is always shown as an inference, with the reason, and it is never treated as confirmed until you say so.


Cash withdrawals

Cash withdrawals are recognised as an expense when withdrawn, because no statement shows what the cash was later spent on. Treating them as transfers would remove the money from your income statement permanently. You can change this in the chart of accounts.


Money you lend and money you borrow

Money in and money out track cash leaving your control, not changes in your wealth. Moving money between your own accounts or into your own savings is shown separately, because you can still reach it. Money lent to someone else, and loan principal you repay, count as money out — the money is gone from your control even though your net worth has not changed.

Lending swaps cash for a claim; borrowing swaps a debt for cash. Net worth does not move on the day either happens, and neither touches your income statement. Only interest is ever income or expense.

You manage these on the Debts tab — adding one, recording a repayment, setting a due date, and confirming when a bank row is the money changing hands. They still appear on your balance sheet, because money owed to you is something you own and money you owe is something you owe. Moving where you manage them did not move the money.

When we spot a bank row that looks like one of these, we offer it and wait. Confirming takes that row out of your income statement, which is exactly the kind of change worth asking about rather than making quietly.


Opening balances, and the date your books open

Your statements can only describe accounts you have uploaded. Everything else — the flat, the car, the mortgage, money a cousin owes you — has to be told to the app. Settings → Set up my balance sheet asks for it.

Choosing the date. The setup asks when your balance sheet should start and suggests an answer: the first day of the month your oldest statement covers, or today if you have not uploaded anything yet. If you are about to upload statements you already have, pick a date before the earliest of them starts — otherwise they will feed your income statement without moving your balance sheet, which is correct and looks like nothing happened.

You do not have to get it right first time. Settings → Books open date changes it on its own, without re-running the setup (which would replace every opening balance you entered). Your opening balances move with the date, because they describe what you held on the day your books opened.

When you set an opening date:

  • statements ending before that date stop changing your balance sheet, because the opening balances already contain them. Re-counting an individual pre-open statement would count that money twice;
  • those statements still count in your income statement, cash flow and history. History does not disappear because your books opened later;
  • a statement that straddles the date is kept, and said so;
  • anything the cut-off drops is named, never silently omitted.

If you never set a date, nothing is excluded and the balance sheet behaves exactly as it always has. You can go back to that at any time — Remove the cut-off in Settings — though then a pre-open statement and the opening balance covering it can describe the same money twice.

The equity line is not an account. It is the accumulated net worth your opening balances came from, and it is what makes assets minus liabilities add up.


Currencies

Every figure is shown in the currency stored on its own row. Totals are grouped by currency and never summed across them — adding QAR to JOD produces a number that is not money.

The currency comes from the document, never from your phone number, your country or your brand. Where a statement never states one, it shows as unknown rather than being guessed.


Review

Review is where the app puts anything it will not decide for you:

  • an account type we inferred but you have not confirmed;
  • an account type we could not infer at all;
  • a transfer to your own accounts with no account named;
  • money out to a person with no decision yet — a gift, a loan, or a repayment;
  • a statement whose opening balance, transactions and closing balance do not add up;
  • a transaction we could not classify.

Nothing on this list is applied for you. The app proposes; you confirm.


What the app will never do

  • Invent a transaction, a contact or a number.
  • Convert between currencies unless you ask it to, and never silently.
  • Change how a past figure was calculated without telling you it changed.
  • Treat a guess as a fact.

Plans

30-day free trial — 10 messages a week + 2 statement uploads a month

Basic
7 JOD/month
25 messages / week
Up to 100 statements / month
Most popular
Popular
10 JOD/month
50 messages / week
Up to 100 statements / month
Premium
13 JOD/month
75 messages / week
Up to 100 statements / month

How payment is taken, and who receives it, are set out in the Terms & Conditions · Family plan: pay for one member fewer — a family of four pays for three

Ready to start?

Start on WhatsApp →