---
title: "Refund order"
method: POST
path: "/orders/{order_id}/refunds"
tags: ["Refunds"]
---

# Refund order

`POST /orders/{order_id}/refunds`

Process a [full or partial refund](https://docs.multisafepay.com/docs/refund-payments/) for an order.

Refunding creates a new order linked to the original order. By default, it has the same `order_id` as the original order. To override this, include in the request `refund_order_id`.

## Path parameters

- `order_id` string, required

## Request body

- union
  - object
    - `currency` string, ISO-4217 currency code, required — The currency to process the refund in. This must be the same as the original transaction. **Format:** [ISO-4217 currency code](https://en.wikipedia.org/wiki/ISO_4217).
    - `amount` integer — The refund amount in the currency's smallest unit. - Decimal currencies: Value for 10 EUR = 1000 (1000 cents) - Zero-decimal currencies: Value for 10 JPY = 10 **⚠️Note:** A full refund will be processed if the `amount` parameter is omitted, left empty, or set to `0`.
    - `description` string — A description of the customer's order. Appears on payment pages and customer bank statements (if supported by the bank).
    - `refund_order_id` string — Set a unique identifier for the refund order ID. If not included in the request, the refund order ID is the same as the original order ID.
    - `var1` string — Variable for storing additional data.
    - `var2` Var1 — unresolved $ref
    - `var3` string — Variable for storing additional data, including [split payments](https://docs.multisafepay.com/docs/split-payments/) metadata.
  - object
    - `checkout_data` object, required — Contains: - All of the items and quantities of the original order's array of `item` objects - Duplicate `item` objects of the items to be refunded (with negative `unit_price`) To retrieve the original order's array of `item` objects, make a `GET /orders/{order_id}` request.
      - `items` object[]
        - `name` string — The name of the product or service.
        - `description` string — A description of the product or service.
        - `unit_price` number, float — The unit price (in decimals) of the item, excluding VAT. The currency of the shopping cart is set at order level using `currency`. **Example:** The value for a €90 backpack is `90`.
        - `quantity` integer — The number of units of the item.
        - `merchant_item_id` string — Your unique (client-defined) identifier for the product or service. **⚠️Note:** To avoid validation errors, we recommend using only these ASCII characters in your item ID: alphanumeric, `-`, `_`, `.`, `:`, `/`. If this item specifies the shipping costs, set to `msp-shipping`.
        - `tax_table_selector` string — Your client-defined identifier for a tax table, specified as `checkout_options.tax_tables.alternate.name`.
        - `weight` object — The weight per product.
          - `unit` 'KG' — The unit of weight.
          - `value` number — The weight of the item corresponding to the unit. For a 2 kilogram product: - Set `value` to `2`. - Set `unit` to `KG`.

## Response `200`

Request successful

- union
  - object — Refund (BNPL) order
    - `success` Success — unresolved $ref
    - `data` object — Information about the refund.
      - `transaction_id` Schema — unresolved $ref
      - `refund_id` integer — MultiSafepay's unique identifier for the refund transaction.
  - object — Refund partial shipment
    - `success` Success — unresolved $ref
    - `data` object — Information about the refund. - **Full shipment**: A client-defined ID to link order entities in your system to an order. - **Partial shipment**: The unique `order_id` for each separate shipment. Also used for full/partial refunds of specific shipments.
      - `order_id` OrderId — unresolved $ref
      - `transaction_id` Schema — unresolved $ref

## Other responses

- `404` — Error

---

[API](https://skmtc.dev/multisafepay/apis/multisafepay-banking-order-api.md) · [All operations](https://skmtc.dev/multisafepay/apis/multisafepay-banking-order-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/multisafepay/multisafepay-banking-order-api/revisions/ce9612e4a307/schema)
