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

# transaction.created

> Sent when a withdrawal is submitted to the exchange

## transaction.created

Fired when a withdrawal is successfully submitted to the exchange. At this point the transaction is pending — it has been accepted by the exchange but may not yet be broadcast on-chain.

### When this event is sent

* A withdrawal is executed after the user confirms the quote
* The exchange accepts the withdrawal request

### Payload

```json Example payload theme={null}
{
  "event": "transaction.created",
  "eventId": "txn_ghi789",
  "timestamp": "2026-04-21T12:00:00.000Z",
  "data": {
    "transaction": {
      "id": "txn_ghi789",
      "recordId": "3f2a1b4c-5d6e-4f70-8a9b-0c1d2e3f4a5b",
      "walletId": "wal_abc123",
      "quoteId": "quot_def456",
      "exchange": "coinbase",
      "asset": "BTC",
      "amount": "0.1",
      "address": "bc1qxy2kgdygjrsqtzq2n0yrf2493p83kkfjhx0wlh",
      "network": "Bitcoin",
      "tag": null
    },
    "cexTransaction": {
      "id": "cb-internal-id",
      "txid": null,
      "status": "pending",
      "fee": {
        "cost": 0.0001,
        "currency": "BTC"
      }
    },
    "rawResponse": null
  }
}
```

### Fields

| Field | Type | Description |
| - | - | - |
| `data.transaction.id` | `string` | Bluvo transaction identifier |
| `data.transaction.recordId` | `string` | Bluvo record identifier — matches the `id` returned by the withdraw execute endpoint |
| `data.transaction.walletId` | `string` | Source wallet |
| `data.transaction.quoteId` | `string` | Quote this transaction was created from |
| `data.transaction.exchange` | `string` | Exchange identifier |
| `data.transaction.asset` | `string` | Asset ticker |
| `data.transaction.amount` | `string` | Withdrawal amount |
| `data.transaction.address` | `string` | Destination address |
| `data.transaction.network` | `string \| undefined` | Blockchain network |
| `data.transaction.tag` | `string \| null` | Memo/destination tag (for XRP, etc.) |
| `data.cexTransaction.id` | `string` | Exchange-internal transaction ID |
| `data.cexTransaction.txid` | `string \| null` | On-chain transaction hash (usually `null` at creation, populated after broadcast) |
| `data.cexTransaction.status` | `string` | Exchange-reported status (e.g., `pending`) |
| `data.cexTransaction.fee` | `object` | Fee charged by the exchange |
| `data.cexTransaction.fee.cost` | `number` | Fee amount |
| `data.cexTransaction.fee.currency` | `string` | Fee currency |
| `data.rawResponse` | `unknown \| null` | Raw exchange API response |

<Warning>
  The `rawResponse` field contains the unmodified response from the exchange API. Its structure varies between exchanges and should not be relied upon — use the structured fields instead.
</Warning>

<Info>
  The `cexTransaction.txid` is typically `null` at creation time. You'll receive a `transaction.broadcasted` event once the on-chain hash is available.
</Info>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.