> For the complete documentation index, see [llms.txt](https://docs.aquanow.io/aquanow/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.aquanow.io/aquanow/legacy/api-endpoints-or-v1.0/transaction-api/create-transactions.md).

# Create Transactions

## Request a crypto withdrawal

<mark style="color:green;">`POST`</mark> `https://api.aquanow.io/accounts/v1/transaction`

To view example requests for this endpoint, visit Aquanow's [Postman](https://developer.aquanow.io/#4462eccb-a588-4590-a6c5-7dac5816356f) documentation.

#### Headers

<table data-full-width="false"><thead><tr><th width="268">Name</th><th width="222">Type</th><th>Description</th></tr></thead><tbody><tr><td>x-api-key<mark style="color:red;">*</mark></td><td>String</td><td><p><code>{{x-api-key}}</code></p><p>API Auth Key</p></td></tr><tr><td>x-signature<mark style="color:red;">*</mark></td><td>String</td><td><p><code>49c6260c194f4d7ed5cb917dc70b9821673246b2abc1cf28f05df6a75fd24181e00f8e57b321d15ae45db58b3bffe27a</code></p><p>Signature created using your API secret</p></td></tr><tr><td>x-nonce<mark style="color:red;">*</mark></td><td>Number</td><td><p><code>1618307861949</code></p><p>Timestamp in millisecond</p></td></tr><tr><td>Content-Type<mark style="color:red;">*</mark></td><td>String</td><td><code>application/json</code></td></tr></tbody></table>

#### Request Body

<table data-full-width="false"><thead><tr><th width="272">Name</th><th width="219">Type</th><th>Description</th></tr></thead><tbody><tr><td>symbol<mark style="color:red;">*</mark></td><td>String</td><td><p>e.g., <code>BTC</code></p><p>All uppercase letters, the crypto currency you are withdrawing.</p></td></tr><tr><td>address<mark style="color:red;">*</mark></td><td>String</td><td>Destination address you are withdrawing to.</td></tr><tr><td>quantity</td><td>Number</td><td><p>The net amount of funds to be withdrawn. This is the amount that will be received after any applicable withdrawal fees have been deducted. </p><p></p><p>e.g if USDC quantity of 10,000 is inputted and withdrawal fee is 5 USDC, the balance will decrease by 10,005 and 10,000 will be sent to destination address</p><p></p><p>Must provide <code>quantity</code> OR <code>grossQuantity</code></p><p></p><p><mark style="color:orange;">NOTE:</mark> You must have sufficient funds to be able to withdraw.</p></td></tr><tr><td>transactionType<mark style="color:red;">*</mark></td><td>String</td><td><p>e.g., <code>WITHDRAW</code></p><p>Type of transaction.</p><p></p><p><mark style="color:orange;">NOTE:</mark> Currently, we only support <code>WITHDRAW</code> requests</p></td></tr><tr><td>currencyTag</td><td>String</td><td>Additional address property (Tag/Memo) that allows identifying the transfer beneficiary or destination for a transaction.</td></tr><tr><td>tag</td><td>String</td><td>Additional reference id that you can send with a withdrawal request.</td></tr><tr><td>networkType</td><td>String</td><td><p>e.g., <code>ETH</code> <br>Specify a <code>networkType</code> for symbols that support multiple networks.</p><p>One of <code>ETH</code>, <code>TRON</code>,<code>XLM</code>, <code>FTM</code>, <code>MATIC</code></p><p><mark style="color:orange;">NOTE:</mark> Only applicable to <strong>USDT, USDC, MATIC, and FTM</strong> coins.</p></td></tr><tr><td>message</td><td>String</td><td>Additional field to add any messages/notes.</td></tr><tr><td>status</td><td>String</td><td>e.g., <code>DONE</code><br>Denotes the status of the withdrawal. Can be one of <code>DONE</code> or <code>PROCESSING</code></td></tr><tr><td>txHash</td><td>String</td><td><p>e.g.,<code>70a867671a6e01e91f5888d800d3978e2ec9aec6770740572a0a485b7d4b6629</code></p><p>Specify the <code>txHash</code> (transactions hash) for transactions that are <code>DONE</code></p><p></p><p><mark style="color:orange;">NOTE:</mark> This does not create a new transaction on the blockchain.</p></td></tr><tr><td>grossQuantity</td><td>Number</td><td><p>The gross amount of funds to be withdrawn before deduction of any fees. This refers to the total amount that will be debited from the user's account.</p><p></p><p>e.g if USDC quantity of 10,000 is inputted and withdrawal fee is 5 USDC, the balance will decrease by 10,000 and 9,995 will be sent to destination address</p><p></p><p>Must provide <code>quantity</code> OR <code>grossQuantity</code></p><p></p><p><mark style="color:orange;">NOTE:</mark> You must have sufficient funds to be able to withdraw.</p></td></tr></tbody></table>

{% tabs %}
{% tab title="200: OK Create transaction with quantity" %}
Returns a [TransactionObject](/aquanow/legacy/data-objects-and-statuses/transaction-objects.md#transactionobject).

```json
{
  "itemDateTime": 1667206700438,
  "adminApproval": "PROCESSING",
  "networkType": "xrp",
  "address": "1EasiKeuuxEyjGwZfWF3Xh1muNjGpjDmeA",
  "networkFeeAqua": 0,
  "networkFee": 0,
  "quantity": 0.005,
  "grossQuantity": 0.0051,
  "bankInfo": {},
  "txId": "8c7e0127-e5b2-48c8-9fac-5ad8c3eca69d",
  "symbol": "BTC",
  "username": "helloWorld",
  "transactionType": "WITHDRAW",
  "createdAt": 1667206700438,
  "updatedAt": 1667206700438
}
```

{% endtab %}

{% tab title="200: OK Create transaction with tag" %}
Returns a [TransactionObject](/aquanow/legacy/data-objects-and-statuses/transaction-objects.md#transactionobject).

```json
{
  "retroActive": true,
  "networkType": "xrp",
  "address": "rNXQc5mT7b336bFTkenFTPiF5TYuyrJ3ZH",
  "quantity": 100,
  "bankInfo": {},
  "txId": "cca72591-db39-4f06-b483-364b73eac43c",
  "symbol": "XRP",
  "tag": "some-id-1-reference",
  "username": "helloWorld",
  "goToAdmin": true
}
```

{% endtab %}

{% tab title="200: OK Create transaction with currencyTag" %}
Returns a [TransactionObject](/aquanow/legacy/data-objects-and-statuses/transaction-objects.md#transactionobject).

```json
{
  "itemDateTime": 1667204771386,
  "networkType": "xrp",
  "address": "rNXQc5mT7b336bFTkenFTPiF5TYuyrJ3ZH",
  "quantity": 100,
  "bankInfo": {},
  "currencyTag": "2307171792",
  "txId": "730b96c4-729e-460f-93e6-96af0a045ab7",
  "symbol": "XRP",
  "username": "helloWorld",
  "freeOrNot": true,
  "transactionType": "WITHDRAW",
  "isAutopilotAddress": false,
  "adminApproval": "PROCESSING",
  "createdAt": 1667204771386,
  "updatedAt": 1667204771386
}
```

{% endtab %}

{% tab title="200: OK Create transaction with grossQuantity" %}

Returns a [TransactionObject](/aquanow/legacy/data-objects-and-statuses/transaction-objects.md#transactionobject).

```json
{
  "retroActive": true,
  "networkType": "xrp",
  "address": "rNXQc5mT7b336bFTkenFTPiF5TYuyrJ3ZH",
  "grossQuantity": 1000,
  "networkFee": 100,
  "quantity": 900,
  "bankInfo": {},
  "txId": "cca72591-db39-4f06-b483-364b73eac43c",
  "symbol": "XRP",
  "tag": "some-id-1-reference",
  "username": "helloWorld",
  "goToAdmin": true
}
```

{% endtab %}

{% tab title="400: Bad Request Insufficient funds" %}

```json
{
    "message": "Insufficient Funds"
}
```

{% endtab %}

{% tab title="400: Bad Request Both grossQuantity and quantity in same request body" %}

```
{
    "message": "Conflicting parameters provided. Please specify either 'grossQuantity' or 'quantity', but not both."
}
```

{% endtab %}

{% tab title="400: Bad Request Missing address" %}

```json
{
    "message": "Please provide an address"
}
```

{% endtab %}

{% tab title="400: Bad Request Invalid networkType" %}

```json
{
    "message": "Provided network type does not exist"
}
```

{% endtab %}
{% endtabs %}

## Request a FIAT withdrawal

<mark style="color:green;">`POST`</mark> `https://api.aquanow.io/accounts/v1/transaction`

To view example requests for this endpoint, visit Aquanow's [Postman](https://developer.aquanow.io/#4462eccb-a588-4590-a6c5-7dac5816356f) documentation.

#### Headers

<table data-full-width="false"><thead><tr><th width="278">Name</th><th width="210">Type</th><th>Description</th></tr></thead><tbody><tr><td>x-api-key<mark style="color:red;">*</mark></td><td>String</td><td><p><code>{{x-api-key}}</code></p><p>API Auth Key</p></td></tr><tr><td>x-signature<mark style="color:red;">*</mark></td><td>String</td><td><p><code>32c92460f65cbb78d0eaf9a4361fb6b0a2bb8bb4c40f531e9974a0afc12d9a328b5ff621a544d242ee9ba1dfa799c85a</code></p><p>Signature created using your API secret</p></td></tr><tr><td>x-nonce<mark style="color:red;">*</mark></td><td>Number</td><td><p><code>1657731573930</code></p><p>Timestamp in millisecond</p></td></tr><tr><td>Content-Type<mark style="color:red;">*</mark></td><td>String</td><td><code>application/json</code></td></tr></tbody></table>

#### Request Body

<table data-full-width="false"><thead><tr><th width="279">Name</th><th width="214">Type</th><th>Description</th></tr></thead><tbody><tr><td>symbol<mark style="color:red;">*</mark></td><td>String</td><td>e.g., <code>USD</code><br>All uppercase letters, the FIAT currency you are withdrawing.</td></tr><tr><td>quantity</td><td>Number</td><td><p>The net amount of funds to be withdrawn. This is the amount that will be received after any applicable withdrawal fees have been deducted. </p><p></p><p>Must provide <code>quantity</code> OR <code>grossQuantity</code></p><p></p><p><mark style="color:orange;">NOTE:</mark> You must have sufficient funds to be able to withdraw.</p></td></tr><tr><td>transactionType<mark style="color:red;">*</mark></td><td>String</td><td><p><code>WITHDRAW</code></p><p>Type of transaction</p><p></p><p><mark style="color:orange;">NOTE:</mark> Currently, we only support <code>WITHDRAW</code>.</p></td></tr><tr><td>addressId<mark style="color:red;">*</mark></td><td>String</td><td><p>Destination banking information you are withdrawing to. </p><p></p><p><mark style="color:orange;">NOTE:</mark> addressId is only required if you have <strong>multiple</strong> banking information stored.</p></td></tr><tr><td>grossQuantity</td><td>String</td><td><p>The gross amount of funds to be withdrawn before deduction of any fees. This refers to the total amount that will be debited from the user's account.</p><p></p><p>Must provide <code>quantity</code> OR <code>grossQuantity</code></p><p></p><p><mark style="color:orange;">NOTE:</mark> You must have sufficient funds to be able to withdraw.</p></td></tr></tbody></table>

{% tabs %}
{% tab title="200: OK Create transaction" %}

```json
{
    "itemDateTime": 1667206700438,
    "adminApproval": "PROCESSING",
    "networkType": "fiat",
    "address": "1EasiKeuuxEyjGwZfWF3Xh1muNjGpjDmeA",
    "networkFeeAqua": 0,
    "networkFee": 0,
    "quantity": 0.005,
    "grossQuantity": 0.005,
    "bankInfo": {},
    "txId": "1c7e0167-e5b2-48c8-9fac-5wd8c3eca80t",
    "symbol": "USD",
    "username": "helloWorld",
    "transactionType": "WITHDRAW",
    "createdAt": 1667206700438,
    "updatedAt": 1667206700438
}
```

{% endtab %}

{% tab title="200: OK Create transaction with grossQuantity" %}

```json
{
    "itemDateTime": 1667206700438,
    "adminApproval": "PROCESSING",
    "networkType": "fiat",
    "address": "1EasiKeuuxEyjGwZfWF3Xh1muNjGpjDmeA",
    "networkFeeAqua": 0,
    "networkFee": 5,
    "grossQuantity": 95,
    "quantity": 90,
    "bankInfo": {},
    "txId": "1c7e0167-e5b2-48c8-9fac-5wd8c3eca80t",
    "symbol": "USD",
    "username": "helloWorld",
    "transactionType": "WITHDRAW",
    "createdAt": 1667206700438,
    "updatedAt": 1667206700438
}
```

{% endtab %}

{% tab title="400: Bad Request Unspecified address (multiple active addresses)" %}

```json
{
    "message": "Multiple fiat address detected. Please provide an addressId"
}
```

{% endtab %}

{% tab title="400: Bad Request Insufficient funds" %}

```json
{
    "message": "Insufficient Funds"
}
```

{% endtab %}

{% tab title="400: Bad Request Missing address" %}

```json
{
    "message": "Please provide an address"
}
```

{% endtab %}

{% tab title="400: Bad Request Invalid transactionType" %}

```json
{
    "message": "must be equal to one of the allowed values"
}
```

{% endtab %}

{% tab title="400: Bad Request Both grossQuantity and quantity in same request body" %}

```json
{
    "message": "Conflicting parameters provided. Please specify either 'grossQuantity' or 'quantity', but not both."
}
```

{% endtab %}
{% endtabs %}
