Get the on-time rent summary
Returns what share of the rent charges due in the last 60 days were paid in full by their deadline.
Authorization
AuthorizationstringrequiredQuery parameters
skipCachebooleanSet true to recompute instead of reading the cached figure. The fresh result is still written back to the cache, which holds for four hours.
Response
200 · The on-time rent figures.
totalChargesintegerHow many rent charges in the window had passed their deadline and had a positive amount.
onTimeChargesintegerHow many of those were fully paid on or before the deadline.
onTimePercentagenumberonTimeCharges over totalCharges as a percentage, rounded to two decimals. 0 when totalCharges is zero.
401 · The access token is missing, expired, or not for this company.
403 · The access token is not for a property manager.
Charges are taken from the last 60 days by due date, restricted to the chart-of-account entries the company's late-fee settings count as rent — or MagicDoor's built-in Rent Income account, number 410000, when that setting is empty.
Each charge's deadline is its due date plus the grace period that applies to it, resolved down the lease, unit, property and portfolio overrides. A charge counts as on time when it has been paid in full and the last payment was applied on or before that deadline.
Charges with a zero or negative amount are skipped, and so is any charge still inside its grace period — its outcome is not decided yet, and counting it as on-time would flatter the number. totalCharges is therefore the count of mature charges, not of all charges due in the window.
The answer is cached per company for four hours, so it can lag activity by that much. Pass skipCache=true to force a recompute.