Your property, in one view

See the lot as it is.

Start with the questions you answer each week: who is in that space, what they owe, and who is waiting.

Feature record / engine v1.0.1Released capabilities, and newer work marked “on the demo now” or “on my own lot now”, with setup requirements and limits.

Annotated real BayRoster demo showing property lookup, filters, and status
Real Anytown demo capture / fictional data
Ben's Farm property layout, with the main shop, pole barn, outdoor yard, shaded pad and apron in their actual arrangement
Ben's Farm, Thompson, ND. Customer records and private areas omitted.

The property that started it

A real yard has its own shape.

The shop, pole barn, outdoor rows and the drive between them. This is the layout from Ben's own storage operation, drawn inside the working software.

Your property does not have to fit somebody else's grid. Start with the buildings and spaces you actually have.

This illustration shows the property layout only. Explore fictional customer records in the public demo.

Map

Property first, not a generic dashboard.

Your layout can include buildings, drive lanes, numbered units, fixed slips, and outdoor rows. A whole-property overview is optional and needs layout setup; individual area maps remain available.

Status follows the records

Paid, due soon, overdue, and no-date states are calculated from dates and money. Nobody picks the color. If you type a corrected paid-until date, the color follows that date.

Filters answer the next question

Narrow by occupancy, financial state, location type, renewal, or electric-reading attention without changing what the colors mean.

Names on the tiles

An occupied space shows the renter’s name, so the map alone tells you who is where. On the demo now, ahead of the next numbered release.

Real demo surface / overview

Moves

Drag, drop, keep the history.

Drag within an area to open an editor with the new position filled in, then save. Moving across areas uses a transfer that confirms the date and rate. An occupied destination is refused.

Moves are events, not erasures

Contact details, notes, payment history, and a named activity log remain with the customer. You can reactivate an eligible former renter with no active occupancy onto the existing customer and asset records.

Annotated real BayRoster demo showing a renter dragged from one unit to an open one, with the transfer confirmation
Real demo surface / annotation explains the move

Money

Verified before it changes the roster.

Online billing ships off. When enabled, Stripe payments are verified before they are applied. On direct billing, a clean whole-month match extends the paid-until date. Ledger payments are allocated against charges. Unclear matches and payments this software did not start wait for review.

Simple date or full ledger

Run a paid-until date or track charges, payments, oldest-due-first allocation, running balances, and unapplied credit. Neither mode turns BayRoster into accounting software.

Checks and cash still count

Record a check, cash, a card you took by hand, or another method without inventing a check number. Before you save, the screen shows the new paid-until date, and an amount that does not match the months asks you to confirm. Staff logins can record payments too, and a stack of checks goes in as one batch. A payment that looks like a duplicate of one already recorded that day asks before it lands twice. The card entry, the date preview and the confirmation are on the demo now, ahead of the next numbered release.

Corrections with a reason

Bill a one-time charge. Reverse a payment or void a charge, with a reason.

Checkouts that never finished

An online payment a renter started and never finished is listed by renter, amount and start time. After 24 hours you can release it. This list runs on my own lot now, ahead of the next numbered release.

Annotated real BayRoster demo showing a Stripe payment held in the review queue instead of being applied automatically
Real demo surface / verified money, human review

Customer statements

Their half of the record.

One page per customer: what they rent, what has been charged and paid, and the date they are paid until. Online payment is available when configured.

A link, not a login

A customer can hold a durable link to their own statement, and it still opens months later. No account to create, no password to reset, and no portal for you to administer. You can issue more than one link. Regenerate revokes the existing links, and a change to the customer identity also invalidates them. Treat the link as private: anyone holding it can open that statement.

Paid from that page

With online billing configured, renters pay by card or bank transfer (ACH) on Stripe’s secure page. The software calculates the amount from the account; the renter cannot enter a different price. A renter who owes money that is not yet due can pay the full balance from the same page.

Every month behind, not just one

A renter on a paid-until date who is three months behind is billed for all three, added up across every space they rent, with the months and the amount printed under each one. An applied partial payment retires the oldest months and leaves the rest owing. Online checkout uses the quoted amount; a partial payment may need owner review. A space more than twenty-four months behind is quoted at twenty-four; the rest is a conversation with you, not a self-serve charge.

Your rental agreement

When configured, the statement links to your published rental agreement. It does not expose privately signed documents. If the document is not posted, the statement tells the renter to ask you for a copy.

Or paid ahead, deliberately

With online billing configured, a paid-up direct-billed customer can choose one to twenty-four months and pay forward from their existing paid-until date. The map updates from the new date. Accounts with arrears or a ledger balance do not get this option.

Statement email, sent by you

You can email a renter their statement link and the amount due. The email to a paid-up renter mentions paying ahead. Statement email ships off, and nothing goes out on a schedule.

Inquiries

The call list lives somewhere on purpose.

Leads can be ranked, noted, followed up, closed without deletion, and converted into the customer record.

One ranked queue

Priority, call notes, request, and status stay together instead of disappearing into texts and sticky notes.

Website intake

Your website can send availability inquiries into the queue. This inquiry form does not hold or assign a space. Online booking is a separate, optional flow.

Review before assigning space

Contact, asset, and start-date details prefill the customer form. You still choose the customer match, location, billing mode, and charge.

Optional online booking

Decide how space is offered.

Online booking is off by default. Turn it on and a new renter books and pays for a space on your website in one visit. Setup includes the spaces offered, prices, dates, agreement, and verified payment account before it can be enabled.

A new renter books and pays in one visit

The renter chooses from the spaces you offer, picks a move-in date, reads the price and your agreement, passes a spam check, and pays by card through Stripe. The space is held for 15 minutes while they pay.

Offer a unit or a whole row

Choose eligible units and rows on the property map. A whole row is one rental unit; spare length is not another booking space. Exact spot selection is optional and off by default.

Spaces you keep back

Mark a space owner-reserved or conditional and it never shows as vacant or bookable.

Returning renters wait for your decision

A request matching an existing renter goes to owner review without holding space. Approval checks availability and emails a short-lived payment link. You can decline with a reason.

Prepaid months with a move-in date

Prepaid bookings calculate departure from the move-in date and the number of calendar months. You can limit how far ahead move-in is allowed.

A booking payment is not a move-in

Only a verified payment confirms a booking. It does not automatically create an occupancy, extend the paid-until date, or post to the regular account ledger. Those remain part of your arrival and account workflow.

Rates, classes and dates on one page

Type a monthly rate in dollars for each area and each booking class, group units into classes, and set booking seasons or a “start within” limit. New rates apply to new rentals only. On the demo now (Rates in the top bar), ahead of the next numbered release.

Price first, in your words

The booking page shows the monthly price first and your own description of each class, not an internal code. This runs on my own lot now, ahead of the next numbered release.

Book a unit for a customer yourself

Reserve a fixed unit for an existing customer for set dates. A move or placement that conflicts is refused. It takes no payment and sends no message.

A rehearsal before it goes live

Run the whole booking with Stripe test keys, made-up applicants and six test units you choose, then clean up and switch to live.

Where to see it

The public demo has no booking page yet. My own lot takes bookings this way at bens-farm.com/book.

The office

Logins, lists and your own labels.

What the people at the desk use between calls.

A login for each person

Each person gets a login as Manager or Administrator. Staff can record offline payments, batch payments and one-time bills.

Lists you can work from

A call list of everyone overdue or due within three weeks, with tap-to-call numbers. A print view. A clients CSV, and a payments CSV for any date range with a total row. An activity log for each renter and each space.

The dashboard in working-day order

Waiting booking requests come first, then the map, payments and the call list. A Needs attention strip jumps to anything waiting, and each administrator can reorder the sections. On the demo now, ahead of the next numbered release.

Your phone number on renter pages

A phone number you enter shows on statements and booking pages, so a renter knows whom to call. On the demo now (Admin, Setup), ahead of the next numbered release.

Your own words

Call what is stored a Container, a Rig or anything else. Unit, renter and agreement labels are set separately.

Your records

Your records should not become vendor leverage.

Ordinary files, ordinary hosting, and a clear export boundary.

Flat JSON files

No database server to administer. The records sit in plain files you can copy, export, and read yourself.

Atomic saves and backups

Records use atomic saves and timestamped backups. If the layout cannot be loaded safely, the map refuses changes.

Customer and location CSV

Customers, assets, locations, and location history export together. An import validates the whole file before saving. Payments, charges, meters, inquiries, layout, and configuration need the separate full backup.

Yearly audit archives

Historical activity survives separately from the live operating files.

Product limits

What it does not do.

Written down here so you do not discover it three weeks into a setup.

No gate or lock hardware

BayRoster tracks occupancy and payment state. It does not open a gate, drive a keypad, or control a lock.

No general accounting

The ledger tracks what customers owe and pay. It does not do payroll, taxes, or replace bookkeeping software.

No nightly reservations

Storage is monthly or seasonal. Campgrounds use PineRoster, a separate product.

No app-store install

It is a website that works in a phone browser. There is nothing to install on every employee’s device.

No scheduled autopay

Renters choose when to pay from their statement. Optional saved-card authorization is off by default and does not enable automatic charges.

No customer portal

A statement link opens one account without a login. It does not let the renter edit customer records or view another account. Booking uses a separate page.

Try the demo

Drag something before you decide.

The live demo is the actual software with fictional data. Password: anytown-demo.