Skip to main content
POST
/
api
/
service
/
payout
/
create
JavaScript
import Ivy from '@getivy/node-sdk';

const client = new Ivy({
  apiKey: process.env['IVY_API_KEY'], // This is the default and can be omitted
});

const payout = await client.payouts.create({
  amount: 1.01,
  currency: 'EUR',
  destination: {},
});

console.log(payout.id);
{
  "id": "<string>",
  "type": "beneficiary",
  "destination": {
    "type": "iban",
    "iban": {
      "accountHolderName": "<string>",
      "iban": "<string>",
      "bic": "<string>"
    },
    "sortCode": {
      "accountHolderName": "<string>",
      "sortCode": "<string>",
      "accountNumber": "<string>"
    },
    "bankCode": {
      "accountHolderName": "<string>",
      "code": "<string>",
      "accountNumber": "<string>"
    },
    "bban": {
      "accountHolderName": "<string>",
      "bban": "<string>",
      "bic": "<string>"
    },
    "wallet": {
      "address": "<string>",
      "blockchain": "ETH"
    }
  },
  "status": "paid",
  "amount": 123,
  "currency": "EUR",
  "createdAt": "<unknown>",
  "updatedAt": "<unknown>",
  "metadata": {},
  "paymentReference": "<string>",
  "transactionId": "<string>",
  "failure": {
    "code": "account_closed",
    "message": "<string>",
    "retry": true
  }
}

Authorizations

X-Ivy-Api-Key
string
header
required

API key for authentication

Headers

Idempotency-Key
string

Idempotency key for safe retries. Reusing a key with an identical request body returns the cached response. Reusing a key with a different body returns 409.

Body

application/json
amount
number
required

The payout amount in decimal format. The minimum amount is 0.01.

Required range: x > 0.01
currency
enum<string>
required
Available options:
EUR,
GBP,
USDC
destination
object
required
rail

The payment rail or blockchain used for the payout

Available options:
SEPA_INSTANT,
FASTER_PAYMENTS,
SEPA,
ELIXIR,
EXPRESS_ELIXIR,
SEK_ACCOUNT_TO_ACCOUNT,
SUMCLEARING,
STRAKSCLEARING,
SWIFT,
INTERNAL,
TARGET
metadata
object

This can be used to store any additional information you need to associate with this payout.

paymentReference
string

The payout payment reference. This is visible to the receiving party, if possible.

Minimum string length: 1

Response

200 - application/json

Create a payout

id
string
required

The payout ID

type
enum<string>
required

The payout type

Available options:
beneficiary,
customer
destination
object
required

The payout destination

status
enum<string>
required

The payout status

Available options:
paid,
pending,
in_transit,
failed,
canceled
amount
number
required

The payout amount

currency
enum<string>
required

The payout currency

Available options:
EUR,
GBP,
USDC
createdAt
any
required

The payout created at

updatedAt
any
required

The payout updated at

metadata
object

The payout metadata

paymentReference
string

The payout payment reference

transactionId
string

The payout transaction ID

failure
object

Failure details. Only available if the payout failed.