SkipDocumentación Skipdocs
Prompts

Tiempo integración

Estima en días-persona cuánto tarda tu equipo en integrar Skip, dado tu stack.

Cuéntale a tu agente cómo es tu equipo y tu stack. Recibe de vuelta un desglose por fases — cuántos días-persona toma cada paso, qué se puede hacer en paralelo y cuándo es realista lanzar.

Completa tu contexto

Copia el prompt compuesto

Completa los campos obligatorios para activar la copia: ¿Qué productos Skip vas a integrar?, Stack del backend, Stack del frontend, Ingenieros/as disponibles, Flujo actual de checkout del paciente (alto nivel).

# Resumen de integración Skip

Skip es una plataforma chilena de salud con dos productos que los partners integran:

## Spot
Onboarding de pacientes y automatización de boletas médicas. Tres formas de integración:
- Widget: el backend mintea un token de un solo uso (POST /api/spot/widget), se embebe un iframe en el sitio del partner, el paciente llena un formulario, el partner escucha eventos postMessage.
- POS: flujo de mostrador. El personal hace lookup por RUT, crea usuario. Sin iframe.
- Boletas: el backend empuja boletas a /api/spot/gastos (archivo) o /api/spot/gastos-url (URL). La IA extrae los datos, el reembolso ISAPRE se presenta automático.

Auth: public_key (browser-safe, query param). Algunos endpoints admin usan un header secret_key aparte.

## AAPD / CNPL
"Atiéndete Ahora y Paga Después". 30% pagado al momento con tarjeta, 70% financiado por Ventipay (proveedor de préstamo, totalmente gestionado por Skip), reembolso ISAPRE presentado automático. Skip cobra el 70% restante cuando la ISAPRE paga — o antes si hay 3 días de acceso ISAPRE bloqueado, o al día 45 sin aprobación.

Endpoints (gokeipay-api en https://pay.getskip.ai):
- POST /orders (auth: client_secret) — crea la orden, devuelve hash
- POST /orders/{hash}/validate_customer_identity (auth: client_id) — el widget llama esto
- POST /orders/{hash}/add_payment_method (auth: client_id) — el widget llama esto
- POST /orders/{hash}/payment (auth: client_id) — el widget llama esto
- PUT /orders/{hash}/refund (auth: client_secret) — reembolso total o parcial

Credenciales de auth:
- public_key: browser-safe, para Spot.
- client_id: browser-safe, para operaciones de paciente AAPD.
- client_secret: solo backend, para creación de órdenes/reembolsos AAPD.
- webhook_secret: solo backend, para verificar firmas HMAC-SHA256 de webhooks.

## Webhooks (AAPD)
SkipPay envía webhooks firmados a una URL hosteada por el partner.
- Firma: X-Gokeipay-Signature: sha256={hex}, HMAC-SHA256 sobre el body JSON crudo usando webhook_secret.
- Retries: 6 intentos con backoff exponencial (1m, 5m, 15m, 30m, 60m). Timeout: 10s por intento.
- Eventos que reciben los partners: order.paid, order.partially_paid, order.refunded, order.failed, order.cancelled.
- Siempre incluye event_id para idempotencia.

## Ambientes
- Producción: backend.getskip.ai (Spot), pay.getskip.ai (AAPD), spot.getskip.ai (host del widget).
- Staging: mismos hosts con prefijo staging., ej. staging.backend.getskip.ai. Credenciales de prueba son pk_test_*, ci_test_*, st_test_*.
- Presentación ISAPRE en staging está mockeada (no se presentan reembolsos reales).
- Ventipay en staging es sandbox (no se mueve plata real).

## Fases típicas de integración
1. Emisión de cuenta y credenciales (equipo Skip).
2. Creación server-side de órdenes (solo AAPD): POST /orders.
3. Minteo server-side de widget tokens: POST /api/spot/widget.
4. Embed del iframe + manejo de eventos postMessage en frontend.
5. Receptor de webhooks: endpoint HTTPS + verificación HMAC + procesamiento idempotente.
6. Test end-to-end en staging con pacientes de prueba.
7. Rollout a producción.

Skip se encarga de: presentación de reembolsos ISAPRE, retries de pago, notificaciones WhatsApp/email al paciente, payouts a sub-centros (para meta-prestadores). Los partners no implementan nada de esto.

## Conceptos
- Provider: la ficha del partner en la base de datos de Skip.
- Beneficiary: la ficha del paciente. Identificada por RUT.
- ISAPRE: aseguradora privada chilena de salud. Las credenciales del paciente se guardan en Skip; Skip presenta los reembolsos en su nombre.
- RUT: ID nacional chileno. Formato XXXXXXXX-Y donde Y es un dígito verificador (0-9 o K). Skip normaliza (saca los puntos).
- order_token: igual al campo hash que devuelve POST /orders. Pásalo al widget para activar el flujo AAPD.
- widget_token: UUID que identifica un TempWidgetToken. TTL de 1 hora, o 30 días para long-term tokens.
- meta-prestador: partner que opera con muchas sub-clínicas detrás de una sola integración. Onboardea sub-clínicas vía POST /api/spot/sacmed/centers, después pasa provider_rut en POST /orders.

## Qué los partners NO construyen
- Integración con la ISAPRE (Skip se encarga).
- Underwriting de crédito/préstamo (Ventipay se encarga).
- Despacho de notificaciones al paciente (Skip se encarga).
- Liquidación / payouts (Skip se encarga).
- Almacenamiento de tarjetas / scope PCI (Ventipay se encarga).


# Contexto de nuestro equipo
- Productos a integrar: 
- Stack del backend: 
- Stack del frontend: 
- Ingenieros disponibles: 
- Flujo actual de checkout del paciente:

- Otros constraints: ninguno declarado

# Tu tarea
Produce una línea de tiempo de integración Skip por fases en días-persona para nuestro equipo. Para cada fase, lista el entregable concreto, la estimación en eng-días (sé específico — asume ingenieros mid-level), y cualquier dependencia de trabajo lado Skip (emisión de credenciales, setup de ambiente). Cubre: setup de cuenta/credenciales, creación server-side de órdenes (si AAPD), minteo de widget token, embed del iframe en frontend, receptor de webhooks, test end-to-end en staging, rollout a producción. Marca riesgos específicos a nuestro stack y cuáles fases se pueden paralelizar. Termina con una línea con la "fecha realista de lanzamiento más temprana" desde hoy.

Cómo debería verse la respuesta

Ver ejemplo de salida

Línea de tiempo estimada (AAPD, 1 ingeniero, Node.js + Next.js, infra moderna)

FaseEntregableDíasDepende de
0. Cuenta + credencialesSkip emite pk_, ci_, st_*, webhook_secret~0 (equipo Skip)onboarding call
1. Endpoint server-side de órdenesPOST /api/cnpl/init que llama a SkipPay POST /orders y mintea el widget token0.5fase 0
2. Iframe en frontendModal + listener de postMessage0.5fase 1
3. Receptor de webhooksRoute handler con verificación HMAC e idempotencia por event_id1fase 0
4. E2E en stagingDos pacientes de prueba pasando todo el flujo1fases 1-3
5. Rollout a prodCambio de credenciales, smoke test0.5fase 4
Total~3.5 días

Riesgos:

  • Ninguno relevante. El stack ya soporta JSON+Bearer, HMAC y embeds nativamente.

Paralelizable:

  • Fase 3 (webhooks) puede correr en paralelo con fases 1-2.

Lanzamiento realista más temprano: hoy + 4 días hábiles.