firefly-iiiManage personal finances via Firefly III API. Use when user asks about budgets, transactions, accounts, categories, piggy banks, subscriptions, recurring transactions, or financial reports. Supports creating, listing, updating transactions; managing accounts and balances; setting budgets; tracking savings goals.
Install via ClawdBot CLI:
clawdbot install pushp1997/firefly-iiiFirefly III is a self-hosted personal finance manager. This skill provides API access for managing finances.
Required environment:
FIREFLY_URL: Base URL (e.g., https://budget.example.com)FIREFLY_TOKEN: Personal Access Token (stored at ~/.firefly_token)Get token: Profile → OAuth → Personal Access Tokens → Create new token
TOKEN=$(cat ~/.firefly_token)
BASE="$FIREFLY_URL/api/v1"
curl -s "$BASE/endpoint" \
-H "Authorization: Bearer $TOKEN" \
-H "Accept: application/json" \
-H "Content-Type: application/json"
# List accounts
curl "$BASE/accounts?type=asset" # asset|expense|revenue|liability
# Create account
curl -X POST "$BASE/accounts" -d '{
"name": "Bank Account",
"type": "asset",
"account_role": "defaultAsset",
"currency_code": "EUR"
}'
Account types: asset, expense, revenue, liability
Asset roles: defaultAsset, savingAsset, sharedAsset, ccAsset
# List transactions
curl "$BASE/transactions?type=withdrawal&start=2026-01-01&end=2026-01-31"
# Create withdrawal (expense)
curl -X POST "$BASE/transactions" -d '{
"transactions": [{
"type": "withdrawal",
"date": "2026-01-15",
"amount": "50.00",
"description": "Groceries",
"source_name": "Bank Account",
"destination_name": "Supermarket",
"category_name": "Groceries"
}]
}'
# Create deposit (income)
curl -X POST "$BASE/transactions" -d '{
"transactions": [{
"type": "deposit",
"date": "2026-01-01",
"amount": "3000.00",
"description": "Salary",
"source_name": "Employer",
"destination_name": "Bank Account",
"category_name": "Salary"
}]
}'
# Create transfer
curl -X POST "$BASE/transactions" -d '{
"transactions": [{
"type": "transfer",
"date": "2026-01-05",
"amount": "500.00",
"description": "Savings",
"source_name": "Bank Account",
"destination_name": "Savings Account"
}]
}'
Transaction types: withdrawal, deposit, transfer
# List categories
curl "$BASE/categories"
# Create category
curl -X POST "$BASE/categories" -d '{"name": "Groceries"}'
# List budgets
curl "$BASE/budgets"
# Create budget
curl -X POST "$BASE/budgets" -d '{"name": "Food", "active": true}'
# Set budget limit for period
curl -X POST "$BASE/budgets/{id}/limits" -d '{
"start": "2026-01-01",
"end": "2026-01-31",
"amount": "500.00"
}'
# List piggy banks
curl "$BASE/piggy-banks"
# Create piggy bank
curl -X POST "$BASE/piggy-banks" -d '{
"name": "Vacation Fund",
"target_amount": "2000.00",
"accounts": [{"account_id": "1"}],
"start_date": "2026-01-01",
"target_date": "2026-12-31",
"transaction_currency_code": "EUR"
}'
# Add money to piggy bank
curl -X POST "$BASE/piggy-banks/{id}/events" -d '{"amount": "100.00"}'
# List subscriptions
curl "$BASE/subscriptions"
# Create subscription
curl -X POST "$BASE/subscriptions" -d '{
"name": "Netflix",
"amount_min": "12.99",
"amount_max": "12.99",
"date": "2026-01-15",
"repeat_freq": "monthly",
"currency_code": "EUR"
}'
Repeat frequencies: weekly, monthly, quarterly, half-year, yearly
# List recurring transactions
curl "$BASE/recurrences"
# Create recurring transaction
curl -X POST "$BASE/recurrences" -d '{
"type": "withdrawal",
"title": "Rent",
"first_date": "2026-01-01",
"repeat_until": "2026-12-31",
"repetitions": [{
"type": "monthly",
"moment": "1"
}],
"transactions": [{
"amount": "1000.00",
"description": "Monthly rent",
"source_id": "1",
"destination_name": "Landlord",
"category_name": "Rent"
}]
}'
# List rules
curl "$BASE/rules"
# Create rule
curl -X POST "$BASE/rules" -d '{
"title": "Categorize groceries",
"trigger": "store-journal",
"active": true,
"strict": false,
"triggers": [
{"type": "description_contains", "value": "ALDI"}
],
"actions": [
{"type": "set_category", "value": "Groceries"}
]
}'
Trigger types: description_contains, description_starts, description_ends, amount_less, amount_more, source_account_is, etc.
Action types: set_category, set_budget, add_tag, set_description, etc.
# List tags
curl "$BASE/tags"
# Create tag
curl -X POST "$BASE/tags" -d '{"tag": "vacation"}'
# Account balance over time
curl "$BASE/accounts/{id}/transactions?start=2026-01-01&end=2026-01-31"
# Get current balances
curl "$BASE/accounts" | jq '.data[] | {name: .attributes.name, balance: .attributes.current_balance}'
curl "$BASE/categories" | jq '.data[] | {name: .attributes.name, spent: .attributes.spent}'
curl "$BASE/budgets" | jq '.data[] | {name: .attributes.name, spent: .attributes.spent}'
curl "$BASE/search/transactions?query=groceries&limit=25"
422 Unprocessable Entity: Check required fields in error response401 Unauthorized: Token expired or invalid404 Not Found: Resource doesn't existsource_name/destination_name to auto-create expense/revenue accountsGenerated Mar 1, 2026
Individuals track monthly expenses, set budgets for categories like groceries and entertainment, and monitor spending against limits. They create transactions for purchases, categorize them, and use reports to analyze trends and adjust habits.
Freelancers or small business owners manage income and expenses by creating accounts for revenue and liability, categorizing transactions for tax purposes, and setting budgets for operational costs. They use recurring transactions for subscriptions and generate financial summaries.
Users set up piggy banks for goals like vacations or emergency funds, link them to asset accounts, and add money periodically. They track progress toward target amounts and dates, integrating with regular transactions to automate savings.
Advanced users create rules to auto-categorize transactions based on descriptions or amounts, reducing manual entry. They manage subscriptions and recurring bills, ensuring timely payments and consistent financial oversight.
Offer personalized budgeting advice and financial planning services via this skill, helping clients set up and monitor budgets, track savings goals, and analyze spending patterns. Revenue comes from monthly or annual subscription fees for coaching and tool access.
Provide integration and customization services for small to medium enterprises to connect Firefly III with their existing systems, automating expense tracking and financial reporting. Revenue is generated through one-time setup fees and ongoing support contracts.
Develop a user-friendly app that leverages this skill for core features like transaction management and budgeting, offering basic services for free. Revenue is earned from premium tiers with advanced features like rule automation and detailed reports.
💬 Integration Tip
Ensure FIREFLY_URL and FIREFLY_TOKEN are securely configured; use source_name and destination_name for automatic account creation to simplify transaction setup.
Query Copilot Money personal finance data (accounts, transactions, net worth, holdings, asset allocation) and refresh bank connections. Use when the user asks about finances, account balances, recent transactions, net worth, investment allocation, or wants to sync/refresh bank data.
Stripe API integration with managed OAuth. Manage customers, subscriptions, invoices, products, prices, and payments. Use this skill when users want to process payments, manage billing, or handle subscriptions with Stripe. For other third party apps, use the api-gateway skill (https://clawhub.ai/byungkyu/api-gateway). Requires network access and valid Maton API key.
QuickBooks API integration with managed OAuth. Manage customers, invoices, payments, bills, and run financial reports. Use this skill when users want to interact with QuickBooks accounting data. For other third party apps, use the api-gateway skill (https://clawhub.ai/byungkyu/api-gateway).
Advanced financial calculator with future value tables, present value, discount calculations, markup pricing, and compound interest. Use when calculating investment growth, pricing strategies, loan values, discounts, or comparing financial scenarios across different rates and time periods. Includes both CLI and interactive web UI.
Track expenses via natural language, get spending summaries, set budgets
Query and manage personal finances via the official Actual Budget Node.js API. Use for budget queries, transaction imports/exports, account management, categorization, rules, schedules, and bank sync with self-hosted Actual Budget instances.