> ## 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.

# Metody klienta

> Přehled veřejných metod GoPayClient a HTTP endpointů.

# Metody klienta

<Note>
  Stručná **mapa** z metod SDK na HTTP endpointy. Typy požadavků, odpovědí a enumy viz [Typy a enumy](/cs/api-reference/types-and-enums).
</Note>

Všechny metody níže jsou na `GoPayClient` z `createGoPayClient(...)`.

```ts theme={null}
import { createGoPayClient } from 'gopay-sdk';
```

## Platby

### `createPayment(payment)`

* **Endpoint:** `POST /payments/payment`
* **Návrat:** `Promise<PaymentResponse>`
* **Chování:** výchozí hodnoty pro:
  * `target` -> `{ type: 'ACCOUNT', goid: <nakonfigurované goid> }`
  * `lang` -> jazyk klienta

### `getPayment(paymentId)`

* **Endpoint:** `GET /payments/payment/{id}`
* **Návrat:** `Promise<PaymentResponse>`

### `refundPayment(paymentId, { amount })`

* **Endpoint:** `POST /payments/payment/{id}/refund`
* **Content-Type:** `application/x-www-form-urlencoded`
* **Návrat:** `Promise<PaymentOperationResponse>`

### `getPaymentRefunds(paymentId)`

* **Endpoint:** `GET /payments/payment/{id}/refunds`
* **Návrat:** `Promise<RefundHistoryItem[]>`

## Recurrence a preautorizace

### `createRecurrence(paymentId, request)`

* **Endpoint:** `POST /payments/payment/{id}/create-recurrence`
* **Návrat:** `Promise<PaymentResponse>`

### `voidRecurrence(paymentId)`

* **Endpoint:** `POST /payments/payment/{id}/void-recurrence`
* **Návrat:** `Promise<PaymentOperationResponse>`

### `captureAuthorization(paymentId)`

* **Endpoint:** `POST /payments/payment/{id}/capture`
* **Návrat:** `Promise<PaymentOperationResponse>`

### `captureAuthorizationPartial(paymentId, request)`

* **Endpoint:** `POST /payments/payment/{id}/capture`
* **Návrat:** `Promise<PaymentOperationResponse>`

### `voidAuthorization(paymentId)`

* **Endpoint:** `POST /payments/payment/{id}/void-authorization`
* **Návrat:** `Promise<PaymentOperationResponse>`

## Karty

### `getCardDetails(cardId)`

* **Endpoint:** `GET /payments/cards/{card_id}`
* **Návrat:** `Promise<CardDetailsResponse>`

### `deleteCard(cardId)`

* **Endpoint:** `DELETE /payments/cards/{card_id}`
* **Návrat:** `Promise<void>`
* **Očekávaný stav:** `204 No Content`

## Platební metody

### `getPaymentInstruments(goid, currency)`

* **Endpoint:** `GET /eshops/eshop/{goid}/payment-instruments/{currency}`
* **Návrat:** `Promise<PaymentInstrumentsResponse>`

### `getPaymentInstrumentsAll(goid)`

* **Endpoint:** `GET /eshops/eshop/{goid}/payment-instruments`
* **Návrat:** `Promise<PaymentInstrumentsAllResponse>`

## Výpisy z účtu

### `getAccountStatement(request)`

* **Endpoint:** `POST /accounts/account-statement`
* **Návrat:** `Promise<AccountStatementResponse>`
* **Tvar odpovědi:**

```ts theme={null}
type AccountStatementResponse = {
  data: ArrayBuffer;
  contentType: string | null;
  contentDisposition: string | null;
  toText(encoding?: string): string;
};
```

## Pomocné

### `getEmbedJsUrl()`

* Vrací URL embed skriptu pro nakonfigurovanou bránu:
  * sandbox -> `https://gw.sandbox.gopay.com/gp-gw/js/embed.js`
  * produkce -> `https://gate.gopay.cz/gp-gw/js/embed.js`
