Dues & Financials
How the ledger works
Every charge, payment, credit, and refund in HomeHerald is a financial record. Here's how the ledger is structured, how balances are computed, and how to fix mistakes the right way.
Last updated April 29, 2026
The ledger is HomeHerald’s accounting backbone. Every dollar that’s ever owed, paid, credited, or refunded against any property in your community is a row in the ledger. Understanding how it’s structured will save you from a lot of “why is this balance wrong” moments.
The model
The ledger is a list of financial records. Each record is one of these types:
| Type | Direction | Typical use |
|---|---|---|
| DUES | Charge (positive) | Recurring monthly or annual dues |
| FINE | Charge (positive) | Violation fines |
| ASSESSMENT | Charge (positive) | Special / one-time assessments |
| BOOKING FEE | Charge (positive) | Amenity rental fees |
| PAYMENT | Payment (negative effect on balance) | A resident pays |
| CREDIT | Reduces balance | Manual credit / write-off / promo |
| REFUND | Reverses a payment | Money goes back to the resident |
Charges grow the balance. Payments shrink it. Credits also shrink it. Refunds undo a payment, so they grow the balance again.
How balance is computed
The balance shown on a property is always computed from the ledger:
Balance = Σ(charges) − Σ(payments + credits) + Σ(refunds)
+ initial balance (if any)
You can’t directly edit a balance. You add or void records, and the balance recomputes.
This is on purpose. It means there’s never a “the balance says X but the records say Y” disconnect. The records are the balance.
Where to find the ledger
Transactions (in the admin sidebar under Manage)
From here you can:
- See every transaction in the community, sortable by date / property / type / amount
- Filter to a specific property or resident
- Export to CSV (for your accountant)
- Click any row to see details and history
Each property also has its own ledger view — open the property and click Transactions.
Anatomy of a record
Every ledger entry has:
- Date — when the transaction happened (not necessarily when it was entered)
- Property — what property it attaches to (for dues, fines, assessments)
- User — who triggered it, if applicable (for fines, booking fees)
- Type — DUES / FINE / PAYMENT / etc.
- Amount — the dollar value
- Description / memo — free text. Use it. Future-you will thank you.
- Related ticket — if this is a fine, links to the violation it came from
- Stripe payment intent — if processed online, links to Stripe
There’s also an internal changelog — every time a record is edited or voided, it’s logged with who and when. This is your audit trail.
Adding a manual transaction
You don’t usually need to — dues auto-generate, fines auto-generate from violations, payments auto-record from Stripe. But for the cases when you do:
- Go to Transactions in the admin sidebar
- Click New Transaction (or Add manual entry)
- Pick the property (and resident if applicable)
- Pick the type
- Enter the amount and a clear memo
- Save
Common cases for manual entries:
- Recording a check — resident sent a paper check; record it as a PAYMENT against their property
- Carryover credit — a property had a credit from a previous system that didn’t import
- Fee reversal — board agreed to waive a late fee that already posted; add a CREDIT for the fee amount
Fixing mistakes
A few rules:
Don’t delete records
Voiding > deleting. Every record has a void option that preserves the history but zeroes out its effect on the balance. The audit trail keeps the original entry visible with a “voided” marker.
To void:
- Find the record in the ledger
- Click Void
- Enter a reason (required — be specific)
- Confirm
Don’t try to “edit your way” to the right balance
If a property’s balance is wrong, find the wrong record. Adjust or void that. Don’t add a corrective entry that paper-overs the issue without explaining what happened — your accountant will hate you in three months.
Use credits, not balance edits
If a board decision results in someone owing less, add a CREDIT. The credit shows up in the ledger with a memo (“Board waived late fee per 4/15/2026 meeting”) so anyone reading the history understands what happened.
Refunds are separate from voids
If a resident actually paid, and you need to give them money back:
- Refund the payment — money physically goes back to their card or bank via Stripe
- Don’t void the payment, because the money’s already in your bank account; voiding the record doesn’t reverse the actual money movement
If the payment was by paper check, you’ll handle the actual money transfer outside the system (write them a check, etc.) and record a manual REFUND entry to keep the ledger accurate.
Reading the ledger — practical scenarios
”A resident says they paid but it’s not showing”
- Filter the ledger to their property
- Look for a recent PAYMENT record
- If you don’t see one:
- Card payments through Stripe usually show within seconds. If not, check Stripe’s dashboard for the transaction
- ACH payments take 3–5 business days to clear
- Paper checks need to be manually recorded by an admin
If the resident has a screenshot of a Stripe receipt and you don’t see the payment, contact support@homeherald.ai with the Stripe payment intent ID.
”The dues amount on this property is wrong”
The dues amount is set on the property, not in the ledger. Edit the property to fix the amount for future dues. To fix a past dues charge that already posted at the wrong amount:
- Void the wrong DUES record
- Add a new DUES record at the correct amount with a memo explaining
”I see a positive number on a CREDIT — is that a charge?”
Credits are stored as positive numbers but reduce the balance. The system handles the sign internally. You enter “$50” as a credit, the balance drops by $50.
The same is true for payments and refunds — enter positive numbers, the system applies the right sign based on the record type.
Exporting and reporting
For accounting:
- Transactions → Export CSV in the admin sidebar gives you the full ledger
- Filter first if you only want a date range, a property, or a type
For board reports:
- The Admin Digest automation generates summaries on a quarterly / semi-annual / annual schedule. Configure under Configuration → Admin Digest.
For property-specific statements (e.g., a closing statement for a sale):
- Open the property → Transactions → Export this property
- The PDF is formatted for handing to a closing agent
Where to go next
- Configuring dues — how dues records are generated automatically
- Properties are the unit of record — why money attaches to properties
- Enabling Stripe payments — how online payments turn into ledger entries