Submit dispute evidence | Moov Documentation

Submit dispute evidence

Submit the evidence associated with a dispute.

Evidence items must be uploaded using the appropriate endpoint(s) prior to calling this endpoint to submit it. Evidence can only be submitted once per dispute.

Read our disputes guide to learn more.

To access this endpoint using an access token you'll need to specify the /accounts/{accountID}/transfers.write scope.

Endpoint

POST /accounts/{accountID}/disputes/{disputeID}/evidence/submit

Example Requests

Ask

curl -X POST "https://api.moov.io/accounts/{accountID}/disputes/{disputeID}/evidence/submit" \
  -H "Authorization: Bearer {token}" \
  -H "X-Moov-Version: v2026.07.00"

Ask

mc, _ := moov.NewClient()

var accountID string
var disputeID string

mc.SubmitDisputeEvidence(ctx, accountID, disputeID)

Ask

import { Moov } from "@moovio/sdk";

const moov = new Moov({
  security: {
    username: "",
    password: "",
  },
});

async function run() {
  const result = await moov.disputes.submitEvidence({
    accountID: "01f79d04-f2de-42de-9e37-23c751edecb4",
    disputeID: "8c5d6d6e-420a-49c8-b7c3-d4b5d1bbd415",
  });

console.log(result);
}

run();

Ask

declare(strict_types=1);

require 'vendor/autoload.php';

use Moov\MoovPhp;
use Moov\MoovPhp\Models\Components;

$sdk = MoovPhp\Moov::builder()
    ->setSecurity(
        new Components\Security(
            username: '',
            password: '',
        )
    )
    ->build();

$response = $sdk->disputes->submitEvidence(
    accountID: '01f79d04-f2de-42de-9e37-23c751edecb4',
    disputeID: '8c5d6d6e-420a-49c8-b7c3-d4b5d1bbd415'
);

if ($response->dispute !== null) {
    // handle response
}

Ask

package hello.world;

import io.moov.sdk.Moov;
import io.moov.sdk.models.components.Security;
import io.moov.sdk.models.errors.GenericError;
import io.moov.sdk.models.operations.SubmitDisputeEvidenceResponse;
import java.lang.Exception;

public class Application {

public static void main(String[] args) throws GenericError, Exception {

Moov sdk = Moov.builder()
                .security(Security.builder()
                    .username("")
                    .password("")
                    .build())
            .build();

SubmitDisputeEvidenceResponse res = sdk.disputes().submitEvidence()
                .accountID("01f79d04-f2de-42de-9e37-23c751edecb4")
                .disputeID("8c5d6d6e-420a-49c8-b7c3-d4b5d1bbd415")
                .call();

if (res.dispute().isPresent()) {
            System.out.println(res.dispute().get());
        }
    }
}

Ask

from moovio_sdk import Moov
from moovio_sdk.models import components

with Moov(
    security=components.Security(
        username="",
        password="",
    ),
) as moov:

res = moov.disputes.submit_evidence(account_id="01f79d04-f2de-42de-9e37-23c751edecb4", dispute_id="8c5d6d6e-420a-49c8-b7c3-d4b5d1bbd415")

# Handle response
    print(res)

Ask

require 'moov_ruby'

Models = ::Moov::Models
s = ::Moov::Client.new(
  security: Models::Components::Security.new(
    username: '',
    password: ''
  )
)
res = s.disputes.submit_evidence(account_id: '01f79d04-f2de-42de-9e37-23c751edecb4', dispute_id: '8c5d6d6e-420a-49c8-b7c3-d4b5d1bbd415')

unless res.dispute.nil?
  # handle response
end

Ask

using Moov.Sdk;
using Moov.Sdk.Models.Components;

var sdk = new MoovClient(security: new Security() {
    Username = "",
    Password = "",
});

var res = await sdk.Disputes.SubmitEvidenceAsync(
    accountID: "01f79d04-f2de-42de-9e37-23c751edecb4",
    disputeID: "8c5d6d6e-420a-49c8-b7c3-d4b5d1bbd415"
);

// handle response

Response Examples

The request completed successfully.

Success Response Example

{
  "amount": {
    "currency": "USD",
    "value": 257753
  },
  "createdOn": "2024-12-23T17:55:00Z",
  "disputeID": "6e356108-fdfa-4910-bbe4-1e3c8abf5520",
  "merchantAccountID": "34233b72-780c-4e0e-8b08-cbbe1bc878f8",
  "networkReasonCode": "10.4",
  "phase": "chargeback",
  "respondBy": "2024-12-23T18:55:00Z",
  "status": "response-needed",
  "transfer": {
    "transferID": "ecac148a-917e-4ee0-b46a-c51408939fff"
  }
}

Error Response Example

{
  "error": "string"
}

Notes

Dispute Attributes