curl --request POST \
--url https://api.augustus.com/v1/returns \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: <idempotency-key>' \
--data '
{
"deposit_id": "550e8400-e29b-41d4-a716-446655440004",
"metadata": {
"invoice_id": "INV-2026-0042"
}
}
'import requests
url = "https://api.augustus.com/v1/returns"
payload = {
"deposit_id": "550e8400-e29b-41d4-a716-446655440004",
"metadata": { "invoice_id": "INV-2026-0042" }
}
headers = {
"Idempotency-Key": "<idempotency-key>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'Idempotency-Key': '<idempotency-key>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
deposit_id: '550e8400-e29b-41d4-a716-446655440004',
metadata: {invoice_id: 'INV-2026-0042'}
})
};
fetch('https://api.augustus.com/v1/returns', 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.augustus.com/v1/returns",
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([
'deposit_id' => '550e8400-e29b-41d4-a716-446655440004',
'metadata' => [
'invoice_id' => 'INV-2026-0042'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"Idempotency-Key: <idempotency-key>"
],
]);
$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.augustus.com/v1/returns"
payload := strings.NewReader("{\n \"deposit_id\": \"550e8400-e29b-41d4-a716-446655440004\",\n \"metadata\": {\n \"invoice_id\": \"INV-2026-0042\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Idempotency-Key", "<idempotency-key>")
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.augustus.com/v1/returns")
.header("Idempotency-Key", "<idempotency-key>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"deposit_id\": \"550e8400-e29b-41d4-a716-446655440004\",\n \"metadata\": {\n \"invoice_id\": \"INV-2026-0042\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.augustus.com/v1/returns")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Idempotency-Key"] = '<idempotency-key>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"deposit_id\": \"550e8400-e29b-41d4-a716-446655440004\",\n \"metadata\": {\n \"invoice_id\": \"INV-2026-0042\"\n }\n}"
response = http.request(request)
puts response.read_body{
"id": "550e8400-e29b-41d4-a716-446655440005",
"type": "return",
"status": "initiated",
"deposit_id": "550e8400-e29b-41d4-a716-446655440004",
"amount": "100.50",
"currency": "EUR",
"failure": null,
"initiated_at": "2026-01-15T10:30:00Z",
"sent_at": "2026-01-15T10:35:00Z",
"tx_hash": null,
"rail": "sepa",
"metadata": {
"invoice_id": "INV-2026-0042"
}
}Create return
Initiates a return of funds from a deposit to the source.
curl --request POST \
--url https://api.augustus.com/v1/returns \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: <idempotency-key>' \
--data '
{
"deposit_id": "550e8400-e29b-41d4-a716-446655440004",
"metadata": {
"invoice_id": "INV-2026-0042"
}
}
'import requests
url = "https://api.augustus.com/v1/returns"
payload = {
"deposit_id": "550e8400-e29b-41d4-a716-446655440004",
"metadata": { "invoice_id": "INV-2026-0042" }
}
headers = {
"Idempotency-Key": "<idempotency-key>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'Idempotency-Key': '<idempotency-key>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
deposit_id: '550e8400-e29b-41d4-a716-446655440004',
metadata: {invoice_id: 'INV-2026-0042'}
})
};
fetch('https://api.augustus.com/v1/returns', 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.augustus.com/v1/returns",
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([
'deposit_id' => '550e8400-e29b-41d4-a716-446655440004',
'metadata' => [
'invoice_id' => 'INV-2026-0042'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"Idempotency-Key: <idempotency-key>"
],
]);
$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.augustus.com/v1/returns"
payload := strings.NewReader("{\n \"deposit_id\": \"550e8400-e29b-41d4-a716-446655440004\",\n \"metadata\": {\n \"invoice_id\": \"INV-2026-0042\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Idempotency-Key", "<idempotency-key>")
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.augustus.com/v1/returns")
.header("Idempotency-Key", "<idempotency-key>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"deposit_id\": \"550e8400-e29b-41d4-a716-446655440004\",\n \"metadata\": {\n \"invoice_id\": \"INV-2026-0042\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.augustus.com/v1/returns")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Idempotency-Key"] = '<idempotency-key>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"deposit_id\": \"550e8400-e29b-41d4-a716-446655440004\",\n \"metadata\": {\n \"invoice_id\": \"INV-2026-0042\"\n }\n}"
response = http.request(request)
puts response.read_body{
"id": "550e8400-e29b-41d4-a716-446655440005",
"type": "return",
"status": "initiated",
"deposit_id": "550e8400-e29b-41d4-a716-446655440004",
"amount": "100.50",
"currency": "EUR",
"failure": null,
"initiated_at": "2026-01-15T10:30:00Z",
"sent_at": "2026-01-15T10:35:00Z",
"tx_hash": null,
"rail": "sepa",
"metadata": {
"invoice_id": "INV-2026-0042"
}
}Authorizations
Bearer token for authentication with Augustus Banking API
Headers
Idempotency key for safe retries. Reusing a key with an identical request body returns the cached response. Reusing a key with a different body returns 409.
Body
Deposit to return and optional payment rail.
Deposit to return funds from.
"550e8400-e29b-41d4-a716-446655440004"
Set of up to 50 key-value string pairs you can attach to store structured information, such as correlating this resource with an object in your own system. Keys may be up to 40 characters and values up to 500 characters.
Show child attributes
Show child attributes
{ "invoice_id": "INV-2026-0042" }
Response
Success
Unique identifier of the return.
"550e8400-e29b-41d4-a716-446655440005"
Resource type discriminator.
return Current status of the return.
initiated, submitted, sent, failed, returned ID of the parent deposit.
"550e8400-e29b-41d4-a716-446655440004"
Amount as a string decimal (e.g. "100.50").
"100.50"
Currency code (ISO 4217 or crypto).
EUR, GBP, USD, USDC "EUR"
Failure details when status is failed, otherwise null.
Show child attributes
Show child attributes
null
ISO 8601 UTC timestamp when the return was initiated.
"2026-01-15T10:30:00Z"
ISO 8601 UTC timestamp when the return was sent.
"2026-01-15T10:35:00Z"
Transaction hash for crypto returns, or null when not known. Only blockchain rails support this field.
null
Payment scheme or blockchain used for the return, or null when unknown.
sepa, sepa_instant, faster_payments, swift, internal, target, ach, fedwire, bitcoin, bitcoin_testnet4, ethereum, ethereum_sepolia, solana, solana_devnet, polygon, polygon_amoy, null Set of up to 50 key-value string pairs you can attach to store structured information, such as correlating this resource with an object in your own system. Keys may be up to 40 characters and values up to 500 characters.
Show child attributes
Show child attributes
{ "invoice_id": "INV-2026-0042" }
Was this page helpful?