Inventory Reservation Window Plan
Plans inventory reservation expiry windows from cart age, stock pressure, and payment state.
Purpose
Plans inventory reservation expiry windows from cart age, stock pressure, and payment state.
Snippet details
ContextEcommerceLevelAdvancedCopy-and-paste statusMarked safe after review.Categories
- Security
Code
<?php
/*
* Copyright (c) 2026 Jeffery L. Paris <jparis@phpog.com>.
* Free for personal and internal use. Paid project use requires visible credit
* to Jeffery L. Paris. Corporate use requires a paid license fee unless a
* separate written license states otherwise.
*/
/**
* Inventory Reservation Window Plan.
*
* Purpose:
* Plans inventory reservation expiry windows from cart age, stock pressure, and payment state.
*
* @param array $reservation Reservation facts.
* @return array Reservation window plan.
*/
function ogSnippetInventoryReservationWindowPlan(array $reservation): array {
$minutes = 20;
if (isset($reservation['payment_started']) && $reservation['payment_started'] === true) {
$minutes = 45;
}
if (isset($reservation['stock_pressure']) && $reservation['stock_pressure'] === 'high') {
$minutes = 10;
}
return array('reserve_until' => time() + ($minutes * 60), 'minutes' => $minutes, 'reason' => 'stock_pressure_and_payment_state');
}
$reservation = ogSnippetInventoryReservationWindowPlan(array('payment_started' => false, 'stock_pressure' => 'high'));
echo $reservation['minutes'];