Respond to disputes
The lifecycle of Klarna disputes and how to respond to them.
Note
This guide is specific to Klarna payment disputes. Learn how card disputes work.
A dispute occurs when the Klarna customer files a complaint or return request for a specific order using the Klarna consumer app. Customers have up to 180 calendar days to file a dispute from the date of capture.
These complaints and return requests correspond to specific reason codes that Stripe shares back with you. When someone files a Klarna dispute, the process varies slightly by reason code, but typically follows a standard pattern.
Comparison to card disputes
There are a few key similarities and differences between how Klarna and card disputes work.
Card disputes | Klarna disputes | |
---|---|---|
Inquiry support | Select card networks support inquiries, also known as a “retrieval” or “request for information”. | All Klarna disputes, except for fraudulent disputes start as inquiries. Unlike cards, businesses aren’t expected to submit evidence at this stage, and are expected to resolve the issue directly with the customer. |
Responding to disputes | Businesses can use the Stripe Dashboard or Disputes API to manage and respond to disputes. | Same as cards. |
Dispute fees | There are separate fees for receiving a dispute, in addition to countering a dispute. Dispute fees are assessed when the dispute is created and apply regardless of whether you ultimately win or lose the dispute. | There is only a single fee for losing a dispute. Dispute fees are assessed when the dispute is created, but are reversed if you ultimately win the dispute. |
Partial disputes | Partial disputes are supported. | Same as cards. |
Credit not processed Stripe dispute category | This dispute category can refer to several card network reason codes, although the most common reason is when a customer has made a return and hasn’t yet received a refund. | For Klarna, this dispute category refers to two distinct scenarios, although both reasons share the same reason code.
|
Inquiries
Inquiry disputes are an opportunity to resolve a customer’s issue before the dispute escalates to a chargeback and carries a fee. Stripe notifies you of an inquiry as soon as Klarna opens one. Inquiry creation is triggered by the customer taking action on the Klarna app, either by filing a complaint or requesting to return the purchase. When a customer files an inquiry, Klarna pauses any outstanding repayments from the customer until the dispute is resolved.
Almost all Klarna disputes begin as inquiry disputes, which have a 21 calendar day timeframe before they are escalated. Among the exceptions documented by Klarna are disputes raised because of fraudulent transactions, which escalate immediately. Klarna doesn’t accept evidence during this stage.
The intent of an inquiry is to give you early notice that the customer has an issue with the order so that you can proactively address the customer’s concern and potentially avoid chargeback disputes. During this stage, you can perform one of the following actions:
- Contact your customer to understand the reason for raising the dispute, and try to mutually find a resolution before the inquiry escalates to a chargeback. Customers have the ability to withdraw their inquiry using the Klarna app.
- Accept the dispute by issuing a refund of the full disputed amount. Refunding during the inquiry dispute period avoids a dispute fee.
- Allow the dispute to escalate. If you ignore the inquiry or are unable to resolve the issue, it will automatically escalate to a chargeback. At this point you can submit evidence to challenge the dispute.
Responding to return inquiries
Customers paying with Klarna use inquiry disputes as a means to pause repayments while they’re in the process of completing a return for physical goods purchases. Klarna allows customers to file an inquiry and pause repayments before they’ve completed their return, but ask customers to provide proof of return, such as the return tracking ID.
Stripe only notifies you of a return inquiry when a customer has provided the necessary information. However, if you’re using Stripe’s Disputes API, Stripe notifies you as soon as a customer files an inquiry, even if the return hasn’t yet been completed.
If you receive an inquiry dispute with the Return Klarna dispute code, make sure to handle these appropriately:
- Click into the dispute object view in your Stripe Dashboard for details on the return dispute.
- Select Issuer evidence. This provides the return tracking details.
- After you’ve verified that the return is in transit or has already been returned to you, process a refund within the 21-day inquiry period.
Chargeback disputes
If an inquiry dispute remains unresolved after the 21 calendar day timeframe, the dispute automatically escalates to a chargeback dispute. At this point, Stripe withholds the disputed funds and the associated dispute fee from your account for this payment until the dispute is resolved.
During the chargeback dispute stage, you can counter disputes by submitting evidence to Klarna, either in the Dashboard or with the API. You need to submit evidence by the deadline displayed in the Dashboard or evidence_due_by for API users.
If you counter the dispute by submitting evidence, Klarna evaluates your response to decide the outcome.
- If you win the dispute, Stripe releases the withheld funds to your account, including the associated dispute fee.
- If you lose the dispute, Stripe debits the withheld funds, including the associated dispute fee. Klarna then returns the disputed amount to the customer.
Submit evidence for chargeback disputes 
You can only submit evidence after a dispute gets escalated to a chargeback. Use the Dashboard or the API to submit evidence against a chargeback dispute. If you fail to submit evidence, Klarna rules the dispute in favor of the customer.
Businesses have 12 calendar days from chargeback escalation to provide evidence, except for fraud disputes, which have a 5 day timeframe.
It’s only possible to submit a single round of evidence for Klarna disputes. Therefore, it’s important to ensure that all necessary evidence is gathered and submitted during the evidence submission window. Below we provide recommended guidelines based on dispute reasons below. For additional best practices, refer to Klarna’s guide.
Stripe dispute reason | Klarna dispute reason | Suggested evidence fields | Description |
---|---|---|---|
Product not received | Goods not received |
| |
Credit not processed | Return | ||
Duplicate | Already paid |
| |
Fraudulent | Unauthorized |
| |
General |
| ||
Product unacceptable | Faulty goods |
Use the Dashboard or the API to submit evidence against a chargeback dispute. You can’t submit evidence for inquiry disputes.
Guidelines
Follow these guidelines to submit the most relevant evidence for both Dashboard and API disputes.
Create test disputes
You can simulate dispute creation by creating a transaction in a sandbox using the following email addresses and phone numbers in the given Klarna checkout region. A dispute automatically opens on the transaction. You can submit evidence on the dispute, but you can’t simulate the final dispute outcome in a testing environment.
Below, we have specially selected test data for the currently supported customer countries.
Dispute API
A Dispute object contains a dispute type and Klarna dispute reason. These parameters are useful for countering a dispute.
Type
The Status parameter indicates the dispute type. The following table explains the dispute status and the state of the dispute.
Status | Dispute type | Description |
---|---|---|
warning_ | Inquiry | The inquiry is open and the business can issue a refund. |
warning_ | Inquiry | The inquiry is closed. |
needs_ | Chargeback | The chargeback is open and the business can submit evidence. |
under_ | Chargeback | The chargeback is open and the evidence is submitted to Klarna. |
lost | Chargeback | The chargeback is closed and the business lost the dispute. |
won | Chargeback | The Chargeback is closed and the business won the dispute. |
Klarna reason
The Klarna reason is mapped to Stripe dispute reason and displayed in the Dashboard as Network Reason Code
.
The Stripe reason is available in the Dispute object as reason and the Klarna reason is available in payment_method_details.klarna.reason_code. The data is available in the API and webhook.