# Get Payout Transaction

Fetch one of the user's payouts and its current status.

## Overview

Use the `payoutId` returned by [Initiate Payout](https://docs.aureahub.com/docs/payout-initiate.md). Only the user who created the payout can read it; anyone else gets `404`. The fields are the same as in [List Payout Transactions](https://docs.aureahub.com/docs/payout-list.md).

Pass the `isTestnet` value the payout was created with: a sandbox payout is found only with `isTestnet=true`, a production payout only without it (or with `false`). Asking in the other environment answers `404`.

The status changes as the bank ramp reports the payout to Aurea: `pending` → `processing` → `completed` or `failed`, and never back.

## Endpoint

### `GET /v1/ramp/bank/payout/transactions/{id}`

Authentication: bearer token required.

Returns a single payout record owned by the authenticated user, in one environment.

**Path parameters**

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `id` | string | yes | Payout UUID (payoutId) |

**Query parameters**

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `isTestnet` | boolean | no | `true` for a sandbox payout; `false` or omitted for production. Any other value returns `400`. |

**Responses**

`200` OK

```json
{
  "id": "e8b2d4f6-1a3c-4e5b-8d7f-9c0a2b4d6e81",
  "externalId": "4b7d9f1a-2c3e-4a5b-8c6d-7e8f9a0b1c2d",
  "checkoutUrl": "<hosted payout URL>",
  "checkoutExpiresAt": "2026-09-11T10:30:00.000Z",
  "cryptoCurrency": "USDC",
  "cryptoAuthorizedAmount": "25500000",
  "fiatCurrency": "EUR",
  "fiatAmount": "23.12",
  "exchangeRate": "0.9248",
  "status": "processing",
  "noahTransactionId": "<the bank ramp transaction ID>",
  "returnUrl": "https://api.aureahub.com/v1/ramp/bank/payout/return?session=4b7d9f1a-2c3e-4a5b-8c6d-7e8f9a0b1c2d",
  "createdAt": "2026-09-11T10:00:00.000Z",
  "updatedAt": "2026-09-11T10:05:00.000Z"
}
```

`404` Not Found

```json
{ "statusCode": 404, "error": "NotFoundError", "message": "Payout not found" }
```

## Implementation

```javascript
async function getPayout(token, payoutId, { sandbox = false } = {}) {
  const res = await fetch(`https://api.aureahub.com/v1/ramp/bank/payout/transactions/${payoutId}?isTestnet=${sandbox}`, {
    headers: { Authorization: `Bearer ${token}` }
  });
  if (res.status === 404) throw new Error('Payout not found');
  if (!res.ok) throw new Error(`Get payout failed: ${res.status}`);
  return res.json();
}
```

---

Web version: https://docs.aureahub.com/#payout-get
