Shipping Rates

Ergänzt Payload-E-Commerce-Shops um Versandzonen, Tarifberechnung und einen Quote-Endpunkt.

Community 1 1/Wo. MIT v1.0.0

Installation

pnpm add payload-shipping-rates

Über

Payload-Shops mit `@payloadcms/plugin-ecommerce` haben ein Versandadressfeld auf Bestellungen, aber sonst nichts. Dieses Plugin schließt diese Lücke vor dem Checkout. Es fügt dem Admin eine `shipping-zones`-Collection hinzu, eine `shipping`-Feldgruppe an Warenkörben und Bestellungen zur Speicherung der gewählten Methode und einen Endpunkt `POST /api/shipping-rates/quote`, der die Versandkosten für eine Adresse berechnet. Eine Zone matcht nach Land (namentlich genannt oder als Platzhalter `*` für alle Länder) und optional nach Postleitzahlenmustern. Vier Formen werden unterstützt: numerische Bereiche wie `1000...1999`, Präfix-Platzhalter wie `SW1*`, ein Catch-all `*` und exakte Treffer. Treffen mehrere Zonen auf eine Adresse zu, gewinnt eine einzige. Die Auswahl folgt erst einer expliziten Priorität, dann der Spezifität (Postleitzahlmatch schlägt Ländermatch, namentlich genanntes Land schlägt Platzhalter), dann der niedrigeren Zonen-ID. Das Ergebnis ist für denselben Warenkorb und dieselbe Adresse deterministisch. Jede Zone enthält beliebig viele Versandmethoden. Fünf Typen stehen zur Verfügung: `flat` berechnet einen festen Betrag, `free_over` verlangt nichts, sobald der Warenwert eine Schwelle überschreitet, `weight_bands` und `price_bands` ordnen den Warenkorb in eine Band ein, basierend auf Gewicht oder Warenwert, und `local_pickup` erhebt einen festen Betrag, der in der Regel null ist. Bands nutzen ein inklusives `from` und ein exklusives `to`. Ohne `to` gibt es keine obere Grenze. Vor der Auswertung werden die Bands nach `from` sortiert, sodass die Reihenfolge der Eingabe das Ergebnis nie beeinflusst. Alle Beträge sind Ganzzahlen in Minoreinheiten, passend zu den Preiseinheiten des offiziellen E-Commerce-Plugins. Eine Methode, die sich nicht kalkulieren lässt, wird mit einem Grund zurückgezogen statt als null taxiert. Gründe sind `below_threshold`, `class_excluded`, `misconfigured`, `no_band`, `subtotal_unknown` und `weight_unknown`. Deckt keine Zone die Adresse ab, antwortet der Endpunkt mit `available: false` und `reason: 'no_matching_zone'`. Das Plugin hat keine Runtime-Abhängigkeiten und keine Admin-Komponenten. Es benötigt Payload ab Version 3.88 und das offizielle E-Commerce-Plugin in derselben Version. Die Option `weightUnit` (g, kg, lb, oz) steuert, wie Gewichtsgrenzen interpretiert werden.

Paketinformationen

Paketname
payload-shipping-rates
Neueste Version
1.0.0
Entpackte Größe
50 kB
Lizenz
MIT
Wöchentliche Downloads
1
Zuletzt veröffentlicht
21. Aug. 2026

Mehr von Poseidonas

Profil ansehen

Ähnliche Plugins

Mehr in Commerce