Zum Hauptinhalt springen

Cancel delivery service

DELETE 

/company/delivery/:service_code

Storniere eine bestehende Sendung, indem Sie ihren Status auf 'canceled' und rejectedBy auf 'cia' setzen. Nur Sendungen mit den Status 'planned' oder 'replanned' können storniert werden.

Ziel

Unternehmen zu ermöglichen, geplante Sendungen zu stornieren, wenn sie nicht mehr durchgeführt werden sollen, und dabei automatisch die erforderlichen Aktionen in Stripe und auctions zu verarbeiten.

Anwendungsfälle

  • Eine geplante Sendung stornieren, die nicht mehr durchgeführt wird
  • Eine neu geplante Sendung aufgrund logistischer oder geschäftlicher Probleme stoppen
  • Eine fehlerhaft geplante Sendung rückgängig machen, bevor sie beginnt
  • Aufgrund von Änderungen an der Ladung oder dem Ziel stornieren

Nebeneffekte

  • Ändert den Status auf 'canceled'
  • Setzt rejectedBy='cia'
  • Storniert die payment_intent in Stripe (verarbeitet Rückerstattung, falls zutreffend)
  • Storniert die zugehörige Auktion, falls vorhanden

Validierungsablauf

flowchart TD
A[Stornierungsanfrage empfangen] --> B{Sendung existiert?}
B -->|Nein| C[404 NOT_FOUND]
B -->|Ja| D{Gehört Sendung zum Unternehmen?}
D -->|Nein| E[403 NOT_ALLOWED]
D -->|Ja| F{Ist Finalstatus?}
F -->|Ja| G[401 NOT_ALLOWED]
F -->|Nein| H{Status ist stornierbar?}
H -->|Nein| I[401 NOT_ALLOWED]
H -->|Ja| J[Status auf canceled setzen]
J --> K[rejectedBy auf cia setzen]
K --> L{Stripe-Zahlung stornieren}
L -->|Fehler| M[403 CANT_CANCEL_PAYMENT]
L -->|Erfolg| N{Auktion stornieren}
N -->|Erfolg| O[Speichern - 200]

Hinweise

  • Nur Sendungen mit den Status '

Request

Responses

Versand erfolgreich storniert