TELEGRAM_BOT_TOKEN=your_telegram_bot_token_here ACTUAL_SERVER_URL=https://your-actual-server.example.com ACTUAL_PASSWORD=your_actual_password ACTUAL_SYNC_ID=your_actual_sync_id # Option A: multiple accounts (format: name:uuid,name:uuid) #ACTUAL_ACCOUNTS=Personal:uuid1,Business:uuid2 # Optional: Enable the OCR rules system (default: false, rules disabled) # When set to true, allows creating and matching rules to auto-categorize receipts by merchant name # OCR_RULES_ENABLED=false # Option B: single account (used when ACTUAL_ACCOUNTS is not set) ACTUAL_DEFAULT_ACCOUNT_ID=your_account_id ACTUAL_DATA_DIR=/app/data #uncomment if your budget is encrypted #ACTUAL_FILE_PASSWORD=your_budget_encryption_password ACTUAL_PAYEE_NAME=Telegram Bot # Security: Highly recommended to set this to your Telegram user ID(s) # If left empty, the bot will block all interactions. ALLOWED_TELEGRAM_USER_IDS= # Optional: Send welcome message to all authorized users on bot startup (default: false) # When enabled, the bot sends the full welcome message to all users on start/restart. # The /start command always works regardless of this setting. # WELCOME_MESSAGE_ENABLED=false # --- OCR + AI Screenshot Processing (optional) --- # Set AI_PROVIDER to enable screenshot-to-transaction flow. # Leave unset to disable (existing text-only flow unchanged). #AI_PROVIDER=ollama # --- Ollama settings (when AI_PROVIDER=ollama) --- #OLLAMA_URL=http://host.docker.internal:11434/api/generate #OLLAMA_MODEL=qwen3:8b # --- OpenAI settings (when AI_PROVIDER=openai) --- #OPENAI_API_KEY=your_openai_api_key #OPENAI_MODEL=gpt-4o # --- OCR settings --- #OCR_LANGUAGE=eng #OCR_CACHE_DIR=/app/data/ocr-cache