> ## 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.

# Usar la Fintoc CLI

> Construye, prueba y gestiona tu integración con Fintoc desde la línea de comandos.

La Fintoc CLI te permite hacer solicitudes a la API y escuchar webhooks desde la línea de comandos.

## Recursos disponibles

Los recursos siguen el patrón `fintoc <resource> <action> [flags]`.

| Recurso                    | Acciones                  |
| -------------------------- | ------------------------- |
| `api_keys`                 | list                      |
| `charges`                  | create, get, list         |
| `checkout_sessions`        | create, get, expire       |
| `links`                    | get, list, delete         |
| `payment_intents`          | get, list                 |
| `subscriptions`            | get, list                 |
| `webhook_endpoints`        | create, get, list, delete |
| `v2 account_numbers`       | create, get, list, delete |
| `v2 account_verifications` | create, get, list         |
| `v2 accounts`              | get, list                 |
| `v2 movements`             | get, list                 |
| `v2 transfers`             | create, get, list         |

## Hacer una solicitud a la API

La forma general es `fintoc <resource> <action> [args]`. Ejecuta `fintoc --help` para listar los recursos disponibles, o `fintoc <resource> --help` para ver las acciones soportadas en ese recurso.

```bash theme={null}
$ fintoc payment_intents list
$ fintoc charges create --amount 5000 --currency clp --subscription-id sub_test_abc123
$ fintoc charges create --from-json payload.json
```

Usa `--json` para obtener salida legible por máquina:

```bash theme={null}
$ fintoc payment_intents list --json
[
  {
    "id": "pi_test_a1b2c3d4e5f6g7h8",
    "object": "payment_intent",
    "amount": 100000,
    "currency": "clp",
    "status": "succeeded"
  }
]
```

<Info>
  `v2 transfers create` requiere una llave privada JWS para firmar. Proporciónala con la flag `--jws-private-key` o configura `jws_private_key` en `~/.fintoc/config.toml`. Para generar un par de llaves, consulta [Generar llaves JWS](/es/docs/transfers/transfers-setup/setting-up-jws-keys).
</Info>

```bash theme={null}
fintoc v2 transfers create --amount 10000 --currency CLP \
  --account-id acc_test_abc123 \
  --counterparty-account-number 12345678 \
  --counterparty-institution-id cl_banco_estado \
  --jws-private-key ~/path/to/private_key.pem
```

## Pasar un payload JSON

Para comandos `create`, pasa un archivo de payload con `--from-json`, o canalízalo con `-`:

```bash theme={null}
fintoc charges create --from-json payload.json
cat payload.json | fintoc charges create --from-json -
```

Las flags pueden combinarse con `--from-json`. Los valores de las flags tienen precedencia sobre las claves del JSON; los objetos se combinan de forma profunda, pero los arreglos se reemplazan por completo.

## Eliminar un recurso

Los comandos de eliminación piden confirmación antes de remover el recurso. Pasa `--yes` para saltarte el prompt — útil en CI.

```bash theme={null}
fintoc webhook_endpoints delete we_test_abc123
fintoc webhook_endpoints delete we_test_abc123 --yes
```

## Disparar eventos de prueba

`fintoc trigger` dispara un evento de prueba contra tu cuenta — útil para ejercitar los manejadores de webhooks sin generar actividad real.

```bash theme={null}
fintoc trigger payment_intent.succeeded
fintoc trigger payment_intent.succeeded --override amount=5000 --override currency=CLP
fintoc trigger payment_intent.succeeded --from-json overrides.json
```

`--override` acepta notación con puntos (`metadata.order_id=abc123`) y es repetible. Aplican las mismas reglas de precedencia que con `--from-json`.

## Escuchar webhooks en localhost

`fintoc webhooks listen` abre una conexión WebSocket con Fintoc y reenvía los eventos a tu servidor local. La CLI firma cada solicitud reenviada para que tu verificación de firma existente siga funcionando sin un túnel público.

```bash theme={null}
fintoc webhooks listen --forward-to http://localhost:3000/webhooks
```

Filtra por tipo de evento:

```bash theme={null}
fintoc webhooks listen --forward-to http://localhost:3000/webhooks --events payment.succeeded,payment.failed
```
