Maintenance records · Tenant reports · PDF export

A complete
paper trail
for every
maintenance issue.

Log events in fifteen seconds. Tenant reports and photos submitted by secure link, with an email alert to the landlord. Export the full chronology — every note, every photo, every event — as a print-ready, all encompassing PDF. For independent landlords, property managers, and tenants.

15s to log an eventSHA-256 per fileS3 object lockMobile easy uploadPDF + read-link
Cornelia-Flats-1F · sample.pdf · print-ready
Maintenance record · 4-page export

Cornelia Flats — Unit 1F

1639 W. Cornelia Ave · Chicago, IL 60657 · HVAC / Cooling
● Resolved
Tenant ReportJordan Blake
“AC has been running all day but the apartment is still 81°. Uploaded thermostat photo. Available after 5 PM.”
📎 1 photo · IMG-7401.heic
Jul 14
8:47 PM
Vendor ScheduledLandlord
Northside HVAC assigned for Jul 15, 1–3 PM. Notice-before-entry preference recorded.
Jul 14
8:56 PM
Access AttemptLandlord
Tenant unavailable. Technician unable to access building. Rescheduled.
Jul 15
1:18 PM
Vendor FindingNorthside HVAC
Coil partially frozen from restricted airflow. Filter replaced, return area cleared, supply air 55°F after service.
📎 3 photos · invoice $285
Jul 16
10:18 AM
● Image submitted
SHA-256 · IMG-7401.heic
a3f9…c281b
● Access attempt
Tech unable to enter — rescheduled
● Resolved
Closed Jul 20 · vendor finding attached
§ 01 · The problem

The timeline gets messy.
Texts. Emails. Photos.
Where do you save it all?

SMS · Jul 14, 8:47 PM
“hey ac still not working its 81 in here”
Email · Jul 14, 9:12 PM
From: jordan.blake@…
“Following up — attached two photos of the thermostat. AC is running constantly.”
Tenant · Jul 15, 8:02 AM
“hot water heater is starting to fail”
SMS thread · Jul 15
“guest bedroom door hinge is starting to separate from the wall”
Vendor invoice (paper)
HVAC-7742 · $285 · “filter / return area” · handwritten
Photo roll · iPhone
“office window trim starting to sag”

IssueLedger turns it into one timestamped, exportable record.

For landlords, property managers, and tenants who need a clean record before small problems become expensive disputes — recurring repairs, deposit fights, insurance claims, housing complaints, attorney handoff. Property managers use it to keep owners and vendors accountable without the email chase. Tenants use it to make sure repair requests don't disappear.

§ 02 · How it works

Three steps. Works from your phone.

01
Step one

Create unit.

Property, unit, tenant, secure submission link. Set up once — when a tenant report lands, the landlord gets an email alert and the record is ready.

issueledger.app/units/new
Property
Cornelia Flats
Unit
1F · 2 bd / 1 ba
Tenant
Jordan Blake
Tenant submission link
issueledger.app/r/cf-1f-7Q3K
Cornelia Flats · 1F
New event
Event type
Vendor scheduled ▾
Note
Northside HVAC assigned for 1–3 PM. Tenant needs notice before entry.
📷 Photo
📎 Invoice
Timestamped · SHA-256 hash
0:15
to log this event
02
Step two

Log events + photos.

Standing in the unit, not two days later from memory. Notes, timestamps, access attempts, vendor visits, records — captured from the field.

03
Step three

Export or share.

Generate a print-ready PDF — or a time-limited read link your attorney, manager, insurer, or housing agency can review in their browser.

attorney-packet.pdf
Attorney / insurance packet
Chronology · photo addendum · hash manifest
Pages 1 — 14 · 23 attachments · 7 events
read-link · expires Aug 19
Read-only share link
issueledger.app/r/9F2-K4Q · revocable · 30-day default
record-audit · hash manifest
Record manifest
File hashes · timestamps · photo addendum
§ 03 · Tamper-evident records

Hashed.
Locked.
Immutable.

Every photo is stored in AWS S3 with Object Lock enabled, a UTC timestamp, and a SHA-256 hash. The exported record identifies the exact file attached to each event — by hash, by filename, by minute.

Every upload is verified server-side: the SHA-256 hash is computed and confirmed, file contents are validated against the declared type (magic-byte check), and the result is written to the immutable S3 record before the upload is accepted. Tenant-submitted records go into a review queue — the landlord reviews and locks them before they enter the permanent record. The timestamp + hash show the file existed in this exact form at this exact moment, which is useful when a manager, insurer, mediator, or attorney needs to understand what happened.

SHA-256S3 Object LockUTC timestampMagic-byte checkMIME allowlistQuarantine reviewHash manifest
● Hash manifest · 3 files
Generated Jul 20, 11:37 UTC
IMG-7401.heic
2.4 MB
a3f9b21e84d6c0a5fb7e4c6a8d2f9b1c44e6a93f7c8b2d5a1f3e9c281b
vendor-coil.heic
3.1 MB
7d2e91a440f8b6c3e2a5d8f1c6b4e9d3a7f2c1e8b5d6a9f4c2e0b7d3
invoice-7742.pdf
812 KB
b1c4e7a90d3f6c8b2e5a1f4d7c9b3e6a8f2c5b1d4e7a0c3f6b9d2e8
256
Bit hash per file
7y
Default retention
PDF
Hash manifest included
UTC
Timestamped to the second
§ 04 · One chronology, both sides

Tenant, landlord, vendor.
One chronology.

Every event — a tenant report, a landlord note, a vendor visit, an access attempt, a repair completed — is stamped with who added it and when, and lands in the same record. No parallel threads. No conflicting versions.

● Tenant report

From the unit

Photos, notes, timestamp. Submitted by tenant link, with landlord email alert.
● Tenant follow-up

More context

Additional photos, availability, and what changed since the first report.
● Vendor scheduled

Appointment set

Vendor, date, time window, tenant notice preference.
● Vendor visit

Findings

Diagnosis, parts, invoice, photo set.
● Access attempt

Access record

Notice given, arrival attempt, tenant response, outcome.
● Repair completed

Resolution note

What changed, after-photos, vendor finding, completion note.
● File & photo access

Record packet

Every photo and document attached to the event that explains it.
● System note

Audit trail

Export generated, share link created, file hash verified.
§ 05 · Not just for disputes

A clean record, before memory gets fuzzy.

For small landlords. For property managers. For tenants who want move-in condition on record. Anyone tired of reconstructing what happened from texts, emails, and a camera roll.

Move-in condition·Maintenance requests·Access attempts·Vendor visits·Recurring issues·Habitability follow-up·Insurance documentation·Deposit disputes·Move-in condition·Maintenance requests·Access attempts·Vendor visits·Recurring issues·Habitability follow-up·Insurance documentation·Deposit disputes·
§ 06 · Export

Multiple contributors.
One record.

When you need to share the record — with an attorney, your insurer, or a housing authority — it's already in order. Every contributor, every event, every photo, one paginated PDF.

● Tenant

Tenant report

Submitted via browser link — no app. Landlord email alert sent, timestamped on receipt, photo hashes locked in.

EMAILED · HASHED
● Landlord

Landlord note

Log what you did, scheduled, or observed. Access attempts and vendor dispatches included.

ROLE · DATED
● Vendor

Vendor finding

What they found, what they fixed. Photos hashed and attached. Invoice note logged.

FINDING · HASHED
● Export

PDF export

Every contributor, every event, every photo — one paginated record with a hash manifest.

PRINT-READY · SHA-256
View example report
§ 07 · Why IssueLedger

A calmer system for the messy middle of maintenance.

Because memory is a bad filing system.

A maintenance issue is never just one thing. It is a text, a photo, a vendor note, an invoice, a missed access window, and a follow-up that gets remembered differently by everyone involved.

IssueLedger turns that scattered trail into a calm, timestamped record while the facts are still fresh. Not because every problem is headed to a courtroom — because good records prevent small confusion from becoming expensive confusion.

Why IssueLedger
text thread“Can you send the leak photo again?”May 14 · 8:42 PM
camera rollIMG_7401, IMG_7402, IMG_7408No unit, no note, no status
vendor inboxInvoice #7742 + diagnosisBuried under three replies
IssueLedger record

Unit 2B · Kitchen leak

One timeline with the first report, photos, access notes, vendor visit, invoice, and completion update.

§ 08 · Both sides of the record

Tenants benefit from the same paper trail.

Move-in conditions and repair reports are clearer when both sides use one timestamped record. Send a clean submission link — no app to install, no account to create.

Property managers use it the same way — one shared record for owner updates, vendor visits, and tenant communication, without chasing three different inboxes.

See the tenant page
Copy message for landlord

“I've been looking at IssueLedger for maintenance and move-in documentation — it keeps a shared record of timestamped photos, notes, and condition updates that both sides can reference. Would you want to use it together? issueledger.app”

issueledger.app/for-tenants
● Copied
§ 09 · Simple pricing

One avoided dispute
covers the year.

Beta price

Monthly

Pay as you go
$4.99/ month base
+ $0.99 / month per additional unit
Includes
  • ✓  Base covers your first unit
  • ✓  5 GB record storage (+2 GB / paid unit)
  • ✓  Unlimited issues, events, photos & PDF exports
  • ✓  Tenant submission links + landlord email alerts
  • ✓  SHA-256 + S3 Object Lock record chain
  • ✓  Authenticated landlord login
Start monthly
Beta price~$10 off / year

Yearly

Best value
$49.99/ year base
+ $9.99 / year per additional unit
Everything in Monthly, plus
  • ✓  One invoice, no monthly billing line items
  • ✓  Same 5 GB base + 2 GB per paid unit
  • ✓  Cancel anytime — prorated refund on unused months
Start yearly
Add-on
Need more record storage?
+10 GB block, billed monthly. Stack as many as you need — cancel any block anytime.
$2/ 10 GB / month

Beta pricing currently · storage is the only add-on · cancel anytime · no per-tenant fees

Video not currently supported.

The record exists
before the dispute.