Managing disputes via the API is only available to merchants who can access disputes in the Braintree Control Panel.

You can submit an evidence file for a dispute through this method. You can only submit evidence for disputes that have a status of "open".

result = gateway.dispute.add_file_evidence(
  document.id, # see the example below for more details

If the evidence is successfully added to the dispute, the result will be successful and will include the evidence object. Otherwise, check for validation errors.

if result.success?
  # evidence file added successfully
  p result.errors

If the dispute can't be found, it will raise a Braintree::NotFoundError.


Once you have finished uploading evidence, you must finalize the dispute using Dispute: Finalize before the Reply By date indicated in the dispute details.

dispute_id required, String

The unique dispute identifier.

Additional Parameters
:category String

The category of this piece of evidence.

:document_id required, String

The unique identifier for a DocumentUpload object. The document must have a kind of EvidenceDocument.

Valid file evidence categories

If a dispute requires compelling evidence, use the following category codes to indicate what type of evidence you’re submitting. Depending on the dispute reason code, additional validations may apply.


Not all disputes require categorized evidence. See the list of dispute reason codes that do require categorized, compelling evidence.

Category Description
LEGIT_PAYMENTS_FOR_SAME_MERCHANDISE Evidence of spending across multiple payment types for the same merchandise.
MERCHANT_WEBSITE_OR_APP_ACCESS Evidence of merchant website or app access.
PROFILE_SETUP_OR_APP_ACCESS Evidence of a profile setup or app access.
PROOF_OF_AUTHORIZED_SIGNER Evidence the transaction was completed by an authorized signer that the cardholder knows.
PROOF_OF_DELIVERY_EMP_ADDRESS Proof of delivery to the cardholder's company address.
PROOF_OF_DELIVERY Proof of delivery to the address on the AVS match.
PROOF_OF_POSSESSION_OR_USAGE Proof that the customer is in possession of and/or using the merchandise.
SIGNED_DELIVERY_FORM A signed delivery form, or a copy of the cardholder's ID as proof that the goods were picked up at your business location.
SIGNED_ORDER_FORM A signed order form for a mail or phone transaction.
TICKET_PROOF Evidence the ticket was received or scanned at gate, or evidence of other transactions related to the original (e.g. frequent flyer miles).


Submitting categorized evidence

When responding to disputes with compelling evidence, specify the appropriate category for all evidence.

result = gateway.dispute.add_file_evidence(
  document_id: document.id,

Submitting uncategorized evidence

document_result = gateway.document_upload.create(
  kind: Braintree::DocumentUpload::Kind::EvidenceDocument,
  file: File.new("local_file.pdf", "r"),

if document_result.success?
  result = gateway.dispute.add_file_evidence(