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

# List Virtual Accounts

> Retrieve a list of virtual accounts, optionally filtered by currency or customer.

## Overview

Retrieve a list of all virtual accounts for a specific customer. This endpoint returns all virtual accounts associated with the customer, including account details and metadata.


## OpenAPI

````yaml GET /v1/virtual-accounts
openapi: 3.1.0
info:
  title: API
  version: 1.0.0
  description: >-
    Platnova's Business API allows businesses to issue virtual accounts and
    cards to their employees, vendors, or retail customers. It allows businesses
    to streamline the process of issuing cards, manage spending, and track
    transactions. The API documentation provides information on how to integrate
    our virtual card issuing system into a business's existing systems and
    outlines the features and functionalities of the API, including card and
    account creation, management, and reporting. It also provides technical
    specifications, such as API requests, responses, and authentication
    processes.


    The API documentation is intended for developers and IT teams to use in
    order to effectively implement Platnova solutions into their business
    processes.


    # Authentication/Authorization


    To access any of the resources on the `{BaseUrl}/v1/`, the client has to
    pass pre-defined headers for authentication and authorization.


    The API is secure and only authorized clients can consume the service. There
    are API keys assigned to every business and JWT tokens assigned to every
    account for authentication/authorization.


    ## Bearer Token


    Requests may accept jwt tokens as below.


    ``` json

    Authorization: Bearer <jwt token>

     ```

    ## API Key


    Requests may acccept an api key either in the request headers or as a query
    parameter. Some requests cannot be authorized using an API key.


    ``` json

    X-API-KEY: <api key>

     ```

    OR


    ``` json

    ?api-key=<api key>

     ```

    # Base URL


    [https://sandbox.api.platnova.co](https://sandbox.api.platnova.co)


    # Errors


    Unauthorized API key


    ``` json

    {
        "status": false,
        "data": {},
        "error": [],
        "message": "unauthorized access"
    }

     ```

    Permission Denied


    ``` json

    {
        "status": false,
        "data": {},
        "error": [],
        "message": "unauthorized access: permission denied"
    }

     ```
servers:
  - url: https://api.platnova.com
    description: Production server
  - url: https://sandbox.api.platnova.co
    description: Development server
security:
  - apiKeyAuth: []
tags:
  - name: Customer
    description: Create and manage customers
  - name: Virtual Account
    description: Create and manage virtual accounts
  - name: Card
    description: Create and manage cards
  - name: Wallet
    description: List and manage wallets
  - name: Payment
    description: Send and verify payments
  - name: Transaction
    description: List transactions and generate receipts
  - name: Checkout
    description: Create and retrieve checkout sessions
  - name: Payment Link
    description: Create and manage payment links
  - name: Invoice
    description: Create and manage invoices
paths:
  /v1/virtual-accounts:
    get:
      tags:
        - Virtual Account
      summary: List virtual accounts
      description: >-
        Retrieve a list of virtual accounts, optionally filtered by currency or
        customer.
      operationId: listVirtualAccounts
      parameters:
        - name: currency
          in: query
          required: false
          description: optional three letter currency codes
          example: NGN
          schema:
            type: string
        - name: customer_id
          in: query
          required: false
          description: unique id of the customer
          example: 43a2b75e-5c59-429e-872a-2a54c7b17e34
          schema:
            type: string
      responses:
        '200':
          description: 200 - Success - USD
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: boolean
                  data:
                    type: array
                    items:
                      type: object
                      properties:
                        recommended:
                          type: boolean
                        meta:
                          type: object
                          properties:
                            id:
                              type: string
                            provider:
                              type: integer
                            currency:
                              type: string
                            account_type:
                              type: string
                            issued:
                              type: boolean
                            disabled:
                              type: boolean
                            ach_routing_number:
                              type: string
                            rtp_routing_number:
                              type: string
                            wire_routing_number:
                              type: string
                            swift_code:
                              type: string
                            bank_address:
                              type: string
                        account_number:
                          type: string
                        account_name:
                          type: string
                        bank_name:
                          type: string
                        bank_code:
                          type: string
                        default:
                          type: boolean
                  error:
                    type: array
                    items: {}
                  message:
                    type: string
              example:
                status: true
                data:
                  - recommended: false
                    meta:
                      id: 47f77087-cb48-4aa2-8ab9-33b2b9156209
                      provider: 5
                      currency: USD
                      account_type: Current
                      issued: true
                      disabled: false
                      ach_routing_number: '598983484'
                      rtp_routing_number: '812096193'
                      wire_routing_number: '982935645'
                      swift_code: CHASUS33
                      bank_address: 270 Park Ave, New York, NY, 10017-2070
                    account_number: '3916098129'
                    account_name: John Doe
                    bank_name: JPMorgan Chase
                    bank_code: CHASUS33
                    default: true
                error: []
                message: operation was successful
        '400':
          headers:
            Access-Control-Allow-Credentials:
              schema:
                type: boolean
              example: 'true'
            Access-Control-Allow-Headers:
              schema:
                type: string
              example: >-
                Content-Type, Content-Length, Accept-Encoding, X-CSRF-Token,
                Authorization, accept, origin, Cache-Control, X-Requested-With,
                Api-Version, Platform
            Access-Control-Allow-Methods:
              schema:
                type: string
              example: POST, OPTIONS, GET, PUT, PATCH, DELETE
            Access-Control-Allow-Origin:
              schema:
                type: string
              example: '*'
            Content-Type:
              schema:
                type: string
              example: application/json; charset=utf-8
            Date:
              schema:
                type: string
              example: Mon, 07 Jul 2025 14:40:35 GMT
            Content-Length:
              schema:
                type: integer
              example: '72'
          description: 400 - Customer not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: boolean
                  data:
                    type: object
                  error:
                    type: array
                    items: {}
                  message:
                    type: string
              example:
                status: false
                data: {}
                error: []
                message: customer was not found
components:
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: X-API-KEY
      description: API key for authentication.

````