DisputeReason
The reasons a dispute can give.
Operations
Every route this entity exposes. Each route links to its own reference on this page.
| Method | Route | SDK operation | Returns |
|---|---|---|---|
GET |
/spend/profiles/{profileId}/dispute-form/reasons |
list |
List of dispute reasons |
Examples
One example per SDK, generated from the API model. The argument names are the parameters and fields of this entity, and the values are placeholders. The examples are not compiled or executed.
Golang
Construct client as shown in the Golang setup, then call the operations:
dispute_reasons, err := client.DisputeReason(nil).List(map[string]any{"profile_id": 1}, nil)
if err != nil {
panic(err)
}
fmt.Println(dispute_reasons)
Lua
Construct client as shown in the Lua setup, then call the operations:
local dispute_reasons, err = client:DisputeReason():list({ profile_id = 1 })
PHP
Construct client as shown in the PHP setup, then call the operations:
$dispute_reasons = $client->DisputeReason()->list(["profile_id" => 1]);
Python
Construct client as shown in the Python setup, then call the operations:
dispute_reasons = client.DisputeReason().list({"profile_id": 1})
Ruby
Construct client as shown in the Ruby setup, then call the operations:
dispute_reasons = client.DisputeReason.list({ "profile_id" => 1 })
TypeScript
Construct client as shown in the TypeScript setup, then call the operations:
const dispute_reasons = await client.DisputeReason().list({ profile_id: 1 })
Fields
| Field | Type | Required | Description |
|---|---|---|---|
code |
string |
No | The type of reasons available for the dispute. |
description |
string |
No | The description of the dispute reason. |
isFraud |
boolean |
No | Flag indicating that the dispute reason is fraud-related. |
subOptions |
array |
No | Optional list of sub-reasons that should be used as the dispute reason. |
supportsMultipleTransactions |
boolean |
No | Whether the dispute supports multiple transactions. |
tooltip |
string |
No | Text to display when showing the dispute form to your users. |
list
GET /spend/profiles/{profileId}/dispute-form/reasons
Operation ID: disputeReasonsGet.
Authentication: bearer token (UserToken).
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
profileId |
path |
integer (int64) |
Yes | Your profile ID. |
X-External-Correlation-Id |
header |
string (uuid) |
No | Optional UUID for correlating requests across systems. If provided, Wise echoes it back in the response. Maximum 36 characters. Learn more. |
Responses
200: List of dispute reasons
application/json
| Property | Type | Required | Description |
|---|---|---|---|
[].code |
string |
No | The type of reasons available for the dispute. Top-level codes include ATM_DISPENSED_NO_FUNDS, WRONG_AMOUNT, TROUBLE_WITH_GOODS_SERVICES, MERCHANT_CHARGED_AGAIN, NO_REFUND, UNAUTHORIZED. If a reason has subOptions, use the sub-option reason code when submitting a dispute. |
[].description |
string |
No | The description of the dispute reason. |
[].isFraud |
boolean |
No | Flag indicating that the dispute reason is fraud-related. |
[].subOptions |
array of object |
No | Optional list of sub-reasons that should be used as the dispute reason. |
[].supportsMultipleTransactions |
boolean |
No | Whether the dispute supports multiple transactions. |
[].tooltip |
string |
No | Text to display when showing the dispute form to your users. |
Example response:
[
{
"code": "ATM_DISPENSED_NO_FUNDS",
"description": "I didn't receive the money from the ATM or cash machine",
"isFraud": false,
"supportsMultipleTransactions": false,
"tooltip": "Choose this if the ATM did not dispense the money or gave you less than expected"
},
{
"code": "WRONG_AMOUNT",
"description": "I was charged the wrong amount or currency",
"isFraud": false,
"supportsMultipleTransactions": false,
"tooltip": "Choose this if you were overcharged or the payment was in a different currency than you were expecting"
},
{
"code": "TROUBLE_WITH_GOODS_SERVICES",
"description": "There's a problem with the goods or service I ordered",
"isFraud": false,
"supportsMultipleTransactions": false,
"tooltip": "Choose this if the goods or service never arrived, or if the product was defective or different from what you expected"
},
{
"code": "MERCHANT_CHARGED_AGAIN",
"description": "I got an unexpected charge from a merchant",
"isFraud": false,
"supportsMultipleTransactions": false,
"tooltip": "Choose this for subscription charges, when you've paid twice for one purchase, or when you know the merchant from a past transaction but aren't sure why they charged you"
},
{
"code": "NO_REFUND",
"description": "I haven't received the refund",
"isFraud": false,
"supportsMultipleTransactions": false,
"tooltip": "Choose this when you've been promised a refund and it hasn't arrived"
},
{
"code": "UNAUTHORIZED",
"description": "I did not make, authorize, or participate in this transaction",
"subOptions": [
{
"code": "UNEXPECTEDLY_CHARGED_AGAIN",
"description": "A past merchant unexpectedly charged me again",
"isFraud": false,
"supportsMultipleTransactions": false
},
{
"code": "UNWANTED_SUBSCRIPTION",
"description": "I've been charged for a subscription without my permission",
"isFraud": false,
"supportsMultipleTransactions": false
},
{
"code": "CARD_POSSESSION",
"description": "I don't recognise a transaction",
"isFraud": true,
"supportsMultipleTransactions": true,
"tooltip": "Choose this if you had your card at the time of the transactions, or if you think your card details have been compromised"
},
{
"code": "CARD_NO_POSSESSION",
"description": "My card was lost or stolen",
"isFraud": true,
"supportsMultipleTransactions": true,
"tooltip": "Choose this if you didn't have your card at the time of the transactions"
}
],
"tooltip": "Choose this if you don't know the merchant or have never purchased anything from them"
}
]
429: Rate limit exceeded. Retry after the number of seconds specified in the Retry-After header
application/json
The response is object.