Create a Transfer
curl --request POST \
--url https://sandbox.api.fin.com/v1/transactions/transfer-payout \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"beneficiary_id": "d6ae4ea6-0482-47ab-a895-02e50ea6358b",
"reference_id": "REF-12345-ABC",
"amount": 10000,
"remarks": "Monthly payment for services",
"attachments": [
{
"remark": "Invoice PDF DOC",
"uri": "/XUOdWacK_Invoice.pdf"
}
]
}
'const url = 'https://sandbox.api.fin.com/v1/transactions/transfer-payout';
const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
beneficiary_id: 'd6ae4ea6-0482-47ab-a895-02e50ea6358b',
reference_id: 'REF-12345-ABC',
amount: 10000,
remarks: 'Monthly payment for services',
attachments: [{remark: 'Invoice PDF DOC', uri: '/XUOdWacK_Invoice.pdf'}]
})
};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));HttpResponse<String> response = Unirest.post("https://sandbox.api.fin.com/v1/transactions/transfer-payout")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"beneficiary_id\": \"d6ae4ea6-0482-47ab-a895-02e50ea6358b\",\n \"reference_id\": \"REF-12345-ABC\",\n \"amount\": 10000,\n \"remarks\": \"Monthly payment for services\",\n \"attachments\": [\n {\n \"remark\": \"Invoice PDF DOC\",\n \"uri\": \"/XUOdWacK_Invoice.pdf\"\n }\n ]\n}")
.asString();import requests
url = "https://sandbox.api.fin.com/v1/transactions/transfer-payout"
payload = {
"beneficiary_id": "d6ae4ea6-0482-47ab-a895-02e50ea6358b",
"reference_id": "REF-12345-ABC",
"amount": 10000,
"remarks": "Monthly payment for services",
"attachments": [
{
"remark": "Invoice PDF DOC",
"uri": "/XUOdWacK_Invoice.pdf"
}
]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://sandbox.api.fin.com/v1/transactions/transfer-payout"
payload := strings.NewReader("{\n \"beneficiary_id\": \"d6ae4ea6-0482-47ab-a895-02e50ea6358b\",\n \"reference_id\": \"REF-12345-ABC\",\n \"amount\": 10000,\n \"remarks\": \"Monthly payment for services\",\n \"attachments\": [\n {\n \"remark\": \"Invoice PDF DOC\",\n \"uri\": \"/XUOdWacK_Invoice.pdf\"\n }\n ]\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))
}{
"data": {
"transfer_id": "c78dee10-7c46-4ad5-8ac8-070e39d87ff1",
"reference_id": "REF-12345-ABC",
"deposit_instruction": {
"liquidation_address": "0x203061afd3f3dd5f5756cec992d1d247f7668384",
"currency": "USDC",
"rail": "POLYGON"
},
"quotation": {
"currency": "EUR",
"to_amount": 108,
"developer_fee": 67
},
"created_at": "2026-01-01T07:35:53Z",
"expire_at": "2026-01-01T07:45:53Z"
}
}{
"message": "Authentication failed"
}{
"message": "<string>",
"errors": [
{}
]
}Create now, settle later
Create a Transfer
Initiate a transfer payout to a beneficiary.
Validation Rules:
- Minimum amount: 500 cents (5.00 in major currency units)
- Attachments array is optional, but if provided must contain at least one item
POST
/
v1
/
transactions
/
transfer-payout
Create a Transfer
curl --request POST \
--url https://sandbox.api.fin.com/v1/transactions/transfer-payout \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"beneficiary_id": "d6ae4ea6-0482-47ab-a895-02e50ea6358b",
"reference_id": "REF-12345-ABC",
"amount": 10000,
"remarks": "Monthly payment for services",
"attachments": [
{
"remark": "Invoice PDF DOC",
"uri": "/XUOdWacK_Invoice.pdf"
}
]
}
'const url = 'https://sandbox.api.fin.com/v1/transactions/transfer-payout';
const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
beneficiary_id: 'd6ae4ea6-0482-47ab-a895-02e50ea6358b',
reference_id: 'REF-12345-ABC',
amount: 10000,
remarks: 'Monthly payment for services',
attachments: [{remark: 'Invoice PDF DOC', uri: '/XUOdWacK_Invoice.pdf'}]
})
};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));HttpResponse<String> response = Unirest.post("https://sandbox.api.fin.com/v1/transactions/transfer-payout")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"beneficiary_id\": \"d6ae4ea6-0482-47ab-a895-02e50ea6358b\",\n \"reference_id\": \"REF-12345-ABC\",\n \"amount\": 10000,\n \"remarks\": \"Monthly payment for services\",\n \"attachments\": [\n {\n \"remark\": \"Invoice PDF DOC\",\n \"uri\": \"/XUOdWacK_Invoice.pdf\"\n }\n ]\n}")
.asString();import requests
url = "https://sandbox.api.fin.com/v1/transactions/transfer-payout"
payload = {
"beneficiary_id": "d6ae4ea6-0482-47ab-a895-02e50ea6358b",
"reference_id": "REF-12345-ABC",
"amount": 10000,
"remarks": "Monthly payment for services",
"attachments": [
{
"remark": "Invoice PDF DOC",
"uri": "/XUOdWacK_Invoice.pdf"
}
]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://sandbox.api.fin.com/v1/transactions/transfer-payout"
payload := strings.NewReader("{\n \"beneficiary_id\": \"d6ae4ea6-0482-47ab-a895-02e50ea6358b\",\n \"reference_id\": \"REF-12345-ABC\",\n \"amount\": 10000,\n \"remarks\": \"Monthly payment for services\",\n \"attachments\": [\n {\n \"remark\": \"Invoice PDF DOC\",\n \"uri\": \"/XUOdWacK_Invoice.pdf\"\n }\n ]\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))
}{
"data": {
"transfer_id": "c78dee10-7c46-4ad5-8ac8-070e39d87ff1",
"reference_id": "REF-12345-ABC",
"deposit_instruction": {
"liquidation_address": "0x203061afd3f3dd5f5756cec992d1d247f7668384",
"currency": "USDC",
"rail": "POLYGON"
},
"quotation": {
"currency": "EUR",
"to_amount": 108,
"developer_fee": 67
},
"created_at": "2026-01-01T07:35:53Z",
"expire_at": "2026-01-01T07:45:53Z"
}
}{
"message": "Authentication failed"
}{
"message": "<string>",
"errors": [
{}
]
}This endpoint can only be used with beneficiaries created with
auto_settlement set to true.Authorizations
Bearer token authentication. Obtain token from Issue a Token endpoint
Body
application/json
Example:
"d6ae4ea6-0482-47ab-a895-02e50ea6358b"
Example:
"REF-12345-ABC"
Amount in cents (multiply by 100). Minimum 500 cents required.
Required range:
x >= 500Example:
10000
Example:
"Monthly payment for services"
Minimum array length:
1Show child attributes
Show child attributes
Response
Transfer created successfully
Show child attributes
Show child attributes
⌘I
