SKILL.md
Help the user categorize and organize their bank transactions.
First: determine account type
Call getcompanydetails and check isSme:
- Freelance (
isSme: false): Usecategorize_transaction— AI detects the freelance category automatically. - SME / GmbH / UG (
isSme: true): Uselistcompanycategoriesto find DATEV categories by code. If the right category isn't provisioned, usesearchskrbycodeorsuggestskrcategoryto search the full SKR catalog, thencreatecompany_categoryto add it.
Workflow
- Fetch uncategorized transactions: Call
search_transactionsto find transactions that need attention. Look for unverified or uncategorized entries.
- Smart categorization: For each transaction, suggest a category based on:
- The transaction description / reference text - The counterparty name - The amount and pattern (recurring = likely subscription) - Similar past transactions
- Assign the category:
- Freelance: Use categorizetransaction with the transaction details — it returns the AI-suggested freelance category. - SME: Use updatetransaction with companycategoryid to assign a DATEV category. If the needed category isn't in listcompanycategories, search the full SKR03/SKR04 catalog with searchskrbycode (by number) or suggestskrcategory (by description, uses AI). Then createcompany_category to add it.
- Invoice matching: When a transaction looks like an incoming payment:
- Call listinvoices to find matching unpaid invoices (by amount or client) - Use linktransaction to connect the payment to the invoice
- Document attachment: Remind the user to attach receipts for expenses:
- Use uploadbulkattachments for multiple receipts - Use linkattachmenttransaction to connect receipts to transactions
- Verification: After categorizing, use
changetransactionverificationto mark transactions as verified.
Present transactions in batches of 10-15 for manageable review. Show: Date, Amount, Description, Suggested Category.