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

# Get deposit by uuid (scoped to caller siteId)

> Возвращает депозит + on-chain данные incoming-tx (object `transaction`, null если tx ещё нет).



## OpenAPI

````yaml /openapi-public.json get /v1/public/deposits/{uuid}
openapi: 3.0.0
info:
  title: Wallet Platform — Public API
  description: >-
    API для интеграции CMS обменника: создание депозитов и выплат, отслеживание
    статусов, справочники активов и сетей.


    ## Аутентификация

    Каждый запрос подписывается HMAC-SHA256. Обязательные заголовки:

    - `X-Api-Id` — публичный идентификатор ключа (выдаётся в админке).

    - `X-Api-Key` — публичный ключ.

    - `X-Timestamp` — Unix-секунды; сервер принимает ±300 сек от своего времени.

    - `X-Signature` — `HMAC_SHA256_Hex( X-Timestamp + "." + raw_body, api_secret
    )`. Для GET тело пустое.

    - `X-Idempotency-Key` — опционально (UUID). Гарантирует, что повторный POST
    не создаст дубликат.


    Дополнительно: IP-вызывающего должен быть в whitelist сайта (настраивается в
    админке). Секрет (`api_secret`) показывается один раз при создании ключа и
    хранится только у вас.


    ## Формат ответа

    Все ответы — единый envelope: `{ "ok": true, "data": ... }` при успехе либо
    `{ "ok": false, "error": { "code": "...", "message": "..." } }` при ошибке.


    ## Идемпотентность

    Создание депозита/выплаты идемпотентно по вашему `order_id` (уникален в
    рамках сайта и актива) и/или по `X-Idempotency-Key`. Повторный вызов с тем
    же ключом вернёт исходный объект, а не создаст новый.


    ## Webhooks (исходящие)

    При смене статуса платформа шлёт POST на ваш `callback_url`. Заголовки:
    `X-Event-Type`, `X-Event-Id` (uuid, идемпотентность на вашей стороне),
    `X-Timestamp`, `X-Signature` = `HMAC_SHA256_Hex(raw_body, callback_secret)`.
    Проверяйте подпись перед обработкой.

    События: `deposit.tx_detected`, `deposit.finalized`, `deposit.failed`,
    `deposit.refunded`, `payout.broadcasted`, `payout.confirmed`,
    `payout.failed`.

    Доставка считается успешной при HTTP 2xx за 10 секунд. Ретраи: 30s, 2m, 10m,
    1h, 6h, 24h (до 8 попыток).
  version: '1'
  contact: {}
servers: []
security:
  - X-Api-Id: []
    X-Api-Key: []
    hmac: []
    X-Timestamp: []
tags: []
paths:
  /v1/public/deposits/{uuid}:
    get:
      tags:
        - public · deposits
      summary: Get deposit by uuid (scoped to caller siteId)
      description: >-
        Возвращает депозит + on-chain данные incoming-tx (object `transaction`,
        null если tx ещё нет).
      operationId: DepositPublicController_getByUuid
      parameters:
        - name: uuid
          required: true
          in: path
          description: UUID депозита из ответа на создание.
          schema:
            type: string
            format: uuid
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicDepositResponseDto'
      security:
        - hmac: []
components:
  schemas:
    PublicDepositResponseDto:
      type: object
      properties:
        uuid:
          type: string
          format: uuid
          description: Публичный идентификатор депозита (используйте в GET /{uuid}).
        orderId:
          type: string
          example: order_42_abc
          description: Ваш order_id (label), переданный при создании.
        address:
          type: string
          example: TXYZ...abcd
          description: >-
            Адрес для оплаты. Для memo-based сетей (TON) — общий приёмный адрес
            + memo.
        memo:
          type: string
          nullable: true
          example: WP-1A2B3C4D
          description: Memo/comment (ОБЯЗАТЕЛЕН для memo-based сетей, иначе null).
        assetCode:
          type: string
          example: USDT_TRC20
        expectedAmount:
          type: string
          example: '100.50'
          description: Ожидаемая сумма (string). 0 = принимаем любую сумму.
        status:
          type: string
          enum:
            - check
            - process
            - confirm_check
            - paid
            - paid_over
            - wrong_amount
            - expired
            - cancel
            - fail
            - system_fail
            - refund_process
            - refund_paid
            - refund_fail
          example: check
          description: >-
            Бизнес-статус депозита (полный набор). Поток: check → process →
            confirm_check → paid | paid_over | wrong_amount.
            Терминальные/прочие: expired (окно мониторинга истекло), cancel,
            fail, system_fail, refund_process → refund_paid | refund_fail.
        expiresAt:
          type: string
          format: date-time
          description: До какого момента сеть мониторится на оплату.
        explorerAddressUrl:
          type: string
          nullable: true
          example: https://tronscan.org/#/address/TXYZ
          description: Ссылка на адрес в explorer.
        transaction:
          nullable: true
          description: >-
            On-chain данные incoming-транзакции. null пока депозит не получил ни
            одной tx.
          type: object
          allOf:
            - $ref: '#/components/schemas/PublicDepositTransactionDto'
      required:
        - uuid
        - orderId
        - address
        - memo
        - assetCode
        - expectedAmount
        - status
        - expiresAt
        - explorerAddressUrl
        - transaction
    PublicDepositTransactionDto:
      type: object
      properties:
        networkStatus:
          type: string
          enum:
            - pending
            - mempool
            - confirmed
            - fail
          example: confirmed
          description: >-
            Статус транзакции в сети: pending (создана) → mempool (в мемпуле) →
            confirmed (подтверждена) | fail.
        receivedAmount:
          type: string
          nullable: true
          example: '100.500000'
          description: Фактически полученная сумма (string). null пока tx не подтверждена.
        txhash:
          type: string
          nullable: true
          example: a1b2c3...e9f0
          description: Хеш incoming blockchain-транзакции.
        confirmations:
          type: number
          nullable: true
          example: 12
          description: Текущее число подтверждений сети.
        requiredConfirmations:
          type: number
          nullable: true
          example: 19
          description: >-
            Сколько подтверждений требуется для финализации
            (asset.minConfirmations).
        blockNumber:
          type: string
          nullable: true
          example: '65123456'
          description: >-
            Номер блока (string, т.к. может превышать Number.MAX_SAFE_INTEGER).
            null если ещё в mempool.
        explorerTxUrl:
          type: string
          nullable: true
          example: https://tronscan.org/#/transaction/a1b2c3
          description: Ссылка на транзакцию в explorer.
        detectedAt:
          type: string
          format: date-time
          nullable: true
          description: Когда tx впервые замечена в сети.
        paidAt:
          type: string
          format: date-time
          nullable: true
          description: >-
            Когда депозит финализирован (paid / paid_over / wrong_amount). null
            пока не финализирован.
      required:
        - networkStatus
        - receivedAmount
        - txhash
        - confirmations
        - requiredConfirmations
        - blockNumber
        - explorerTxUrl
        - detectedAt
        - paidAt
  securitySchemes:
    X-Api-Id:
      type: apiKey
      in: header
      name: X-Api-Id
      description: Публичный идентификатор API-ключа
    X-Api-Key:
      type: apiKey
      in: header
      name: X-Api-Key
      description: Публичный API-ключ
    hmac:
      type: apiKey
      in: header
      name: X-Signature
      description: HMAC-SHA256-Hex(timestamp + "." + raw_body, api_secret)
    X-Timestamp:
      type: apiKey
      in: header
      name: X-Timestamp
      description: Unix-секунды, ±300с

````