End-to-End Pipeline — 10 Layers
Layer
Components & Key Concerns
Layer 01
Pricing Engine
Derive market-calibrated rent with floor, target & cap bands
📊 Dynamic Pricing
Market Signals
- Median days-to-lease (trailing 90d)
- Regional YoY rental growth rate
- Comparable active listings (comps)
- Seasonal demand index
- Vacancy rate in submarket
Property Factors
- Unit size (sq ft) & layout
- Condition score (new / renovated / fair)
- Amenities (parking, laundry, pet)
- Floor level & views
- HOA / utility inclusions
Price Banding
- Floor price = cost floor + min margin
- Target price = market comp median
- Cap price = comp 90th percentile
- Rent-control ceiling check
- Affordability ratio guardrail
Pricing Formula
Base Market Comp Median × Condition Score (0.85–1.15)
± Amenity Premium / Discount
× Seasonal Demand Multiplier (0.90–1.10)
× Days-to-Lease Urgency Factor
= Listed Rent [clamped to Floor ↔ Cap]
Data Sources
MLS Feed
Internal Lease History
Zillow Market Data Feed
Local Rent-Control Registry
Layer 02
Listing Process Intake
Capture property & unit data to anchor all downstream revenue records
🗂️ Data Quality
Property Profile
- Property ID, address, APN
- Owner / management entity
- Property type & year built
- Zoning classification
- Rent-control status & local rules
Unit Details
- Unit number, floor, sq ft
- Bed / bath count
- Amenity checklist
- Last renovation date & scope
- Current occupancy status
Listing Config
- Available date & lease-start window
- Minimum lease term
- Allowed pet / smoking policy
- Listed rent & approved price band
- Syndication channels (MLS, Zillow…)
Validation Gates
Required Fields Check
Duplicate Unit Guard
Rent-Control Cap Validation
Fair Housing Compliance Review
Layer 03
Charge Standard Policy
Permitted, capped & prohibited charges per jurisdiction — enforced at point of posting
⚖️ Jurisdiction Rules
Jurisdiction Matrix
- State / province tenancy law mapping
- City-level rent ordinance caps
- Max security deposit multipliers
- Prohibited fee list per locale
- Required fee disclosure rules
Permissible Charges
- Security / damage deposit
- Pet deposit & monthly pet fee
- Parking & storage fees
- Admin / application fee (where legal)
- Utility / RUBS allocation
Prohibited / Capped
- Non-refundable deposits (some states)
- Move-in fee caps (e.g. CA: 2× rent)
- Late fee ceilings (e.g. 5% or $50 cap)
- Junk-fee bans (IL, NY 2024+)
- Mandatory itemized receipts
Policy Engine
Rules-as-Code Library
Geo-lookup (ZIP → Jurisdiction)
Annual Ordinance Update Workflow
Legal Review Gate
Layer 04
Lease & Legal Terms
Lock all financial obligations into the signed legal document
📝 Single Source of Truth
Rent & Term
- Monthly base rent (locked)
- Lease start & end dates
- Renewal option & notice window
- Rent escalation clause (%)
- Pro-rata calculation method
Deposits & Fees
- Security deposit amount & conditions
- Pet / parking deposit
- Non-refundable fees (if permitted)
- Deposit return timeline (state law)
- Itemized deduction rules
Payment Terms
- Due date (e.g. 1st of month)
- Grace period (e.g. 3–5 days)
- Accepted payment methods
- Late fee trigger & amount
- Returned payment / NSF fee
Lease Execution
- E-signature (DocuSign / HelloSign)
- Signed copy stored to tenant record
- Revenue record initialized on sign
- Addenda (pet, parking, RUBS)
- Co-signer & guarantor capture
System Events on Lease Sign
Tenant Account Created
Charge Schedule Generated
Deposit Invoice Issued
Move-in Date Confirmed
Lease Doc Archived
Layer 05
Initialize Charges
Set up the tenant's complete charge schedule at move-in
🔧 Charge Config
Move-In Charges
- Security deposit (one-time)
- First month rent
- Pro-rata rent (partial first month)
- Admin / key-copy fee
- Pet deposit (one-time)
Monthly Recurring
- Base rent
- Parking fee
- Storage fee
- Monthly pet fee
- Utility / RUBS allocation
Promo & Concessions
- Concession code (e.g. 1-month free)
- Move-in discount (flat $)
- Referral credit
- Expiry & one-time-use enforcement
- Ledger debit entry created
One-Time Charges
- Lock change fee
- Early-termination fee
- Lease renewal fee
- Amenity activation fee
- Damage charge (ad hoc)
Charge Lifecycle States
Scheduled
Posted
Billed
Paid
Waived
Disputed
Written Off
Layer 06
Monthly Billing
Auto-generate & deliver tenant statements on a defined billing cycle
📆 Billing Cycle
Statement Generation
- Auto-post recurring charges (1st)
- Consolidate all open line items
- Apply credits & concessions
- Show previous balance carry-forward
- Calculate total amount due
Delivery
- Email PDF statement
- Portal notification
- SMS reminder (opt-in)
- Configurable days-before-due
- Delivery receipt logged
Adjustments & Variations
- Utility true-up (RUBS reconcile)
- Lease renewal rent increase
- Mid-cycle charge additions
- Credit memo issuance
- Retroactive correction audit trail
Billing Cycle Config
Billing Date: 25th of prior month
Due Date: 1st
Grace Period: 3–5 days
Late Fee Trigger: Day 6
Layer 07
Tenant Account & Transparency
Tenant-facing ledger view: every charge, payment & credit visible in real time
👁️ Full Transparency
Account Dashboard
- Current balance (due / credit)
- Upcoming charges & due dates
- Payment history (12-month)
- Deposit balance & status
- Lease term & renewal date
Ledger Detail
- Itemized charge descriptions
- Date posted vs. date due
- Applied payments & credits
- Running balance after each event
- Downloadable PDF statement
Notifications
- Statement ready alert
- Payment received confirmation
- Late fee posted notice
- Dispute status updates
- Lease expiry reminder (90/60/30d)
Tenant Portal Features
Self-Service Payment
Autopay Setup
Charge Inquiry / Dispute
Statement Download
Maintenance Request
Layer 08
Payments, Returns & Disputes
Process inbound payments, handle returns, and adjudicate tenant disputes
💳 Payment Integrity
Payment Methods
- ACH / bank transfer (preferred)
- Credit / debit card (+ processing fee)
- Check (manual post)
- Money order (manual post)
- Autopay enrollment & management
Balance Tracking
- Real-time balance update on receipt
- Partial payment application rules
- Credit unapplied balance handling
- Oldest-charge-first application
- Balance reconciliation (nightly)
Returned Payments & Restriction
- NSF / insufficient funds reversal
- Returned payment fee posted
- Balance restored to ledger
- Tenant notified immediately
- 2× return → cash-only policy flag
Dispute Handling
- Tenant submits dispute via portal
- Charge placed in review status
- Property manager review (5 biz days)
- Resolution: uphold / adjust / waive
- Audit log of all dispute decisions
Payment Rails
Stripe / Plaid ACH
Same-Day ACH Option
Card Processing (2.9% + $0.30)
NSF Hook → Fee Engine
Layer 09
Late Fee Calculation
Automatically calculate, post & cap late fees per lease terms & local law
⏰ Compliance Caps
Trigger Logic
- Grace period end = trigger date
- Check unpaid balance > $0
- Skip if payment in-transit flag set
- Skip if hardship waiver active
- Post late fee charge to ledger
Fee Calculation Methods
- Flat fee (e.g. $50 or $100)
- % of monthly rent (e.g. 5%)
- Daily accrual (e.g. $10/day)
- Minimum of % or flat (lesser-of rule)
- Jurisdiction-mandated method applied
Compliance Caps
- CA: max 5% of monthly rent
- NY: max $50 or 5%
- IL: max $10 or 5%
- No compound late fees (most states)
- Waiver workflow for disputes
Late Fee Formula
If Balance Unpaid after Grace Period:
Fee = MIN( (Monthly Rent × Rate%), Jurisdiction Cap )
Then Post as separate charge line item
= Late Fee Due [never compounding, jurisdiction-capped]
Layer 10
Tax Compliance
Calculate, collect & remit applicable taxes; generate owner & tenant tax docs
🧾 Multi-Jurisdiction Tax
Applicable Taxes
- State income tax on rental income
- Local occupancy / transient tax (STR)
- Sales tax on non-residential fees
- Property tax pass-through (NNN)
- Vacancy / gross receipts tax
Tax Documents
- 1099-MISC / 1099-NEC to owners
- Annual rent paid summary to tenant
- Security deposit interest (where required)
- Property tax statements
- Withholding for foreign owners (FIRPTA)
Tax Engine Rules
- Taxable vs. non-taxable charge mapping
- Geo-based tax rate lookup
- Short-term vs. long-term rental rules
- Exemptions (low-income housing, etc.)
- Annual rate table update workflow
Remittance
- Monthly / quarterly tax filings
- ACH direct remittance to tax agencies
- Filing confirmations stored
- Penalty calculation for late filing
- Owner disbursement net of taxes
Integrations
Avalara / TaxJar
IRS e-File (1099)
State Revenue Portals
FIRPTA Withholding Engine
GL / Accounting Export
Layer 11
Transaction Ledger & Accounting
Post every financial event to the general ledger and sync to accounting systems
📒 GL Integrity
Accounting System Sync
- Real-time or nightly GL export
- Chart of accounts mapping config
- Period close & lock workflow
- Journal entry batch with reference IDs
- Reconciliation report (ledger vs. bank)
Bank Reconciliation
- Daily bank feed import
- Auto-match payments to ledger entries
- Unmatched item exception queue
- Trust / escrow account reconciliation
- Month-end reconciliation sign-off
Financial Reporting
- Income statement by property / portfolio
- Balance sheet (AR, deposits, liabilities)
- Cash flow statement (operating)
- Owner disbursement report
- Bad debt & write-off tracking
Integrations
QuickBooks / Xero
Yardi / MRI
NetSuite
AppFolio
Bank Reconciliation Feed
Audit Export (CSV / PDF)
Key Performance Indicators
Days to Lease
Average days from listing-active to signed lease. Leading indicator of pricing accuracy.
Target: ≤ 21 days
Rent Achievement Rate
Actual signed rent ÷ listed price. Measures pricing calibration vs. market.
Target: 97–102%
On-Time Payment Rate
% of monthly rent payments received by due date (including grace period).
Target: ≥ 95%
Return Payment Rate
NSF / returned ACH as % of total transactions. Signals tenant financial health.
Target: ≤ 0.5%
Dispute Resolution Time
Median days from dispute opened to final resolution decision.
Target: ≤ 5 biz days
Billing Accuracy Rate
% of monthly statements issued with zero charge errors or required corrections.
Target: ≥ 99.5%
Compliance Exceptions
Count of charge postings blocked or corrected by the jurisdiction policy engine.
Target: 0 violations
Revenue per Unit (RPU)
Total collected revenue (rent + fees − concessions) ÷ occupied units per month.
Track vs. budget
Architectural Principles
| Principle | Description | Tag |
|---|---|---|
| Accounts Receivable | All charge and payment events are append-only. Corrections are new entries (credit memos), never overwrites. Full accounts receivable traceability from charge creation through GL posting provides a complete audit trail for disputes, legal, and audits. | Audit |
| Jurisdiction-First Rules Engine | All charge, fee, and tax rules are evaluated against a geo-resolved jurisdiction ruleset before posting. No charge can bypass the policy layer. | Compliance |
| Lease as Single Source of Truth | The signed lease document anchors all financial terms. Any deviation requires a lease addendum. Prevents configuration drift between the lease and the billing system. | Data Integrity |
| Tenant Transparency by Default | Every charge must have a human-readable description, posting date, and due date visible in the tenant portal. No opaque or unlabeled line items. | UX |
| Idempotent Charge Posting | Recurring charge jobs are idempotent — re-running the billing job for a period never creates duplicate charges. All charge events carry a unique idempotency key. | Reliability |
| Separation of Deposit & Revenue | Security deposits are held in separate trust / escrow accounts and never co-mingled with operating revenue. Mandated in most US states and many international jurisdictions. | Legal |