Create Payment
curl --request POST \
--url https://api.sandbox.wepayout.com.br/v2/payout/payments \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"merchant_id": 123,
"payment_method": "<string>",
"currency": "<string>",
"country": "<string>",
"amount": 123,
"invoice": "<string>",
"description": "<string>",
"beneficiary": {
"name": "<string>",
"document": {
"type": "<string>",
"number": "<string>"
},
"birthdate": "<string>",
"phone": "<string>",
"address": {
"address": "<string>",
"city": "<string>",
"country": "<string>",
"state_code": "<string>",
"zip_code": "<string>"
}
},
"remitter": {
"name": "<string>",
"birthdate": "<string>",
"country": "<string>"
},
"originator_legal_entity": {
"name": "<string>",
"website": "<string>"
},
"pix": {
"pix_key": "<string>",
"ispb": "<string>",
"bank_branch": "<string>",
"account": "<string>",
"account_digit": "<string>",
"account_type": "<string>"
},
"qrcode": {
"end_to_end_id": "<string>"
},
"notification_url": "<string>",
"purpose": "<string>",
"receipt_message": "<string>"
}
'import requests
url = "https://api.sandbox.wepayout.com.br/v2/payout/payments"
payload = {
"merchant_id": 123,
"payment_method": "<string>",
"currency": "<string>",
"country": "<string>",
"amount": 123,
"invoice": "<string>",
"description": "<string>",
"beneficiary": {
"name": "<string>",
"document": {
"type": "<string>",
"number": "<string>"
},
"birthdate": "<string>",
"phone": "<string>",
"address": {
"address": "<string>",
"city": "<string>",
"country": "<string>",
"state_code": "<string>",
"zip_code": "<string>"
}
},
"remitter": {
"name": "<string>",
"birthdate": "<string>",
"country": "<string>"
},
"originator_legal_entity": {
"name": "<string>",
"website": "<string>"
},
"pix": {
"pix_key": "<string>",
"ispb": "<string>",
"bank_branch": "<string>",
"account": "<string>",
"account_digit": "<string>",
"account_type": "<string>"
},
"qrcode": { "end_to_end_id": "<string>" },
"notification_url": "<string>",
"purpose": "<string>",
"receipt_message": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
merchant_id: 123,
payment_method: '<string>',
currency: '<string>',
country: '<string>',
amount: 123,
invoice: '<string>',
description: '<string>',
beneficiary: {
name: '<string>',
document: {type: '<string>', number: '<string>'},
birthdate: '<string>',
phone: '<string>',
address: {
address: '<string>',
city: '<string>',
country: '<string>',
state_code: '<string>',
zip_code: '<string>'
}
},
remitter: {name: '<string>', birthdate: '<string>', country: '<string>'},
originator_legal_entity: {name: '<string>', website: '<string>'},
pix: {
pix_key: '<string>',
ispb: '<string>',
bank_branch: '<string>',
account: '<string>',
account_digit: '<string>',
account_type: '<string>'
},
qrcode: {end_to_end_id: '<string>'},
notification_url: '<string>',
purpose: '<string>',
receipt_message: '<string>'
})
};
fetch('https://api.sandbox.wepayout.com.br/v2/payout/payments', 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.sandbox.wepayout.com.br/v2/payout/payments",
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([
'merchant_id' => 123,
'payment_method' => '<string>',
'currency' => '<string>',
'country' => '<string>',
'amount' => 123,
'invoice' => '<string>',
'description' => '<string>',
'beneficiary' => [
'name' => '<string>',
'document' => [
'type' => '<string>',
'number' => '<string>'
],
'birthdate' => '<string>',
'phone' => '<string>',
'address' => [
'address' => '<string>',
'city' => '<string>',
'country' => '<string>',
'state_code' => '<string>',
'zip_code' => '<string>'
]
],
'remitter' => [
'name' => '<string>',
'birthdate' => '<string>',
'country' => '<string>'
],
'originator_legal_entity' => [
'name' => '<string>',
'website' => '<string>'
],
'pix' => [
'pix_key' => '<string>',
'ispb' => '<string>',
'bank_branch' => '<string>',
'account' => '<string>',
'account_digit' => '<string>',
'account_type' => '<string>'
],
'qrcode' => [
'end_to_end_id' => '<string>'
],
'notification_url' => '<string>',
'purpose' => '<string>',
'receipt_message' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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.sandbox.wepayout.com.br/v2/payout/payments"
payload := strings.NewReader("{\n \"merchant_id\": 123,\n \"payment_method\": \"<string>\",\n \"currency\": \"<string>\",\n \"country\": \"<string>\",\n \"amount\": 123,\n \"invoice\": \"<string>\",\n \"description\": \"<string>\",\n \"beneficiary\": {\n \"name\": \"<string>\",\n \"document\": {\n \"type\": \"<string>\",\n \"number\": \"<string>\"\n },\n \"birthdate\": \"<string>\",\n \"phone\": \"<string>\",\n \"address\": {\n \"address\": \"<string>\",\n \"city\": \"<string>\",\n \"country\": \"<string>\",\n \"state_code\": \"<string>\",\n \"zip_code\": \"<string>\"\n }\n },\n \"remitter\": {\n \"name\": \"<string>\",\n \"birthdate\": \"<string>\",\n \"country\": \"<string>\"\n },\n \"originator_legal_entity\": {\n \"name\": \"<string>\",\n \"website\": \"<string>\"\n },\n \"pix\": {\n \"pix_key\": \"<string>\",\n \"ispb\": \"<string>\",\n \"bank_branch\": \"<string>\",\n \"account\": \"<string>\",\n \"account_digit\": \"<string>\",\n \"account_type\": \"<string>\"\n },\n \"qrcode\": {\n \"end_to_end_id\": \"<string>\"\n },\n \"notification_url\": \"<string>\",\n \"purpose\": \"<string>\",\n \"receipt_message\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.sandbox.wepayout.com.br/v2/payout/payments")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"merchant_id\": 123,\n \"payment_method\": \"<string>\",\n \"currency\": \"<string>\",\n \"country\": \"<string>\",\n \"amount\": 123,\n \"invoice\": \"<string>\",\n \"description\": \"<string>\",\n \"beneficiary\": {\n \"name\": \"<string>\",\n \"document\": {\n \"type\": \"<string>\",\n \"number\": \"<string>\"\n },\n \"birthdate\": \"<string>\",\n \"phone\": \"<string>\",\n \"address\": {\n \"address\": \"<string>\",\n \"city\": \"<string>\",\n \"country\": \"<string>\",\n \"state_code\": \"<string>\",\n \"zip_code\": \"<string>\"\n }\n },\n \"remitter\": {\n \"name\": \"<string>\",\n \"birthdate\": \"<string>\",\n \"country\": \"<string>\"\n },\n \"originator_legal_entity\": {\n \"name\": \"<string>\",\n \"website\": \"<string>\"\n },\n \"pix\": {\n \"pix_key\": \"<string>\",\n \"ispb\": \"<string>\",\n \"bank_branch\": \"<string>\",\n \"account\": \"<string>\",\n \"account_digit\": \"<string>\",\n \"account_type\": \"<string>\"\n },\n \"qrcode\": {\n \"end_to_end_id\": \"<string>\"\n },\n \"notification_url\": \"<string>\",\n \"purpose\": \"<string>\",\n \"receipt_message\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sandbox.wepayout.com.br/v2/payout/payments")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"merchant_id\": 123,\n \"payment_method\": \"<string>\",\n \"currency\": \"<string>\",\n \"country\": \"<string>\",\n \"amount\": 123,\n \"invoice\": \"<string>\",\n \"description\": \"<string>\",\n \"beneficiary\": {\n \"name\": \"<string>\",\n \"document\": {\n \"type\": \"<string>\",\n \"number\": \"<string>\"\n },\n \"birthdate\": \"<string>\",\n \"phone\": \"<string>\",\n \"address\": {\n \"address\": \"<string>\",\n \"city\": \"<string>\",\n \"country\": \"<string>\",\n \"state_code\": \"<string>\",\n \"zip_code\": \"<string>\"\n }\n },\n \"remitter\": {\n \"name\": \"<string>\",\n \"birthdate\": \"<string>\",\n \"country\": \"<string>\"\n },\n \"originator_legal_entity\": {\n \"name\": \"<string>\",\n \"website\": \"<string>\"\n },\n \"pix\": {\n \"pix_key\": \"<string>\",\n \"ispb\": \"<string>\",\n \"bank_branch\": \"<string>\",\n \"account\": \"<string>\",\n \"account_digit\": \"<string>\",\n \"account_type\": \"<string>\"\n },\n \"qrcode\": {\n \"end_to_end_id\": \"<string>\"\n },\n \"notification_url\": \"<string>\",\n \"purpose\": \"<string>\",\n \"receipt_message\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"id": 124118,
"merchant": {
"id": 477,
"name": "Merchant Name"
},
"payment_method": "PIX",
"country": "BR",
"currency": "BRL",
"amount": "R$43.34",
"source_currency": null,
"source_amount": null,
"invoice": "6cc85ff5-7a35-45cb-a8fd-22b9bbe27896",
"description": null,
"authentication_code": null,
"rejection_description": "",
"notification_url": null,
"status": {
"id": 7,
"name": "Awaiting"
},
"beneficiary": {
"name": "João Silva",
"document": {
"type": "CPF",
"number": "82608288200"
},
"birthdate": null,
"phone": null,
"address": {
"address": null,
"city": null,
"country": null,
"state_code": null,
"zip_code": null
}
},
"receipt_message": "",
"pix": {
"pix_key": "82608288200",
"bank_code": "",
"bank_branch": null,
"bank_branch_digit": null,
"account": null,
"account_digit": null,
"account_type": ""
},
"purpose": "20",
"paid_at": null,
"created_at": "2025-11-21T14:59:59.000000Z",
"updated_at": "2025-11-21T14:59:59.000000Z"
}
{
"id": 124117,
"merchant": {
"id": 477,
"name": "Merchant Name"
},
"payment_method": "PIX",
"country": "BR",
"currency": "BRL",
"amount": "R$50.34",
"source_currency": null,
"source_amount": null,
"invoice": "27eb1281-e19f-4284-b4b5-b8f598be6148",
"description": null,
"authentication_code": null,
"rejection_description": "",
"notification_url": null,
"status": {
"id": 7,
"name": "Awaiting"
},
"beneficiary": {
"name": "Maria Santos",
"document": {
"type": "CPF",
"number": "58713371126"
},
"birthdate": null,
"phone": null,
"address": {
"address": null,
"city": null,
"country": null,
"state_code": null,
"zip_code": null
}
},
"receipt_message": "",
"pix": {
"pix_key": null,
"bank_code": "260",
"bank_branch": null,
"bank_branch_digit": null,
"account": null,
"account_digit": "7",
"account_type": "CHECKING"
},
"purpose": "20",
"paid_at": null,
"created_at": "2025-11-21T14:59:24.000000Z",
"updated_at": "2025-11-21T14:59:24.000000Z"
}
{
"message": "Insufficient balance"
}
Payout
Create Payment
Create a new payout payment to transfer funds
POST
/
v2
/
payout
/
payments
Create Payment
curl --request POST \
--url https://api.sandbox.wepayout.com.br/v2/payout/payments \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"merchant_id": 123,
"payment_method": "<string>",
"currency": "<string>",
"country": "<string>",
"amount": 123,
"invoice": "<string>",
"description": "<string>",
"beneficiary": {
"name": "<string>",
"document": {
"type": "<string>",
"number": "<string>"
},
"birthdate": "<string>",
"phone": "<string>",
"address": {
"address": "<string>",
"city": "<string>",
"country": "<string>",
"state_code": "<string>",
"zip_code": "<string>"
}
},
"remitter": {
"name": "<string>",
"birthdate": "<string>",
"country": "<string>"
},
"originator_legal_entity": {
"name": "<string>",
"website": "<string>"
},
"pix": {
"pix_key": "<string>",
"ispb": "<string>",
"bank_branch": "<string>",
"account": "<string>",
"account_digit": "<string>",
"account_type": "<string>"
},
"qrcode": {
"end_to_end_id": "<string>"
},
"notification_url": "<string>",
"purpose": "<string>",
"receipt_message": "<string>"
}
'import requests
url = "https://api.sandbox.wepayout.com.br/v2/payout/payments"
payload = {
"merchant_id": 123,
"payment_method": "<string>",
"currency": "<string>",
"country": "<string>",
"amount": 123,
"invoice": "<string>",
"description": "<string>",
"beneficiary": {
"name": "<string>",
"document": {
"type": "<string>",
"number": "<string>"
},
"birthdate": "<string>",
"phone": "<string>",
"address": {
"address": "<string>",
"city": "<string>",
"country": "<string>",
"state_code": "<string>",
"zip_code": "<string>"
}
},
"remitter": {
"name": "<string>",
"birthdate": "<string>",
"country": "<string>"
},
"originator_legal_entity": {
"name": "<string>",
"website": "<string>"
},
"pix": {
"pix_key": "<string>",
"ispb": "<string>",
"bank_branch": "<string>",
"account": "<string>",
"account_digit": "<string>",
"account_type": "<string>"
},
"qrcode": { "end_to_end_id": "<string>" },
"notification_url": "<string>",
"purpose": "<string>",
"receipt_message": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
merchant_id: 123,
payment_method: '<string>',
currency: '<string>',
country: '<string>',
amount: 123,
invoice: '<string>',
description: '<string>',
beneficiary: {
name: '<string>',
document: {type: '<string>', number: '<string>'},
birthdate: '<string>',
phone: '<string>',
address: {
address: '<string>',
city: '<string>',
country: '<string>',
state_code: '<string>',
zip_code: '<string>'
}
},
remitter: {name: '<string>', birthdate: '<string>', country: '<string>'},
originator_legal_entity: {name: '<string>', website: '<string>'},
pix: {
pix_key: '<string>',
ispb: '<string>',
bank_branch: '<string>',
account: '<string>',
account_digit: '<string>',
account_type: '<string>'
},
qrcode: {end_to_end_id: '<string>'},
notification_url: '<string>',
purpose: '<string>',
receipt_message: '<string>'
})
};
fetch('https://api.sandbox.wepayout.com.br/v2/payout/payments', 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.sandbox.wepayout.com.br/v2/payout/payments",
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([
'merchant_id' => 123,
'payment_method' => '<string>',
'currency' => '<string>',
'country' => '<string>',
'amount' => 123,
'invoice' => '<string>',
'description' => '<string>',
'beneficiary' => [
'name' => '<string>',
'document' => [
'type' => '<string>',
'number' => '<string>'
],
'birthdate' => '<string>',
'phone' => '<string>',
'address' => [
'address' => '<string>',
'city' => '<string>',
'country' => '<string>',
'state_code' => '<string>',
'zip_code' => '<string>'
]
],
'remitter' => [
'name' => '<string>',
'birthdate' => '<string>',
'country' => '<string>'
],
'originator_legal_entity' => [
'name' => '<string>',
'website' => '<string>'
],
'pix' => [
'pix_key' => '<string>',
'ispb' => '<string>',
'bank_branch' => '<string>',
'account' => '<string>',
'account_digit' => '<string>',
'account_type' => '<string>'
],
'qrcode' => [
'end_to_end_id' => '<string>'
],
'notification_url' => '<string>',
'purpose' => '<string>',
'receipt_message' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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.sandbox.wepayout.com.br/v2/payout/payments"
payload := strings.NewReader("{\n \"merchant_id\": 123,\n \"payment_method\": \"<string>\",\n \"currency\": \"<string>\",\n \"country\": \"<string>\",\n \"amount\": 123,\n \"invoice\": \"<string>\",\n \"description\": \"<string>\",\n \"beneficiary\": {\n \"name\": \"<string>\",\n \"document\": {\n \"type\": \"<string>\",\n \"number\": \"<string>\"\n },\n \"birthdate\": \"<string>\",\n \"phone\": \"<string>\",\n \"address\": {\n \"address\": \"<string>\",\n \"city\": \"<string>\",\n \"country\": \"<string>\",\n \"state_code\": \"<string>\",\n \"zip_code\": \"<string>\"\n }\n },\n \"remitter\": {\n \"name\": \"<string>\",\n \"birthdate\": \"<string>\",\n \"country\": \"<string>\"\n },\n \"originator_legal_entity\": {\n \"name\": \"<string>\",\n \"website\": \"<string>\"\n },\n \"pix\": {\n \"pix_key\": \"<string>\",\n \"ispb\": \"<string>\",\n \"bank_branch\": \"<string>\",\n \"account\": \"<string>\",\n \"account_digit\": \"<string>\",\n \"account_type\": \"<string>\"\n },\n \"qrcode\": {\n \"end_to_end_id\": \"<string>\"\n },\n \"notification_url\": \"<string>\",\n \"purpose\": \"<string>\",\n \"receipt_message\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.sandbox.wepayout.com.br/v2/payout/payments")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"merchant_id\": 123,\n \"payment_method\": \"<string>\",\n \"currency\": \"<string>\",\n \"country\": \"<string>\",\n \"amount\": 123,\n \"invoice\": \"<string>\",\n \"description\": \"<string>\",\n \"beneficiary\": {\n \"name\": \"<string>\",\n \"document\": {\n \"type\": \"<string>\",\n \"number\": \"<string>\"\n },\n \"birthdate\": \"<string>\",\n \"phone\": \"<string>\",\n \"address\": {\n \"address\": \"<string>\",\n \"city\": \"<string>\",\n \"country\": \"<string>\",\n \"state_code\": \"<string>\",\n \"zip_code\": \"<string>\"\n }\n },\n \"remitter\": {\n \"name\": \"<string>\",\n \"birthdate\": \"<string>\",\n \"country\": \"<string>\"\n },\n \"originator_legal_entity\": {\n \"name\": \"<string>\",\n \"website\": \"<string>\"\n },\n \"pix\": {\n \"pix_key\": \"<string>\",\n \"ispb\": \"<string>\",\n \"bank_branch\": \"<string>\",\n \"account\": \"<string>\",\n \"account_digit\": \"<string>\",\n \"account_type\": \"<string>\"\n },\n \"qrcode\": {\n \"end_to_end_id\": \"<string>\"\n },\n \"notification_url\": \"<string>\",\n \"purpose\": \"<string>\",\n \"receipt_message\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sandbox.wepayout.com.br/v2/payout/payments")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"merchant_id\": 123,\n \"payment_method\": \"<string>\",\n \"currency\": \"<string>\",\n \"country\": \"<string>\",\n \"amount\": 123,\n \"invoice\": \"<string>\",\n \"description\": \"<string>\",\n \"beneficiary\": {\n \"name\": \"<string>\",\n \"document\": {\n \"type\": \"<string>\",\n \"number\": \"<string>\"\n },\n \"birthdate\": \"<string>\",\n \"phone\": \"<string>\",\n \"address\": {\n \"address\": \"<string>\",\n \"city\": \"<string>\",\n \"country\": \"<string>\",\n \"state_code\": \"<string>\",\n \"zip_code\": \"<string>\"\n }\n },\n \"remitter\": {\n \"name\": \"<string>\",\n \"birthdate\": \"<string>\",\n \"country\": \"<string>\"\n },\n \"originator_legal_entity\": {\n \"name\": \"<string>\",\n \"website\": \"<string>\"\n },\n \"pix\": {\n \"pix_key\": \"<string>\",\n \"ispb\": \"<string>\",\n \"bank_branch\": \"<string>\",\n \"account\": \"<string>\",\n \"account_digit\": \"<string>\",\n \"account_type\": \"<string>\"\n },\n \"qrcode\": {\n \"end_to_end_id\": \"<string>\"\n },\n \"notification_url\": \"<string>\",\n \"purpose\": \"<string>\",\n \"receipt_message\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"id": 124118,
"merchant": {
"id": 477,
"name": "Merchant Name"
},
"payment_method": "PIX",
"country": "BR",
"currency": "BRL",
"amount": "R$43.34",
"source_currency": null,
"source_amount": null,
"invoice": "6cc85ff5-7a35-45cb-a8fd-22b9bbe27896",
"description": null,
"authentication_code": null,
"rejection_description": "",
"notification_url": null,
"status": {
"id": 7,
"name": "Awaiting"
},
"beneficiary": {
"name": "João Silva",
"document": {
"type": "CPF",
"number": "82608288200"
},
"birthdate": null,
"phone": null,
"address": {
"address": null,
"city": null,
"country": null,
"state_code": null,
"zip_code": null
}
},
"receipt_message": "",
"pix": {
"pix_key": "82608288200",
"bank_code": "",
"bank_branch": null,
"bank_branch_digit": null,
"account": null,
"account_digit": null,
"account_type": ""
},
"purpose": "20",
"paid_at": null,
"created_at": "2025-11-21T14:59:59.000000Z",
"updated_at": "2025-11-21T14:59:59.000000Z"
}
{
"id": 124117,
"merchant": {
"id": 477,
"name": "Merchant Name"
},
"payment_method": "PIX",
"country": "BR",
"currency": "BRL",
"amount": "R$50.34",
"source_currency": null,
"source_amount": null,
"invoice": "27eb1281-e19f-4284-b4b5-b8f598be6148",
"description": null,
"authentication_code": null,
"rejection_description": "",
"notification_url": null,
"status": {
"id": 7,
"name": "Awaiting"
},
"beneficiary": {
"name": "Maria Santos",
"document": {
"type": "CPF",
"number": "58713371126"
},
"birthdate": null,
"phone": null,
"address": {
"address": null,
"city": null,
"country": null,
"state_code": null,
"zip_code": null
}
},
"receipt_message": "",
"pix": {
"pix_key": null,
"bank_code": "260",
"bank_branch": null,
"bank_branch_digit": null,
"account": null,
"account_digit": "7",
"account_type": "CHECKING"
},
"purpose": "20",
"paid_at": null,
"created_at": "2025-11-21T14:59:24.000000Z",
"updated_at": "2025-11-21T14:59:24.000000Z"
}
{
"message": "Insufficient balance"
}
Request Body
integer
Merchant id of the account that is creating the payout. The custom number will be different for sandbox and production environment.Is mandatory if there is more than one account under your umbrella (sellers).
string
required
Payment method for the payout.Allowed values:
PIX, QRCODEUse QRCODE to pay a third-party PIX QR Code decoded at the Decode QR Code endpoint.string
required
Currency code of the amount (ISO 4217).Example:
BRLstring
required
Country code (ISO 3166-1 alpha-2).Example:
BRnumber
required
The payout amount in decimal format.Example:
50.34string
required
Unique invoice identifier (UUID format recommended).Example:
e3317882-f821-455b-b082-dc3ba36e8a57string
Description or purpose of the payout.Max length:
255 charactersobject
Beneficiary information. Required unless
payment_method is QRCODE: in that case the beneficiary comes from the decoded QR Code.Show Beneficiary Object
Show Beneficiary Object
string
required
Beneficiary’s full name.Max length:
100 charactersobject
required
string
Beneficiary’s birthdate in format
YYYY-MM-DD.string
Beneficiary’s phone number.
object
Details of remitter. Mandatory for the remittance model. Payments from individuals to individuals.
Show Remitter Object
Show Remitter Object
string
required
Name of who is sending the payment (cash).Min: 1 character, Max: 150 characters
string
required
Date of birth of who is sending the payment (cash).Format:
YYYY-MM-DDExample: 1989-03-05string
required
Country of who is sending the payment (cash).Format: ISO 3166-1 alpha-2 (2 characters)Example:
USobject
object
PIX payment information. Required when
payment_method is PIX. Use either pix_key OR bank account details.Show PIX Object
Show PIX Object
string
PIX key (CPF, CNPJ, email, phone, or random key). Use this for payments via PIX key.Send the key without masks. Phone keys must be a Brazilian mobile number with exactly 14 characters (
+55 + area code + 9 + 8 digits, e.g. +5551966084315), and e-mail keys can have up to 77 characters. See Accepted PIX key formats.Note: When using pix_key, bank account fields are not required.string
Bank ISPB code. Required when using bank account details.
string
Bank branch number. Required when using bank account details.
string
Bank account number. Required when using bank account details.
string
Bank account digit. Required when using bank account details.
string
Account type. Required when using bank account details.Allowed values:
CHECKING, SAVINGSobject
QR Code payment information. Required when
When the decoded QR Code has
payment_method is QRCODE.Show QR Code Object
Show QR Code Object
string
required
end_to_end_id returned by the Decode QR Code endpoint. It expires 5 minutes after the decode and can be used for a single payment.Max length: 255 charactersis_amount_changeable equal to false, amount must be equal to the QR Code amount.string
URL where webhook notifications will be sent.Max length:
255 charactersstring
Purpose code for the transaction.Default:
20string
Custom message to appear on the receipt.
Response
integer
WEpayment’s auto generated payout ID.
string
Payment method used.
string
Country code.
string
Currency code.
string
Payout amount formatted with currency symbol.
string
Source currency if conversion was applied.
string
Source amount if conversion was applied.
string
Invoice identifier.
string
Payout description.
string
Authentication code for the transaction.
string
Description if the payout was rejected.
string
Webhook notification URL.
object
string
Receipt message.
object
string
Transaction purpose code.
string
Payment completion timestamp.
string
Creation timestamp.
string
Last update timestamp.
Request Examples
PIX Key Payment
Use this method when you have the beneficiary’s PIX key.curl --location 'https://api.sandbox.wepayout.com.br/v2/payout/payments' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_TOKEN' \
--data '{
"payment_method": "PIX",
"currency": "BRL",
"country": "BR",
"amount": 43.34,
"invoice": "c071bcc5-0c1c-450b-a47f-15fc5321fbe3",
"beneficiary": {
"name": "João Silva",
"document": {
"type": "CPF",
"number": "82608288200"
}
},
"pix": {
"pix_key": "82608288200"
}
}'
const response = await fetch(
'https://api.sandbox.wepayout.com.br/v2/payout/payments',
{
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer YOUR_TOKEN'
},
body: JSON.stringify({
payment_method: 'PIX',
currency: 'BRL',
country: 'BR',
amount: 43.34,
invoice: 'c071bcc5-0c1c-450b-a47f-15fc5321fbe3',
beneficiary: {
name: 'João Silva',
document: {
type: 'CPF',
number: '82608288200'
}
},
pix: {
pix_key: '82608288200'
}
})
}
);
const payout = await response.json();
console.log('Payout created:', payout);
import requests
url = 'https://api.sandbox.wepayout.com.br/v2/payout/payments'
headers = {
'Content-Type': 'application/json',
'Authorization': 'Bearer YOUR_TOKEN'
}
payload = {
'payment_method': 'PIX',
'currency': 'BRL',
'country': 'BR',
'amount': 43.34,
'invoice': 'c071bcc5-0c1c-450b-a47f-15fc5321fbe3',
'beneficiary': {
'name': 'João Silva',
'document': {
'type': 'CPF',
'number': '82608288200'
}
},
'pix': {
'pix_key': '82608288200'
}
}
response = requests.post(url, headers=headers, json=payload)
payout = response.json()
print('Payout created:', payout)
Bank Account Payment
Use this method when you have the beneficiary’s bank account details.curl --location 'https://api.sandbox.wepayout.com.br/v2/payout/payments' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_TOKEN' \
--data '{
"payment_method": "PIX",
"currency": "BRL",
"country": "BR",
"amount": 50.34,
"invoice": "e3317882-f821-455b-b082-dc3ba36e8a57",
"beneficiary": {
"name": "Maria Santos",
"document": {
"type": "CPF",
"number": "58713371126"
}
},
"pix": {
"ispb": "18236120",
"bank_branch": "0496",
"account": "51659",
"account_digit": "7",
"account_type": "CHECKING"
}
}'
const response = await fetch(
'https://api.sandbox.wepayout.com.br/v2/payout/payments',
{
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer YOUR_TOKEN'
},
body: JSON.stringify({
payment_method: 'PIX',
currency: 'BRL',
country: 'BR',
amount: 50.34,
invoice: 'e3317882-f821-455b-b082-dc3ba36e8a57',
beneficiary: {
name: 'Maria Santos',
document: {
type: 'CPF',
number: '58713371126'
}
},
pix: {
ispb: '18236120',
bank_branch: '0496',
account: '51659',
account_digit: '7',
account_type: 'CHECKING'
}
})
}
);
const payout = await response.json();
console.log('Payout created:', payout);
import requests
url = 'https://api.sandbox.wepayout.com.br/v2/payout/payments'
headers = {
'Content-Type': 'application/json',
'Authorization': 'Bearer YOUR_TOKEN'
}
payload = {
'payment_method': 'PIX',
'currency': 'BRL',
'country': 'BR',
'amount': 50.34,
'invoice': 'e3317882-f821-455b-b082-dc3ba36e8a57',
'beneficiary': {
'name': 'Maria Santos',
'document': {
'type': 'CPF',
'number': '58713371126'
}
},
'pix': {
'ispb': '18236120',
'bank_branch': '0496',
'account': '51659',
'account_digit': '7',
'account_type': 'CHECKING'
}
}
response = requests.post(url, headers=headers, json=payload)
payout = response.json()
print('Payout created:', payout)
{
"id": 124118,
"merchant": {
"id": 477,
"name": "Merchant Name"
},
"payment_method": "PIX",
"country": "BR",
"currency": "BRL",
"amount": "R$43.34",
"source_currency": null,
"source_amount": null,
"invoice": "6cc85ff5-7a35-45cb-a8fd-22b9bbe27896",
"description": null,
"authentication_code": null,
"rejection_description": "",
"notification_url": null,
"status": {
"id": 7,
"name": "Awaiting"
},
"beneficiary": {
"name": "João Silva",
"document": {
"type": "CPF",
"number": "82608288200"
},
"birthdate": null,
"phone": null,
"address": {
"address": null,
"city": null,
"country": null,
"state_code": null,
"zip_code": null
}
},
"receipt_message": "",
"pix": {
"pix_key": "82608288200",
"bank_code": "",
"bank_branch": null,
"bank_branch_digit": null,
"account": null,
"account_digit": null,
"account_type": ""
},
"purpose": "20",
"paid_at": null,
"created_at": "2025-11-21T14:59:59.000000Z",
"updated_at": "2025-11-21T14:59:59.000000Z"
}
{
"id": 124117,
"merchant": {
"id": 477,
"name": "Merchant Name"
},
"payment_method": "PIX",
"country": "BR",
"currency": "BRL",
"amount": "R$50.34",
"source_currency": null,
"source_amount": null,
"invoice": "27eb1281-e19f-4284-b4b5-b8f598be6148",
"description": null,
"authentication_code": null,
"rejection_description": "",
"notification_url": null,
"status": {
"id": 7,
"name": "Awaiting"
},
"beneficiary": {
"name": "Maria Santos",
"document": {
"type": "CPF",
"number": "58713371126"
},
"birthdate": null,
"phone": null,
"address": {
"address": null,
"city": null,
"country": null,
"state_code": null,
"zip_code": null
}
},
"receipt_message": "",
"pix": {
"pix_key": null,
"bank_code": "260",
"bank_branch": null,
"bank_branch_digit": null,
"account": null,
"account_digit": "7",
"account_type": "CHECKING"
},
"purpose": "20",
"paid_at": null,
"created_at": "2025-11-21T14:59:24.000000Z",
"updated_at": "2025-11-21T14:59:24.000000Z"
}
{
"message": "Insufficient balance"
}
Related Resources
Payout Webhook
Receive real-time payout status notifications
Get Balance
Check your wallet balance before creating payouts
Was this page helpful?

