Create a Payout
curl --request POST \
  --url https://api.dots.dev/api/v2/payouts \
  --header 'Authorization: Basic <encoded-value>' \
  --header 'Content-Type: application/json' \
  --data '{
  "user_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "amount": 123,
  "platform": "paypal",
  "account_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "fund": true,
  "tax_exempt": true,
  "idempotency_key": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "metadata": "<string>",
  "payout_fee_party": "user"
}'
{
  "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "created": "2023-11-07T05:31:56Z",
  "user_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "status": "created",
  "type": "refill",
  "amount": 123,
  "external_data": {
    "account_id": "<string>",
    "external_id": "<string>",
    "platform": "ach"
  },
  "transactions": [
    {
      "id": 123,
      "amount": 123,
      "created": "2023-11-07T05:31:56Z",
      "source_name": "<string>",
      "destination_name": "<string>",
      "type": "balance",
      "metadata": "<string>",
      "transfer_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "transfer": {}
    }
  ],
  "payout_link_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "metadata": "<string>"
}

Authorizations

Authorization
string
header
required

Basic authentication header of the form Basic <encoded-value>, where <encoded-value> is the base64-encoded string username:password.

Body

application/json

Base schema for creating a payout

user_id
string<uuid>
required

ID of the user who you are creating the payout for.

amount
integer
required

Amount in cents to payout the user.

Required range: x > 0
platform
enum<string>
required

Platform that you are paying out the user through.

Available options:
paypal,
venmo,
ach,
bank_transfer,
cash_app,
default
account_id
string<uuid>

The bank account ID you are paying to. Required for ach and intl_bank.

fund
boolean

Creates a transfer for the amount to the user before creating the payout. The funds are returned to the App Wallet if the payout does not succeed. Please ensure that you are handling transfer failure webhooks when using this option.

tax_exempt
boolean

Payouts marked as tax_exempt will not be counted towards the 1099 threshold. Can be true only if fund is true.

idempotency_key
string<uuid>

UUID that will be used to idempotently handle requests. Transfers with existing idempotency keys will be rejected.

metadata

Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.

payout_fee_party
enum<string>

Overrides the setting for which party will pay fees on this payout. This takes precedence over the default for your application.

Available options:
user,
platform

Response

201 - application/json

Created

The transfer object.

id
string<uuid>
created
string<date-time>
user_id
string<uuid>
status
enum<string>
Available options:
created,
pending,
failed,
completed,
reversed,
canceled,
flagged
type
enum<string>
Available options:
refill,
payout,
balance
amount
number
external_data
object
transactions
object[]

ID of the payout-link that the transfer belongs to.

metadata

Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.