---
title: "Create a Refund"
method: POST
path: "/api/v2_1/orders/{orderId}/refunds"
tags: ["Refund"]
---

# Create a Refund

`POST /api/v2_1/orders/{orderId}/refunds`

## Request

- Base URL: `https://secure.payu.com`
- URL: `https://secure.payu.com/api/v2_1/orders/{orderId}/refunds`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/payu-com/apis/payu-gpo-europe-rest-api/docs/api/v2_1/orders/:orderId/refunds/post.ts> (a function with typed inputs; its response is checked against the schema)

Create new refund - this request is idempotent, so if exactly same data will be provided, response will return data of already previously created refund instead of creating new refund.

## Path parameters

- `orderId` string, required

## Headers

- `Content-Type` string, required
- `Authorization` string, required

## Request body

- object
  - `refund` object, required: Contains detailed information about a refund.
    - `description` string, required: Refund description.
    - `amount` string: Amount of the refund. If this is left blank, all funds will be returned to the buyer. Specify prices using the **lowest currency unit**. For instance, in the case of PLN (Polish Złoty), the lowest currency unit is the penny, which equals 1/100 PLN. Therefore, if the price is 1000 in the lowest currency unit, it would be equivalent to 10 PLN. However, HUF (Hungarian Forint) is an exception to this rule. For HUF, you should multiply the amount by 100.
    - `extRefundId` string: External refund ID.
    - `currencyCode` string: Currency code compliant with ISO 4217.
    - `bankDescription` string: Bank operation description.
    - `type` 'REFUND_PAYMENT_STANDARD' | 'FAST': Specifies the method by which the refund will be processed:<ul> <li><b>REFUND_PAYMENT_STANDARD</b> – The standard refund procedure.</li> <li><b>FAST</b> – An expedited refund process that may incur higher fees. <b>Available only to merchants operating through PayU GPO Romania</b>.</li> </ul>

## Response `200`

- object
  - `orderId` string: ID of refunded order.
  - `refund` object: Refund details.
    - `refundId` string: Refund identifier.
    - `description` string: Refund description
    - `amount` string: Amount of the refund. If this is left blank, all funds will be returned to the buyer.
    - `extRefundId` string: External refund ID.
    - `currencyCode` string: Currency code compliant with ISO 4217.
    - `bankDescription` string: Bank operation description.
    - `creationDateTime` string: Date of refund creation.
    - `status` 'PENDING' | 'CANCELED' | 'FINALIZED': Refund status code.
    - `statusDatetime` string: Timestamp of the status.
  - `status` object
    - `statusCode` string: Status of the refund.
    - `statusDesc` string: Description og given status.

## Other responses

- `400`
- `401`

---

[API](https://skmtc.dev/payu-com/apis/payu-gpo-europe-rest-api.md) - [All operations](https://skmtc.dev/payu-com/apis/payu-gpo-europe-rest-api/llms.txt) - [OpenAPI document](https://skmtc.dev/payu-com/apis/payu-gpo-europe-rest-api/revisions/185e74d5e007?raw)
