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

# Get Wallets

> Retrieves all wallets for the authenticated business.

Retrieve all wallets for your business, including balances, currency info, payment accounts, and month-over-month statistics. Optionally include loan accounts.

## Example Request

```bash theme={null}
curl -X GET "https://api.rolla.xyz/api/v1/external/wallet/wallets" \
  -H "X-API-Key: your_api_key_here"
```

## Example Response

```json theme={null}
{
  "status": 200,
  "success": true,
  "message": "Business wallets retrieved successfully",
  "data": {
    "wallets": [
      {
        "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
        "name": "NGN Wallet",
        "currency": "NGN",
        "balance": {
          "availableBalance": 950000,
          "postedBalance": 1000000,
          "pendingBalance": 50000
        },
        "virtualAccounts": [
          {
            "id": "va-uuid-here",
            "status": "active",
            "virtual_account_type": "deposit",
            "currency_type": "fiat",
            "bank_name": "Wema Bank",
            "account_number": "0123456789",
            "account_name": "Rolla / Your Business Name"
          }
        ]
      },
      {
        "id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
        "name": "USD Wallet",
        "currency": "USD",
        "balance": {
          "availableBalance": 5000,
          "postedBalance": 5000,
          "pendingBalance": 0
        },
        "virtualAccounts": [
          {
            "id": "va-uuid-usd",
            "status": "active",
            "virtual_account_type": "deposit",
            "currency_type": "fiat",
            "bank_name": "Bank of America",
            "account_number": "9876543210",
            "account_name": "Rolla / Your Business Name",
            "routing_number": "101019644",
            "bank_address": {
              "street": "1801 Main St",
              "city": "Kansas City",
              "state": "MO",
              "postalCode": "64108",
              "country": "US"
            },
            "swift_code": "LEADUS44"
          }
        ]
      },
      {
        "id": "c3d4e5f6-a7b8-9012-cdef-123456789012",
        "name": "USDT Wallet",
        "currency": "USDT",
        "balance": {
          "availableBalance": 1200,
          "postedBalance": 1200,
          "pendingBalance": 0
        },
        "virtualAccounts": [
          {
            "id": "va-uuid-usdt",
            "status": "active",
            "virtual_account_type": "deposit",
            "currency_type": "crypto",
            "stablecoin_type": "USDT",
            "wallet_address": "0xAbCdEf1234567890abcdef1234567890AbCdEf12",
            "wallet_chain": "ethereum"
          }
        ]
      }
    ]
  }
}
```

<Tip>
  Use `balance.availableBalance` (not `balance.postedBalance`) when checking if you have sufficient funds for a withdrawal. `postedBalance` includes pending debits that haven't settled yet.
</Tip>

<Note>
  Each wallet includes a `virtualAccounts` array containing the payment accounts used to receive funds into that wallet (e.g. bank account details for NGN, wallet addresses for crypto).
</Note>


## OpenAPI

````yaml GET /wallet/wallets
openapi: 3.1.0
info:
  title: Rolla Developer API
  description: >-
    API for programmatic transaction management on the Rolla platform. Monetary
    `amount` fields use the smallest unit of the referenced currency unless an
    endpoint says otherwise (e.g. NGN = kobo, USD = cents, where **100 cents =
    USD 1.00**).
  version: 1.0.0
servers:
  - url: https://api.rolla.xyz/api/v1/external
    description: Production server
security:
  - apiKeyAuth: []
paths:
  /wallet/wallets:
    get:
      summary: Get Wallets
      description: Retrieves all wallets for the authenticated business.
      operationId: getWallets
      parameters:
        - name: includeLoans
          in: query
          description: Include loan accounts in the response
          schema:
            type: string
            enum:
              - 'true'
              - 'false'
      responses:
        '200':
          description: Wallets retrieved successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: integer
                    example: 200
                  success:
                    type: boolean
                    example: true
                  message:
                    type: string
                    example: Business wallets retrieved successfully
                  wallets:
                    type: array
                    items:
                      $ref: '#/components/schemas/Wallet'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    Wallet:
      type: object
      properties:
        id:
          type: string
          format: uuid
          example: 3c90c3cc-0d44-4b50-8888-8dd25736052a
        name:
          type: string
          example: NGN Wallet
        currency:
          type: string
          example: NGN
        balance:
          type: object
          properties:
            availableBalance:
              type: number
              example: 950000
            postedBalance:
              type: number
              example: 1000000
            pendingBalance:
              type: number
              example: 50000
        virtualAccounts:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
                format: uuid
              status:
                type: string
                example: active
              virtual_account_type:
                type: string
                example: deposit
              currency_type:
                type: string
                enum:
                  - fiat
                  - crypto
                example: fiat
              bank_name:
                type: string
                example: Wema Bank
                description: Fiat accounts only
              account_number:
                type: string
                example: '0123456789'
                description: Fiat accounts only
              account_name:
                type: string
                description: Fiat accounts only
              routing_number:
                type: string
                nullable: true
                description: USD fiat accounts only
              bank_address:
                type: object
                nullable: true
                description: USD fiat accounts only
              swift_code:
                type: string
                nullable: true
                description: USD fiat accounts only
              expires_at:
                type: string
                format: date-time
                nullable: true
              stablecoin_type:
                type: string
                example: USDT
                description: Crypto accounts only
              wallet_address:
                type: string
                description: Crypto accounts only
              wallet_chain:
                type: string
                example: ethereum
                description: Crypto accounts only
    Error:
      type: object
      properties:
        success:
          type: boolean
          example: false
        message:
          type: string
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key
      description: Your Rolla API key

````