Prerequisites
- A modern web browser (Chrome, Firefox, Safari, or Edge)
- An Excel or CSV file from your bank (optional, but recommended)
- A secure password or OAuth account (Google/GitHub)
Home Account uses end-to-end encryption, which means your password is the key to your financial data. Choose a strong password and set up recovery mechanisms immediately.
Get Started
Create your account
Navigate to the Home Account registration page and create your account. You have two options:Option 1: Email and Password
Option 2: OAuth (Google or GitHub)Click “Continue with Google” or “Continue with GitHub”. After OAuth authentication, you’ll be redirected to set up a PIN for encryption.
cURL
Response
Response
Set up encryption (first login)
On your first login, your browser will derive encryption keys from your password:If you used OAuth: You’ll be prompted to create a 6-8 digit PIN. This PIN replaces your password for encryption purposes. Learn more in the OAuth + PIN guide.
This process happens automatically in your browser. The server never sees your decrypted keys.
Set up recovery phrase (critical!)
Immediately after login, you’ll be redirected to set up a BIP39 recovery phrase:
- Click “Set up recovery” in the dashboard warning banner
- Write down the 24-word recovery phrase on paper
- Store it securely (safe deposit box, password manager, etc.)
- Confirm the phrase by entering specific words
Create your first financial account
Home Account separates “user accounts” (your login) from “financial accounts” (your bank accounts, wallets, etc.). Create your first financial account:Accounts are created with default categories automatically:
- Click “Create Account” in the sidebar
- Enter a name (e.g., “Personal Checking”, “Household Budget”)
- Click “Create”
You can create up to 3 financial accounts. Each account has its own encryption key and can be shared with family members via invitations.
- ALIMENTACION (Food)
- TRANSPORTE (Transport)
- RESTAURANTES (Dining)
- SALUD (Health)
- HOGAR (Home)
- OCIO (Leisure)
- VEHICULO (Vehicle)
- ROPA (Clothing)
- INGRESOS (Income)
- TRANSFERENCIAS (Transfers)
- OTROS (Other)
Import transactions from Excel (recommended)
The fastest way to get started is to import transactions from your bank:
See the Excel Import guide for more details.
- Export transactions from your bank as Excel or CSV
- Click “Import” in the sidebar
- Upload your file
- Preview the transactions and AI-suggested categories
- Review and edit category mappings
- Click “Confirm” to import
- Generic Excel (.xlsx, .xls)
- CSV with headers (date, description, amount)
- Specialized formats: “Control de Gastos”, “Movimientos CC”, “Revolut”
What happens during import?
What happens during import?
- File parsing: The backend extracts transactions using the
xlsxlibrary - AI categorization: Descriptions are sent to the AI service (free after first parse)
- Client-side encryption: Your browser encrypts descriptions and amounts
- Optimistic UI: Transactions appear instantly with a loading indicator
- Server sync: Backend validates and stores encrypted data
- Final update: UI updates with server-confirmed data
Or add transactions manually
If you don’t have an Excel file, you can add transactions manually:
- Click “Add Transaction” in the sidebar
- Fill in the form:
- Date: Transaction date
- Description: What was purchased
- Amount: Positive for income, negative for expenses
- Category: Select from dropdown
- Subcategory (optional): More specific categorization
- Click “Save”
Set up budgets (optional)
Track spending limits per category:
- Navigate to “Budgets” in the sidebar
- Click “Create Budget”
- Select a category
- Enter the budget amount (in cents)
- Choose the period (weekly, monthly, yearly)
- Set an alert threshold (default: 80%)
- Click “Save”
- Green: Under budget
- Amber: At or above alert threshold (e.g., 80%)
- Red: Over budget
Budget spending is calculated client-side from decrypted transactions. The server only stores budget limits, not actual spending.
Explore investment features (optional)
Home Account includes an AI-powered investment module:
- Navigate to “Investments” in the sidebar
- Complete the 7-step risk profile questionnaire:
- Age and income
- Job stability
- Emergency fund status
- Investment time horizon
- Risk reaction scenarios
- Investment experience
- View personalized recommendations based on your profile
- Chat with the AI investment assistant for questions
- View real-time market data (BTC, ETH, EUR/USD, S&P 500, MSCI)
Understand the unlock flow
After your first session, if you refresh the page or return later, you’ll need to “unlock” your data:For password users:
- You’re redirected to
/unlock - Enter your password
- Browser derives User Key from password
- Account Keys are decrypted
- Dashboard loads with decrypted data
- You’re already authenticated (cookies persist)
- You’re redirected to
/unlock - Enter your PIN
- Browser derives User Key from PIN
- Account Keys are decrypted
- Dashboard loads with decrypted data
Your session (JWT cookies) persists, but encryption keys are cleared on page refresh for security. The unlock flow re-derives your keys without re-authenticating.
Next Steps
Excel Import
Learn advanced import features like AI categorization and bulk uploads
Security
Understand the envelope encryption model and security guarantees
Account Sharing
Invite family members to share accounts securely
API Reference
Explore the full REST API for building integrations
Troubleshooting
I forgot my password and didn't set up recovery
I forgot my password and didn't set up recovery
Unfortunately, without a recovery phrase, your data is permanently lost. The end-to-end encryption model means the server cannot decrypt your data without your password.Prevention: Always set up your recovery phrase immediately after registration.
Import fails with 'Invalid file format'
Import fails with 'Invalid file format'
The file parser supports Excel (.xlsx, .xls) and CSV formats. Ensure your file has these columns:
- Date (YYYY-MM-DD or DD/MM/YYYY)
- Description or Concept
- Amount (decimal with . or , separator)
Transactions show as encrypted in the API response
Transactions show as encrypted in the API response
This is expected! Transactions are stored encrypted. Your browser automatically decrypts them using your Account Key when displaying them. If you’re using the API directly, you’ll need to implement the decryption logic yourself.
'CSRF token mismatch' error
'CSRF token mismatch' error
CSRF tokens are tied to your session. If you see this error:
- Log out and log back in
- Clear your browser cookies
- Try the operation again
Need Help?
- Installation: See the Self-Hosting Guide
- Security: Read the Encryption Documentation
- Features: Explore the Core Features
- API: Check the API Reference
