customer/v1/dispute
This is an older version of the customer/v2/dispute endpoint. We reccomend implementing customer/v2/dispute as it offers integration with the Compliance Management System for easier dispute management.
[POST] customer/v1/dispute
Create a dispute
Customers can dispute a transaction utilizing the create dispute endpoint. This is used for fraudulent and/or unauthorized charges that may appear on the customer's ledger. Creating a dispute does not guarantee a resolution in the customer's favor. The status will be pending until the dispute case is handled in the case management system by administration.
Please note: Customers cannot dispute a debit transfer. Only ACH transfers may be disputed. Additionally, a transaction must be in SETTLED state for a dispute to be possible.
Device identification is optional, but it is passed to our vendor for help with case management (refunds, fraud, etc.).
Example [POST] Request
{{avenu_base_url}}/customer/v1/dispute
{
"transactionID": "",
"disputeReason": "",
"disputeType": "",
"declarationAcknowledged": true,
"deviceIdentity": {
"deviceId": "",
"deviceType": "",
"deviceName": "",
"deviceOperatingSystem": "",
"deviceIPAddress": "",
"deviceLocation": "",
"deviceLongitude": "",
"deviceLatitude": "",
"deviceUser": "",
"deviceIMEINumber" : "",
"deviceTorEnabled" : "",
"deviceFirstSeen" : "",
"deviceLastSeen" : ""
}
}
Input Parameters
Parameter | Format | Required | Details |
---|---|---|---|
"transactionID" | String | Y | The transaction ID to dispute. |
"disputeReason" | String | N | The reason for the dispute (free text). |
"disputeType" | String | N | The type of the dispute - See table below |
"declarationAcknowledged" | Boolean | Y | This value must always be "true" - otherwise, return Error Code 1001. |
"deviceId" | String | Y | The user's unique device identifier. |
"deviceType" | String | N | The type of the user's device |
"deviceName" | String | N | The name given to the user's device. |
"deviceOperatingSystem" | String | N | The OS of the user's device. |
"deviceIPAddress" | String | N | Current IP Address for the device. |
"deviceLocation" | String | N | Current location for the device. |
"deviceLongitude" | String | N | Device's location longitude. |
"deviceLatitude" | String | N | Device's location latitude. |
"deviceUser" | String | N | The name of the user of the device. |
"deviceIMEINumber" | String | N | Mobile device unique equipment identifier. |
"deviceTorEnabled" | Boolean | N | Device is/is not using Tor browser. |
"deviceFirstSeen" | String; ISO 8601 yyyy-mm-dd | N | Date/Time the device was first used to access Avenu. |
"deviceLastSeen" | String; ISO 8601 yyyy-mm-dd | N | Date/Time the device was last used to access Avenu. |
Dispute Type ENUM
ENUM Value | Description |
---|---|
UNAUTHORIZED | Unauthorized Transaction |
MERCHANT_DISPUTE | Merchant Dispute |
INCORRECT_AMOUNT | Incorrect amount sent to or from customer's account |
TRANSACTION_OMITTED | Transaction omitted from statement |
BOOKKEEPING_ERROR | Bookkeeping error relating to a transaction |
INCORRECT_AMOUNT_AT_ATM | Receipt of incorrect amount of money at an ATM |
TRANSACTION_NOT_DEFINED | Transaction not properly identified |
CLARIFICATION_REQUEST | Customer clarification request |
Example Response
{
"disputeID": "",
"dateUpdated": "",
"memo": "",
"amount": "",
"currencyType": "",
"status": ""
}
Response Elements
Element | Details |
---|---|
disputeID | Unique ID to track this dispute case |
dateUpdated | Dispute updated date in format ISO 8601 YYYY-MM-DD |
memo | Memo associated with the dispute |
amount | Dispute amount |
currencyType | Dispute currency |
status | Dispute status |
Error Codes
code | Message | Description |
---|---|---|
1001 | "Missing required field" | This error will be returned when a required field is not sent. |
1002 | "Error - Invalid data structure" | This error will be returned when invalid data structures are sent. |
1003 | "Error - Invalid data" | This error will be returned when invalid data is sent. |
1010 | "Error - Transaction Not Allowed" | This error will be returned when the transaction is not permitted. |
AE7000 | "Call Issuer" | This error will be returned when a dispute is sent for a DEBIT or DEBIT_FUND transaction type. When a customer needs to dispute a debit card funding transaction, they should reach out to the phone number listed on their card in order to dispute the transaction. |
AE3000 | "Missing required fields" | The request body does not have one or more required fields to execute the call. |
[GET] customer/v1/dispute
Get dispute status
The current status of a dispute can be retrieved by passing the unique disputeID
as a parameter to the dispute endpoint.
Dispute status
Status | Description |
---|---|
PENDING | Dispute has been received- pending review |
APPROVED | Dispute has been approved- adjustment in progress |
RESOLVED | Dispute has been resolved |
Example [GET] Request
{{avenu_base_url}}/customer/v1/dispute/{{disputeID}}
Request Parameter
Parameter | Format | Required |
---|---|---|
"disputeID" | UUID String | Y |
Example Response
{
"disputeID": "",
"dateUpdated": "",
"memo": "",
"amount": xxx,
"currencyType": "",
"status": ""
}
Response Elements
Element | Details |
---|---|
disputeID | Unique ID to track this dispute case |
dateUpdated | Dispute updated date in format ISO 8601 YYYY-MM-DD |
memo | Memo associated with the dispute |
amount | Dispute amount |
currencyType | Dispute currency |
status | Dispute status |
Updated about 1 month ago