Skerry/ Reference/ Paying out

Up to 50 payouts in one call

post/payouts/batches

Up to 50 payouts in one call. All are checked first, and the batch's total per customer and currency is checked against the caller's daily and monthly limits before anything is sent; each then runs as its own payout and reports its own outcome. Needs an Idempotency-Key. A dry run checks every item and the totals and sends nothing.

Before you call

Credential
Authorization: Bearer $KEY
Scope
payouts:write
Moves money
yes
Idempotency
required
Untrusted
reference, payouts.reference

Parameters

  • Idempotency-Keystringrequired
    Header. A repeat with the same key and body returns the first answer instead of acting twice.

Request bodyapplication/json, required

  • payoutslist of objectrequired
    • customer_idstringrequired
      At most 200 characters.
    • amountstring
      The amount as a decimal string in from.currency. Send this or amount_minor. Pattern: ^\d{1,18}(.\d{1,10})?$.
    • amount_minorinteger
      The same amount in integer minor units of from.currency. At least 1.
    • fromobjectrequired
      • currencystringrequired
        A lowercase currency code or stablecoin ticker.
      • wallet_idstringrequired
        At most 200 characters.
    • toobjectrequired
      Exactly one of payee_id, wallet_id or address.
      • currencystringrequired
        A lowercase currency code or stablecoin ticker.
      • payee_idstring
        At most 200 characters.
      • wallet_idstring
        At most 200 characters.
      • addressstring
        At most 200 characters.
      • chainstring
        At most 40 characters.
    • railstring
      At most 40 characters.
    • speedstring
      One of: fastest, cheapest, standard.
    • quote_idstring
      Executes exactly what was quoted, once. At most 200 characters.
    • execute_atstring (date-time)
    • scheduleobject
      • everyintegerrequired
        At least 1.
      • unitstringrequired
        One of: day, week, month.
      • end_atstring (date-time)
      • countinteger
        At least 1.
    • release_onstring or object
    • expires_atstring (date-time)
    • travel_ruleobject
      • originatorobject
      • beneficiaryobject
    • referencestring
      At most 500 characters.
    • external_refstring
      The document this belongs to in your own system. At most 200 characters.
    • external_kindstring
      One of: invoice, bill, order, booking, other.
    • remittanceobject
      • invoice_numberstring
        At most 200 characters.
      • amountstring
        At most 40 characters.
      • datestring
        At most 40 characters.
    • dry_runboolean
      Check the request and report what would happen, without doing it.
  • referencestring
    At most 500 characters.
  • dry_runboolean
    Check the request and report what would happen, without doing it.

Responses

  • 200
    Success.
  • 202
    requires_approval — Not an error: the operation is held for a person. The body names the approval.
  • 400
    price_below_minimum — The price is below the smallest single payment for a method (detail.method, detail.minimum), or has a part of a cent. Set credit_only, raise the price, or drop the method.
  • 401
    dpop_invalid — The token is bound to a key and the DPoP proof was missing, wrong for this request, or already used.
  • 402
    payment_failed — The payer's bank or card refused. detail.reason says why in plain terms.
  • 403
    agent_payment_over_max — The merchant asks for more than max_amount. Nothing was signed. detail.asked_minor is the lowest price asked, in US cents.
  • 404
    not_found — No such object in this project — including one that belongs to somebody else.
  • 409
    token_not_issued — A delegated payment token could not be issued ready to use, for instance because the payer would have to act. Nothing was sent to the merchant.
  • 429
    too_many_waiters — This key already has as many requests waiting (?wait=) as it may. Let one finish, or read without wait.
  • 500
    internal_error — Ours. Quote the request_id and we can find the call.
  • 502
    platform_error — A provider failed. Safe to retry with the same Idempotency-Key.
  • 503
    oauth_unavailable — The authorisation server's keys could not be read, so tokens cannot be checked. API keys still work.

This page as Markdown