DOCS

New!

/

10 minute read

October 2, 2019

Chargebacks

The chargebacks resource represents a completed transaction that has been disputed by the issuer, usually on behalf of the card holder. To cover disputed charges, you can credit funds to the card holder’s account at the time the chargeback is initiated. The /chargebacks endpoint allows you to view the chargeback state as it is updated as a chargeback progresses through the arbitration process. No more than 15 fraud-related chargebacks can be initiated against the same primary account number (PAN, also known as the card number).

Use the /cases endpoint to manage transaction disputes. See Case Management.

List chargebacks

Action: GET
Endpoint: /chargebacks

Develop Now!

Sign in and use your sandbox to access the API Explorer

Use this endpoint to return an array of all chargebacks.

This endpoint supports pagination and sorting.

Query parameters

Fields Description

transaction_token

string, optional

Lists all chargebacks initiated against the specified transaction.

Allowable Values:

Existing transaction token.

Send a GET request to /transactions to retrieve transaction tokens.

amount

decimal, optional

The amount of the chargeback.

Allowable Values:

Use 0.00 format.

state

string, optional

The value of the chargeback’s state field.

Allowable Values:

INITIATED, REPRESENTMENT, PREARBITRATION, ARBITRATION, CASE_WON, CASE_LOST, WRITTEN_OFF_PROGRAM, WRITTEN_OFF_ISSUER, NETWORK_REJECTED, UNABLE_TO_PROCESS

network_case_id

string, optional

Card network-specific chargeback case identifier. Value is provided by the card network.

Allowable Values:

50 char max

The state field (response)

Chargeback State Description

INITIATED

The chargeback has been created. Funds to cover the disputed charges have been credited to the card holder’s account if credit_user field was true or unspecified at the time of creation.

REPRESENTMENT

The case is in representment (also known as second presentment). The gateway/acquirer has disputed the chargeback. In some cases representment does not occur.

PREARBITRATION

The case is in pre-arbitration (also known as arbitration chargeback). Upon receipt of a dispute from the gateway/acquirer (representment), the issuer can submit the chargeback a second time, possibly with more or different information. Only relevant chargebacks assume this status.

ARBITRATION

The case is in arbitration. When a gateway/acquirer disputes a chargeback, the issuer can submit the case to the card network for arbitration after either the first or second (pre-arbitration) chargeback. In arbitration, the card network decides who wins the chargeback case.

CASE_WON

The chargeback case is closed; Marqeta won.

CASE_LOST

The chargeback case is closed; Marqeta lost.

WRITTEN_OFF_PROGRAM

Can be transitioned to only from CASE_LOST or NETWORK_REJECTED. The chargeback is credited to the GPA of the user or business and the Marqeta customer absorbs the cost through a debit from the program funding source.

WRITTEN_OFF_ISSUER

Can be transitioned to only from CASE_LOST or NETWORK_REJECTED. The chargeback is credited to the GPA of the user or business and Marqeta absorbs the cost.

NETWORK_REJECTED

The card network rejected the chargeback submission.

UNABLE_TO_PROCESS

Marqeta was unable to submit the chargeback to the card network. Rejections are usually caused by insufficient data being captured during authorization or clearing.

Sample response body

{
  "count": 1,
  "start_index": 0,
  "end_index": 0,
  "is_more": false,
  "data": [
    {
        "token": "my_chargeback_03",
        "transaction_token": "222",
        "amount": 1,
        "reason_description": "FRAUD_TRANSACTION",
        "reason_code": "62",
        "memo": "Charging back due to fraud",
        "state": "INITIATED",
        "channel": "ISSUER",
        "network": "VISA",
        "credit_user": true,
        "created_time": "2017-08-03T19:22:07Z",
        "last_modified_time": "2017-08-03T19:22:07Z"
    }
  ]
}

Is this helpful?

Retrieve chargeback

Action: GET
Endpoint: /chargebacks/{token}

Develop Now!

Sign in and use your sandbox to access the API Explorer

Use this endpoint to retrieve a specific chargeback.

URL path parameters

Fields Description

token

string, required

Identifies the chargeback to return.

Allowable Values:

Existing chargeback token.

Send a GET request to /chargebacks to retrieve chargeback tokens.

The state field (response)

Chargeback State Description

INITIATED

The chargeback has been created. Funds to cover the disputed charges have been credited to the card holder’s account if the credit_user field was true or unspecified at the time of creation.

REPRESENTMENT

The case is in representment (also known as second presentment). The gateway/acquirer has disputed the chargeback. In some cases representment does not occur.

PREARBITRATION

The case is in pre-arbitration (also known as arbitration chargeback). Upon receipt of a dispute from the gateway/acquirer (representment), the issuer can submit the chargeback a second time, possibly with more or different information. Only relevant chargebacks assume this status.

ARBITRATION

The case is in arbitration. When a gateway/acquirer disputes a chargeback, the issuer can submit the case to the card network for arbitration after either the first or second (pre-arbitration) chargeback. In arbitration, the card network decides who wins the chargeback case.

CASE_WON

The chargeback case is closed; Marqeta won.

CASE_LOST

The chargeback case is closed; Marqeta lost.

WRITTEN_OFF_PROGRAM

Can be transitioned to only from CASE_LOST or NETWORK_REJECTED. The chargeback is credited to the GPA of the user or business and the Marqeta customer absorbs the cost through a debit from the program funding source.

WRITTEN_OFF_ISSUER

Can be transitioned to only from CASE_LOST or NETWORK_REJECTED. The chargeback is credited to the GPA of the user or business and Marqeta absorbs the cost.

NETWORK_REJECTED

The card network rejected the chargeback submission.

UNABLE_TO_PROCESS

Marqeta was unable to submit the chargeback to the card network. Rejections are usually caused by insufficient data being captured during authorization or clearing.

Sample response body

{
    "token": "my_chargeback_03",
    "transaction_token": "222",
    "amount": 1,
    "reason_description": "FRAUD_TRANSACTION",
    "reason_code": "62",
    "memo": "Charging back due to fraud",
    "state": "INITIATED",
    "channel": "ISSUER",
    "network": "VISA",
    "credit_user": true,
    "created_time": "2017-08-03T19:22:07Z",
    "last_modified_time": "2017-08-03T19:22:07Z"
}

Is this helpful?

Retrieve chargeback transition

Action: GET
Endpoint: /chargebacks/transitions/{token}

Develop Now!

Sign in and use your sandbox to access the API Explorer

Use this endpoint to retrieve a specific chargeback transition.

URL path parameters

Fields Description

token

string, required

Identifies the chargeback transition to return.

Allowable Values:

Existing chargeback transition token.

Send a GET request to /chargebacks/{chargeback_token}/transitions to retrieve chargeback transition tokens.

The state and type fields (response)

Chargeback State Chargeback Type Description

INITIATED

initiated

The chargeback has been created. Funds to cover the disputed charges have been credited to the card holder’s account if the credit_user field was true or unspecified at the time of creation.

REPRESENTMENT

representment

The case is in representment (also known as second presentment). The gateway/acquirer has disputed the chargeback. In some cases representment does not occur.

PREARBITRATION

prearbitration

The case is in pre-arbitration (also known as arbitration chargeback). Upon receipt of a dispute from the gateway/acquirer (representment), the issuer can submit the chargeback a second time, possibly with more or different information. Only relevant chargebacks assume this status.

ARBITRATION

arbitration

The case is in arbitration. When a gateway/acquirer disputes a chargeback, the issuer can submit the case to the card network for arbitration after either the first or second (pre-arbitration) chargeback. In arbitration, the card network decides who wins the chargeback case.

CASE_WON

case.won

The chargeback case is closed; Marqeta won.

CASE_LOST

case.lost

The chargeback case is closed; Marqeta lost.

WRITTEN_OFF_PROGRAM

written.off.program

Can be transitioned to only from CASE_LOST or NETWORK_REJECTED. The chargeback is credited to the GPA of the user or business and the Marqeta customer absorbs the cost through a debit from the program funding source.

WRITTEN_OFF_ISSUER

written.off.issuer

Can be transitioned to only from CASE_LOST or NETWORK_REJECTED. The chargeback is credited to the GPA of the user or business and Marqeta absorbs the cost.

NETWORK_REJECTED

network.rejected

The card network rejected the chargeback submission.

UNABLE_TO_PROCESS

Marqeta was unable to submit the chargeback to the card network. Rejections are usually caused by insufficient data being captured during authorization or clearing.

Sample response body

{
    "token": "my_chargeback_transition_06",
    "state": "CASE_WON",
    "previous_state": "INITIATED",
    "channel": "ISSUER",
    "chargeback_token": "my_chargeback_06",
    "reason": "Uncontested",
    "created_time": "2017-10-02T21:45:54Z",
    "last_modified_time": "2017-10-02T21:45:54Z",
    "type": "case.won",
    "amount": 3
}

Is this helpful?

Action: GET
Endpoint: /chargebacks/{chargeback_token}/transitions

Develop Now!

Sign in and use your sandbox to access the API Explorer

Use this endpoint to return an array of all chargeback transitions related to a particular chargeback.

This endpoint supports pagination and sorting.

URL path parameters

Fields Description

chargeback_token

string, required

Identifies the chargeback whose transitions you want to list.

Allowable Values:

Existing chargeback token.

Send a GET request to /chargebacks to retrieve chargeback tokens.

The state and type fields (response)

Chargeback State Chargeback Type Description

INITIATED

initiated

The chargeback has been created. Funds to cover the disputed charges have been credited to the card holder’s account if the credit_user field was true or unspecified at the time of creation.

REPRESENTMENT

representment

The case is in representment (also known as second presentment). The gateway/acquirer has disputed the chargeback. In some cases representment does not occur.

PREARBITRATION

prearbitration

The case is in pre-arbitration (also known as arbitration chargeback). Upon receipt of a dispute from the gateway/acquirer (representment), the issuer can submit the chargeback a second time, possibly with more or different information. Only relevant chargebacks assume this status.

ARBITRATION

arbitration

The case is in arbitration. When a gateway/acquirer disputes a chargeback, the issuer can submit the case to the card network for arbitration after either the first or second (pre-arbitration) chargeback. In arbitration, the card network decides who wins the chargeback case.

CASE_WON

case.won

The chargeback case is closed; Marqeta won.

CASE_LOST

case.lost

The chargeback case is closed; Marqeta lost.

WRITTEN_OFF_PROGRAM

written.off.program

Can be transitioned to only from CASE_LOST or NETWORK_REJECTED. The chargeback is credited to the GPA of the user or business and the Marqeta customer absorbs the cost through a debit from the program funding source.

WRITTEN_OFF_ISSUER

written.off.issuer

Can be transitioned to only from CASE_LOST or NETWORK_REJECTED. The chargeback is credited to the GPA of the user or business and Marqeta absorbs the cost.

NETWORK_REJECTED

network.rejected

The card network rejected the chargeback submission.

UNABLE_TO_PROCESS

Marqeta was unable to submit the chargeback to the card network. Rejections are usually caused by insufficient data being captured during authorization or clearing.

Sample response body

{
  "count": 2,
  "start_index": 0,
  "end_index": 1,
  "is_more": false,
  "data": [
    {
      "token": "my_chargeback_transition_06",
      "state": "CASE_WON",
      "previous_state": "INITIATED",
      "channel": "ISSUER",
      "chargeback_token": "my_chargeback_06",
      "reason": "Uncontested",
      "created_time": "2017-10-02T21:45:54Z",
      "last_modified_time": "2017-10-02T21:45:54Z",
      "type": "case.won"
    },
    {
      "token": "5ebef80d-f276-49ed-be96-a73e6d8b704c",
      "state": "INITIATED",
      "channel": "ISSUER",
      "chargeback_token": "my_chargeback_06",
      "transaction_token": "664",
      "created_time": "2017-10-02T21:37:02Z",
      "last_modified_time": "2017-10-02T21:37:02Z",
      "type": "initiated"
    }
  ]
}

Is this helpful?

Have any feedback on this page?

If you feel we can do anything better, please let our team know.

We strive for the best possible developer experience.