Contacts
Contacts is Clatri's unified directory. One single entry per contact across the whole app: the same contact you assign as the responsible party for a task appears as a counterparty on an expense in Money without duplication.
This solves one of the most annoying problems of having several modules: having to maintain "your mom" in three different places and reconcile manually. In Clatri, Mom is a single entry and everything else references that same entry.
Contact types
Each contact has a type that defines what it is:
| Type | What it is |
|---|---|
| Person | A human being (family, friend, partner, acquaintance, professional). |
| Company | An organization: business, brand, institution, service provider. |
The role a contact plays (client, vendor, lender, borrower, friend, neighbor, etc.) is not part of the type — it's described in the free-text relation field ("sister", "neighbor", "my bank", "key client") and inferred from usage. For example, a company can be a vendor of a recurring payment and at the same time a lender on an account payable; a person can be your sister and at the same time a borrower of a loan. You don't have to classify them upfront.
Fields
Any contact can have:
- Name — required
- Emoji — quick visual icon in the list
- Photo — avatar uploaded to storage (encrypted at rest like the rest)
- Email, phone, address — contact info
- Notes — free text for whatever you need to remember
- Relation — free text describing the bond or role ("sister", "my bank", "coffee vendor")
- Favorite — flag to make it appear first on the dashboard
- Link to a Clatri user — if this contact also has a Clatri account and shares an entity with you
Sensitive fields (name, email, phone, address, notes) are encrypted at rest using the user-derived key — see Security and privacy.
Automatic integrations
The contact directory is referenced from almost every domain:
Money: transaction counterparties
Each expense and income can have a counterparty — the contact involved. "Loan to Camila", "Payment from Carlos for lunch", "Birthday dinner with Andrés". It's a single source of truth: the same contact directory feeds the counterparty picker in Money.
From the contact detail you automatically see:
- How many expenses are associated and their total
- How many incomes and their total
- Primary currency of their transactions
And from chat you can ask things like "how much did I spend on mom this month?" and the agent queries those grouped transactions.
Money: expense groups
Expense groups are used to group transactions by a common event or purpose — "Bills with Andrés", "Camila's wedding", "Trip to Cartagena with the family". Each group can be associated with one or more contacts from the directory.
Administration: task assignee
Each task in Spaces can have an assignee. It's a contact from your directory. The picker reads directly from the same directory, so the list is always synced.
Calendar: invitees (future)
Calendar events in a future iteration will allow inviting contacts. They'll link to the same directory.
Via chat
The agent can create, edit, list and delete contacts. Examples:
- "add my sister Ana as a contact"
- "create a contact for Carlos, type vendor, email carlos@example.com"
- "rename the Pedro contact to Pedro García"
- "who are my favorite contacts?"
- "delete the duplicate John contact"
How it looks on the dashboard
In the Administration tab the Contacts section first shows favorites with their avatars. Tap See all opens the full list; tap directly on a contact from the dashboard opens its detail / editor.
What's NOT here
- Deep financial analytics on a contact (how much you owe them, what they owe you, detailed payment history, charts) → lives in Money. The Administration agent automatically redirects you when you ask about that.