The Chargebacks API gives you programmatic access to your chargeback data. Use it to build reconciliation workflows, monitor dispute trends, or export records for offline processing.Two operations are available:Search — query chargebacks with flexible filters and receive paginated results immediately.
Export — generate a downloadable export file asynchronously; Kushki notifies you via webhook when the file is ready.
Search chargebacks#
Call POST /data/v1/chargebacks/search with a filters object and pagination settings.Request structure#
{
"filters": {
"time": {
"transaction_date": {
"from": "2026-01-01",
"to": "2026-03-31"
}
},
"chargeback_status": ["INITIALIZED", "APPROVAL"],
"chargeback_type": ["FRAUD"]
},
"fields": ["ticket_code", "processor_name", "reason_description"],
"pagination": {
"page": 1,
"page_size": 20
}
}
Filter options#
| Filter | Type | Description |
|---|
filters.time.transaction_date | Object | Filter by original transaction date (from / to, ISO 8601). |
filters.time.request_date | Object | Filter by chargeback request date (from / to). |
filters.chargeback_status | Array | INITIALIZED, APPROVAL, DECLINED, NOT_MARKABLE. |
filters.chargeback_type | Array | ADMINISTRATIVE or FRAUD. |
filters.country_name | Array | Filter by merchant country (e.g., ["PERU"]). |
filters.card_country_name | Array | Filter by card-issuing country. |
filters.chargeback_ticket_code | String | Look up a specific chargeback by ticket code. |
Additional fields#
By default, the response returns a core set of fields. Use the fields array to request additional data columns:ticket_code, operation_id, transaction_reference, merchant_code, business_unit, approved_transaction_amount, transaction_type, transaction_status, chargeback_type, reason_description, processor_name, issuing_bank, card_country_name, country_name, masked_credit_card, last_four_digit_code, and more.Response#
The response returns a data array of chargeback objects. Default fields per chargeback:| Field | Description |
|---|
id | Unique chargeback record ID. |
chargeback_ticket_code | Chargeback ticket number. |
merchant_name | Merchant name. |
chargeback_status | Current status: INITIALIZED, APPROVAL, DECLINED, or NOT_MARKABLE. |
reason_code | Dispute reason code from the card network. |
request_amount | Disputed amount. |
currency_code | Transaction currency (PEN or USD). |
transaction_date | Original transaction date (ISO 8601). |
request_date | Date the chargeback was filed. |
deadline_representation_date | Deadline for the merchant to submit evidence. |
deadline_resolution_date | Final resolution deadline. |
risk_level | HIGH, MEDIUM, or LOW. |
Export chargebacks#
Call POST /data/v1/chargebacks/export to initiate an asynchronous export. The request body follows the same structure as the search endpoint, with an additional webhooks array.How it works#
1.
Submit the export request — Kushki immediately returns a unique id.
2.
Kushki generates the export file in the background.
3.
Once ready, Kushki sends a POST notification to each URL in your webhooks array with the download link and its expiration timestamp.
Request example#
{
"filters": {
"time": {
"transaction_date": {
"from": "2026-01-01",
"to": "2026-03-31"
}
}
},
"fields": ["ticket_code", "processor_name", "masked_credit_card"],
"pagination": {
"page": 1,
"page_size": 500
},
"webhooks": ["https://yoursite.com/kushki/chargebacks/export"]
}
Response#
{
"id": "1339b164-9298-4ea1-a52a-a9c053879194"
}
Keep the id to correlate with the webhook notification or to report delivery issues to Kushki support.
Authentication#
Using the API#
https://api.kushkipagos.com/
Available Endpoints#
List Chargebacks
Search and paginate chargebacks with flexible filters on status, date range, type, and more.
Export Chargebacks
Initiate an asynchronous export of chargeback data. Receive the download link via webhook when ready.
Got a suggestion on this documentation? Contact us.
Modified at 2026-07-11 00:04:37