# Casos de uso

Flujos comunes de integración que combinan los endpoints del catálogo. Todos asumen un token válido (vea [Autenticación](/es/autenticacion)).

## 1. Alta de un cliente con cuenta

Cree el cliente y abra la cuenta en una sola llamada.

1. `POST /api/partner/v1/customers` con `document`, `name` y `password` (alcance `customer:create`).
2. La respuesta devuelve el cliente, la cuenta abierta y el resultado de la verificación de cumplimiento.
3. Consulte el estado después con `GET /api/partner/v1/customers/{id}` (alcance `customer:read`).

## 2. Saldo y extracto

1. `GET /api/partner/v1/accounts` para listar las cuentas de sus clientes (alcance `account:read`).
2. `GET /api/partner/v1/accounts/{id}/balance` para el saldo actual (alcance `account:read`).
3. `GET /api/partner/v1/accounts/{id}/statement` para el extracto por período (alcance `statement:read`).

## 3. Enviar un PIX

1. (Opcional) `GET /api/partner/v1/pix/dict/{key}` para resolver la clave de destino (alcance `pix:read`).
2. `POST /api/partner/v1/pix/payments` con `account_id`, `amount` (en centavos), `pixKey` y `recipientIspb` (alcance `pix:write`). Envíe un `Idempotency-Key`.
3. Haga seguimiento con `GET /api/partner/v1/pix/payments/{id}` (alcance `pix:read`).

## 4. Recibir mediante cobro PIX (QR Code)

1. `POST /api/partner/v1/pix/charges` con `account_id` y `amount` (alcance `pix:write`). La respuesta devuelve el BR Code y la imagen del QR.
2. Haga seguimiento del pago con `GET /api/partner/v1/pix/charges/{id}` (alcance `pix:read`).
3. Para notificación automática, registre un [webhook](/es/endpoints/webhooks).

## 5. Transferencia TED a otro banco

1. `POST /api/partner/v1/transfers/ted` con `account_id`, `amount`, `recipientBankCode` (ISPB del banco destino) y los datos del beneficiario (alcance `transfer:write`). Envíe un `Idempotency-Key`.
2. Haga seguimiento con `GET /api/partner/v1/transfers/{id}` (alcance `transfer:read`).

## 6. Notificaciones por webhook

1. `POST /api/partner/v1/webhooks` con la `url` pública y la lista de `events` (alcance `webhook:write`).
2. Valide cada entrega con el secreto de firma devuelto en la creación.
3. Use `POST /api/partner/v1/webhooks/{id}/test` para una entrega de prueba. El evento `webhook.test` va solamente al webhook indicado.
