Hallo Patrick,
ich würde es mir da nicht so schwer machen. Warenkörbe stehenlassen - übertrag das mal in die analoge Welt. Ein Laden, wo zig gefüllte Warenkörbe unbegrenzte Zeit rumstehen, die vielleicht mal genutzt werden. Der Mehrwert für Kunden ist mE gering. Stattdessen würde ich Warenkörbe nach kurzer Zeit löschen, eine Woche, max 2 Wochen. Denn es kann sein, dass der Bestand sich mittlerweile so verändert hat, dass der Warenkorbinhalt oder Teile davon nicht mehr angeboten werden können. Das Löschen lässt sich auch automatisieren, durch ein datumsgesteuertes delete-sql an geeigneter Stelle, zb beim Login.
Und: ein Kunde müsste doch bereits im shop und nicht im checkout sehen, dass der Warenkorb voll ist? Insofern sollte der Überraschungseffekt nicht erst auf der Bestätigungsseite eintreten.
LG Volker