Use “Collection sheet” in Recued. The month's collection list as a table and as CSV, one row per active contract, each carrying the contract id the import matches on.
Collection sheet
Use “Collection sheet” in Recued. The month's collection list as a table and as CSV, one row per active contract, each carrying the contract id the import matches on.
Complete workflow
Use Rental Book in Recued for property, landlord, ledger, and records. It includes 24 built-in actions and 18 ready-to-run workflows.
You are viewing one recipe in this workflow. Installing it opens the complete pack so its other recipes and background automations arrive together.
Use “Add a building” in Recued. Records one building or complex. Units hang off it.
Use “Add a unit” in Recued. Records one rentable unit against a building. It uses the connections and settings you choose when you run it.
Use “Add a tenant” in Recued. Records one tenant and how they pay: cash, autopay, or stripe.
Use “Open a rental contract” in Recued. Binds a tenant to a unit at a monthly rent. The contract is what a period charge is raised against.
Use “Raise the period's rent charges” in Recued. Raises one rent charge per live contract for a billing period. Safe to run unattended on a monthly schedule and safe to run twice — the charge id is the (contract, period, kind) tuple, so a repeat is a no-op rather than a second bill.
Show all 19 recipes
Use “Record a rent payment” in Recued. Records what a tenant actually paid, against their account rather than against an invoice. A partial payment is one receipt for the part; an overpayment is one receipt for the whole, and the credit carries.
Use “Import payments” in Recued. Reads the collection sheet back and records one receipt per row that carries an amount and the date it arrived. Re-uploading the same sheet records nothing twice, and a row it cannot record is named rather than dropped.
Use “Tenant statement” in Recued. One tenant's account: everything charged, everything received, and the balance derived from the two. Not read off any invoice, because no invoice knows about the payment that arrived against a different month.
Use “Buildings” in Recued. Every building you hold, with a way into each one's units.
Use “Building” in Recued. One building: what it is, and every unit in it. It uses the connections and settings you choose when you run it.
Use “Unit” in Recued. One unit: who is in it now, and every tenancy it has had. It uses the connections and settings you choose when you run it.
Use “Contracts” in Recued. Live tenancies by default; expired ones only when you ask.
Use “Customers” in Recued. Everyone on the book, most recent first — and the way to start a tenancy for one.
Use “Retire or restore a customer” in Recued. Takes a customer off the working list without deleting anything they are attached to, or puts them back.
Use “End a tenancy” in Recued. Closes a contract on a date. The ledger it produced stays exactly as it is — ending a tenancy is not settling it.
Use “Change the rent” in Recued. Sets a contract's rent. Periods already raised keep the amount they were raised at.
Use “Collect the rent” in Recued. Type what each tenant paid, straight into a grid — one row per live tenancy, one save.
Use “Records runtime” in Recued. It helps you complete this workflow using the connections and settings you choose.
The id is the whole point
Every row carries contract_id. Fill in amount_received and received_on (as YYYY-MM-DD), save, and Import payments matches each row back to its contract on that column — nothing is matched on a tenant's NAME, which is how two people called Smith get each other's rent.
⛔ Do not delete or edit the contract_id column. A row without it is skipped on import and reported, not guessed at.
Filtering by method
method splits the sheet into the lists you actually work from: autopay is the one you hand the bank, cash is the one you carry. Leave it empty for everyone.
⚠ The sheet is a snapshot. It says what the ledger held when you exported it. A payment recorded after that is not on your copy, and importing a stale sheet adds receipts that are already there — the import is additive, not a reconciliation.
Why there is a date column
The date a payment arrived is what tells one payment from the next. Fill it in and you can upload the sheet as often as you like — rows already imported are recognised and skipped. Leave it blank and the row is skipped, because a payment with no date cannot be distinguished from the same amount arriving again next week.
How it works
Inspect the data fetches, transforms, gates, and output this recipe runs.
Settings
Configurable at install. Defaults shown — change them anytime in Recued.
limit
setting
=
200
method
setting
=
all