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

# Cuentas y carteras

> Elige la cuenta propiedad del cliente o el recurso emitido requerido por un flujo de dinero.

Cada cuenta pertenece a un solo cliente. Elígela usando dos dimensiones: quién la gestiona y si es una cartera o una cuenta bancaria.

## Elige una cuenta

| Cuenta                  | Úsala para                                                                                                               |
| ----------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| Cartera emitida         | Mantener un saldo de stablecoin en custodia, financiar un pago, recibir un cobro o liquidar una cuenta bancaria emitida. |
| Cuenta bancaria emitida | Ofrecer al cliente datos bancarios reutilizables que se liquidan en una cartera emitida.                                 |
| Cartera externa         | Registrar una dirección de blockchain propiedad del cliente.                                                             |
| Cuenta bancaria externa | Registrar una cuenta bancaria propiedad del cliente para un pago propio.                                                 |

`issued` significa que Swipelux crea y gestiona el recurso. `external` registra un endpoint propiedad del cliente. Un endpoint de terceros pertenece a un [destinatario y destino](/es/integration/recipients), no a la lista de cuentas del cliente.

<h2 id="create-the-account">
  Crea la cuenta
</h2>

Utiliza [`POST /v3/customers/{customerId}/accounts`](/api-reference/accounts/post-v3-customers-by-customer-id-accounts). Envía estas cabeceras con uno de los cuerpos de solicitud siguientes:

```http theme={null}
X-API-Key: ${SWIPELUX_API_KEY}
Idempotency-Key: account-create-001
Content-Type: application/json
```

<Tabs>
  <Tab title="Cartera emitida">
    ```json theme={null}
    {
      "origin": "issued",
      "type": "wallet",
      "currency": "USDC",
      "network": "base",
      "label": "Settlement wallet"
    }
    ```
  </Tab>

  <Tab title="Cuenta bancaria emitida">
    ```json theme={null}
    {
      "origin": "issued",
      "type": "bank",
      "method": "ach",
      "country": "US",
      "currency": "USD",
      "settlement": {
        "accountId": "${SETTLEMENT_WALLET_ID}"
      },
      "label": "USD account"
    }
    ```
  </Tab>

  <Tab title="Cartera externa">
    ```json theme={null}
    {
      "origin": "external",
      "type": "wallet",
      "currency": "USDC",
      "network": "polygon",
      "details": {
        "address": "0x4997b0a68bebc1b0d80a93567ba7002be92b8b11"
      },
      "label": "Customer Polygon wallet"
    }
    ```
  </Tab>

  <Tab title="Cuenta bancaria externa">
    ```json theme={null}
    {
      "origin": "external",
      "type": "bank",
      "methods": ["ach", "wire"],
      "country": "US",
      "currency": "USD",
      "details": {
        "routingNumber": "021000021",
        "accountNumber": "123456789",
        "accountType": "checking",
        "bankName": "Example Bank",
        "accountHolderName": "Acme Payments SAS"
      },
      "label": "Customer operating account"
    }
    ```
  </Tab>
</Tabs>

Utiliza únicamente las monedas, redes, métodos y tipos de cuenta devueltos para el cliente y la capacidad actuales. No copies la disponibilidad de otro cliente o entorno.

## Espera a que la cuenta sea utilizable

Guarda `data.id`, `data.status` y `data.openTaskIds` de la respuesta de creación. Lee la última cuenta con [`GET /v3/customers/{customerId}/accounts/{accountId}`](/api-reference/accounts/get-v3-customers-by-customer-id-accounts-by-account-id) antes de cotizar una transferencia o mostrar datos bancarios.

Utiliza la cuenta solo cuando su estado actual permita la siguiente operación. Si hay IDs de tarea abiertos, complétalos mediante [Capacidades y tareas](/es/integration/onboarding/capabilities-and-requirements).

Una cuenta bancaria emitida puede devolver `details: null` mientras se aprovisiona. Presenta los datos bancarios solo después de que una lectura actual devuelva el conjunto completo. Si `details.referenceRequired` es true, muestra el `details.reference` exacto junto con las coordenadas bancarias.

## Mantén explícitos los roles de la cuenta

Para un pago, la cartera emitida es el origen en `in.accountId`. Una cuenta bancaria propiedad del cliente es el `destinationId`. Para una cuenta bancaria emitida, `settlement.accountId` es la cartera emitida que recibe los depósitos coincidentes.

A continuación, utiliza una cuenta lista en [Recibir fondos](/es/integration/receive-funds), [Enviar fondos](/es/integration/send-funds) o [Emitir una cuenta bancaria](/es/integration/issue-bank-account).


## Related topics

- [Emitir una cuenta bancaria](/es/integration/issue-bank-account.md)
- [Arquitectura de carteras y pagos](/es/knowledge-base/compliance/custody-and-wallet-controls.md)
- [Quickstart](/es/integration/quickstart.md)
- [Flujos comunes](/es/integration/common-flows.md)
- [Descripción general de la integración](/es/integration/overview.md)
