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,
"account_id": "<string>",
"fund": true,
"idempotency_key": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"metadata": "<string>"
}
'import requests
url = "https://api.dots.dev/api/v2/payouts"
payload = {
"user_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"amount": 123,
"account_id": "<string>",
"fund": True,
"idempotency_key": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"metadata": "<string>"
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
user_id: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
amount: 123,
account_id: '<string>',
fund: true,
idempotency_key: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
metadata: '<string>'
})
};
fetch('https://api.dots.dev/api/v2/payouts', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.dots.dev/api/v2/payouts",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'user_id' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'amount' => 123,
'account_id' => '<string>',
'fund' => true,
'idempotency_key' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'metadata' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.dots.dev/api/v2/payouts"
payload := strings.NewReader("{\n \"user_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"amount\": 123,\n \"account_id\": \"<string>\",\n \"fund\": true,\n \"idempotency_key\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"metadata\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.dots.dev/api/v2/payouts")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"user_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"amount\": 123,\n \"account_id\": \"<string>\",\n \"fund\": true,\n \"idempotency_key\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"metadata\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.dots.dev/api/v2/payouts")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"user_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"amount\": 123,\n \"account_id\": \"<string>\",\n \"fund\": true,\n \"idempotency_key\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"metadata\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"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>"
}
],
"metadata": "<string>"
}Create Payout
Create a payout for an existing user that has a payout method saved to their account.
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,
"account_id": "<string>",
"fund": true,
"idempotency_key": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"metadata": "<string>"
}
'import requests
url = "https://api.dots.dev/api/v2/payouts"
payload = {
"user_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"amount": 123,
"account_id": "<string>",
"fund": True,
"idempotency_key": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"metadata": "<string>"
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
user_id: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
amount: 123,
account_id: '<string>',
fund: true,
idempotency_key: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
metadata: '<string>'
})
};
fetch('https://api.dots.dev/api/v2/payouts', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.dots.dev/api/v2/payouts",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'user_id' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'amount' => 123,
'account_id' => '<string>',
'fund' => true,
'idempotency_key' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'metadata' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.dots.dev/api/v2/payouts"
payload := strings.NewReader("{\n \"user_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"amount\": 123,\n \"account_id\": \"<string>\",\n \"fund\": true,\n \"idempotency_key\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"metadata\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.dots.dev/api/v2/payouts")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"user_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"amount\": 123,\n \"account_id\": \"<string>\",\n \"fund\": true,\n \"idempotency_key\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"metadata\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.dots.dev/api/v2/payouts")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"user_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"amount\": 123,\n \"account_id\": \"<string>\",\n \"fund\": true,\n \"idempotency_key\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"metadata\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"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>"
}
],
"metadata": "<string>"
}Authorizations
Basic authentication header of the form Basic <encoded-value>, where <encoded-value> is the base64-encoded string username:password.
Body
ID of the user who you are creating the payout for.
Amount in cents to payout the user.
Platform that you are paying out the user through,
paypal, venmo, ach, bank_transfer, cash_app, default The bank account ID you are paying to. Required for ach and intl_bank.
Creates a transfer for the amount to the user before creating the payout. The funds are returned if the payout does not succeed.
UUID that will be used to idempotently handle requests. Transfers with existing idempotency keys will be rejected.
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.
Response
Created
The transfer object.
created, pending, failed, completed, flagged refill, payout, balance Show child attributes
Show child attributes
Show child attributes
Show child attributes
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.
Was this page helpful?