2.3 KiB
2.3 KiB
User Guide
This guide is intended for club managers who use the FUJ Management system for day-to-day operations.
🛠 Operational Workflow
To keep the club finances up-to-date, follow these steps periodically (e.g., once a week):
- Sync Bank Transactions:
Run the sync script to pull the latest payments from Fio.
make sync - Infer Payments:
Let the system automatically tag who paid for what.
make infer - Manual Review (Google Sheets):
Open the Google Spreadsheet. Check rows with the
[?]prefix in thePersoncolumn—these require human confirmation.- If correct: Remove the
[?]prefix. - If incorrect: Manually fix the
PersonandPurpose. - If a payment covers a special case: Use the exceptions sheet to override expected fees.
- If correct: Remove the
- Check Reconciliation Dashboard:
Start the web app to see the final balance report.
Navigate to
make webhttp://localhost:5001/reconcile.
📊 Understanding the Dashboard
Reconciliation Page
- Green (OK): Member has paid exactly what was expected (or more).
- Orange (Partial): Some payment was received, but there's still a debt.
- Red (UNPAID): No payment recorded for this month.
- Blue (SURPLUS): Payment received for a month where no fee was expected.
Handling Debts
If a member is in debt, you can click on the unpaid/partial cell to get a QR Platba link. You can send this link or screenshot to the member to facilitate quick payment.
❓ FAQ & Troubleshooting
Why is a payment "Unmatched"?
A payment stays unmatched if neither the sender name nor the message contains recognizable member names or nicknames.
- Fix: Manually enter the member's name in the
Personcolumn in the Google Sheet.
How do I handle a "Family Discount" or "Prepaid Year"?
Use the exceptions sheet in the Google Spreadsheet.
- Add the member's name (exactly as it appears in attendance).
- Enter the month (e.g.,
2026-03). - Enter the new
Amount(use0for prepaid). - Add a
Notefor clarity.
The web app is slow to load.
The app fetches data from Google Sheets API on every request. This ensures real-time data but can take a few seconds. The "Performance Breakdown" footer shows exactly where the time was spent.