How the account is chosen
Every automatic capture faces the same question: which of your accounts did this money come out of? A bank message says "purchase of $25,000", not "from your Nequi savings account".
This page documents the exact order the app follows, because knowing it is what lets you fix routing in one step instead of guessing.
The order
- Last four digits. If the text contains masked card digits,
*1234,ending in 1234, and you mapped those digits to an account, that wins. - Your keyword rules. Free text you wrote, mapped to an account.
nequito your Nequi account. - The issuer read from the message. The wallet or card the money came from, as named in the text itself.
- The sending bank, for SMS only, matched against the sender of the message and never against its body.
- The default account for that source.
- Nothing matched, so the transaction lands in Principal.
Why the default account is last
A default means "when you do not know, put it here". It does not mean "put it here even when you do know".
When the default sat above the deductions, someone with Bancolombia as their default watched every Nequi movement land in Bancolombia, currency conversion included when the two accounts held different currencies. Your own rules win over everything, because you wrote them about a specific card or a specific word, and a default is a catch-all.
Writing a rule
Rules are written on the setup screen of your capture source, and both kinds go in the same field. What you type decides which kind it is:
- Exactly four digits becomes a card rule.
- Anything else becomes a keyword rule.
Rules for keywords match whole words, case and accent insensitive: nu will not match inside numero. If several rules match, the longest one wins, so nequi ahorro beats the general nequi. Two rules of the same length pointing at different accounts are ambiguous, and ambiguity always resolves to Principal rather than to a guess.
Minimum two characters, because a one letter rule would hijack everything.
Where each source gets its clues
| Source | Digits | Keywords | Issuer in text | Bank sender | Default account |
|---|---|---|---|---|---|
| Bank SMS | Yes | Yes | Yes | Yes | Yes |
| Google Pay | Yes | Yes | Yes | No | Yes |
| Apple Pay | Rarely | Yes, the usual one | Yes | No | Yes |
| No | No | Yes | No | Yes | |
| Voice, photo, chat | No | No | Yes | No | No, by design |
Voice, photos and chat have no default account on purpose. They are things you said or shot yourself, and sending them all to one account by default would quietly misfile them.
For WhatsApp there is a better route: Accounts in WhatsApp, where the assistant knows the names of the accounts you chose to share.
Two rules we do not relax
The bank sender is matched against the sender, never against the body. Message bodies contain merchant names, and Bancolombia: purchase at TIENDA POPULAR would match an account at Banco Popular and file the purchase there.
One match, or nothing. If two of your accounts match equally, the answer is Principal. Choosing between them would be a coin flip, and the account decides the currency of the transaction: a wrong match does not just misfile the purchase, it converts the amount and silently unbalances an account. A transaction sitting in Principal is visible and you move it in two taps. One sitting in the wrong account is not.
Your rules never leave your phone
The digit maps and the keyword rules are stored only on the device. They are not uploaded, they are not in your cloud backup, and they are lost if you uninstall the app. That is the trade for never having your card digits on a server.
Checking where something landed
Every capture confirmation ends with the account: $25.000 COP · 🍔 Food · 🏦 Nequi. When it says Principal, that is the app telling you it could not decide. Do not ignore it: that is exactly the moment to add a rule, while you still remember which card you used.