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:

TypeDirectionTypical use
DUESCharge (positive)Recurring monthly or annual dues
FINECharge (positive)Violation fines
ASSESSMENTCharge (positive)Special / one-time assessments
BOOKING FEECharge (positive)Amenity rental fees
PAYMENTPayment (negative effect on balance)A resident pays
CREDITReduces balanceManual credit / write-off / promo
REFUNDReverses a paymentMoney 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:

  1. Go to Transactions in the admin sidebar
  2. Click New Transaction (or Add manual entry)
  3. Pick the property (and resident if applicable)
  4. Pick the type
  5. Enter the amount and a clear memo
  6. 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:

  1. Find the record in the ledger
  2. Click Void
  3. Enter a reason (required — be specific)
  4. 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”

  1. Filter the ledger to their property
  2. Look for a recent PAYMENT record
  3. 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 → TransactionsExport this property
  • The PDF is formatted for handing to a closing agent

Where to go next