# ЮKassa: GET /deals — Список сделок

Запрос позволяет получить список сделок, отфильтрованный по заданным критериям.

Документация: https://yookassa.ru/developers/api#get_deals_list

| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
| `created_at.gte` | query | string | нет | Фильтр по времени создания: время должно быть больше указанного значения или равно ему («от такого-то момента включительно»). Указывается в формате ISO 8601. Пример: created_at.gte=2018-07-18T10:51:18.139Z |
| `created_at.gt` | query | string | нет | Фильтр по времени создания: время должно быть больше указанного значения («от такого-то момента не включительно»). Указывается в формате ISO 8601. Пример: created_at.gt=2018-07-18T10:51:18.139Z |
| `created_at.lte` | query | string | нет | Фильтр по времени создания: время должно быть меньше указанного значения или равно ему («до такого-то момента включительно»). Указывается в формате ISO 8601. Пример: created_at.lte=2018-07-18T10:51:18.139Z |
| `created_at.lt` | query | string | нет | Фильтр по времени создания: время должно быть меньше указанного значения («до такого-то момента не включительно»). Указывается в формате ISO 8601. Пример: created_at.lt=2018-07-18T10:51:18.139Z |
| `expires_at.gte` | query | string | нет | Фильтр по времени автоматического закрытия сделки: время должно быть больше указанного значения или равно ему («от такого-то момента включительно»). Указывается в формате ISO 8601. Пример: expires_at.gte=2018-07-18T10:51:18.139Z |
| `expires_at.gt` | query | string | нет | Фильтр по времени автоматического закрытия сделки: время должно быть больше указанного значения («от такого-то момента не включительно»). Указывается в формате ISO 8601. Пример: expires_at.gt=2018-07-18T10:51:18.139Z |
| `expires_at.lte` | query | string | нет | Фильтр по времени автоматического закрытия сделки: время должно быть меньше указанного значения или равно ему («до такого-то момента включительно»). Указывается в формате ISO 8601. Пример: expires_at.lte=2018-07-18T10:51:18.139Z |
| `expires_at.lt` | query | string | нет | Фильтр по времени автоматического закрытия сделки: время должно быть меньше указанного значения («до такого-то момента не включительно»). Указывается в формате ISO 8601. Пример: expires_at.lt=2018-07-18T10:51:18.139Z |
| `status` | query | string (opened, closed) | нет | Фильтр по статусу сделки. Пример: status=closed |
| `full_text_search` | query | string | нет | Фильтр по описанию сделки в параметре description (например, по идентификатору сделки на стороне вашего маркетплейса в ЮKassa либо по идентификатору покупателя или продавца). От 4 до 128 символов. Пример: 123554642-2432FF344R |
| `limit` | query | integer | нет | Размер выдачи результатов запроса — количество объектов, передаваемых в ответе. Возможные значения: от 1 до 100. Пример: limit=50. Значение по умолчанию: 10 |
| `cursor` | query | string | нет | Указатель на следующий фрагмент списка. Пример: cursor=37a5c87d-3984-51e8-a7f3-8de646d39ec15. В качестве cursor необходимо использовать значение параметра next_cursor, полученное в ответе на предыдущий запрос. Используется, если размер списка больше размера выдачи (limit) и конец выдачи не достигнут. |

Пример ответа:

```json
{
  "type": "list",
  "items": [
    {
      "type": "safe_deal",
      "id": "dl-d68d2fe4-2abb-47e5-8112-32e28f87fb52",
      "balance": {
        "value": "1000.00",
        "currency": "RUB"
      },
      "payout_balance": {
        "value": "1000.00",
        "currency": "RUB"
      },
      "status": "closed",
      "created_at": "2020-07-03T11:52:31.827Z",
      "expires_at": "2021-01-03T18:31:22.532Z",
      "test": false,
      "fee_moment": "payment_succeeded"
    }
  ]
}
```

## Базовые URL

- Основной: `https://api.yookassa.ru/v3`

## Авторизация

Тип: Basic Auth

HTTP Basic Auth: имя пользователя — идентификатор магазина (shopId, раздел Настройки — Магазин) или шлюза для выплат (agentId, раздел Настройки выплат), пароль — секретный ключ (раздел Интеграция — Ключи API). Для тестового магазина ключ выпускается автоматически. Участники партнерской программы используют OAuth 2.0 и передают Bearer-токен. Секретный ключ и OAuth-токен нельзя публиковать.

```
curl https://api.yookassa.ru/v3/payments/{payment_id} \
  -u <Идентификатор магазина>:<Секретный ключ>
```

## Нюансы

- capture по умолчанию false: без capture: true платеж останется в статусе waiting_for_capture и в момент expires_at отменится автоматически, деньги вернутся покупателю.
- Для POST и DELETE обязателен заголовок Idempotence-Key — до 64 символов, рекомендуется UUID. Повтор с тем же ключом в течение 24 часов вернет результат первого запроса; для новой операции нужен новый ключ.
- HTTP 500 не значит, что операция не прошла: результат неизвестен. Повтори запрос с теми же данными и тем же ключом идемпотентности или запроси объект через GET.
- Возврат покупателя на return_url не означает успешную оплату — статус проверяй на сервере или по HTTP-уведомлению.
- Сумма — строка с точкой и двумя знаками: "1000.00", вместе с кодом валюты.
- Методы /webhooks работают только с OAuth-токеном в партнерской программе. Обычный магазин настраивает уведомления в личном кабинете.
- Вернуть платеж можно в течение трех лет с момента создания. Комиссия ЮKassa за платеж не возвращается.
- Для Чеков от ЮKassa частичная предоплата, аванс и кредит не поддерживаются.

---

Если этого недостаточно — официальная документация: https://yookassa.ru/developers/api#get_deals_list
Вся интеграция одним документом: https://mcp-everything.ru/integrations/yookassa.md
