Sign in
An image of the Stripe logo
Create account
Sign in
Home
Payments
Business operations
Financial services
Developer tools
No-code
All products
Home
Payments
Business operations
Home
Payments
Business operations
Financial services
Developer tools
Support
Overview
Overview
Risk evaluation
Risk settings
Reviews
Lists
Rules
Radar Session
Testing
Integration
Disputes and fraud
How disputes work
Responding to disputes
Best practices
Using the API
Categories
Dispute withdrawals
Fraud prevention
Measuring disputes
Disputes on Connect
Monitoring programs
High risk merchant lists
Analytics
Radar
·
HomeBusiness operationsFraud detectionDisputes and fraud

Responding to disputes

Learn how to effectively respond to disputes.

When an account owner files a dispute against a payment, their bank alerts Stripe and Stripe notifies you using:

  • Email notification
  • Stripe Dashboard
  • An API charge.dispute.created event (if your integration is set up to receive webhooks)
  • Push notification (if you’ve subscribed)

Each of the dispute notification channels provides a link to the dispute’s details page in your Dashboard, where you can learn more about the reason for the dispute and take appropriate action.

When you receive a dispute notification, take action to resolve it before the deadline. Failing to respond to a dispute results in irretrievable refund to the account holder and a dispute fee charged to your account.

Review the dispute category

When you get a dispute, the corresponding category or reason appears in your Dashboard and as the value for the reason attribute of the dispute object.

Each dispute category specifies different response requirements and recommendations to make it effective in addressing the root claim from the cardholder, so your first step is to review our response guidelines for the category of your dispute so you can collect the best set of evidence to counter the dispute claim.

Inquiries

Inquiries appear as disputed payments in the Dashboard, but they actually represent a pre-dispute stage that’s typically issued when an account owner doesn’t recognize a transaction on their account. Respond in this stage to resolve any questions and prevent a formal dispute escalation, which saves you time, fees, and your rating with the card networks. For more information, see Inquiries.

If an inquiry escalates to a chargeback, you must submit another response for the dispute.

Work with the account owner

When possible, the Dispute details page provides you with a copy of the bank’s submission to Stripe, based on the account owner’s claim, and a means to email the account owner. Reviewing the claim and contacting the account owner may give you insight to better understand the complaint and help you decide how to proceed.

Be sure to keep a record of all communication with your customer during this process, as it can be helpful evidence to submit with your response.

Decide to accept or challenge the dispute

Handle disputes through Stripe

You can’t address a formally disputed payment (such as by refunding the customer directly) outside this process because the issuing bank has already refunded the account owner through the chargeback process and you risk refunding the customer twice.

When you have a clear picture of the dispute details, decide whether you will accept or challenge the dispute. Consider the following questions in your determination:

  • Is the account owner’s claim valid?
  • If not, do I have the evidence required to disprove the claim?
  • Can I convince the account owner to withdraw their dispute if I resolve their complaint amicably, for example, by offering a store credit or a replacement item?

When you’ve decided how to respond, select the corresponding button on the Dispute details page in your Dashboard:

  • Accept dispute submits a response to the issuing bank affirming that you agree to refund the customer for the disputed payment and pay the dispute fee.
  • Counter dispute opens a form that guides you through the submission process, prompts you for evidence that is relevant to the dispute type and your response type, and allows you to easily upload supporting files.

See Responding to disputes using the API if you would rather handle disputes programmatically.

Submit evidence through the Dashboard

You have only one opportunity to submit your response. Stripe immediately forwards your response and all supporting files to the issuing bank and you can’t edit the response or submit additional files, so make sure you’ve assembled all your evidence before you submit.

  1. Click Counter dispute to open Stripe’s dispute response form.

  2. Tell us about the dispute In the first page of the form, tell us why you believe the dispute is in error and the product type of the original purchase. This information along with the dispute category helps Stripe recommend the most relevant evidence to support your challenge on the next page of the form. For example, if your counter to a customer’s claim that they canceled a subscription for an online service is that the customer agreed to a minimum term, it doesn’t make sense to ask you for shipping and tracking details. When your integration supports it, Stripe automatically captures the product type based on the original payment.

  3. Assemble your evidence The second page of the form has a dynamic set of sections representing the most relevant details you can provide for your individual case.

    In the Supporting Files section, use the File Upload tool to attach evidence that matches the checklist of evidence types relevant to your dispute type and counter argument. For each uploaded file, specify which type of evidence it satisfies. You can only submit one file per type of evidence, so if you have several files representing one type of evidence, combine them into a single, multi-page file.

    Consider the following guidelines to make sure your supporting files are effective:

    • Consult the evidence recommendations for your specific dispute category.
    • Organize each piece of evidence according to the evidence type it satisfies.
    • Combine items of the same evidence type into a single file.
    • Check that your evidence files don’t exceed the combined size limit of 4.5 MB.
    • Banks evaluating the dispute won’t review any external content, so don’t include:
      • Audio or video files
      • Requests to call or email for more information
      • Links to click for further information (for example, file downloads or links to tracking information)
  4. Background evidence The other sections of the second page vary depending on the dispute type and your answers in the first page. When your integration supports it, Stripe automatically captures the data for these sections and pre-populates both the API evidence object attributes and the form fields in the Dashboard, but if any of these fields isn’t pre-populated, include as much as you can before you submit your response. These sections can include:

    • Shipping details
    • Refund policy details
    • Customer details
    • Product details

    The more information your integration collects and passes to Stripe when your customer makes a payment, the better your ability to prevent disputes and fraud from occurring, and challenge them effectively when they do.

  5. Submit evidence Click the checkbox to acknowledge your understanding that your response is final. Once you click to submit, Stripe automatically puts the evidence you provide into a format accepted by the issuing bank and submits it for consideration. At this point, you can’t amend what you’ve submitted or provide any additional information, so make sure you have included every relevant detail.

Check the dispute status

After you submit a response, the status of the dispute changes to under_review. When the issuer informs Stripe of its decision, we inform you of the outcome by email, in the charge.dispute.closed webhook event, and by updating the dispute status in the Dashboard and the Dispute API object to one of the following:

  • won indicates that the bank decided in your favor and overturned the dispute. In this case, the chargeback is reversed and the original purchase amount, plus the dispute fee, are credited back to your account.
  • lost indicates that the bank decided in the account owner’s favor and upheld the dispute. In this case, the refund is permanent and the dispute fee is not returned.

See also

  • Preventing disputes and fraud
  • Dispute monitoring programs
  • Calculating dispute rates
Was this page helpful?
Questions? Contact us.
Watch our developer tutorials.
Check out our product changelog.
Powered by Markdoc
You can unsubscribe at any time. Read our privacy policy.
On this page
Review the dispute category
Work with the account owner
Decide to accept or challenge the dispute
Submit evidence through the Dashboard
Check the dispute status
See also
Related Guides
How disputes work
Dispute categories
Dispute withdrawals
Preventing disputes and fraud
Stripe Shell
Test mode
▗▄ ▄▟█ █▀▀ ▗▟████▙▖ ██████ ███▗▟█ ███ ███▗▟██▙▖ ▗▟█████▙▖ ███▖ ▀▀ ███ ███▀▀▀ ███ ███▀ ███ ███ ███ ▝▜████▙▖ ███ ███ ███ ███ ███ █████████ ▄▄ ▝███ ███ ▄ ███ ███ ███▄ ███ ███ ▄▄ ▝▜████▛▘ ▝▜███▛ ███ ███ ███▝▜██▛▘ ▝▜█████▛▘ ███ ▀▘
Welcome to the Stripe Shell! Stripe Shell is a browser-based shell with the Stripe CLI pre-installed. Login to Stripe docs and press Control + Backtick on your keyboard to start managing your Stripe resources in test mode. - View supported commands: - Find webhook events: - Listen for webhook events: - Call Stripe APIs: stripe [api resource] [operation] (e.g. )
The Stripe Shell is best experienced on desktop.
$