---
title: "Get a bank transfer"
method: GET
path: "/api/tradfi/v1/bank-transfers/{id}"
tags: ["ACH Debits"]
---

# Get a bank transfer

`GET /api/tradfi/v1/bank-transfers/{id}`

Gets a bank transfer by its `id` or `txid`. Either identifier may be used interchangeably.

## Path parameters

- `id` string, required

## Response `200`

OK

- BankTransferResponse
  - `amount` string, required — The absolute value of the total amount of funds to be transferred to or from the related bank. Always returned as a decimal string with the currency's full precision (e.g., "500.00" for USD), regardless of whether the request used `amount` or `baseAmount`.
  - `applyInstantCredit` boolean, required — Whether to apply "instant credit" to the transfer. This allows funds to be made available to customer from the CaaS reserve account if they are available.
  - `bankAccountId` string, required — The bank account used for the transfer. This also determines the bank rails used for the transfer.
  - `counterparty` object, nullable — Information about the counterparty of the transfer. The available fields vary by bank rail and region (e.g. name, financial institution, country). The counterparty account number is masked, exposing only the last four characters (e.g. "*****7890"). Null until counterparty details are available, typically once the transfer has settled.
  - `createdAt` string, date-time, required — When the transfer was created/initiated.
  - `enterpriseId` string, required — The enterprise related to the transfer. Determined automatically by the walletId.
  - `estimatedEffectiveOn` string, date, nullable, required — The date when the transfer is expected to become "effective" or "posted" by the related bank. Without instant credit this will usually be either T+1 or T+4 depending on risk profile of the related enterprise and bank account. Null when not yet determined.
  - `id` string, required — The ID of the transfer. This should be generated by the client (prefer v4, v5, or v7) because it also serves as the idempotency key. Using an automatically generated ID provides no idempotency guarantees.
  - `instantCreditLiability` boolean, required — Whether the current transfer counts against the CaaS reserve for instant credit. Only applies to transfers that opted for applyInstantCredit and have not yet settled. Once settled, transitions to false.
  - `memoId` string, required — An automatically generated memo used for matching with bank transfers. Informational only.
  - `settledAt` string, date-time, nullable, required — When the transfer was settled (posted by the bank). Null until status is settled.
  - `status` 'initiated' | 'processing' | 'settled' | 'reversed' | 'failed', required — The status of a transfer. `initiated` means newly created and not yet completed processing. `processing` means currently processing with bank providers with funds in flight. `settled` means funds successfully processed and no longer flagged as instantCreditLiability. `reversed` means a previously settled transfer was reversed by the processor. `failed` means an unrecoverable error occurred before settlement.
  - `transferDirection` 'in', required
  - `transferType` 'ach-us', required
  - `txid` string, required — The transaction ID correlated with wallet platform. Can also be used in GET requests as an identifier.
  - `walletId` string, required — The wallet (Go Account) used as counterparty to the transfer. Also determines the related enterprise.

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `404` — Not Found
- `500` — Internal Server Error

---

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