Process refunds efficiently with Klarna by selecting the appropriate refund method, adhering to operational limits, and leveraging webhooks for real-time tracking.
There are two options available for processing refunds for a transaction that support different integration patterns used by partners. Each of these options has specific requirements and recommendations that enable optimal integration to provide the best post-purchase experience for customers.
Klarna supports a maximum of 200 refunds and 500 total operations on any given transaction. Exceeding this restriction will result in a 403 response.
Operation | Requirement | Notes |
---|---|---|
Refund payment capture | Retain the payment_capture_id | This operation simplifies integration for partners that do not have line_items in their integration. Retaining the payment_capture_id and sending it helps Klarna to allocate refund amounts to correct captures. |
Refund payment transaction | Include line_items in the request | This operation requires including line_items in the request and is necessary for Klarna to be able to do proper refund allocation. |
The effects of refunds on all involved parties are illustrated in the diagram below:
This operation is used to initiate the refund process when customers return items they've purchased. Refunds in this case are allocated to the correct captures through the payment_capture_id
that is sent to initiate the operation.
Consult the API referenceAPI for a complete description of the request body parameters.
In this scenario, refunds are allocated to the correct captures through the payment_transaction_id
and the line_items
that are provided when initiating the operation. For transactions involving multiple captures, it is essential that Klarna receives detailed line_items
information to ensure that each refund is matched to the corresponding capture. Without these details, Klarna cannot reliably determine how the refund should be distributed, which increases the risk of misallocation.
This issue becomes particularly critical in the context of disputes: if line_items
are missing or incomplete, the refund may be incorrectly applied, preventing Klarna from resolving the dispute in a timely and accurate manner. By consistently including line_items
, Partners not only enable proper allocation of refunds across captures, but also safeguard the dispute resolution process, ensuring fairness and reducing potential delays or financial mismatches.
Consult the API referenceAPI for a complete description of the request body parameters.
Every successful payment refund operation will trigger a payment transaction refund webhook to which you can subscribe to:
Event name | When |
---|---|
| To track successful refund initiations ensuring debugging any discrepancies. |