---
title: "Retrieve a deposit"
method: GET
path: "/v2/users/{userId}/orchestration-addresses/{orchestrationAddressId}/deposits/{depositId}"
tags: ["Orchestration Address"]
---

# Retrieve a deposit

`GET /v2/users/{userId}/orchestration-addresses/{orchestrationAddressId}/deposits/{depositId}`

Fetch a single deposit by ID. Returns `404 RESOURCE_NOT_FOUND` if the
deposit doesn't exist, doesn't belong to the named orchestration address,
or the orchestration address doesn't belong to the named user.

## Path parameters

- `userId` string, required
- `orchestrationAddressId` string, uuid, required
- `depositId` string, uuid, required

## Response `200`

A single deposit record.

- OrchestrationDepositObject — A single on-chain deposit detected for an orchestration address.
  - `id` string, uuid — Deterministic UUID derived from `(providerReferenceId, escrowWalletId)`. Stable across webhook re-deliveries.
  - `orchestrationAddressId` string, uuid
  - `batchId` string, uuid, nullable — ID of the batch that included this deposit. `null` while `status=PENDING` or `status=IGNORED`.
  - `amount` string — Decimal amount of the source token deposited (e.g. `"100.500000"`). Precision matches the token's on-chain decimals.
  - `currency` 'usdc' | 'usdt'
  - `chain` string — Abbreviated chain name (e.g. `BASE`).
  - `sourceAddress` string — On-chain address that sent the deposit. Informational only.
  - `transactionHash` string — On-chain transaction hash.
  - `status` 'PENDING' | 'BATCHED' | 'IGNORED' | 'REFUNDED' — Per-deposit status. * `PENDING` — recorded, waiting to be rolled into a batch. * `BATCHED` — included in a batch (`batchId` is set). * `IGNORED` — recorded but never batched. See `ignoredReason` for why. * `REFUNDED` — was `PENDING` when the address was deactivated; the funds were refunded in-kind to the `walletAddress` supplied at deactivation.
  - `ignoredReason` 'ADDRESS_DEACTIVATED' | 'UNSUPPORTED_TOKEN' — Why a deposit was ignored. Funds remain in the escrow wallet — a Slack alert fires for manual ops follow-up. * `ADDRESS_DEACTIVATED` — the deposit arrived after the address was deactivated. * `UNSUPPORTED_TOKEN` — the deposited token does not match the address's configured `source.currency` (e.g. USDT sent to a USDC-only address).
  - `createdAt` string, date-time
  - `updatedAt` string, date-time

## Other responses

- `401` — Unauthorized
- `404` — Resource not found
- `500` — Internal Server Error

---

[API](https://skmtc.net/hifi/apis/hifi-api.md) · [All operations](https://skmtc.net/hifi/apis/hifi-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/hifi/hifi-api/revisions/15a39c342fd1/schema)
