Withdrawal orders

Create withdrawal order

Create a new withdrawal order for an investor with the specified parameters.

  • The destination field supports three modes:
    • {"type":"bank-transfer","bankAccountId":"..."} - pay out by bank transfer to one of the investor's bank accounts
    • {"type":"instant-bank-transfer","bankAccountId":"..."} - instant withdrawal: pay out the same day by instant bank transfer to one of the investor's bank accounts, without waiting for the standard settlement cycle
    • {"type":"stablecoin-transfer","walletId":"..."} - pay out in stablecoin to one of the investor's external wallets (organizations or individuals with a tax identification number, on supported share classes)
  • The top-level bankAccountId field is a deprecated shorthand for the bank-transfer destination; provide exactly one of destination or bankAccountId.
  • The quantity field supports three modes:
    • {"mode":"amount","amount":{"value":"1000","currency":"USD"}} - withdraw a specific fiat amount
    • {"mode":"shares","shares":"10.5"} - withdraw a specific number of shares
    • {"mode":"total"} - withdraw all shares (full withdrawal)
  • If the order is expressed in shares or if it is total, the currency used will be the bank account currency.
  • Returns complete order details, including its UUID identifier.
  • Instant withdrawals carry extra conditions: your distributor must be enabled for them, the share class must be EUTBL or eurSAFO, the amount must be in EUR and within the investor's remaining daily instant limit, the destination bank account must be validated, and its bank must accept instant transfers. They are executed straight away and cannot be canceled.

Distribute-with-Spiko's-license distributors cannot place this order from their backend. The investor must place it directly from the browser with a short-lived Investor JWT, targeting the investor-scoped path POST /v0/investor/withdrawal-orders/ (identical payload and response, but authenticated with the investor JWT as bearer token instead of your API credentials).

post/v0/withdrawal-orders/

Request

Request body

investorIdstring uuid required

a Universally Unique Identifier

accountIdstring uuid

a Universally Unique Identifier

shareClassIdstring uuid required

a Universally Unique Identifier

bankAccountIdstring uuid nullable

Deprecated. Use destination instead.

Response

Success

idstring uuid required

a Universally Unique Identifier

investorIdstring uuid required

a Universally Unique Identifier

accountIdstring uuid required

a Universally Unique Identifier

shareClassIdstring uuid required

a Universally Unique Identifier

status'pending' | 'executed' | 'canceled' required
createdAtstring required
executedAtstring nullable required
canceledAtstring nullable required

Changes

No recorded changes to this operation across all 1 revision of this API.