Stock Reservation
Prüft Variantenbestand und Preis vor dem Checkout und hält reservierten Bestand bis zur Zahlungsbestätigung, als Erweiterung des offiziellen Payload-E-Commerce-Plugins.
Installation
pnpm add payload-stock-reservation Über
Dieses Plugin setzt auf `@payloadcms/plugin-ecommerce` und behebt zwei Lücken im Checkout-Prozess. Das offizielle Plugin liest die Verfügbarkeit in `initiatePayment` und verringert den Bestand in `confirmOrder`, schreibt aber dazwischen nichts. Zwei Kunden können die Prüfung für dieselbe letzte Einheit passieren. Das offizielle Plugin prüft Variantenbestand und Preis überhaupt nicht, weil der Varianten-Zweig in einer Bedingung liegt, die voraussetzt, dass der Artikel keine Variante hat. Beide Probleme führen dazu, dass der Bestand nach der Zahlung negativ wird. `stockReservationPlugin` umschließt die Endpunkte `post /payments/:adapter/initiate` und `post /payments/:adapter/confirm-order`, anstatt sie zu ersetzen. Vor der Initiierung wird der Warenkorb neu gelesen, jede Position gegen den erfassten Bestand minus aktive Holds geprüft und ein Hold außerhalb der Request-Transaktion geschrieben, damit konkurrierende Requests ihn sofort sehen. Holds für dasselbe Produkt oder dieselbe Variante werden nach Alter sortiert, mit Identifikator als Tie-Breaker. Ein Hold behält seinen Bestand nur, wenn die laufende Summe bis einschließlich seiner Position im erfassten Bestand liegt. Bei der Bestätigung läuft der ursprüngliche Handler zuerst, danach werden die Holds des Warenkorbs freigegeben. Das Plugin fügt eine einzelne `stock-holds`-Collection mit indizierten Feldern für `cart`, `stockCollection`, `stockDocument` und `expiresAt` hinzu. Es werden keine Felder an Produkte, Varianten, Warenkörbe oder Bestellungen angefügt. Die Collection ist für API-Zugriffe gesperrt und im Admin-Panel verborgen. Ein Endpunkt `/stock-reservation/release-expired` löscht abgelaufene Holds und akzeptiert entweder einen angemeldeten Benutzer oder einen `Bearer`-Secret. `sweepOnCheckout` löscht zu Beginn jedes Checkouts die abgelaufenen Holds für den aktuellen Warenkorb, sodass kein Scheduler erforderlich ist. Zu den Optionen gehören `ttlSeconds` (Standard 900), `defaultCurrency`, `refuseNegativeInventory`, `holdScanLimit`, `sweepOnCheckout`, `releaseSecret` und Slug-Overrides für die Collections. Das Plugin muss nach `ecommercePlugin` gelistet werden und gibt beim Start einen Fehler aus, wenn keine Checkout-Endpunkte zum Umschließen gefunden werden. Es hat keine Laufzeitabhängigkeiten und keine Admin-Komponenten. Getestet gegen Payload 3.88.0, erforderlich ist Payload 3.88 oder neuer unter 4.
Paketinformationen
- Paketname
payload-stock-reservation- Neueste Version
1.0.0- Entpackte Größe
- 40 kB
- Lizenz
- MIT
- Wöchentliche Downloads
- 1
- Zuletzt veröffentlicht
- 21. Aug. 2026
Mehr von Poseidonas
Profil ansehenBarcodes
Fügt Payload-Produktkollektionen Code 128, EAN-13 und QR-Codes hinzu, inklusive einer druckbaren Label-Seite und optionalen Admin-Buttons.
AI Manager
Schreibt Produkttitel, Beschreibungen, Attribute und Übersetzungen in Payload-Felder über Claude, ChatGPT, Gemini oder Kimi und überspringt bereits generierte Inhalte.
EU VAT
Berechnet EU-Mehrwertsteuer fuer Payload-Shops mit plugin-ecommerce und schreibt die Aufschluesselung auf jede Bestellung.
Stock Alerts
Sendet eine E-Mail, wenn der Bestand eines Produkts oder einer Variante einen Schwellenwert unterschreitet, mit Backorder-Unterstuetzung und einem virtuellen Status-Feld.
Shipping Rates
Ergänzt Payload-E-Commerce-Shops um Versandzonen, Tarifberechnung und einen Quote-Endpunkt.
Shipping Classes
Erweitert Payload-Produkte und -Varianten um Gewicht, Abmessungen und Versandklassen, mit kanonischen Werten in Gramm und Millimetern.
Ähnliche Plugins
Mehr in CommerceProduct Reviews
Ergänzt Payload v3 um eine Reviews-Collection mit Sternebewertung, Moderationsstatus und JSON-LD aggregateRating.
Stripe
Synchronisiert Payload-Collections mit Stripe-Ressourcen und leitet Stripe-Webhooks sowie API-Aufrufe über Payload.
Tpay E-commerce Payment Adapter
Tpay-Zahlungsadapter für @payloadcms/plugin-ecommerce mit BLIK, Überweisung und Kartenzahlung sowie Webhook-Verifikation und bestandsbewusster Bestellbestätigung.
Google Merchant Center Ecommerce Integration
Synchronisiere Produkte zwischen Payload CMS und Google Merchant Center.