SOLO CLI
Overview
Use solo-cli to access SOLO.ro accounting platform data via command-line interface or interactive TUI.
Installation
If the solo-cli command is not available, install via Homebrew:
brew install rursache/tap/solo-cli
Defaults and safety
- Config file location:
~/.config/solo-cli/config.json(created on first run) - Use
--configor-cto specify a custom config path - Credentials are stored locally; never passed as command arguments
- Session cookies are cached to
~/.config/solo-cli/cookies.jsonfor faster subsequent logins
Quick start
- Configure: Edit
~/.config/solo-cli/config.jsonwith username/password - Summary:
solo-cli summary - Summary for year:
solo-cli summary 2025 - Revenues:
solo-cli revenues - Expenses:
solo-cli expenses - Queue:
solo-cli queue - E-Factura:
solo-cli efactura - Company:
solo-cli company - Upload:
solo-cli upload file.pdf - Delete:
solo-cli queue delete <ID> - TUI:
solo-cli(no command) - Demo:
solo-cli demo
Configuration
Config file structure:
{
"username": "your_email@solo.ro",
"password": "your_password",
"company_id": "12345",
"page_size": 100,
"user_agent": "Mozilla/5.0 ..."
}
| Field | Required | Description |
|---|---|---|
| username | Yes | SOLO.ro login email |
| password | Yes | SOLO.ro password |
| company_id | No | Company ID for profile display (find in Network tab on /settings#!/company) |
| page_size | No | Number of items to fetch (default: 100) |
| user_agent | No | Custom HTTP user agent string |
Commands
summary [year]
Show account summary for a year.
solo-cli summary # Current year
solo-cli summary 2025 # Specific year
Output: Year, Revenues, Expenses, Taxes
revenues
List revenue invoices.
solo-cli revenues
solo-cli rev # Alias
Output: Invoice code, amount, currency, paid status, client name
expenses
List expenses.
solo-cli expenses
solo-cli exp # Alias
Output: Amount, currency, category, supplier name
queue
List pending documents in expense queue or delete them.
solo-cli queue # List queue
solo-cli q # Alias
solo-cli queue delete 123 # Delete item by ID
solo-cli q del 123 # Alias
Output: Document name, days pending, overdue status (ID included)
efactura
List e-Factura documents.
solo-cli efactura
solo-cli ei # Alias
Output: Serial code, amount, currency, date, party name
company
Show company profile.
solo-cli company
Output: Company name, CUI, registration number, address
upload
Upload an expense document (PDF or image).
solo-cli upload invoice.pdf
solo-cli up invoice.pdf # Alias
Output: Upload status and confirmation.
demo
Start TUI with mock data for screenshots or testing (no API calls).
solo-cli demo
tui
Start interactive TUI mode (default when no command given).
solo-cli tui
solo-cli # Same as above
Global options
| Option | Short | Description |
|---|---|---|
| --config | -c | Path to custom config file |
| --help | -h | Show help message |
| --version | -v | Show version |
Examples
# Basic usage
solo-cli summary
solo-cli revenues
# Custom config
solo-cli -c ~/work-config.json summary
# Pipe to grep
solo-cli expenses | grep -i "food"
# View specific year
solo-cli summary 2024
# Upload a document
solo-cli upload invoice.pdf
# Delete a queued item
solo-cli queue delete 123456
Authentication flow
- On startup, loads cookies from
~/.config/solo-cli/cookies.json - Validates cookies with a test API call
- If valid, uses cached session
- If invalid/missing, logs in with credentials from config
- Saves new cookies for next session
Troubleshooting
- "credentials missing": Edit config.json with your SOLO.ro username/password
- "authentication failed": Check credentials are correct
- "invalid JSON in config": Fix syntax errors in config.json
- Company info not showing: Add company_id to config (optional field)