Passa al contenuto principale

Aceptar términos y condiciones de pagos

POST 

/payment/terms

Registra la aceptación de los términos y condiciones para procesar pagos con Stripe.

Acciones realizadas:

  • Registra timestamp e IP de aceptación
  • Crea cuenta Stripe para la compañía si no existe (usando toolsStripeCia.updateOnStripe)
  • Actualiza payment_settings.tos_acceptance en la compañía
  • Habilita pagos con Stripe si todo es exitoso

Validaciones:

  • Usuario debe estar autenticado (JWT válido)
  • Usuario debe pertenecer a una compañía válida
  • La compañía debe existir en la base de datos

Flujo técnico:

  1. Obtiene datos del usuario y compañía
  2. Prepara datos de aceptación (timestamp, IP)
  3. Si no existe cuenta Stripe, la crea
  4. Actualiza registro de términos aceptados
  5. Guarda cambios en la compañía

Respuestas posibles:

  • 200 OK: Términos aceptados exitosamente
  • 401 Unauthorized:
    • Token JWT inválido
    • Usuario no pertenece a compañía válida
    • Error al crear cuenta Stripe

Ejemplo de request:

// Frontend: Enviar aceptación de términos
const acceptTerms = async () => {
try {
const response = await axios.post(
'/truckers/payment/terms',
{},
{ headers: { Authorization: `Bearer ${token}` } }
);

if (response.data.success) {
proceedToPayments(); // Continuar a sección de pagos
}
} catch (error) {
handleError(error);
}
};

Notas importantes:

  • Este endpoint es requisito para habilitar pagos con Stripe
  • Solo se puede llamar una vez (la aceptación es permanente)
  • Registra la IP del servidor, no del cliente

Responses

Términos aceptados exitosamente