curl --request GET \
--url https://api.cakto.com.br/public_api/refunds/{id}/ \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.cakto.com.br/public_api/refunds/{id}/"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.cakto.com.br/public_api/refunds/{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.cakto.com.br/public_api/refunds/{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>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}require 'uri'
require 'net/http'
url = URI("https://api.cakto.com.br/public_api/refunds/{id}/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_bodyHttpResponse<String> response = Unirest.get("https://api.cakto.com.br/public_api/refunds/{id}/")
.header("Authorization", "Bearer <token>")
.asString();using RestSharp;
var options = new RestClientOptions("https://api.cakto.com.br/public_api/refunds/{id}/");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("Authorization", "Bearer <token>");
var response = await client.GetAsync(request);
Console.WriteLine("{0}", response.Content);
{
"id": "5f2a1c3e-8b7d-4e21-9f10-3c6d7a2b9e41",
"refId": "Q7W2k9P",
"status": "refund_requested",
"amount": "197.00",
"currency": "BRL",
"paymentMethod": "pix",
"offerType": "main",
"parentOrderId": null,
"reason": "Comprei por engano",
"refundedBy": "customer",
"paidAt": "2026-09-26T10:14:03.201544-03:00",
"requestedAt": "2026-09-28T09:41:22.873610-03:00",
"autoApproveAt": "2026-09-29T09:41:22.873610-03:00",
"settlementStartedAt": null,
"refundedAt": null,
"customer": {
"id": 183921,
"name": "Maria Souza",
"email": "maria.souza@example.com",
"birthDate": null,
"phone": "11999999999",
"docType": "cpf",
"docNumber": "12345678909"
},
"product": {
"id": "ff3fdf61-e88f-43b5-982a-32d50f112414",
"short_id": "AckhQ75",
"name": "Curso de Exemplo"
},
"offer": {
"id": "B8BcHrY",
"name": "Oferta principal"
}
}Consultar Reembolso
Estado de um reembolso: pedido pelo comprador, em efetivação ou devolvido.
curl --request GET \
--url https://api.cakto.com.br/public_api/refunds/{id}/ \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.cakto.com.br/public_api/refunds/{id}/"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.cakto.com.br/public_api/refunds/{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.cakto.com.br/public_api/refunds/{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>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}require 'uri'
require 'net/http'
url = URI("https://api.cakto.com.br/public_api/refunds/{id}/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_bodyHttpResponse<String> response = Unirest.get("https://api.cakto.com.br/public_api/refunds/{id}/")
.header("Authorization", "Bearer <token>")
.asString();using RestSharp;
var options = new RestClientOptions("https://api.cakto.com.br/public_api/refunds/{id}/");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("Authorization", "Bearer <token>");
var response = await client.GetAsync(request);
Console.WriteLine("{0}", response.Content);
{
"id": "5f2a1c3e-8b7d-4e21-9f10-3c6d7a2b9e41",
"refId": "Q7W2k9P",
"status": "refund_requested",
"amount": "197.00",
"currency": "BRL",
"paymentMethod": "pix",
"offerType": "main",
"parentOrderId": null,
"reason": "Comprei por engano",
"refundedBy": "customer",
"paidAt": "2026-09-26T10:14:03.201544-03:00",
"requestedAt": "2026-09-28T09:41:22.873610-03:00",
"autoApproveAt": "2026-09-29T09:41:22.873610-03:00",
"settlementStartedAt": null,
"refundedAt": null,
"customer": {
"id": 183921,
"name": "Maria Souza",
"email": "maria.souza@example.com",
"birthDate": null,
"phone": "11999999999",
"docType": "cpf",
"docNumber": "12345678909"
},
"product": {
"id": "ff3fdf61-e88f-43b5-982a-32d50f112414",
"short_id": "AckhQ75",
"name": "Curso de Exemplo"
},
"offer": {
"id": "B8BcHrY",
"name": "Oferta principal"
}
}Escopo
read orders
Visão geral
Consulta um reembolso pelo id do pedido, o mesmo que chega emdata.id no webhook
refund_requested.
Enquanto status for refund_requested, autoApproveAt é o prazo: até ele o comprador pode
desistir, e depois dele o reembolso é efetivado sem depender de ninguém. Os estados estão em
Listar Reembolsos.
404.Exemplo
import requests
resposta = requests.get(
"https://api.cakto.com.br/public_api/refunds/5f2a1c3e-8b7d-4e21-9f10-3c6d7a2b9e41/",
headers={"Authorization": "Bearer eyJhbGciOiJIUzI1NiIsIn..."},
timeout=30,
)
resposta.raise_for_status()
reembolso = resposta.json()
if reembolso["status"] == "refund_requested":
print(f"Janela aberta até {reembolso['autoApproveAt']}")
const resposta = await fetch(
"https://api.cakto.com.br/public_api/refunds/5f2a1c3e-8b7d-4e21-9f10-3c6d7a2b9e41/",
{ headers: { Authorization: "Bearer eyJhbGciOiJIUzI1NiIsIn..." } },
);
if (!resposta.ok) throw new Error(`Cakto API error ${resposta.status}`);
const reembolso = await resposta.json();
console.log(reembolso.status, reembolso.autoApproveAt);
Authorizations
Token de autenticação do tipo Bearer {access_token}, onde {access_token} é o token obtido no fluxo de autenticação.
Path Parameters
Id do pedido reembolsado ou com reembolso solicitado.
Response
Com status: "refund_requested", autoApproveAt é o prazo: até ele o comprador pode desistir; depois dele o reembolso é efetivado sem depender de ninguém.
Id do pedido. É também o id do reembolso: é por ele que se consulta e aprova.
Id curto do pedido, o mesmo que aparece no painel.
refund_requested: o comprador pediu e a janela está aberta; se ninguém agir, o reembolso é efetivado em autoApproveAt. in_settlement: aprovado, aguardando a adquirente confirmar a devolução. acquirer_error: a adquirente recusou o estorno. refunded: devolvido.
refund_requested- refund_requestedin_settlement- in_settlementacquirer_error- acquirer_errorrefunded- refunded
refund_requested, in_settlement, acquirer_error, refunded Valor deste pedido, como string decimal.
"2.49"
Moeda do pedido.
Método de pagamento do pedido.
main, orderbump, upsell ou downsell.
Id do pedido principal da mesma compra, quando este é order bump ou upsell.
Motivo informado pelo comprador ao pedir o reembolso.
Quem acionou o reembolso: customer (pedido pelo comprador), producer (aprovado ou feito pelo produtor) ou admin (suporte da Cakto).
Quando o pedido foi pago.
Quando o comprador pediu o reembolso. null em reembolso feito sem solicitação.
Fim da janela da solicitação: se o comprador não cancelar e ninguém aprovar antes, o reembolso é efetivado automaticamente neste instante. null fora da janela.
Quando o estorno foi enviado à adquirente.
Quando a adquirente confirmou a devolução. null enquanto não confirmou.
Comprador: nome e contato para falar com ele dentro da janela.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Was this page helpful?