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

# Flujo de integración

<Info>
  **Usa el dashboard para conectar tu propia cuenta**

  Te recomendamos integrar el Widget solo si quieres conectar la cuenta bancaria de tus usuarios. Si quieres obtener datos de tu propia cuenta bancaria, deberías conectar tu cuenta usando el Dashboard ya que es mucho más fácil.

  [Aprende cómo conectar tu cuenta usando el Dashboard aquí.](/es/docs/movements/guides/guides-banking-link-from-dashboard)
</Info>

El flujo de conexión comienza cuando tu usuario quiere conectar su cuenta bancaria a tu app:

<Frame>
  <img width="80%" src="https://mintcdn.com/fintoc-49b8bee8/SkvJJ-DZ5D4yC6tQ/images/b8d1bde-Public_Exchange_Token_Flow.png?fit=max&auto=format&n=SkvJJ-DZ5D4yC6tQ&q=85&s=e5f164c636fa35d0d59bb6ff09a93f07" data-path="images/b8d1bde-Public_Exchange_Token_Flow.png" />
</Frame>

Entonces, expresándolo en palabras:

1. Necesitas **crear un [Link Intent](/es/reference/movements-api/linkintents/link-intent-object)** con el [endpoint de creación](/es/reference/movements-api/linkintents/link-intents-create). Este objeto representa la intención de conexión del usuario y recibe todas las configuraciones necesarias para abrir el Widget en tu frontend.\
   Para actualizar correctamente los movimientos en tu cuenta bancaria, asegúrate de que la cuenta usada para crear el Link tenga los permisos necesarios para revisar la página de saldo y movimientos, la cartola histórica, la cartola provisoria, y cualquier otra página relacionada con movimientos. Para conectar una cuenta en Modo de Prueba, consulta nuestra [guía de pruebas](/es/docs/movements/data-aggregation-test-your-integration).
2. El Link Intent que acabas de crear tiene un campo llamado `widget_token`. Necesitas abrir el Widget en tu frontend usando este token y la [API Key](/es/docs/home/api-keys) pública:

```html theme={null}
<script>
  window.onload = () => {
    const widget = Fintoc.create({
      publicKey: '<FINTOC_PUBLIC_KEY>',
      widgetToken: 'li_XXXXXXXX_sec_YYYYYYYY',
    });
  };
</script>
```

3. Una vez que la conexión sea exitosa, recibirás el objeto Link Intent como parámetro en tu callback `onSuccess`. Este objeto ahora tendrá el `exchange_token`. Esta es una clave temporal que te permite obtener la información del Link, incluido el `link_token`, para que luego puedas acceder a toda la información proporcionada por tu usuario:

```html theme={null}
<script>
  window.onload(() => {
    const widget = Fintoc.create({
      publicKey: '<FINTOC_PUBLIC_KEY>',
      widgetToken: 'li_XXXXXXXX_sec_YYYYYYYY',
      onSuccess: (linkIntent) => {
      	const exchangeToken = linkIntent.exchangeToken;
        sendExchangeTokenToBackend(exchangeToken);
        processSucceededConnection();
      },
    });
  });
</script>
```

4. **Desde tu backend**, usa el `exchangeToken` y tu secret key para obtener la información del Link usando el [endpoint exchange](/es/reference/movements-api/links/links-exchange).

¡Y eso es todo!
