Decisiones pendientes
Decisiones de producto/arquitectura que hay que cerrar antes (o durante el arranque) del
MVP. Cada una impacta en cómo se modela packages/shared y en los flujos. Referencia
ampliada en el PRD §18.
| # | Decisión | Opciones | Impacto |
|---|---|---|---|
| 1 | Modelo de "zona" | areas (partidos de Mercado Envíos + CABA por comunas y barrios), editable por admin. Falta cargar centroides lat/long para el matching con PostGIS. |
|
| 2 | Fraccionamiento de lotes | Un solo repartidor toma todo · se puede dividir entre varios (allowsSplit) |
Afecta matching y Assignment (ya soporta packageIds[]). |
| 3 | Asignación | Primero que acepta gana · scoring/cascada (match fuerte > reputación > cercanía > disponibilidad) | Lógica de matching y notificaciones. |
| 4 | Cálculo de la comisión | Se descuenta del precio (repartidor cobra 95 %) · se suma por encima | computePayout hoy asume descontada; cambiarlo es un ajuste localizado. |
| 5 | Ventana de confirmación | 24 h · 48 h · configurable por la empresa por publicación | confirmationWindowHours (default 48) en PlatformConfig. |
| 6 | Entrega a portería/tercero | Siempre permitida · sólo con autorización previa del destinatario · permitida pero penalizada | DELIVERED_TO_PROXY + proxyDetails; afecta reglas antifraude. |
| 7 | Cómo llega el código al destinatario | SMS · email · WhatsApp · link de seguimiento · lo provee la empresa o lo genera la plataforma | Canal de notificación y generación de confirmationCode. |
| 8 | Proveedor de pagos / cuenta recaudadora | MercadoPago (marketplace/split) · otro · esquema de custodia/escrow | Implementación de PaymentProvider (hoy mock). Implicancias legales (retener fondos de terceros en Argentina). |
| 9 | Integración con Mercado Envíos (API) | Desde el MVP (conciliar estados) · Fase 2 · ¿la empresa autoriza el acceso OAuth sobre su cuenta ML? | Cliente ML + lectura de mercadoEnviosStatus. El pago no depende de ML. |
| 10 | Pago instantáneo opcional | Ofrecerlo desde el MVP (con comisión extra) · no | Variante de liberación antes de la ventana. |
| 11 | Estado fiscal/laboral del repartidor | Independientes/monotributistas · otro | A validar con asesor; términos de uso. |
| 12 | Cobertura inicial | Qué corredor se lanza primero para asegurar liquidez (ej. CABA ↔ Zona Norte) | Onboarding focalizado por zona. |
Notas
- Lo ya tomado (reflejado en código): el pago se libera sólo en
CONFIRMED; la comisión se lee dePlatformConfigy se snapshotea porTransaction; elconfirmationCodeno se expone al repartidor; el Package es entidad de primera clase. - Nombre comercial: DaleRuta (definido; antes "RutaYa", liberado por conflicto de
dominio). Parametrizado vía
resolveAppName()— el rebrand fue, justamente, cambiar una env var (DEFAULT_APP_NAMEenpackages/shared/src/brand.ts). Slogan: "Dale ruta a tus envíos" (web) / "Dale ruta a tus entregas" (mobile). - Modelo de zona: resuelto como catálogo
areas(decisión #1).