Skip to main content
Use the credit account disputes endpoints to create and manage disputes on a credit account. For more on disputes, see About Credit Account Disputes. Creating a dispute triggers the creation of a journal entry belonging to the DISPUTE group. For more on dispute journal entries, see Disputes in the About Credit Account Journal Entries guide.

Create account dispute

Action: POST
Endpoint: /credit/accounts/{account_token}/disputes
Create a dispute of a journal entry on a credit account.

URL path parameters

FieldsDescription
account_token

string

Required
Unique identifier of the credit account for which to create a dispute.

Send a GET request to /credit/accounts to retrieve existing credit account tokens.

Allowable Values:

Existing account token

Request body

FieldsDescription
token

string

Optional
Unique identifier of the dispute.

Allowable Values:

36 char max
ledger_entry_token

string

Required
Unique identifier of the journal entry (authorization.clearing type only) in dispute.

Allowable Values:

36 char max

Existing authorization.clearing type journal entry token
amount

decimal

Required
Amount of the dispute. Max value is equal to the value of the original transaction.

Allowable Values:

0.01 min
category

string

Required
Category to which the dispute belongs.

Allowable Values:

FRAUD, AUTH, PROCESSING_ERROR, CONSUMER_DISPUTE
notes

string

Optional
Additional information on the dispute (for example, a reason for the dispute).

Allowable Values:

750 char max

Sample request body

JSON
{
  "token": "dispute_token_1234",
  "ledger_entry_token": "journal_entry_token1222",
  "amount": 500,
  "category": "FRAUD"
}

Response body

FieldsDescription
token

string

Returned
Unique identifier of the dispute.

Allowable Values:

36 char max
ledger_entry_token

string

Returned
Unique identifier of the journal entry (authorization.clearing type only) in dispute.

Allowable Values:

Existing journal entry token
account_token

string

Returned
Unique identifier of the credit account on which the dispute was created.

Allowable Values:

36 char max

Existing account token
amount

decimal

Returned
Amount of the dispute.

Allowable Values:

Format: 0.00
status

string

Returned
Status of the dispute.

- ACTIVE - The dispute is active and awaiting resolution.
- REVERSED - The dispute has been reversed and is no longer active.
- AH_WON - The account holder won the dispute.
- AH_LOST - The account holder lost the dispute.

Allowable Values:

ACTIVE, REVERSED, AH_WON, AH_LOST, REFUNDED
category

string

Returned
Category to which the dispute belongs.

Allowable Values:

FRAUD, AUTH, PROCESSING_ERROR, CONSUMER_DISPUTE
notes

string

Conditionally returned
Additional information on the dispute (for example, a reason for the dispute).

Allowable Values:

750 char max
resolved_at

datetime

Conditionally returned
Date and time when the dispute was resolved and no longer in ACTIVE status.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ
updated_time

datetime

Returned
Date and time when the dispute was last updated on Marqeta’s credit platform, in UTC.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ
created_time

datetime

Returned
Date and time when the dispute was created on Marqeta’s credit platform, in UTC.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

Sample response body

JSON
{
  "token": "dispute_token_1234",
  "ledger_entry_token": "journal_entry_token1222",
  "account_token": "account_token_12",
  "amount": 500,
  "status": "ACTIVE",
  "category": "FRAUD",
  "notes": "fraudulent purchase",
  "resolved_at": "2023-07-01T00:27:09Z",
  "updated_time": "2023-07-01T00:27:09Z",
  "created_time": "2023-07-01T00:27:09Z"
}

List account disputes

Action: GET
Endpoint: /credit/accounts/{account_token}/disputes
Retrieve an array of disputes on a credit account. This endpoint supports sorting and pagination.

URL path parameters

FieldsDescription
account_token

string

Required
Unique identifier of the credit account for which to retrieve the disputes.

Send a GET request to /credit/accounts to retrieve existing credit account tokens.

Allowable Values:

Existing account token

URL query parameters

FieldsDescription
count

integer

Optional
Number of disputes resources to retrieve.

Allowable Values:

1–100
start_index

integer

Optional
Sort order index of the first resource in the returned array.

Allowable Values:

0 min
sort_by

string

Optional
Field on which to sort. Prefix the field name with a hyphen (-) to sort in descending order. Omit the hyphen to sort in ascending order.

NOTE: You must sort using system field names such as lastModifiedTime, and not by the field names appearing in response bodies such as last_modified_time.

Allowable Values:

lastModifiedTime, -lastModifiedTime
ledger_entry_tokens

array of strings

Optional
Unique identifier of the journal entry in dispute. This type of identifier can only be used for authorization.clearing-type journal entries.

Allowable Values:

Existing authorization.clearing-type journal entry token
statuses

array of strings

Optional
Status of the dispute.

Allowable Values:

ACTIVE, REVERSED, AH_WON, AH_LOST, REFUNDED

Valid dispute status

Response body

FieldsDescription
count

integer

Returned
Number of resources returned.

Allowable Values:

1-10
start_index

integer

Returned
Sort order index of the first resource in the returned array.

Allowable Values:

Any integer
end_index

integer

Returned
Sort order index of the last resource in the returned array.

Allowable Values:

Any integer
is_more

boolean

Returned
A value of true indicates that more unreturned resources exist.

Allowable Values:

true, false
data

array of objects

Returned
Contains one or more disputes on a credit account.

Allowable Values:

One or more dispute objects
data[].token

string

Returned
Unique identifier of the dispute.

Allowable Values:

36 char max
data[].ledger_entry_token

string

Returned
Unique identifier of the journal entry (authorization.clearing type only) in dispute.

Allowable Values:

Existing journal entry token
data[].account_token

string

Returned
Unique identifier of the credit account on which the dispute was created.

Allowable Values:

36 char max

Existing account token
data[].amount

decimal

Returned
Amount of the dispute.

Allowable Values:

Format: 0.00
data[].status

string

Returned
Status of the dispute.

- ACTIVE - The dispute is active and awaiting resolution.
- REVERSED - The dispute has been reversed and is no longer active.
- AH_WON - The account holder won the dispute.
- AH_LOST - The account holder lost the dispute.

Allowable Values:

ACTIVE, REVERSED, AH_WON, AH_LOST, REFUNDED
data[].category

string

Returned
Category to which the dispute belongs.

Allowable Values:

FRAUD, AUTH, PROCESSING_ERROR, CONSUMER_DISPUTE
data[].notes

string

Conditionally returned
Additional information on the dispute (for example, a reason for the dispute).

Allowable Values:

750 char max
data[].resolved_at

datetime

Conditionally returned
Date and time when the dispute was resolved and no longer in ACTIVE status.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ
data[].updated_time

datetime

Returned
Date and time when the dispute was last updated on Marqeta’s credit platform, in UTC.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ
data[].created_time

datetime

Returned
Date and time when the dispute was created on Marqeta’s credit platform, in UTC.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

Sample response body

JSON
{
  "count": 1,
  "start_index": 0,
  "end_index": 0,
  "is_more": true,
  "data": [
    {
      "token": "dispute_token_1234",
      "ledger_entry_token": "journal_entry_token1222",
      "account_token": "account_token_12",
      "amount": 500,
      "status": "ACTIVE",
      "category": "FRAUD",
      "notes": "fraudulent purchase",
      "resolved_at": "2021-07-01T00:27:09Z",
      "updated_time": "2021-07-01T00:27:09Z",
      "created_time": "2021-07-01T00:27:09Z"
    }
  ]
}

Retrieve account dispute

Action: GET
Endpoint: /credit/accounts/{account_token}/disputes/{dispute_token}
Retrieve a dispute from a credit account.

URL path parameters

FieldsDescription
account_token

string

Required
Unique identifier of the credit account from which to retrieve a dispute.

Send a GET request to /credit/accounts to retrieve existing credit account tokens.

Allowable Values:

Existing account token
dispute_token

string

Required
Unique identifier of the dispute to retrieve.

Send a GET request to /credit/accounts/{account_token}/disputes to retrieve existing dispute tokens.

Allowable Values:

Existing dispute token

Response body

FieldsDescription
token

string

Returned
Unique identifier of the dispute.

Allowable Values:

36 char max
ledger_entry_token

string

Returned
Unique identifier of the journal entry (authorization.clearing type only) in dispute.

Allowable Values:

Existing journal entry token
account_token

string

Returned
Unique identifier of the credit account on which the dispute was created.

Allowable Values:

36 char max

Existing account token
amount

decimal

Returned
Amount of the dispute.

Allowable Values:

Format: 0.00
status

string

Returned
Status of the dispute.

- ACTIVE - The dispute is active and awaiting resolution.
- REVERSED - The dispute has been reversed and is no longer active.
- AH_WON - The account holder won the dispute.
- AH_LOST - The account holder lost the dispute.

Allowable Values:

ACTIVE, REVERSED, AH_WON, AH_LOST, REFUNDED
category

string

Returned
Category to which the dispute belongs.

Allowable Values:

FRAUD, AUTH, PROCESSING_ERROR, CONSUMER_DISPUTE
notes

string

Conditionally returned
Additional information on the dispute (for example, a reason for the dispute).

Allowable Values:

750 char max
resolved_at

datetime

Conditionally returned
Date and time when the dispute was resolved and no longer in ACTIVE status.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ
updated_time

datetime

Returned
Date and time when the dispute was last updated on Marqeta’s credit platform, in UTC.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ
created_time

datetime

Returned
Date and time when the dispute was created on Marqeta’s credit platform, in UTC.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

Sample response body

JSON
{
  "token": "dispute_token_1234",
  "ledger_entry_token": "journal_entry_token1222",
  "account_token": "account_token_12",
  "amount": 500,
  "status": "ACTIVE",
  "category": "FRAUD",
  "notes": "string",
  "resolved_at": "2023-07-01T00:27:09Z",
  "updated_time": "2023-07-01T00:27:09Z",
  "created_time": "2023-07-01T00:27:09Z"
}

Update account dispute

Action: POST
Endpoint: /credit/accounts/{account_token}/disputes/{dispute_token}/transitions
Update the amount or status of a dispute on a credit account.

URL path parameters

FieldsDescription
account_token

string

Required
Unique identifier of the credit account from which to update a dispute.

Send a GET request to /credit/accounts to retrieve existing credit account tokens.

Allowable Values:

Existing account token
dispute_token

string

Required
Unique identifier of the dispute to update.

Send a GET request to /credit/accounts/{account_token}/disputes to retrieve existing credit account tokens.

Allowable Values:

Existing dispute token

Request body

FieldsDescription
amount

decimal

Required
Updated amount of the dispute, based on the resolution.

Allowable Values:

Format: 0.00
status

string

Required
Status of the dispute.

- ACTIVE - The dispute is active and awaiting resolution.
- REVERSED - The dispute has been reversed and is no longer active.
- AH_WON - The account holder won the dispute.
- AH_LOST - The account holder lost the dispute.

Allowable Values:

ACTIVE, REVERSED, AH_WON, AH_LOST, REFUNDED
notes

string

Optional
Additional information on the dispute update (for example, a reason for the dispute update).

Allowable Values:

750 char max
token

string

Optional
Unique identifier of the dispute update.

Allowable Values:

36 char max
source_created_time

datetime

Optional
Date and time when the dispute occurred.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ
interest_adjustments

array of objects

Optional
List of interest adjustments and their effective times, if applicable. Note that this typically only applies for a cross-cycle activity, such as a dispute or payment.

Allowable Values:

Valid array of one or more interest_adjustments objects
interest_adjustments[].currency_code

string

Required
Valid three-digit ISO 4217 currency code.

Allowable Values:

USD
interest_adjustments[].effective_date

datetime

Required
Date and time when the dispute interest charge originally happened, in UTC.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ
interest_adjustments[].amount

decimal

Required
The fee amount.

Allowable Values:

- < 0 (Credit) - The dispute is initiated.
- > 0 (Debit) - The dispute is lost.

Sample request body

JSON
{
  "amount": 500,
  "status": "AH_WON"
}

Response body

FieldsDescription
amount

decimal

Returned
Amount of the updated dispute, based on the resolution.

Allowable Values:

Format: 0.00
status

string

Returned
Status of the dispute.

- ACTIVE - The dispute is active and awaiting resolution.
- REVERSED - The dispute has been reversed and is no longer active.
- AH_WON - The account holder won the dispute.
- AH_LOST - The account holder lost the dispute.

Allowable Values:

ACTIVE, REVERSED, AH_WON, AH_LOST, REFUNDED
notes

string

Conditionally returned
Additional information on the dispute update (for example, a reason for the dispute update).

Allowable Values:

750 char max
account_token

string

Returned
Unique identifier of the credit account on which the dispute was updated.

Allowable Values:

Existing account token
token

string

Returned
Unique identifier of the dispute update.

Allowable Values:

36 char max
created_time

datetime

Returned
Date and time when the dispute update was created on Marqeta’s credit platform, in UTC.

Allowable Values:

Format: yyyy-MM-ddThh:mm:ssZ

Sample response body

JSON
{
  "amount": 500,
  "status": "AH_WON",
  "notes": "account holder evidence accepted",
  "account_token": "my_account_token_12",
  "token": "dispute_update_token1234",
  "created_time": "2023-07-01T00:27:09Z"
}