What Occupella does for leasing and operations

Occupella reads your Buildium events as they arrive, gathers the history around each one and drafts what comes next. This page lists what it does, with the limits named where they exist.

The Inbox, Operations and Leasing pages, in under twenty seconds.

How an event is handled

When something happens in Buildium, Occupella looks up the history around it and drafts the reply or the next task. The examples below follow one work order.

Maintenance, in detail

The card appears before the AI runs

A signed Buildium webhook arrives, is verified against your account and queued. Within seconds you have a readable row built from the record itself: title, address and unit, who reported it and who it is assigned to. The written summary follows a moment later.

It pulls the history first

The full task, its unit, its property by name, the active lease and its tenants, and ninety days of prior tickets at that address, fetched in parallel. If one lookup fails, the card loses that one field, not the whole card.

What it noticed, checked against the record

The lease owes $1,240. No rent has posted this month. The lease ends in 41 days. Three other tasks are overdue at this property. Any number the model writes is checked against the record before it is shown, and dropped if it doesn't match.

A drafted next step you can edit

The tenant reply, the follow-up task or the note, written out with why it was suggested and the fact it was based on. You can change every word before it goes.

Reports from your Buildium data

Ask in plain English. The answer comes from a synced copy of your Buildium account, so it doesn’t crawl the API record by record, and it comes back as a table you can sort.

Late rent, in detail

Who is behind on rent?

Every lease with a balance: tenant, property and unit, the amount, 31–60 / 61–90 / 90+ aging, and the count of open maintenance at that address on the same row. “Check whether they have open work before I send a late notice” is answered by the same question.

What do we owe vendors?

Every unpaid bill with vendor, amount, due date with overdue flagged, and which properties its lines charge. Amounts are summed from the line items, because production Buildium sends no total on the bill itself.

What expires soon?

Leases ending inside 90 days, with the tenant, the current rent, the outstanding balance and open maintenance already on the row.

What is overdue?

Open tasks (new, in progress and deferred) with title, priority, property, assignee and due date, overdue first.

Brief me on everything

Occupancy and vacancies, delinquency, unpaid bills, open work orders and tasks, and expiring leases. One request, all five run at once.

Who is Marcus Whitfield?

Resolved across tenants, owners and vendors, with the property and whether the tenancy is current. A lease that has ended is marked FORMER on the row, so you don't have to work it out.

Which vendor cost us the most this year?

No fixed report covers this, so Occupella writes the query. It runs inside a read-only Postgres transaction against views scoped to your company, and anything that is not a single clean SELECT is refused before it runs.

The answer to “who is behind on rent?”, with example data.

Changes it can make in Buildium

Occupella can also write to your Buildium account. These are the changes it can make.

Create a to-do task
Create a work order and assign a vendor
Reassign a work order to a different vendor
Change a task's status, priority or due date
Close a work order
Add a note to a task, a work order or a vendor
Post a charge to a lease ledger
Record a payment against a lease
Record a move-out, and undo it
Share a file with a tenant or an owner

The approval card for a new work order, with example data.

Fair housing guardrails

Occupella declines a defined set of questions outright, and it doesn’t offer a workaround after it declines.

It won't research or report who lives in an area by race, religion, national origin, familial status, disability, or any proxy for them.
It won't help write a screening rule that turns on a protected class, including source of income where that is protected.
Occupella doesn't make or draft decisions on housing applications.
After it declines, it won't offer school ratings or crime statistics as a substitute. Those are the common workaround, and they steer just the same.
Every message drafted for a resident is screened against the same rules before you see it.

Where your properties are

Buildium stores an address as text. Occupella turns it into a point on the map, which lets it answer flood exposure, how a rent compares with the federal benchmark, and which properties are near which.

Is this address in a flood zone?

Answered from FEMA's National Flood Hazard Layer at the property's own coordinates: the zone letter, whether it sits in a Special Flood Hazard Area, and what that means for insurance. It doesn't guess from the ZIP code.

How does this rent compare with HUD's?

HUD publishes a fair market rent per area per bedroom count. Occupella pulls the figure for the property's ZIP and puts your rent next to it, by unit mix, so you compare against the right column.

Which of my properties are within 150 miles of here?

A radius search over your portfolio, with the distance to each property.

Every property is placed once

Addresses are geocoded against the US Census geocoder and stored, so the questions above don't look anything up again. Maps are drawn from OpenStreetMap tiles.

State rules for deposits and fees

A deposit deadline in Colorado is not a deposit deadline in Texas, and the one that applies is where the property sits. Occupella looks it up for that property and does the arithmetic.

Landlord rules for every state

Deposit deadlines and caps

Ask when a deposit has to go back after a move-out and it answers with the deadline for that property's state and the cap on what may be withheld, with the statute named.

The date, computed

It gives the actual calendar date, counted from the move-out on the lease, instead of “within 30 days.”

Notice periods and late-fee rules

The same treatment for the other state-level numbers a manager has to get right, cited the same way.

It shows its source

When the answer comes from the public web rather than your books, it links to what it read. Every one of these answers also tells you to check with your lawyer.

When it doesn't know

The costly failure is a confident “nothing found” when the lookup broke, or a list of five when there were forty. Occupella says so in both cases.

A cut-off list is never evidence of absence

When a list is cut short, the answer says how many it showed, out of how many, and what it searched. It is not allowed to conclude that the thing you asked about doesn't exist.

A failed lookup reads as a failed lookup

If Buildium refuses the connection, the answer says the connection is broken. It does not say you have no work orders. The same rule covers a document search that timed out and a specialist that ran out of turns.

Every answer has an as-of line

Answers come from a synced copy of your account, so each one says when that copy was last refreshed. A core table more than 26 hours stale gets a named warning in the answer itself.

It says when it ran out of time

A long question stops at a soft deadline and writes up what it had already gathered, labelled as partial and naming what it didn't get to.

What it remembers

Tell it something once

“Sarah Chen prefers email only.” “We use Redbud for anything electrical.” It keeps that per company and brings it back on a later question, and identifiers are stripped before anything is stored.

It builds on what it already flagged

Before it looks anything up, it checks what it has already noticed about your portfolio: a payment a tenant promised in an email, the reminders it raised about missed rent and expiring leases. “Where do we stand on 4B” picks up from last week.

Ask a follow-up on the card itself

“Has this unit done this before?” “Who did we use last time?” Typed into the card and answered in the card, with that event's property, unit and task already in context.

Outside text is treated as data

A resident's work-order description, an email body, a file from Drive, a web snippet: each is fenced off before the model sees it, so text written by someone else can't give Occupella instructions.

Texting: in carrier review

Leasing on your own number

US carriers vet every business that sends application-to-person texts, and the review takes about ten to fifteen days. Nobody on any plan can text a lead before it clears. Here is what works today and what opens at approval.

How Leasing works, in detail

Working today: the paperwork

You fill in your legal business name, whether you have an EIN, your address, an authorised contact and one consent checkbox. Occupella writes the campaign description, the opt-in language, the sample messages and the public privacy and terms pages the carrier checks. Those four are what registrations get rejected over.

Working today: the compliance rails

A consent ledger you manage yourself, with revocations recorded rather than deleted. STOP honoured across every number you own. Quiet hours computed from the recipient's own state, including the four that are stricter than federal.

At approval: the pipeline opens

A number that belongs to your company, not a shared one, bought and set up the day carriers clear you. Leads arrive by text into a stage board with a drafted first reply, quiet leads flagged, and click-to-call from the browser.

Works with

Buildium

The system of record. One API key, entered once. Occupella keeps a synced copy of your account so it can answer without waiting on the API.

Gmail

Reads a thread for context and sends an approved reply from your own address.

Google Calendar

Checks availability and puts approved appointments on the calendar.

Google Drive

Finds and reads the documents your company already keeps, such as SOPs, templates and vendor agreements. Docs and Sheets included.

Every integration and its status

Safeguards on changes and data

Occupella changes records in your Buildium account and sends email from your address. These are the controls around that.

Role checks on money and closures

A payment, a charge and closing a work order also require a manager or an admin, and are refused outright if the role can't be verified. Buildium can't undo any of the three.

No double charges

Each approved action takes a lock before the Buildium call, so a double-click, a retry or a restart can't fire the same charge twice. A write that might have half-landed is flagged for review and never retried automatically.

Your data stays in your company

Every query is scoped to your company, and a test reads every query in the codebase to keep it that way.

Encrypted keys, deleted on disconnect

Your Buildium keys are encrypted at rest, entered once and never shown again. Disconnect and the copy of your data is deleted. There is no option to keep it.

Identifiers kept off the screen

Buildium record numbers, tenant emails and phone numbers are stripped from the reply as it is written, so an identifier never reaches the screen, even briefly.

See it on your own portfolio

Connect Buildium and watch it handle a real work order from your account. 14 days, no card.