> ## Documentation Index
> Fetch the complete documentation index at: https://docs.zabcik.me/llms.txt
> Use this file to discover all available pages before exploring further.

# Refundace

> Vytváření refundací a historie refundací v GoPay SDK.

# Refundace

<Info>
  Refundace se týkají **zaúčtovaných** nebo vyrovnaných plateb. U částečných refundací je `amount` ve stejných **minor jednotkách** jako původní měna.
</Info>

Refundace použijte, když potřebujete vrátit prostředky za již zpracovanou platbu.

## Plná nebo částečná refundace

```ts theme={null}
const result = await client.refundPayment(paymentId, {
  amount: 10000, // částka v minor jednotkách
});

console.log(result.id, result.result);
```

> Pole `amount` je povinné a odesílá se jako `application/x-www-form-urlencoded` podle očekávání GoPay endpointu.

## Historie refundací

```ts theme={null}
const refunds = await client.getPaymentRefunds(paymentId);

for (const refund of refunds) {
  console.log(refund.id, refund.state, refund.amount, refund.currency);
}
```

`RefundHistoryItem` obsahuje mimo jiné:

* `id`
* `state`
* `amount`
* `currency`
* `date_requested`
* `date_last_change?`

## Doporučení

* Ukládejte metadata refundací do databáze (ID refundace, částka, čas požadavku).
* Částky držte v minor jednotkách pro konzistenci.
* Navrhujte idempotentní workflow refundací, aby opakování požadavků nevytvářelo duplicity.
