---
title: "Batch Refund API"
method: POST
path: "/refund/batch"
---

# Batch Refund API

`POST /refund/batch`

Initiates a batch of refunds in a single request. Each refund item is processed independently — some may succeed while others are rejected within the same batch.

## Request body

- object
  - `refund_batch_id` string, required — Unique batch identifier from the merchant. Must not have been used before for this merchant.
  - `refunds` object[], required — List of refund items in the batch.
    - `payment_id` string, required — Open PG transaction ID of the payment to refund.
    - `amount` number, float, required — Refund amount (supports decimals).
    - `merchant_reference_id` string, required — Unique reference ID per refund item from the merchant.

## Response `200`

200

- object
  - `batch_status` string
  - `refund_batch_id` string
  - `refunds` object[]
    - `refund_id` string
    - `amount` integer
    - `refund_status` string
    - `message` string
    - `merchant_reference_id` string

## Other responses

- `400` — 400

---

[API](https://skmtc.net/zwitch/apis/2.md) · [All operations](https://skmtc.net/zwitch/apis/2/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/zwitch/2/versions/4586157daf87/schema)
