---
title: "Создание сделки"
method: POST
path: "/deals"
tags: ["Сделки"]
---

# Создание сделки

`POST /deals`

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

## Headers

- `Idempotence-Key` string, required

## Request body

- SafeDealRequest — Данные для создания сделки.
  - `type` 'safe_deal', required — Тип сделки. Фиксированное значение: safe_deal — Безопасная сделка.
  - `fee_moment` 'payment_succeeded' | 'deal_closed', required — Момент перечисления вам вознаграждения платформы. Возможные значения: payment_succeeded — после успешной оплаты; deal_closed — при закрытии сделки после успешной выплаты.
  - `metadata` Metadata — Любые дополнительные данные, которые нужны вам для работы (например, ваш внутренний идентификатор заказа). Передаются в виде набора пар «ключ-значение» и возвращаются в ответе от ЮKassa. Ограничения: максимум 16 ключей, имя ключа не больше 32 символов, значение ключа не больше 512 символов, тип данных — строка в формате UTF-8.
  - `description` string — Описание сделки (не более 128 символов). Используется для фильтрации при получении списка сделок: https://yookassa.ru/developers/api#get_deals_list.

## Response `200`

Запрос принят в обработку и успешно обработан.

- SafeDeal — Объект сделки (Deal) — актуальная информация о сделке.
  - `type` 'safe_deal', required — Тип сделки. Фиксированное значение: safe_deal — Безопасная сделка.
  - `id` string, required — Идентификатор сделки.
  - `fee_moment` 'payment_succeeded' | 'deal_closed', required — Момент перечисления вам вознаграждения платформы. Возможные значения: payment_succeeded — после успешной оплаты; deal_closed — при закрытии сделки после успешной выплаты.
  - `description` string — Описание сделки (не более 128 символов). Используется для фильтрации при получении списка сделок: https://yookassa.ru/developers/api#get_deals_list.
  - `balance` object, required — Баланс сделки.
    - `value` string, required — Сумма в выбранной валюте. Всегда дробное значение. Разделитель дробной части — точка, разделитель тысяч отсутствует. Количество знаков после точки зависит от выбранной валюты. Пример: 1000.00.
    - `currency` 'RUB' | 'EUR' | 'USD' | 'KZT' | 'BYN' | 'UAH' | 'UZS' | 'TRY' | 'INR' | 'MDL' | 'AZN' | 'AMD', required — Трехбуквенный код валюты в формате ISO-4217: https://www.iso.org/iso-4217-currency-codes.html. Пример: RUB.
  - `payout_balance` object, required — Сумма вознаграждения продавца.
    - `value` string, required — Сумма в выбранной валюте. Всегда дробное значение. Разделитель дробной части — точка, разделитель тысяч отсутствует. Количество знаков после точки зависит от выбранной валюты. Пример: 1000.00.
    - `currency` 'RUB' | 'EUR' | 'USD' | 'KZT' | 'BYN' | 'UAH' | 'UZS' | 'TRY' | 'INR' | 'MDL' | 'AZN' | 'AMD', required — Трехбуквенный код валюты в формате ISO-4217: https://www.iso.org/iso-4217-currency-codes.html. Пример: RUB.
  - `status` 'opened' | 'closed', required — Статус сделки. Возможные значения: opened — сделка открыта; можно выполнять платежи, возвраты и выплаты в составе сделки; closed — сделка закрыта — вознаграждение перечислено продавцу и платформе или оплата возвращена покупателю; нельзя выполнять платежи, возвраты и выплаты в составе сделки.
  - `created_at` string, date-time, required — Время создания сделки. Указывается по UTC: https://ru.wikipedia.org/wiki/%D0%92%D1%81%D0%B5%D0%BC%D0%B8%D1%80%D0%BD%D0%BE%D0%B5_%D0%BA%D0%BE%D0%BE%D1%80%D0%B4%D0%B8%D0%BD%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D0%BE%D0%B5_%D0%B2%D1%80%D0%B5%D0%BC%D1%8F и передается в формате ISO 8601: https://en.wikipedia.org/wiki/ISO_8601. Пример: 2017-11-03T11:52:31.827Z
  - `expires_at` string, date-time, required — Время автоматического закрытия сделки. Если в указанное время сделка всё еще в статусе opened, ЮKassa вернет деньги покупателю и закроет сделку. По умолчанию время жизни сделки составляет 90 дней. Время указывается по UTC: https://ru.wikipedia.org/wiki/%D0%92%D1%81%D0%B5%D0%BC%D0%B8%D1%80%D0%BD%D0%BE%D0%B5_%D0%BA%D0%BE%D0%BE%D1%80%D0%B4%D0%B8%D0%BD%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D0%BE%D0%B5_%D0%B2%D1%80%D0%B5%D0%BC%D1%8F и передается в формате ISO 8601: https://en.wikipedia.org/wiki/ISO_8601. Пример: 2017-11-03T11:52:31.827Z
  - `metadata` Metadata — Любые дополнительные данные, которые нужны вам для работы (например, ваш внутренний идентификатор заказа). Передаются в виде набора пар «ключ-значение» и возвращаются в ответе от ЮKassa. Ограничения: максимум 16 ключей, имя ключа не больше 32 символов, значение ключа не больше 512 символов, тип данных — строка в формате UTF-8.
  - `test` boolean, required — Признак тестовой операции.

## Other responses

- `400` — Запрос не может быть обработан. Причиной может быть неправильный синтаксис запроса, ошибка в обязательных параметрах запроса, их отсутствие или неподдерживаемый метод.
- `401` — В заголовке Authorization указан неверный ключ.
- `403` — Секретный ключ указан верно, но не хватает прав для совершения операции.
- `429` — Слишком много запросов одновременно отправляется в API. Повторите запрос позже.
- `500` — Внутренняя ошибка сервера ЮKassa.

---

[API](https://skmtc.dev/hexlet/apis/api-kassa.md) · [All operations](https://skmtc.dev/hexlet/apis/api-kassa/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/hexlet/api-kassa/revisions/e79983ebb73d/schema)
