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

# Accounts en wallets

> Kies de klantrekening of uitgegeven resource die een geldstroom vereist.

Elke rekening hoort bij één klant. Kies deze aan de hand van twee dimensies: wie hem beheert en of het een wallet of bankrekening is.

## Kies een rekening

| Rekening                | Gebruik het voor                                                                                                                      |
| ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| Uitgegeven wallet       | Een custodial stablecoinsaldo aanhouden, een uitbetaling financieren, een pay-in ontvangen of een uitgegeven bankrekening afwikkelen. |
| Uitgegeven bankrekening | De klant herbruikbare bankgegevens geven die naar een uitgegeven wallet worden afgewikkeld.                                           |
| Externe wallet          | Een blockchain-adres registreren dat in bezit is van de klant.                                                                        |
| Externe bankrekening    | Een bankrekening registreren in bezit van de klant voor een first-party uitbetaling.                                                  |

`issued` betekent dat Swipelux de resource aanmaakt en beheert. `external` registreert een eindpunt in bezit van de klant. Een derde-partij-eindpunt hoort onder een [recipient en destination](/nl/integration/recipients), niet onder de klantrekeningenlijst.

<h2 id="create-the-account">
  Maak de rekening aan
</h2>

Gebruik [`POST /v3/customers/{customerId}/accounts`](/api-reference/accounts/post-v3-customers-by-customer-id-accounts). Verstuur deze headers met een van de onderstaande request bodies:

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

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

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

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

  <Tab title="Externe bankrekening">
    ```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>

Gebruik alleen valuta's, netwerken, methoden en accounttypes die zijn geretourneerd voor de huidige klant en capability. Kopieer geen beschikbaarheid van een andere klant of omgeving.

## Wacht tot de rekening bruikbaar is

Bewaar `data.id`, `data.status` en `data.openTaskIds` uit de create-respons. Lees de nieuwste rekening met [`GET /v3/customers/{customerId}/accounts/{accountId}`](/api-reference/accounts/get-v3-customers-by-customer-id-accounts-by-account-id) voordat je een transfer quoteert of bankgegevens toont.

Gebruik de rekening alleen wanneer de huidige status de volgende operation toestaat. Als er task-ID's open zijn, voltooi je die via [Capabilities en tasks](/nl/integration/onboarding/capabilities-and-requirements).

Een uitgegeven bankrekening kan `details: null` retourneren tijdens de provisioning. Toon bankgegevens pas nadat een huidige lees de volledige set retourneert. Als `details.referenceRequired` true is, toon je de exacte `details.reference` met de bankcoördinaten.

## Houd rekeningrollen expliciet

Voor een uitbetaling is de uitgegeven wallet de bron in `in.accountId`. Een bankrekening in bezit van de klant is de `destinationId`. Voor een uitgegeven bankrekening is `settlement.accountId` de uitgegeven wallet die gematchte stortingen ontvangt.

Gebruik vervolgens een ready rekening in [Geld ontvangen](/nl/integration/receive-funds), [Geld versturen](/nl/integration/send-funds) of [Een bankrekening uitgeven](/nl/integration/issue-bank-account).


## Related topics

- [Migreren naar v3](/nl/api-reference/versioning/migrate-to-v3.md)
- [Wallet-architectuur en uitbetalingen](/nl/knowledge-base/compliance/custody-and-wallet-controls.md)
- [Overzicht](/nl/knowledge-base/compliance/overview.md)
- [Quotes en transfers](/nl/integration/quotes-and-transfers.md)
- [Quickstart](/nl/integration/quickstart.md)
