One building.
Six ways in.
Every lit window up there is someone using PropCanopy — a resident paying rent, a plumber on a repair job, an applicant booking a viewing, an owner inspecting the asset. One lease, one ledger, and one version of the truth.
- Resident
- Staff
- Contractor
- Applicant
- Owner
Everybody in a tenancy needs software. Nobody agrees on the numbers.
The listing site says one rent. The accounting package says another. The resident’s app shows a balance from Tuesday, the contractor emails an invoice nobody can match to a work order, and once a quarter someone spends a week reconciling all of it by hand.
That is not a workflow problem. It is four software vendors each holding an isolated copy of a lease. PropCanopy holds one lease and gives every party their own door onto it — so there is no reconciliation step, because there is nothing to reconcile.
Six doors, one record
6 live ecosystem surfaces- Back officeapp.propcanopy.com →Live
Where the portfolio is actually run
Leases, the rent engine, maintenance dispatch, and the double-entry general ledger — with a real estate copilot that drafts actions for human approval.
- Resident & Communityportal.propcanopy.com →Live
The building, right in their pocket
Autopay, maintenance requests, amenity bookings, building notices, HOA voting ballots, and the private resident marketplace.
- Contractorpro.propcanopy.com →Live
The job, and only the job
Contractors see precisely the unit they were dispatched to and the resident details. Database RLS guarantees they cannot see other doors or rent rolls.
- Marketplacesearch.propcanopy.com →Live
Where the tenancy starts
Vacancies publish directly from the unit record. Verified applicants submit digital background checks and sign their lease seamlessly.
- Capital & Underwritinginvest.propcanopy.com →Live
Underwrite on actuals, not assumptions
Pro-forma calculators, debt service modeling, NOI stress tests, and automated quarterly LP distribution statements.
- Developers & Webhooksdocs.propcanopy.com →Live
The same API we build on
Public REST endpoints, event-driven webhooks, and type-safe SDK samples generated directly from OpenAPI schema.
Six apps is a liability unless they share one truth
Anyone can ship six front ends. The hard part is making them incapable of disagreeing. That work happens below the surfaces, where nobody sees it and everybody depends on it.
The line between a resident, a contractor, and staff is a database policy. Six surfaces cannot drift apart on who may see what, because none of them decides it.
A charge raised by staff is the charge the resident pays and the line the owner’s statement is built from. Same row, three readers.
Every surface calls the same FastAPI service, and developer docs are generated directly from it. If it is in the docs, it is in the product.
A person is a person once. The same human can rent in one building and own another, and each surface works out what they are allowed to do there.