openapi: "3.0.2"
info:
  version: "1.0.0"
  title: "Справочник API ЮKassa"
  description: "В справочнике API вы найдете описание всех методов API ЮKassa. С помощью этого API вы можете принимать платежи в интернете различными способами и делать выплаты. Подробнее об интеграции по API ЮKassa: Инструкции по интеграции: https://yookassa.ru/developers — описание платежных решений, основанных на API ЮKassa, и ссылки на подробные инструкции.; Формат взаимодействия: https://yookassa.ru/developers/using-api/interaction-format — описание формата запросов, требования к аутентификации запросов и ключу идемпотентнсти, особенности обработки ответов.; Спецификация OpenAPI: https://yookassa.ru/developers/using-api/openapi-specification — информация о спецификации API ЮKassa, ссылка для скачивания спецификации в формате YAML.; Готовые SDK: https://yookassa.ru/developers/using-api/using-sdks — ссылки на готовые решения для PHP, Python и других языков программирования.; Входящие уведомления: https://yookassa.ru/developers/using-api/webhooks — описание работы с входящими уведомлениями (webhook, callback) для отслеживания статусов объектов. История изменений API ЮKassa: https://yookassa.ru/developers/using-api/changelog"
servers:
- url: "https://api.yookassa.ru/v3"
security:
- BasicAuth: []
- OAuth2: []
tags:
- name: "Платежи"
  description: "API позволяет создавать, подтверждать, отменять платежи, а также получать информацию о них. Как провести платеж: https://yookassa.ru/developers/payment-acceptance/getting-started/quick-start"
- name: "Способы оплаты"
  description: "Только для тех, кто использует привязку на нулевую сумму: https://yookassa.ru/developers/payment-acceptance/scenario-extensions/recurring-payments/save-payment-method/save-without-payment для сохранения банковских карт. Способ оплаты — данные платежного средства пользователя. Например, данные банковской карты. С помощью API вы можете создать способ оплаты — сохранить платежные данные в ЮKassa с привязкой к вашему магазину. Также по API вы можете получить актуальную информацию о созданном способе оплаты."
- name: "Счета"
  description: "Счет — это страница ЮKassa, на которой пользователь может ознакомиться с деталями заказа и внести оплату. При переходе к оплате ЮKassa автоматически создаст платеж: https://yookassa.ru/developers/api#payment_object и перенаправит пользователя на страницу с платежной формой. Счет считается оплаченным, если по нему есть один успешный платеж. С помощью API вы можете создать счет и получить о нём актуальную информацию. Подробнее о выставлении счетов по API: https://yookassa.ru/developers/payment-acceptance/scenario-extensions/invoices/basics"
- name: "Возвраты"
  description: "С помощью API можно возвращать платежи — полностью или частично. Порядок возврата зависит от способа оплаты (payment_method) исходного платежа. При оплате банковской картой деньги возвращаются на карту, которая была использована для проведения платежа. Как проводить возвраты: https://yookassa.ru/developers/payment-acceptance/after-the-payment/refunds Часть способов оплаты (например, наличные) не поддерживают возвраты. Какие платежи можно вернуть: https://yookassa.ru/developers/payment-acceptance/getting-started/payment-methods#all"
- name: "Чеки"
  description: "Для тех, кто использует решение ЮKassa для 54-ФЗ: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/basics С помощью API можно получать информацию о чеках, для которых вы отправили данные через ЮKassa."
- name: "Выплаты"
  description: "Выплата — это сумма денег, которую вы переводите физическому лицу или самозанятому. С помощью API вы можете создать выплату и получить о ней актуальную информацию. Выплаты используются в следующих платежных решениях ЮKassa: Выплаты: https://yookassa.ru/developers/payouts/overview — вы как компания переводите деньги физическим лицам и самозанятым (например, выплачиваете кэшбек пользователям).; Безопасная сделка: https://yookassa.ru/developers/solutions-for-platforms/safe-deal/basics — ваша платформа в рамках созданной сделки переводит оплату от одного физического лица другому."
- name: "Самозанятые"
  description: "Только для тех, кто делает обычные выплаты, не в рамках Безопасной сделки. Самозанятые — это люди, которые не имеют работодателя и наемных работников и получают доход, оказывая услуги или продавая товары собственного производства. При выплатах самозанятым каждая выплата будет считаться доходом самозанятого, и ЮKassa будет автоматически регистрировать ее в сервисе Мой налог: https://lknpd.nalog.ru/. С помощью API вы можете создать самозанятого в ЮKassa — сохранить в ЮKassa данные о самозанятом и запросить права на регистрацию чеков. Также по API вы можете получить актуальную информацию о самозанятом. Информация о самозанятом нужна для проведения выплат самозанятым. Как делать выплаты самозанятым: https://yookassa.ru/developers/payouts/scenario-extensions/self-employed"
- name: "Участники СБП"
  description: "Только для тех, кто делает обычные выплаты, не в рамках Безопасной сделки. Участники СБП — это банки и платежные сервисы, подключенные к СБП (Система быстрых платежей ЦБ РФ). С помощью API ЮKassa вы можете получить актуальный список всех участников СБП. Информация об участниках СБП нужна для проведения выплат через СБП. Как делать выплаты через СБП: https://yookassa.ru/developers/payouts/making-payouts/sbp"
- name: "Персональные данные"
  description: "Только для тех, кто делает обычные выплаты, не в рамках Безопасной сделки. Персональные данные пользователя — это фамилия, имя, отчество пользователя и другие данные о нём. С помощью API вы можете создать персональные данные в ЮKassa (сохранить данные о пользователе) и получить актуальную информацию о статусе персональных данных. Персональные данные пользователя нужны в этих сценариях: выплаты с проверкой получателя: https://yookassa.ru/developers/payouts/scenario-extensions/recipient-check (только для выплат через СБП); выплаты с передачей данных получателя для выписок из реестра: https://yookassa.ru/developers/payouts/scenario-extensions/recipient-data-send."
- name: "Сделки"
  description: "Только для тех, кто использует Безопасную сделку: https://yookassa.ru/developers/solutions-for-platforms/safe-deal/basics. Безопасная сделка — это решение ЮKassa, с помощью которого можно принять оплату от одного участника сделки и перевести ее другому участнику в момент выполнения условий сделки. С помощью API вы можете создать сделку и получить о ней актуальную информацию."
- name: "Webhooks"
  description: "Аутентификация только по OAuth-токену. Доступно в рамках API для партнеров: https://yookassa.ru/developers/solutions-for-platforms/partners-api/basics Webhook — это механизм автоматического оповещения вашей системы о событиях, которые происходят с созданными объектами. Например, ЮKassa может сообщить, когда объект платежа: https://yookassa.ru/developers/api#payment_object, созданный в вашем приложении, перейдет в статус waiting_for_capture. С помощью API вы можете настроить webhook (создать, удалить, просмотреть список созданных) для переданного OAuth-токена. Подробнее об уведомлениях API ЮKassa: https://yookassa.ru/developers/using-api/webhooks"
- name: "Настройки"
  description: "Только для тех, кто использует Сплитование платежей, Партнерскую программу или Выплаты. В ЮKassa у каждого магазина и шлюза есть определенные настройки, которые влияют на интеграцию и проведение платежей и выплат. Настройки доступны в личном кабинете: https://yookassa.ru/my/, но в некоторых платежных решениях ЮKassa важно получать настройки по API. Настройки необходимо узнавать по API в следующих платежных решениях ЮKassa: Сплитование платежей: https://yookassa.ru/developers/solutions-for-platforms/split-payments/basics — вы можете узнать статус магазина продавца, подключенного к вашей площадке.; Партнерская программа: https://yookassa.ru/developers/solutions-for-platforms/partners-api/basics — вы можете получить справочную информацию о магазине, от имени которого вы выполняете операции, например можете узнать, нужно ли передавать данные для отправки чека.; Выплаты: https://yookassa.ru/developers/payouts/overview — вы можете узнать баланс выплат вашего шлюза."
paths:
  /payments:
    post:
      summary: "Создание платежа"
      description: "Чтобы принять оплату, необходимо создать объект платежа: https://yookassa.ru/developers/api#payment_object — Payment. Он содержит всю необходимую информацию для проведения оплаты (сумму, валюту и статус). У платежа линейный жизненный цикл, он последовательно переходит из статуса в статус."
      tags:
      - "Платежи"
      parameters:
      - $ref: "#/components/parameters/IdempotenceKey"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: "object"
              title: "CreatePaymentRequest"
              properties:
                amount:
                  allOf:
                  - $ref: "#/components/schemas/MonetaryAmount"
                  - description: "Сумма платежа. Иногда партнеры ЮKassa берут с пользователя дополнительную комиссию, которая не входит в эту сумму. Сумма указывается с кодом валюты. Если вы разделяете потоки платежей, валюта платежа должна соответствовать валюте субаккаунта (recipient.gateway_id), если не разделяете — валюте аккаунта shopId в личном кабинете)."
                description:
                  allOf:
                  - $ref: "#/components/schemas/Description"
                  - description: "Описание транзакции (не более 128 символов), которое вы увидите в личном кабинете ЮKassa, а пользователь — при оплате. Например: «Оплата заказа № 72 для user@yoomoney.ru»."
                receipt:
                  $ref: "#/components/schemas/ReceiptData"
                recipient:
                  $ref: "#/components/schemas/Recipient"
                payment_token:
                  $ref: "#/components/schemas/PaymentToken"
                payment_method_id:
                  $ref: "#/components/schemas/PaymentMethodId"
                payment_method_data:
                  oneOf:
                  - $ref: "#/components/schemas/PaymentMethodDataBankCard"
                  - $ref: "#/components/schemas/PaymentMethodDataCash"
                  - $ref: "#/components/schemas/PaymentMethodDataSberbank"
                  - $ref: "#/components/schemas/PaymentMethodDataTinkoffBank"
                  - $ref: "#/components/schemas/PaymentMethodDataYooMoney"
                  - $ref: "#/components/schemas/PaymentMethodDataMobileBalance"
                  - $ref: "#/components/schemas/PaymentMethodDataB2bSberbank"
                  - $ref: "#/components/schemas/PaymentMethodDataSbp"
                  - $ref: "#/components/schemas/PaymentMethodDataSberLoan"
                  - $ref: "#/components/schemas/PaymentMethodDataElectronicCertificate"
                  - $ref: "#/components/schemas/PaymentMethodDataSberBnpl"
                  discriminator:
                    propertyName: "type"
                confirmation:
                  oneOf:
                  - $ref: "#/components/schemas/ConfirmationDataRedirect"
                  - $ref: "#/components/schemas/ConfirmationDataExternal"
                  - $ref: "#/components/schemas/ConfirmationDataQr"
                  - $ref: "#/components/schemas/ConfirmationDataEmbedded"
                  - $ref: "#/components/schemas/ConfirmationDataMobileApplication"
                  discriminator:
                    propertyName: "type"
                save_payment_method:
                  $ref: "#/components/schemas/SavePaymentMethodAttribute"
                capture:
                  $ref: "#/components/schemas/Capture"
                client_ip:
                  $ref: "#/components/schemas/ClientIp"
                metadata:
                  $ref: "#/components/schemas/Metadata"
                airline:
                  allOf:
                  - $ref: "#/components/schemas/Airline"
                  - description: "Объект с данными для продажи авиабилетов. Используется только для платежей банковской картой."
                transfers:
                  description: "Данные о распределении денег — сколько и в какой магазин нужно перевести. Необходимо передавать, если вы используете Сплитование платежей: https://yookassa.ru/developers/solutions-for-platforms/split-payments/basics."
                  type: "array"
                  items:
                    $ref: "#/components/schemas/TransferDataPayment"
                deal:
                  allOf:
                  - $ref: "#/components/schemas/PaymentDealInfo"
                  - description: "Данные о сделке, в составе которой проходит платеж. Необходимо передавать, если вы проводите Безопасную сделку: https://yookassa.ru/developers/solutions-for-platforms/safe-deal/basics."
                merchant_customer_id:
                  allOf:
                  - $ref: "#/components/schemas/MerchantCustomerId"
                  - description: "Идентификатор покупателя в вашей системе, например электронная почта или номер телефона. Не более 200 символов. Присутствует, если вы хотите запомнить банковскую карту и отобразить ее при повторном платеже в виджете ЮKassa: https://yookassa.ru/developers/payment-acceptance/integration-scenarios/widget/basics."
                payment_order:
                  oneOf:
                  - $ref: "#/components/schemas/PaymentOrderDataUtilities"
                  discriminator:
                    propertyName: "type"
                receiver:
                  oneOf:
                  - $ref: "#/components/schemas/ReceiverMobileBalance"
                  - $ref: "#/components/schemas/ReceiverDigitalWallet"
                  - $ref: "#/components/schemas/ReceiverBankAccount"
                  discriminator:
                    propertyName: "type"
              required:
              - "amount"
      responses:
        "200":
          description: "Запрос успешно обработан"
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Payment"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "500":
          $ref: "#/components/responses/InternalServerError"
    get:
      summary: "Список платежей"
      description: "Запрос позволяет получить список платежей, отфильтрованный по заданным критериям. Подробнее о работе со списками: https://yookassa.ru/developers/using-api/lists"
      tags:
      - "Платежи"
      parameters:
      - $ref: "#/components/parameters/CreatedGte"
      - $ref: "#/components/parameters/CreatedGt"
      - $ref: "#/components/parameters/CreatedLte"
      - $ref: "#/components/parameters/CreatedLt"
      - in: "query"
        name: "captured_at.gte"
        description: "Фильтр по времени подтверждения платежей: время должно быть больше указанного значения или равно ему («с такого-то момента включительно»). Указывается в формате ISO 8601: https://en.wikipedia.org/wiki/ISO_8601. Пример: captured_at.gte=2018-07-18T10:51:18.139Z"
        schema:
          type: "string"
          format: "date-time"
      - in: "query"
        name: "captured_at.gt"
        description: "Фильтр по времени подтверждения платежей: время должно быть больше указанного значения («с такого-то момента, не включая его»). Указывается в формате ISO 8601: https://en.wikipedia.org/wiki/ISO_8601. Пример: captured_at.gt=2018-07-18T10:51:18.139Z"
        schema:
          type: "string"
          format: "date-time"
      - in: "query"
        name: "captured_at.lte"
        description: "Фильтр по времени подтверждения платежей: время должно быть меньше указанного значения или равно ему («по такой-то момент включительно»). Указывается в формате ISO 8601: https://en.wikipedia.org/wiki/ISO_8601. Пример: captured_at.lte=2018-07-18T10:51:18.139Z"
        schema:
          type: "string"
          format: "date-time"
      - in: "query"
        name: "captured_at.lt"
        description: "Фильтр по времени подтверждения платежей: время должно быть меньше указанного значения («по такой-то момент, не включая его») Указывается в формате ISO 8601: https://en.wikipedia.org/wiki/ISO_8601. Пример: captured_at.lt=2018-07-18T10:51:18.139Z"
        schema:
          type: "string"
          format: "date-time"
      - in: "query"
        name: "payment_method"
        schema:
          $ref: "#/components/schemas/PaymentMethodType"
        required: false
        description: "Фильтр по коду способа оплаты: https://yookassa.ru/developers/payment-acceptance/getting-started/payment-methods#all. Пример: payment_method=bank_card"
      - in: "query"
        name: "status"
        schema:
          $ref: "#/components/schemas/PaymentStatus"
        required: false
        description: "Фильтр по статусу платежа: https://yookassa.ru/developers/payment-acceptance/getting-started/payment-process#lifecycle. Пример: status=succeeded"
      - $ref: "#/components/parameters/Limit"
      - $ref: "#/components/parameters/NextCursor"
      responses:
        "200":
          description: "Запрос успешно обработан"
          content:
            application/json:
              schema:
                type: "object"
                description: "Список платежей, созданных за последние три года. Платежи отсортированы по времени создания в порядке убывания (от новых к старым). Если результатов больше, чем задано в limit, список будет выводиться фрагментами. В этом случае в ответе на запрос вернется фрагмент списка и параметр next_cursor с указателем на следующий фрагмент."
                title: "PaymentList"
                properties:
                  type:
                    type: "string"
                    description: "Формат выдачи результатов запроса. Возможное значение: list (список)."
                    enum:
                    - "list"
                  items:
                    type: "array"
                    items:
                      $ref: "#/components/schemas/Payment"
                  next_cursor:
                    $ref: "#/components/schemas/NextCursor"
                required:
                - "type"
                - "items"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "500":
          $ref: "#/components/responses/InternalServerError"
  /payments/{payment_id}:
    get:
      summary: "Информация о платеже"
      description: "Запрос позволяет получить информацию о текущем состоянии платежа по его уникальному идентификатору."
      tags:
      - "Платежи"
      parameters:
      - $ref: "#/components/parameters/paymentIdPath"
      responses:
        "200":
          description: "Запрос успешно обработан"
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Payment"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "404":
          $ref: "#/components/responses/NotFound"
        "500":
          $ref: "#/components/responses/InternalServerError"
  /payments/{payment_id}/capture:
    post:
      summary: "Подтверждение платежа"
      description: "Подтверждает вашу готовность принять платеж. После подтверждения платеж перейдет в статус succeeded. Это значит, что вы можете выдать товар или оказать услугу пользователю. Подтвердить можно только платеж в статусе waiting_for_capture и только в течение определенного времени (зависит от способа оплаты). Если вы не подтвердите платеж в отведенное время, он автоматически перейдет в статус canceled, и деньги вернутся пользователю. Подробнее о подтверждении и отмене платежей: https://yookassa.ru/developers/payment-acceptance/getting-started/payment-process#capture-and-cancel"
      tags:
      - "Платежи"
      parameters:
      - $ref: "#/components/parameters/paymentIdPath"
      - $ref: "#/components/parameters/IdempotenceKey"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: "object"
              title: "PaymentCaptureRequest"
              properties:
                amount:
                  allOf:
                  - $ref: "#/components/schemas/MonetaryAmount"
                  - description: "Итоговая сумма, которая спишется с пользователя. Можно указать часть исходной суммы, тогда остаток вернется пользователю. Для этого проверьте, что выбранный способ оплаты поддерживает частичное списание: https://yookassa.ru/developers/payment-acceptance/getting-started/payment-process#capture-partly. Сумма указывается с кодом валюты. Если вы разделяете потоки платежей, валюта платежа должна соответствовать валюте субаккаунта (recipient.gateway_id), если не разделяете — валюте аккаунта shopId в личном кабинете)."
                receipt:
                  $ref: "#/components/schemas/ReceiptData"
                airline:
                  allOf:
                  - $ref: "#/components/schemas/Airline"
                  - description: "Объект с данными для продажи авиабилетов. Используется только для платежей банковской картой."
                transfers:
                  description: "Данные об актуальном распределении денег — сколько и в какой магазин нужно перевести. Необходимо передавать, если вы используете Сплитование платежей: https://yookassa.ru/developers/solutions-for-platforms/split-payments/basics и подтверждаете часть платежа."
                  type: "array"
                  items:
                    $ref: "#/components/schemas/TransferDataCapture"
                deal:
                  type: "object"
                  description: "Данные о сделке, в составе которой проходит платеж. Необходимо передавать, если вы проводите Безопасную сделку: https://yookassa.ru/developers/solutions-for-platforms/safe-deal/basics и подтверждаете часть платежа."
                  title: "CapturePaymentDeal"
                  properties:
                    settlements:
                      $ref: "#/components/schemas/SettlementPaymentArray"
                  required:
                  - "settlements"
      responses:
        "200":
          description: "Запрос успешно обработан"
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Payment"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "500":
          $ref: "#/components/responses/InternalServerError"
  /payments/{payment_id}/cancel:
    post:
      summary: "Отмена платежа"
      description: "Отменяет платеж, находящийся в статусе waiting_for_capture. Отмена платежа значит, что вы не готовы выдать пользователю товар или оказать услугу. Как только вы отменяете платеж, мы начинаем возвращать деньги на счет плательщика. Для платежей банковскими картами, из кошелька ЮMoney или через SberPay отмена происходит мгновенно. Для остальных способов оплаты возврат может занимать до нескольких дней. Подробнее о подтверждении и отмене платежей: https://yookassa.ru/developers/payment-acceptance/getting-started/payment-process#capture-and-cancel"
      parameters:
      - $ref: "#/components/parameters/paymentIdPath"
      - $ref: "#/components/parameters/IdempotenceKey"
      tags:
      - "Платежи"
      responses:
        "200":
          description: "Запрос успешно обработан"
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Payment"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "500":
          $ref: "#/components/responses/InternalServerError"
  /payment_methods:
    post:
      summary: "Создание способа оплаты"
      description: "Используйте этот запрос, чтобы создать в ЮKassa объект способа оплаты: https://yookassa.ru/developers/api#payment_method_object. В запросе необходимо передать код способа оплаты, который вы хотите сохранить, и при необходимости дополнительные параметры, связанные с той функциональностью, которую вы хотите использовать. Идентификатор созданного способа оплаты вы можете использовать при проведении автоплатежей: https://yookassa.ru/developers/payment-acceptance/scenario-extensions/recurring-payments/create-recurring или выплат: https://yookassa.ru/developers/payouts/scenario-extensions/multipurpose-token."
      tags:
      - "Способы оплаты"
      parameters:
      - $ref: "#/components/parameters/IdempotenceKey"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              oneOf:
              - $ref: "#/components/schemas/SavePaymentMethodDataBankCard"
              discriminator:
                propertyName: "type"
      responses:
        "200":
          description: "Запрос успешно обработан"
          content:
            application/json:
              schema:
                oneOf:
                - $ref: "#/components/schemas/SavePaymentMethodBankCard"
                discriminator:
                  propertyName: "type"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "429":
          $ref: "#/components/responses/TooManyRequests"
        "500":
          $ref: "#/components/responses/InternalServerError"
  /payment_methods/{payment_method_id}:
    get:
      summary: "Информация о способе оплаты"
      description: "Используйте этот запрос, чтобы получить информацию о текущем состоянии способа оплаты по его уникальному идентификатору."
      tags:
      - "Способы оплаты"
      parameters:
      - $ref: "#/components/parameters/paymentMethodIdPath"
      responses:
        "200":
          description: "Запрос успешно обработан"
          content:
            application/json:
              schema:
                oneOf:
                - $ref: "#/components/schemas/SavePaymentMethodBankCard"
                discriminator:
                  propertyName: "type"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "404":
          $ref: "#/components/responses/NotFound"
        "429":
          $ref: "#/components/responses/TooManyRequests"
        "500":
          $ref: "#/components/responses/InternalServerError"
  /invoices:
    post:
      summary: "Создание счета"
      description: "Используйте этот запрос, чтобы создать в ЮKassa объект счета: https://yookassa.ru/developers/api#invoice_object. В запросе необходимо передать данные о заказе, которые отобразятся на странице счета, и данные для проведения платежа."
      tags:
      - "Счета"
      security:
      - BasicAuth: []
      parameters:
      - $ref: "#/components/parameters/IdempotenceKey"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: "object"
              title: "CreateInvoiceRequest"
              properties:
                payment_data:
                  $ref: "#/components/schemas/PaymentData"
                cart:
                  $ref: "#/components/schemas/Cart"
                delivery_method_data:
                  oneOf:
                  - $ref: "#/components/schemas/DeliveryMethodDataSelf"
                  discriminator:
                    propertyName: "type"
                expires_at:
                  $ref: "#/components/schemas/InvoiceExpirationDate"
                locale:
                  $ref: "#/components/schemas/Locale"
                description:
                  allOf:
                  - $ref: "#/components/schemas/Description"
                  - description: "Описание выставленного счета (не более 128 символов), которое вы увидите в личном кабинете ЮKassa, а пользователь на странице счета. Например: «Счет на оплату по договору 37»."
                metadata:
                  $ref: "#/components/schemas/Metadata"
              required:
              - "payment_data"
              - "cart"
              - "expires_at"
      responses:
        "200":
          description: "Запрос успешно обработан"
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Invoice"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "500":
          $ref: "#/components/responses/InternalServerError"
  /invoices/{invoice_id}:
    get:
      summary: "Информация о счете"
      description: "Используйте этот запрос, чтобы получить информацию о текущем состоянии счета по его уникальному идентификатору."
      parameters:
      - $ref: "#/components/parameters/invoiceId"
      tags:
      - "Счета"
      security:
      - BasicAuth: []
      responses:
        "200":
          description: "Запрос успешно обработан"
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Invoice"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "500":
          $ref: "#/components/responses/InternalServerError"
  /refunds:
    post:
      summary: "Создание возврата"
      description: "Создает возврат успешного платежа на указанную сумму. Платеж можно вернуть только в течение трех лет с момента его создания: https://yookassa.ru/developers/api#create_payment. Комиссия ЮKassa за проведение платежа не возвращается."
      tags:
      - "Возвраты"
      parameters:
      - $ref: "#/components/parameters/IdempotenceKey"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: "object"
              title: "RefundRequest"
              properties:
                payment_id:
                  $ref: "#/components/schemas/PaymentId"
                amount:
                  allOf:
                  - $ref: "#/components/schemas/MonetaryAmount"
                  - description: "Сумма, которую нужно вернуть пользователю. Сумма указывается с кодом валюты. Если вы разделяете потоки платежей, валюта возврата должна соответствовать валюте субаккаунта, которая была указана для платежа (recipient.gateway_id), если не разделяете — валюте аккаунта shopId в личном кабинете)."
                description:
                  description: "Комментарий к возврату, основание для возврата денег пользователю."
                  type: "string"
                  maxLength: 250
                receipt:
                  $ref: "#/components/schemas/ReceiptData"
                sources:
                  description: "Данные о том, с какого магазина и какую сумму нужно удержать для проведения возврата. Необходимо передавать, если вы используете Сплитование платежей: https://yookassa.ru/developers/solutions-for-platforms/split-payments/basics. Сейчас в этом параметре можно передать данные только одного магазина."
                  type: "array"
                  items:
                    $ref: "#/components/schemas/RefundSourcesData"
                deal:
                  $ref: "#/components/schemas/RefundDealData"
                refund_method_data:
                  oneOf:
                  - $ref: "#/components/schemas/ElectronicCertificateRefundMethodData"
                  discriminator:
                    propertyName: "type"
              required:
              - "payment_id"
              - "amount"
      responses:
        "200":
          description: "Запрос успешно обработан"
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Refund"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "500":
          $ref: "#/components/responses/InternalServerError"
    get:
      summary: "Список возвратов"
      description: "Запрос позволяет получить список возвратов, отфильтрованный по заданным критериям. Подробнее о работе со списками: https://yookassa.ru/developers/using-api/lists"
      tags:
      - "Возвраты"
      parameters:
      - $ref: "#/components/parameters/CreatedGte"
      - $ref: "#/components/parameters/CreatedGt"
      - $ref: "#/components/parameters/CreatedLte"
      - $ref: "#/components/parameters/CreatedLt"
      - in: "query"
        name: "payment_id"
        schema:
          $ref: "#/components/schemas/PaymentId"
        required: false
        description: "Фильтр по идентификатору платежа: https://yookassa.ru/developers/api#payment_object_id (получить все возвраты по платежу). Пример: payment_id=1da5c87d-0984-50e8-a7f3-8de646dd9ec9"
      - in: "query"
        name: "status"
        schema:
          $ref: "#/components/schemas/RefundStatus"
        required: false
        description: "Фильтр по статусу возврата. Возможные значения: pending — в обработке, succeeded — успешно выполнен, canceled — отменен. Пример: status=succeeded"
      - $ref: "#/components/parameters/Limit"
      - $ref: "#/components/parameters/NextCursor"
      responses:
        "200":
          description: "Запрос успешно обработан"
          content:
            application/json:
              schema:
                type: "object"
                description: "Список возвратов, созданных за последние три года. Возвраты отсортированы по времени создания в порядке убывания (от новых к старым). Если результатов больше, чем задано в limit, список будет выводиться фрагментами. В этом случае в ответе на запрос вернется фрагмент списка и параметр next_cursor с указателем на следующий фрагмент."
                title: "RefundList"
                properties:
                  type:
                    type: "string"
                    description: "Формат выдачи результатов запроса. Возможное значение: list (список)."
                    enum:
                    - "list"
                  items:
                    type: "array"
                    items:
                      $ref: "#/components/schemas/Refund"
                  next_cursor:
                    $ref: "#/components/schemas/NextCursor"
                required:
                - "type"
                - "items"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "500":
          $ref: "#/components/responses/InternalServerError"
  /refunds/{refund_id}:
    get:
      summary: "Информация о возврате"
      description: "Запрос позволяет получить информацию о текущем состоянии возврата по его уникальному идентификатору."
      tags:
      - "Возвраты"
      parameters:
      - $ref: "#/components/parameters/refundIdPath"
      responses:
        "200":
          description: "Запрос успешно обработан"
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Refund"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "404":
          $ref: "#/components/responses/NotFound"
        "500":
          $ref: "#/components/responses/InternalServerError"
  /receipts:
    post:
      summary: "Создание чека"
      description: "Используйте этот запрос при оплате с соблюдением требований 54-ФЗ: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/basics, чтобы создать чек зачета предоплаты. Если вы работаете по сценарию Сначала платеж, потом чек: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/other-services/basics#receipt-after-payment, в запросе также нужно передавать данные для формирования чека прихода и чека возврата прихода."
      tags:
      - "Чеки"
      parameters:
      - $ref: "#/components/parameters/IdempotenceKey"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/PostReceiptData"
      responses:
        "200":
          description: "Запрос успешно обработан"
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Receipt"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "500":
          $ref: "#/components/responses/InternalServerError"
    get:
      summary: "Список чеков"
      description: "Запрос позволяет получить список чеков, отфильтрованный по заданным критериям. Можно запросить чеки по конкретному платежу, чеки по конкретному возврату или все чеки магазина. Подробнее о работе со списками: https://yookassa.ru/developers/using-api/lists"
      tags:
      - "Чеки"
      parameters:
      - $ref: "#/components/parameters/CreatedGte"
      - $ref: "#/components/parameters/CreatedGt"
      - $ref: "#/components/parameters/CreatedLte"
      - $ref: "#/components/parameters/CreatedLt"
      - in: "query"
        name: "status"
        schema:
          $ref: "#/components/schemas/ReceiptRegistrationStatus"
        required: false
        description: "Фильтр по статусу чека. Возможные значения: pending — в обработке, succeeded — успешно зарегистрирован, canceled — отменен. Пример: status=succeeded"
      - in: "query"
        name: "payment_id"
        schema:
          $ref: "#/components/schemas/PaymentId"
        required: false
        description: "Фильтр по идентификатору платежа: https://yookassa.ru/developers/api#payment_object_id (получить все чеки для указанного платежа). Пример: payment_id=1da5c87d-0984-50e8-a7f3-8de646dd9ec9 В запросе можно передать только что-то одно: или идентификатор платежа, или идентификатор возврата."
      - in: "query"
        name: "refund_id"
        schema:
          $ref: "#/components/schemas/RefundId"
        required: false
        description: "Фильтр по идентификатору возврата: https://yookassa.ru/developers/api#refund_object_id (получить все чеки для указанного возврата). Пример: refund_id=1da5c87d-0984-50e8-a7f3-8de646dd9ec9 В запросе можно передать только что-то одно: или идентификатор платежа, или идентификатор возврата."
      - $ref: "#/components/parameters/Limit"
      - $ref: "#/components/parameters/NextCursor"
      responses:
        "200":
          description: "Запрос успешно обработан"
          content:
            application/json:
              schema:
                type: "object"
                description: "Список чеков, созданных за последние три года. Чеки отсортированы по времени создания в порядке убывания (от новых к старым). Если результатов больше, чем задано в limit, список будет выводиться фрагментами. В этом случае в ответе на запрос вернется фрагмент списка и параметр next_cursor с указателем на следующий фрагмент."
                title: "ReceiptList"
                properties:
                  type:
                    type: "string"
                    description: "Формат выдачи результатов запроса. Возможное значение: list (список)."
                    enum:
                    - "list"
                  items:
                    type: "array"
                    items:
                      $ref: "#/components/schemas/Receipt"
                  next_cursor:
                    $ref: "#/components/schemas/NextCursor"
                required:
                - "type"
                - "items"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "500":
          $ref: "#/components/responses/InternalServerError"
  /receipts/{receipt_id}:
    get:
      summary: "Информация о чеке"
      description: "Запрос позволяет получить информацию о текущем состоянии чека по его уникальному идентификатору."
      tags:
      - "Чеки"
      parameters:
      - $ref: "#/components/parameters/receiptIdPath"
      responses:
        "200":
          description: "Запрос успешно обработан"
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Receipt"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "500":
          $ref: "#/components/responses/InternalServerError"
  /deals:
    post:
      summary: "Создание сделки"
      description: "Запрос позволяет создать сделку, в рамках которой необходимо принять оплату от покупателя и перечислить ее продавцу."
      tags:
      - "Сделки"
      parameters:
      - $ref: "#/components/parameters/IdempotenceKey"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SafeDealRequest"
      responses:
        "200":
          description: "Запрос принят в обработку и успешно обработан."
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SafeDeal"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "429":
          $ref: "#/components/responses/TooManyRequests"
        "500":
          $ref: "#/components/responses/InternalServerError"
    get:
      summary: "Список сделок"
      description: "Запрос позволяет получить список сделок, отфильтрованный по заданным критериям. Подробнее о работе со списками: https://yookassa.ru/developers/using-api/lists"
      tags:
      - "Сделки"
      parameters:
      - $ref: "#/components/parameters/CreatedGte"
      - $ref: "#/components/parameters/CreatedGt"
      - $ref: "#/components/parameters/CreatedLte"
      - $ref: "#/components/parameters/CreatedLt"
      - $ref: "#/components/parameters/ExpiresGte"
      - $ref: "#/components/parameters/ExpiresGt"
      - $ref: "#/components/parameters/ExpiresLte"
      - $ref: "#/components/parameters/ExpiresLt"
      - $ref: "#/components/parameters/DealStatusParameter"
      - $ref: "#/components/parameters/FullTextSearch"
      - $ref: "#/components/parameters/Limit"
      - $ref: "#/components/parameters/NextCursor"
      responses:
        "200":
          description: "Запрос успешно обработан"
          content:
            application/json:
              schema:
                type: "object"
                description: "Список сделок, созданных за последние три года. Сделки отсортированы по времени создания в порядке убывания (от новых к старым). Если результатов больше, чем задано в limit, список будет выводиться фрагментами. В этом случае в ответе на запрос вернется фрагмент списка и параметр next_cursor с указателем на следующий фрагмент."
                title: "DealList"
                properties:
                  type:
                    type: "string"
                    description: "Формат выдачи результатов запроса. Возможное значение: list (список)."
                    enum:
                    - "list"
                  items:
                    type: "array"
                    items:
                      $ref: "#/components/schemas/SafeDeal"
                  next_cursor:
                    $ref: "#/components/schemas/NextCursor"
                required:
                - "type"
                - "items"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "404":
          $ref: "#/components/responses/NotFound"
        "429":
          $ref: "#/components/responses/TooManyRequests"
        "500":
          $ref: "#/components/responses/InternalServerError"
  /deals/{deal_id}:
    get:
      summary: "Информация о сделке"
      description: "Запрос позволяет получить информацию о текущем состоянии сделки по ее уникальному идентификатору."
      tags:
      - "Сделки"
      parameters:
      - $ref: "#/components/parameters/DealIdPath"
      responses:
        "200":
          description: "Запрос принят в обработку и успешно обработан."
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SafeDeal"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "404":
          $ref: "#/components/responses/NotFound"
        "429":
          $ref: "#/components/responses/TooManyRequests"
        "500":
          $ref: "#/components/responses/InternalServerError"
  /payouts:
    post:
      summary: "Создание выплаты"
      description: "Используйте этот запрос, чтобы создать в ЮKassa объект выплаты: https://yookassa.ru/developers/api#payout_object. В запросе необходимо передать сумму выплаты, данные о способе получения выплаты (например, номер кошелька ЮMoney), описание выплаты и при необходимости дополнительные параметры, связанные с той функциональностью, которую вы хотите использовать. Передаваемые параметры и данные для аутентификации: https://yookassa.ru/developers/using-api/interaction-format#auth запросов зависят от того, какое платежное решение вы используете — обычные выплаты: https://yookassa.ru/developers/payouts/overview или выплаты в рамках Безопасной сделки: https://yookassa.ru/developers/solutions-for-platforms/safe-deal/basics."
      tags:
      - "Выплаты"
      parameters:
      - $ref: "#/components/parameters/IdempotenceKey"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/PayoutRequest"
      responses:
        "200":
          description: "Запрос принят в обработку и успешно обработан."
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Payout"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "429":
          $ref: "#/components/responses/TooManyRequests"
        "500":
          $ref: "#/components/responses/InternalServerError"
  /payouts/{payout_id}:
    get:
      summary: "Информация о выплате"
      description: "Используйте этот запрос, чтобы получить информацию о текущем состоянии выплаты по ее уникальному идентификатору. Данные для аутентификации: https://yookassa.ru/developers/using-api/interaction-format#auth запросов зависят от того, какое платежное решение вы используете — обычные выплаты: https://yookassa.ru/developers/payouts/overview или выплаты в рамках Безопасной сделки: https://yookassa.ru/developers/solutions-for-platforms/safe-deal/basics."
      tags:
      - "Выплаты"
      parameters:
      - $ref: "#/components/parameters/PayoutIdPath"
      responses:
        "200":
          description: "Запрос принят в обработку и успешно обработан."
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Payout"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "404":
          $ref: "#/components/responses/NotFound"
        "429":
          $ref: "#/components/responses/TooManyRequests"
        "500":
          $ref: "#/components/responses/InternalServerError"
  /sbp_banks:
    get:
      summary: "Список участников СБП"
      description: "С помощью этого запроса вы можете получить актуальный список всех участников СБП. Список нужно вывести получателю выплаты, идентификатор выбранного участника СБП необходимо использовать в запросе на создание выплаты: https://yookassa.ru/developers/api#create_payout. Подробнее о выплатах через СБП: https://yookassa.ru/developers/payouts/making-payouts/sbp"
      tags:
      - "Участники СБП"
      responses:
        "200":
          description: "Запрос успешно обработан"
          content:
            application/json:
              schema:
                type: "object"
                description: "Список участников СБП. Участники СБП отсортированы по идентификатору участника в порядке убывания."
                title: "GetSbpBanksResponse"
                properties:
                  type:
                    type: "string"
                    description: "Формат выдачи результатов запроса. Возможное значение: list (список)."
                    enum:
                    - "list"
                  items:
                    type: "array"
                    items:
                      $ref: "#/components/schemas/SbpParticipantBank"
                required:
                - "type"
                - "items"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "404":
          $ref: "#/components/responses/NotFound"
        "429":
          $ref: "#/components/responses/TooManyRequests"
        "500":
          $ref: "#/components/responses/InternalServerError"
  /self_employed:
    post:
      summary: "Создание самозанятого"
      description: "Используйте этот запрос, чтобы создать в ЮKassa объект самозанятого: https://yookassa.ru/developers/api#self_employed_object. В запросе необходимо передать ИНН или телефон самозанятого для идентификации в сервисе Мой налог, сценарий подтверждения пользователем заявки ЮMoney на получение прав для регистрации чеков и описание самозанятого. Идентификатор созданного объекта самозанятого необходимо использовать в запросе на проведение выплаты. Подробнее о выплатах самозанятым: https://yookassa.ru/developers/payouts/scenario-extensions/self-employed"
      tags:
      - "Самозанятые"
      parameters:
      - $ref: "#/components/parameters/IdempotenceKey"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SelfEmployedRequest"
      responses:
        "200":
          description: "Запрос успешно обработан"
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SelfEmployed"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "500":
          $ref: "#/components/responses/InternalServerError"
  /self_employed/{self_employed_id}:
    get:
      summary: "Информация о самозанятом"
      description: "С помощью этого запроса вы можете получить информацию о текущем статусе самозанятого по его уникальному идентификатору."
      tags:
      - "Самозанятые"
      parameters:
      - $ref: "#/components/parameters/SelfEmployedIdPath"
      responses:
        "200":
          description: "Запрос успешно обработан"
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SelfEmployed"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "404":
          $ref: "#/components/responses/NotFound"
        "500":
          $ref: "#/components/responses/InternalServerError"
  /personal_data:
    post:
      summary: "Создание персональных данных"
      description: "Используйте этот запрос, чтобы создать в ЮKassa объект персональных данных: https://yookassa.ru/developers/api#personal_data_object. В запросе необходимо указать тип данных (с какой целью они будут использоваться) и передать информацию о пользователе: фамилию, имя, отчество и другие — в зависимости от выбранного типа. Идентификатор созданного объекта персональных данных необходимо использовать в запросе на создание выплаты: https://yookassa.ru/developers/api#create_payout."
      tags:
      - "Персональные данные"
      parameters:
      - $ref: "#/components/parameters/IdempotenceKey"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              oneOf:
              - $ref: "#/components/schemas/SbpPayoutRecipientPersonalDataRequest"
              - $ref: "#/components/schemas/PayoutStatementRecipientPersonalDataRequest"
              discriminator:
                propertyName: "type"
                mapping:
                  payout_statement_recipient: "#/components/schemas/PayoutStatementRecipientPersonalDataRequest"
                  sbp_payout_recipient: "#/components/schemas/SbpPayoutRecipientPersonalDataRequest"
      responses:
        "200":
          description: "Запрос принят в обработку и успешно обработан."
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PersonalData"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "429":
          $ref: "#/components/responses/TooManyRequests"
        "500":
          $ref: "#/components/responses/InternalServerError"
  /personal_data/{personal_data_id}:
    get:
      summary: "Информация о персональных данных"
      description: "С помощью этого запроса вы можете получить информацию о текущем статусе объекта персональных данных по его уникальному идентификатору."
      tags:
      - "Персональные данные"
      parameters:
      - in: "path"
        name: "personal_data_id"
        required: true
        schema:
          $ref: "#/components/schemas/PersonalDataId"
      responses:
        "200":
          description: "Запрос принят в обработку и успешно обработан."
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PersonalData"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "404":
          $ref: "#/components/responses/NotFound"
        "429":
          $ref: "#/components/responses/TooManyRequests"
        "500":
          $ref: "#/components/responses/InternalServerError"
  /webhooks:
    post:
      summary: "Создание webhook"
      description: "Запрос позволяет подписаться на уведомления о событиях: https://yookassa.ru/developers/using-api/webhooks#events (например, переход платежа в статус succeeded). C помощью webhook можно подписаться только на события платежей и возвратов. Если вы хотите получать уведомления о нескольких событиях, вам нужно для каждого из них создать свой webhook. Для каждого OAuth-токена нужно создавать свой набор webhook."
      tags:
      - "Webhooks"
      parameters:
      - $ref: "#/components/parameters/IdempotenceKey"
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: "object"
              title: "CreateWebhookRequest"
              properties:
                event:
                  allOf:
                  - $ref: "#/components/schemas/NotificationEventType"
                  - description: "Событие: https://yookassa.ru/developers/using-api/webhooks#events, которое вы хотите отслеживать."
                url:
                  description: "URL, на который ЮKassa будет отправлять уведомления."
                  type: "string"
                  example: "https://www.example.com/notification_url"
              required:
              - "event"
              - "url"
      responses:
        "200":
          description: "Запрос успешно обработан"
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Webhook"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "500":
          $ref: "#/components/responses/InternalServerError"
    get:
      summary: "Список созданных webhook"
      description: "Запрос позволяет узнать, какие webhook есть для переданного OAuth-токена."
      tags:
      - "Webhooks"
      responses:
        "200":
          description: "Запрос успешно обработан"
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/WebhookList"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "500":
          $ref: "#/components/responses/InternalServerError"
  /webhooks/{webhook_id}:
    delete:
      summary: "Удаление webhook"
      description: "Запрос позволяет отписаться от уведомлений о событии для переданного OAuth-токена. Чтобы удалить webhook, вам нужно передать в запросе его идентификатор."
      parameters:
      - $ref: "#/components/parameters/webhookId"
      tags:
      - "Webhooks"
      responses:
        "200":
          description: "Запрос успешно обработан"
          content:
            application/json:
              schema:
                type: "object"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "500":
          $ref: "#/components/responses/InternalServerError"
  /me:
    get:
      summary: "Информация о настройках магазина или шлюза"
      description: "С помощью этого запроса вы можете получить информацию о магазине или шлюзе: Для Сплитования платежей: https://yookassa.ru/developers/solutions-for-platforms/split-payments/basics: в запросе необходимо передать параметр on_behalf_of с идентификатором магазина продавца и ваши данные для аутентификации: https://yookassa.ru/developers/using-api/interaction-format#auth (идентификатор и секретный ключ вашей платформы).; Для партнеров: https://yookassa.ru/developers/solutions-for-platforms/partners-api/basics: в запросе необходимо передать OAuth-токен магазина.; Для выплат: https://yookassa.ru/developers/payouts/overview: в запросе необходимо передать ваши данные для аутентификации: https://yookassa.ru/developers/using-api/interaction-format#auth (идентификатор и секретный ключ вашего шлюза)."
      tags:
      - "Настройки"
      parameters:
      - in: "query"
        name: "on_behalf_of"
        schema:
          $ref: "#/components/schemas/AccountId"
        required: false
        description: "Только для тех, кто использует Сплитование платежей: https://yookassa.ru/developers/solutions-for-platforms/split-payments/basics. Идентификатор магазина продавца, подключенного к вашей платформе, информацию о котором вы хотите узнать."
      responses:
        "200":
          description: "Запрос успешно обработан"
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Me"
        "400":
          $ref: "#/components/responses/BadRequest"
        "401":
          $ref: "#/components/responses/InvalidCredentials"
        "403":
          $ref: "#/components/responses/Forbidden"
        "500":
          $ref: "#/components/responses/InternalServerError"
components:
  securitySchemes:
    BasicAuth:
      description: "HTTP Basic аутентификация клиента ЮKassa"
      type: "http"
      scheme: "basic"
    OAuth2:
      description: "Авторизация клиента ЮKassa с использованием OAuth-токена"
      type: "oauth2"
      flows:
        implicit:
          authorizationUrl: "https://yookassa.ru/oauth/v2/authorize"
          scopes:
            checkout:payments_create: "Право на создание платежей"
            checkout:payments_capture: "Право на подтверждение платежей"
            checkout:payments_cancel: "Право на отмену платежей"
            checkout:payments_get: "Право на получение списка платежей"
            checkout:refunds_create: "Право на создание возвратов"
            checkout:refunds_get: "Право на получение списка возвратов"
            checkout:receipts_get: "Право на получение списка возвратов"
            checkout:get_fees: "Право на получение информации об удержанных комиссиях"
  parameters:
    IdempotenceKey:
      name: "Idempotence-Key"
      in: "header"
      required: true
      schema:
        type: "string"
        maxLength: 64
        pattern: "[0-9a-zA-Z+-_.]{1,64}"
        default: "2e1da982-1bb1-41f0-b9cf-758cc8bcf069"
    CreatedGte:
      name: "created_at.gte"
      in: "query"
      description: "Фильтр по времени создания: время должно быть больше указанного значения или равно ему («с такого-то момента включительно»). Указывается в формате ISO 8601: https://en.wikipedia.org/wiki/ISO_8601. Пример: created_at.gte=2018-07-18T10:51:18.139Z"
      schema:
        type: "string"
        format: "date-time"
    CreatedGt:
      name: "created_at.gt"
      in: "query"
      description: "Фильтр по времени создания: время должно быть больше указанного значения («с такого-то момента, не включая его»). Указывается в формате ISO 8601: https://en.wikipedia.org/wiki/ISO_8601. Пример: created_at.gt=2018-07-18T10:51:18.139Z"
      schema:
        type: "string"
        format: "date-time"
    CreatedLte:
      name: "created_at.lte"
      in: "query"
      description: "Фильтр по времени создания: время должно быть меньше указанного значения или равно ему («по такой-то момент включительно»). Указывается в формате ISO 8601: https://en.wikipedia.org/wiki/ISO_8601. Пример: created_at.lte=2018-07-18T10:51:18.139Z"
      schema:
        type: "string"
        format: "date-time"
    CreatedLt:
      name: "created_at.lt"
      in: "query"
      description: "Фильтр по времени создания: время должно быть меньше указанного значения («по такой-то момент, не включая его»). Указывается в формате ISO 8601: https://en.wikipedia.org/wiki/ISO_8601. Пример: created_at.lt=2018-07-18T10:51:18.139Z"
      schema:
        type: "string"
        format: "date-time"
    Limit:
      name: "limit"
      in: "query"
      description: "Размер выдачи результатов запроса — количество объектов, передаваемых в ответе. Возможные значения: от 1 до 100. Пример: limit=50 Значение по умолчанию: 10"
      schema:
        type: "integer"
        minimum: 1
        maximum: 100
        default: 10
    NextCursor:
      name: "cursor"
      in: "query"
      description: "Указатель на следующий фрагмент списка. Пример: cursor=37a5c87d-3984-51e8-a7f3-8de646d39ec15 В качестве указателя необходимо использовать значение параметра next_cursor, полученное в ответе на предыдущий запрос. Используется, если в списке больше объектов, чем может поместиться в выдаче (limit), и конец выдачи не достигнут. Пример использования: https://yookassa.ru/developers/using-api/lists#pagination"
      schema:
        type: "string"
    paymentIdPath:
      name: "payment_id"
      in: "path"
      required: true
      description: "Идентификатор платежа."
      schema:
        $ref: "#/components/schemas/PaymentId"
    paymentMethodIdPath:
      name: "payment_method_id"
      in: "path"
      required: true
      description: "Идентификатор сохраненного способа оплаты."
      schema:
        $ref: "#/components/schemas/PaymentMethodId"
    invoiceId:
      name: "invoice_id"
      in: "path"
      required: true
      description: "Идентификатор счета в ЮKassa."
      schema:
        type: "string"
        minLength: 39
        maxLength: 39
        default: "in-e44e8088-bd73-43b1-959a-954f3a7d0c54?>"
    refundIdPath:
      name: "refund_id"
      in: "path"
      required: true
      description: "Идентификатор возврата."
      schema:
        type: "string"
        minLength: 36
        maxLength: 36
        default: "cae993f2-eb15-45f5-91c5-efb87107ae10"
    receiptIdPath:
      name: "receipt_id"
      in: "path"
      required: true
      description: "Идентификатор чека."
      schema:
        $ref: "#/components/schemas/ReceiptId"
    ExpiresGte:
      name: "expires_at.gte"
      in: "query"
      description: "Фильтр по времени автоматического закрытия сделки: время должно быть больше указанного значения или равно ему («с такого-то момента включительно»). Указывается в формате ISO 8601: https://en.wikipedia.org/wiki/ISO_8601. Пример: expires_at.gte=2018-07-18T10:51:18.139Z"
      schema:
        type: "string"
        format: "date-time"
    ExpiresGt:
      name: "expires_at.gt"
      in: "query"
      description: "Фильтр по времени автоматического закрытия сделки: время должно быть больше указанного значения («с такого-то момента, не включая его»). Указывается в формате ISO 8601: https://en.wikipedia.org/wiki/ISO_8601. Пример: expires_at.gt=2018-07-18T10:51:18.139Z"
      schema:
        type: "string"
        format: "date-time"
    ExpiresLte:
      name: "expires_at.lte"
      in: "query"
      description: "Фильтр по времени автоматического закрытия сделки: время должно быть меньше указанного значения или равно ему («по такой-то момент включительно»). Указывается в формате ISO 8601: https://en.wikipedia.org/wiki/ISO_8601. Пример: expires_at.lte=2018-07-18T10:51:18.139Z"
      schema:
        type: "string"
        format: "date-time"
    ExpiresLt:
      name: "expires_at.lt"
      in: "query"
      description: "Фильтр по времени автоматического закрытия сделки: время должно быть меньше указанного значения («по такой-то момент, не включая его»). Указывается в формате ISO 8601: https://en.wikipedia.org/wiki/ISO_8601. Пример: expires_at.lt=2018-07-18T10:51:18.139Z"
      schema:
        type: "string"
        format: "date-time"
    DealStatusParameter:
      name: "status"
      in: "query"
      schema:
        $ref: "#/components/schemas/DealStatus"
      description: "Фильтр по статусу сделки. Пример: status=closed"
    FullTextSearch:
      name: "full_text_search"
      in: "query"
      description: "Фильтр по описанию сделки — параметру description (например, идентификатор сделки на стороне вашей интернет-площадки в ЮKassa, идентификатор покупателя или продавца). От 4 до 128 символов. Пример: 123554642-2432FF344R"
      schema:
        type: "string"
        minLength: 4
        maxLength: 128
    DealIdPath:
      name: "deal_id"
      in: "path"
      required: true
      schema:
        $ref: "#/components/schemas/DealId"
    PayoutIdPath:
      name: "payout_id"
      in: "path"
      required: true
      schema:
        $ref: "#/components/schemas/PayoutId"
    SelfEmployedIdPath:
      name: "self_employed_id"
      in: "path"
      required: true
      description: "Идентификатор объекта самозанятого."
      schema:
        $ref: "#/components/schemas/SelfEmployedId"
    webhookId:
      name: "webhook_id"
      in: "path"
      required: true
      description: "Идентификатор webhook-a."
      schema:
        type: "string"
        minLength: 36
        maxLength: 36
        default: "1da5c87d-0984-50e8-a7f3-8de646dd9ec9"
  schemas:
    MonetaryAmount:
      description: "Сумма в выбранной валюте."
      type: "object"
      properties:
        value:
          description: "Сумма в выбранной валюте. Всегда дробное значение. Разделитель дробной части — точка, разделитель тысяч отсутствует. Количество знаков после точки зависит от выбранной валюты. Пример: 1000.00."
          type: "string"
          example: "1000.00"
        currency:
          $ref: "#/components/schemas/CurrencyCode"
      required:
      - "value"
      - "currency"
    CurrencyCode:
      description: "Трехбуквенный код валюты в формате ISO-4217: https://www.iso.org/iso-4217-currency-codes.html. Пример: RUB."
      type: "string"
      enum:
      - "RUB"
      - "EUR"
      - "USD"
      - "KZT"
      - "BYN"
      - "UAH"
      - "UZS"
      - "TRY"
      - "INR"
      - "MDL"
      - "AZN"
      - "AMD"
      example: "RUB"
    Description:
      description: "Поле, в котором пользователь может передать описание создаваемого объекта (не более 128 символов). Например: «Оплата заказа № 72»."
      type: "string"
      maxLength: 128
      example: "Оплата заказа № 72"
    ReceiptData:
      type: "object"
      description: "Данные для формирования чека. Необходимо передавать в этих случаях: вы компания или ИП и для оплаты с соблюдением требований 54-ФЗ используете Чеки от ЮKassa: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/yoomoney/basics; вы компания или ИП, для оплаты с соблюдением требований 54-ФЗ используете стороннюю онлайн-кассу: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/other-services/basics и отправляете данные для чеков по одному из сценариев: Платеж и чек одновременно: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/other-services/basics#payment-and-receipt или Сначала чек, потом платеж: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/other-services/basics#payment-after-receipt; вы самозанятый и используете решение ЮKassa для автоотправки чеков: https://yookassa.ru/developers/payment-acceptance/receipts/self-employed/basics."
      properties:
        customer:
          $ref: "#/components/schemas/ReceiptDataCustomer"
        items:
          description: "Список товаров в заказе. Для чеков по 54-ФЗ: если используете Чеки от ЮKassa, можно передать максимум 80 товаров, если используете стороннюю онлайн-кассу, максимум 100 товаров. Для чеков самозанятых — максимум 6 товаров."
          type: "array"
          items:
            $ref: "#/components/schemas/ReceiptDataItem"
        tax_system_code:
          $ref: "#/components/schemas/TaxSystemCode"
        receipt_industry_details:
          description: "Отраслевой реквизит чека (тег в 54 ФЗ — 1261). Можно передавать, если используете Чеки от ЮKassa или онлайн-кассу, обновленную до ФФД 1.2."
          type: "array"
          items:
            $ref: "#/components/schemas/IndustryDetails"
        receipt_operational_details:
          allOf:
          - $ref: "#/components/schemas/OperationalDetails"
          - description: "Операционный реквизит чека (тег в 54 ФЗ — 1270). Можно передавать, если используете Чеки от ЮKassa или онлайн-кассу, обновленную до ФФД 1.2."
      required:
      - "items"
    GatewayId:
      description: "Идентификатор субаккаунта. Используется для разделения потоков платежей в рамках одного аккаунта."
      type: "string"
      example: "456"
    FiscalizationProvider:
      description: "Решение ЮKassa, которое магазин использует для отправки чеков. Возможные значения: Чеки для самозанятых: https://yookassa.ru/developers/payment-acceptance/receipts/self-employed/basics — fns; 54-ФЗ: Чеки от ЮKassa: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/yoomoney/basics — avanpost; 54-ФЗ: сторонняя онлайн-касса: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/other-services/basics (наименование онлайн-кассы) — a_qsi (aQsi online), atol (АТОЛ Онлайн), business_ru (Бизнес.ру), digital_kassa (digitalkassa), evotor (Эвотор), first_ofd (Первый ОФД), kit_invest (Кит Инвест), komtet (КОМТЕТ Касса), life_pay (LIFE PAY), mertrade (Mertrade), modul_kassa (МодульКасса), rocket (RocketR), shtrih_m (Orange Data)."
      type: "string"
      enum:
      - "atol"
      - "avanpost"
      - "a_qsi"
      - "business_ru"
      - "digital_kassa"
      - "evotor"
      - "first_ofd"
      - "fns"
      - "kit_invest"
      - "komtet"
      - "life_pay"
      - "mertrade"
      - "modul_kassa"
      - "rocket"
      - "shtrih_m"
      example: "atol"
    BankCardHolderName:
      description: "Имя владельца карты."
      type: "string"
      pattern: "[a-zA-Z '-]{0,26}"
      example: "John Smith"
    CardRequestData:
      description: "Данные банковской карты (необходимы, если вы собираете данные карты пользователей на своей стороне)."
      type: "object"
      properties:
        number:
          description: "Номер банковской карты."
          type: "string"
          pattern: "[0-9]{14,19}"
          example: "5105105105105100"
        expiry_year:
          description: "Срок действия, год, YYYY."
          type: "string"
          pattern: "[0-9]{4}"
          example: "2017"
        expiry_month:
          description: "Срок действия, месяц, MM."
          type: "string"
          pattern: "[0-9]{2}"
          example: "07"
        cardholder:
          $ref: "#/components/schemas/BankCardHolderName"
      required:
      - "number"
      - "expiry_year"
      - "expiry_month"
    ReceiptDataCustomer:
      type: "object"
      description: "Информация о пользователе. Необходимо указать как минимум контактные данные: для Чеков от ЮKassa — электронную почту (customer.email), в остальных случаях — электронную почту (customer.email) или номер телефона (customer.phone)."
      properties:
        full_name:
          description: "Для юрлица — название организации, для ИП и физического лица — ФИО. Если у физлица отсутствует ИНН, в этом же параметре передаются паспортные данные. Не более 256 символов. Можно передавать, если используете Чеки от ЮKassa или онлайн-кассу Orange Data, Атол Онлайн."
          type: "string"
          example: "Иванов Иван Иванович"
        inn:
          allOf:
          - $ref: "#/components/schemas/RussianItn"
          - description: "ИНН пользователя (10 или 12 цифр). Если у физического лица отсутствует ИНН, необходимо передать паспортные данные в параметре full_name. Можно передавать, если используете Чеки от ЮKassa или онлайн-кассу Orange Data, Атол Онлайн."
        email:
          allOf:
          - $ref: "#/components/schemas/Email"
          - description: "Электронная почта пользователя для отправки чека. Обязательный параметр, если используете Чеки от ЮKassa или если используете другое решение (стороннюю онлайн-кассу, чеки самозанятых) и не передаете phone."
        phone:
          allOf:
          - $ref: "#/components/schemas/Phone"
          - description: "Телефон пользователя для отправки чека. Указывается в формате ITU-T E.164: https://ru.wikipedia.org/wiki/E.164, например 79000000000. Обязательный параметр, если не передан email."
    ReceiptDataItem:
      type: "object"
      description: "Информация о товарной позиции в заказе. Используется для формирования чека."
      properties:
        description:
          $ref: "#/components/schemas/ReceiptItemDescription"
        amount:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Цена товара (тег в 54 ФЗ — 1079)."
        vat_code:
          $ref: "#/components/schemas/ReceiptItemVatCode"
        quantity:
          $ref: "#/components/schemas/ReceiptItemQuantity"
        measure:
          $ref: "#/components/schemas/ReceiptItemMeasure"
        mark_quantity:
          $ref: "#/components/schemas/MarkQuantity"
        payment_subject:
          $ref: "#/components/schemas/ReceiptItemPaymentSubject"
        payment_mode:
          $ref: "#/components/schemas/ReceiptItemPaymentMode"
        country_of_origin_code:
          $ref: "#/components/schemas/ReceiptItemCountryOfOriginCode"
        customs_declaration_number:
          $ref: "#/components/schemas/ReceiptItemCustomsDeclarationNumber"
        excise:
          $ref: "#/components/schemas/ReceiptItemExcise"
        product_code:
          $ref: "#/components/schemas/ReceiptItemProductCode"
        mark_code_info:
          $ref: "#/components/schemas/MarkCodeInfo"
        mark_mode:
          $ref: "#/components/schemas/MarkMode"
        payment_subject_industry_details:
          $ref: "#/components/schemas/ReceiptItemPaymentSubjectIndustryDetails"
      required:
      - "description"
      - "quantity"
      - "amount"
      - "vat_code"
    TaxSystemCode:
      description: "Система налогообложения магазина (тег в 54 ФЗ — 1055). Для сторонних онлайн-касс: обязательный параметр, если вы используете онлайн-кассу Атол Онлайн, обновленную до ФФД 1.2, или у вас несколько систем налогообложения, в остальных случаях не передается. Перечень возможных значений: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/other-services/parameters-values#tax-systems Для Чеков от ЮKassa: параметр передавать не нужно, ЮKassa его проигнорирует."
      type: "integer"
      format: "int32"
      minimum: 1
      maximum: 6
    IndustryDetails:
      description: "Данные отраслевого реквизита."
      type: "object"
      properties:
        federal_id:
          description: "Идентификатор федерального органа исполнительной власти (тег в 54 ФЗ — 1262)."
          type: "string"
          pattern: "(^00[1-9]{1}$)|(^0[1-6]{1}[0-9]{1}$)|(^07[0-3]{1}$)"
          example: "001"
        document_date:
          description: "Дата документа основания (тег в 54 ФЗ — 1263). Передается в формате ISO 8601: https://en.wikipedia.org/wiki/ISO_8601"
          type: "string"
          format: "date"
          example: "2020-11-18"
        document_number:
          description: "Номер нормативного акта федерального органа исполнительной власти, регламентирующего порядок заполнения реквизита «значение отраслевого реквизита» (тег в 54 ФЗ — 1264)."
          type: "string"
          maxLength: 32
        value:
          description: "Значение отраслевого реквизита (тег в 54 ФЗ — 1265)."
          type: "string"
          example: "123/43"
          maxLength: 256
      required:
      - "federal_id"
      - "document_date"
      - "document_number"
      - "value"
    OperationalDetails:
      description: "Данные операционного реквизита чека"
      type: "object"
      properties:
        operation_id:
          description: "Идентификатор операции (тег в 54 ФЗ — 1271). Число от 0 до 255."
          type: "integer"
          minimum: 0
          maximum: 255
          example: 0
        value:
          description: "Данные операции (тег в 54 ФЗ — 1272)."
          type: "string"
          maxLength: 64
        created_at:
          description: "Время создания операции (тег в 54 ФЗ — 1273). Указывается по 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"
          type: "string"
          format: "date-time"
          example: "2020-07-03T11:52:31.827Z"
      required:
      - "operation_id"
      - "value"
      - "created_at"
    ReceiptItemDescription:
      description: "Название товара (от 1 до 128 символов). Тег в 54 ФЗ — 1030."
      type: "string"
    ReceiptItemVatCode:
      description: "Ставка НДС (тег в 54 ФЗ — 1199). Для чеков по 54-ФЗ — перечень возможных значений: для Чеков от ЮKassa: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/yoomoney/parameters-values#vat-codes; для сторонних онлайн-касс: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/other-services/parameters-values#vat-codes. Для чеков самозанятых — фиксированное значение: 1"
      type: "integer"
      format: "int32"
      minimum: 1
      maximum: 10
    ReceiptItemQuantity:
      description: "Количество товара (тег в 54 ФЗ — 1023). Для чеков по 54-ФЗ: можно передать целое или дробное число. Разделитель дробной части — точка, разделитель тысяч отсутствует. Максимально возможное значение и максимальное количество знаков после точки (для дробных значений) зависят от модели вашей онлайн-кассы. Для чеков от ЮKassa максимально возможное значение — 99999.999, не более 3 знаков после точки. Для чеков самозанятых: только целые положительные числа (без точки и дробной части). Пример: 1."
      type: "number"
      example: 1
    ReceiptItemMeasure:
      description: "Мера количества предмета расчета (тег в 54 ФЗ — 2108) — единица измерения товара, например штуки, граммы. Обязательный параметр, если используете Чеки от ЮKassa или онлайн-кассу, обновленную до ФФД 1.2. Перечень возможных значений: для Чеков от ЮKassa: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/yoomoney/parameters-values#measure; для сторонних онлайн-касс: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/other-services/parameters-values#measure."
      type: "string"
      enum:
      - "piece"
      - "gram"
      - "kilogram"
      - "ton"
      - "centimeter"
      - "decimeter"
      - "meter"
      - "square_centimeter"
      - "square_decimeter"
      - "square_meter"
      - "milliliter"
      - "liter"
      - "cubic_meter"
      - "kilowatt_hour"
      - "gigacalorie"
      - "day"
      - "hour"
      - "minute"
      - "second"
      - "kilobyte"
      - "megabyte"
      - "gigabyte"
      - "terabyte"
      - "another"
      example: "piece"
    MarkQuantity:
      description: "Дробное количество маркированного товара (тег в 54 ФЗ — 1291). Обязательный параметр, если одновременно выполняются эти условия: вы используете Чеки от ЮKassa или онлайн-кассу, обновленную до ФФД 1.2; товар нужно маркировать: http://docs.cntd.ru/document/902192509; поле measure имеет значение piece. Пример: вы продаете поштучно карандаши. Они поставляются пачками по 100 штук с одним кодом маркировки. При продаже одного карандаша нужно в numerator передать 1, а в denominator — 100."
      type: "object"
      properties:
        numerator:
          description: "Числитель — количество продаваемых товаров из одной потребительской упаковки (тег в 54 ФЗ — 1293). Не может превышать denominator."
          type: "integer"
          example: 1
          minimum: 1
        denominator:
          description: "Знаменатель — общее количество товаров в потребительской упаковке (тег в 54 ФЗ — 1294)."
          type: "integer"
          example: 100
          minimum: 1
      required:
      - "numerator"
      - "denominator"
    ReceiptItemPaymentSubject:
      description: "Признак предмета расчета (тег в 54 ФЗ — 1212) — это то, за что принимается оплата, например товар, услуга. Перечень возможных значений: для Чеков от ЮKassa: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/yoomoney/parameters-values#payment-subject; для сторонних онлайн-касс: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/other-services/parameters-values#payment-subject."
      type: "string"
      enum:
      - "commodity"
      - "excise"
      - "job"
      - "service"
      - "gambling_bet"
      - "gambling_prize"
      - "lottery"
      - "lottery_prize"
      - "intellectual_activity"
      - "payment"
      - "agent_commission"
      - "property_right"
      - "non_operating_gain"
      - "insurance_premium"
      - "sales_tax"
      - "resort_fee"
      - "composite"
      - "another"
      - "fine"
      - "tax"
      - "lien"
      - "cost"
      - "pension_insurance_without_payouts"
      - "pension_insurance_with_payouts"
      - "health_insurance_without_payouts"
      - "health_insurance_with_payouts"
      - "health_insurance"
      - "casino"
      - "agent_withdrawals"
      - "non_marked_excise"
      - "marked_excise"
      - "marked"
      - "non_marked"
    ReceiptItemPaymentMode:
      description: "Признак способа расчета (тег в 54 ФЗ — 1214) — отражает тип оплаты и факт передачи товара. Пример: покупатель полностью оплачивает товар и сразу получает его. В этом случае нужно передать значение full_payment (полный расчет). Перечень возможных значений: для Чеков от ЮKassa: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/yoomoney/parameters-values#payment-mode; для сторонних онлайн-касс: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/other-services/parameters-values#payment-mode."
      type: "string"
      enum:
      - "full_prepayment"
      - "partial_prepayment"
      - "advance"
      - "full_payment"
      - "partial_payment"
      - "credit"
      - "credit_payment"
    ReceiptItemCountryOfOriginCode:
      description: "Код страны происхождения товара по общероссийскому классификатору стран мира (OК (MК (ИСО 3166) 004-97) 025-2001: http://docs.cntd.ru/document/842501280). Тег в 54 ФЗ — 1230. Пример: RU. Можно передавать, если используете онлайн-кассу Orange Data, Кит Инвест."
      type: "string"
      example: "RU"
    ReceiptItemCustomsDeclarationNumber:
      description: "Номер таможенной декларации (от 1 до 32 символов). Тег в 54 ФЗ — 1231. Можно передавать, если используете онлайн-кассу Orange Data, Кит Инвест."
      type: "string"
      minLength: 1
      maxLength: 32
      example: "10714040/140917/0090376"
    ReceiptItemExcise:
      description: "Сумма акциза товара с учетом копеек (тег в 54 ФЗ — 1229). Десятичное число с точностью до 2 знаков после точки. Можно передавать, если используете онлайн-кассу Orange Data, Кит Инвест."
      type: "string"
      example: "20.00"
    ReceiptItemProductCode:
      description: "Код товара (тег в 54 ФЗ — 1162) — уникальный номер, который присваивается экземпляру товара при маркировке. Формат: число в шестнадцатеричном представлении с пробелами. Максимальная длина — 32 байта. Пример: 00 00 00 01 00 21 FA 41 00 23 05 41 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 12 00 AB 00. Обязательный параметр, если одновременно выполняются эти условия: вы используете онлайн-кассу, обновленную до ФФД 1.05; товар нужно маркировать: http://docs.cntd.ru/document/902192509."
      type: "string"
      example: "00 00 00 01 00 21 FA 41 00 23 05 41 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 12 00 AB 00"
    MarkCodeInfo:
      description: "Код товара (тег в 54 ФЗ — 1163). Обязательный параметр, если одновременно выполняются эти условия: вы используете Чеки от ЮKassa или онлайн-кассу, обновленную до ФФД 1.2; товар нужно маркировать: http://docs.cntd.ru/document/902192509. Должно быть заполнено хотя бы одно поле."
      type: "object"
      properties:
        mark_code_raw:
          description: "Код товара в том виде, в котором он был прочитан сканером (тег в 54 ФЗ — 2000). Нужно передавать, если используете онлайн-кассу Orange Data. Пример: 010460406000590021N4N57RTCBUZTQ\\u001d2403054002410161218\\u001d1424010191ffd0\\u001g92tIAF/YVpU4roQS3M/m4z78yFq0nc/WsSmLeX6QkF/YVWwy5IMYAeiQ91Xa2m/fFSJcOkb2N+uUUtfr4n0mOX0Q=="
          type: "string"
        unknown:
          description: "Нераспознанный код товара (тег в 54 ФЗ — 1300)."
          type: "string"
          minLength: 1
          maxLength: 32
        ean_8:
          description: "Код товара в формате EAN-8 (тег в 54 ФЗ — 1301)."
          type: "string"
          minLength: 8
          maxLength: 8
        ean_13:
          description: "Код товара в формате EAN-13 (тег в 54 ФЗ — 1302)."
          type: "string"
          minLength: 13
          maxLength: 13
        itf_14:
          description: "Код товара в формате ITF-14 (тег в 54 ФЗ — 1303)."
          type: "string"
          minLength: 14
          maxLength: 14
        gs_10:
          description: "Код товара в формате GS1.0 (тег в 54 ФЗ — 1304). Можно передавать, если используете онлайн-кассу Orange Data, aQsi, Кит Инвест, АТОЛ Онлайн."
          type: "string"
          minLength: 1
          maxLength: 38
        gs_1m:
          description: "Код товара в формате GS1.M (тег в 54 ФЗ — 1305)."
          type: "string"
          minLength: 1
          maxLength: 200
        short:
          description: "Код товара в формате короткого кода маркировки (тег в 54 ФЗ — 1306)."
          type: "string"
          minLength: 1
          maxLength: 38
        fur:
          description: "Контрольно-идентификационный знак мехового изделия (тег в 54 ФЗ — 1307)."
          type: "string"
          minLength: 20
          maxLength: 20
        egais_20:
          description: "Код товара в формате ЕГАИС-2.0 (тег в 54 ФЗ — 1308)."
          type: "string"
          minLength: 33
          maxLength: 33
        egais_30:
          description: "Код товара в формате ЕГАИС-3.0 (тег в 54 ФЗ — 1309)."
          type: "string"
          maxLength: 14
          minLength: 14
    MarkMode:
      description: "Режим обработки кода маркировки (тег в 54 ФЗ — 2102). Обязательный параметр, если одновременно выполняются эти условия: вы используете Чеки от ЮKassa или онлайн-кассу Атол Онлайн или BusinessRu, обновленную до ФФД 1.2; товар нужно маркировать: http://docs.cntd.ru/document/902192509. Должен принимать значение равное «0»."
      type: "string"
      pattern: "^[0]{1}$"
      example: "0"
    ReceiptItemPaymentSubjectIndustryDetails:
      description: "Отраслевой реквизит предмета расчета (тег в 54 ФЗ — 1260). Можно передавать, если используете Чеки от ЮKassa или онлайн-кассу, обновленную до ФФД 1.2."
      type: "array"
      items:
        $ref: "#/components/schemas/IndustryDetails"
    RussianItn:
      description: "ИНН пользователя (10 или 12 цифр)."
      type: "string"
      example: "6321341814"
      pattern: "\\d{10}|\\d{12}"
    Email:
      description: "Адрес электронной почты RFC 5322"
      type: "string"
      format: "email"
      maxLength: 254
      example: "user@yoomoney.ru"
    Phone:
      description: "Номер телефона в формате ITU-T E.164"
      type: "string"
      pattern: "[0-9]{4,15}"
      example: "79000000000"
    SbpBankId:
      type: "string"
      description: "Идентификатор банка или платежного сервиса в СБП (НСПК)."
      maxLength: 12
      pattern: "[a-zA-Z0-9]{12}"
      example: "100000000111"
    SbpBankBic:
      type: "string"
      description: "Банковский идентификационный код (БИК) банка или платежного сервиса."
      maxLength: 9
      pattern: "\\d{9}"
      example: "044525225"
    PayoutDestinationDataType:
      description: "Способ получения выплаты: yoo_money — выплаты на кошелек ЮMoney; bank_card — выплаты на банковскую карту; sbp — выплаты через СБП на счет в банке или платежном сервисе."
      type: "string"
      enum:
      - "yoo_money"
      - "bank_card"
      - "sbp"
    PayoutDestinationData:
      discriminator:
        propertyName: "type"
        mapping:
          yoo_money: "#/components/schemas/PayoutToYooMoneyDestinationData"
          bank_card: "#/components/schemas/PayoutToBankCardDestinationData"
          sbp: "#/components/schemas/PayoutToSbpDestinationData"
      type: "object"
      description: "Данные платежного средства, на которое нужно сделать выплату. Обязательный параметр, если не передан payout_token или payment_method_id. Выплаты через СБП доступны только при обычных выплатах и только при выплатах физическим лицам."
      properties:
        type:
          $ref: "#/components/schemas/PayoutDestinationDataType"
      required:
      - "type"
    YooMoneyAccountNumber:
      description: "Номер кошелька ЮMoney, например 41001614575714. Длина — от 11 до 33 цифр."
      minLength: 11
      maxLength: 33
      type: "string"
      example: "41001614575714"
    CardDataForPayoutDestination:
      description: "Данные банковской карты для выплаты."
      type: "object"
      properties:
        number:
          description: "Номер банковской карты. Формат: только цифры, без пробелов. Пример: 5555555555554477"
          type: "string"
          pattern: "[0-9]{16,19}"
          example: "5555555555554477"
      required:
      - "number"
    Recipient:
      description: "Получатель платежа. Нужен, если вы разделяете потоки платежей в рамках одного аккаунта или создаете платеж в адрес другого аккаунта."
      type: "object"
      properties:
        gateway_id:
          $ref: "#/components/schemas/GatewayId"
      required:
      - "gateway_id"
    PaymentToken:
      description: "Одноразовый токен для проведения оплаты, сформированный с помощью Checkout.js: https://yookassa.ru/developers/payment-acceptance/integration-scenarios/checkout-js/basics или мобильного SDK: https://yookassa.ru/developers/payment-acceptance/integration-scenarios/mobile-sdks/basics."
      type: "string"
      example: "+u7PDjMTkf08NtD66P6+eYWa2yjU3gsSIhOOO+OWsOg="
    ConfirmationDataType:
      description: "Тип сценария подтверждения платежа пользователем. Возможные значения: redirect - перенаправление пользователя на готовую страницу ЮKassa или на страницу партнера; external - ожидание самостоятельного подтверждения платежа пользователем; qr - формирование QR-кода и его отображение на странице оплаты, чтобы пользователь смог подтвердить платеж; embedded - отображение платежного виджета ЮKassa; mobile_application - перенаправление пользователя в приложение партнера для оплаты."
      type: "string"
      enum:
      - "redirect"
      - "external"
      - "qr"
      - "embedded"
      - "mobile_application"
    Locale:
      description: "Язык интерфейса, писем и смс, которые будет видеть или получать пользователь. Формат соответствует ISO/IEC 15897: https://en.wikipedia.org/wiki/Locale_(computer_software). Возможные значения: ru_RU, en_US. Регистр важен."
      type: "string"
      enum:
      - "ru_RU"
      - "en_US"
      example: "ru_RU"
    ConfirmationData:
      description: "Данные, необходимые для инициирования выбранного сценария подтверждения платежа пользователем. Подробнее о сценариях подтверждения: https://yookassa.ru/developers/payment-acceptance/getting-started/payment-process#user-confirmation"
      type: "object"
      properties:
        type:
          $ref: "#/components/schemas/ConfirmationDataType"
        locale:
          $ref: "#/components/schemas/Locale"
      discriminator:
        propertyName: "type"
        mapping:
          redirect: "#/components/schemas/ConfirmationDataRedirect"
          external: "#/components/schemas/ConfirmationDataExternal"
          qr: "#/components/schemas/ConfirmationDataQr"
          embedded: "#/components/schemas/ConfirmationDataEmbedded"
          mobile_application: "#/components/schemas/ConfirmationDataMobileApplication"
      required:
      - "type"
    Enforce:
      description: "Запрос на проведение платежа с аутентификацией по 3-D Secure. Будет работать, если оплату банковской картой вы по умолчанию принимаете без подтверждения платежа пользователем. В остальных случаях аутентификацией по 3-D Secure будет управлять ЮKassa. Если хотите принимать платежи без дополнительного подтверждения пользователем, напишите вашему менеджеру ЮKassa."
      type: "boolean"
      default: false
      example: true
    ReturnUrl:
      description: "URL, на который вернется пользователь после подтверждения или отмены платежа на веб-странице. Не более 2048 символов."
      type: "string"
      maxLength: 2048
    ConfirmationType:
      description: "Тип пользовательского процесса подтверждения платежа | - redirect - необходимо направить пользователя на страницу партнера; - external - необходимо подождать, пока пользователь самостоятельно подтвердит платеж; - qr - необходимо сгенерировать QR-код и отобразить его на странице оплаты, чтобы пользователь смог подтвердить платеж; - embedded - необходимо отобразить платежный виджет ЮKassa; - mobile_application - необходимо перенаправить пользователя в приложение партнера для оплаты."
      type: "string"
      enum:
      - "redirect"
      - "external"
      - "qr"
      - "embedded"
      - "mobile_application"
      example: "redirect"
    Confirmation:
      description: "Выбранный способ подтверждения платежа. Присутствует, когда платеж ожидает подтверждения от пользователя. Подробнее о сценариях подтверждения: https://yookassa.ru/developers/payment-acceptance/getting-started/payment-process#user-confirmation"
      type: "object"
      properties:
        type:
          $ref: "#/components/schemas/ConfirmationType"
      discriminator:
        propertyName: "type"
        mapping:
          redirect: "#/components/schemas/ConfirmationRedirect"
          external: "#/components/schemas/ConfirmationExternal"
          qr: "#/components/schemas/ConfirmationQr"
          embedded: "#/components/schemas/ConfirmationEmbedded"
          mobile_application: "#/components/schemas/ConfirmationMobileApplication"
      required:
      - "type"
    ConfirmationUrl:
      description: "URL, на который необходимо перенаправить пользователя для подтверждения оплаты."
      type: "string"
    BankCardFirst6:
      description: "Первые 6 цифр номера карты (BIN). При оплате картой, сохраненной в ЮKassa: https://yookassa.ru/developers/payment-acceptance/scenario-extensions/recurring-payments/basics и других сервисах, переданный BIN может не соответствовать значениям last4, expiry_year, expiry_month."
      type: "string"
      pattern: "[0-9]{6}"
      example: "427918"
    BankCardLast4:
      description: "Последние 4 цифры номера карты."
      type: "string"
      pattern: "[0-9]{4}"
      example: "7918"
    BankCardExpiryYear:
      description: "Срок действия, год, YYYY."
      type: "string"
      pattern: "[0-9]{4}"
      example: "2017"
    BankCardExpiryMonth:
      description: "Срок действия, месяц, MM."
      type: "string"
      example: "07"
    BankCardType:
      description: "Тип банковской карты. Возможные значения: MasterCard (для карт Mastercard и Maestro), Visa (для карт Visa и Visa Electron), Mir, UnionPay, JCB, AmericanExpress, DinersClub, DiscoverCard, InstaPayment, InstaPaymentTM, Laser, Dankort, Solo, Switch и Unknown."
      type: "string"
      enum:
      - "MasterCard"
      - "Visa"
      - "Mir"
      - "UnionPay"
      - "JCB"
      - "AmericanExpress"
      - "DinersClub"
      - "DiscoverCard"
      - "InstaPayment"
      - "InstaPaymentTM"
      - "Laser"
      - "Dankort"
      - "Solo"
      - "Switch"
      - "Unknown"
    PaymentMethodType:
      description: "Код способа оплаты — тип платежного средства, которое используется для оплаты. Подробнее о способах оплаты: https://yookassa.ru/developers/payment-acceptance/getting-started/payment-methods"
      type: "string"
      enum:
      - "bank_card"
      - "cash"
      - "alfabank"
      - "webmoney"
      - "wechat"
      - "apple_pay"
      - "google_pay"
      - "qiwi"
      - "installments"
      - "yoo_money"
      - "sberbank"
      - "mobile_balance"
      - "b2b_sberbank"
      - "tinkoff_bank"
      - "sbp"
      - "sber_loan"
      - "electronic_certificate"
      - "sber_bnpl"
      example: "bank_card"
    PaymentMethodStatus:
      type: "string"
      description: "Статус проверки и сохранения способа оплаты. Возможные значения: pending — ожидает действий от пользователя; active — способ оплаты сохранен, его можно использовать для автоплатежей или выплат; inactive — способ оплаты не сохранен: пользователь не подтвердил привязку платежного средства или при сохранении способа оплаты возникла ошибка. Чтобы узнать подробности, обратитесь в техническую поддержку ЮKassa."
      enum:
      - "pending"
      - "active"
      - "inactive"
      example: "active"
    PaymentMethodTitle:
      description: "Название способа оплаты."
      type: "string"
      example: "Основная карта"
    PaymentMethod:
      type: "object"
      description: "Способ оплаты: https://yookassa.ru/developers/payment-acceptance/getting-started/payment-methods#all, который был использован для этого платежа."
      properties:
        type:
          $ref: "#/components/schemas/PaymentMethodType"
        id:
          description: "Идентификатор способа оплаты."
          type: "string"
          example: "1da5c87d-0984-50e8-a7f3-8de646dd9ec9"
        saved:
          description: "Признак сохранения способа оплаты для автоплатежей: https://yookassa.ru/developers/payment-acceptance/scenario-extensions/recurring-payments/pay-with-saved. Возможные значения: true — способ оплаты сохранен для автоплатежей и выплат; false — способ оплаты не сохранен."
          type: "boolean"
          example: true
        status:
          allOf:
          - $ref: "#/components/schemas/PaymentMethodStatus"
          - description: "Статус проверки и сохранения способа оплаты. Возможные значения: pending — ожидает действий от пользователя; active — способ оплаты сохранен, его можно использовать для автоплатежей или выплат; inactive — способ оплаты не сохранен: возникла ошибка или не было попытки сохранения способа оплаты."
        title:
          $ref: "#/components/schemas/PaymentMethodTitle"
      discriminator:
        propertyName: "type"
        mapping:
          bank_card: "#/components/schemas/PaymentMethodBankCard"
          cash: "#/components/schemas/PaymentMethodCash"
          qiwi: "#/components/schemas/PaymentMethodQiwi"
          alfabank: "#/components/schemas/PaymentMethodAlfabank"
          webmoney: "#/components/schemas/PaymentMethodWebmoney"
          apple_pay: "#/components/schemas/PaymentMethodApplePay"
          google_pay: "#/components/schemas/PaymentMethodGooglePay"
          yoo_money: "#/components/schemas/PaymentMethodYooMoney"
          sberbank: "#/components/schemas/PaymentMethodSberbank"
          mobile_balance: "#/components/schemas/PaymentMethodMobileBalance"
          installments: "#/components/schemas/PaymentMethodInstallments"
          b2b_sberbank: "#/components/schemas/PaymentMethodB2bSberbank"
          tinkoff_bank: "#/components/schemas/PaymentMethodTinkoffBank"
          wechat: "#/components/schemas/PaymentMethodWeChat"
          sbp: "#/components/schemas/PaymentMethodSbp"
          sber_loan: "#/components/schemas/PaymentMethodSberLoan"
          electronic_certificate: "#/components/schemas/PaymentMethodElectronicCertificate"
          sber_bnpl: "#/components/schemas/PaymentMethodSberBnpl"
      required:
      - "type"
      - "id"
      - "saved"
      - "status"
    BankCardData:
      type: "object"
      description: "Данные банковской карты."
      properties:
        first6:
          $ref: "#/components/schemas/BankCardFirst6"
        last4:
          $ref: "#/components/schemas/BankCardLast4"
        expiry_year:
          $ref: "#/components/schemas/BankCardExpiryYear"
        expiry_month:
          $ref: "#/components/schemas/BankCardExpiryMonth"
        card_type:
          $ref: "#/components/schemas/BankCardType"
        card_product:
          $ref: "#/components/schemas/BankCardProduct"
        issuer_country:
          $ref: "#/components/schemas/BankCardIssuerCountry"
        issuer_name:
          $ref: "#/components/schemas/BankCardIssuerName"
        source:
          $ref: "#/components/schemas/BankCardDataSource"
      required:
      - "last4"
      - "expiry_year"
      - "expiry_month"
      - "card_type"
    BankCardProduct:
      description: "Карточный продукт платежной системы, с которым ассоциирована банковская карта. Например, карточные продукты платежной системы Мир: Mir Classic, Mir Classic Credit, MIR Privilege Plus и другие."
      type: "object"
      properties:
        code:
          type: "string"
          description: "Код карточного продукта. Пример: MCP"
          example: "MCP"
        name:
          type: "string"
          description: "Название карточного продукта. Пример: MIR Privilege"
          example: "MIR Privilege"
      required:
      - "code"
    BankCardIssuerCountry:
      description: "Код страны, в которой выпущена карта. Передается в формате ISO-3166 alpha-2: https://www.iso.org/obp/ui/#iso:pub:PUB500001:en. Пример: RU."
      type: "string"
      example: "RU"
    BankCardIssuerName:
      description: "Наименование банка, выпустившего карту."
      type: "string"
      example: "Sberbank"
    BankCardDataSource:
      description: "Источник данных банковской карты. Возможные значения: mir_pay, apple_pay, google_pay. Присутствует, если пользователь при оплате выбрал карту, сохраненную в Mir Pay, Apple Pay или Google Pay."
      type: "string"
      enum:
      - "apple_pay"
      - "google_pay"
      - "mir_pay"
    InvoicingBankCardData:
      type: "object"
      description: "Данные банковской карты."
      properties:
        first6:
          allOf:
          - $ref: "#/components/schemas/BankCardFirst6"
          - description: "Первые 6 цифр номера карты (BIN)."
        last4:
          $ref: "#/components/schemas/BankCardLast4"
        expiry_year:
          $ref: "#/components/schemas/BankCardExpiryYear"
        expiry_month:
          $ref: "#/components/schemas/BankCardExpiryMonth"
        card_type:
          $ref: "#/components/schemas/BankCardType"
      required:
      - "first6"
      - "last4"
      - "expiry_year"
      - "expiry_month"
      - "card_type"
    SbpPayerBankDetails:
      description: "Реквизиты счета, который использовался для оплаты. Обязательный параметр для платежей в статусе succeeded. В остальных случаях может отсутствовать."
      type: "object"
      properties:
        bank_id:
          $ref: "#/components/schemas/SbpBankId"
        bic:
          allOf:
          - $ref: "#/components/schemas/SbpBankBic"
          - description: "Банковский идентификационный код (БИК) банка или платежного сервиса. Используйте значение этого параметра, чтобы узнать дополнительные сведения об организации в Справочнике БИК: https://cbr.ru/PSystem/payment_system/?utm_source=w&utm_content=page#a_101477. Например, так вы можете определить название банка."
      required:
      - "bank_id"
      - "bic"
    PaymentPurpose:
      description: "Назначение платежа (не больше 210 символов)."
      type: "string"
      pattern: ".{1,210}"
      example: "Оплата по договору №2143"
    B2bSberbankCalculatedVatData:
      description: "Данные об НДС, если товар или услуга облагается налогом (в параметре type передано значение calculated)."
      allOf:
      - $ref: "#/components/schemas/B2bSberbankVatData"
      - type: "object"
        properties:
          rate:
            type: "string"
            enum:
            - 5
            - 7
            - 10
            - 20
            description: "Налоговая ставка (в процентах). Возможные значения: 5, 7, 10 и 20."
            example: 20
          amount:
            allOf:
            - $ref: "#/components/schemas/MonetaryAmount"
            - description: "Сумма НДС."
        required:
        - "rate"
        - "amount"
    B2bSberbankUntaxedVatData:
      description: "Данные об НДС, если товар или услуга не облагается налогом (в параметре type передано значение untaxed)."
      allOf:
      - $ref: "#/components/schemas/B2bSberbankVatData"
      - type: "object"
    B2bSberbankMixedVatData:
      description: "Данные об НДС, если создается платеж на несколько товаров или услуг с разными ставками НДС (в параметре type передано значение mixed)."
      allOf:
      - $ref: "#/components/schemas/B2bSberbankVatData"
      - type: "object"
        properties:
          amount:
            allOf:
            - $ref: "#/components/schemas/MonetaryAmount"
            - description: "Сумма НДС."
        required:
        - "amount"
    B2bSberbankPayerBankDetails:
      description: "Банковские реквизиты плательщика (юридического лица или ИП)."
      type: "object"
      properties:
        full_name:
          description: "Полное наименование организации."
          type: "string"
          maxLength: 800
          example: "Общество с ограниченной ответственностью 'Организация'"
        short_name:
          description: "Сокращенное наименование организации."
          type: "string"
          maxLength: 160
          example: "ООО 'Организация'"
        address:
          description: "Адрес организации."
          type: "string"
          example: "197111, Российская Федерация, г.Санкт-Петербург, ул.3-й Северовокзальный, д.17, корп./стр.2, кв.16"
          maxLength: 500
        inn:
          description: "Индивидуальный налоговый номер (ИНН) организации."
          type: "string"
          pattern: "\\d{10}|\\d{12}"
          example: 7728662610
        bank_name:
          description: "Наименование банка организации."
          type: "string"
          minLength: 1
          maxLength: 350
          example: "СЕВЕРО-ЗАПАДНЫЙ БАНК ПАО СБЕРБАНК"
        bank_branch:
          description: "Отделение банка организации."
          type: "string"
          minLength: 1
          maxLength: 140
          example: "СЕВЕРО-ЗАПАДНЫЙ БАНК СБЕРБАНКА РФ"
        bank_bik:
          description: "Банковский идентификационный код (БИК) банка организации."
          type: "string"
          pattern: "\\d{9}"
          example: 9449899
        account:
          description: "Номер счета организации."
          type: "string"
          pattern: "\\d{20}"
          example: 40702810355002140000
        kpp:
          description: "Код причины постановки на учет (КПП) организации."
          type: "string"
          pattern: "\\d{9}"
          example: 783501610
      required:
      - "full_name"
      - "short_name"
      - "address"
      - "inn"
      - "bank_name"
      - "bank_branch"
      - "bank_bik"
      - "account"
    ElectronicCertificatePayment:
      type: "object"
      description: "Данные от ФЭС НСПК для оплаты по электронному сертификату."
      properties:
        amount:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Сумма, которая спишется с электронного сертификата."
        basket_id:
          allOf:
          - $ref: "#/components/schemas/BasketId"
          - description: "Идентификатор корзины покупки, сформированной в НСПК."
      required:
      - "amount"
      - "basket_id"
    ElectronicCertificateApprovedPaymentArticle:
      type: "object"
      description: "Товарная позиция в одобренной корзине покупки при оплате по электронному сертификату."
      properties:
        article_number:
          $ref: "#/components/schemas/ElectronicCertificateArticleNumber"
        tru_code:
          $ref: "#/components/schemas/ElectronicCertificateTruCode"
        article_code:
          $ref: "#/components/schemas/ElectronicCertificateArticleCode"
        certificates:
          type: "array"
          description: "Список электронных сертификатов, которые используются для оплаты покупки."
          items:
            $ref: "#/components/schemas/ElectronicCertificate"
      required:
      - "article_number"
      - "tru_code"
      - "certificates"
    BasketId:
      description: "Идентификатор корзины, сформированной в НСПК."
      type: "string"
      pattern: "[0-9]{24}"
      example: "110200010001100000000001"
    B2bSberbankVatDataType:
      description: "Тип способа расчета НДС."
      type: "string"
      enum:
      - "calculated"
      - "untaxed"
      - "mixed"
      example: "calculated"
    B2bSberbankVatData:
      discriminator:
        propertyName: "type"
        mapping:
          calculated: "#/components/schemas/B2bSberbankCalculatedVatData"
          untaxed: "#/components/schemas/B2bSberbankUntaxedVatData"
          mixed: "#/components/schemas/B2bSberbankMixedVatData"
      description: "Данные о налоге на добавленную стоимость (НДС). Платеж может облагаться или не облагаться НДС. Товары могут облагаться по одной ставке НДС или по разным."
      type: "object"
      properties:
        type:
          $ref: "#/components/schemas/B2bSberbankVatDataType"
      required:
      - "type"
    ElectronicCertificateArticleNumber:
      description: "Порядковый номер товара в корзине. От 1 до 999 включительно."
      type: "integer"
      format: "int32"
      minimum: 1
      maximum: 999
      example: 1
    ElectronicCertificateTruCode:
      description: "Код ТРУ. 30 символов, две группы цифр, разделенные точкой. Формат: NNNNNNNNN.NNNNNNNNNYYYYMMMMZZZ, где NNNNNNNNN.NNNNNNNNN — код вида ТРУ по Перечню ТРУ: https://esnsi.gosuslugi.ru/classifiers/10616/data?pg=1&p=1, YYYY — код производителя, MMMM — код модели, ZZZ — код страны производителя. Пример: 329921120.06001010200080001643 Как сформировать код ТРУ: https://yookassa.ru/developers/payment-acceptance/integration-scenarios/manual-integration/other/electronic-certificate/basics#payments-preparations-tru-code"
      example: "329921120.06001010200080001643"
      type: "string"
      minLength: 30
      maxLength: 30
    ElectronicCertificateArticleCode:
      description: "Код товара в вашей системе. Максимум 128 символов."
      example: "432"
      type: "string"
      maxLength: 128
    ElectronicCertificate:
      type: "object"
      description: "Описание используемого электронного сертификата."
      properties:
        certificate_id:
          type: "string"
          description: "Идентификатор сертификата. От 20 до 30 символов."
          minLength: 20
          maxLength: 30
        tru_quantity:
          type: "integer"
          description: "Количество единиц товара, которое одобрили для оплаты по этому электронному сертификату."
        available_compensation:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Максимально допустимая сумма, которую может покрыть электронный сертификат для оплаты одной единицы товара. Пример: сертификат может компенсировать максимум 1000 рублей для оплаты этого товара."
        applied_compensation:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Сумма, которую одобрили для оплаты по сертификату за одну единицу товара. Пример: из 1000 рублей одобрили 500 рублей для оплаты по сертификату."
      required:
      - "certificate_id"
      - "tru_quantity"
      - "available_compensation"
      - "applied_compensation"
    Rrn:
      type: "string"
      description: "Retrieval Reference Number — идентификатор банковской транзакции."
      example: "603668680243"
    ThreeDSecureDetails:
      type: "object"
      description: "Данные о прохождении пользователем аутентификации по 3‑D Secure для подтверждения платежа."
      properties:
        applied:
          type: "boolean"
          description: "Отображение пользователю формы для прохождения аутентификации по 3‑D Secure. Возможные значения: true — ЮKassa отобразила пользователю форму, чтобы он мог пройти аутентификацию по 3‑D Secure; false — платеж проходил без аутентификации по 3‑D Secure."
          example: true
      required:
      - "applied"
    AccountId:
      description: "Идентификатор магазина в ЮKassa."
      type: "string"
      example: "123"
    TransferStatus:
      description: "Статус распределения денег между магазинами. Возможные значения: pending, waiting_for_capture, succeeded, canceled."
      type: "string"
      enum:
      - "pending"
      - "waiting_for_capture"
      - "succeeded"
      - "canceled"
      example: "succeeded"
    Metadata:
      type: "object"
      description: "Любые дополнительные данные, которые нужны вам для работы (например, ваш внутренний идентификатор заказа). Передаются в виде набора пар «ключ-значение» и возвращаются в ответе от ЮKassa. Ограничения: максимум 16 ключей, имя ключа не больше 32 символов, значение ключа не больше 512 символов, тип данных — строка в формате UTF-8."
      maxProperties: 16
      additionalProperties:
        type: "string"
        nullable: true
    DealId:
      description: "Идентификатор сделки."
      minLength: 36
      maxLength: 50
      type: "string"
      example: "dl-d68d2fe4-2abb-47e5-8112-32e28f87fb52"
    SettlementPaymentArray:
      type: "array"
      description: "Данные о распределении денег."
      items:
        oneOf:
        - $ref: "#/components/schemas/SettlementPayoutPayment"
        discriminator:
          propertyName: "type"
    SettlementPayoutPayment:
      allOf:
      - $ref: "#/components/schemas/SettlementPaymentItem"
      - type: "object"
    SettlementPaymentItem:
      type: "object"
      description: "Данные о распределении денег."
      properties:
        type:
          $ref: "#/components/schemas/SettlementItemType"
        amount:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Сумма вознаграждения продавца."
      discriminator:
        propertyName: "type"
        mapping:
          payout: "#/components/schemas/SettlementPayoutPayment"
      required:
      - "type"
      - "amount"
    SettlementItemType:
      description: "Тип операции."
      type: "string"
      enum:
      - "payout"
      example: "payout"
    PaymentId:
      type: "string"
      description: "Идентификатор платежа в ЮKassa."
      minLength: 36
      maxLength: 36
      example: "1da5c87d-0984-50e8-a7f3-8de646dd9ec9"
    PaymentStatus:
      description: "Статус платежа. Возможные значения: pending, waiting_for_capture, succeeded и canceled. Подробнее про жизненный цикл платежа: https://yookassa.ru/developers/payment-acceptance/getting-started/payment-process#lifecycle"
      type: "string"
      enum:
      - "pending"
      - "waiting_for_capture"
      - "succeeded"
      - "canceled"
      example: "succeeded"
    PaymentMethodBankCard:
      description: "Оплата банковской картой."
      allOf:
      - $ref: "#/components/schemas/PaymentMethod"
      - type: "object"
        properties:
          card:
            $ref: "#/components/schemas/BankCardData"
        required:
        - "id"
        - "saved"
        - "status"
    PaymentMethodCash:
      description: "Оплата наличными в терминалах."
      allOf:
      - $ref: "#/components/schemas/PaymentMethod"
      - type: "object"
    PaymentMethodQiwi:
      description: "Оплата из кошелька QIWI Wallet."
      allOf:
      - $ref: "#/components/schemas/PaymentMethod"
      - type: "object"
    PaymentMethodAlfabank:
      description: "Оплата через Альфа-Клик."
      allOf:
      - $ref: "#/components/schemas/PaymentMethod"
      - type: "object"
        properties:
          login:
            description: "Логин пользователя в Альфа-Клике (привязанный телефон или дополнительный логин)."
            type: "string"
        required:
        - "id"
        - "saved"
        - "status"
    PaymentMethodWebmoney:
      description: "Оплата из кошелька WebMoney."
      allOf:
      - $ref: "#/components/schemas/PaymentMethod"
      - type: "object"
    PaymentMethodSberbank:
      description: "Оплата через SberPay."
      allOf:
      - $ref: "#/components/schemas/PaymentMethod"
      - type: "object"
        properties:
          phone:
            description: "Телефон пользователя, на который зарегистрирован аккаунт в SberPay. Указывается в формате ITU-T E.164: https://ru.wikipedia.org/wiki/E.164, например 79000000000."
            type: "string"
            pattern: "[0-9]{4,15}"
            example: "79000000000"
          card:
            $ref: "#/components/schemas/InvoicingBankCardData"
        required:
        - "id"
        - "saved"
        - "status"
    PaymentMethodTinkoffBank:
      description: "Оплата через T-Pay."
      allOf:
      - $ref: "#/components/schemas/PaymentMethod"
      - type: "object"
        properties:
          card:
            $ref: "#/components/schemas/InvoicingBankCardData"
    PaymentMethodYooMoney:
      description: "Оплата из кошелька ЮMoney."
      allOf:
      - $ref: "#/components/schemas/PaymentMethod"
      - type: "object"
        properties:
          account_number:
            description: "Номер кошелька ЮMoney, из которого заплатил пользователь."
            type: "string"
            pattern: "[0-9]{11,33}"
            example: "41001184120504"
        required:
        - "id"
        - "saved"
        - "status"
    PaymentMethodApplePay:
      description: "Оплата через Apple Pay."
      allOf:
      - $ref: "#/components/schemas/PaymentMethod"
      - type: "object"
        required:
        - "id"
        - "saved"
        - "status"
    PaymentMethodGooglePay:
      description: "Оплата через Google Pay."
      allOf:
      - $ref: "#/components/schemas/PaymentMethod"
      - type: "object"
    PaymentMethodMobileBalance:
      description: "Оплата с баланса мобильного телефона."
      allOf:
      - $ref: "#/components/schemas/PaymentMethod"
      - type: "object"
    PaymentMethodInstallments:
      description: "Оплата через сервис «Заплатить по частям» (в кредит или рассрочку)."
      allOf:
      - $ref: "#/components/schemas/PaymentMethod"
      - type: "object"
    PaymentMethodB2bSberbank:
      description: "Оплата через Сбербанк Бизнес Онлайн."
      allOf:
      - $ref: "#/components/schemas/PaymentMethod"
      - type: "object"
        properties:
          payment_purpose:
            $ref: "#/components/schemas/PaymentPurpose"
          vat_data:
            oneOf:
            - $ref: "#/components/schemas/B2bSberbankCalculatedVatData"
            - $ref: "#/components/schemas/B2bSberbankUntaxedVatData"
            - $ref: "#/components/schemas/B2bSberbankMixedVatData"
            discriminator:
              propertyName: "type"
          payer_bank_details:
            $ref: "#/components/schemas/B2bSberbankPayerBankDetails"
        required:
        - "id"
        - "saved"
        - "status"
        - "payment_purpose"
        - "vat_data"
    PaymentMethodWeChat:
      description: "Оплата через WeChat."
      allOf:
      - $ref: "#/components/schemas/PaymentMethod"
      - type: "object"
    PaymentMethodSbp:
      description: "Оплата через СБП (Система быстрых платежей ЦБ РФ)."
      allOf:
      - $ref: "#/components/schemas/PaymentMethod"
      - type: "object"
        properties:
          sbp_operation_id:
            description: "Идентификатор операции в СБП (НСПК). Пример: 1027088AE4CB48CB81287833347A8777 Обязательный параметр для платежей в статусе succeeded. В остальных случаях может отсутствовать."
            type: "string"
            example: "1027088AE4CB48CB81287833347A8777"
          payer_bank_details:
            $ref: "#/components/schemas/SbpPayerBankDetails"
        required:
        - "id"
        - "saved"
        - "status"
    PaymentMethodSberLoan:
      description: "Оплата в кредит или рассрочку от СберБанка."
      allOf:
      - $ref: "#/components/schemas/PaymentMethod"
      - type: "object"
        properties:
          loan_option:
            description: "Тариф кредита, который пользователь выбрал при оплате. Возможные значения: loan — кредит; installments_XX — рассрочка, где XX — количество месяцев для выплаты рассрочки. Например, installments_3 — рассрочка на 3 месяца. Присутствует для платежей в статусе waiting_for_capture и succeeded."
            type: "string"
            example: "installments_3"
            minLength: 1
          discount_amount:
            allOf:
            - $ref: "#/components/schemas/MonetaryAmount"
            - description: "Сумма скидки для рассрочки. Присутствует для платежей в статусе waiting_for_capture и succeeded, если пользователь выбрал рассрочку."
          suspended_until:
            description: "Время, когда заканчивается период охлаждения: https://yookassa.ru/docs/support/payments/credit-purchases-by-sberbank-with-cooling-off кредита или рассрочки. Указывается по 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. Присутствует для платежей в статусе pending, которые по закону: https://www.consultant.ru/document/cons_doc_LAW_498604/ попадают под процедуру охлаждения."
            type: "string"
            format: "date-time"
            example: "2017-11-03T11:52:31.827Z"
        required:
        - "id"
        - "saved"
        - "status"
    PaymentMethodElectronicCertificate:
      description: "Оплата по электронному сертификату."
      allOf:
      - $ref: "#/components/schemas/PaymentMethod"
      - type: "object"
        properties:
          card:
            allOf:
            - $ref: "#/components/schemas/BankCardData"
            - description: "Данные банковской карты «Мир»."
          electronic_certificate:
            $ref: "#/components/schemas/ElectronicCertificatePayment"
          articles:
            type: "array"
            description: "Одобренная корзина покупки — список товаров, одобренных к оплате по электронному сертификату. Присутствует только при оплате на готовой странице ЮKassa: https://yookassa.ru/developers/payment-acceptance/integration-scenarios/manual-integration/other/electronic-certificate/ready-made-payment-form."
            items:
              $ref: "#/components/schemas/ElectronicCertificateApprovedPaymentArticle"
    PaymentMethodSberBnpl:
      description: "Оплата через сервис «Плати частями»."
      allOf:
      - $ref: "#/components/schemas/PaymentMethod"
      - type: "object"
    ConfirmationRedirect:
      allOf:
      - $ref: "#/components/schemas/Confirmation"
      - type: "object"
        properties:
          enforce:
            $ref: "#/components/schemas/Enforce"
          return_url:
            $ref: "#/components/schemas/ReturnUrl"
          confirmation_url:
            $ref: "#/components/schemas/ConfirmationUrl"
        required:
        - "confirmation_url"
    ConfirmationExternal:
      type: "object"
      allOf:
      - $ref: "#/components/schemas/Confirmation"
    ConfirmationQr:
      allOf:
      - $ref: "#/components/schemas/Confirmation"
      - type: "object"
        properties:
          confirmation_data:
            description: "Данные для генерации QR-кода."
            type: "string"
        required:
        - "confirmation_data"
    ConfirmationEmbedded:
      allOf:
      - $ref: "#/components/schemas/Confirmation"
      - type: "object"
        properties:
          confirmation_token:
            type: "string"
            description: "Токен для инициализации платежного виджета ЮKassa: https://yookassa.ru/developers/payment-acceptance/integration-scenarios/widget/basics."
            example: "ct-22e12f66-000f-5000-8000-18db351245c7"
        required:
        - "confirmation_token"
    ConfirmationMobileApplication:
      allOf:
      - $ref: "#/components/schemas/Confirmation"
      - type: "object"
        properties:
          confirmation_url:
            allOf:
            - $ref: "#/components/schemas/ConfirmationUrl"
            - description: "Диплинк на мобильное приложение, в котором пользователь подтверждает платеж."
            type: "string"
        required:
        - "confirmation_url"
    Test:
      description: "Признак тестовой операции."
      type: "boolean"
      example: false
    ReceiptRegistrationStatus:
      type: "string"
      enum:
      - "pending"
      - "succeeded"
      - "canceled"
      example: "succeeded"
    PaymentCancellationDetails:
      type: "object"
      description: "Комментарий к статусу canceled: кто отменил платеж и по какой причине. Подробнее про неуспешные платежи: https://yookassa.ru/developers/payment-acceptance/after-the-payment/declined-payments"
      properties:
        party:
          type: "string"
          description: "Участник процесса платежа, который принял решение об отмене транзакции. Может принимать значения yoo_money, payment_network и merchant. Подробнее про инициаторов отмены платежа: https://yookassa.ru/developers/payment-acceptance/after-the-payment/declined-payments#cancellation-details-party"
          enum:
          - "yoo_money"
          - "payment_network"
          - "merchant"
        reason:
          type: "string"
          description: "Причина отмены платежа. Перечень и описание возможных значений: https://yookassa.ru/developers/payment-acceptance/after-the-payment/declined-payments#cancellation-details-reason"
          example: "insufficient_funds"
          enum:
          - "3d_secure_failed"
          - "call_issuer"
          - "card_expired"
          - "payment_method_limit_exceeded"
          - "payment_method_restricted"
          - "country_forbidden"
          - "general_decline"
          - "fraud_suspected"
          - "identification_required"
          - "insufficient_funds"
          - "invalid_card_number"
          - "invalid_csc"
          - "issuer_unavailable"
          - "canceled_by_merchant"
          - "permission_revoked"
          - "internal_timeout"
          - "expired_on_confirmation"
          - "expired_on_capture"
          - "unsupported_mobile_operator"
          - "deal_expired"
      required:
      - "party"
      - "reason"
    AuthorizationDetails:
      type: "object"
      description: "Данные об авторизации платежа при оплате банковской картой. Присутствуют только для этих способов оплаты: банковская карта, Mir Pay, SberPay, T-Pay."
      properties:
        rrn:
          $ref: "#/components/schemas/Rrn"
        auth_code:
          type: "string"
          description: "Код авторизации. Выдается эмитентом и подтверждает проведение авторизации."
          example: "062467"
        three_d_secure:
          $ref: "#/components/schemas/ThreeDSecureDetails"
      required:
      - "three_d_secure"
    Transfer:
      type: "object"
      description: "Данные о распределении денег — сколько и в какой магазин нужно перевести. Присутствует, если вы используете Сплитование платежей: https://yookassa.ru/developers/solutions-for-platforms/split-payments/basics."
      properties:
        account_id:
          allOf:
          - $ref: "#/components/schemas/AccountId"
          - description: "Идентификатор магазина, в пользу которого вы принимаете оплату. Выдается ЮKassa, отображается в разделе Продавцы: https://yookassa.ru/my/marketplace/sellers личного кабинета (столбец shopId)."
        amount:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Сумма, которую необходимо перечислить магазину."
          - type: "object"
        status:
          $ref: "#/components/schemas/TransferStatus"
        platform_fee_amount:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Комиссия за проданные товары и услуги, которая удерживается с магазина в вашу пользу."
          - type: "object"
        description:
          description: "Описание транзакции (не более 128 символов), которое продавец увидит в личном кабинете ЮKassa. Например: «Заказ маркетплейса №72»."
          type: "string"
          maxLength: 128
          example: "Заказ маркетплейса №72"
        metadata:
          $ref: "#/components/schemas/Metadata"
      required:
      - "account_id"
      - "amount"
      - "status"
    PaymentDealInfo:
      type: "object"
      properties:
        id:
          $ref: "#/components/schemas/DealId"
        settlements:
          $ref: "#/components/schemas/SettlementPaymentArray"
      required:
      - "id"
      - "settlements"
    MerchantCustomerId:
      description: "Идентификатор покупателя в вашей системе, например электронная почта или номер телефона. Не более 200 символов."
      type: "string"
      maxLength: 200
      example: "user@test.merchant"
    InvoiceId:
      description: "Идентификатор счета в ЮKassa."
      type: "string"
      minLength: 39
      maxLength: 39
      example: "in-e44e8088-bd73-43b1-959a-954f3a7d0c54"
    PaymentMethodId:
      description: "Идентификатор сохраненного способа оплаты: https://yookassa.ru/developers/payment-acceptance/scenario-extensions/recurring-payments/basics."
      type: "string"
      example: "1da5c87d-0984-50e8-a7f3-8de646dd9ec9"
    PaymentMethodDataBankCard:
      description: "Данные для оплаты банковской картой."
      allOf:
      - $ref: "#/components/schemas/PaymentMethodData"
      - type: "object"
        properties:
          card:
            $ref: "#/components/schemas/CardRequestDataWithCsc"
    PaymentMethodDataCash:
      description: "Данные для оплаты наличными в терминалах России или СНГ."
      allOf:
      - $ref: "#/components/schemas/PaymentMethodData"
      - type: "object"
        properties:
          phone:
            description: "Телефон пользователя, на который придет смс с кодом платежа (для внесения наличных). Указывается в формате ITU-T E.164: https://ru.wikipedia.org/wiki/E.164, например 79000000000. Поле можно оставить пустым: пользователь сможет заполнить его при оплате на стороне ЮKassa."
            type: "string"
            pattern: "[0-9]{4,15}"
            example: "79000000000"
    PaymentMethodDataSberbank:
      description: "Данные для оплаты через SberPay."
      allOf:
      - $ref: "#/components/schemas/PaymentMethodData"
      - type: "object"
        properties:
          phone:
            description: "Телефон пользователя, на который зарегистрирован аккаунт в SberPay. Необходим для подтверждения оплаты по смс (сценарий подтверждения external). Указывается в формате ITU-T E.164: https://ru.wikipedia.org/wiki/E.164, например 79000000000."
            type: "string"
            pattern: "[0-9]{4,15}"
            example: "79000000000"
    PaymentMethodDataTinkoffBank:
      description: "Данные для оплаты через T-Pay."
      allOf:
      - $ref: "#/components/schemas/PaymentMethodData"
      - type: "object"
    PaymentMethodDataYooMoney:
      description: "Данные для проведения оплаты из кошелька ЮMoney."
      allOf:
      - $ref: "#/components/schemas/PaymentMethodData"
      - type: "object"
    PaymentMethodDataMobileBalance:
      description: "Данные для оплаты с баланса мобильного телефона."
      allOf:
      - $ref: "#/components/schemas/PaymentMethodData"
      - type: "object"
        properties:
          phone:
            description: "Телефон, с баланса которого осуществляется платеж. Указывается в формате ITU-T E.164: https://ru.wikipedia.org/wiki/E.164, например 79000000000."
            type: "string"
            pattern: "[0-9]{4,15}"
            example: "79000000000"
        required:
        - "phone"
    PaymentMethodDataB2bSberbank:
      description: "Данные для оплаты через СберБанк Бизнес Онлайн."
      allOf:
      - $ref: "#/components/schemas/PaymentMethodData"
      - type: "object"
        properties:
          payment_purpose:
            $ref: "#/components/schemas/PaymentPurpose"
          vat_data:
            oneOf:
            - $ref: "#/components/schemas/B2bSberbankCalculatedVatData"
            - $ref: "#/components/schemas/B2bSberbankUntaxedVatData"
            - $ref: "#/components/schemas/B2bSberbankMixedVatData"
            discriminator:
              propertyName: "type"
        required:
        - "payment_purpose"
        - "vat_data"
    PaymentMethodDataSbp:
      description: "Данные для оплаты через СБП"
      allOf:
      - $ref: "#/components/schemas/PaymentMethodData"
      - type: "object"
    PaymentMethodDataSberLoan:
      description: "Данные для оплаты в кредит или рассрочку от СберБанка."
      allOf:
      - $ref: "#/components/schemas/PaymentMethodData"
      - type: "object"
    PaymentMethodDataElectronicCertificate:
      description: "Данные для оплаты по электронному сертификату."
      allOf:
      - $ref: "#/components/schemas/PaymentMethodData"
      - type: "object"
        properties:
          card:
            $ref: "#/components/schemas/CardRequestDataWithCsc"
          electronic_certificate:
            $ref: "#/components/schemas/ElectronicCertificatePaymentData"
          articles:
            description: "Корзина покупки (в терминах НСПК) — список товаров, которые можно оплатить по сертификату. Необходимо передавать только при оплате на готовой странице ЮKassa: https://yookassa.ru/developers/payment-acceptance/integration-scenarios/manual-integration/other/electronic-certificate/ready-made-payment-form."
            type: "array"
            items:
              $ref: "#/components/schemas/ElectronicCertificateArticle"
    PaymentMethodDataSberBnpl:
      description: "Данные для оплаты через сервис «Плати частями»."
      allOf:
      - $ref: "#/components/schemas/PaymentMethodData"
      - type: "object"
        properties:
          phone:
            allOf:
            - $ref: "#/components/schemas/Phone"
            - description: "Номер телефона пользователя. Передается партнеру и используется для авторизации в сервисе «Плати частями». Максимум 15 символов. Указывается в формате ITU-T E.164: https://ru.wikipedia.org/wiki/E.164. Пример: 79000000000."
    ConfirmationDataRedirect:
      allOf:
      - $ref: "#/components/schemas/ConfirmationData"
      - type: "object"
        properties:
          enforce:
            $ref: "#/components/schemas/Enforce"
          return_url:
            $ref: "#/components/schemas/ReturnUrl"
        required:
        - "return_url"
    ConfirmationDataExternal:
      type: "object"
      allOf:
      - $ref: "#/components/schemas/ConfirmationData"
      - type: "object"
    ConfirmationDataQr:
      allOf:
      - $ref: "#/components/schemas/ConfirmationData"
      - type: "object"
        properties:
          return_url:
            allOf:
            - $ref: "#/components/schemas/ReturnUrl"
            - description: "Адрес страницы, на которую пользователь вернется после подтверждения или отмены платежа в приложении банка. Например, если хотите вернуть пользователя на сайт, вы можете передать URL, если в мобильное приложение — диплинк. URI должен соответствовать стандарту RFC-3986: https://www.ietf.org/rfc/rfc3986.txt. Не более 2048 символов. Доступно только для платежей через СБП: https://yookassa.ru/developers/payment-acceptance/integration-scenarios/manual-integration/other/sbp."
    ConfirmationDataEmbedded:
      allOf:
      - $ref: "#/components/schemas/ConfirmationData"
      - type: "object"
    ConfirmationDataMobileApplication:
      allOf:
      - $ref: "#/components/schemas/ConfirmationData"
      - type: "object"
        properties:
          return_url:
            allOf:
            - $ref: "#/components/schemas/ReturnUrl"
            - description: "URL или диплинк, на который вернется пользователь после подтверждения или отмены платежа в приложении. Если платеж делали из мобильной версии сайта, передайте URL, если из мобильного приложения — диплинк. Не более 2048 символов."
        required:
        - "return_url"
    SavePaymentMethodAttribute:
      description: "Сохранение платежных данных для проведения автоплатежей: https://yookassa.ru/developers/payment-acceptance/scenario-extensions/recurring-payments/basics. Возможные значения: true — сохранить способ оплаты (сохранить платежные данные); false — провести платеж без сохранения способа оплаты. Доступно только после согласования с менеджером ЮKassa."
      type: "boolean"
      default: false
      example: true
    Capture:
      description: "Автоматический прием: https://yookassa.ru/developers/payment-acceptance/getting-started/payment-process#capture-true поступившего платежа. Возможные значения: true — оплата списывается сразу (платеж в одну стадию); false — оплата холдируется и списывается по вашему запросу (платеж в две стадии: https://yookassa.ru/developers/payment-acceptance/getting-started/payment-process#capture-and-cancel). По умолчанию false."
      type: "boolean"
      default: false
      example: true
    ClientIp:
      description: "IPv4 или IPv6-адрес пользователя. Если не указан, используется IP-адрес TCP-подключения."
      type: "string"
    Airline:
      description: "Объект с данными для продажи авиабилетов: https://yookassa.ru/developers/payment-acceptance/scenario-extensions/airline-tickets. Используется только для платежей банковской картой."
      type: "object"
      properties:
        ticket_number:
          description: "Уникальный номер билета. Если при создании платежа вы уже знаете номер билета, тогда ticket_number — обязательный параметр. Если не знаете, тогда вместо ticket_number необходимо передать booking_reference с номером бронирования."
          type: "string"
          minLength: 1
          maxLength: 150
          pattern: "[0-9]{1,150}"
          example: "5554916004417"
        booking_reference:
          description: "Номер бронирования. Обязателен, если не передан ticket_number."
          type: "string"
          minLength: 1
          maxLength: 20
          example: "IIIKRV"
        passengers:
          description: "Список пассажиров."
          type: "array"
          minItems: 0
          maxItems: 500
          items:
            $ref: "#/components/schemas/AirlinePassenger"
        legs:
          description: "Список перелетов."
          type: "array"
          minItems: 0
          maxItems: 4
          items:
            $ref: "#/components/schemas/AirlineLeg"
    TransferDataPayment:
      allOf:
      - $ref: "#/components/schemas/TransferData"
      - type: "object"
        properties:
          description:
            description: "Описание транзакции (не более 128 символов), которое продавец увидит в личном кабинете ЮKassa. Например: «Заказ маркетплейса №72»."
            type: "string"
            maxLength: 128
            example: "Заказ маркетплейса №72"
          metadata:
            $ref: "#/components/schemas/Metadata"
    PaymentOrderDataUtilities:
      description: "Платежное поручение — распоряжение на перевод банку для оплаты жилищно-коммунальных услуг (ЖКУ), сведения о платеже для регистрации в ГИС ЖКХ. Необходимо передавать при оплате ЖКУ: https://yookassa.ru/developers/payment-acceptance/scenario-extensions/utility-payments. Кроме параметров, отмеченных как обязательные, должен быть передан как минимум один параметр из этого списка: payment_document_id, payment_document_number, account_number, unified_account_number или service_id."
      allOf:
      - $ref: "#/components/schemas/PaymentOrderData"
      - type: "object"
        properties:
          amount:
            allOf:
            - $ref: "#/components/schemas/MonetaryAmount"
            - description: "Сумма платежного поручения — сумма, которую пользователь переводит получателю платежа. Равна общей сумме платежа."
          payment_purpose:
            allOf:
            - $ref: "#/components/schemas/PaymentPurpose"
            - description: "Назначение платежа (не больше 210 символов). Рекомендуется формировать с учетом рекомендаций из Письма Банка России № ИН-04-45|12 от 22.02.2018: https://my.dom.gosuslugi.ru/filestore/publicDownloadServlet?context=contentmanagement&uid=ef9a477a-2beb-4212-be30-aed231160db1&mode=view. Пример: Оплата ЖКХ;ЕЛС 80KX478547;ПРД 12.2024;Иванов Иван;г.Москва, ул.Флотская, д.1, кв.1"
          recipient:
            allOf:
            - $ref: "#/components/schemas/PaymentOrderRecipient"
            - description: "Получатель платежа — государственная или коммерческая организация, которая предоставляет услуги или является информационным посредником, который собирает и обрабатывает начисления от других поставщиков услуг."
          kbk:
            $ref: "#/components/schemas/Kbk"
          oktmo:
            $ref: "#/components/schemas/Oktmo"
          payment_period:
            $ref: "#/components/schemas/PaymentPeriod"
          payment_document_id:
            type: "string"
            description: "Идентификатор платежного документа. Обязательный параметр, если не передан payment_document_number, account_number, unified_account_number или service_id."
            minLength: 18
            maxLength: 18
            example: "34СТ185329-01-2352"
          payment_document_number:
            type: "string"
            description: "Номер платежного документа на стороне поставщика ЖКУ. Обязательный параметр, если не передан payment_document_id, account_number, unified_account_number или service_id."
            minLength: 1
            maxLength: 30
            pattern: "(.)([0-9а-яА-Яa-zA-Z]+)(.)"
          account_number:
            type: "string"
            description: "Номер лицевого счета на стороне поставщика ЖКУ. Обязательный параметр, если не передан payment_document_id, payment_document_number, unified_account_number или service_id."
            minLength: 1
            maxLength: 30
            pattern: "(.)([0-9а-яА-Яa-zA-Z]+)(.)"
          unified_account_number:
            type: "string"
            description: "Единый лицевой счет. Уникальный идентификатор в ГИС ЖКХ, который характеризует связку «собственник-помещение». Обязательный параметр, если не передан payment_document_id, payment_document_number, account_number или service_id."
            minLength: 10
            maxLength: 10
            example: "60АА000593"
          service_id:
            type: "string"
            description: "Идентификатор жилищно-коммунальной услуги (ЖКУ). Обязательный параметр, если не передан payment_document_id, payment_document_number, account_number или unified_account_number."
            minLength: 13
            maxLength: 13
            example: "34СТ185329-01"
        required:
        - "amount"
        - "payment_purpose"
        - "recipient"
    ReceiverMobileBalance:
      description: "Реквизиты для пополнения баланса телефона."
      allOf:
      - $ref: "#/components/schemas/Receiver"
      - type: "object"
        properties:
          phone:
            allOf:
            - $ref: "#/components/schemas/Phone"
            - {}
            - description: "Номер телефона для пополнения. Максимум 15 символов. Указывается в формате ITU-T E.164: https://ru.wikipedia.org/wiki/E.164. Пример: 79000000000."
        required:
        - "phone"
    ReceiverDigitalWallet:
      description: "Реквизиты для пополнения баланса электронного кошелька."
      allOf:
      - $ref: "#/components/schemas/Receiver"
      - type: "object"
        properties:
          account_number:
            description: "Идентификатор электронного кошелька для пополнения. Максимум 20 символов."
            type: "string"
            maxLength: 20
            example: "N41001184120504"
        required:
        - "account_number"
    ReceiverBankAccount:
      description: "Реквизиты для пополнения банковского счета."
      allOf:
      - $ref: "#/components/schemas/Receiver"
      - type: "object"
        properties:
          account_number:
            description: "Номер банковского счета. Формат — 20 символов."
            type: "string"
            maxLength: 20
            pattern: "\\d{20}"
            example: "40817810099910004312"
          bic:
            description: "Банковский идентификационный код (БИК) банка, в котором открыт счет. Формат — 9 символов."
            type: "string"
            maxLength: 9
            pattern: "\\d{9}"
            example: "044525974"
        required:
        - "account_number"
        - "bic"
    Payment:
      type: "object"
      description: "Объект платежа (Payment) — актуальная информация о платеже."
      properties:
        id:
          $ref: "#/components/schemas/PaymentId"
        status:
          $ref: "#/components/schemas/PaymentStatus"
        amount:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Сумма платежа. Иногда партнеры ЮKassa берут с пользователя дополнительную комиссию, которая не входит в эту сумму. Сумма указывается с кодом валюты. Если вы разделяете потоки платежей, валюта платежа должна соответствовать валюте субаккаунта (recipient.gateway_id), если не разделяете — валюте аккаунта shopId в личном кабинете)."
        income_amount:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Сумма платежа, которую получит магазин, — значение amount за вычетом комиссии ЮKassa. Если вы партнер: https://yookassa.ru/developers/solutions-for-platforms/partners-api/basics и для аутентификации запросов используете OAuth-токен, запросите у магазина право: https://yookassa.ru/developers/solutions-for-platforms/partners-api/oauth/basics на получение информации о комиссиях при платежах."
        description:
          allOf:
          - $ref: "#/components/schemas/Description"
          - description: "Описание транзакции (не более 128 символов), которое вы увидите в личном кабинете ЮKassa, а пользователь — при оплате. Например: «Оплата заказа № 72 для user@yoomoney.ru»."
        recipient:
          description: "Получатель платежа."
          type: "object"
          properties:
            account_id:
              $ref: "#/components/schemas/AccountId"
            gateway_id:
              $ref: "#/components/schemas/GatewayId"
          required:
          - "account_id"
          - "gateway_id"
        payment_method:
          oneOf:
          - $ref: "#/components/schemas/PaymentMethodBankCard"
          - $ref: "#/components/schemas/PaymentMethodCash"
          - $ref: "#/components/schemas/PaymentMethodQiwi"
          - $ref: "#/components/schemas/PaymentMethodAlfabank"
          - $ref: "#/components/schemas/PaymentMethodWebmoney"
          - $ref: "#/components/schemas/PaymentMethodSberbank"
          - $ref: "#/components/schemas/PaymentMethodTinkoffBank"
          - $ref: "#/components/schemas/PaymentMethodYooMoney"
          - $ref: "#/components/schemas/PaymentMethodApplePay"
          - $ref: "#/components/schemas/PaymentMethodGooglePay"
          - $ref: "#/components/schemas/PaymentMethodMobileBalance"
          - $ref: "#/components/schemas/PaymentMethodInstallments"
          - $ref: "#/components/schemas/PaymentMethodB2bSberbank"
          - $ref: "#/components/schemas/PaymentMethodWeChat"
          - $ref: "#/components/schemas/PaymentMethodSbp"
          - $ref: "#/components/schemas/PaymentMethodSberLoan"
          - $ref: "#/components/schemas/PaymentMethodElectronicCertificate"
          - $ref: "#/components/schemas/PaymentMethodSberBnpl"
          discriminator:
            propertyName: "type"
        captured_at:
          description: "Время подтверждения платежа. Указывается по 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."
          type: "string"
          format: "date-time"
          example: "2017-11-03T11:52:31.827Z"
        created_at:
          description: "Время создания заказа. Указывается по 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"
          type: "string"
          format: "date-time"
          example: "2017-11-03T11:52:31.827Z"
        expires_at:
          description: "Время, до которого вы можете бесплатно отменить или подтвердить платеж. В указанное время платеж в статусе waiting_for_capture будет автоматически отменен. Указывается по 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"
          type: "string"
          format: "date-time"
          example: "2017-11-03T11:52:31.827Z"
        confirmation:
          oneOf:
          - $ref: "#/components/schemas/ConfirmationRedirect"
          - $ref: "#/components/schemas/ConfirmationExternal"
          - $ref: "#/components/schemas/ConfirmationQr"
          - $ref: "#/components/schemas/ConfirmationEmbedded"
          - $ref: "#/components/schemas/ConfirmationMobileApplication"
          discriminator:
            propertyName: "type"
        test:
          $ref: "#/components/schemas/Test"
        refunded_amount:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Сумма, которая вернулась пользователю. Присутствует, если у этого платежа есть успешные возвраты."
        paid:
          description: "Признак оплаты заказа."
          type: "boolean"
          example: true
        refundable:
          description: "Возможность провести возврат по API."
          type: "boolean"
          example: true
        receipt_registration:
          allOf:
          - $ref: "#/components/schemas/ReceiptRegistrationStatus"
          - description: "Статус регистрации чека. Возможные значения: pending — данные в обработке; succeeded — чек успешно зарегистрирован; canceled — чек зарегистрировать не удалось; если используете Чеки от ЮKassa: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/yoomoney/basics, обратитесь в техническую поддержку, в остальных случаях сформируйте чек вручную. Присутствует, если вы используете решения ЮKassa для отправки чеков в налоговую: https://yookassa.ru/developers/payment-acceptance/receipts/basics."
        metadata:
          $ref: "#/components/schemas/Metadata"
        cancellation_details:
          $ref: "#/components/schemas/PaymentCancellationDetails"
        authorization_details:
          $ref: "#/components/schemas/AuthorizationDetails"
        transfers:
          description: "Данные о распределении денег — сколько и в какой магазин нужно перевести. Присутствует, если вы используете Сплитование платежей: https://yookassa.ru/developers/solutions-for-platforms/split-payments/basics."
          type: "array"
          items:
            $ref: "#/components/schemas/Transfer"
        deal:
          allOf:
          - $ref: "#/components/schemas/PaymentDealInfo"
          - description: "Данные о сделке, в составе которой проходит платеж. Присутствует, если вы проводите Безопасную сделку: https://yookassa.ru/developers/solutions-for-platforms/safe-deal/basics."
        merchant_customer_id:
          allOf:
          - $ref: "#/components/schemas/MerchantCustomerId"
          - description: "Идентификатор покупателя в вашей системе, например электронная почта или номер телефона. Не более 200 символов. Присутствует, если вы хотите запомнить банковскую карту и отобразить ее при повторном платеже в виджете ЮKassa: https://yookassa.ru/developers/payment-acceptance/integration-scenarios/widget/basics."
        invoice_details:
          type: "object"
          description: "Данные о выставленном счете, в рамках которого проведен платеж."
          properties:
            id:
              $ref: "#/components/schemas/InvoiceId"
      required:
      - "id"
      - "status"
      - "amount"
      - "created_at"
      - "paid"
      - "test"
      - "refundable"
      - "recipient"
    Error:
      description: "Объект ошибки."
      type: "object"
      properties:
        type:
          type: "string"
          description: "Тип объекта."
          enum:
          - "error"
        id:
          type: "string"
          description: "Идентификатор ошибки. Используйте его, если возникла необходимость обратиться в техническую поддержку."
          example: "ecf255db-cce8-4f15-8fc2-3d7a4678c867"
        description:
          type: "string"
          description: "Подробное описание ошибки."
          example: "Invalid API key provided"
        parameter:
          type: "string"
          description: "Название параметра, из-за которого произошла ошибка."
          example: "payment_method"
        retry_after:
          type: "integer"
          description: "Рекомендуемое количество миллисекунд, спустя которое следует повторить запрос."
          example: 1800
    BadRequest:
      description: "Запрос не может быть обработан. Причиной может быть неправильный синтаксис запроса, ошибка в обязательных параметрах запроса, их отсутствие или неподдерживаемый метод."
      type: "object"
      allOf:
      - $ref: "#/components/schemas/Error"
      - type: "object"
        properties:
          code:
            description: "Код ошибки"
            type: "string"
            enum:
            - "invalid_request"
    InvalidCredentials:
      description: "В заголовке Authorization указан неверный ключ."
      type: "object"
      allOf:
      - $ref: "#/components/schemas/Error"
      - type: "object"
        properties:
          code:
            description: "Код ошибки"
            type: "string"
            enum:
            - "invalid_credentials"
    Forbidden:
      description: "Секретный ключ указан верно, но не хватает прав для совершения операции."
      type: "object"
      allOf:
      - $ref: "#/components/schemas/Error"
      - type: "object"
        properties:
          code:
            description: "Код ошибки."
            type: "string"
            enum:
            - "forbidden"
    NotFound:
      description: "Сущность не найдена."
      type: "object"
      allOf:
      - $ref: "#/components/schemas/Error"
      - type: "object"
        properties:
          code:
            description: "Код ошибки."
            type: "string"
            enum:
            - "not_found"
    Gone:
      description: "Сущность была раньше, но была умышленно удалена и теперь недоступна."
      type: "object"
      allOf:
      - $ref: "#/components/schemas/Error"
      - type: "object"
        properties:
          code:
            description: "Код ошибки."
            type: "string"
            enum:
            - "gone"
    TooManyRequests:
      description: "Слишком много запросов одновременно отправляется в API. Повторите запрос позже."
      type: "object"
      allOf:
      - $ref: "#/components/schemas/Error"
      - type: "object"
        properties:
          code:
            description: "Код ошибки."
            type: "string"
            enum:
            - "too_many_requests"
    NextCursor:
      description: "Указатель на следующий фрагмент списка. Обязательный параметр, если размер списка больше размера выдачи (limit) и конец выдачи не достигнут."
      type: "string"
      example: "37a5c87d-3984-51e8-a7f3-8de646d39ec15"
    TransferDataCapture:
      allOf:
      - $ref: "#/components/schemas/TransferData"
    PaymentMethodData:
      type: "object"
      description: "Данные для оплаты конкретным способом: https://yookassa.ru/developers/payment-acceptance/integration-scenarios/manual-integration/basics#integration-options (payment_method). Вы можете не передавать этот объект в запросе. В этом случае пользователь будет выбирать способ оплаты на стороне ЮKassa."
      properties:
        type:
          type: "string"
          enum:
          - "bank_card"
          - "cash"
          - "sberbank"
          - "tinkoff_bank"
          - "yoo_money"
          - "mobile_balance"
          - "b2b_sberbank"
          - "sbp"
          - "sber_loan"
          - "electronic_certificate"
          - "sber_bnpl"
      discriminator:
        propertyName: "type"
        mapping:
          bank_card: "#/components/schemas/PaymentMethodDataBankCard"
          cash: "#/components/schemas/PaymentMethodDataCash"
          sberbank: "#/components/schemas/PaymentMethodDataSberbank"
          tinkoff_bank: "#/components/schemas/PaymentMethodDataTinkoffBank"
          yoo_money: "#/components/schemas/PaymentMethodDataYooMoney"
          mobile_balance: "#/components/schemas/PaymentMethodDataMobileBalance"
          b2b_sberbank: "#/components/schemas/PaymentMethodDataB2bSberbank"
          sbp: "#/components/schemas/PaymentMethodDataSbp"
          sber_loan: "#/components/schemas/PaymentMethodDataSberLoan"
          electronic_certificate: "#/components/schemas/PaymentMethodDataElectronicCertificate"
          sber_bnpl: "#/components/schemas/PaymentMethodDataSberBnpl"
      required:
      - "type"
    CardRequestDataWithCsc:
      allOf:
      - $ref: "#/components/schemas/CardRequestData"
      type: "object"
      properties:
        csc:
          description: "Код CVC2 или CVV2, 3 или 4 символа, печатается на обратной стороне карты."
          type: "string"
          pattern: "[0-9]{3,4}"
          example: "012"
      required:
      - "number"
      - "expiry_year"
      - "expiry_month"
    ElectronicCertificatePaymentData:
      type: "object"
      description: "Данные от ФЭС НСПК для оплаты по электронному сертификату. Неоходимо передавать только при оплате со сбором данных на вашей стороне: https://yookassa.ru/developers/payment-acceptance/integration-scenarios/manual-integration/other/electronic-certificate/merchant-payment-form."
      properties:
        amount:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Сумма, которую необходимо использовать по электронному сертификату, — значение totalCertAmount, которое вы получили в ФЭС НСПК в запросе на предварительное одобрение использования сертификата (Pre-Auth): https://www.nspk.ru/developer/api-fes#operation/preAuthPurchase. Сумма должна быть не больше общей суммы платежа (amount)."
        basket_id:
          allOf:
          - $ref: "#/components/schemas/BasketId"
          - description: "Идентификатор корзины покупки, сформированной в НСПК, — значение purchaseBasketId, которое вы получили в ФЭС НСПК в запросе на предварительное одобрение использования сертификата (Pre-Auth): https://www.nspk.ru/developer/api-fes#operation/preAuthPurchase."
      required:
      - "amount"
      - "basket_id"
    ElectronicCertificateArticle:
      type: "object"
      description: "Товарная позиция в корзине покупки при оплате по электронному сертификату."
      properties:
        article_number:
          $ref: "#/components/schemas/ElectronicCertificateArticleNumber"
        tru_code:
          $ref: "#/components/schemas/ElectronicCertificateTruCode"
        article_code:
          $ref: "#/components/schemas/ElectronicCertificateArticleCode"
        article_name:
          description: "Название товара в вашей системе. Отображается на готовой платежной форме ЮKassa. Максимум 128 символов."
          example: "Item #432"
          type: "string"
          maxLength: 128
        quantity:
          $ref: "#/components/schemas/ElectronicCertificateArticleQuantity"
        price:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Цена за единицу товара."
        metadata:
          $ref: "#/components/schemas/Metadata"
      required:
      - "article_number"
      - "tru_code"
      - "article_name"
      - "quantity"
      - "price"
    ElectronicCertificateArticleQuantity:
      description: "Количество единиц товара. Формат: целое положительное число."
      example: 4
      type: "integer"
      format: "int32"
    TransferData:
      type: "object"
      description: "Данные о распределении денег — сколько и в какой магазин нужно перевести. Необходимо передавать, если вы используете Сплитование платежей: https://yookassa.ru/developers/solutions-for-platforms/split-payments/basics."
      properties:
        account_id:
          allOf:
          - $ref: "#/components/schemas/AccountId"
          - description: "Идентификатор магазина, в пользу которого вы принимаете оплату. Выдается ЮKassa, отображается в разделе Продавцы: https://yookassa.ru/my/marketplace/sellers личного кабинета (столбец shopId)."
        amount:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Сумма, которую необходимо перевести магазину."
          - type: "object"
        platform_fee_amount:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Комиссия за проданные товары и услуги, которая удерживается с магазина в вашу пользу."
          - type: "object"
      required:
      - "account_id"
      - "amount"
    AirlinePassenger:
      description: "Информация о пассажире."
      type: "object"
      properties:
        first_name:
          description: "Имя пассажира. Необходимо использовать латинские буквы, например SERGEI."
          type: "string"
          minLength: 1
          maxLength: 64
          example: "SERGEI"
        last_name:
          description: "Фамилия пассажира. Необходимо использовать латинские буквы, например IVANOV."
          type: "string"
          minLength: 1
          maxLength: 64
          example: "IVANOV"
      required:
      - "first_name"
      - "last_name"
    AirlineLeg:
      description: "Информация о перелете."
      type: "object"
      properties:
        departure_airport:
          description: "Код аэропорта вылета по справочнику IATA: https://www.iata.org/publications/Pages/code-search.aspx, например LED."
          type: "string"
          minLength: 3
          maxLength: 3
          pattern: "[A-Z]{3}"
          example: "LED"
        destination_airport:
          description: "Код аэропорта прилета по справочнику IATA: https://www.iata.org/publications/Pages/code-search.aspx, например AMS."
          type: "string"
          minLength: 3
          maxLength: 3
          pattern: "[A-Z]{3}"
          example: "AMS"
        departure_date:
          description: "Дата вылета в формате YYYY-MM-DD по стандарту ISO 8601:2004: http://www.iso.org/iso/catalogue_detail?csnumber=40874."
          type: "string"
          format: "date"
          example: "2018-06-20"
        carrier_code:
          description: "Код авиакомпании по справочнику IATA: https://www.iata.org/publications/Pages/code-search.aspx."
          type: "string"
          minLength: 2
          maxLength: 3
          example: "SU"
      required:
      - "departure_airport"
      - "destination_airport"
      - "departure_date"
    PaymentOrderData:
      type: "object"
      description: "Платежное поручение — распоряжение на перевод банку для оплаты жилищно-коммунальных услуг (ЖКУ), сведения о платеже для регистрации в ГИС ЖКХ. Необходимо передавать при оплате ЖКУ: https://yookassa.ru/developers/payment-acceptance/scenario-extensions/utility-payments."
      properties:
        type:
          type: "string"
          enum:
          - "utilities"
      discriminator:
        propertyName: "type"
        mapping:
          utilities: "#/components/schemas/PaymentOrderDataUtilities"
      required:
      - "type"
    PaymentOrderRecipient:
      type: "object"
      description: "Получатель платежа"
      properties:
        name:
          type: "string"
          description: "Название получателя."
        inn:
          type: "string"
          description: "ИНН получателя."
          pattern: "[0-9]{10}"
        kpp:
          type: "string"
          description: "КПП получателя."
          pattern: "[0-9]{9}"
        bank:
          allOf:
          - $ref: "#/components/schemas/PaymentOrderBank"
          - description: "Банк получателя."
      required:
      - "name"
      - "inn"
      - "kpp"
      - "bank"
    Kbk:
      type: "string"
      description: "Код бюджетной классификации (КБК)."
      minLength: 1
      maxLength: 20
      pattern: "([\\d]{20})|(0)"
      example: "70311105013130000120"
    Oktmo:
      type: "string"
      description: "Код ОКТМО (Общероссийский классификатор территорий муниципальных образований)."
      minLength: 1
      maxLength: 8
      pattern: "([\\d]{8})|(0)"
      example: "98627153"
    PaymentPeriod:
      type: "object"
      description: "Период оплаты, за который выставлены начисления и за который вносится оплата."
      properties:
        month:
          type: "integer"
          description: "Месяц периода. Например, 1 — январь."
          minimum: 1
          maximum: 12
        year:
          type: "integer"
          description: "Год периода. Например, 2025."
      required:
      - "month"
      - "year"
    PaymentOrderBank:
      type: "object"
      description: "Банк получателя платежа."
      properties:
        name:
          type: "string"
          description: "Название банка получателя."
        bic:
          type: "string"
          description: "БИК банка получателя."
          pattern: "[0-9]{9}"
        account:
          type: "string"
          description: "Счет получателя в банке."
        correspondent_account:
          type: "string"
          description: "Корреспондентский счет банка получателя."
      required:
      - "name"
      - "bic"
      - "account"
      - "correspondent_account"
    ReceiverType:
      description: "Код получателя оплаты."
      type: "string"
      enum:
      - "mobile_balance"
      - "digital_wallet"
      - "bank_account"
      example: "mobile_balance"
    Receiver:
      discriminator:
        propertyName: "type"
        mapping:
          mobile_balance: "#/components/schemas/ReceiverMobileBalance"
          digital_wallet: "#/components/schemas/ReceiverDigitalWallet"
          bank_account: "#/components/schemas/ReceiverBankAccount"
      description: "Реквизиты получателя оплаты при пополнении электронного кошелька, банковского счета или баланса телефона: https://yookassa.ru/developers/payment-acceptance/scenario-extensions/receiver-data."
      type: "object"
      properties:
        type:
          $ref: "#/components/schemas/ReceiverType"
      required:
      - "type"
    SavePaymentMethodDataBankCard:
      description: "Данные для проверки и сохранения банковской карты."
      allOf:
      - $ref: "#/components/schemas/SavePaymentMethodData"
      - type: "object"
        properties:
          card:
            $ref: "#/components/schemas/CardRequestDataWithCsc"
    SavePaymentMethodBankCard:
      description: "Сохраненная банковская карта."
      allOf:
      - $ref: "#/components/schemas/SavePaymentMethod"
      - type: "object"
        properties:
          card:
            $ref: "#/components/schemas/BankCardData"
        required:
        - "id"
        - "saved"
        - "status"
        - "holder"
    PaymentMethodsConfirmationAttrsRedirect:
      description: "Перенаправление пользователя на сайт ЮKassa для подтверждения привязки или страницу банка-эмитента для аутентификации по 3-D Secure."
      allOf:
      - $ref: "#/components/schemas/PaymentMethodsConfirmationAttrs"
      - type: "object"
        properties:
          enforce:
            allOf:
            - $ref: "#/components/schemas/Enforce"
            - description: "Запрос на проведение привязки с аутентификацией по 3-D Secure. Будет работать, если оплату банковской картой вы по умолчанию принимаете без подтверждения платежа пользователем. В остальных случаях аутентификацией по 3-D Secure будет управлять ЮKassa. Если хотите принимать платежи и создавать привязки без дополнительного подтверждения пользователем, напишите вашему менеджеру ЮKassa."
          return_url:
            allOf:
            - $ref: "#/components/schemas/ReturnUrl"
            - description: "URL, на который вернется пользователь после подтверждения или отмены привязки на веб-странице. Не более 2048 символов."
          locale:
            $ref: "#/components/schemas/Locale"
        required:
        - "return_url"
    PaymentMethodsConfirmationType:
      description: "Код сценария подтверждения пользователем привязки платежного средства к вашему магазину в ЮKassa."
      type: "string"
      enum:
      - "redirect"
      example: "redirect"
    PaymentMethodsConfirmationAttrs:
      description: "Данные, необходимые для инициирования сценария подтверждения привязки."
      type: "object"
      discriminator:
        propertyName: "type"
        mapping:
          redirect: "#/components/schemas/PaymentMethodsConfirmationAttrsRedirect"
      properties:
        type:
          $ref: "#/components/schemas/PaymentMethodsConfirmationType"
      required:
      - "type"
    PaymentMethodsConfirmation:
      description: "Выбранный сценарий подтверждения привязки. Присутствует, когда привязка ожидает подтверждения от пользователя."
      type: "object"
      discriminator:
        propertyName: "type"
        mapping:
          redirect: "#/components/schemas/PaymentMethodsConfirmationRedirect"
      properties:
        type:
          $ref: "#/components/schemas/PaymentMethodsConfirmationType"
      required:
      - "type"
    SavePaymentMethodData:
      type: "object"
      description: "Данные для проверки и сохранения способа оплаты."
      properties:
        type:
          type: "string"
          enum:
          - "bank_card"
        holder:
          allOf:
          - $ref: "#/components/schemas/Recipient"
          - description: "Данные магазина, для которого сохраняется способ оплаты."
        client_ip:
          $ref: "#/components/schemas/ClientIp"
        confirmation:
          oneOf:
          - $ref: "#/components/schemas/PaymentMethodsConfirmationAttrsRedirect"
      discriminator:
        propertyName: "type"
        mapping:
          bank_card: "#/components/schemas/SavePaymentMethodDataBankCard"
      required:
      - "type"
    SavePaymentMethodType:
      description: "Тип способа оплаты."
      type: "string"
      enum:
      - "bank_card"
      example: "bank_card"
    PaymentMethodsConfirmationRedirect:
      description: "Перенаправление пользователя на сайт ЮKassa для подтверждения привязки или страницу банка-эмитента для аутентификации по 3-D Secure."
      allOf:
      - $ref: "#/components/schemas/PaymentMethodsConfirmation"
      - type: "object"
        properties:
          confirmation_url:
            allOf:
            - $ref: "#/components/schemas/ConfirmationUrl"
            - description: "URL, на который необходимо перенаправить пользователя для подтверждения привязки."
          enforce:
            allOf:
            - $ref: "#/components/schemas/Enforce"
            - description: "Запрос на проведение привязки с аутентификацией по 3-D Secure. Будет работать, если оплату банковской картой вы по умолчанию принимаете без подтверждения платежа пользователем. В остальных случаях аутентификацией по 3-D Secure будет управлять ЮKassa. Если хотите принимать платежи и создавать привязки без дополнительного подтверждения пользователем, напишите вашему менеджеру ЮKassa."
          return_url:
            allOf:
            - $ref: "#/components/schemas/ReturnUrl"
            - description: "URL, на который вернется пользователь после подтверждения или отмены привязки на веб-странице. Не более 2048 символов."
        required:
        - "confirmation_url"
    SavePaymentMethod:
      type: "object"
      description: "Сохраненный способ оплаты."
      discriminator:
        propertyName: "type"
        mapping:
          bank_card: "#/components/schemas/SavePaymentMethodBankCard"
      properties:
        type:
          $ref: "#/components/schemas/SavePaymentMethodType"
        id:
          description: "Идентификатор сохраненного способа оплаты."
          type: "string"
          example: "1da5c87d-0984-50e8-a7f3-8de646dd9ec9"
        saved:
          description: "Признак сохранения способа оплаты для автоплатежей: https://yookassa.ru/developers/payment-acceptance/scenario-extensions/recurring-payments/pay-with-saved. Возможные значения: true — способ оплаты сохранен для автоплатежей и выплат; false — способ оплаты не сохранен."
          type: "boolean"
          example: true
        status:
          $ref: "#/components/schemas/PaymentMethodStatus"
        holder:
          description: "Данные магазина, для которого сохраняется способ оплаты."
          type: "object"
          properties:
            account_id:
              $ref: "#/components/schemas/AccountId"
            gateway_id:
              $ref: "#/components/schemas/GatewayId"
          required:
          - "account_id"
        title:
          $ref: "#/components/schemas/PaymentMethodTitle"
        confirmation:
          oneOf:
          - $ref: "#/components/schemas/PaymentMethodsConfirmationRedirect"
          discriminator:
            propertyName: "type"
            mapping:
              redirect: "#/components/schemas/PaymentMethodsConfirmationRedirect"
      required:
      - "id"
      - "type"
      - "saved"
      - "status"
      - "holder"
    PaymentData:
      type: "object"
      description: "Данные для проведения платежа по выставленному счету."
      properties:
        amount:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Сумма платежа. Должна укладываться в лимиты: https://yookassa.ru/docs/support/payments/limits. Сумма указывается с кодом валюты. Если вы разделяете потоки платежей, валюта платежа должна соответствовать валюте субаккаунта (recipient.gateway_id), если не разделяете — валюте аккаунта shopId в личном кабинете)."
        receipt:
          $ref: "#/components/schemas/ReceiptData"
        recipient:
          $ref: "#/components/schemas/Recipient"
        save_payment_method:
          $ref: "#/components/schemas/SavePaymentMethodAttribute"
        capture:
          $ref: "#/components/schemas/Capture"
        client_ip:
          $ref: "#/components/schemas/ClientIp"
        description:
          allOf:
          - $ref: "#/components/schemas/Description"
          - description: "Описание транзакции (не более 128 символов), которое вы увидите в личном кабинете ЮKassa, а пользователь — при оплате. Например: «Оплата заказа № 72 для user@yoomoney.ru»."
        metadata:
          $ref: "#/components/schemas/Metadata"
      required:
      - "amount"
    Cart:
      description: "Корзина заказа — список товаров или услуг, который отобразится на странице счета перед оплатой."
      type: "array"
      items:
        $ref: "#/components/schemas/LineItem"
    DeliveryMethodDataSelf:
      description: "Данные для выставления счета с самостоятельной доставкой ссылки на счет."
      allOf:
      - $ref: "#/components/schemas/DeliveryMethodData"
      - type: "object"
    InvoiceExpirationDate:
      type: "string"
      format: "date-time"
      description: "Срок действия счета — дата и время, до которых можно оплатить выставленный счет. Указывается по 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. Пример: 2024-10-18T10:51:18.139Z"
      example: "2024-10-18T10:51:18.139Z"
    Invoice:
      type: "object"
      description: "Объект счета (Invoice) — актуальная информация о счете."
      properties:
        id:
          $ref: "#/components/schemas/InvoiceId"
        status:
          $ref: "#/components/schemas/InvoiceStatus"
        cart:
          $ref: "#/components/schemas/Cart"
        delivery_method:
          oneOf:
          - $ref: "#/components/schemas/DeliveryMethodSelf"
          discriminator:
            propertyName: "type"
        payment_details:
          $ref: "#/components/schemas/PaymentDetails"
        created_at:
          type: "string"
          format: "date-time"
          description: "Дата и время создания счета на оплату. Указывается по 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"
          example: "2017-11-03T11:52:31.827Z"
        expires_at:
          allOf:
          - $ref: "#/components/schemas/InvoiceExpirationDate"
          - description: "Срок действия счета — дата и время, до которых можно оплатить выставленный счет. Указывается по 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. Пример: 2024-10-18T10:51:18.139Z Присутствует только для счетов в статусе pending."
        description:
          allOf:
          - $ref: "#/components/schemas/Description"
          - description: "Описание выставленного счета (не более 128 символов), которое вы увидите в личном кабинете ЮKassa, а пользователь на странице счета. Например: «Счет на оплату по договору 37»."
        cancellation_details:
          $ref: "#/components/schemas/InvoiceCancellationDetails"
        metadata:
          $ref: "#/components/schemas/Metadata"
      required:
      - "id"
      - "status"
      - "cart"
      - "created_at"
    InvoiceStatus:
      description: "Статус счета. Возможные значения: pending — счет создан и ожидает успешной оплаты; succeeded — счет успешно оплачен, есть связанный платеж в статусе succeeded (финальный и неизменяемый статус для платежей в одну стадию); canceled — вы отменили счет, успешный платеж по нему не поступил или был отменен (при оплате в две стадии) либо истек срок действия счета (финальный и неизменяемый статус). Подробнее про жизненный цикл счета: https://yookassa.ru/developers/payment-acceptance/scenario-extensions/invoices/basics#invoice-status"
      type: "string"
      enum:
      - "pending"
      - "succeeded"
      - "canceled"
      example: "succeeded"
    DeliveryMethodSelf:
      description: "Данные для самостоятельной доставки пользователю ссылки на счет."
      allOf:
      - $ref: "#/components/schemas/DeliveryMethod"
      - type: "object"
        properties:
          url:
            description: "URL страницы счета, который необходимо передать пользователю для оплаты. Не более 2048 символов."
            type: "string"
            maxLength: 2048
    PaymentDetails:
      type: "object"
      description: "Данные о платеже по выставленному счету. Присутствуют, только если платеж успешно подтвержден пользователем: https://yookassa.ru/developers/payment-acceptance/getting-started/payment-process#user-confirmation."
      properties:
        id:
          $ref: "#/components/schemas/PaymentId"
        status:
          allOf:
          - $ref: "#/components/schemas/PaymentStatus"
          - description: "Статус платежа. Возможные значения: waiting_for_capture — для платежей в две стадии: https://yookassa.ru/developers/payment-acceptance/getting-started/payment-process#capture-and-cancel: платеж оплачен, деньги авторизованы, вам необходимо списать оплату или отменить платеж; succeeded — платеж успешно завершен, деньги будут перечислены на ваш расчетный счет в соответствии с вашим договором с ЮKassa (финальный и неизменяемый статус); canceled — для платежей в две стадии: https://yookassa.ru/developers/payment-acceptance/getting-started/payment-process#capture-and-cancel: вы отменили платеж по API (финальный и неизменяемый статус)."
      required:
      - "id"
      - "status"
    InvoiceCancellationDetails:
      type: "object"
      description: "Комментарий к статусу canceled: кто отменил счет и по какой причине."
      properties:
        party:
          type: "string"
          description: "Участник процесса, который принял решение об отмене счета. Возможные значения: merchant — продавец товаров и услуг (вы); yoo_money — ЮKassa."
          enum:
          - "yoo_money"
          - "merchant"
        reason:
          type: "string"
          description: "Причина отмены счета. Возможные значения: invoice_canceled — счет отменен вручную: https://yookassa.ru/docs/support/merchant/invoices-to-clients/invoicing#invoicing__cancel из личного кабинета ЮKassa; invoice_expired — истек срок действия счета, который вы установили в запросе на создание счета в параметре expires_at, и по счету нет ни одного успешного платежа; general_decline — причина не детализирована, поэтому пользователю следует обратиться к инициатору отмены счета за уточнением подробностей; payment_canceled — платеж отменен по API: https://yookassa.ru/developers/payment-acceptance/getting-started/payment-process#cancel при оплате в две стадии; payment_expired_on_capture — истек срок списания оплаты: https://yookassa.ru/developers/payment-acceptance/getting-started/payment-process#hold для платежа в две стадии."
          example: "invoice_expired"
          enum:
          - "invoice_canceled"
          - "invoice_expired"
          - "general_decline"
          - "payment_canceled"
          - "payment_expired_on_capture"
      required:
      - "party"
      - "reason"
    LineItem:
      type: "object"
      description: "Данные о товаре или услуге в корзине."
      properties:
        description:
          description: "Название товара или услуги (от 1 до 128 символов). Пользователь увидит его на странице счета перед оплатой."
          type: "string"
        price:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Полная цена товара или услуги. Пользователь увидит ее на странице счета перед оплатой."
        discount_price:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Итоговая цена товара с учетом скидки. Если передана, то на странице счета цена отобразится с учетом скидки. Не нужно передавать, если пользователь оплачивает полную стоимость товара или услуги."
        quantity:
          description: "Количество товара. Можно передать целое или дробное число. Разделитель дробной части — точка, разделитель тысяч отсутствует, максимум три знака после точки. Пример: 5.000"
          type: "number"
          example: 1
      required:
      - "description"
      - "price"
      - "quantity"
    DeliveryMethodData:
      type: "object"
      description: "Данные о способе доставки счета пользователю. Доступен только один способ — самостоятельная доставка: ЮKassa возвращает вам ссылку на счет, и вы передаете ее пользователю любым удобным для вас способом."
      properties:
        type:
          type: "string"
          enum:
          - "self"
      discriminator:
        propertyName: "type"
        mapping:
          self: "#/components/schemas/DeliveryMethodDataSelf"
      required:
      - "type"
    DeliveryMethod:
      type: "object"
      description: "Данные о выбранном способе доставки счета. Присутствует только для счетов в статусе pending."
      properties:
        type:
          type: "string"
          enum:
          - "self"
      discriminator:
        propertyName: "type"
        mapping:
          self: "#/components/schemas/DeliveryMethodSelf"
      required:
      - "type"
    RefundSourcesData:
      type: "object"
      description: "Данные о том, с какого магазина и какую сумму нужно удержать для проведения возврата. Сейчас в этом параметре можно передать данные только одного магазина."
      properties:
        account_id:
          allOf:
          - $ref: "#/components/schemas/AccountId"
          - description: "Идентификатор магазина, для которого вы хотите провести возврат. Выдается ЮKassa, отображается в разделе Продавцы: https://yookassa.ru/my/marketplace/sellers личного кабинета (столбец shopId)."
        amount:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Сумма возврата."
          - type: "object"
        platform_fee_amount:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Комиссия, которую вы удержали при оплате, и хотите вернуть."
          - type: "object"
      required:
      - "account_id"
      - "amount"
    RefundDealData:
      type: "object"
      description: "Данные о сделке, в составе которой проходит возврат. Необходимо передавать, если вы проводите Безопасную сделку: https://yookassa.ru/developers/solutions-for-platforms/safe-deal/basics."
      properties:
        refund_settlements:
          $ref: "#/components/schemas/SettlementRefundArray"
      required:
      - "refund_settlements"
    ElectronicCertificateRefundMethodData:
      description: "Данные для возврата платежа по электронному сертификату."
      allOf:
      - $ref: "#/components/schemas/RefundMethodData"
      - type: "object"
        properties:
          electronic_certificate:
            $ref: "#/components/schemas/ElectronicCertificateRefundDataRequest"
          articles:
            type: "array"
            description: "Корзина возврата (в терминах НСПК) — список возвращаемых товаров, для оплаты которых использовался электронный сертификат. Данные должны соответствовать товарам из одобренной корзины покупки (articles в объекте платежа: https://yookassa.ru/developers/api#payment_object). Необходимо передавать только при оплате на готовой странице ЮKassa: https://yookassa.ru/developers/payment-acceptance/integration-scenarios/manual-integration/other/electronic-certificate/ready-made-payment-form."
            items:
              $ref: "#/components/schemas/ElectronicCertificateRefundArticle"
    Refund:
      description: "Объект возврата (Refund) — актуальная информация о возврате платежа."
      type: "object"
      properties:
        id:
          $ref: "#/components/schemas/RefundId"
        payment_id:
          $ref: "#/components/schemas/PaymentId"
        status:
          $ref: "#/components/schemas/RefundStatus"
        cancellation_details:
          $ref: "#/components/schemas/RefundCancellationDetails"
        receipt_registration:
          allOf:
          - $ref: "#/components/schemas/ReceiptRegistrationStatus"
          - description: "Статус регистрации чека. Возможные значения: pending — данные в обработке; succeeded — чек успешно зарегистрирован; canceled — чек зарегистрировать не удалось; если используете Чеки от ЮKassa: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/yoomoney/basics, обратитесь в техническую поддержку, в остальных случаях сформируйте чек вручную. Присутствует, если вы используете решения ЮKassa для отправки чеков в налоговую: https://yookassa.ru/developers/payment-acceptance/receipts/basics."
        created_at:
          description: "Время создания возврата. Указывается по 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"
          type: "string"
          format: "date-time"
          example: "2017-11-03T11:52:31.827Z"
        amount:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Сумма, возвращенная пользователю."
        description:
          description: "Основание для возврата денег пользователю."
          type: "string"
          maxLength: 250
        sources:
          description: "Данные о том, с какого магазина и какую сумму нужно удержать для проведения возврата. Присутствует, если вы используете Сплитование платежей: https://yookassa.ru/developers/solutions-for-platforms/split-payments/basics."
          type: "array"
          items:
            $ref: "#/components/schemas/RefundSourcesData"
        deal:
          $ref: "#/components/schemas/RefundDealInfo"
        refund_method:
          oneOf:
          - $ref: "#/components/schemas/SbpRefundMethod"
          - $ref: "#/components/schemas/ElectronicCertificateRefundMethod"
          discriminator:
            propertyName: "type"
        refund_authorization_details:
          $ref: "#/components/schemas/RefundAuthorizationDetails"
      required:
      - "id"
      - "payment_id"
      - "amount"
      - "status"
      - "created_at"
    RefundStatus:
      description: "Статус возврата платежа. Возможные значения: pending — возврат создан, но пока еще обрабатывается; succeeded — возврат успешно завершен, указанная в запросе сумма переведена на платежное средство пользователя (финальный и неизменяемый статус); canceled — возврат отменен, инициатор и причина отмены указаны в объекте cancellation_details (финальный и неизменяемый статус)."
      type: "string"
      enum:
      - "pending"
      - "succeeded"
      - "canceled"
      example: "succeeded"
    RefundId:
      description: "Идентификатор возврата платежа в ЮKassa."
      type: "string"
      minLength: 36
      maxLength: 36
      example: "1ddd77af-0bd7-500d-895b-c475c55fdefc"
    RefundCancellationDetails:
      type: "object"
      description: "Комментарий к статусу canceled: кто отменил возврат и по какой причине."
      properties:
        party:
          type: "string"
          description: "Участник процесса возврата, который принял решение отменить транзакцию. Перечень и описание возможных значений: https://yookassa.ru/developers/payment-acceptance/after-the-payment/refunds#declined-refunds-cancellation-details-party"
          example: "yoo_money"
          enum:
          - "yoo_money"
          - "refund_network"
        reason:
          type: "string"
          description: "Причина отмены возврата. Перечень и описание возможных значений: https://yookassa.ru/developers/payment-acceptance/after-the-payment/refunds#declined-refunds-cancellation-details-reason"
          example: "yoo_money_account_closed"
          enum:
          - "yoo_money_account_closed"
          - "insufficient_funds"
          - "general_decline"
          - "rejected_by_payee"
          - "rejected_by_timeout"
          - "payment_basket_id_not_found"
          - "payment_article_number_not_found"
          - "payment_tru_code_not_found"
          - "too_many_refunding_articles"
          - "some_articles_already_refunded"
      required:
      - "reason"
      - "party"
    RefundDealInfo:
      type: "object"
      description: "Данные о сделке, в составе которой проходит возврат. Присутствует, если вы проводите Безопасную сделку: https://yookassa.ru/developers/solutions-for-platforms/safe-deal/basics."
      properties:
        id:
          allOf:
          - $ref: "#/components/schemas/DealId"
          - description: "Идентификатор сделки. Берется из возвращаемого платежа."
        refund_settlements:
          $ref: "#/components/schemas/SettlementRefundArray"
      required:
      - "id"
      - "refund_settlements"
    SbpRefundMethod:
      description: "Данные для возврата платежа через СБП (НСПК)."
      allOf:
      - $ref: "#/components/schemas/RefundMethod"
      - type: "object"
        properties:
          sbp_operation_id:
            description: "Идентификатор операции в СБП (НСПК). Пример: 1027088AE4CB48CB81287833347A8777. Обязательный параметр для возвратов в статусе succeeded. В остальных случаях может отсутствовать."
            type: "string"
            example: "1027088AE4CB48CB81287833347A8777"
    ElectronicCertificateRefundMethod:
      description: "Возврат платежа по электронному сертификату."
      allOf:
      - $ref: "#/components/schemas/RefundMethod"
      - type: "object"
        properties:
          electronic_certificate:
            $ref: "#/components/schemas/ElectronicCertificateRefundDataResponse"
          articles:
            type: "array"
            description: "Корзина возврата — список возвращаемых товаров, для оплаты которых использовался электронный сертификат. Присутствует, если оплата была на готовой странице ЮKassa: https://yookassa.ru/developers/payment-acceptance/integration-scenarios/manual-integration/other/electronic-certificate/ready-made-payment-form."
            items:
              $ref: "#/components/schemas/ElectronicCertificateRefundArticle"
    RefundAuthorizationDetails:
      type: "object"
      description: "Данные об авторизации возврата. Присутствуют только для возвратов платежей, совершенных этими способами оплаты: банковская карта, Mir Pay."
      properties:
        rrn:
          $ref: "#/components/schemas/Rrn"
    SettlementRefundArray:
      type: "array"
      description: "Данные о распределении денег."
      items:
        oneOf:
        - $ref: "#/components/schemas/SettlementPayoutRefund"
        discriminator:
          propertyName: "type"
    RefundMethodData:
      type: "object"
      description: "Детали возврата. Зависят от способа оплаты, который использовался при проведении платежа."
      properties:
        type:
          $ref: "#/components/schemas/RefundMethodType"
      discriminator:
        propertyName: "type"
        mapping:
          electronic_certificate: "#/components/schemas/ElectronicCertificateRefundMethodData"
      required:
      - "type"
    ElectronicCertificateRefundDataRequest:
      type: "object"
      description: "Данные от ФЭС НСПК для возврата на электронный сертификат. Неоходимо передавать только при оплате со сбором данных на вашей стороне: https://yookassa.ru/developers/payment-acceptance/integration-scenarios/manual-integration/other/electronic-certificate/merchant-payment-form."
      properties:
        amount:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Сумма, которая вернется на электронный сертификат, — значение totalCertAmount, которое вы получили в ФЭС НСПК в запросе на предварительное одобрение возврата (Refund Pre-Auth): https://www.nspk.ru/developer/api-fes#tag/Protokol-FES-NSPK-v1/operation/preAuthReturn."
        basket_id:
          allOf:
          - $ref: "#/components/schemas/BasketId"
          - description: "Идентификатор корзины возврата, сформированной в НСПК, — значение returnBasketId, которое вы получили в ФЭС НСПК в запросе на предварительное одобрение возврата (Refund Pre-Auth): https://www.nspk.ru/developer/api-fes#tag/Protokol-FES-NSPK-v1/operation/preAuthReturn."
      required:
      - "amount"
      - "basket_id"
    ElectronicCertificateRefundArticle:
      type: "object"
      description: "Товарная позиция в корзине возврата при возврате на электронный сертификат."
      properties:
        article_number:
          allOf:
          - $ref: "#/components/schemas/ElectronicCertificateArticleNumber"
          - description: "Порядковый номер товара в корзине возврата. От 1 до 999 включительно."
        payment_article_number:
          allOf:
          - $ref: "#/components/schemas/ElectronicCertificateArticleNumber"
          - description: "Порядковый номер товара в одобренной корзине покупки (article_number в объекте платежа: https://yookassa.ru/developers/api#payment_object). От 1 до 999 включительно."
        tru_code:
          $ref: "#/components/schemas/ElectronicCertificateTruCode"
        quantity:
          type: "integer"
          format: "int32"
          minimum: 1
          description: "Количество возвращаемых единиц товара. Формат: целое положительное число."
          example: 10
      required:
      - "article_number"
      - "payment_article_number"
      - "tru_code"
      - "quantity"
    RefundMethodType:
      description: "Код способа оплаты, который использовался при проведении платежа."
      type: "string"
      enum:
      - "sbp"
      - "electronic_certificate"
      example: "sbp"
    RefundMethod:
      type: "object"
      description: "Детали возврата. Зависят от способа оплаты, который использовался при проведении платежа."
      properties:
        type:
          $ref: "#/components/schemas/RefundMethodType"
      discriminator:
        propertyName: "type"
        mapping:
          sbp: "#/components/schemas/SbpRefundMethod"
          electronic_certificate: "#/components/schemas/ElectronicCertificateRefundMethod"
      required:
      - "type"
    ElectronicCertificateRefundDataResponse:
      type: "object"
      description: "Данные от ФЭС НСПК для возврата на электронный сертификат."
      properties:
        basket_id:
          allOf:
          - $ref: "#/components/schemas/BasketId"
          - description: "Идентификатор корзины возврата, сформированной в НСПК."
        amount:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Сумма, которая вернется на электронный сертификат."
      required:
      - "basket_id"
      - "amount"
    SettlementRefundItem:
      type: "object"
      description: "Данные о распределении денег."
      properties:
        type:
          $ref: "#/components/schemas/SettlementItemType"
        amount:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Сумма, на которую необходимо уменьшить вознаграждение продавца. Должна быть меньше суммы возврата или равна ей."
      discriminator:
        propertyName: "type"
        mapping:
          payout: "#/components/schemas/SettlementPayoutRefund"
      required:
      - "type"
      - "amount"
    SettlementPayoutRefund:
      allOf:
      - $ref: "#/components/schemas/SettlementRefundItem"
      - type: "object"
    PostReceiptData:
      description: "Данные для формирования чека в онлайн-кассе (для коллекции чеков)."
      properties:
        type:
          allOf:
          - $ref: "#/components/schemas/ReceiptType"
          - description: "Тип чека в онлайн-кассе. Возможные значения: payment (приход), refund (возврат прихода)."
        payment_id:
          allOf:
          - $ref: "#/components/schemas/PaymentId"
          - description: "Идентификатор платежа в ЮKassa для отображения информации о чеке в личном кабинете: https://yookassa.ru/my/payments, на платеж не влияет. Обязательный параметр при создании чека прихода: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/other-services/payments#create-receipt (тип чека — payment, статус платежа — waiting_for_capture или succeeded) и при создании чека возврата прихода: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/other-services/payments#payment-receipt-part-capture для отмененного или частично подтвержденного платежа (тип чека — refund, статус платежа — canceled или succeeded). Для одного платежа можно создать не более 30 чеков."
        refund_id:
          allOf:
          - $ref: "#/components/schemas/RefundId"
          - description: "Идентификатор возврата в ЮKassa для отображения информации о чеке в личном кабинете: https://yookassa.ru/my. Обязательный параметр при создании чека возврата прихода: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/other-services/refunds#after-refund (если тип чека — refund, статус возврата — succeeded). Для одного возврата можно создать не более 30 чеков."
        customer:
          $ref: "#/components/schemas/ReceiptDataCustomer"
        items:
          type: "array"
          description: "Список товаров в чеке: для Чеков от ЮKassa: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/yoomoney/basics — не более 80 товаров, для сторонних онлайн-касс: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/other-services/basics — не более 100 товаров."
          items:
            $ref: "#/components/schemas/PostReceiptDataItem"
        send:
          description: "Формирование чека в онлайн-кассе сразу после создания объекта чека. Сейчас можно передать только значение true."
          type: "boolean"
          default: true
        tax_system_code:
          $ref: "#/components/schemas/TaxSystemCode"
        additional_user_props:
          $ref: "#/components/schemas/ReceiptAdditionalUserProps"
        receipt_industry_details:
          description: "Отраслевой реквизит чека (тег в 54 ФЗ — 1261). Нужно передавать, если используете ФФД 1.2."
          type: "array"
          items:
            $ref: "#/components/schemas/IndustryDetails"
        receipt_operational_details:
          allOf:
          - $ref: "#/components/schemas/OperationalDetails"
          - description: "Операционный реквизит чека (тег в 54 ФЗ — 1270). Нужно передавать, если используете ФФД 1.2."
        settlements:
          $ref: "#/components/schemas/SettlementArray"
        on_behalf_of:
          allOf:
          - $ref: "#/components/schemas/AccountId"
          - description: "Идентификатор магазина, от имени которого нужно отправить чек. Выдается ЮKassa, отображается в разделе Продавцы: https://yookassa.ru/my/marketplace/sellers личного кабинета (столбец shopId). Необходимо передавать, если вы используете Сплитование платежей: https://yookassa.ru/developers/solutions-for-platforms/split-payments/basics."
      required:
      - "customer"
      - "type"
      - "send"
      - "settlements"
      - "items"
    Receipt:
      type: "object"
      description: "Объект чека (Receipt) — актуальная информация о чеке."
      properties:
        id:
          $ref: "#/components/schemas/ReceiptId"
        type:
          $ref: "#/components/schemas/ReceiptType"
        payment_id:
          type: "string"
          description: "Идентификатор платежа: https://yookassa.ru/developers/api#payment_object, для которого был сформирован чек."
          example: "215d8da0-000f-50be-b000-0003308c89be"
        refund_id:
          type: "string"
          description: "Идентификатор возврата: https://yookassa.ru/developers/api#refund_object, для которого был сформирован чек. Отсутствует в чеке платежа."
          example: "215d8da0-000f-50be-b000-0003308c89be"
        status:
          allOf:
          - $ref: "#/components/schemas/ReceiptRegistrationStatus"
          - description: "Статус доставки данных для чека в онлайн-кассу. Возможные значения: pending — данные в обработке; succeeded — чек успешно зарегистрирован; canceled — чек зарегистрировать не удалось; если используете Чеки от ЮKassa: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/yoomoney/basics, обратитесь в техническую поддержку, в остальных случаях сформируйте чек вручную."
        fiscal_document_number:
          type: "string"
          description: "Номер фискального документа."
          example: "3986"
        fiscal_storage_number:
          type: "string"
          description: "Номер фискального накопителя в кассовом аппарате."
          example: "9288000100115785"
        fiscal_attribute:
          type: "string"
          description: "Фискальный признак чека. Формируется фискальным накопителем на основе данных, переданных для регистрации чека."
          example: "2617603921"
        registered_at:
          type: "string"
          format: "date-time"
          description: "Дата и время формирования чека в фискальном накопителе. Указывается в формате ISO 8601: https://en.wikipedia.org/wiki/ISO_8601."
          example: "2019-05-13T17:56:00.000+03:00"
        fiscal_provider_id:
          type: "string"
          description: "Идентификатор чека в онлайн-кассе. Присутствует, если чек удалось зарегистрировать."
          example: "fd9e9404-eaca-4000-8ec9-dc228ead2345"
        items:
          description: "Список товаров в чеке: для Чеков от ЮKassa: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/yoomoney/basics — не более 80 товаров, для сторонних онлайн-касс: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/other-services/basics — не более 100 товаров."
          type: "array"
          items:
            $ref: "#/components/schemas/ReceiptItem"
        settlements:
          type: "array"
          description: "Перечень совершенных расчетов."
          minItems: 1
          items:
            $ref: "#/components/schemas/Settlement"
        on_behalf_of:
          allOf:
          - $ref: "#/components/schemas/AccountId"
          - description: "Идентификатор магазина, от имени которого нужно отправить чек. Выдается ЮKassa. Присутствует, если вы используете Сплитование платежей: https://yookassa.ru/developers/solutions-for-platforms/split-payments/basics."
        tax_system_code:
          allOf:
          - $ref: "#/components/schemas/TaxSystemCode"
          - description: "Система налогообложения магазина (тег в 54 ФЗ — 1055). Для сторонних онлайн-касс: обязательный параметр, если вы используете онлайн-кассу Атол Онлайн, обновленную до ФФД 1.2, или у вас несколько систем налогообложения, в остальных случаях не передается. Перечень возможных значений: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/other-services/parameters-values#tax-systems Для Чеков от ЮKassa: параметр передавать не нужно, ЮKassa его проигнорирует."
        receipt_industry_details:
          description: "Отраслевой реквизит предмета расчета (тег в 54 ФЗ — 1260)."
          type: "array"
          items:
            $ref: "#/components/schemas/IndustryDetails"
        receipt_operational_details:
          allOf:
          - $ref: "#/components/schemas/OperationalDetails"
          - description: "Операционный реквизит чека (тег в 54 ФЗ — 1270)."
      required:
      - "id"
      - "type"
      - "status"
      - "items"
    ReceiptId:
      type: "string"
      minLength: 39
      maxLength: 39
      description: "Идентификатор чека в ЮKassa."
      example: "rt-1da5c87d-0984-50e8-a7f3-8de646dd9ec9"
    ReceiptType:
      description: "Тип чека в онлайн-кассе: приход (payment) или возврат прихода (refund)."
      type: "string"
      enum:
      - "payment"
      - "refund"
    PostReceiptDataItem:
      type: "object"
      description: "Информация о товарной позиции в заказе (для формирования чека)."
      properties:
        description:
          $ref: "#/components/schemas/ReceiptItemDescription"
        amount:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Цена товара (тег в 54 ФЗ — 1079)."
        vat_code:
          allOf:
          - $ref: "#/components/schemas/ReceiptItemVatCode"
          - description: "Ставка НДС (тег в 54 ФЗ — 1199). Перечень возможных значений: для Чеков от ЮKassa: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/yoomoney/parameters-values#vat-codes; для сторонних онлайн-касс: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/other-services/parameters-values#vat-codes."
        quantity:
          allOf:
          - $ref: "#/components/schemas/ReceiptItemQuantity"
          - description: "Количество товара (тег в 54 ФЗ — 1023). Можно передать целое или дробное число. Разделитель дробной части — точка, разделитель тысяч отсутствует. Пример: 5.000 Максимально возможное значение и максимальное количество знаков после точки (для дробных значений) зависят от модели вашей онлайн-кассы. Для чеков от ЮKassa максимально возможное значение — 99999.999, не более 3 знаков после точки."
        measure:
          $ref: "#/components/schemas/ReceiptItemMeasure"
        mark_quantity:
          $ref: "#/components/schemas/MarkQuantity"
        payment_subject:
          $ref: "#/components/schemas/ReceiptItemPaymentSubject"
        payment_mode:
          $ref: "#/components/schemas/ReceiptItemPaymentMode"
        country_of_origin_code:
          $ref: "#/components/schemas/ReceiptItemCountryOfOriginCode"
        customs_declaration_number:
          $ref: "#/components/schemas/ReceiptItemCustomsDeclarationNumber"
        excise:
          $ref: "#/components/schemas/ReceiptItemExcise"
        product_code:
          $ref: "#/components/schemas/ReceiptItemProductCode"
        mark_code_info:
          $ref: "#/components/schemas/MarkCodeInfo"
        mark_mode:
          $ref: "#/components/schemas/MarkMode"
        payment_subject_industry_details:
          $ref: "#/components/schemas/ReceiptItemPaymentSubjectIndustryDetails"
        additional_payment_subject_props:
          description: "Дополнительный реквизит предмета расчета (тег в 54 ФЗ — 1191). Не более 64 символов. Можно передавать, если вы отправляете данные для формирования чека по сценарию Сначала платеж, потом чек: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/other-services/basics#receipt-after-payment"
          type: "string"
          maxLength: 64
          example: "mdlp2/12&"
        supplier:
          $ref: "#/components/schemas/PostReceiptItemSupplierWithInn"
        agent_type:
          $ref: "#/components/schemas/ReceiptItemAgentType"
      required:
      - "description"
      - "quantity"
      - "amount"
      - "vat_code"
    ReceiptAdditionalUserProps:
      type: "object"
      description: "Дополнительный реквизит пользователя (тег в 54 ФЗ — 1084). Можно передавать, если вы отправляете данные для формирования чека по сценарию Сначала платеж, потом чек: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/other-services/basics#receipt-after-payment"
      properties:
        name:
          description: "Наименование дополнительного реквизита пользователя (тег в 54 ФЗ — 1085). Не более 64 символов."
          type: "string"
          maxLength: 64
          example: "mdlp3108805"
        value:
          description: "Значение дополнительного реквизита пользователя (тег в 54 ФЗ — 1086). Не более 234 символов."
          type: "string"
          maxLength: 234
          example: "ps45102&dnАБV492&&781&dd181110&sid71752852194630&"
      required:
      - "name"
      - "value"
    SettlementArray:
      type: "array"
      description: "Перечень совершенных расчетов."
      items:
        $ref: "#/components/schemas/Settlement"
    Settlement:
      type: "object"
      description: "Информация о совершенных расчетах."
      properties:
        type:
          description: "Тип расчета. Перечень возможных значений для Чеков от ЮKassa: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/yoomoney/parameters-values#settlement-type; для сторонних онлайн-касс: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/other-services/parameters-values#settlement-type."
          type: "string"
          enum:
          - "cashless"
          - "prepayment"
          - "postpayment"
          - "consideration"
        amount:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Сумма расчета."
      required:
      - "type"
      - "amount"
    PostReceiptItemSupplierWithInn:
      allOf:
      - $ref: "#/components/schemas/ReceiptItemSupplier"
      - type: "object"
        properties:
          inn:
            allOf:
            - $ref: "#/components/schemas/RussianItn"
            - description: "ИНН поставщика (10 или 12 цифр). Тег в 54 ФЗ — 1226. Параметр предусмотрен форматом фискальных документов (ФФД) и является обязательным, начиная с версии 1.05."
    ReceiptItemAgentType:
      description: "Тип посредника, реализующего товар или услугу. Параметр предусмотрен форматом фискальных документов (ФФД) и является обязательным, начиная с версии 1.1. Перечень возможных значений: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/other-services/parameters-values#agent-type. Можно передавать, если ваша онлайн-касса обновлена до ФФД 1.1 и вы отправляете данные для формирования чека по сценарию Сначала платеж, потом чек: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/other-services/basics#receipt-after-payment"
      type: "string"
      enum:
      - "banking_payment_agent"
      - "banking_payment_subagent"
      - "payment_agent"
      - "payment_subagent"
      - "attorney"
      - "commissioner"
      - "agent"
    ReceiptItemSupplier:
      type: "object"
      description: "Информация о поставщике товара или услуги (тег в 54 ФЗ — 1224). Можно передавать, если вы отправляете данные для формирования чека по сценарию Сначала платеж, потом чек: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/other-services/basics#receipt-after-payment."
      properties:
        name:
          description: "Наименование поставщика (тег в 54 ФЗ — 1225). Параметр предусмотрен форматом фискальных документов (ФФД) и является обязательным, начиная с версии 1.1."
          type: "string"
        phone:
          allOf:
          - $ref: "#/components/schemas/Phone"
          - description: "Телефон поставщика (тег в 54 ФЗ — 1171). Указывается в формате ITU-T E.164: https://ru.wikipedia.org/wiki/E.164, например 79000000000. Параметр предусмотрен форматом фискальных документов (ФФД) и является обязательным, начиная с версии 1.1."
    ReceiptItem:
      type: "object"
      description: "Информация о товарной позиции в заказе (для формирования чека)."
      properties:
        description:
          description: "Название товара (не более 128 символов). Тег в 54 ФЗ — 1030)."
          type: "string"
        quantity:
          description: "Количество товара (тег в 54 ФЗ — 1023). Формат: десятичное число, дробная часть — три знака или больше (количество знаков зависит от quantity в запросе). Разделитель дробной части — точка, разделитель тысяч отсутствует. Пример: 5.000"
          type: "number"
          example: 1
        amount:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Цена товара (тег в 54 ФЗ — 1079)."
        vat_code:
          allOf:
          - $ref: "#/components/schemas/ReceiptItemVatCode"
          - description: "Ставка НДС (тег в 54 ФЗ — 1199). Перечень возможных значений: для Чеков от ЮKassa: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/yoomoney/parameters-values#vat-codes; для сторонних онлайн-касс: https://yookassa.ru/developers/payment-acceptance/receipts/54fz/other-services/parameters-values#vat-codes."
        payment_subject:
          $ref: "#/components/schemas/ReceiptItemPaymentSubject"
        payment_mode:
          $ref: "#/components/schemas/ReceiptItemPaymentMode"
        country_of_origin_code:
          type: "string"
          description: "Код страны происхождения товара по общероссийскому классификатору стран мира (OК (MК (ИСО 3166) 004-97) 025-2001: http://docs.cntd.ru/document/842501280). Тег в 54 ФЗ — 1230. Пример: RU. Онлайн-кассы, которые поддерживают этот параметр: Orange Data, Кит Инвест."
          example: "RU"
        customs_declaration_number:
          type: "string"
          description: "Номер таможенной декларации (от 1 до 32 символов). Тег в 54 ФЗ — 1231. Онлайн-кассы, которые поддерживают этот параметр: Orange Data, Кит Инвест."
          minLength: 1
          maxLength: 32
          example: "10714040/140917/0090376"
        excise:
          type: "string"
          description: "Сумма акциза товара с учетом копеек (тег в 54 ФЗ — 1229). Десятичное число с точностью до 2 символов после точки. Онлайн-кассы, которые поддерживают этот параметр: Orange Data, Кит Инвест."
          example: "20.00"
        supplier:
          $ref: "#/components/schemas/ReceiptItemSupplierWithInn"
        agent_type:
          $ref: "#/components/schemas/ReceiptItemAgentType"
        mark_code_info:
          $ref: "#/components/schemas/MarkCodeInfo"
        measure:
          $ref: "#/components/schemas/ReceiptItemMeasure"
        payment_subject_industry_details:
          description: "Отраслевой реквизит предмета расчета  (тег в 54 ФЗ — 1260). Обязателен при использовании ФФД 1.2."
          type: "array"
          items:
            $ref: "#/components/schemas/IndustryDetails"
        product_code:
          type: "string"
          description: "Код товара — уникальный номер, который присваивается экземпляру товара при маркировке: http://docs.cntd.ru/document/902192509 (тег в 54 ФЗ — 1162). Формат: число в шестнадцатеричном представлении с пробелами. Максимальная длина — 32 байта. Пример: 00 00 00 01 00 21 FA 41 00 23 05 41 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 12 00 AB 00. Обязательный параметр, если товар нужно маркировать: http://docs.cntd.ru/document/557297080."
          example: "00 00 00 01 00 21 FA 41 00 23 05 41 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 12 00 AB 00"
        mark_mode:
          $ref: "#/components/schemas/MarkMode"
        mark_quantity:
          $ref: "#/components/schemas/MarkQuantity"
      required:
      - "description"
      - "quantity"
      - "amount"
      - "vat_code"
    ReceiptItemSupplierWithInn:
      allOf:
      - $ref: "#/components/schemas/ReceiptItemSupplier"
      - type: "object"
        properties:
          inn:
            allOf:
            - $ref: "#/components/schemas/RussianItn"
            - description: "ИНН поставщика в маскированном виде (тег в 54 ФЗ — 1226). Пример: ***. Параметр предусмотрен форматом фискальных документов (ФФД) и является обязательным, начиная с версии 1.05."
    SafeDealRequest:
      description: "Данные для создания сделки."
      type: "object"
      properties:
        type:
          $ref: "#/components/schemas/DealType"
        fee_moment:
          $ref: "#/components/schemas/FeeMoment"
        metadata:
          $ref: "#/components/schemas/Metadata"
        description:
          allOf:
          - $ref: "#/components/schemas/Description"
          - description: "Описание сделки (не более 128 символов). Используется для фильтрации при получении списка сделок: https://yookassa.ru/developers/api#get_deals_list."
      required:
      - "type"
      - "fee_moment"
    SafeDeal:
      allOf:
      - $ref: "#/components/schemas/BaseDeal"
      - type: "object"
        properties:
          id:
            $ref: "#/components/schemas/DealId"
          fee_moment:
            $ref: "#/components/schemas/FeeMoment"
          description:
            allOf:
            - $ref: "#/components/schemas/Description"
            - description: "Описание сделки (не более 128 символов). Используется для фильтрации при получении списка сделок: https://yookassa.ru/developers/api#get_deals_list."
          balance:
            allOf:
            - $ref: "#/components/schemas/MonetaryAmount"
            - description: "Баланс сделки."
          payout_balance:
            allOf:
            - $ref: "#/components/schemas/MonetaryAmount"
            - description: "Сумма вознаграждения продавца."
          status:
            $ref: "#/components/schemas/DealStatus"
          created_at:
            description: "Время создания сделки. Указывается по 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"
            type: "string"
            format: "date-time"
            example: "2020-07-03T11:52:31.827Z"
          expires_at:
            description: "Время автоматического закрытия сделки. Если в указанное время сделка всё еще в статусе 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"
            type: "string"
            format: "date-time"
            example: "2021-01-03T18:31:22.532Z"
          metadata:
            $ref: "#/components/schemas/Metadata"
          test:
            $ref: "#/components/schemas/Test"
        required:
        - "id"
        - "balance"
        - "payout_balance"
        - "status"
        - "created_at"
        - "expires_at"
        - "test"
        - "fee_moment"
    DealStatus:
      description: "Статус сделки. Возможные значения: opened — сделка открыта; можно выполнять платежи, возвраты и выплаты в составе сделки; closed — сделка закрыта — вознаграждение перечислено продавцу и платформе или оплата возвращена покупателю; нельзя выполнять платежи, возвраты и выплаты в составе сделки."
      type: "string"
      enum:
      - "opened"
      - "closed"
      example: "closed"
    DealType:
      description: "Тип сделки. Фиксированное значение: safe_deal — Безопасная сделка."
      type: "string"
      enum:
      - "safe_deal"
      example: "safe_deal"
    FeeMoment:
      description: "Момент перечисления вам вознаграждения платформы. Возможные значения: payment_succeeded — после успешной оплаты; deal_closed — при закрытии сделки после успешной выплаты."
      type: "string"
      default: "payment_succeeded"
      enum:
      - "payment_succeeded"
      - "deal_closed"
      example: "payment_succeeded"
    BaseDeal:
      description: "Объект сделки (Deal) — актуальная информация о сделке."
      type: "object"
      discriminator:
        propertyName: "type"
        mapping:
          safe_deal: "#/components/schemas/SafeDeal"
      properties:
        type:
          $ref: "#/components/schemas/DealType"
      required:
      - "type"
    PayoutRequest:
      description: "Данные для создания выплаты."
      type: "object"
      properties:
        amount:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Сумма выплаты. Есть ограничения на минимальный и максимальный размер выплаты и сумму выплат за месяц. Подробнее о лимитах обычных выплат: https://yookassa.ru/developers/payouts/getting-started/payout-types-and-limits и выплат в рамках Безопасной сделки: https://yookassa.ru/developers/solutions-for-platforms/safe-deal/integration/payouts#specifics"
        payout_destination_data:
          oneOf:
          - $ref: "#/components/schemas/PayoutToYooMoneyDestinationData"
          - $ref: "#/components/schemas/PayoutToBankCardDestinationData"
          - $ref: "#/components/schemas/PayoutToSbpDestinationData"
          discriminator:
            propertyName: "type"
        payout_token:
          type: "string"
          description: "Токенизированные данные для выплаты. Например, синоним банковской карты. Обязательный параметр, если не передан payout_destination_data или payment_method_id."
          example: "hoiCz_UVAdi_eKEthqhjRIJp.SC.001.202101"
        payment_method_id:
          allOf:
          - $ref: "#/components/schemas/PaymentMethodId"
          - description: "Идентификатор сохраненного способа оплаты, данные которого нужно использовать для проведения выплаты. Подробнее о выплатах с использованием идентификатора сохраненного способа оплаты: https://yookassa.ru/developers/payouts/scenario-extensions/multipurpose-token Обязательный параметр, если не передан payout_destination_data или payout_token."
        description:
          allOf:
          - $ref: "#/components/schemas/Description"
          - description: "Описание транзакции (не более 128 символов). Например: «Выплата по договору 37»."
        deal:
          $ref: "#/components/schemas/PayoutDealInfo"
        self_employed:
          $ref: "#/components/schemas/PayoutSelfEmployedInfo"
        receipt_data:
          $ref: "#/components/schemas/IncomeReceiptData"
        personal_data:
          type: "array"
          description: "Персональные данные получателя выплаты. Только для обычных выплат. Необходимо передавать в этих сценариях: выплаты с проверкой получателя: https://yookassa.ru/developers/payouts/scenario-extensions/recipient-check (только для выплат через СБП); выплаты с передачей данных получателя для выписок из реестра: https://yookassa.ru/developers/payouts/scenario-extensions/recipient-data-send. В массиве можно одновременно передать несколько идентификаторов, но только для разных типов данных."
          minItems: 1
          maxItems: 2
          items:
            $ref: "#/components/schemas/PayoutsPersonalData"
        metadata:
          $ref: "#/components/schemas/Metadata"
      required:
      - "amount"
    Payout:
      description: "Объект выплаты (Payout) — актуальная информация о выплате."
      type: "object"
      properties:
        id:
          $ref: "#/components/schemas/PayoutId"
        amount:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Сумма выплаты."
        status:
          $ref: "#/components/schemas/PayoutStatus"
        payout_destination:
          oneOf:
          - $ref: "#/components/schemas/PayoutToCardDestination"
          - $ref: "#/components/schemas/PayoutToYooMoneyDestination"
          - $ref: "#/components/schemas/PayoutToSbpDestination"
          discriminator:
            propertyName: "type"
        description:
          allOf:
          - $ref: "#/components/schemas/Description"
          - description: "Описание транзакции (не более 128 символов). Например: «Выплата по договору 37»."
        created_at:
          description: "Время создания выплаты. Указывается по 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"
          type: "string"
          format: "date-time"
          example: "2020-07-03T11:52:31.827Z"
        succeeded_at:
          description: "Время успешного проведения выплаты. Указывается по 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:42.312Z Обязательный параметр для выплат в статусе succeeded."
          type: "string"
          format: "date-time"
          example: "2020-07-03T11:52:42.312Z"
        deal:
          allOf:
          - $ref: "#/components/schemas/PayoutDealInfo"
          - description: "Сделка, в рамках которой нужно провести выплату. Присутствует, если вы проводите Безопасную сделку: https://yookassa.ru/developers/solutions-for-platforms/safe-deal/basics."
          - type: "object"
        self_employed:
          allOf:
          - $ref: "#/components/schemas/PayoutSelfEmployedInfo"
          - description: "Данные самозанятого, который получит выплату. Присутствует, если вы делаете выплату самозанятому: https://yookassa.ru/developers/payouts/scenario-extensions/self-employed."
          - type: "object"
        receipt:
          $ref: "#/components/schemas/IncomeReceipt"
        cancellation_details:
          $ref: "#/components/schemas/PayoutCancellationDetails"
        metadata:
          $ref: "#/components/schemas/Metadata"
        test:
          $ref: "#/components/schemas/Test"
      required:
      - "id"
      - "amount"
      - "status"
      - "payout_destination"
      - "created_at"
      - "test"
    PayoutId:
      description: "Идентификатор выплаты."
      minLength: 36
      maxLength: 50
      type: "string"
      example: "po-27ced252-0025-5000-9000-0a682a8bab8f"
    PayoutToYooMoneyDestinationData:
      description: "Данные для выплаты на кошелек ЮMoney."
      allOf:
      - $ref: "#/components/schemas/PayoutDestinationData"
      - type: "object"
        properties:
          account_number:
            allOf:
            - $ref: "#/components/schemas/YooMoneyAccountNumber"
            - description: "Номер кошелька ЮMoney, например 41001614575714. Длина от 11 до 33 цифр. Статус кошелька: https://yoomoney.ru/page?id=536140: для обычных выплат: https://yookassa.ru/developers/payouts/overview — любой, для выплат в рамках Безопасной сделки: https://yookassa.ru/developers/solutions-for-platforms/safe-deal/basics — именной или идентифицированный."
            - type: "string"
        required:
        - "account_number"
    PayoutToBankCardDestinationData:
      description: "Данные для выплаты на банковскую карту."
      allOf:
      - $ref: "#/components/schemas/PayoutDestinationData"
      - type: "object"
        properties:
          card:
            $ref: "#/components/schemas/CardDataForPayoutDestination"
        required:
        - "card"
    PayoutToSbpDestinationData:
      description: "Данные для выплаты на счет в банке через систему быстрых платежей."
      allOf:
      - $ref: "#/components/schemas/PayoutDestinationData"
      - type: "object"
        properties:
          phone:
            allOf:
            - $ref: "#/components/schemas/Phone"
            - description: "Телефон, к которому привязан счет получателя выплаты в системе участника СБП. Указывается в формате ITU-T E.164: https://ru.wikipedia.org/wiki/E.164, например 79000000000."
          bank_id:
            allOf:
            - $ref: "#/components/schemas/SbpBankId"
            - description: "Идентификатор выбранного участника СБП — банка или платежного сервиса, подключенного к сервису. Формат: 12 символов. Как получить идентификатор участника СБП: https://yookassa.ru/developers/payouts/making-payouts/sbp"
        required:
        - "phone"
        - "bank_id"
    PayoutDealInfo:
      type: "object"
      description: "Сделка, в рамках которой нужно провести выплату. Необходимо передавать, если вы проводите Безопасную сделку: https://yookassa.ru/developers/solutions-for-platforms/safe-deal/basics"
      properties:
        id:
          $ref: "#/components/schemas/DealId"
      required:
      - "id"
    PayoutSelfEmployedInfo:
      type: "object"
      description: "Данные самозанятого, который получит выплату. Необходимо передавать, если вы делаете выплату самозанятому: https://yookassa.ru/developers/payouts/scenario-extensions/self-employed. Только для обычных выплат."
      properties:
        id:
          $ref: "#/components/schemas/SelfEmployedId"
      required:
      - "id"
    IncomeReceiptData:
      type: "object"
      description: "Данные для формирования чека в сервисе Мой налог. Необходимо передавать, если вы делаете выплату самозанятому: https://yookassa.ru/developers/payouts/scenario-extensions/self-employed. Только для обычных выплат."
      properties:
        service_name:
          $ref: "#/components/schemas/IncomeReceiptServiceName"
        amount:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Сумма для печати в чеке. Используется, если сумма в чеке отличается от суммы выплаты. Сумма чека должна быть больше суммы выплаты или равна ей."
      required:
      - "service_name"
    PayoutsPersonalData:
      type: "object"
      description: "Персональные данные получателя выплаты. Только для обычных выплат. Необходимо передавать в этих сценариях: * выплаты с проверкой получателя: https://yookassa.ru/developers/payouts/scenario-extensions/recipient-check; * выплаты с передачей данных получателя для выписок из реестра: https://yookassa.ru/developers/payouts/scenario-extensions/recipient-data-send."
      properties:
        id:
          $ref: "#/components/schemas/PersonalDataId"
      required:
      - "id"
    PayoutDestinationType:
      description: "Способ получения выплаты: bank_card – выплата на банковскую карту; yoo_money – выплата на кошелек ЮMoney; sbp – выплата через СБП на счет в банке или платежном сервисе."
      type: "string"
      enum:
      - "bank_card"
      - "yoo_money"
      - "sbp"
    PayoutDestination:
      type: "object"
      description: "Платежное средство, на которое ЮKassa зачисляет выплату."
      discriminator:
        propertyName: "type"
        mapping:
          bank_card: "#/components/schemas/PayoutToCardDestination"
          yoo_money: "#/components/schemas/PayoutToYooMoneyDestination"
          sbp: "#/components/schemas/PayoutToSbpDestination"
      properties:
        type:
          $ref: "#/components/schemas/PayoutDestinationType"
      required:
      - "type"
    PayoutCardData:
      type: "object"
      description: "Данные банковской карты."
      properties:
        first6:
          allOf:
          - $ref: "#/components/schemas/BankCardFirst6"
          - description: "Первые 6 цифр номера карты (BIN)."
        last4:
          $ref: "#/components/schemas/BankCardLast4"
        card_type:
          $ref: "#/components/schemas/BankCardType"
        issuer_country:
          $ref: "#/components/schemas/BankCardIssuerCountry"
        issuer_name:
          $ref: "#/components/schemas/BankCardIssuerName"
      required:
      - "first6"
      - "last4"
      - "card_type"
    PayoutStatus:
      type: "string"
      description: "Статус выплаты. Возможные значения: pending — выплата создана, но деньги еще не поступили на указанное платежное средство пользователя (например, ЮKassa ждет подтверждения от эквайера, что перевод успешен); succeeded — выплата успешно завершена, деньги переведены на платежное средство пользователя (финальный и неизменяемый статус); canceled — выплата отменена, инициатор и причина отмены указаны в объекте cancellation_details (финальный и неизменяемый статус)."
      enum:
      - "pending"
      - "succeeded"
      - "canceled"
    PayoutToCardDestination:
      description: "Выплаты на банковскую карту"
      allOf:
      - $ref: "#/components/schemas/PayoutDestination"
      - type: "object"
        properties:
          card:
            $ref: "#/components/schemas/PayoutCardData"
    PayoutToYooMoneyDestination:
      description: "Выплаты на кошелек ЮMoney."
      allOf:
      - $ref: "#/components/schemas/PayoutDestination"
      - type: "object"
        properties:
          account_number:
            $ref: "#/components/schemas/YooMoneyAccountNumber"
        required:
        - "account_number"
    PayoutToSbpDestination:
      description: "Данные для выплаты через СБП на счет в банке или платежном сервисе."
      allOf:
      - $ref: "#/components/schemas/PayoutDestination"
      - type: "object"
        properties:
          phone:
            allOf:
            - $ref: "#/components/schemas/Phone"
            - description: "Телефон, к которому привязан счет получателя выплаты в системе участника СБП. Указывается в формате ITU-T E.164: https://ru.wikipedia.org/wiki/E.164, например 79000000000."
          bank_id:
            type: "string"
            description: "Идентификатор участника СБП — банка или платежного сервиса, подключенного к сервису."
            example: "100000000111"
            maxLength: 12
          recipient_checked:
            type: "boolean"
            description: "Проверка получателя выплаты: https://yookassa.ru/developers/payouts/scenario-extensions/recipient-check: true — выплата проходила с проверкой получателя, false — выплата проходила без проверки получателя."
            example: false
        required:
        - "phone"
        - "bank_id"
        - "recipient_checked"
    IncomeReceipt:
      type: "object"
      description: "Данные чека, зарегистрированного в ФНС. Присутствует, если вы делаете выплату самозанятому: https://yookassa.ru/developers/payouts/scenario-extensions/self-employed."
      properties:
        service_name:
          $ref: "#/components/schemas/IncomeReceiptServiceName"
        npd_receipt_id:
          $ref: "#/components/schemas/NpdIncomeReceiptId"
        url:
          $ref: "#/components/schemas/IncomeReceiptUrl"
        amount:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Сумма, указанная в чеке. Присутствует, если в запросе передавалась сумма для печати в чеке."
      required:
      - "service_name"
    PayoutCancellationDetails:
      type: "object"
      description: "Комментарий к статусу canceled: кто отменил выплату и по какой причине."
      properties:
        party:
          type: "string"
          description: "Участник процесса выплаты, который принял решение об отмене транзакции. Перечень инициаторов отмены выплаты: для обычных выплат: https://yookassa.ru/developers/payouts/after-the-payout/declined-payouts#cancellation-details-party, для выплат в рамках Безопасной сделки: https://yookassa.ru/developers/solutions-for-platforms/safe-deal/integration/payouts#declined-payouts-cancellation-details-party."
          enum:
          - "yoo_money"
          - "payout_network"
        reason:
          type: "string"
          description: "Причина отмены выплаты. Перечень и описание возможных значений: для обычных выплат: https://yookassa.ru/developers/payouts/after-the-payout/declined-payouts#cancellation-details-reason, для выплат в рамках Безопасной сделки: https://yookassa.ru/developers/solutions-for-platforms/safe-deal/integration/payouts#declined-payouts-cancellation-details-reason."
          example: "insufficient_funds"
          enum:
          - "insufficient_funds"
          - "fraud_suspected"
          - "one_time_limit_exceeded"
          - "periodic_limit_exceeded"
          - "rejected_by_payee"
          - "general_decline"
          - "issuer_unavailable"
          - "recipient_not_found"
          - "recipient_check_failed"
          - "identification_required"
          - "self_employed_annual_limit_exceeded"
      required:
      - "party"
      - "reason"
    SelfEmployedId:
      type: "string"
      description: "Идентификатор самозанятого в ЮKassa."
      minLength: 36
      maxLength: 50
      example: "se-7474a846-a965-498d-bbf9-1c3c8907cbbd"
    PersonalDataId:
      description: "Идентификатор персональных данных, сохраненных в ЮKassa."
      minLength: 36
      maxLength: 50
      type: "string"
      example: "pd-22e12f66-000f-5000-8000-18db351245c7"
    IncomeReceiptServiceName:
      type: "string"
      description: "Описание услуги, оказанной получателем выплаты. Не более 50 символов."
      minLength: 1
      maxLength: 50
      example: "Оказание услуг по доставке товара"
    NpdIncomeReceiptId:
      type: "string"
      description: "Идентификатор чека в сервисе. Пример: 208jd98zqe"
      example: "208jd98zqe"
    IncomeReceiptUrl:
      type: "string"
      description: "Ссылка на зарегистрированный чек. Пример: https://www.nalog.gov.ru/api/v1/receipt/<Идентификатор чека>/print"
      example: "https://www.nalog.gov.ru/api/v1/receipt/208jd98zqe/print"
    SbpParticipantBank:
      type: "object"
      description: "Объект участника СБП (Системы быстрых платежей ЦБ РФ) — актуальная информация о банке или платежном сервисе, подключенном к СБП."
      properties:
        bank_id:
          $ref: "#/components/schemas/SbpBankId"
        name:
          type: "string"
          description: "Название банка или платежного сервиса в СБП."
          maxLength: 128
          example: "Сбербанк"
        bic:
          $ref: "#/components/schemas/SbpBankBic"
      required:
      - "bank_id"
      - "name"
      - "bic"
    SelfEmployedRequest:
      type: "object"
      description: "Запрос на создание объекта самозанятого."
      properties:
        itn:
          allOf:
          - $ref: "#/components/schemas/RussianItn"
          - description: "ИНН самозанятого. Формат: 12 цифр без пробелов. Обязательный параметр, если не передан phone."
        phone:
          allOf:
          - $ref: "#/components/schemas/Phone"
          - description: "Телефон самозанятого, который привязан к личному кабинету в сервисе Мой налог. Указывается в формате ITU-T E.164: https://ru.wikipedia.org/wiki/E.164, например 79000000000. Обязательный параметр, если не передан itn."
        confirmation:
          oneOf:
          - $ref: "#/components/schemas/SelfEmployedConfirmationAttrsRedirect"
    SelfEmployed:
      type: "object"
      description: "Объект самозанятого (SelfEmployed) — актуальная информация о самозанятом."
      properties:
        id:
          $ref: "#/components/schemas/SelfEmployedId"
        status:
          $ref: "#/components/schemas/SelfEmployedStatus"
        created_at:
          description: "Время создания объекта самозанятого. Указывается по 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"
          type: "string"
          format: "date-time"
          example: "2017-11-03T11:52:31.827Z"
        itn:
          allOf:
          - $ref: "#/components/schemas/RussianItn"
          - description: "ИНН самозанятого. Формат: 12 цифр без пробелов."
        phone:
          allOf:
          - $ref: "#/components/schemas/Phone"
          - description: "Телефон самозанятого, который привязан к личному кабинету в сервисе Мой налог. Указывается в формате ITU-T E.164: https://ru.wikipedia.org/wiki/E.164, например 79000000000."
        confirmation:
          oneOf:
          - $ref: "#/components/schemas/SelfEmployedConfirmationRedirect"
        test:
          $ref: "#/components/schemas/Test"
      required:
      - "id"
      - "status"
      - "created_at"
      - "test"
    SelfEmployedConfirmationAttrsRedirect:
      description: "Перенаправление пользователя на сайт сервиса Мой налог для выдачи прав ЮMoney."
      allOf:
      - $ref: "#/components/schemas/SelfEmployedConfirmationAttrs"
      - type: "object"
    SelfEmployedStatus:
      description: "Статус подключения самозанятого и выдачи ЮMoney прав на регистрацию чеков. Возможные значения: pending — ЮMoney запросили права на регистрацию чеков, но самозанятый еще не ответил на заявку; confirmed — самозанятый выдал права ЮMoney; вы можете делать выплаты; canceled — самозанятый отклонил заявку или отозвал ранее выданные права; unregistered — самозанятый с таким ИНН не зарегистрирован в сервисе Мой налог, или пользователь потерял статус самозанятого."
      type: "string"
      enum:
      - "pending"
      - "confirmed"
      - "canceled"
      - "unregistered"
      example: "pending"
    SelfEmployedConfirmationRedirect:
      description: "Перенаправление пользователя на сайт сервиса Мой налог для выдачи прав ЮMoney."
      allOf:
      - $ref: "#/components/schemas/SelfEmployedConfirmation"
      - type: "object"
        properties:
          confirmation_url:
            allOf:
            - $ref: "#/components/schemas/ConfirmationUrl"
            - description: "URL, на который необходимо перенаправить самозанятого для выдачи прав."
            type: "string"
        required:
        - "confirmation_url"
    SelfEmployedConfirmationType:
      description: "Код сценария подтверждения пользователем заявки ЮMoney на получение прав для регистрации чеков в сервисе Мой налог."
      type: "string"
      enum:
      - "redirect"
      example: "redirect"
    SelfEmployedConfirmationAttrs:
      description: "Сценарий подтверждения пользователем заявки ЮMoney на получение прав для регистрации чеков в сервисе Мой налог."
      type: "object"
      discriminator:
        propertyName: "type"
        mapping:
          redirect: "#/components/schemas/SelfEmployedConfirmationAttrsRedirect"
      properties:
        type:
          $ref: "#/components/schemas/SelfEmployedConfirmationType"
      required:
      - "type"
    SelfEmployedConfirmation:
      description: "Сценарий подтверждения пользователем заявки ЮMoney на получение прав для регистрации чеков в сервисе Мой налог."
      type: "object"
      discriminator:
        propertyName: "type"
        mapping:
          redirect: "#/components/schemas/SelfEmployedConfirmationRedirect"
      properties:
        type:
          $ref: "#/components/schemas/SelfEmployedConfirmationType"
      required:
      - "type"
    SbpPayoutRecipientPersonalDataRequest:
      allOf:
      - $ref: "#/components/schemas/PersonalDataRequest"
      - type: "object"
        properties:
          last_name:
            $ref: "#/components/schemas/LastName"
          first_name:
            $ref: "#/components/schemas/FirstName"
          middle_name:
            $ref: "#/components/schemas/MiddleName"
        required:
        - "last_name"
        - "first_name"
    PayoutStatementRecipientPersonalDataRequest:
      allOf:
      - $ref: "#/components/schemas/PersonalDataRequest"
      - type: "object"
        properties:
          last_name:
            $ref: "#/components/schemas/LastName"
          first_name:
            $ref: "#/components/schemas/FirstName"
          middle_name:
            $ref: "#/components/schemas/MiddleName"
          birthdate:
            description: "Дата рождения. Передается в формате ISO 8601: https://en.wikipedia.org/wiki/ISO_8601"
            type: "string"
            format: "date"
            example: "2020-11-18"
        required:
        - "last_name"
        - "first_name"
        - "birthdate"
    PersonalData:
      description: "Объект персональных данных (PersonalData) — актуальная информация о персональных данных пользователя, сохраненных в ЮKassa."
      type: "object"
      properties:
        id:
          $ref: "#/components/schemas/PersonalDataId"
        type:
          $ref: "#/components/schemas/PersonalDataType"
        status:
          type: "string"
          description: "Статус персональных данных. Возможные значения: waiting_for_operation — данные сохранены, но не использованы при проведении выплаты; active — данные сохранены и использованы при проведении выплаты; данные можно использовать повторно до срока, указанного в параметре expires_at; canceled — хранение данных отменено, данные удалены, инициатор и причина отмены указаны в объекте cancellation_details (финальный и неизменяемый статус). Жизненный цикл персональных данных зависит от назначения данных: передача данных получателя выплаты: https://yookassa.ru/developers/payouts/scenario-extensions/recipient-data-send#lifecircle для выписки из реестра или проверка получателя: https://yookassa.ru/developers/payouts/scenario-extensions/recipient-check#lifecircle при выплатах через СБП."
          enum:
          - "waiting_for_operation"
          - "active"
          - "canceled"
        cancellation_details:
          $ref: "#/components/schemas/PersonalDataCancellationDetails"
        created_at:
          type: "string"
          description: "Время создания персональных данных. Указывается по 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"
          format: "date-time"
        expires_at:
          type: "string"
          description: "Срок жизни объекта персональных данных — время, до которого вы можете использовать персональные данные при проведении операций. Указывается только для объекта в статусе active. Указывается по 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"
          format: "date-time"
        metadata:
          $ref: "#/components/schemas/Metadata"
      required:
      - "id"
      - "status"
      - "type"
      - "created_at"
    PersonalDataType:
      description: "Тип персональных данных — цель, для которой вы будете использовать данные. Возможные значение: sbp_payout_recipient — выплаты с проверкой получателя: https://yookassa.ru/developers/payouts/scenario-extensions/recipient-check(только для выплат через СБП); payout_statement_recipient — выплаты с передачей данных получателя выплаты для выписок из реестра: https://yookassa.ru/developers/payouts/scenario-extensions/recipient-data-send."
      type: "string"
      enum:
      - "payout_statement_recipient"
      - "sbp_payout_recipient"
      example: "sbp_payout_recipient"
    PersonalDataRequest:
      description: "Данные для запроса сохранения персональных данных."
      type: "object"
      discriminator:
        propertyName: "type"
        mapping:
          payout_statement_recipient: "#/components/schemas/PayoutStatementRecipientPersonalDataRequest"
          sbp_payout_recipient: "#/components/schemas/SbpPayoutRecipientPersonalDataRequest"
      properties:
        type:
          $ref: "#/components/schemas/PersonalDataType"
        metadata:
          $ref: "#/components/schemas/Metadata"
      required:
      - "type"
    LastName:
      description: "Фамилия пользователя."
      type: "string"
      pattern: "^[—–‐-a-zA-Zа-яёА-ЯЁ ]*$"
      example: "Иванов"
      minLength: 1
      maxLength: 200
    FirstName:
      description: "Имя пользователя."
      type: "string"
      pattern: "^[—–‐-a-zA-Zа-яёА-ЯЁ ]*$"
      example: "Иван"
      minLength: 1
      maxLength: 100
    MiddleName:
      description: "Отчество пользователя. Обязательный параметр, если есть в паспорте."
      type: "string"
      pattern: "^[—–‐-a-zA-Zа-яёА-ЯЁ ]*$"
      example: "Иванович"
      minLength: 1
      maxLength: 200
    PersonalDataCancellationDetails:
      type: "object"
      description: "Комментарий к статусу canceled: кто и по какой причине аннулировал хранение данных."
      properties:
        party:
          type: "string"
          description: "Участник процесса, который принял решение о прекращении хранения персональных данных. Возможное значение: yoo_money — ЮKassa."
          enum:
          - "yoo_money"
        reason:
          type: "string"
          description: "Причина прекращения хранения персональных данных. Возможное значение: expired_by_timeout — истек срок хранения или использования персональных данных."
          example: "expired_by_timeout"
          enum:
          - "expired_by_timeout"
      required:
      - "party"
      - "reason"
    NotificationEventType:
      type: "string"
      enum:
      - "payment.waiting_for_capture"
      - "payment.succeeded"
      - "payment.canceled"
      - "refund.succeeded"
      example: "payment.succeeded"
    Webhook:
      type: "object"
      description: "Данные о webhook."
      properties:
        id:
          description: "Идентификатор webhook."
          type: "string"
          example: "wh-e44e8088-bd73-43b1-959a-954f3a7d0c54"
        event:
          allOf:
          - $ref: "#/components/schemas/NotificationEventType"
          - description: "Событие: https://yookassa.ru/developers/using-api/webhooks#events, о котором уведомляет ЮKassa."
        url:
          description: "URL, на который ЮKassa отправляет уведомления."
          type: "string"
          example: "https://www.example.com/notification_url"
      required:
      - "id"
      - "event"
      - "url"
    WebhookList:
      type: "object"
      description: "Список webhook."
      properties:
        type:
          type: "string"
          description: "Формат выдачи результатов запроса. Возможное значение: list (список)."
          enum:
          - "list"
        items:
          type: "array"
          items:
            $ref: "#/components/schemas/Webhook"
      required:
      - "type"
      - "items"
    Me:
      type: "object"
      description: "Объект настроек магазина или шлюза (Me) — актуальная информация о настройках магазина или шлюза."
      properties:
        account_id:
          allOf:
          - $ref: "#/components/schemas/AccountId"
          - description: "Идентификатор магазина или шлюза."
        status:
          type: "string"
          description: "Статус магазина или шлюза. Возможные значения: enabled — подключен к ЮKassa, может проводить платежи или выплаты; disabled — не может проводить платежи или выплаты (еще не подключен, закрыт или временно не работает)."
          enum:
          - "enabled"
          - "disabled"
        test:
          description: "Это тестовый магазин или шлюз."
          type: "boolean"
          example: true
        fiscalization:
          $ref: "#/components/schemas/FiscalizationData"
        fiscalization_enabled:
          description: "Устаревший параметр, который раньше использовался для определения настроек отправки чеков в налоговую. Сохранен для поддержки обратной совместимости, в новых версиях API может быть удален. Используйте объект fiscalization, чтобы определить, какие у магазина настройки отправки чеков."
          type: "boolean"
          example: true
        payment_methods:
          type: "array"
          description: "Список способов оплаты: https://yookassa.ru/developers/payment-acceptance/getting-started/payment-methods#all, доступных магазину. Присутствует, если вы запрашивали настройки магазина."
          items:
            $ref: "#/components/schemas/PaymentMethodType"
        itn:
          allOf:
          - $ref: "#/components/schemas/GlobalItn"
          - description: "ИНН магазина (от 1 до 20 цифр). Присутствует, если вы запрашивали настройки магазина."
        payout_methods:
          type: "array"
          description: "Список способов получения выплат, доступных шлюзу. Возможные значения: bank_card — выплаты на банковские карты; yoo_money — выплаты на кошельки ЮMoney; sbp — выплаты через СБП. Присутствует, если вы запрашивали настройки шлюза."
          items:
            $ref: "#/components/schemas/PayoutMethodType"
        name:
          description: "Название шлюза, которое отображается в личном кабинете ЮKassa. Присутствует, если вы запрашивали настройки шлюза."
          type: "string"
          example: "TestName"
        payout_balance:
          allOf:
          - $ref: "#/components/schemas/MonetaryAmount"
          - description: "Баланс вашего шлюза. Присутствует, если вы запрашивали настройки шлюза."
      required:
      - "account_id"
      - "test"
      - "status"
    FiscalizationData:
      description: "Настройки магазина для отправки чеков в налоговую: https://yookassa.ru/developers/payment-acceptance/receipts/basics. Присутствует, если вы запрашивали настройки магазина и этот магазин использует решения ЮKassa для отправки чеков. Отсутствует, если магазин еще не включал отправку чеков через ЮKassa."
      type: "object"
      properties:
        enabled:
          description: "В настройках магазина включена отправка чеков. Возможные значения: true — магазин отправляет данные для чеков через ЮKassa; false — магазин выключил отправку чеков через ЮKassa."
          type: "boolean"
          example: true
        provider:
          $ref: "#/components/schemas/FiscalizationProvider"
      required:
      - "provider"
      - "enabled"
    GlobalItn:
      description: "ИНН пользователя (от 1 до 20 цифр)."
      type: "string"
      example: "632134181463213"
      pattern: "\\d{1,20}"
    PayoutMethodType:
      description: "Способ получения выплаты."
      type: "string"
      enum:
      - "bank_card"
      - "yoo_money"
      - "sbp"
      example: "bank_card"
  responses:
    BadRequest:
      description: "Запрос не может быть обработан. Причиной может быть неправильный синтаксис запроса, ошибка в обязательных параметрах запроса, их отсутствие или неподдерживаемый метод."
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/BadRequest"
    InvalidCredentials:
      description: "В заголовке Authorization указан неверный ключ."
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/InvalidCredentials"
    Forbidden:
      description: "Секретный ключ указан верно, но не хватает прав для совершения операции."
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/Forbidden"
    InternalServerError:
      description: "Внутренняя ошибка сервера ЮKassa."
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/TooManyRequests"
    NotFound:
      description: "Сущность не найдена."
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/NotFound"
    TooManyRequests:
      description: "Слишком много запросов одновременно отправляется в API. Повторите запрос позже."
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/TooManyRequests"
