Change deposit to $45, add balance-due-at-pickup calculations

- DEPOSIT_AMOUNT changed from $100 to $45
- Balance (package price minus $45) shown dynamically in booking form when package selected
- Customer confirmation email shows breakdown: deposit hold + balance at pickup
- Admin email table includes deposit hold and balance columns
- Admin booking flow step 5 shows deposit held + balance at pickup
- Reminder email deposit detail updated to reflect held deposit and balance
- Live status field shows $45 during card authorization flow

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-05-22 18:38:04 +00:00
parent cca3129f6e
commit 10e1ffa27b
4 changed files with 47 additions and 21 deletions
+6 -6
View File
@@ -117,8 +117,8 @@ if ($isAjax) {
'cta' => '',
],
'deposit' => [
'label' => 'Security Deposit',
'detail' => 'A refundable security deposit is required at the time of pickup. Please have it ready — cash or card accepted. It will be returned in full upon safe return of the vehicle.',
'label' => 'Balance Due at Pickup',
'detail' => 'Your $' . number_format(DEPOSIT_AMOUNT, 2) . ' deposit hold has been placed on your card. The remaining balance is due at pickup — cash or card accepted. Your deposit hold will be released upon safe return of the vehicle.',
'cta' => '',
],
'license' => [
@@ -655,7 +655,7 @@ textarea.notes-ta:focus{border-color:#f97316}
<?= $depositLabel ?>
</div>
<div class="flow-body">
<span class="flow-label">Security Deposit — $<?= number_format(DEPOSIT_AMOUNT,0) ?></span>
<span class="flow-label">Deposit &amp; Balance — $<?= number_format(DEPOSIT_AMOUNT,2) ?> held · $<?= number_format($b['amount']-DEPOSIT_AMOUNT,2) ?> at pickup</span>
<span class="flow-meta" id="meta-<?= $bid ?>-deposit_received">
<?php if ($cancelled): ?>N/A
<?php elseif ($sqStatus === 'COMPLETED'): ?>Captured — $<?= number_format((float)($b['deposit_paid']??DEPOSIT_AMOUNT),2) ?> charged
@@ -922,9 +922,9 @@ function squareAction(id, action, btn) {
};
const [orig, working, done] = labels[action];
const confirmMsg = {
square_capture: 'Charge the deposit hold to this card?',
square_void: 'Void the deposit hold? The customer will NOT be charged.',
square_refund: 'Refund the full deposit to this card?',
square_capture: 'Charge the $<?= number_format(DEPOSIT_AMOUNT,2) ?> deposit hold to this card?',
square_void: 'Void the $<?= number_format(DEPOSIT_AMOUNT,2) ?> deposit hold? The customer will NOT be charged.',
square_refund: 'Refund the deposit to this card?',
}[action];
if (!confirm(confirmMsg)) return;
btn.disabled = true;