Retrieve a Payout
Return a single payout by ID. Returns 404 if the payout does not exist or belongs to a different merchant.
curl --request GET \
--url https://api.antonpayments.com/v1/payouts/{id} \
--header 'Authorization: Bearer <token>' \
--header 'DPoP: <api-key>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>', DPoP: '<api-key>'}};
fetch('https://api.antonpayments.com/v1/payouts/{id}', 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.antonpayments.com/v1/payouts/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"DPoP: <api-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"
"net/http"
"io"
)
func main() {
url := "https://api.antonpayments.com/v1/payouts/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("DPoP", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"data": {
"id": "pay_01HX8Z9K0M2N3P4Q5R6S7T8UAB",
"merchant_id": "mer_01HX8Z9K0M2N3P4Q5R6S7T8UZZ",
"beneficiary_id": "ben_01HX8Z9K0M2N3P4Q5R6S7T8UA1",
"instrument_id": "ins_01HX8Z9K0M2N3P4Q5R6S7T8UA2",
"status": "processing",
"method": "sepa",
"source_amount": "550.00",
"source_currency": "USD",
"dest_amount": "500.00",
"dest_currency": "EUR",
"exchange_rate": "0.9091",
"fee": "5.00",
"fee_currency": "USD",
"fee_bearer": "merchant",
"fixed_side": "fixed_dest",
"total_debited": "557.50",
"total_debited_currency": "USD",
"fee_finalized": false,
"buffer_amount": "2.50",
"buffer_currency": "USD",
"rail_type": "fiat",
"rail_provider": "openpayd",
"rail_reference": "OP-2026-04-15-778812",
"network": "sepa",
"purpose": "supplier_payment",
"reference": "PO-8821",
"created_at": "2026-04-15T14:30:00Z",
"updated_at": "2026-04-15T14:30:05Z",
"screened_at": "2026-04-15T14:30:02Z",
"approved_at": "2026-04-15T14:30:04Z",
"processed_at": "2026-04-15T14:30:05Z"
}
}Authorizations
Per-request DPoP proof JWT (RFC 9449). MUST accompany the Authorization: DPoP <access_token> header on every protected operation. The proof is signed by the merchant's private DPoP key and carries htm, htu, iat, jti, and ath claims.
Path Parameters
Payout ID (prefixed pay_).
^pay_[a-zA-Z0-9]+$"pay_01HX8Z9K0M2N3P4Q5R6S7T8UAB"
Response
Payout.
A single payment from your merchant balance to a beneficiary's instrument. Moves through a 13-state machine — see the How Anton Evaluates Payouts guide.
Rail-specific fields (rail_provider, rail_reference, network,
wallet_address, tx_hash, etc.) populate as the payout moves through
approved -> processing -> sent -> completed.
Show child attributes
Show child attributes
{
"id": "pay_01HX8Z9K0M2N3P4Q5R6S7T8UAB",
"merchant_id": "mer_01HX8Z9K0M2N3P4Q5R6S7T8UZZ",
"beneficiary_id": "ben_01HX8Z9K0M2N3P4Q5R6S7T8UA1",
"instrument_id": "ins_01HX8Z9K0M2N3P4Q5R6S7T8UA2",
"status": "processing",
"method": "sepa",
"source_amount": "550.00",
"source_currency": "USD",
"dest_amount": "500.00",
"dest_currency": "EUR",
"exchange_rate": "0.9091",
"fee": "5.00",
"fee_currency": "USD",
"fee_bearer": "merchant",
"fixed_side": "fixed_dest",
"total_debited": "557.50",
"total_debited_currency": "USD",
"fee_finalized": false,
"buffer_amount": "2.50",
"buffer_currency": "USD",
"rail_type": "fiat",
"rail_provider": "openpayd",
"rail_reference": "OP-2026-04-15-778812",
"network": "sepa",
"purpose": "supplier_payment",
"reference": "PO-8821",
"created_at": "2026-04-15T14:30:00Z",
"updated_at": "2026-04-15T14:30:05Z",
"screened_at": "2026-04-15T14:30:02Z",
"approved_at": "2026-04-15T14:30:04Z",
"processed_at": "2026-04-15T14:30:05Z"
}
Was this page helpful?
curl --request GET \
--url https://api.antonpayments.com/v1/payouts/{id} \
--header 'Authorization: Bearer <token>' \
--header 'DPoP: <api-key>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>', DPoP: '<api-key>'}};
fetch('https://api.antonpayments.com/v1/payouts/{id}', 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.antonpayments.com/v1/payouts/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"DPoP: <api-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"
"net/http"
"io"
)
func main() {
url := "https://api.antonpayments.com/v1/payouts/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("DPoP", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"data": {
"id": "pay_01HX8Z9K0M2N3P4Q5R6S7T8UAB",
"merchant_id": "mer_01HX8Z9K0M2N3P4Q5R6S7T8UZZ",
"beneficiary_id": "ben_01HX8Z9K0M2N3P4Q5R6S7T8UA1",
"instrument_id": "ins_01HX8Z9K0M2N3P4Q5R6S7T8UA2",
"status": "processing",
"method": "sepa",
"source_amount": "550.00",
"source_currency": "USD",
"dest_amount": "500.00",
"dest_currency": "EUR",
"exchange_rate": "0.9091",
"fee": "5.00",
"fee_currency": "USD",
"fee_bearer": "merchant",
"fixed_side": "fixed_dest",
"total_debited": "557.50",
"total_debited_currency": "USD",
"fee_finalized": false,
"buffer_amount": "2.50",
"buffer_currency": "USD",
"rail_type": "fiat",
"rail_provider": "openpayd",
"rail_reference": "OP-2026-04-15-778812",
"network": "sepa",
"purpose": "supplier_payment",
"reference": "PO-8821",
"created_at": "2026-04-15T14:30:00Z",
"updated_at": "2026-04-15T14:30:05Z",
"screened_at": "2026-04-15T14:30:02Z",
"approved_at": "2026-04-15T14:30:04Z",
"processed_at": "2026-04-15T14:30:05Z"
}
}