diff --git a/README.md b/README.md index f67e15c..4f03cd3 100644 --- a/README.md +++ b/README.md @@ -30,7 +30,7 @@ Enable the extension through the LNbits admin interface or by adding it to your - Choose "Liability" if you want reimbursement - Choose "Equity" if it's a contribution -2. **View Your Balance**: See if the Libra owes you money or vice versa +2. **View Your Balance**: See if the collective owes you money or vice versa 3. **Pay Outstanding Balance**: Generate a Lightning invoice to settle what you owe @@ -54,8 +54,8 @@ Enable the extension through the LNbits admin interface or by adding it to your ### Account Types -- **Assets**: Things the Libra owns (Cash, Bank, Accounts Receivable) -- **Liabilities**: What the Libra owes (Accounts Payable to members) +- **Assets**: Things the organization owns (Cash, Bank, Accounts Receivable) +- **Liabilities**: What the organization owes (Accounts Payable to members) - **Equity**: Member contributions and retained earnings - **Revenue**: Income streams - **Expenses**: Operating costs diff --git a/account_utils.py b/account_utils.py index 7e71630..8520d59 100644 --- a/account_utils.py +++ b/account_utils.py @@ -200,11 +200,11 @@ DEFAULT_HIERARCHICAL_ACCOUNTS = [ ("Assets:FixedAssets:ProductionFacility", AccountType.ASSET, "Production facilities"), ("Assets:Inventory", AccountType.ASSET, "Inventory and stock"), ("Assets:Livestock", AccountType.ASSET, "Livestock and animals"), - ("Assets:Receivable", AccountType.ASSET, "Money owed to the Libra"), + ("Assets:Receivable", AccountType.ASSET, "Money owed to the organization"), ("Assets:Tools", AccountType.ASSET, "Tools and hand equipment"), # Liabilities - ("Liabilities:Payable", AccountType.LIABILITY, "Money owed by the Libra"), + ("Liabilities:Payable", AccountType.LIABILITY, "Money owed by the organization"), # Equity - User equity accounts created dynamically as Equity:User-{user_id} # No parent "Equity" account needed - hierarchy is implicit in the name diff --git a/description.md b/description.md index 294a3b3..d609551 100644 --- a/description.md +++ b/description.md @@ -9,27 +9,27 @@ A comprehensive double-entry accounting system for collective projects, designed - **User Expense Tracking**: Members can record out-of-pocket expenses as either: - **Liabilities**: Libra owes them money (reimbursable) - **Equity**: Their contribution to the collective -- **Accounts Receivable**: Track what users owe the Libra (e.g., accommodation fees) +- **Accounts Receivable**: Track what users owe the organization (e.g., accommodation fees) - **Revenue Tracking**: Record revenue received by the collective -- **User Balance Dashboard**: Each user sees their balance with the Libra +- **User Balance Dashboard**: Each user sees their balance with the organization - **Lightning Integration**: Generate invoices for outstanding balances - **Transaction History**: View all accounting entries and transactions ## Use Cases ### 1. User Pays Expense Out of Pocket -When a member buys supplies for the Libra: +When a member buys supplies for the collective: - They can choose to be reimbursed (Liability) - Or contribute it as equity (Equity) ### 2. Accounts Receivable -When someone stays at the Libra and owes money: +When someone stays with the collective and owes money: - Admin creates an AR entry (e.g., "5 nights @ 10€/night = 50€") - User sees they owe 50€ in their dashboard - They can generate an invoice to pay it off ### 3. Revenue Recording -When the Libra receives revenue: +When the organization receives revenue: - Record revenue with the payment method (Cash, Lightning, Bank) - Properly categorized in the accounting system diff --git a/docs/DOCUMENTATION.md b/docs/DOCUMENTATION.md index 12b239b..58c9e14 100644 --- a/docs/DOCUMENTATION.md +++ b/docs/DOCUMENTATION.md @@ -2,7 +2,7 @@ ## Overview -The Libra extension for LNbits implements a double-entry bookkeeping system designed for cooperative/communal living spaces (like cooperatives). It tracks financial relationships between a central entity (the Libra) and multiple users, handling both Lightning Network payments and manual/cash transactions. +The Libra extension for LNbits implements a double-entry bookkeeping system designed for collectives like co-living spaces, makerspaces, and community projects. It tracks financial relationships between a central organization and its members, handling both Lightning Network payments and manual/cash transactions. ## Architecture @@ -411,10 +411,10 @@ Created by `m001_initial` migration: - `cash` - Cash on hand - `bank` - Bank Account - `lightning` - Lightning Balance -- `accounts_receivable` - Money owed to the Libra +- `accounts_receivable` - Money owed to the organization ### Liabilities -- `accounts_payable` - Money owed by the Libra +- `accounts_payable` - Money owed by the organization ### Equity - `member_equity` - Member contributions @@ -1210,4 +1210,4 @@ The Libra extension provides a solid foundation for double-entry bookkeeping in 5. Equity management features 6. External system integrations (accounting software, tax tools) -The refactoring path is clear: prioritize data integrity, then add reporting/export, then enhance with advanced features. The system is production-ready for basic use cases but needs the recommended enhancements for a full-featured cooperative accounting solution. +The refactoring path is clear: prioritize data integrity, then add reporting/export, then enhance with advanced features. The system is production-ready for basic use cases but needs the recommended enhancements for a full-featured collective accounting solution. diff --git a/docs/EXPENSE_APPROVAL.md b/docs/EXPENSE_APPROVAL.md index 78dfbe5..81305c1 100644 --- a/docs/EXPENSE_APPROVAL.md +++ b/docs/EXPENSE_APPROVAL.md @@ -2,7 +2,7 @@ ## Overview -The Libra extension now requires admin approval for all user-submitted expenses. This prevents invalid or incorrect expenses from affecting balances until they are verified by the Libra admin. +The Libra extension now requires admin approval for all user-submitted expenses. This prevents invalid or incorrect expenses from affecting balances until they are verified by an admin. ## How It Works diff --git a/helper/README.md b/helper/README.md index c9dabaa..6c5c0e2 100644 --- a/helper/README.md +++ b/helper/README.md @@ -89,7 +89,7 @@ Your Beancount transactions must have an `Equity:` account: ```bash $ python import_beancount.py ledger.beancount ====================================================================== -🏰 Beancount to Libra Import Script +⚖️ Beancount to Libra Import Script ====================================================================== 📊 Loaded 15 daily rates from btc_eur_rates.csv diff --git a/helper/import_beancount.py b/helper/import_beancount.py index 0632364..ff874c6 100755 --- a/helper/import_beancount.py +++ b/helper/import_beancount.py @@ -653,7 +653,7 @@ if __name__ == "__main__": import sys print("=" * 70) - print("🏰 Beancount to Libra Import Script") + print("⚖️ Beancount to Libra Import Script") print("=" * 70) if len(sys.argv) < 2: diff --git a/templates/libra/index.html b/templates/libra/index.html index 0286927..17eed2b 100644 --- a/templates/libra/index.html +++ b/templates/libra/index.html @@ -152,7 +152,7 @@ Libra wallet must be configured first - Record when a user owes the Libra + Record when a user owes the organization @@ -1056,7 +1056,7 @@
Request Manual Payment
- Request the Libra to pay you manually (cash, bank transfer, etc.) to settle your balance. + Request a manual payment (cash, bank transfer, etc.) from an admin to settle your balance.
diff --git a/views_api.py b/views_api.py index 0035ba2..b1aeed4 100644 --- a/views_api.py +++ b/views_api.py @@ -1420,7 +1420,7 @@ async def api_create_revenue_entry( async def api_get_my_balance( wallet: WalletTypeInfo = Depends(require_invoice_key), ) -> UserBalance: - """Get current user's balance with the Libra (from Fava/Beancount)""" + """Get current user's balance with the organization (from Fava/Beancount)""" from lnbits.settings import settings as lnbits_settings from .fava_client import get_fava_client @@ -1473,7 +1473,7 @@ async def api_get_user_balance( auth: AuthContext = Depends(require_authenticated), ) -> UserBalance: """ - Get a specific user's balance with the Libra (from Fava/Beancount). + Get a specific user's balance with the organization (from Fava/Beancount). Users can only access their own balance. Super users can access any user's balance. """ @@ -2521,7 +2521,7 @@ async def api_create_manual_payment_request( data: CreateManualPaymentRequest, wallet: WalletTypeInfo = Depends(require_invoice_key), ) -> ManualPaymentRequest: - """Create a manual payment request for the Libra to review""" + """Create a manual payment request for an admin to review""" return await create_manual_payment_request( wallet.wallet.user, data.amount, data.description )