Aller au contenu principal

Paiements

Stripe Integration

L'API utilise Stripe pour les paiements sécurisés.

Créer un paiement

Le paiement est créé automatiquement lors de la réservation. L'URL de paiement Stripe est retournée dans la réponse.

{
"success": true,
"data": {
"reservation_id": 123,
"payment_url": "https://checkout.stripe.com/pay/cs_xxx"
}
}

Vérifier un paiement

Après redirection Stripe :

GET /quotes/payment/verify?session_id=cs_xxx

Réponse

{
"success": true,
"data": {
"status": "paid",
"reservation_id": 123,
"amount": 834.10,
"currency": "EUR"
}
}

Paiement de supplément

Quand une modification de réservation génère un supplément :

POST /reservations/{id}/invoice?is_supplement=true
Authorization: Bearer <token>

Réponse

{
"success": true,
"data": {
"invoice_url": "https://checkout.stripe.com/pay/cs_xxx",
"amount": 120.00,
"currency": "EUR"
}
}

Remboursements

Initier un remboursement (Support)

POST /payments/{id}/refund
Authorization: Bearer <token>

Body

{
"amount": 100.00,
"reason": "Annulation partielle"
}

Webhook Stripe

Les événements Stripe sont reçus sur :

POST /stripe/webhook

Événements gérés

ÉvénementAction
checkout.session.completedConfirme la réservation
payment_intent.succeededMet à jour le statut
payment_intent.payment_failedMarque comme échoué
charge.refundedMet à jour le remboursement

Méthodes de paiement utilisateur

Liste des méthodes

GET /user-payment-methods
Authorization: Bearer <token>

Ajouter une méthode

POST /user-payment-methods
Authorization: Bearer <token>
{
"payment_method_id": "pm_xxx",
"is_default": true
}

Supprimer une méthode

DELETE /user-payment-methods/{id}
Authorization: Bearer <token>