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

# reportTransactions

Use this method to report data to Vindicia Retain for use in fighting Chargebacks resulting from transactions not processed through Vindicia Retain.

## Input

*transactions*: an array of `Transaction` objects to submit for billing.

## Output

*return*: an object of type `Return` that indicates success or failure of the call.

*response*: an object of type [`TransactionValidationResponse`](TransactionValidationResponse), which includes the ID of an emh transaction returning an error.

**Note:** An empty `TransactionValidationResponse` object indicates that the call succeeded without error. For more information, see [TransactionValidationResponse Values](TransactionValidationResponse).

## Returns

This method returns the codes listed in [Retain Return Codes](retain.return_codes).

## Example

```

$tx = new Transaction();
// Populate the Transaction object as illustrated above
// for credit card based billTransactions call.
$select = new select();
$ret = $select->reportTransactions(array{$tx});
if($ret['returnCode'] == 200)
{
    $failedTransactions = $ret['response'];
    if($failedTransactions && (sizeof($failedTransactions) > 0))
    {
        foreach ($failedTransactions as $transaction)
        {
            //Evaluate Transaction failure response here.
        }
    }
}
else
{
    //handle error condition
}
```

**Parent topic:**[Vindicia Retain Methods](../topics/vindicia_retain_methods)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.