0

CreateDisputeEvidenceText

by
Published Oct 17, 2025

Uploads text to use as evidence for a dispute challenge.

Script square Verified

The script

Submitted by hugo697 Bun
Verified 235 days ago
1
//native
2
type Square = {
3
  token: string;
4
};
5
/**
6
 * CreateDisputeEvidenceText
7
 * Uploads text to use as evidence for a dispute challenge.
8
 */
9
export async function main(
10
  auth: Square,
11
  dispute_id: string,
12
  body: {
13
    idempotency_key: string;
14
    evidence_type?:
15
      | "GENERIC_EVIDENCE"
16
      | "ONLINE_OR_APP_ACCESS_LOG"
17
      | "AUTHORIZATION_DOCUMENTATION"
18
      | "CANCELLATION_OR_REFUND_DOCUMENTATION"
19
      | "CARDHOLDER_COMMUNICATION"
20
      | "CARDHOLDER_INFORMATION"
21
      | "PURCHASE_ACKNOWLEDGEMENT"
22
      | "DUPLICATE_CHARGE_DOCUMENTATION"
23
      | "PRODUCT_OR_SERVICE_DESCRIPTION"
24
      | "RECEIPT"
25
      | "SERVICE_RECEIVED_DOCUMENTATION"
26
      | "PROOF_OF_DELIVERY_DOCUMENTATION"
27
      | "RELATED_TRANSACTION_DOCUMENTATION"
28
      | "REBUTTAL_EXPLANATION"
29
      | "TRACKING_NUMBER";
30
    evidence_text: string;
31
  },
32
) {
33
  const url = new URL(
34
    `https://connect.squareup.com/v2/disputes/${dispute_id}/evidence-text`,
35
  );
36

37
  const response = await fetch(url, {
38
    method: "POST",
39
    headers: {
40
      "Content-Type": "application/json",
41
      Authorization: "Bearer " + auth.token,
42
    },
43
    body: JSON.stringify(body),
44
  });
45
  if (!response.ok) {
46
    const text = await response.text();
47
    throw new Error(`${response.status} ${text}`);
48
  }
49
  return await response.json();
50
}
51