Saltar al contenido principal

Sistema de Comisiones

El sistema de comisiones determina cuánto retiene Floutic de cada pago como comisión de plataforma antes de transferir el neto al experto.

Arquitectura

La lógica de comisiones está en app.services.commission_service.CommissionService. Las tasas se almacenan en la base de datos mediante el modelo CommissionConfig, lo que permite ajustes sin cambios en el código.

Modelo de Datos

CommissionConfig

CampoTipoDescripción
levelString (PK)Nivel del experto (Global, Pro, Enterprise)
rateNumeric(5,4)Tasa de comisión (ej. 0.0500 = 5%)
updated_atDateTimeÚltima actualización

Campos en Payment

CampoTipoDescripción
commission_amountNumeric(10,2)Comisión calculada al liberar
expert_amountNumeric(10,2)Monto neto para el experto
expert_level_usedStringNivel del experto capturado al momento del pago

Flujo de Cálculo

  1. Al liberar un pago (release_payment o release_and_charge_next), el sistema consulta la tasa de comisión según el nivel actual del experto.
  2. Se calculan los montos:
    • commission_amount = amount × rate
    • expert_amount = amount - commission_amount
  3. Se almacenan ambos valores en el registro de Payment.
  4. La transferencia a la cuenta Connect del experto es por expert_amount.

[!IMPORTANT] La comisión se captura como diferencia entre el monto capturado del PaymentIntent y el monto transferido al experto. No se usa Application Fee de Stripe.

Endpoints de Administración

MétodoPathDescripciónAuth
GET/api/admin/commission-configListar todas las configuracionesAdmin
PUT/api/admin/commission-config/bulkActualizar configuraciones en loteAdmin
GET/api/admin/commission-config/{level}Obtener configuración por nivelAdmin
PUT/api/admin/commission-config/{level}Actualizar configuración por nivelAdmin

Niveles de Experto

NivelDescripciónTasa típica
GlobalTasa por defecto para todos los expertos5%
ProExpertos con nivel ProConfigurable
EnterpriseExpertos con nivel EnterpriseConfigurable

[!TIP] Las tasas se pueden modificar desde el panel de administración sin necesidad de reiniciar el servicio.

Relación con el Flujo de Pagos

Para más detalles sobre cómo las comisiones se integran en el flujo de pagos completo, consulta Pagos.

Para la configuración de Stripe Connect, consulta Configuración de Stripe.