Eliminar método de pago
DELETE/company/payment/payment_method/:id
Purpose
Elimina permanentemente un método de pago (tarjeta) de la cuenta Stripe de la compañía.
Objective
Permitir la depuración del portafolio de métodos de pago eliminando tarjetas obsoletas que no estén actualmente en uso.
Use Cases
- Eliminar una tarjeta caducada
- Remover una tarjeta añadida por error
- Depurar la lista de métodos de pago (máx. 10)
Validation Flow
flowchart TD
A[Receive Request - id] --> B{User authenticated?}
B -->|No| C[404 USER_NOT_FOUND]
B -->|Yes| D{Company found?}
D -->|No| E[401 CIA_NOT_FOUND]
D -->|Yes| F{stripe_customer exists?}
F -->|No| G[404 STRIPE_CUSTOMER_NOT_FOUND]
F -->|Yes| H{PM belongs to customer?}
H -->|No| I[401 PAYMENT_METHOD_NOT_FOUND]
H -->|Yes| J{PM active in deliveries?}
J -->|Yes| K[401 PAYMENT_METHOD_IN_USE]
J -->|No| L[Delete from Stripe]
L --> M[200 success: true]
Notes
- Requiere autenticación JWT (bearerAuth)
- No se puede eliminar si está activo en deliveries con
payment_intentpagados - No se puede eliminar si es el método predeterminado (
is_default: true) - La eliminación en Stripe es permanente (no recuperable)
Request
Responses
- 200
- 401
- 404
- 500
Método de pago eliminado exitosamente
Response Headers
Compañía no encontrada, método no existente o en uso activo
Response Headers
Usuario o cliente Stripe no encontrado
Response Headers
Error al eliminar en Stripe