# Transaction

## Module endpoints

* [`GET /transactions`](#get-transactions)
* [`GET /transactions/:id`](#get-transactions-id)
* [`POST /transactions/:id/approve`](#post-transactions-id-approve)
* [`POST /transactions/:id/confirm`](#post-transactions-id-confirm)
* [`POST /transactions/:id/fail`](#post-transactions-id-fail)
* [`POST /transactions/:id/reject`](#post-transactions-id-reject)
* [`POST /transactions/deposit`](#post-transactions-deposit)
* [`POST /transactions/pay`](#post-transactions-pay)
* [`POST /transactions/transfer`](#post-transactions-transfer)
* [`POST /transactions/withdrawal`](#post-transactions-withdrawal)

### `GET /transactions`

> `GET` <https://api.slyk.i&#x6F;**/transactions>\*\*

Retrieves a paginated list of `transactions`.

{% tabs %}
{% tab title="Available Filters" %}

| Name                    | Type            | Example                                                                                           |
| ----------------------- | --------------- | ------------------------------------------------------------------------------------------------- |
| **assetCode**           | `=` `in` `nin`  | `filter[assetCode]=in:USD,EUR,BTC`                                                                |
| **code**                | `=` `in` `nin`  | `filter[code]=in:internal,bank:wire`                                                              |
| **createdAt**           | `=` `gte` `lte` | `filter[createdAt]=lte:2019-07-21`                                                                |
| **description**         | `like`          | `filter[description]=some description excerpt`                                                    |
| **destinationWalletId** | `=` `in` `nin`  | `filter[destinationWalletId]=705af61e-1387-49b0-90f8-45c39fe56686`                                |
| **externalId**          | `=` `in` `nin`  | `filter[externalId]=in:3feaac72-7330-4b32-9801-28b6f69aaf25,705af61e-1387-49b0-90f8-45c39fe56686` |
| **externalReference**   | `=`             | `filter[externalReference]=thud`                                                                  |
| **id**                  | `=` `in` `nin`  | `filter[id]=nin:802a5163-7ad3-4047-b600-088c1f746733,9d3bed88-34b6-4a06-aa79-ed4b32ba0d44`        |
| **originWalletId**      | `=` `in` `nin`  | `filter[originWalletId]=705af61e-1387-49b0-90f8-45c39fe56686`                                     |
| **reference**           | `=`             | `filter[originWalletId]=waldo`                                                                    |
| **status**              | `=` `in` `nin`  | `filter[status]=nin:pending,failed,rejected`                                                      |
| **type**                | `=` `in` `nin`  | `filter[type]=in:deposit`                                                                         |
| **walletId**            | `=` `in` `nin`  | `filter[walletId]=802a5163-7ad3-4047-b600-088c1f746733`                                           |

{% hint style="info" %}
The `description` filter performs a `SQL` query using the `like` operator.
{% endhint %}

{% hint style="info" %}
The `walletId` filter will return any transaction where its set as `destinationWalletId` or `originWalletId`.
{% endhint %}
{% endtab %}

{% tab title="Available Sorts" %}

| Name          | Example                                                            |
| ------------- | ------------------------------------------------------------------ |
| **amount**    | <p><code>sort=amount</code><br><code>sort=-amount</code></p>       |
| **createdAt** | <p><code>sort=createdAt</code><br><code>sort=-createdAt</code></p> |
| {% endtab %}  |                                                                    |

{% tab title="Paginate Options" %}

| Name         | Description                                             | Example          |
| ------------ | ------------------------------------------------------- | ---------------- |
| **size**     | Defines the number of results per page. Default = 30.   | `page[size]=2`   |
| **number**   | Defines the number of the page to retrieve. Default = 1 | `page[number]=2` |
| {% endtab %} |                                                         |                  |

{% tab title="Response" %}

```javascript
{
  "data": [
    {
      "amount": "10.00000000",
      "assetCode": "usd",
      "code": "internal",
      "createdAt": "2019-07-20T14:30:37.483Z",
      "customData": {},
      "description": "A withdrawal transaction so `destinationWalletId` is `null`",
      "destinationAddress": null,
      "destinationWalletId": null,
      "externalId": null,
      "externalReference": null,
      "id": "02731cf6-7452-424b-905e-f11d05715585",
      "metadata": {},
      "originAddress": null,
      "originWalletId": "2c9cf763-4103-4b5e-9e44-d350af41117a",
      "status": "pending",
      "type": "withdrawal",
      "updatedAt": "2019-07-20T14:30:37.483Z"
    },
    {
      "amount": "1234.5678",
      "assetCode": "biz",
      "code": "internal",
      "createdAt": "2019-07-20T14:30:37.483Z",
      "customData": {},
      "description": "A deposit transaction so `originWalletId` field is `null`",
      "destinationAddress": null,
      "destinationWalletId": "2a5489f2-73a5-4cba-a6b2-0b77b1ad94ce",
      "externalId": null,
      "externalReference": null,
      "id": "6042126c-9f63-4e47-b336-55ee56493826",
      "metadata": { "foo": "bar" },
      "originAddress": null,
      "originWalletId": null,
      "status": "rejected",
      "type": "deposit",
      "updatedAt": "2019-07-20T14:30:37.483Z"
    }
  ],
  "total": 1
}
```

{% endtab %}
{% endtabs %}

### `GET /transactions/:id`

> `GET` <https://api.slyk.i&#x6F;**/transactions/:id>\*\*

Retrieves the `transactions` of the given `id`.

{% tabs %}
{% tab title="Response" %}

```javascript
{
  "data": {
    "amount": "10.00",
    "assetCode": "usd",
    "code": "internal",
    "createdAt": "2019-07-20T14:30:37.483Z",
    "customData": {},
    "description": "A deposit transaction so `originWalletId` field is `null`",
    "destinationAddress": null,
    "destinationWalletId": "2a5489f2-73a5-4cba-a6b2-0b77b1ad94ce",
    "externalId": null,
    "externalReference": null,
    "id": "35589275-5db3-4b99-88cc-0bbdaa94ae8f",
    "metadata": {},
    "originAddress": null,
    "originWalletId": null,
    "status": "rejected",
    "type": "deposit",
    "updatedAt": "2019-07-20T14:30:37.483Z"
  }
}
```

{% endtab %}
{% endtabs %}

### `POST /transactions/:id/approve`

> `POST` <https://api.slyk.i&#x6F;**/transactions/:id/approve>\*\*

Approves the `transaction` of the given `id`.

{% hint style="info" %}
Its only possible to approve transactions that are `pending`.
{% endhint %}

{% tabs %}
{% tab title="Response" %}

```javascript
{
  "data": {
    "amount": "9800.00000000",
    "assetCode": "eur",
    "code": "bank:wire",
    "createdAt": "2019-07-20T14:30:37.483Z",
    "customData": {
      "month": "03",
      "year": "2020"
    }
    "description": "Salary",
    "destinationAddress": null,
    "destinationWalletId": null,
    "externalId": null,
    "externalReference": null,
    "id": "35589275-5db3-4b99-88cc-0bbdaa94ae8f",
    "metadata": {
      "transactionData": {
        "bankAddress": "Tussen Meer 375C, 1069 DR Amsterdam",
        "bankName": "IGN",
        "country": "Netherlands",
        "iban": "NL64INGB8219153XXX",
        "swiftCode": "INGBNL2AXXX"
      }
    },
    "originAddress": null,
    "originWalletId": "167d4b2b-5607-47d1-b54a-fb9036bf40dd",
    "status": "processing",
    "type": "withdrawal",
    "updatedAt": "2019-07-20T14:30:37.483Z"
  }
  }
}
```

{% endtab %}
{% endtabs %}

### `POST /transactions/:id/confirm`

> `POST` <https://api.slyk.i&#x6F;**/transactions/:id/confirm>\*\*

Confirms the `transaction` of the given `id`.

{% tabs %}
{% tab title="Response" %}

```javascript
{
  "data": {
    "amount": "9800.00000000",
    "assetCode": "eur",
    "code": "bank:wire",
    "createdAt": "2019-07-20T14:30:37.483Z",
    "customData": {
      "month": "03",
      "year": "2020"
    }
    "description": "Salary",
    "destinationAddress": null,
    "destinationWalletId": null,
    "externalId": null,
    "externalReference": null,
    "id": "35589275-5db3-4b99-88cc-0bbdaa94ae8f",
    "metadata": {
      "transactionData": {
        "bankAddress": "Tussen Meer 375C, 1069 DR Amsterdam",
        "bankName": "IGN",
        "country": "Netherlands",
        "iban": "NL64INGB8219153XXX",
        "swiftCode": "INGBNL2AXXX"
      }
    },
    "originAddress": null,
    "originWalletId": "167d4b2b-5607-47d1-b54a-fb9036bf40dd",
    "status": "completed",
    "type": "withdrawal",
    "updatedAt": "2019-07-20T14:30:37.483Z"
  }
}
```

{% endtab %}
{% endtabs %}

### `POST /transactions/:id/fail`

> `POST` <https://api.slyk.i&#x6F;**/transactions/:id/fail>\*\*

Fails the `transaction` of the given `id`.

{% tabs %}
{% tab title="Request Parameters" %}

| Field        | Type     | Required | Description  |
| ------------ | -------- | -------- | ------------ |
| **reason**   | `string` | `false`  | Fail reason. |
| {% endtab %} |          |          |              |

{% tab title="Request" %}

```javascript
{
  "reason": "Invalid IBAN."
}
```

{% endtab %}

{% tab title="Response" %}

```javascript
{
  "data": {
    "amount": "9800.00000000",
    "assetCode": "eur",
    "code": "bank:wire",
    "createdAt": "2019-07-20T14:30:37.483Z",
    "customData": {
      "month": "03",
      "year": "2020"
    }
    "description": "Salary",
    "destinationAddress": null,
    "destinationWalletId": null,
    "externalId": null,
    "externalReference": null,
    "id": "35589275-5db3-4b99-88cc-0bbdaa94ae8f",
    "metadata": {
      "failReason": "Invalid IBAN.",
      "transactionData": {
        "bankAddress": "Tussen Meer 375C, 1069 DR Amsterdam",
        "bankName": "IGN",
        "country": "Netherlands",
        "iban": "NL64INGB8219153XXX",
        "swiftCode": "INGBNL2AXXX"
      }
    },
    "originAddress": null,
    "originWalletId": "167d4b2b-5607-47d1-b54a-fb9036bf40dd",
    "status": "processing",
    "type": "withdrawal",
    "updatedAt": "2019-07-20T14:30:37.483Z"
  }
  }
}
```

{% endtab %}
{% endtabs %}

### `POST /transactions/:id/reject`

> `POST` <https://api.slyk.i&#x6F;**/transactions/:id/reject>\*\*

Rejects the `transaction` of the given `id`.

{% hint style="info" %}
Its only possible to reject transactions that are `pending`.
{% endhint %}

{% tabs %}
{% tab title="Request Parameters" %}

| Field        | Type     | Required | Description    |
| ------------ | -------- | -------- | -------------- |
| **reason**   | `string` | `false`  | Reject reason. |
| {% endtab %} |          |          |                |

{% tab title="Request" %}

```javascript
{
  "reason": "Wrong amount."
}
```

{% endtab %}

{% tab title="Response" %}

```javascript
{
  "data": {
    "amount": "9800.00000000",
    "assetCode": "eur",
    "code": "bank:wire",
    "createdAt": "2019-07-20T14:30:37.483Z",
    "customData": {
      "month": "03",
      "year": "2020"
    }
    "description": "Salary",
    "destinationAddress": null,
    "destinationWalletId": null,
    "externalId": null,
    "externalReference": null,
    "id": "35589275-5db3-4b99-88cc-0bbdaa94ae8f",
    "metadata": {
      "rejectedReason": "Wrong amount.",
      "transactionData": {
        "bankAddress": "Tussen Meer 375C, 1069 DR Amsterdam",
        "bankName": "IGN",
        "country": "Netherlands",
        "iban": "NL64INGB8219153XXX",
        "swiftCode": "INGBNL2AXXX"
      }
    },
    "originAddress": null,
    "originWalletId": "167d4b2b-5607-47d1-b54a-fb9036bf40dd",
    "status": "rejected",
    "type": "withdrawal",
    "updatedAt": "2019-07-20T14:30:37.483Z"
  }
}
```

{% endtab %}
{% endtabs %}

### `POST /transactions/deposit`

> `POST` <https://api.slyk.i&#x6F;**/transactions/deposit>\*\*

Creates a new `deposit` transaction.

{% tabs %}
{% tab title="Request Parameters" %}

| Field                   | Type      | Required | Description                                                                                                                         |
| ----------------------- | --------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| **amount**              | `string`  | `true`   | Transacted amount.                                                                                                                  |
| **assetCode**           | `string`  | `true`   | Code of the asset being transacted.                                                                                                 |
| **code**                | `string`  | `true`   | Defines through which `feature` and `method` the assets will be deposited (more information below).                                 |
| **commit**              | `boolean` | `false`  | Transaction is created already as `processing`. Only available for `crypto`, `bank` and `internal` code features. Default: `false`. |
| **customData**          | `object`  | `false`  | Stores any additional information the user may provide.                                                                             |
| **data**                | `object`  | `true`   | May contain necessary data for the payment gateway. The information required in this field depends on the provided `code` `method`. |
| **description**         | `string`  | `false`  | A free text field.                                                                                                                  |
| **destinationAddress**  | `string`  | `false`  | Destination address.                                                                                                                |
| **destinationWalletId** | `string`  | `true`   | ID of the wallet where the assets are being deposited. Format: `uuid`.                                                              |
| **externalReference**   | `string`  | `false`  | External reference.                                                                                                                 |
| {% endtab %}            |           |          |                                                                                                                                     |

{% tab title="Codes" %}

| Feature      | Methods                | Example          |
| ------------ | ---------------------- | ---------------- |
| `apm`        | `paypal`               | `apm:paypal`     |
| `bank`       | `wire`                 | `bank:wire`      |
| `card`       | `stripe`               | `card:stripe`    |
| `crypto`     | `coinbase`, `ethereum` | `crypto:bitcoin` |
| `internal`   | -                      | `internal`       |
| {% endtab %} |                        |                  |

{% tab title="Request" %}

```javascript
{
  "amount": "20",
  "assetCode": "USD",
  "code": "apm:paypal",
  "customData": { "foo": "bar" },
  "data": { "description": "paypal payment" },
  "description": "Some description",
  "destinationAddress": "foo",
  "destinationWalletId": "7eb44aff-bb08-4374-856c-98f297324dac"
}
```

{% endtab %}

{% tab title="Response" %}

* **`apm:paypal`** example:

```javascript
{
  "data": {
    "amount": "20.00000000",
    "assetCode": "USD",
    "code": "apm:paypal",
    "createdAt": "2019-07-20T14:30:37.483Z",
    "customData": { "foo": "bar" },
    "description": "Some description",
    "destinationAddress": "foo",
    "destinationWalletId": "7eb44aff-bb08-4374-856c-98f297324dac",
    "externalId": null,
    "externalReference": null,
    "id": "35589275-5db3-4b99-88cc-0bbdaa94ae8f",
    "metadata": {
      "gatewayResponse": {
        "id": "0fbe6d55-5b83-4bfb-97b3-53b9ef9d4957",
        "metadata": {
          "amount": "20.00000000",
          "..."
        },
        "..."
      },
      "paymentMethod": "paypal"
    },
    "originAddress": null,
    "originWalletId": null,
    "status": "pending",
    "type": "deposit",
    "updatedAt": "2019-07-20T14:30:37.483Z"
  }
}
```

* **`bank:wire`** example:&#x20;

```javascript
{
  "data": {
    "amount": "20.00000000",
    "assetCode": "EUR",
    "code": "bank:wire",
    "createdAt": "2019-07-20T14:30:37.483Z",
    "customData": { "foo": "bar" },
    "description": "Some description",
    "destinationAddress": "foo",
    "destinationWalletId": "7eb44aff-bb08-4374-856c-98f297324dac",
    "externalId": null,
    "externalReference": null,
    "id": "35589275-5db3-4b99-88cc-0bbdaa94ae8f",
    "metadata": {},
    "originAddress": null,
    "originWalletId": null,
    "status": "pending",
    "type": "deposit",
    "updatedAt": "2019-07-20T14:30:37.483Z"
  }
}
```

* **`card:stripe`** example:

```javascript
{
  "data": {
    "amount": "20.00000000",
    "assetCode": "USD",
    "code": "card:stripe",
    "createdAt": "2019-07-20T14:30:37.483Z",
    "customData": { "foo": "bar" },
    "description": "Some description",
    "destinationAddress": "foo",
    "destinationWalletId": "7eb44aff-bb08-4374-856c-98f297324dac",
    "externalId": null,
    "externalReference": null,
    "id": "35589275-5db3-4b99-88cc-0bbdaa94ae8f",
    "metadata": {
      "gatewayResponse": {
        "id": "0fbe6d55-5b83-4bfb-97b3-53b9ef9d4957",
        "metadata": {
          "amount": "20.00000000",
          "..."
        },
        "..."
      },
      "paymentMethod": "stripe"
    },
    "originAddress": null,
    "originWalletId": null,
    "status": "pending",
    "type": "deposit",
    "updatedAt": "2019-07-20T14:30:37.483Z"
  }
}
```

* **`internal`** example:

```javascript
{
  "data": {
    "amount": "100.00000000",
    "assetCode": "SLK",
    "code": "internal",
    "createdAt": "2019-07-20T14:30:37.483Z",
    "customData": { "foo": "bar" },
    "description": "Some description",
    "destinationAddress": "foo",
    "destinationWalletId": "7eb44aff-bb08-4374-856c-98f297324dac",
    "externalId": null,
    "externalReference": null,
    "id": "35589275-5db3-4b99-88cc-0bbdaa94ae8f",
    "metadata": {},
    "originAddress": null,
    "originWalletId": null,
    "status": "pending",
    "type": "deposit",
    "updatedAt": "2019-07-20T14:30:37.483Z"
  }
}
```

{% endtab %}
{% endtabs %}

### **`POST /transactions/pay`**

> `POST` <https://api.slyk.i&#x6F;**/transactions/pay>\*\*

Creates a new `transfer` transaction with the code set to `pay` and set the `defaultWalletId` as the  `destinationWalletId`.

{% tabs %}
{% tab title="Request Parameters" %}

| Name               | Type     | Required | Description                                                        |
| ------------------ | -------- | -------- | ------------------------------------------------------------------ |
| **amount**         | `string` | `true`   | Transacted amount.                                                 |
| **assetCode**      | `string` | `true`   | Code of the asset being transacted.                                |
| **customData**     | `object` | `false`  | Stores any additional information the user may provide.            |
| **description**    | `string` | `false`  | A free text field.                                                 |
| **originWalletId** | `string` | `true`   | ID of the wallet from where the assets are coming. Format: `uuid`. |
| {% endtab %}       |          |          |                                                                    |

{% tab title="Request" %}

```javascript
{
  "amount": "30",
  "assetCode": "usd",
  "customData": { 
    "month": "03",
    "year": "2020"
  },
  "description": "Monthly Fee",
  "originWalletId": "97821ce5-bfc7-4185-b263-3233d97b95ec"
}
```

{% endtab %}

{% tab title="Response" %}

```javascript
{
  "data": {
    "amount": "30.00000000",
    "assetCode": "usd",
    "code": "pay",
    "createdAt": "2019-02-04T18:59:58.168Z",
    "customData": { 
      "month": "03",
      "year": "2020"
    },
    "description": "Monthly Fee",
    "destinationAddress": null,
    "destinationWalletId": "9afa8a2d-023a-4040-b591-c03077f43d23",
    "externalId": null,
    "id": "5f054ed2-7374-460f-800d-4e82f4e03d24",
    "metadata": {},
    "originAddress": null,
    "originWalletId": "97821ce5-bfc7-4185-b263-3233d97b95ec",
    "status": "pending",
    "type": "transfer",
    "updatedAt": "2019-02-04T18:59:58.168Z"
  }
}
```

{% endtab %}
{% endtabs %}

### `POST /transactions/transfer`

> `POST` <https://api.slyk.i&#x6F;**/transactions/transfer>\*\*

Creates a new `transfer` transaction.

{% tabs %}
{% tab title="Request Parameters" %}

| Field                   | Type      | Required | Description                                                                 |
| ----------------------- | --------- | -------- | --------------------------------------------------------------------------- |
| **amount**              | `string`  | `true`   | Transacted amount.                                                          |
| **assetCode**           | `string`  | `true`   | Code of the asset being transacted.                                         |
| **code**                | `string`  | `true`   | Defines through which `feature` and `method` the assets will be transfered. |
| **commit**              | `boolean` | `false`  | Confirms the transaction on creation. Default: `false`.                     |
| **customData**          | `object`  | `false`  | Stores any additional information the user may provide.                     |
| **description**         | `string`  | `false`  | A free text field.                                                          |
| **destinationAddress**  | `string`  | `false`  | Destination address.                                                        |
| **destinationWalletId** | `string`  | `true`   | ID of the wallet where the assets are being deposited. Format: `uuid`.      |
| **externalReference**   | `string`  | `false`  | External Reference.                                                         |
| **originAddress**       | `string`  | `false`  | Origin address.                                                             |
| **originWalletId**      | `string`  | `true`   | ID of the wallet from where the assets are coming. Format: `uuid`.          |
| {% endtab %}            |           |          |                                                                             |

{% tab title="Codes" %}

| Feature      | Methods | Example    |
| ------------ | :-----: | ---------- |
| `internal`   |    -    | `internal` |
| {% endtab %} |         |            |

{% tab title="Request" %}

```javascript
{
  "amount": "7.33",
  "assetCode": "usd",
  "code": "internal",
  "commit": true,
  "customData": { 
    "pizzaPrice": "21.99",
    "groupSize": "3"
  },
  "description": "Soccer night",
  "destinationAddress": "plugh",
  "destinationWalletId": "7eb44aff-bb08-4374-856c-98f297324dac",
  "originAddress": "thud",
  "originWalletId": "167d4b2b-5607-47d1-b54a-fb9036bf40dd"
}
```

{% endtab %}

{% tab title="Response" %}

```javascript
{
  "data": {
    "amount": "7.33000000",
    "assetCode": "usd",
    "code": "internal",
    "createdAt": "2019-07-20T14:30:37.483Z",
    "customData": { 
      "pizzaPrice": "21.99",
      "groupSize": "3"
    },
    "description": "Soccer night",
    "destinationAddress": "plugh",
    "destinationWalletId": "7eb44aff-bb08-4374-856c-98f297324dac",
    "externalId": null,
    "externalReference": null,
    "id": "35589275-5db3-4b99-88cc-0bbdaa94ae8f",
    "metadata": {},
    "originAddress": "thud",
    "originWalletId": "167d4b2b-5607-47d1-b54a-fb9036bf40dd",
    "status": "pending",
    "type": "transfer",
    "updatedAt": "2019-07-20T14:30:37.483Z"
  }
}
```

{% endtab %}
{% endtabs %}

### `POST /transactions/withdrawal`

> `POST` <https://api.slyk.i&#x6F;**/transactions/withdrawal>\*\*

Creates a new `withdrawal` transaction.

{% tabs %}
{% tab title="Request Parameters" %}

<table data-header-hidden><thead><tr><th>Field</th><th width="201">Type</th><th>Required</th><th>Description</th></tr></thead><tbody><tr><td>Field</td><td>Type</td><td>Required</td><td>Description</td></tr><tr><td><strong>amount</strong></td><td><code>string</code></td><td><code>true</code></td><td>Transacted amount.</td></tr><tr><td><strong>assetCode</strong></td><td><code>string</code></td><td><code>true</code></td><td>Code of the asset being transacted.</td></tr><tr><td><strong>code</strong></td><td><code>enum&#x3C;string></code></td><td><code>true</code></td><td>Defines through which <code>feature</code> and <code>method</code> the assets will be withdrawn (there are more informations about it following this table).</td></tr><tr><td><strong>commit</strong></td><td><code>boolean</code></td><td><code>false</code></td><td>Transaction is created already as <code>processing</code>. Only available for <code>crypto</code>, <code>bank</code> and <code>internal</code> code features. Default: <code>false</code>.</td></tr><tr><td><strong>customData</strong></td><td><code>object</code></td><td><code>false</code></td><td>Stores any additional information the user may provide.</td></tr><tr><td><strong>description</strong></td><td><code>string</code></td><td><code>false</code></td><td>A free text field.</td></tr><tr><td><strong>externalReference</strong></td><td><code>string</code></td><td><code>false</code></td><td>External Reference.</td></tr><tr><td><strong>originAddress</strong></td><td><code>string</code></td><td><code>false</code></td><td>Origin address.</td></tr><tr><td><strong>originWalletId</strong></td><td><code>string</code></td><td><code>true</code></td><td>ID of the wallet from where the assets are coming. Format: <code>uuid</code>.</td></tr></tbody></table>
{% endtab %}

{% tab title="Codes" %}

| Feature      | Methods | Example     |
| ------------ | :-----: | ----------- |
| `bank`       |  `wire` | `bank:wire` |
| `internal`   |    -    | `internal`  |
| {% endtab %} |         |             |

{% tab title="Request" %}

```javascript
{
  "amount": "9800",
  "assetCode": "eur",
  "code": "bank:wire",
  "customData": {
    "month": "03",
    "year": "2020"
  }
  "data": {
    "bankAddress": "Tussen Meer 375C, 1069 DR Amsterdam",
    "bankName": "IGN",
    "country": "Netherlands",
    "iban": "NL64INGB8219153XXX",
    "swiftCode": "INGBNL2AXXX"
  },
  "description": "Salary",
  "originWalletId": "167d4b2b-5607-47d1-b54a-fb9036bf40dd"
}
```

{% endtab %}

{% tab title="Response" %}

```javascript
{
  "data": {
    "amount": "9800.00000000",
    "assetCode": "eur",
    "code": "bank:wire",
    "createdAt": "2019-07-20T14:30:37.483Z",
    "customData": {
      "month": "03",
      "year": "2020"
    }
    "description": "Salary",
    "destinationAddress": null,
    "destinationWalletId": null,
    "externalId": null,
    "externalReference": null,
    "id": "35589275-5db3-4b99-88cc-0bbdaa94ae8f",
    "metadata": {
      "transactionData": {
        "bankAddress": "Tussen Meer 375C, 1069 DR Amsterdam",
        "bankName": "IGN",
        "country": "Netherlands",
        "iban": "NL64INGB8219153XXX",
        "swiftCode": "INGBNL2AXXX"
      }
    },
    "originAddress": null,
    "originWalletId": "167d4b2b-5607-47d1-b54a-fb9036bf40dd",
    "status": "pending",
    "type": "withdrawal",
    "updatedAt": "2019-07-20T14:30:37.483Z"
  }
}
```

{% endtab %}
{% endtabs %}
