Placeful 2.8.2 — safer refunds and booking access
Highlights
- Refund recovery - Pending refunds remain in flight until a terminal result. Signed failures take precedence over stale responses, repeated events do not count money twice, and interrupted refund processing remains recoverable.
- Payment retries - An unresolved earlier payment blocks a second Checkout. Terminal recovery, releases and refunds retain the original Stripe account even when the venue changes its default account.
- Voucher decreases - Cash-backed guest decreases return the policy-priced cash and voucher shares without refunding previously earned retention. Eligible staff decreases return unused purchased-voucher coverage to the same code after the cash refund succeeds; approval requirements and historical balances stay unchanged.
- No-show safeguards - Unknown charge outcomes keep their reservation against the configured cap. Partial refund reversals require staff reconciliation rather than automatically making the fee refundable again.
- Financial exports - XLSX movement reports include no-show and dispute movements with supported amounts, currencies and dates. Ambiguous historical movements stay identifiable instead of acquiring guessed dates or period totals.
- Payout status - Failed payout updates clear only matching settlement markers. Reconciliation preserves existing payout dates rather than inferring attribution from unsupported receipt fields.
- Tip pools - New pools and previews use retained tips after refunds. Previously frozen distributions remain unchanged.
- Partner statements - Month validation and fixed-date booking selection avoid period drift. Settled totals remain frozen, while the linked booking details remain live.
- Booking permissions - Promo-code and cancellation-policy creation checks authorization on the initial page and Livewire updates. MCP booking tools reject unauthorized changes to another guest's booking. No-show fee refunds require refund permission, not seating permission.
- Bounded asynchronous payments - Checkout callbacks cannot renew the hold beyond the configured deadline measured from the first in-flight payment. Voucher coverage stays reserved within that window, and unresolved expiry or recovery outcomes generate staff review alerts.
- Win-back consent - Queued reminders recheck current marketing consent and the venue opt-in when sent.
- Calendar and Planner - Month-end dates no longer skip a month, calendar range inputs stay bounded, and leap-day comparisons do not spill into March. Hybrid area lists remain entry points, not availability promises; the selected day and window control admission.
- Plans and booking fees - Pricing labels distinguish platform booking fees from Stripe processing costs. Existing rates and account exemptions remain unchanged.
- Livewire assets - Published frontend assets are aligned with Livewire 4.4.8.
- Widget sign-in bridge - Browser-bound sign-in preserves the booking selection across password, social, passkey and two-factor authentication. The bridge remains disabled by default; activation requires the documented real-iPhone Safari verification.
- Developer feedback workflow - Escalated issue reports can sync to the configured GitHub repository through queued, replay-safe creation. Copilot assignment remains manual, developer-only and opt-in, with an explicit warning about paid quota and Actions minutes.