Process payment for a delivery
POST/company/payment/pay
Génère un Payment Intent Stripe pour payer le montant d'une livraison spécifique en utilisant le mode de paiement par défaut de l'entreprise.
Objectif
Initier le prélèvement auprès de l'entreprise pour une livraison attribuée, incluant la commission de la plateforme, et notifier les deux parties par email.
Cas d'utilisation
- L'entreprise paie pour une livraison attribuée via une enchère
- Règlement automatique des livraisons complétées
- Traitement des paiements entre entreprises et transporteurs
Flux de validation
flowchart TD
A[Reçoit la requête - serviceCode] --> B{Utilisateur authentifié ?}
B -->|Non| C[404 USER_NOT_FOUND]
B -->|Oui| D{Entreprise trouvée ?}
D -->|Non| E[401 CIA_NOT_FOUND]
D -->|Oui| F{withStripe activé ?}
F -->|Non| G[403 STRIPE_PAYMENTS_DISABLED]
F -->|Oui| H{default_payment_method défini ?}
H -->|Non| I[401 PAYMENT_METHOD_NOT_FOUND]
H -->|Oui| J{Livraison trouvée ?}
J -->|Non| K[401 DELIVERY_NOT_FOUND]
J -->|Oui| L[Calculer montant + frais plateforme]
L --> M[Générer Payment Intent dans Stripe]
M --> N[Sauvegarder payment_intent dans la livraison]
N --> O[Envoyer les emails aux deux parties]
O --> P[200 success: true]
Notes
- Requiert une authentification JWT (bearerAuth)
- Requiert
withStripe=truedans lespayment_settingsde l'entreprise - Requiert un mode de paiement par défaut (
default_payment_method) configuré - Les frais de plateforme sont obtenus depuis
Settings(par défaut 3%) - Envoie des emails à l'entreprise et au transporteur (trucker_cia)
- L'ID du
payment_intentest sauve
Request
Responses
- 200
- 401
- 403
- 404
- 500
Payment Intent créé et paiement initié
Response Headers
Société, livraison ou mode de paiement non trouvé
Response Headers
Paiements Stripe non activés pour cette entreprise
Response Headers
Utilisateur non trouvé
Response Headers
Erreur lors du traitement du paiement sur Stripe