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

# List suggested deposit tokens

> Returns suggested tokens for QR and manual-transfer deposits.



## OpenAPI

````yaml https://raw.githubusercontent.com/rhinestonewtf/openapi/refs/heads/main/deposit-service.json get /qr/tokens
openapi: 3.1.0
info:
  title: Deposit Service API
  version: 1.0.0
  description: >-
    Rhinestone Deposits API: accept deposits from any chain, asset or payment
    method, and settle them as one token on one chain.
servers:
  - url: https://v1.orchestrator.rhinestone.dev/deposit-processor
security: []
paths:
  /qr/tokens:
    get:
      tags:
        - Utilities
      summary: List suggested deposit tokens
      description: Returns suggested tokens for QR and manual-transfer deposits.
      parameters:
        - schema:
            type: string
            description: API key for authentication
            example: your-api-key
          required: true
          description: API key for authentication
          name: x-api-key
          in: header
      responses:
        '200':
          description: Token shortlist per chain
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QrTokensResponse'
        '401':
          description: Authentication required
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: API key lacks required deposits scope
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    QrTokensResponse:
      type: object
      properties:
        restricted:
          type: boolean
          description: >-
            True when the project has a deposit whitelist. `tokens` is then the
            complete accepted set: every chain is reported, a chain absent from
            `tokens` is not offered, and a token is listed exactly when a
            deposit of it would be accepted.
        tokens:
          type: object
          additionalProperties:
            type: array
            items:
              type: object
              properties:
                symbol:
                  type: string
                  example: USDC
                address:
                  type: string
                  example: '0x833589fcd6edb6e08f4c7c32d4f71b54bda02913'
                decimals:
                  type: integer
                  minimum: 0
                  example: 6
                minAmount:
                  type: string
                  description: >-
                    Configured whitelist minimum in raw token units (same
                    decimals as `decimals`). Present only when `restricted` is
                    true and the client set one.
                  example: '1000000'
                maxAmount:
                  type: string
                  description: >-
                    Configured whitelist maximum in raw token units (same
                    decimals as `decimals`). Present only when `restricted` is
                    true and the client set one.
              required:
                - symbol
                - address
                - decimals
          description: >-
            Keyed by EVM chain id as a decimal string, plus "solana" and
            "hypercore". An empty array means the chain is not offered (paused,
            not depositable, or disallowed by the whitelist) and clients should
            hide it. When `restricted` is false this is a suggested shortlist,
            and an absent chain carries no opinion; when `restricted` is true it
            is exhaustive.
      required:
        - restricted
        - tokens
    ErrorResponse:
      type: object
      properties:
        error:
          type: string
        code:
          type: string
          description: >-
            Deposit error code (e.g. `TOKEN-3`) when the refusal is one a
            deposit would also receive.
        details:
          type: array
          items:
            type: object
            properties:
              message:
                type: string
              path:
                type: array
                items:
                  anyOf:
                    - type: string
                    - type: number
              code:
                type: string
            required:
              - message
      required:
        - error

````