For MerchantsAutomation

Upload evidence

The multipart evidence upload endpoint: evidenceUploadCategory values, the conditional content field, supported file types, and the 5 MB size limit.

The Upload Evidence API allows you to attach supporting documents directly to a dispute. Use it when you have screenshots, delivery confirmations, signed invoices, or other file-based artifacts that strengthen your chargeback response.

When to upload evidence

  • Screenshots of customer communications (support tickets, email threads, chat logs)
  • Proof of delivery or tracking confirmation documents
  • Signed invoices or order confirmations
  • Any additional documentation that corroborates your response narrative

Tip

Upload evidence as early as possible after receiving a dispute.created event. Chargeflow incorporates uploaded files into the evidence package before submission, so the sooner they arrive, the more time the AI has to build around them.

Endpoint

POST https://api.chargeflow.io/public/2025-04-01/disputes/{disputeId}/evidence

This is a multipart/form-data request. Pass the Chargeflow dispute ID as the path parameter.

Request fields

FieldTypeRequiredDescription
filebinaryYesThe file to upload
evidenceUploadCategorystringYesCategory of the evidence (see values below)
contentstringConditionalRequired when evidenceUploadCategory is additional_evidence or additional_notes

evidenceUploadCategory values:

ValueDescription
tracking_informationShipping tracking documents or delivery confirmations
customer_communicationScreenshots or transcripts of customer conversations
invoiceInvoices or order confirmations
additional_evidenceAny other supporting evidence (requires content field)
additional_notesFree-form notes to accompany the dispute response (requires content field)

Supported file types

  • Images: PNG, JPG
  • Documents: PDF
  • Maximum file size: 5 MB

Example: upload a customer communication screenshot

Terminal
curl -X POST https://api.chargeflow.io/public/2025-04-01/disputes/DISPUTE_ID/evidence \
  -H "x-api-key: YOUR_API_KEY" \
  -F "file=@/path/to/screenshot.png" \
  -F "evidenceUploadCategory=customer_communication"

Example: upload tracking information with a note

Terminal
curl -X POST https://api.chargeflow.io/public/2025-04-01/disputes/DISPUTE_ID/evidence \
  -H "x-api-key: YOUR_API_KEY" \
  -F "file=@/path/to/delivery-confirmation.pdf" \
  -F "evidenceUploadCategory=additional_evidence" \
  -F "content=FedEx delivery confirmation showing package signed for at customer address on Jan 26."

Response

A successful upload returns 200 OK with the evidence ID:

Response
{
  "requestId": "req_abc123def456",
  "evidenceId": "evd_789xyz"
}

Upload-specific errors

A file larger than 5 MB is rejected with a 400. For the full list of HTTP status codes and the standard error response shape, see Error handling.

Next steps

Was this page helpful?

On this page