curl --request POST \
--url https://api.example.com/api/v1/chargeback/list \
--header 'Content-Type: application/json' \
--data '
{
"merchantId": 1000000201,
"startTime": "2023-11-07T05:31:56Z",
"endTime": "2023-11-07T05:31:56Z",
"pageNum": 1,
"pageSize": 20,
"chargebackStatus": [
"<string>"
],
"lifeCycle": "<string>"
}
'import requests
url = "https://api.example.com/api/v1/chargeback/list"
payload = {
"merchantId": 1000000201,
"startTime": "2023-11-07T05:31:56Z",
"endTime": "2023-11-07T05:31:56Z",
"pageNum": 1,
"pageSize": 20,
"chargebackStatus": ["<string>"],
"lifeCycle": "<string>"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
merchantId: 1000000201,
startTime: '2023-11-07T05:31:56Z',
endTime: '2023-11-07T05:31:56Z',
pageNum: 1,
pageSize: 20,
chargebackStatus: ['<string>'],
lifeCycle: '<string>'
})
};
fetch('https://api.example.com/api/v1/chargeback/list', 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.example.com/api/v1/chargeback/list",
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([
'merchantId' => 1000000201,
'startTime' => '2023-11-07T05:31:56Z',
'endTime' => '2023-11-07T05:31:56Z',
'pageNum' => 1,
'pageSize' => 20,
'chargebackStatus' => [
'<string>'
],
'lifeCycle' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"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.example.com/api/v1/chargeback/list"
payload := strings.NewReader("{\n \"merchantId\": 1000000201,\n \"startTime\": \"2023-11-07T05:31:56Z\",\n \"endTime\": \"2023-11-07T05:31:56Z\",\n \"pageNum\": 1,\n \"pageSize\": 20,\n \"chargebackStatus\": [\n \"<string>\"\n ],\n \"lifeCycle\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
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.example.com/api/v1/chargeback/list")
.header("Content-Type", "application/json")
.body("{\n \"merchantId\": 1000000201,\n \"startTime\": \"2023-11-07T05:31:56Z\",\n \"endTime\": \"2023-11-07T05:31:56Z\",\n \"pageNum\": 1,\n \"pageSize\": 20,\n \"chargebackStatus\": [\n \"<string>\"\n ],\n \"lifeCycle\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/v1/chargeback/list")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"merchantId\": 1000000201,\n \"startTime\": \"2023-11-07T05:31:56Z\",\n \"endTime\": \"2023-11-07T05:31:56Z\",\n \"pageNum\": 1,\n \"pageSize\": 20,\n \"chargebackStatus\": [\n \"<string>\"\n ],\n \"lifeCycle\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"code": 0,
"msg": "success",
"data": {
"records": [
{
"chargebackId": "<string>",
"originalOrderId": "<string>",
"originalPaymentRequestId": "<string>",
"merchantId": "<string>",
"merchantOrderId": "<string>",
"lifeCycle": "<string>",
"relevantChargebackId": "<string>",
"chargebackStatus": "<string>",
"amount": "<string>",
"currency": "<string>",
"feeAmount": "<string>",
"feeCurrency": "<string>",
"reasonCode": "<string>",
"reason": "<string>",
"description": "<string>",
"chargebackDateTime": "<string>",
"expiryDateTime": "<string>",
"merchantUserId": "<string>",
"subscriptionInfo": {
"subscriptionId": "<string>",
"period": "<string>",
"merchantRequest": "<string>",
"subscriptionRequest": "<string>"
}
}
],
"total": 125,
"size": 20,
"current": 1,
"pages": 7
}
}Chargeback list
Query chargebacks by creation time range, status and life cycle. Note: this API does not return the message and evidence objects; use Chargeback inquiry to retrieve them.
curl --request POST \
--url https://api.example.com/api/v1/chargeback/list \
--header 'Content-Type: application/json' \
--data '
{
"merchantId": 1000000201,
"startTime": "2023-11-07T05:31:56Z",
"endTime": "2023-11-07T05:31:56Z",
"pageNum": 1,
"pageSize": 20,
"chargebackStatus": [
"<string>"
],
"lifeCycle": "<string>"
}
'import requests
url = "https://api.example.com/api/v1/chargeback/list"
payload = {
"merchantId": 1000000201,
"startTime": "2023-11-07T05:31:56Z",
"endTime": "2023-11-07T05:31:56Z",
"pageNum": 1,
"pageSize": 20,
"chargebackStatus": ["<string>"],
"lifeCycle": "<string>"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
merchantId: 1000000201,
startTime: '2023-11-07T05:31:56Z',
endTime: '2023-11-07T05:31:56Z',
pageNum: 1,
pageSize: 20,
chargebackStatus: ['<string>'],
lifeCycle: '<string>'
})
};
fetch('https://api.example.com/api/v1/chargeback/list', 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.example.com/api/v1/chargeback/list",
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([
'merchantId' => 1000000201,
'startTime' => '2023-11-07T05:31:56Z',
'endTime' => '2023-11-07T05:31:56Z',
'pageNum' => 1,
'pageSize' => 20,
'chargebackStatus' => [
'<string>'
],
'lifeCycle' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"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.example.com/api/v1/chargeback/list"
payload := strings.NewReader("{\n \"merchantId\": 1000000201,\n \"startTime\": \"2023-11-07T05:31:56Z\",\n \"endTime\": \"2023-11-07T05:31:56Z\",\n \"pageNum\": 1,\n \"pageSize\": 20,\n \"chargebackStatus\": [\n \"<string>\"\n ],\n \"lifeCycle\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
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.example.com/api/v1/chargeback/list")
.header("Content-Type", "application/json")
.body("{\n \"merchantId\": 1000000201,\n \"startTime\": \"2023-11-07T05:31:56Z\",\n \"endTime\": \"2023-11-07T05:31:56Z\",\n \"pageNum\": 1,\n \"pageSize\": 20,\n \"chargebackStatus\": [\n \"<string>\"\n ],\n \"lifeCycle\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/v1/chargeback/list")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"merchantId\": 1000000201,\n \"startTime\": \"2023-11-07T05:31:56Z\",\n \"endTime\": \"2023-11-07T05:31:56Z\",\n \"pageNum\": 1,\n \"pageSize\": 20,\n \"chargebackStatus\": [\n \"<string>\"\n ],\n \"lifeCycle\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"code": 0,
"msg": "success",
"data": {
"records": [
{
"chargebackId": "<string>",
"originalOrderId": "<string>",
"originalPaymentRequestId": "<string>",
"merchantId": "<string>",
"merchantOrderId": "<string>",
"lifeCycle": "<string>",
"relevantChargebackId": "<string>",
"chargebackStatus": "<string>",
"amount": "<string>",
"currency": "<string>",
"feeAmount": "<string>",
"feeCurrency": "<string>",
"reasonCode": "<string>",
"reason": "<string>",
"description": "<string>",
"chargebackDateTime": "<string>",
"expiryDateTime": "<string>",
"merchantUserId": "<string>",
"subscriptionInfo": {
"subscriptionId": "<string>",
"period": "<string>",
"merchantRequest": "<string>",
"subscriptionRequest": "<string>"
}
}
],
"total": 125,
"size": 20,
"current": 1,
"pages": 7
}
}Body
Chargeback list request. Note: this API does not return the message and evidence objects. Call the chargeback inquiry API on a specific chargebackId to retrieve them.
Merchant Id assigned by Waffo
641000000201
Start time. Filters on the time the chargeback record was created by Waffo, NOT on the time its status was last updated. The range between startTime and endTime must be within 3 months.
End time. Filters on the time the chargeback record was created by Waffo, NOT on the time its status was last updated. The range between startTime and endTime must be within 3 months.
Page number, starting from 1
x >= 11
Number of records per page. Maximum: 100
1 <= x <= 10020
Chargeback status filter. Multiple values are combined with OR. Accepted values: ACTION_REQUIRED, UNDER_REVIEW, SECOND_CYCLE_RESPONSE_REQUIRED, ESCALATE_TO_2ND_CYCLE, CASE_WON, CANCELED, SETTLED, CASE_LOST, ACCEPTED, EXPIRED. Refer to chargebackStatus in the response for the meaning of each value. Records in Waffo's internal pending status are never returned by this API, regardless of this filter.
Chargeback life cycle filter FIRST_CYCLE (First round of the chargeback dispute) SECOND_CYCLE (Second round (Pre-Arbitration), escalated from First Cycle) Not specified means both.
Was this page helpful?