List disputes
curl --request GET \
--url https://sandbox.api.reap.global/disputes/ \
--header 'Authorization: Bearer <token>' \
--header 'Reap-Version: <reap-version>'const options = {
method: 'GET',
headers: {'Reap-Version': '<reap-version>', Authorization: 'Bearer <token>'}
};
fetch('https://sandbox.api.reap.global/disputes/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://sandbox.api.reap.global/disputes/"
headers = {
"Reap-Version": "<reap-version>",
"Authorization": "Bearer <token>"
}
response = requests.get(url, headers=headers)
print(response.text){
"items": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"transactionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"cardId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "PENDING_SIGNATURE",
"reason": "FRAUD_EMV_LIABILITY_SHIFT_COUNTERFEIT",
"category": "FRAUD",
"requiresCardholderSignature": true,
"amount": {
"value": 100.5,
"currency": "<string>"
},
"cardholder": {
"name": "<string>",
"email": "jsmith@example.com",
"contactEmail": "jsmith@example.com"
},
"resolvedAt": "2023-11-07T05:31:56Z",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}
],
"nextCursor": "<string>"
}Disputes
List disputes
Returns a paginated list of card disputes, newest first. Filter by status, reason, category, card, transaction, or filed time range. No status default is applied.
GET
/
disputes
/
List disputes
curl --request GET \
--url https://sandbox.api.reap.global/disputes/ \
--header 'Authorization: Bearer <token>' \
--header 'Reap-Version: <reap-version>'const options = {
method: 'GET',
headers: {'Reap-Version': '<reap-version>', Authorization: 'Bearer <token>'}
};
fetch('https://sandbox.api.reap.global/disputes/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://sandbox.api.reap.global/disputes/"
headers = {
"Reap-Version": "<reap-version>",
"Authorization": "Bearer <token>"
}
response = requests.get(url, headers=headers)
print(response.text){
"items": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"transactionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"cardId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "PENDING_SIGNATURE",
"reason": "FRAUD_EMV_LIABILITY_SHIFT_COUNTERFEIT",
"category": "FRAUD",
"requiresCardholderSignature": true,
"amount": {
"value": 100.5,
"currency": "<string>"
},
"cardholder": {
"name": "<string>",
"email": "jsmith@example.com",
"contactEmail": "jsmith@example.com"
},
"resolvedAt": "2023-11-07T05:31:56Z",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}
],
"nextCursor": "<string>"
}Authorizations
API key as Bearer token
Headers
API version (YYYY-MM-DD)
Available options:
2025-02-14 Example:
"2025-02-14"
Query Parameters
Maximum number of items to return (1-100, default: 20)
Required range:
x <= 100Examples:
20
50
100
Opaque cursor for pagination. Pass nextCursor from previous response to get next page.
Filter by dispute status (comma-separated)
PENDING_SIGNATURE: Cardholder must sign a form before the case can progressRECEIVED: Dispute has been recorded and is awaiting reviewREVIEWING: Dispute is under internal reviewSUBMITTED: Dispute has been submitted to the card networkWON: Dispute resolved in favour of the cardholderLOST: Dispute was filed and Visa ruled for the merchantREFUNDED: Dispute resulted in a refundDECLINED: Reap did not file the case with the networkCANCELED: Dispute was canceled
Available options:
PENDING_SIGNATURE, RECEIVED, REVIEWING, SUBMITTED, WON, LOST, REFUNDED, DECLINED, CANCELED Filter by dispute reason (comma-separated)
FRAUD_EMV_LIABILITY_SHIFT_COUNTERFEIT: A counterfeit copy of the card was used in personFRAUD_EMV_LIABILITY_SHIFT_NON_COUNTERFEIT: The genuine card was used in person by someone else after being lost or stolenFRAUD_OTHER_CARD_PRESENT: Fraudulent use of the card in person that no other fraud reason coversFRAUD_OTHER_CARD_ABSENT: Fraudulent use of the card details online, by phone, or by mailFRAUD_VISA_MONITORING_PROGRAM: Fraud at a merchant Visa has placed under its fraud monitoring programAUTHORIZATION_CARD_RECOVERY_BULLETIN: The merchant charged the card without authorization while it was blockedAUTHORIZATION_DECLINED: The merchant charged the card after the authorization was declinedAUTHORIZATION_NO_AUTH_LATE_PRESENTMENT: The charge was never authorized, or was settled too long after authorizationPROCESSING_ERROR_INCORRECT_TRANSACTION_CODE: The transaction was processed as the wrong type, such as a charge instead of a refundPROCESSING_ERROR_INCORRECT_CURRENCY: The transaction was processed in the wrong currencyPROCESSING_ERROR_INCORRECT_ACCOUNT_NUMBER: The transaction was posted to the wrong card numberPROCESSING_ERROR_INCORRECT_AMOUNT: The transaction was processed for the wrong amountPROCESSING_ERROR_DUPLICATE_PROCESSING: The same purchase was charged more than once, or was already paid by other meansPROCESSING_ERROR_INVALID_DATA: The transaction was processed with invalid or incorrect dataCONSUMER_MERCHANDISE_NOT_RECEIVED: The goods or services were never receivedCONSUMER_CANCELLED_RECURRING: A recurring charge was taken after the cardholder cancelledCONSUMER_NOT_AS_DESCRIBED: The goods or services were not as described, or arrived defectiveCONSUMER_COUNTERFEIT_MERCHANDISE: The goods received were counterfeitCONSUMER_MISREPRESENTATION: The merchant misrepresented what was being soldCONSUMER_CREDIT_NOT_PROCESSED: The merchant agreed to a refund but never processed itCONSUMER_CANCELLED_MERCHANDISE: The cardholder cancelled the order or returned the goods and was not refundedCONSUMER_ORIGINAL_CREDIT_NOT_ACCEPTED: A payment pushed to the card was not accepted by the cardholderCONSUMER_NON_RECEIPT_CASH_ATM: An ATM debited the card without dispensing the cash
Available options:
FRAUD_EMV_LIABILITY_SHIFT_COUNTERFEIT, FRAUD_EMV_LIABILITY_SHIFT_NON_COUNTERFEIT, FRAUD_OTHER_CARD_PRESENT, FRAUD_OTHER_CARD_ABSENT, FRAUD_VISA_MONITORING_PROGRAM, AUTHORIZATION_CARD_RECOVERY_BULLETIN, AUTHORIZATION_DECLINED, AUTHORIZATION_NO_AUTH_LATE_PRESENTMENT, PROCESSING_ERROR_INCORRECT_TRANSACTION_CODE, PROCESSING_ERROR_INCORRECT_CURRENCY, PROCESSING_ERROR_INCORRECT_ACCOUNT_NUMBER, PROCESSING_ERROR_INCORRECT_AMOUNT, PROCESSING_ERROR_DUPLICATE_PROCESSING, PROCESSING_ERROR_INVALID_DATA, CONSUMER_MERCHANDISE_NOT_RECEIVED, CONSUMER_CANCELLED_RECURRING, CONSUMER_NOT_AS_DESCRIBED, CONSUMER_COUNTERFEIT_MERCHANDISE, CONSUMER_MISREPRESENTATION, CONSUMER_CREDIT_NOT_PROCESSED, CONSUMER_CANCELLED_MERCHANDISE, CONSUMER_ORIGINAL_CREDIT_NOT_ACCEPTED, CONSUMER_NON_RECEIPT_CASH_ATM Filter by dispute category (comma-separated)
Available options:
FRAUD, AUTHORIZATION, PROCESSING_ERROR, CONSUMER Filter by card ID
Filter by card transaction ID
Inclusive lower bound on when the dispute was filed. ISO 8601 datetime.
Pattern:
^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$Inclusive upper bound on when the dispute was filed. ISO 8601 datetime.
Pattern:
^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$