Rentiva v4.62.3 — Checkout Deposit Remaining-Amount Restore Fix
A patch release fixing a checkout bug where switching the payment-type option from "Full Payment" back to "Deposit Payment" left the remaining balance stuck at zero.
A patch release fixing a checkout bug where switching the payment-type option from "Full Payment" back to "Deposit Payment" left the remaining balance stuck at zero.
An internal hardening patch ensuring the Lite vehicle-limit counter reflects the true vehicle count independently of the public overflow-hiding filter.
A patch release fixing the Lite VIP transfer route limit counter, which silently failed to enforce the route cap on installs using the current routes table.
When a Pro license expires, catalog items added during the Pro period that exceed the Lite plan limits — vehicles, add-on services, and transfer routes — are now automatically hidden from the public site instead of staying live. Data is never deleted; everything is restored the moment you upgrade to Pro again.
When you approve a vendor payout, Rentiva now generates a printable, sequentially-numbered payment statement for the period — earnings, the platform commission deducted from each, penalties, and the net paid — frozen as an immutable record and emailed to the vendor. This release also adds a vendor agreement acceptance gate on the application form, an "Added by" column that distinguishes operator and vendor vehicles, and one-click day blocking in the Monthly Reservation Calendar.
Matured vendor payouts were silently skipped on single-site installs: a dead SaaS "control plane" gate in the matured-payout worker required a multi-tenant registry row that a normal install never provisions, so no scheduled payout ever finalized automatically. This release removes that gate — the worker now runs unconditionally — and clears out the unused multi-tenant orchestration scaffolding that caused it.
TransferSearchEngine had no location filter — a search for an İstanbul route returned vehicles parked in Ankara and Antalya. This release adds city-based vehicle matching (route origin's city), reusing the rental module's 3-layer hybrid filter (vehicle → vendor inheritance → global default) via a new expand_to_city mode. Plus a batch of UI/content polish: KPI spacing on list-table pages, dashboard card heights, About page hardening, and Vehicles calendar parity with the Bookings page.
AutoComplete cron compared dropoff_date < NOW() at date-only granularity. MySQL cast YYYY-MM-DD to YYYY-MM-DD 00:00:00, so any confirmed booking with a same-day dropoff was auto-completed at midnight — long before the actual return time. has_overlap() then skipped these wrongly-completed bookings (status filter excluded 'completed'), allowing the same vehicle to be double-booked for the remaining rental hours. This release fixes the cron, adds defense-in-depth at has_overlap(), opens a completed → in_progress Status transition, and ships a maintenance script to revert already-contaminated bookings.
Critical fixes for remaining-payment double-tax and orphan WC orders after auto-cancel. Dashboard widgets gain status badges, plate, location, and a deposit/remaining split. The About > Support tab adds a GitHub Issues card, test stats, and a changelog accordion. The License page moves to a 2-column grid, and Messages adopt a React 18 chat bubble UI. 88 new Turkish translations.
Horizontal scroll wrappers added to the remaining admin tables that overflowed on narrow viewports.