Payouts are the most flexible way to send money from your Ivy account to anyone — customers, partners, suppliers, or any external account.

Common use cases include:

  • Trading: Instantly pay your supplier after a successful trade or delivery
  • Marketplaces: Payout to sellers, drivers, or freelancers
  • Finance: Move funds between treasury accounts or pay out interest/dividends
  • Consumer: Customer withdrawals, refunds, or loyalty rewards
  • Payroll: Pay out salaries, wages, or commissions

Payouts currently support fiat currencies. Stablecoin and virtual account payouts are coming soon.

How Payouts Work

1

Choose payout type

  • Closed-loop: Pay a customer who has previously paid in via Ivy (reference their order)
  • Open-loop: Pay any external account using their bank details (IBAN, sort code, etc.)
2

Create a payout

Use the API to specify the amount, currency, and destination (orderId or financial address).

3

Track status

Monitor payout status in the Dashboard or via webhooks. Funds usually arrive instantly, but can take up to 2 business days depending on the bank.

See API Reference for full details

Customer payouts allow merchants to transfer funds directly to customers. This can be done using the customer’s financial address or referencing a previous order. The payouts can currently be initiated only through the API.

API Reference

To create a payout from a merchant account, use the endpoint. This endpoint lets you specify the payout- amount, currency, and destination.

The destination can be a previous orderId for closed-loop payouts or a financialAddress for open-loop payouts. Set the orderId field in the destination object to send a closed-loop payout, i.e. a payout to a customer who has previously paid in money using Ivy Instant Bank Payments.

curl --request POST \
     --url https://api.getivy.de/api/service/payout/create \
     --header 'X-Ivy-Api-Key: YOUR_API_KEY' \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --data '
{
  "amount": 100,
  "currency": "EUR",
  "destination": {
    "orderId": "abc123"
  },
  "metadata": {
    "purpose": "random"
  }
}
'

Statuses

StatusDescription
paidThe money has successfully arrived in the customer’s bank account.
failedThe money has not arrived in the customer’s bank account within 6 days and will not arrive anymore.
canceledThe payout flow has not been completed and the session expired.

Listing and Retrieving a Payout

Dashboard

You can view all payouts in the Dashboard. To access your payouts:

  1. Log in to the Ivy Dashboard.
  2. Navigate to the Payouts section to see a table of all payouts.

API

To list all payouts:

curl --request POST \
     --url https://api.getivy.de/api/service/payout/list \
     --header 'X-Ivy-Api-Key: YOUR_API_KEY' \
     --header 'accept: application/json' \
     --header 'content-type: application/json'

To retrieve a specific payout:

curl --request POST \
     --url https://api.getivy.de/api/service/payout/retrieve \
     --header 'X-Ivy-Api-Key: YOUR_API_KEY' \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --data '
{
  "id": "payout_id"
}
'