> ## Documentation Index
> Fetch the complete documentation index at: https://docs.play2sell.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Integraciones personalizadas

> Guía para construir integraciones personalizadas con SalesOS usando la API REST y webhooks.

# Integraciones personalizadas

Si las integraciones pre-construidas no cubren tus necesidades, puedes construir integraciones personalizadas usando la API REST y los webhooks de SalesOS.

## Opciones de integración

<CardGroup cols={3}>
  <Card title="API REST" icon="code">
    Interacción directa con los endpoints de SalesOS para leer y escribir datos.
  </Card>

  <Card title="Webhooks" icon="webhook">
    Recibe notificaciones en tiempo real cuando ocurren eventos en SalesOS.
  </Card>

  <Card title="SalesOS Connect" icon="plug">
    Usa n8n como middleware para orquestar integraciones sin código.
  </Card>
</CardGroup>

## Patrones de integración comunes

<Tabs>
  <Tab title="Sincronización unidireccional">
    ### Datos del sistema externo hacia SalesOS

    Ideal cuando una fuente externa genera datos que deben reflejarse en SalesOS.

    **Ejemplo:** Leads de un formulario web se crean automáticamente en SalesOS.

    ```
    Sistema externo → API REST → SalesOS
    ```
  </Tab>

  <Tab title="Sincronización bidireccional">
    ### Datos en ambas direcciones

    Mantiene los datos sincronizados entre SalesOS y un sistema externo.

    **Ejemplo:** Actualizaciones de contacto se reflejan tanto en SalesOS como en el ERP.

    ```
    SalesOS ↔ Middleware (n8n) ↔ Sistema externo
    ```
  </Tab>

  <Tab title="Eventos en tiempo real">
    ### Reaccionar a eventos de SalesOS

    Ejecuta acciones en sistemas externos cuando ocurren eventos en SalesOS.

    **Ejemplo:** Enviar un mensaje a Slack cuando se cierra un negocio.

    ```
    SalesOS → Webhook → Tu servidor → Slack
    ```
  </Tab>
</Tabs>

## Guía de implementación

<Steps>
  <Step title="Planifica la integración">
    Define claramente qué datos necesitas sincronizar, en qué dirección y con qué frecuencia.
  </Step>

  <Step title="Obtén credenciales">
    Configura la [autenticación](/es/api/authentication) para obtener tokens de acceso a la API.
  </Step>

  <Step title="Implementa la lógica">
    Desarrolla el código de integración usando los [endpoints](/es/api/overview) necesarios.
  </Step>

  <Step title="Configura webhooks">
    Si necesitas reaccionar a eventos en tiempo real, configura los [webhooks](/es/api/endpoints/webhooks) correspondientes.
  </Step>

  <Step title="Prueba exhaustivamente">
    Prueba todos los escenarios posibles: datos válidos, errores, timeouts, datos duplicados.
  </Step>

  <Step title="Monitorea en producción">
    Implementa logs y alertas para detectar problemas rápidamente.
  </Step>
</Steps>

## Mejores prácticas

<AccordionGroup>
  <Accordion title="Manejo de errores">
    Implementa reintentos con backoff exponencial para manejar errores transitorios. Registra todos los errores para facilitar la depuración.
  </Accordion>

  <Accordion title="Idempotencia">
    Diseña tus integraciones para ser idempotentes. Si un webhook se recibe dos veces, el resultado debe ser el mismo que si se recibió una sola vez.
  </Accordion>

  <Accordion title="Rate limiting">
    Respeta los [límites de la API](/es/api/overview) e implementa colas para manejar picos de solicitudes.
  </Accordion>

  <Accordion title="Seguridad">
    Almacena las credenciales de forma segura, verifica las firmas de los webhooks y usa HTTPS para todas las comunicaciones.
  </Accordion>
</AccordionGroup>

<Tip>
  Para integraciones de complejidad media, considera usar [SalesOS Connect (n8n)](/es/api/integrations/n8n) como middleware. Puedes construir flujos complejos sin escribir código.
</Tip>

<Note>
  Nuestro equipo de soporte técnico puede ayudarte a planificar y validar integraciones personalizadas. Contacta a [suporte@play2sell.com](mailto:suporte@play2sell.com).
</Note>

## Próximos pasos

<CardGroup cols={2}>
  <Card title="API Overview" icon="code" href="/es/api/overview">
    Revisa la documentación completa de la API.
  </Card>

  <Card title="FAQ técnico" icon="circle-question" href="/es/support/faq/technical">
    Consulta preguntas frecuentes sobre integraciones.
  </Card>
</CardGroup>
