Track expenses, receivables, and balances for the collective
Configure Your WalletManage Permissions (Admin)Sync Accounts from BeancountLibra Settings (Super User Only)
Setup Required: Libra Wallet ID must be configured before the extension can function.
Setup Required: This extension requires configuration by the super user before it can be used.
Wallet Setup Required: You must configure your wallet before using this extension.
Pending Approvals
{% raw %}{{ entry.description }}{% endraw %}
{% raw %}{{ formatDate(entry.entry_date) }}{% endraw %}
User: {% raw %}{{ entry.username }}{% endraw %}
Ref: {% raw %}{{ entry.reference }}{% endraw %}
{% raw %}{{ formatSats(getTotalAmount(entry)) }} sats{% endraw %}
{% raw %}{{ getEntryFiatAmount(entry) }}{% endraw %}
Approve
Reject
Quick Actions
Add Expense
Libra wallet must be configured first
You must configure your wallet first
Add Receivable
Libra wallet must be configured first
Record when a user owes the organization
View Transactions
Outstanding Balances by User
{% raw %}{{ props.row.username }}{% endraw %}
{% raw %}{{ props.row.user_id.substring(0, 16) }}...{% endraw %}
{% raw %}{{ formatSats(Math.abs(props.row.balance)) }} sats{% endraw %}
{% raw %}{{ formatFiat(Math.abs(amount), currency) }}{% endraw %}
Scan the QR code or copy the invoice to pay with your Lightning wallet.
Your balance will update automatically after payment.
Close
Request Manual Payment
Request a manual payment (cash, bank transfer, etc.) from an admin to settle your balance.
Current balance: {% raw %}{{ formatSats(Math.abs(balance.balance)) }}{% endraw %} sats
{% raw %}{{ formatFiat(Math.abs(amount), currency) }}{% endraw %}
Submit Request
Cancel
Libra Settings
Super User Only: Only the super user can modify these settings.
Select the wallet that will be used for Libra operations and transactions.
Fava/Beancount Integration
Save Settings
{% raw %}{{ isSuperUser ? 'Cancel' : 'Close' }}{% endraw %}
Configure Your Wallet
Select the wallet you'll use for Libra transactions.
Save Wallet
Cancel
Add Receivable
Submit Receivable
Cancel
Create Balance Assertion
Balance assertions are written to your Beancount ledger and validated automatically by Beancount.
This verifies that an account's actual balance matches your expected balance at a specific date.
If the assertion fails, Beancount will alert you to investigate the discrepancy. Libra stores
metadata (tolerance, notes) for your convenience.
{% raw %}{{ scope.opt.name }}{% endraw %}{% raw %}{{ scope.opt.account_type }}{% endraw %}
Optional: Fiat Balance Check
Create & Check
Cancel
Settle Receivable
User
{% raw %}{{ settleReceivableDialog.username }}{% endraw %}
{% raw %}{{ settleReceivableDialog.user_id }}{% endraw %}
Amount Owed
{% raw %}{{ formatSats(settleReceivableDialog.maxAmount) }}{% endraw %} sats
{% raw %}{{ formatFiat(settleReceivableDialog.maxAmountFiat, settleReceivableDialog.fiatCurrency) }}{% endraw %}
Lightning Invoice Generated
Waiting for payment...
Generate Invoice
Settle Receivable
Cancel
Pay User
User
{% raw %}{{ payUserDialog.username }}{% endraw %}
{% raw %}{{ payUserDialog.user_id }}{% endraw %}
Amount Libra Owes
{% raw %}{{ formatSats(payUserDialog.maxAmount) }}{% endraw %} sats
{% raw %}{{ formatFiat(payUserDialog.maxAmountFiat, payUserDialog.fiatCurrency) }}{% endraw %}
Payment sent successfully!
Send Lightning Payment
Record Payment
{% raw %}{{ payUserDialog.paymentSuccess ? 'Close' : 'Cancel' }}{% endraw %}