Screen · Ampliación de límite

Ampliación de límite N1 → N2

Flujo interior (ruta /profile/kyc-levels/upgrade) con dos entradas: el CTA "Solicitar ampliación de límite" en Niveles KYC y el modal de tope alcanzado del money-input. Tres momentos: requisitos → carga de documentos → estado de la solicitud. La tabla de topes de los 3 niveles vive en screens-kyc-levels — aquí no se duplica. Aprobación manual, tiempo estimado 1–3 días hábiles.

/profile/kyc-levels/upgrade POST /v1/kyc/upgrade revisión manual · 1–3 días hábiles vault limites-operativos §2
Momento 1 · requisitos

Antes de pedir nada, la pantalla dice qué se necesita, quién revisa y cuánto tarda. Los requisitos vienen del vault limites-operativos §2: origen de fondos documentado (carta firmada o extractos de 3 meses) + declaración ampliada de actividad económica.

qué vas a necesitar
carta O extractos · alternativa
expectativa honesta · 1–3 días
9:41
Ampliar mi límite
1 / 3

Qué vas a necesitar

Para pasar al nivel 2, la ley nos pide documentar el origen de tus fondos.

Origen de fondos documentado
Una carta firmada que explique de dónde vienen tus recursos, o extractos bancarios de los últimos 3 meses.
Declaración de actividad económica
Versión ampliada de la que hiciste al registrarte: ocupación, sector y rango de ingresos.
Una persona del equipo revisa tu solicitud. Tarda entre 1 y 3 días hábiles; te avisamos por notificación.
Comenzar

Composición

  1. Entradas al flujoDesde screens-kyc-levels (CTA de nivel) y desde el modal de tope alcanzado del money-input (error d2/d3). Ambas llegan a este momento 1.
  2. Requisitos sin tablaLos topes por nivel no se repiten aquí — el link natural de vuelta es el back hacia Niveles KYC. Esta pantalla habla solo de documentos.
  3. Alternativa explícitaCarta firmada o extractos — el "o" va resaltado; el usuario elige el camino en el momento 2, no aquí.
  4. Expectativa honestaRevisión manual por una persona + 1–3 días hábiles. Nada de "aprobación instantánea". El copy justifica el pedido ("la ley nos pide") sin citar umbrales internos.
Momento 2 · carga — y momento 3 · estado

Upload con estados por archivo (vacío → subiendo → cargado). El estado de la solicitud es un tracker vertical: enviada → en revisión → aprobada/rechazada.

2 · carga de documentos
9:41
Ampliar mi límite
2 / 3

Adjunta tus documentos

PDF o foto. Máximo 10 MB por archivo.

Extractos bancarios · 3 meses
extractos_abr-jun.pdf · 2,4 MB
Declaración de actividad
Subiendo… 60%
Otro soporte (opcional)
Contrato, certificado laboral…
Adjuntar
Enviar solicitud
3 · en revisión
9:41
Mi solicitud

Solicitud en revisión

Enviada el 6 jul 2026 · 14:32

Enviada
Recibimos tus documentos.
En revisión
Una persona del equipo la está revisando. Estimado: 1–3 días hábiles.
Resultado
Te avisamos por notificación.
Mientras tanto sigues operando con tus límites actuales.
3 · rechazada
9:41
Mi solicitud

No pudimos aprobarla

Revisada el 8 jul 2026

Enviada
Recibimos tus documentos.
Revisada
La revisión terminó.
No aprobada
Con la documentación recibida no pudimos completar la validación. Puedes intentarlo de nuevo con soportes adicionales.
Intentar de nuevo
Hablar con soporte

Línea roja de lenguaje. El rechazo usa motivo genérico ("no pudimos completar la validación") + CTA a soporte. Nunca lenguaje de sospecha ("inconsistencias", "actividad inusual", "no pasaste la verificación"), nunca referencia a listas ni a umbrales SAGRILAFT — esos valores (USD 150/450) jamás aparecen en UI. Los topes operativos del nivel sí son transparentes, y viven en screens-kyc-levels.

Estados restantes · y dark 360dp
Upload fallido
9:41
Ampliar mi límite
2 / 3
Declaración de actividad
No se pudo subir. Revisa tu conexión.
Reintentar
Otro soporte (opcional)
Contrato, certificado laboral…
Adjuntar
Dark · aprobada
9:41
Mi solicitud

Límite ampliado

Revisada el 7 jul 2026

Enviada
Recibimos tus documentos.
Revisada
La revisión terminó.
Aprobada · ya estás en nivel 2
Tus nuevos topes ya aplican. Míralos en Niveles y límites.
Ver mis límites

Reglas de estado

  1. Upload por archivoCada slot maneja su ciclo: vacío → subiendo (barra) → cargado (check + nombre + peso) → error (reintentar). El CTA global habilita con los 2 obligatorios cargados.
  2. Solicitud únicaCon una solicitud pendiente, las entradas al flujo redirigen al momento 3 (estado) — nunca se duplica el envío.
  3. AprobadaTracker completo en verde + CTA "Ver mis límites" → screens-kyc-levels con los topes nuevos. Notificación "Ampliación de límite aprobada" ya existe en el centro.
  4. Offline / cargaSkeleton del tracker al cargar estado; offline muestra el último estado cacheado con banner neutro.
Notas de implementación · Flutter

Upgrade request + uploads

Endpoints

POST /v1/kyc/upgrade multipart {documents[], declaration} → {request_id, status: submitted}. GET /v1/kyc/upgrade/current para el momento 3. Estados: submitted · in_review · approved · rejected.

Uploads

file_picker (PDF) + image_picker (foto). Compresión de imagen client-side a ≤2 MB. Subida por archivo con Dio + progreso; reintento por slot, no global.

Guard de solicitud

El router consulta upgrade/current: si hay solicitud viva, /upgrade redirige a /upgrade/status. El CTA en Niveles KYC cambia a "Ver mi solicitud".

Motivo de rechazo

El backend solo envía rejection_kind: generic — el cliente renderiza copy fijo. Igual que SAGRILAFT en notificaciones: imposible filtrar causa en UI.

Notificaciones

Cambio de estado → notificación tipo limitChange (ya canónica) con deep-link a /profile/kyc-levels.

Accesibilidad

Tracker con Semantics de progreso ("Paso 2 de 3: en revisión"). La barra de upload anuncia porcentaje cada 25%.