> ## Documentation Index
> Fetch the complete documentation index at: https://www.marqeta.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Submit a batch of possibly associated transactions

> Submit a batch of possibly associated transactions to the VISA Network.

<div className="mb-4 flex items-center gap-2"><span className="rounded-lg font-bold px-1.5 py-0.5 text-sm leading-5 bg-blue-400/20 text-blue-700 dark:text-blue-400">POST</span><span className="flex items-center gap-0.5 font-mono text-sm"><span className="text-gray-400">/</span><span className="font-medium text-gray-800 dark:text-white">{"cases"}</span><span className="text-gray-400">/</span><span className="font-medium text-gray-800 dark:text-white">{"{token}"}</span><span className="text-gray-400">/</span><span className="font-medium text-gray-800 dark:text-white">{"associated_transactions"}</span><span className="text-gray-400">/</span><span className="font-medium text-gray-800 dark:text-white">{"selections"}</span></span></div>

Submit a batch of possibly associated transactions to the VISA Network.

If the dispute case has any associated transactions, these are updated in the `associated_transactions` field for each transaction. If the submission is successful, the `network_submission_status` field is set to `SUBMITTED`.

You can globally set `credit_change_reason` and `auth_change_reason` values for all transactions included in the post. These values can be overridden for each associated transaction.

Each associated transaction is validated before submitting the batch to the network. If one associated transaction fails validation, the entire request fails. The failure occurs at the first violation, and the validation of the remaining payload is not validated. The response includes the list of affected associated transactions. If one of the potentially associated transactions has already been submitted to the network, an error is returned.

The response provides a list of transactions. Those with the associated field set to `true` are associated with the dispute case.

<Danger>
  **Warning**<br />Once an associated transaction selection form has been submitted, it cannot be resubmitted. The form can be updated.
</Danger>

<h2 id="_url_path_parameters">
  URL path parameters
</h2>

| Fields | Description |
| - | - |
| token<br />string<br />Required | The dispute case token.<br />**Allowable Values:**<br />36 char max |

<h2 id="_body_field_details_2">
  Body field details
</h2>

| Fields | Description |
| - | - |
| network\_type<br />string<br />Required | The card network. This should match the dispute case token provided in the path.<br />**Allowable Values:**<br />`VISA` |
| credit\_change\_reason<br />string<br />Optional | The credit change reason. This value is globally applied to all transactions in the list unless overridden by the `credit_change_reason` value for a specific transaction in the associated transaction object. Pattern: `^\d+$`<br />**Allowable Values:**<br />A valid credit change reason. |
| auth\_change\_reason<br />string<br />Optional | The auth change reason. This value is globally applied to all transactions in the list unless overridden by the `auth_change_reason` value for a specific transaction in the associated transaction object. Pattern: `^\d+$`<br />**Allowable Values:**<br />A valid authorization change reason. |
| associated\_transactions<br />array of objects<br />Required | An array of transactions associated with the current dispute case. Details for each transaction are defined in the `associated_transactions` object table.<br />**Allowable Values:**<br />A valid array of <a href="/docs/core-api/disputes-visa/submit-batch-possibly-associated-transactions#_the_associated_transactions_object">associated\_transaction</a> objects. |

<h2 id="_the_associated_transactions_object">
  The associated\_transactions object
</h2>

| Fields | Description |
| - | - |
| associated<br />boolean<br />Required | Indicates whether the transaction is associated with the given transaction.<br />**Allowable Values:**<br />`true`, `false` |
| associated\_transaction\_token<br />string<br />Required | The unique identifier for the associated transaction.<br />**Allowable Values:**<br />A valid associated transaction token. |
| credit\_change\_reason<br />string<br />Optional | The credit change reason for the specific associated transaction. This value overrides the `credit_change_reason` global value. Pattern: `^\d+$`<br />**Allowable Values:**<br />A valid credit change reason. |
| auth\_change\_reason<br />string<br />Optional | The auth change reason for the specific associated transaction. This value overrides the `auth_change_reason` global value.<br />**Allowable Values:**<br />A valid authorization change reason. |

<h2 id="_associated_transactions_response">
  Associated transactions response
</h2>

A response is generated when all transactions included in the request have been submitted to the network. A `200` response code is generated with the following fields:

| Fields | Description |
| - | - |
| network\_type<br />string<br />Returned | The card network. This matches the dispute case token provided in the path.<br />**Allowable Values:**<br />`VISA` |
| token<br />string<br />Returned | Unique identifier of the associated transaction on the Marqeta platform.<br />**Allowable Values:**<br />36 char max |
| case\_token<br />string<br />Returned | Token that indicates which dispute case this Associated Transaction belongs to.<br />**Allowable Values:**<br />36 char max |
| network\_phase<br />string<br />Returned | The network dispute state.<br />**Allowable Values:**<br />`DISPUTE` |
| transaction\_date<br />datetime<br />Returned | The date and time of the transaction.<br />**Allowable Values:**<br />Format: yyyy-MM-dd'T'HH:mm:ss.SSSZ |
| transaction\_amount<br />number<br />Returned | The amount of money associated with this transaction.<br />**Allowable Values:**<br />A valid transaction amount. |
| transaction\_currency<br />string<br />Returned | Three-digit ISO 3166-1 numeric code for the currency used in the transaction.<br />**Allowable Values:**<br />30 char max |
| merchant\_name<br />string<br />Returned | The name of the merchant associated with this transaction.<br />**Allowable Values:**<br />22 char max |
| network\_submission\_status<br />string<br />Returned | The status of the associated transaction on the network.<br />**Allowable Values:**<br />`PENDING`—The initial value before the associated transaction is submitted to the network.<br />`SUBMISSION_FAILED`—The submission of the associated transaction to the network failed.<br />`SUBMITTED`—The associated transaction was successfully submitted to the network.<br />`UPDATE_FAILED`—The update to the associated transaction failed. |
| first\_network\_submission\_time<br />datetime<br />Returned | The date and time when the associated transaction was first submitted to the network.<br />**Allowable Values:**<br />Format: yyyy-MM-dd'T'HH:mm:ss.SSSZ |
| last\_network\_submission\_time<br />datetime<br />Returned | The date and time when the associated transaction was updated at the network. This value is updated every time the associated transaction is updated to the network.<br />**Allowable Values:**<br />Format: yyyy-MM-dd'T'HH:mm:ss.SSSZ |
| transaction\_type<br />string<br />Returned | Visa-specific transaction type (for network use only).<br />**Allowable Values:**<br />255 char max |
| auth\_code<br />string<br />Returned | Visa-specific authorization code (for network use only).<br />**Allowable Values:** |
| network\_selection\_form<br />object<br />Returned | Visa-specific network selection form, containing the `credit_change_reason` and `auth_change_reason` code values that were set during the associated transaction selection in the `POST` or `PUT` request. These values are overwritten whenever an attempt is made to update the selection.<br />**Allowable Values:**<br />See <a href="/docs/core-api/disputes-visa/submit-batch-possibly-associated-transactions#_the_network_selection_form_object">The network\_selection\_form object</a>. |

<h2 id="_the_network_selection_form_object">
  The network\_selection\_form object
</h2>

| Fields | Description |
| - | - |
| associated<br />boolean<br />Returned | Indicates whether the transaction is associated with the dispute case. This field is set once the selection is submitted. If `true`, the transaction is associated with the dispute case.<br />**Allowable Values:**<br />`True`, `False` |
| credit\_change\_reason<br />string<br />Returned | The credit change reason. Pattern: `^\d+$`<br />**Allowable Values:**<br />A valid credit change reason code. |
| auth\_change\_reason<br />string<br />Returned | The authorization change reason. Pattern: `^\d+$`<br />**Allowable Values:**<br />A valid auth change reason code. |

<h2 id="_submission_errors">
  Submission errors
</h2>

| Error Code | Description |
| - | - |
| 400 | Indicates one of the following has occurred:<br />One of the associated transaction forms was already submitted.<br />A `network_type` value does not match the one for the dispute.<br />One of the associated transaction forms has a missing required field. |
| 404 | Indicates one of the following has occurred:<br />The dispute case token was not found.<br />One of the associated transactions was not found.<br />The user attempts to submit a form for a dispute case that doesn't belong to the specified program short code.<br />One of the associated transactions does not belong to the dispute case. |

<h2 id="_sample_request_body_2">
  Sample request body
</h2>

```json JSON lines wrap theme={null}
"network_type": "VISA",
  "credit_change_reason": "8",
  "auth_change_reason": "83952347647997785959177943288119589987930259773787787402577751279976256354634112680576",
  "associated_transactions": [
    {
      "associated": true,
      "associated_transaction_token": "string",
      "credit_change_reason": "31320146819959147412182438616152094955519754833",
      "auth_change_reason": "19825646390525201297707582594987938135506677612006399332111987193044"
    }
  ]
}
```

<h2 id="_sample_response_body_2">
  Sample response body
</h2>

```json JSON expandable lines wrap theme={null}
{
  "associated_transactions": [
    {
      "network_type": "VISA",
      "token": "string",
      "case_token": "string",
      "network_phase": "DISPUTE",
      "transaction_date": "2022-07-21T20:05:19.469Z",
      "transaction_amount": 0,
      "transaction_currency": "string",
      "merchant_name": "string",
      "network_submission_status": "PENDING",
      "first_network_submission_time": "2022-07-21T20:05:19.469Z",
      "last_network_submission_time": "2022-07-21T20:05:19.469Z",
      "transaction_type": "string",
      "auth_code": "string",
      "network_selection_form": {
        "associated": true,
        "credit_change_reason": "1931821026291098997994936518692286249429118358411883813460319553290652759495697632223762249903373317",
        "auth_change_reason": "88807041187533992807677186332619"
      }
    }
  ]
}
```


## Related topics

- [Disputes (Visa) Overview](/docs/core-api/disputes-visa.md)
- [2021 Release Notes](/docs/developer-guides/release-notes-2021.md)
- [Managing Visa Disputes](/docs/developer-guides/managing-visa-disputes.md)
- [Update submitted associated transactions](/docs/core-api/disputes-visa/update-submitted-associated-transactions.md)
- [Event Types](/docs/core-api/event-types.md)
