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

# Listar billeteras

> Lista las billeteras de tu empresa, cada una con su balance.

Devuelve el arreglo de billeteras (wallets) de tu empresa, cada una con su balance actual. Es un endpoint **solo de consulta** y **no paginado**.

<Note>
  Solo se incluyen las billeteras del entorno (live o test) que corresponde a tu token. El `id` de cada billetera puede usarse como [`filter[wallet_id]`](/client/movimientos/list) al consultar los movimientos.
</Note>

### Ejemplos de uso

<Tabs>
  <Tab title="curl">
    ```bash theme={null}
    curl https://api.onepay.la/v1/wallets \
      -X GET \
      -H "Authorization: Bearer sk_test_xxx"
    ```
  </Tab>

  <Tab title="JavaScript">
    ```ts theme={null}
    const response = await fetch('https://api.onepay.la/v1/wallets', {
      method: 'GET',
      headers: {
        'Authorization': 'Bearer sk_test_xxx',
      },
    });
    const data = await response.json();
    ```
  </Tab>

  <Tab title="Python">
    ```python theme={null}
    import requests

    response = requests.get(
        'https://api.onepay.la/v1/wallets',
        headers={'Authorization': 'Bearer sk_test_xxx'},
    )
    data = response.json()
    ```
  </Tab>

  <Tab title="PHP">
    ```php theme={null}
    <?php
    $curl = curl_init();
    curl_setopt_array($curl, [
      CURLOPT_URL => "https://api.onepay.la/v1/wallets",
      CURLOPT_RETURNTRANSFER => true,
      CURLOPT_HTTPHEADER => ["Authorization: Bearer sk_test_xxx"]
    ]);
    $data = json_decode(curl_exec($curl), true);
    ?>
    ```
  </Tab>
</Tabs>

### Response

La respuesta es un arreglo con todas las billeteras del entorno actual (no paginado).

<ResponseField name="id" type="string">UUID de la billetera. Úsalo como `filter[wallet_id]` al consultar movimientos.</ResponseField>
<ResponseField name="name" type="string">Nombre legible de la billetera, por ejemplo `Balance predeterminado`.</ResponseField>
<ResponseField name="slug" type="string">Identificador interno de la billetera, por ejemplo `default` o `default_testing`.</ResponseField>
<ResponseField name="currency" type="string">Moneda de la billetera, por ejemplo `COP`.</ResponseField>
<ResponseField name="balance" type="number">Balance actual en la moneda de la billetera (en pesos para `COP`).</ResponseField>
<ResponseField name="balance_label" type="string">Balance formateado, por ejemplo `$30.284.766,15`.</ResponseField>
<ResponseField name="is_default" type="boolean">`true` si es la billetera predeterminada de la empresa.</ResponseField>

### Ejemplo de respuesta

<ResponseExample>
  ```json 200 theme={null}
  [
    {
      "id": "0ced28ec-bd54-42a0-844d-00fde7b03300",
      "name": "Balance predeterminado",
      "slug": "default",
      "currency": "COP",
      "balance": 30284766.15,
      "balance_label": "$30.284.766,15",
      "is_default": true
    },
    {
      "id": "0194b42f-5515-7245-b9f4-193c92f37b8c",
      "name": "Pagos",
      "slug": "payouts",
      "currency": "COP",
      "balance": 1250000,
      "balance_label": "$1.250.000",
      "is_default": false
    }
  ]
  ```

  ```json 401 theme={null}
  {
    "message": "No autenticado",
    "code": 10000,
    "code_name": "unauthenticated"
  }
  ```
</ResponseExample>
