submitDisputeEvidence method

Future<DisputeEvidence> submitDisputeEvidence({
  1. required String disputeId,
  2. String? authToken,
})

Submits evidence to the cardholder's bank.

Before submitting evidence, Square compiles all available evidence. This includes evidence uploaded using the CreateDisputeEvidenceFile and CreateDisputeEvidenceText endpoints and evidence automatically provided by Square, when available.

Implementation

Future<DisputeEvidence> submitDisputeEvidence({
  required String disputeId,
  String? authToken,
}) async {

  authToken ??= authenticationService.getCachedToken()?.accessToken;

  Map<String, String> headers = {
    "Authorization": "Bearer ${authToken ?? ""}",
    'Content-Type': 'application/json; charset=UTF-8',
    'Accept': 'application/json',

  };

  Uri endpoint = Uri.https(
      baseUrl, "/v2/disputes/$disputeId/submit-evidence");

  //print (endpoint.toString());

  var response = await
  http.post(endpoint, headers: headers);

  if (response.statusCode == 200) {
    print (jsonDecode(response.body));
    return DisputeEvidenceResponse.fromJson(jsonDecode(response.body)).evidence!;
  }
  else {
    print (response.body);
    throw PaymentException(statusCode: response.statusCode, message: DisputeEvidenceResponse.fromJson(jsonDecode(response.body)).errors?[0].detail?.toString());
  }
}