dark-api-ghpages/swagger.yaml
2019-11-14 13:10:24 +00:00

3057 lines
94 KiB
YAML
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

swagger: '2.0'
info:
version: 0.0.1
title: RBKmoney Dark Resource API
description: |
RBKmoney Dark Resource API служит для управления секретных вызовов.
termsOfService: 'http://rbk.money/'
contact:
name: RBKmoney support team
email: support@rbk.money
url: 'https://rbk.money'
host: api.rbk.money
basePath: /dapi/v0
schemes:
- https
consumes:
- application/json; charset=utf-8
produces:
- application/json; charset=utf-8
securityDefinitions:
bearer:
type: apiKey
name: Authorization
in: header
description: |
Для аутентификации вызовов мы используем [JWT](https://jwt.io). Cоответствующий ключ передается в заголовке.
```shell
Authorization: Bearer {TOKENIZATION|PRIVATE_JWT}
```
security:
- bearer: []
responses:
NotFound:
description: Заданный ресурс не найден
schema:
$ref: '#/definitions/GeneralError'
QuestionaryNotFound:
description: Заданный ресурс не найден
schema:
$ref: '#/definitions/GeneralError'
Unauthorized:
description: Ошибка авторизации
ExternalIDConflict:
description: Переданное значение `externalID` уже использовалось вами ранее с другими параметрами запроса
schema:
$ref: '#/definitions/ExternalIDConflictError'
DefaultLogicError:
description: Неверные данные
schema:
$ref: '#/definitions/DefaultLogicError'
BadRequest:
description: Некорректный запрос
schema:
$ref: '#/definitions/GeneralError'
parameters:
requestID:
name: X-Request-ID
in: header
description: Уникальный идентификатор запроса к системе
required: true
type: string
maxLength: 32
minLength: 1
shopID:
name: shopID
in: path
description: Идентификатор магазина
required: true
type: string
maxLength: 40
minLength: 1
claimID:
name: claimID
in: path
description: Идентификатор заявки
required: true
type: integer
format: int64
claimRevision:
name: claimRevision
in: query
description: Версия заявки
required: true
type: integer
format: int32
paymentID:
name: paymentID
in: path
description: Идентификатор платежа в рамках инвойса
required: true
type: string
maxLength: 40
minLength: 1
refundID:
name: refundID
in: path
description: Идентификатор возврата в рамках платежа
required: true
type: string
maxLength: 40
minLength: 1
customerID:
name: customerID
in: path
description: Идентификатор кастомера
required: true
type: string
maxLength: 40
minLength: 1
payoutID:
name: payoutID
in: path
description: Идентификатор вывода
required: true
type: string
maxLength: 40
minLength: 1
invoiceID:
name: invoiceID
in: path
description: Идентификатор инвойса
required: true
type: string
maxLength: 40
minLength: 1
fromTime:
name: fromTime
in: query
description: Начало временного отрезка
required: true
type: string
format: date-time
toTime:
name: toTime
in: query
description: Конец временного отрезка
required: true
type: string
format: date-time
limit:
name: limit
in: query
description: Лимит выборки
required: true
type: integer
format: int32
minimum: 1
maximum: 1000
deadline:
name: X-Request-Deadline
in: header
description: Максимальное время обработки запроса
required: false
type: string
maxLength: 40
minLength: 1
fileID:
name: fileID
in: path
description: Идентификатор файла
required: true
type: string
maxLength: 40
minLength: 1
tags:
- name: Search
x-displayName: Управление поиском
description: ''
- name: Questionary
x-displayName: Управление анкетами
description: ''
- name: Claims
x-displayName: Заявки
description: |
Некоторая область данных может быть изменена только после премодерации на стороне платформы. Например, создание и активация новых магазинов, изменение финансовых данных вашего участника и т.п. требуют ручной проверки сотрудниками RBKmoney. Попытка изменить такие данные приводит к автоматическому созданию заявки на изменение данных. До тех пор, пока заявка не одобрена, вы можете добавлять изменения. После одобрения они будут применены к набору данных. В случае отказа по заявке данные останутся в неизменном состоянии. Ближайшим аналогом заявок можно представить Pull Request в распределенных системах контроля версий.
- name: Files
x-displayName: Управление файлами
description: |
Получение ссылки на загрузку, получение ссылки на скачивание, информация о файле.
paths:
'/files/{fileID}/download':
get:
description: Получить ссылку для скачивания файла
operationId: downloadFile
tags:
- Files
parameters:
- $ref: '#/parameters/requestID'
- $ref: '#/parameters/fileID'
responses:
'200':
description: Данные для получения файла
schema:
$ref: '#/definitions/FileDownload'
'400':
$ref: '#/responses/BadRequest'
'401':
$ref: '#/responses/Unauthorized'
'404':
$ref: '#/responses/NotFound'
'/files/{fileID}/info':
get:
description: Получить информацию о файле
operationId: getFileInfo
tags:
- Files
parameters:
- $ref: '#/parameters/requestID'
- $ref: '#/parameters/fileID'
responses:
'200':
description: Данные файла
schema:
$ref: '#/definitions/FileData'
'400':
$ref: '#/responses/BadRequest'
'401':
$ref: '#/responses/Unauthorized'
'404':
$ref: '#/responses/NotFound'
/files/upload:
post:
description: Создать новый файл и сгенерировать ссылку для выгрузки файла на сервер
operationId: uploadFile
tags:
- Files
parameters:
- $ref: '#/parameters/requestID'
- name: uploadFileRequest
in: body
schema:
$ref: '#/definitions/FileUploadRequest'
responses:
'201':
description: Данные для загрузки файла на сервер
schema:
$ref: '#/definitions/FileUploadData'
'400':
$ref: '#/responses/BadRequest'
'401':
$ref: '#/responses/Unauthorized'
'404':
$ref: '#/responses/NotFound'
/processing/claims:
get:
description: Поиск заявок участника
operationId: searchClaims
tags:
- Claims
parameters:
- $ref: '#/parameters/requestID'
- $ref: '#/parameters/deadline'
- $ref: '#/parameters/limit'
- name: claimStatuses
in: query
description: Статус заявки для поиска
required: false
type: array
items:
type: string
enum:
- pending
- review
- pendingAcceptance
- accepted
- denied
- revoked
- name: continuationToken
in: query
required: false
description: |
Токен, сигнализирующий о том, что в ответе передана только часть данных.
Для получения следующей части нужно повторно обратиться к сервису, указав тот-же набор условий и полученый токен.
Если токена нет, получена последняя часть данных.
type: string
responses:
'200':
description: Найденные заявки
schema:
type: object
properties:
continuationToken:
description: |
Токен, сигнализирующий о том, что в ответе передана только часть данных.
Для получения следующей части нужно повторно обратиться к сервису, указав тот-же набор условий и полученый токен.
Если токена нет, получена последняя часть данных.
type: string
result:
type: array
items:
$ref: '#/definitions/Claim'
'400':
$ref: '#/responses/DefaultLogicError'
'401':
$ref: '#/responses/Unauthorized'
post:
description: |
Создать новую заявку с заданным набором изменений и отправить её на
премодерацию.
operationId: createClaim
tags:
- Claims
parameters:
- $ref: '#/parameters/requestID'
- $ref: '#/parameters/deadline'
- name: claimChangeset
in: body
required: true
schema:
$ref: '#/definitions/ClaimChangeset'
responses:
'201':
description: Заявка создана
schema:
$ref: '#/definitions/Claim'
'400':
description: Ошибочные данные в заявке
schema:
type: object
required:
- code
- message
properties:
code:
description: |
[Код ошибки](#tag/Error-Codes)
type: string
enum:
- changesetConflict
- invalidPartyStatus
- invalidChangeset
- invalidRequest
- invalidDeadline
message:
description: Человекочитаемое описание ошибки
type: string
example: Changeset conflict
'401':
$ref: '#/responses/Unauthorized'
'/processing/claims/{claimID}':
get:
description: |
Получить заявку по её идентификатору.
operationId: getClaimByID
tags:
- Claims
parameters:
- $ref: '#/parameters/requestID'
- $ref: '#/parameters/deadline'
- $ref: '#/parameters/claimID'
responses:
'200':
description: Данные заявки
schema:
$ref: '#/definitions/Claim'
'400':
$ref: '#/responses/DefaultLogicError'
'401':
$ref: '#/responses/Unauthorized'
'404':
$ref: '#/responses/NotFound'
'/processing/claims/{claimID}/revoke':
put:
description: Отозвать заявку по её идентификатору.
operationId: revokeClaimByID
tags:
- Claims
parameters:
- $ref: '#/parameters/requestID'
- $ref: '#/parameters/deadline'
- $ref: '#/parameters/claimID'
- $ref: '#/parameters/claimRevision'
- name: reason
in: body
schema:
$ref: '#/definitions/Reason'
responses:
'204':
description: Заявка отозвана
'400':
description: Ошибка отзыва заявки
schema:
type: object
required:
- code
- message
properties:
code:
description: |
[Код ошибки](#tag/Error-Codes)
type: string
enum:
- invalidClaimStatus
- invalidClaimRevision
- invalidPartyStatus
- invalidRequest
- invalidDeadline
message:
description: Человекочитаемое описание ошибки
type: string
example: Invalid claim status
'401':
$ref: '#/responses/Unauthorized'
'404':
$ref: '#/responses/NotFound'
'/processing/claims/{claimID}/update':
put:
description: Обновить заявку по её идентификатору.
operationId: updateClaimByID
tags:
- Claims
parameters:
- $ref: '#/parameters/requestID'
- $ref: '#/parameters/deadline'
- $ref: '#/parameters/claimID'
- $ref: '#/parameters/claimRevision'
- name: changeset
in: body
schema:
$ref: '#/definitions/Modification'
responses:
'201':
description: Заявка обновлена
'400':
description: Ошибка при изменении заявки
schema:
type: object
required:
- code
- message
properties:
code:
description: |
[Код ошибки](#tag/Error-Codes)
type: string
enum:
- invalidClaimStatus
- invalidClaimRevision
- invalidPartyStatus
- invalidRequest
- invalidDeadline
message:
description: Человекочитаемое описание ошибки
type: string
example: Invalid claim status
'401':
$ref: '#/responses/Unauthorized'
'404':
$ref: '#/responses/NotFound'
/questionary:
post:
description: Сервис для работы с анкетами
tags:
- Questionary
operationId: saveQuestionary
parameters:
- $ref: '#/parameters/requestID'
- name: Authorization
in: header
required: true
type: string
format: string
- name: questionaryParams
description: Параметры создаваемого запроса
in: body
required: true
schema:
$ref: '#/definitions/QuestionaryParams'
responses:
'201':
description: Анкета создана
schema:
$ref: '#/definitions/Version'
'400':
description: Ошибочные данные
schema:
type: object
required:
- code
- message
properties:
code:
description: |
[Код ошибки](#tag/Error-Codes)
type: string
enum:
- questionaryNotValidException
- questionaryVersionConflict
- questionaryNotFound
message:
description: Человекочитаемое описание ошибки
type: string
example: Invalid questionary
'401':
$ref: '#/responses/Unauthorized'
'404':
$ref: '#/responses/QuestionaryNotFound'
'409':
$ref: '#/responses/ExternalIDConflict'
get:
tags:
- Questionary
operationId: getQuestionary
parameters:
- $ref: '#/parameters/requestID'
- name: Authorization
in: header
required: true
type: string
format: string
- name: questionaryParams
description: Параметры создаваемого запроса
in: body
required: true
schema:
$ref: '#/definitions/QuestionaryGetParams'
responses:
'201':
description: Анкета создана
schema:
$ref: '#/definitions/Snapshot'
'400':
description: Ошибочные данные
schema:
type: object
required:
- code
- message
properties:
code:
description: |
[Код ошибки](#tag/Error-Codes)
type: string
enum:
- questionaryNotValidException
- questionaryVersionConflict
- questionaryNotFound
message:
description: Человекочитаемое описание ошибки
type: string
example: Invalid questionary
'401':
$ref: '#/responses/Unauthorized'
'404':
$ref: '#/responses/QuestionaryNotFound'
'409':
$ref: '#/responses/ExternalIDConflict'
'/search/payments/{shopID}':
get:
description: Поиск платежей
tags:
- Search
operationId: searchPayments
parameters:
- $ref: '#/parameters/requestID'
- $ref: '#/parameters/deadline'
- $ref: '#/parameters/shopID'
- $ref: '#/parameters/fromTime'
- $ref: '#/parameters/toTime'
- $ref: '#/parameters/limit'
- name: paymentStatus
in: query
description: Статус платежа для поиска
required: false
type: string
enum:
- pending
- processed
- captured
- cancelled
- refunded
- failed
- name: paymentFlow
in: query
description: Flow платежа
required: false
type: string
enum:
- instant
- hold
- name: paymentMethod
in: query
description: Метод оплаты
required: false
type: string
enum:
- bankCard
- paymentTerminal
- name: paymentTerminalProvider
in: query
description: Провайдер платежного терминала
required: false
type: string
enum:
- euroset
- name: invoiceID
in: query
description: Идентификатор инвойса
required: false
type: string
maxLength: 40
minLength: 1
- name: paymentID
in: query
description: Идентификатор платежа
required: false
type: string
maxLength: 40
minLength: 1
- name: payerEmail
in: query
description: 'Email, указанный при оплате'
required: false
type: string
format: email
maxLength: 100
- name: payerIP
in: query
description: IP-адрес плательщика
required: false
type: string
format: ip-address
maxLength: 45
- name: payerFingerprint
in: query
description: Уникальный отпечаток user agent'а плательщика
required: false
type: string
maxLength: 1000
- name: customerID
in: query
description: Идентификатор плательщика
required: false
type: string
maxLength: 40
minLength: 1
- name: bin
in: query
description: BIN банка-эмитента карты
required: false
type: string
pattern: '^\d{6,8}$'
- name: lastDigits
in: query
description: Последние цифры номера карты
required: false
type: string
pattern: '^\d{2,4}$'
- name: bankCardTokenProvider
in: query
required: false
description: Провайдер платежных токенов
type: string
enum:
- applepay
- googlepay
- samsungpay
- name: bankCardPaymentSystem
in: query
required: false
description: Платежная система
type: string
enum:
- visa
- mastercard
- visaelectron
- maestro
- forbrugsforeningen
- dankort
- amex
- dinersclub
- discover
- unionpay
- jcb
- nspkmir
- name: paymentAmount
in: query
description: Сумма платежа
required: false
type: integer
format: int64
minimum: 1
- name: continuationToken
in: query
required: false
description: |
Токен, сигнализирующий о том, что в ответе передана только часть данных.
Для получения следующей части нужно повторно обратиться к сервису, указав тот-же набор условий и полученый токен.
Если токена нет, получена последняя часть данных.
type: string
responses:
'200':
description: Найденные платежи
schema:
type: object
properties:
continuationToken:
description: |
Токен, сигнализирующий о том, что в ответе передана только часть данных.
Для получения следующей части нужно повторно обратиться к сервису, указав тот-же набор условий и полученый токен.
Если токена нет, получена последняя часть данных.
type: string
result:
type: array
items:
$ref: '#/definitions/EnrichedSearchResult'
'401':
$ref: '#/responses/Unauthorized'
'404':
$ref: '#/responses/NotFound'
'/search/refunds/{shopID}':
get:
description: Поиск возвратов
tags:
- Search
operationId: searchRefunds
parameters:
- $ref: '#/parameters/requestID'
- $ref: '#/parameters/deadline'
- $ref: '#/parameters/shopID'
- $ref: '#/parameters/fromTime'
- $ref: '#/parameters/toTime'
- $ref: '#/parameters/limit'
- name: invoiceID
in: query
description: Идентификатор инвойса
required: false
type: string
maxLength: 40
minLength: 1
- name: paymentID
in: query
description: Идентификатор платежа
required: false
type: string
maxLength: 40
minLength: 1
- name: refundID
in: query
description: Идентификатор возврата
required: false
type: string
maxLength: 40
minLength: 1
- name: refundStatus
in: query
description: Статус возврата
type: string
enum:
- pending
- succeeded
- failed
- name: continuationToken
in: query
required: false
description: |
Токен, сигнализирующий о том, что в ответе передана только часть данных.
Для получения следующей части нужно повторно обратиться к сервису, указав тот-же набор условий и полученый токен.
Если токена нет, получена последняя часть данных.
type: string
responses:
'200':
description: Найденные возвраты
schema:
type: object
properties:
continuationToken:
description: |
Токен, сигнализирующий о том, что в ответе передана только часть данных.
Для получения следующей части нужно повторно обратиться к сервису, указав тот-же набор условий и полученый токен.
Если токена нет, получена последняя часть данных.
type: string
result:
type: array
items:
$ref: '#/definitions/EnrichedSearchResult'
'401':
$ref: '#/responses/Unauthorized'
'404':
$ref: '#/responses/NotFound'
definitions:
Activity:
description: Деятельность осуществляемая организацией
type: object
properties:
code:
description: код
type: string
description:
description: Описание
type: string
AdditionalInfo:
description: |
Сведения о целях установления и предполагаемом характере отношения с НКО,
сведения о целях финансово-хозяйственной деятельности индвидидуального предпринимателя,
деловая репутация
type: object
properties:
staff_count:
description: Штатная численность
type: integer
format: int32
minimum: 1
default: 1
has_accountant:
description: Наличие в штате главного бухгалтера
type: boolean
accounting:
description: Бух.учет ведется самим предпринимателем (в случае отстутсвия в штате главного бухгалтера)
type: string
accounting_org:
description: 'Сведения об организации, ведущей бухгалтерский учет (наименование, договор, иной документ)'
type: string
nko_relation_target:
description: Цели установления деловых отношения с НКО
type: string
relationship_with_nko:
description: Предполагаемый характер деловых отношений с НКО
type: string
month_operation_count:
$ref: '#/definitions/MonthOperationCount'
month_operation_sum:
$ref: '#/definitions/MonthOperationSum'
financial_position:
type: array
items:
$ref: '#/definitions/FinancialPosition'
business_info:
type: array
items:
$ref: '#/definitions/BusinessInfo'
storage_facilities:
description: Наличие складских помещений
type: boolean
main_counterparties:
description: Основные контагенты
type: string
relation_individual_entity:
$ref: '#/definitions/RelationIndividualEntity'
benefit_third_parties:
description: Действует ли к выгоде третьх лиц
type: boolean
business_reputation:
$ref: '#/definitions/BusinessReputation'
russian_bank_account:
$ref: '#/definitions/BankAccount'
AnnualFinancialStatements:
type: object
allOf:
- $ref: '#/definitions/FinancialPosition'
AnnualTaxReturnWithMark:
type: object
allOf:
- $ref: '#/definitions/FinancialPosition'
AnnualTaxReturnWithoutMark:
type: object
allOf:
- $ref: '#/definitions/FinancialPosition'
AnnualTaxReturnWithoutMarkPaper:
type: object
allOf:
- $ref: '#/definitions/FinancialPosition'
AnotherBusiness:
type: object
allOf:
- $ref: '#/definitions/BusinessInfo'
- type: object
properties:
description:
type: string
ArticlesOfAssociation:
type: object
BankAccount:
type: object
discriminator: bankAccountType
required:
- bankAccountType
properties:
bankAccountType:
type: string
BankCardDetails:
required:
- cardNumberMask
- paymentSystem
properties:
cardNumberMask:
description: Маскированый номер карты
type: string
pattern: '^\d{6,8}\*+\d{2,4}$'
bin:
description: BIN банка-эмитента карты
type: string
pattern: '^\d{6,8}$'
lastDigits:
description: Последние цифры номера карты
type: string
pattern: '^\d{2,4}$'
paymentSystem:
description: Платежная система
type: string
enum:
- visa
- mastercard
- visaelectron
- maestro
- forbrugsforeningen
- dankort
- amex
- dinersclub
- discover
- unionpay
- jcb
- nspkmir
tokenProvider:
description: Провайдер платежных токенов
type: string
enum:
- applepay
- googlepay
- samsungpay
BankCardPaymentSystem:
description: Платежная система
type: string
enum:
- visa
- mastercard
- visaelectron
- maestro
- forbrugsforeningen
- dankort
- amex
- dinersclub
- discover
- unionpay
- jcb
- nspkmir
BankCardTokenProvider:
description: Провайдер платежных токенов
type: string
enum:
- applepay
- googlepay
- samsungpay
BeneficialOwner:
description: Бенефициарный владелец
type: object
properties:
ownership_percentage:
type: integer
format: int8
minimum: 1
default: 1
russian_private_entity:
$ref: '#/definitions/RussianPrivateEntity'
inn:
description: ИНН
type: string
identity_document:
$ref: '#/definitions/IdentityDocument'
migration_card_info:
$ref: '#/definitions/MigrationCardInfo'
residence_approve:
$ref: '#/definitions/ResidenceApprove'
pdl_category:
type: boolean
BuildingBusiness:
type: object
allOf:
- $ref: '#/definitions/BusinessInfo'
BusinessInfo:
type: object
discriminator: businessInfoType
properties:
businessInfoType:
description: Сведения о предпренимательской деятельности
type: string
required:
- businessInfoType
BusinessReputation:
description: Деловая репутация
type: string
enum:
- ProvideReviews
- NoReviews
BusinessScheduleRef:
type: object
required:
- id
properties:
id:
type: integer
format: int32
CardData:
type: object
allOf:
- $ref: '#/definitions/PaymentTool'
- type: object
description: Банковская карта
required:
- cardNumber
- expDate
properties:
cardNumber:
description: Номер банковской карты
type: string
pattern: '^\d{12,19}$'
expDate:
description: Срок действия банковской карты
type: string
pattern: '^\d{2}\/(\d{2}|\d{4})$'
cvv:
description: Код верификации
type: string
pattern: '^\d{3,4}$'
cardHolder:
description: Имя держателя карты
type: string
minLength: 1
maxLength: 100
CategoryRef:
type: object
required:
- id
properties:
id:
type: integer
format: int32
Claim:
description: Заявка
type: object
discriminator: status
required:
- id
- status
- changeset
- revision
- createdAt
properties:
id:
description: Идентификатор заявки
type: integer
format: int64
status:
description: Статус заявки
type: string
changeset:
$ref: '#/definitions/ClaimChangeset'
revision:
description: Версия заявки
type: integer
format: int32
createdAt:
description: Дата создания
type: string
format: date-time
updatedAt:
description: Дата изменения
type: string
format: date-time
metadata:
description: Связанные с заявкой метаданные
type: object
ClaimAccepted:
type: object
allOf:
- $ref: '#/definitions/Claim'
ClaimChangeset:
description: Набор изменений
type: array
items:
$ref: '#/definitions/ModificationUnit'
ClaimDenied:
type: object
allOf:
- $ref: '#/definitions/Claim'
- type: object
required:
- reason
properties:
reason:
description: Причина отклонения заявки
type: string
maxLength: 1000
ClaimModification:
type: object
allOf:
- $ref: '#/definitions/Modification'
- type: object
discriminator: claimModificationType
required:
- claimModificationType
properties:
claimModificationType:
type: string
enum:
- DocumentModificationUnit
- FileModificationUnit
- CommentModificationUnit
- StatusModificationUnit
ClaimPending:
type: object
allOf:
- $ref: '#/definitions/Claim'
ClaimPendingAcceptance:
type: object
allOf:
- $ref: '#/definitions/Claim'
ClaimReview:
type: object
allOf:
- $ref: '#/definitions/Claim'
ClaimRevoked:
type: object
allOf:
- $ref: '#/definitions/Claim'
- type: object
required:
- reason
properties:
reason:
description: Причина отзыва заявки
type: string
maxLength: 1000
ClientInfo:
description: Данные клиентского устройства плательщика
type: object
required:
- fingerprint
properties:
ip:
description: IP-адрес плательщика
type: string
format: ip-address
maxLength: 45
readOnly: true
fingerprint:
description: Уникальный отпечаток user agent'а плательщика
type: string
maxLength: 1000
CommentCreated:
type: object
allOf:
- $ref: '#/definitions/CommentModification'
CommentModification:
description: Единичное изменение комментария
type: object
discriminator: commentModificationType
required:
- commentModificationType
properties:
commentModificationType:
type: string
enum:
- CommentCreated
CommentModificationUnit:
type: object
allOf:
- $ref: '#/definitions/ClaimModification'
- type: object
required:
- id
- modification
properties:
id:
description: Идентификатор комментария
type: string
maxLength: 40
minLength: 1
modification:
$ref: '#/definitions/CommentModification'
ContactInfo:
description: Контактные данные
type: object
properties:
email:
description: Адрес электронной почты
type: string
format: email
maxLength: 100
phoneNumber:
description: |
Номер мобильного телефона с международным префиксом согласно
[E.164](https://en.wikipedia.org/wiki/E.164).
type: string
format: '^\+\d{4,15}$'
ContinuationToken:
description: |
Токен, сигнализирующий о том, что в ответе передана только часть данных.
Для получения следующей части нужно повторно обратиться к сервису, указав тот-же набор условий и полученый токен.
Если токена нет, получена последняя часть данных.
type: string
ContractAdjustmentModification:
type: object
required:
- creation
properties:
creation:
$ref: '#/definitions/ContractAdjustmentParams'
ContractAdjustmentModificationUnit:
type: object
required:
- adjustmentID
- modification
properties:
adjustmentID:
type: string
modification:
$ref: '#/definitions/ContractAdjustmentModification'
ContractAdjustmentParams:
type: object
required:
- template
properties:
template:
$ref: '#/definitions/ContractTemplateRef'
ContractModification:
type: object
allOf:
- $ref: '#/definitions/ContractModificationUnit'
- type: object
discriminator: contractModificationType
required:
- contractModificationType
properties:
contractModificationType:
type: string
enum:
- ContractParams
- ContractTermination
- ContractAdjustmentModificationUnit
- PayoutToolModificationUnit
- LegalAgreement
- ReportPreferences
- ContractorID
ContractModificationUnit:
type: object
allOf:
- $ref: '#/definitions/PartyModification'
- type: object
required:
- id
- modification
properties:
id:
description: Идентификатор договора
type: string
maxLength: 40
minLength: 1
modification:
$ref: '#/definitions/ContractModification'
Contractor:
type: object
allOf:
- $ref: '#/definitions/ContractorModification'
- type: object
discriminator: contractorType
required:
- contractorType
properties:
contractorType:
type: string
enum:
- LegalEntity
ContractorID:
type: string
ContractorIdentificationLevel:
type: integer
enum:
- value: 100
name: none
- value: 200
name: partial
- value: 300
name: full
ContractorIdentityDocumentsModification:
type: object
required:
- identityDocuments
properties:
identityDocuments:
type: array
items:
type: string
format: binary
ContractorModification:
type: object
discriminator: contractorModificationType
required:
- contractorModificationType
properties:
contractorModificationType:
type: string
enum:
- Contractor
ContractorModificationUnit:
type: object
allOf:
- $ref: '#/definitions/PartyModification'
- type: object
required:
- id
- modification
properties:
id:
description: Идентификатор
type: string
modification:
$ref: '#/definitions/ContractorModification'
ContractParams:
type: object
allOf:
- $ref: '#/definitions/ContractModification'
- type: object
properties:
contractorID:
type: string
template:
$ref: '#/definitions/ContractTemplateRef'
paymentInstitution:
$ref: '#/definitions/PaymentInstitutionRef'
ContractTemplateRef:
type: object
required:
- id
properties:
id:
type: integer
format: int32
ContractTermination:
type: object
allOf:
- $ref: '#/definitions/ContractModification'
- type: object
properties:
reason:
type: string
Currency:
description: 'Валюта, символьный код согласно [ISO 4217](http://www.iso.org/iso/home/standards/currency_codes.htm).'
type: string
pattern: '^[A-Z]{3}$'
CurrencyRef:
type: object
required:
- symbolicCode
properties:
symbolicCode:
type: string
CustomerPayer:
type: object
description: Многоразовое платежное средство
allOf:
- $ref: '#/definitions/Payer'
- type: object
required:
- customerID
properties:
customerID:
description: Идентификатор плательщика
type: string
maxLength: 40
minLength: 1
DefaultLogicError:
type: object
required:
- code
- message
properties:
code:
description: |
[Код ошибки](#tag/Error-Codes)
type: string
enum:
- invalidRequest
- invalidDeadline
message:
description: Человекочитаемое описание ошибки
type: string
DigitalWalletDetails:
discriminator: digitalWalletDetailsType
required:
- digitalWalletDetailsType
properties:
digitalWalletDetailsType:
type: string
enum:
- DigitalWalletDetailsQIWI
DigitalWalletDetailsQIWI:
allOf:
- $ref: '#/definitions/DigitalWalletDetails'
- type: object
required:
- phoneNumberMask
properties:
phoneNumberMask:
type: string
description: |
Маскированный номер телефона плательщика в международном формате, выступающий
в роли идентификатора кошелька Visa QIWI Wallet.
pattern: '^\+\d\*{1,10}\d{2,4}$'
example: +7******3210
DocumentCreated:
type: object
allOf:
- $ref: '#/definitions/DocumentModification'
DocumentModification:
type: object
discriminator: documentModificationType
required:
- documentModificationType
properties:
documentModificationType:
type: string
enum:
- DocumentCreated
DocumentModificationUnit:
type: object
allOf:
- $ref: '#/definitions/ClaimModification'
- type: object
required:
- id
- modification
properties:
id:
description: Идентификатор документа
type: string
maxLength: 40
minLength: 1
modification:
$ref: '#/definitions/DocumentModification'
EnrichedSearchResult:
type: object
allOf:
- type: object
required:
- payment
properties:
payment:
$ref: '#/definitions/PaymentSearchResult'
refund:
$ref: '#/definitions/RefundSearchResult'
ExternalID:
description: |
Уникальный в рамках платформы идентификатор сущности для данного участника.
Используется для обеспечения идемпотентности запроса.
type: string
maxLength: 40
minLength: 1
ExternalIDConflictError:
type: object
required:
- externalID
properties:
externalID:
description: 'Переданное значение `externalID`, для которого обнаружен конфликт параметров запроса'
type: string
maxLength: 40
minLength: 1
id:
description: 'Идентификатор сущности, созданной предыдущим запросом с указанным `externalID`'
type: string
message:
description: Человекочитаемое описание ошибки
type: string
FileCreated:
type: object
allOf:
- $ref: '#/definitions/FileModification'
FileData:
type: object
required:
- fileId
- fileName
- createdAt
- metadata
properties:
fileId:
description: Идентификатор файла
type: string
maxLength: 40
minLength: 1
fileName:
description: Имя файла
type: string
createdAt:
description: Дата загрузки файла
type: string
format: date-time
metadata:
description: Дополнительная информация о файле
type: object
FileDownload:
type: object
required:
- url
properties:
url:
description: URL файла
type: string
FileModification:
type: object
discriminator: fileModificationType
required:
- fileModificationType
properties:
fileModificationType:
type: string
enum:
- FileCreated
FileModificationUnit:
type: object
allOf:
- $ref: '#/definitions/ClaimModification'
- type: object
required:
- id
- modification
properties:
id:
description: Идентификатор файла
type: string
maxLength: 40
minLength: 1
modification:
$ref: '#/definitions/FileModification'
FileUploadData:
type: object
properties:
url:
description: URL файла
type: string
fileId:
description: Идентификатор файла
type: string
FileUploadRequest:
type: object
required:
- metadata
properties:
metadata:
description: Дополнительная информация о файле
type: object
FinancialPosition:
description: Представлены сведения (документа) о финансовом положении
type: object
discriminator: financialPositionType
required:
- financialPositionType
properties:
financialPositionType:
description: Представлены сведения (документа) о финансовом положении
type: string
Founder:
type: object
discriminator: founderType
required:
- founderType
properties:
founderType:
type: string
FounderHead:
type: object
properties:
individual_person:
$ref: '#/definitions/IndividualPersonFounder'
position:
type: string
FoundersInfo:
type: object
properties:
founders:
type: array
items:
$ref: '#/definitions/Founder'
heads:
type: array
items:
$ref: '#/definitions/FounderHead'
legal_owner:
$ref: '#/definitions/FounderHead'
GeneralError:
type: object
required:
- message
properties:
message:
type: string
GeoLocationInfo:
description: Информация о геопозиции
type: object
required:
- cityGeoID
- countryGeoID
properties:
cityGeoID:
type: integer
format: int32
countryGeoID:
type: integer
format: int32
Head:
description: Маркер вершины истории
type: object
allOf:
- $ref: '#/definitions/Reference'
IdentityDocument:
description: Сведения о предпренимательской деятельности
type: object
discriminator: identityDocumentType
required:
- identityDocumentType
properties:
identityDocumentType:
description: Сведения о предпренимательской деятельности
type: string
IndividualEntity:
type: object
discriminator: individualEntityType
required:
- individualEntityType
properties:
individualEntityType:
type: string
IndividualEntityContractor:
type: object
allOf:
- $ref: '#/definitions/Contractor'
- type: object
properties:
individual_entity:
$ref: '#/definitions/IndividualEntity'
IndividualPerson:
type: object
allOf:
- $ref: '#/definitions/Founder'
- type: object
required:
- fio
- inn
properties:
inn:
description: id владельца анкеты
type: string
fio:
$ref: '#/definitions/PersonAnthroponym'
IndividualPersonCategories:
description: Сведения о принадлежности физического лица к некоторым категориям граждан
type: object
properties:
foreign_public_person:
description: Является иностранным публичным должностным лицом
type: boolean
foreign_relative_person:
description: Является родственником инностранного публичного должностного лица
type: boolean
behalf_of_foreign:
description: Действует от имени иностранного лица
type: boolean
worldwide_org_public_person:
description: Является должностным лицом публичной международной организации; лицом замещающим государственные должности
type: boolean
has_representative:
description: Имеется представитель клиента
type: boolean
beneficial_owner:
description: Бенефициарным владельцем клиента является сам клиент
type: boolean
IndividualPersonFounder:
type: object
required:
- fio
- inn
properties:
inn:
description: id владельца анкеты
type: string
fio:
$ref: '#/definitions/PersonAnthroponym'
IndividualRegistrationInfo:
description: Индивидуальная информация
type: object
allOf:
- $ref: '#/definitions/RegistrationInfo'
- type: object
properties:
ogrnip:
description: ОГРНИП
type: string
registration_date:
description: Дата регистрации
type: string
registration_place:
description: Место государственной регистрации
type: string
IndividualResidencyInfo:
type: object
allOf:
- $ref: '#/definitions/ResidencyInfo'
- type: object
properties:
tax_resident:
description: Является ли налоговым резидентом США или иного иностранного государства
type: boolean
InternationalLegalEntityFounder:
type: object
allOf:
- $ref: '#/definitions/Founder'
- type: object
properties:
country:
type: string
fullName:
description: Полное наименование юридического лица
type: string
InvalidChangeset:
description: Невалидный набор изменений
type: object
required:
- reason
- invalid_changesets
properties:
reason:
description: Причина
type: string
invalid_changesets:
description: Список невалидных наборов изменений
type: array
items:
$ref: '#/definitions/ClaimChangeset'
InvoiceCart:
description: |
Корзина с набором позиций продаваемых товаров или услуг
type: array
minItems: 1
maxItems: 100
items:
$ref: '#/definitions/InvoiceLine'
InvoiceLine:
description: Позиция товара или услуги
type: object
required:
- product
- quantity
- price
properties:
product:
description: Описание предлагаемого товара или услуги
type: string
maxLength: 1000
quantity:
description: |
Количество единиц товаров или услуг, предлагаемых на продажу в этой
позиции
type: integer
format: int64
minimum: 1
default: 1
price:
description: |
Цена предлагаемого товара или услуги, в минорных денежных единицах, например
в копейках в случае указания российских рублей в качестве валюты
type: integer
format: int64
minimum: 1
cost:
description: |
Суммарная стоимость позиции с учётом количества единиц товаров или услуг
type: integer
format: int64
minimum: 1
readOnly: true
taxMode:
$ref: '#/definitions/InvoiceLineTaxMode'
InvoiceLineTaxMode:
description: |
Схема налогообложения предлагаемого товара или услуги.
Указывается, только если предлагаемый товар или услуга облагается налогом.
type: object
discriminator: type
required:
- type
properties:
type:
description: Тип схемы налогообложения
type: string
enum:
- InvoiceLineTaxVAT
InvoiceLineTaxVAT:
allOf:
- $ref: '#/definitions/InvoiceLineTaxMode'
- description: Налог на добавленную стоимость в юрисдикции РФ
type: object
required:
- rate
properties:
rate:
description: Ставка налога
type: string
enum:
- 0%
- 10%
- 18%
- 20%
- 10/110
- 18/118
- 20/120
LegalAgreement:
description: Юридическое соглашение
type: object
required:
- signedAt
- legalAgreementID
properties:
signedAt:
type: string
legalAgreementID:
type: string
validUntil:
type: string
LegalEntity:
type: object
allOf:
- $ref: '#/definitions/Contractor'
- type: object
discriminator: legalEntityType
required:
- legalEntityType
properties:
legalEntityType:
type: string
enum:
- RussianLegalEntity
LegalEntityContractor:
type: object
allOf:
- $ref: '#/definitions/Contractor'
- type: object
properties:
legal_entity:
$ref: '#/definitions/LegalEntity'
LegalOwnerInfo:
description: Сведения о единоличном исполнительном органе юридического лица
type: object
properties:
russian_private_entity:
$ref: '#/definitions/RussianPrivateEntity'
inn:
description: ИНН
type: string
identity_document:
$ref: '#/definitions/IdentityDocument'
migration_card_info:
$ref: '#/definitions/MigrationCardInfo'
residence_approve:
$ref: '#/definitions/ResidenceApprove'
pdl_category:
type: boolean
LegalRegistrationInfo:
type: object
allOf:
- $ref: '#/definitions/RegistrationInfo'
- type: object
properties:
ogrn:
description: ОГРН
type: string
registration_date:
description: Дата государственной регистрации
type: string
registration_place:
description: Место государственной регистрации
type: string
registration_address:
description: Адрес регистрации юридического лица
type: string
actual_address:
description: Фактический адрес
type: string
LegalResidencyInfo:
type: object
allOf:
- $ref: '#/definitions/ResidencyInfo'
- type: object
properties:
tax_resident:
description: Является ли налоговым резидентом США или иного иностранного государства
type: boolean
owner_resident:
description: Является ли Бенефициарный владалей резидентом иностранного государства
type: boolean
fatca:
description: Является ли организация Финансовым Инсистутом в соответсвии с FATCA и 173-ФЗ
type: boolean
LetterOfGuarantee:
type: object
allOf:
- $ref: '#/definitions/FinancialPosition'
LicenseInfo:
description: Сведения о лицензии на право осуществления деятельности
type: object
properties:
officialNum:
type: string
issuerName:
type: string
issue_date:
type: string
effective_date:
type: string
expiration_date:
type: string
licensed_activity:
description: Описание вида лицензируемой деятельности
type: string
MediationInPropertyBusiness:
type: object
allOf:
- $ref: '#/definitions/BusinessInfo'
MigrationCardInfo:
description: Сведения о миграционной карте
type: object
properties:
card_number:
description: Является ли налоговым резидентом США или иного иностранного государства
type: string
beginning_date:
description: Дата начала срока пребывания
type: string
expiration_date:
description: Дата окончания срока пребывания
type: string
Modification:
description: Единичное изменение данных участника
type: object
discriminator: modificationType
required:
- modificationType
properties:
modificationType:
type: string
enum:
- PartyModification
- ClaimModification
ModificationUnit:
description: ModificationUnit
type: object
required:
- modificationID
- createdAt
- modification
properties:
modificationID:
description: Идентификатор изменения
type: integer
format: int64
createdAt:
description: Дата и время создания
type: string
format: date-time
modification:
$ref: '#/definitions/Modification'
MonthOperationCount:
description: Планируемое кол-во операций в месяц
type: string
enum:
- LtTen
- BtwTenToFifty
- GtFifty
MonthOperationSum:
description: Планируемая сумма операция в месяц
type: string
enum:
- LtFiveHundredThousand
- BtwFiveHundredThousandToOneMillion
- GtOneMillion
PartyModification:
type: object
allOf:
- $ref: '#/definitions/Modification'
- type: object
discriminator: partyModificationType
required:
- partyModificationType
properties:
partyModificationType:
type: string
enum:
- ContractorModificationUnit
- ContractModificationUnit
- ShopModificationUnit
Payer:
type: object
discriminator: payerType
properties:
payerType:
description: Тип платежного средства
type: string
required:
- payerType
Payment:
type: object
required:
- id
- invoiceID
- createdAt
- amount
- currency
- payer
- status
properties:
id:
description: Идентификатор платежа
type: string
externalID:
$ref: '#/definitions/ExternalID'
invoiceID:
description: 'Идентификатор инвойса, в рамках которого был создан платеж'
type: string
createdAt:
description: Дата и время создания
type: string
format: date-time
amount:
description: |
Стоимость предлагаемых товаров или услуг, в минорных денежных единицах,
например в копейках в случае указания российских рублей в качестве валюты.
type: integer
format: int64
minimum: 1
currency:
description: 'Валюта, символьный код согласно [ISO 4217](http://www.iso.org/iso/home/standards/currency_codes.htm).'
type: string
pattern: '^[A-Z]{3}$'
payer:
$ref: '#/definitions/Payer'
makeRecurrent:
description: |
Признак создания родительского рекуррентного платежа.
Успешно проведеный платеж с этим признаком можно использовать как родительский в других рекуррентных платежах.
type: boolean
default: false
readOnly: true
status:
description: Статус платежа
type: string
enum:
- pending
- processed
- captured
- cancelled
- refunded
- failed
error:
$ref: '#/definitions/PaymentError'
PaymentError:
description: |
[Ошибка, возникшая в процессе проведения платежа](#tag/Error-Codes)
type: object
required:
- code
properties:
code:
description: Основной код ошибки
type: string
subError:
$ref: '#/definitions/SubError'
PaymentFlow:
type: object
discriminator: type
default:
type: PaymentFlowInstant
required:
- type
properties:
type:
description: Тип процесса выполнения платежа
type: string
enum:
- PaymentFlowInstant
- PaymentFlowHold
PaymentFlowHold:
type: object
allOf:
- $ref: '#/definitions/PaymentFlow'
- type: object
required:
- onHoldExpiration
properties:
onHoldExpiration:
description: Политика управления удержанием денежных средств
type: string
default: cancel
enum:
- cancel
- capture
heldUntil:
description: 'Дата и время, до которого происходит удержание денежных средств'
type: string
format: date-time
readOnly: true
PaymentFlowInstant:
type: object
allOf:
- $ref: '#/definitions/PaymentFlow'
PaymentInstitutionRef:
type: object
required:
- id
properties:
id:
type: integer
format: int32
PaymentMakeRecurrent:
description: |
Признак создания родительского рекуррентного платежа.
Успешно проведеный платеж с этим признаком можно использовать как родительский в других рекуррентных платежах.
type: boolean
default: false
PaymentParams:
type: object
required:
- shopID
- dueDate
- currency
- product
- metadata
- clientInfo
properties:
externalID:
$ref: '#/definitions/ExternalID'
shopID:
description: Идентификатор магазина
type: string
maxLength: 40
minLength: 1
dueDate:
description: |
Дата и время окончания действия инвойса, после наступления которых его
уже невозможно будет оплатить
type: string
format: date-time
amount:
description: |
Стоимость предлагаемых товаров или услуг, в минорных денежных единицах,
например в копейках в случае указания российских рублей в качестве валюты.
Если стоимость не указана, то стоимостью инвойса будет считаться суммарная
стоимость позиций в корзине.
type: integer
format: int64
minimum: 1
flow:
$ref: '#/definitions/PaymentFlow'
cardData:
$ref: '#/definitions/CardData'
currency:
description: 'Валюта, символьный код согласно [ISO 4217](http://www.iso.org/iso/home/standards/currency_codes.htm).'
type: string
pattern: '^[A-Z]{3}$'
product:
description: Наименование предлагаемых товаров или услуг
type: string
maxLength: 100
description:
description: Описание предлагаемых товаров или услуг
type: string
maxLength: 1000
cart:
$ref: '#/definitions/InvoiceCart'
metadata:
description: 'Метаданные, которые необходимо связать с инвойсом'
type: object
clientInfo:
$ref: '#/definitions/ClientInfo'
PaymentRecurrentParent:
type: object
description: 'Родительский платеж, на основе которого создан текущий рекуррентный платеж'
required:
- invoiceID
- paymentID
properties:
invoiceID:
description: Идентификатор инвойса
type: string
paymentID:
description: Идентификатор платежа
type: string
PaymentResource:
type: object
description: Данные одноразового платежного средства
required:
- paymentToolToken
properties:
paymentToolToken:
description: 'Токен платежного средства, предоставленного плательщиком'
type: string
maxLength: 1000
paymentSession:
description: Идентификатор платежной сессии
type: string
maxLength: 1000
paymentToolDetails:
$ref: '#/definitions/PaymentToolDetails'
clientInfo:
allOf:
- $ref: '#/definitions/ClientInfo'
- readOnly: true
PaymentResourcePayer:
type: object
description: Одноразовое платежное средство
allOf:
- $ref: '#/definitions/Payer'
- $ref: '#/definitions/PaymentResource'
- type: object
required:
- contactInfo
properties:
contactInfo:
$ref: '#/definitions/ContactInfo'
PaymentSearchResult:
type: object
allOf:
- $ref: '#/definitions/PaymentStatus'
- type: object
required:
- id
- invoiceID
- createdAt
- amount
- currency
- payer
- flow
properties:
id:
description: Идентификатор платежа
type: string
shortID:
description: Cокращенный идентификатор платежа и инвойса (spid)
type: string
invoiceID:
description: 'Идентификатор инвойса, в рамках которого был создан платеж'
type: string
shopID:
description: 'Идентификатор магазина, в рамках которого был создан платеж'
type: string
createdAt:
description: Дата и время создания
type: string
format: date-time
amount:
description: |
Стоимость предлагаемых товаров или услуг, в минорных денежных
единицах, например в копейках в случае указания российских рублей в
качестве валюты.
type: integer
format: int64
minimum: 1
fee:
description: 'Комиссия системы, в минорных денежных единицах'
type: integer
format: int64
minimum: 0
currency:
description: 'Валюта, символьный код согласно [ISO 4217](http://www.iso.org/iso/home/standards/currency_codes.htm).'
type: string
pattern: '^[A-Z]{3}$'
payer:
$ref: '#/definitions/Payer'
flow:
$ref: '#/definitions/PaymentFlow'
geoLocationInfo:
$ref: '#/definitions/GeoLocationInfo'
metadata:
description: Связанные с платежом метаданные
type: object
invoiceMetadata:
description: Связанные с инвойсом метаданные
type: object
statusChangedAt:
description: Дата и время изменения статуса платежа
type: string
format: date-time
makeRecurrent:
description: |
Признак создания родительского рекуррентного платежа.
Успешно проведеный платеж с этим признаком можно использовать как родительский в других рекуррентных платежах.
type: boolean
default: false
readOnly: true
cart:
$ref: '#/definitions/InvoiceCart'
PaymentStatus:
type: object
required:
- status
properties:
status:
description: Статус платежа
type: string
enum:
- pending
- processed
- captured
- cancelled
- refunded
- failed
error:
$ref: '#/definitions/PaymentError'
PaymentTerminalDetails:
required:
- provider
properties:
provider:
description: Провайдер терминальной сети
type: string
enum:
- euroset
PaymentTerminalProvider:
description: Провайдер терминальной сети
type: string
enum:
- euroset
PaymentTool:
type: object
discriminator: paymentToolType
properties:
paymentToolType:
description: Тип платежного средства
type: string
enum:
- CardData
required:
- paymentToolType
PaymentToolDetails:
type: object
discriminator: detailsType
description: Детали платежного средства
readOnly: true
required:
- detailsType
properties:
detailsType:
description: Тип информации о платежном средстве
type: string
PaymentToolDetailsBankCard:
type: object
allOf:
- $ref: '#/definitions/PaymentToolDetails'
- $ref: '#/definitions/BankCardDetails'
PaymentToolDetailsDigitalWallet:
type: object
allOf:
- $ref: '#/definitions/PaymentToolDetails'
- $ref: '#/definitions/DigitalWalletDetails'
PaymentToolDetailsPaymentTerminal:
type: object
allOf:
- $ref: '#/definitions/PaymentToolDetails'
- $ref: '#/definitions/PaymentTerminalDetails'
PayoutToolInfo:
type: object
discriminator: payoutToolType
required:
- payoutToolType
properties:
payoutToolType:
type: string
enum:
- RussianBankAccount
- WalletInfo
PayoutToolModification:
type: object
properties:
creation:
$ref: '#/definitions/PayoutToolParams'
PayoutToolModificationUnit:
type: object
required:
- payoutToolID
- modification
properties:
payoutToolID:
type: string
modification:
$ref: '#/definitions/PayoutToolModification'
PayoutToolParams:
type: object
required:
- currency
- toolInfo
properties:
currency:
$ref: '#/definitions/CurrencyRef'
toolInfo:
$ref: '#/definitions/PayoutToolInfo'
PersonAnthroponym:
description: Сведения о документе подтверждающем право пребывания в РФ
type: object
properties:
first_name:
description: Имя
type: string
second_name:
description: Фамилия
type: string
middle_name:
description: Отчество
type: string
ProductionBusiness:
type: object
allOf:
- $ref: '#/definitions/BusinessInfo'
PropertyInfo:
type: string
QuarterlyTaxReturnWithMark:
type: object
allOf:
- $ref: '#/definitions/FinancialPosition'
QuarterlyTaxReturnWithoutMark:
type: object
allOf:
- $ref: '#/definitions/FinancialPosition'
Questionary:
type: object
allOf:
- $ref: '#/definitions/QuestionaryParams'
QuestionaryData:
description: Содержание анкеты
type: object
properties:
contactInfo:
$ref: '#/definitions/ContactInfo'
shopInfo:
$ref: '#/definitions/ShopInfo'
bankAccount:
$ref: '#/definitions/BankAccount'
contractor:
$ref: '#/definitions/Contractor'
QuestionaryGetParams:
type: object
required:
- questionary_id
- reference
properties:
questionary_id:
description: id анкеты
type: string
reference:
$ref: '#/definitions/Reference'
QuestionaryParams:
type: object
required:
- id
- owner_id
- data
- version
properties:
id:
description: id анкеты
type: string
owner_id:
description: id владельца анкеты
type: string
data:
$ref: '#/definitions/QuestionaryData'
version:
$ref: '#/definitions/Version'
Reason:
type: string
RecurrentPayer:
type: object
description: Многоразовое платежное средство на основе другого платежа
allOf:
- $ref: '#/definitions/Payer'
- type: object
required:
- contactInfo
- recurrentParentPayment
properties:
contactInfo:
$ref: '#/definitions/ContactInfo'
recurrentParentPayment:
$ref: '#/definitions/PaymentRecurrentParent'
Reference:
type: object
discriminator: referenceType
properties:
referenceType:
type: string
required:
- referenceType
ReferenceVersion:
type: object
allOf:
- $ref: '#/definitions/Reference'
- type: object
required:
- version
properties:
version:
$ref: '#/definitions/Version'
Refund:
type: object
required:
- id
- createdAt
- amount
- currency
- status
properties:
id:
description: Идентификатор возврата
type: string
createdAt:
description: Дата и время осуществления
type: string
format: date-time
amount:
description: |
Сумма возврата, в минорных денежных единицах, например в копейках в случае указания российских рублей в качестве валюты.
type: integer
format: int64
minimum: 1
currency:
description: 'Валюта, символьный код согласно [ISO 4217](http://www.iso.org/iso/home/standards/currency_codes.htm).'
type: string
pattern: '^[A-Z]{3}$'
reason:
description: Причина осуществления возврата
type: string
cart:
description: |
Итоговая корзина предоставляемых товаров и услуг, которая должна формироваться из корзины инвойса исключением позиций, по которым производился возврат. Сумма корзины должна совпадать с суммой платежа за вычетом суммы возврата.
type: array
minItems: 1
maxItems: 100
items:
$ref: '#/definitions/InvoiceLine'
status:
description: Статус возврата
type: string
enum:
- pending
- succeeded
- failed
error:
description: |
Данные ошибки, возникшей в процессе проведения возврата, в случае если
возврат был неуспешен
type: object
required:
- code
- message
properties:
code:
description: 'Код ошибки, пригодный для обработки автоматическими системами'
type: string
message:
description: 'Описание ошибки, пригодное для восприятия человеком'
type: string
RefundSearchResult:
type: object
allOf:
- type: object
required:
- invoiceID
- paymentID
properties:
invoiceID:
description: Идентификатор инвойса
type: string
paymentID:
description: Идентификатор платежа
type: string
- $ref: '#/definitions/Refund'
RefundStatus:
type: object
required:
- status
properties:
status:
description: Статус возврата
type: string
enum:
- pending
- succeeded
- failed
error:
description: |
Данные ошибки, возникшей в процессе проведения возврата, в случае если
возврат был неуспешен
type: object
required:
- code
- message
properties:
code:
description: 'Код ошибки, пригодный для обработки автоматическими системами'
type: string
message:
description: 'Описание ошибки, пригодное для восприятия человеком'
type: string
RegistrationInfo:
description: Сведения о предпренимательской деятельности
type: object
discriminator: registrationInfoType
required:
- registrationInfoType
properties:
registrationInfoType:
type: string
RelationIndividualEntity:
description: В отношении индивидуального предпринимателя
type: string
enum:
- InsolvencyProceedings
- BankruptJudicialDecision
- LiquidationProcess
ReportPreferences:
type: object
properties:
serviceAcceptanceActPreferences:
$ref: '#/definitions/ServiceAcceptanceActPreferences'
Representative:
type: object
required:
- position
- fullName
- document
properties:
position:
description: Наименование должности представителя
type: string
fullName:
description: ФИО представителя
type: string
document:
description: 'Документ, на основании которого действует представитель'
$ref: '#/definitions/RepresentativeDocument'
RepresentativeDocument:
type: object
discriminator: documentType
required:
- documentType
properties:
documentType:
type: string
enum:
- ArticlesOfAssociation
- LegalAgreement
ResidenceApprove:
description: Сведения о документе подтверждающем право пребывания в РФ
type: object
properties:
name:
description: Наименования документа
type: string
series:
type: string
number:
type: string
beginning_date:
description: Дата начала срока действия права пребывания (проживания)
type: string
expiration_date:
description: Дата окончания срока действия права пребывания (проживания)
type: string
ResidencyInfo:
description: Информация об иностранном налоговом резиденстве
type: object
discriminator: residencyInfoType
required:
- residencyInfoType
properties:
residencyInfoType:
type: string
RetailTradeBusiness:
type: object
allOf:
- $ref: '#/definitions/BusinessInfo'
RussianBankAccount:
description: Банковский счёт
type: object
allOf:
- $ref: '#/definitions/BankAccount'
- type: object
properties:
account:
type: string
bank_name:
type: string
bank_post_account:
type: string
bank_bik:
type: string
RussianDomesticPassport:
type: object
allOf:
- $ref: '#/definitions/IdentityDocument'
- type: object
properties:
series:
type: string
number:
type: string
issuer:
description: Наименование выдавшего паспорт органа
type: string
issuer_code:
description: Код подразделения выдавшего паспорт органа
type: string
issued_at:
description: Дата выдачи паспорта
type: string
RussianIndividualEntity:
type: object
allOf:
- $ref: '#/definitions/IndividualEntity'
- type: object
properties:
russian_private_entity:
$ref: '#/definitions/RussianPrivateEntity'
inn:
type: string
identity_document:
$ref: '#/definitions/IdentityDocument'
property_info:
type: array
items:
$ref: '#/definitions/PropertyInfo'
migration_card_info:
$ref: '#/definitions/MigrationCardInfo'
residence_approve:
$ref: '#/definitions/ResidenceApprove'
registration_info:
$ref: '#/definitions/RegistrationInfo'
license_info:
$ref: '#/definitions/LicenseInfo'
individual_person_categories:
$ref: '#/definitions/IndividualPersonCategories'
principal_activity:
$ref: '#/definitions/Activity'
additional_info:
$ref: '#/definitions/AdditionalInfo'
residency_info:
$ref: '#/definitions/ResidencyInfo'
RussianLegalEntity:
description: 'Анкета юридического лица, резидент РФ'
type: object
allOf:
- $ref: '#/definitions/LegalEntity'
- type: object
properties:
name:
description: 'Наименование, фирменное наименование на русском языке'
type: string
foreign_name:
description: 'Наименование, фирменное наименование на иностранном языке'
type: string
legal_form:
description: Организационно-правовая форма
type: string
inn:
description: ИНН
type: string
registration_info:
$ref: '#/definitions/RegistrationInfo'
additional_space:
description: Наличие дополнительных площадей
type: string
property_info:
type: array
items:
$ref: '#/definitions/PropertyInfo'
okato_code:
description: код в соответствии с ОКАТО
type: string
okpo_code:
description: код в соответствии с ОКПО
type: string
postal_address:
type: string
founders_info:
$ref: '#/definitions/FoundersInfo'
license_info:
$ref: '#/definitions/LicenseInfo'
principal_activity:
$ref: '#/definitions/Activity'
legal_owner_info:
$ref: '#/definitions/LegalOwnerInfo'
beneficial_owners:
type: array
items:
$ref: '#/definitions/BeneficialOwner'
additional_info:
$ref: '#/definitions/AdditionalInfo'
residency_info:
$ref: '#/definitions/ResidencyInfo'
RussianLegalEntityFounder:
type: object
allOf:
- $ref: '#/definitions/Founder'
- type: object
properties:
inn:
description: ИНН
type: string
ogrn:
description: ОГРН
type: string
fullName:
description: Полное наименование юридического лица
type: string
RussianPrivateEntity:
type: object
description: Одноразовое платежное средство
properties:
person_anthroponym:
description: ФИО
$ref: '#/definitions/PersonAnthroponym'
birth_date:
description: Дата рождения
type: string
birth_place:
description: Место рождения
type: string
citizenship:
description: Гражданство
type: string
residence_address:
description: Адрес места жительства
type: string
actual_address:
description: Фактический адрес
type: string
contact_info:
description: Контактная информация
$ref: '#/definitions/ContactInfo'
ScheduleModification:
type: object
properties:
schedule:
$ref: '#/definitions/BusinessScheduleRef'
SecuritiesTradingBusiness:
type: object
allOf:
- $ref: '#/definitions/BusinessInfo'
ServiceAcceptanceActPreferences:
type: object
required:
- schedule
- signer
properties:
schedule:
$ref: '#/definitions/BusinessScheduleRef'
signer:
$ref: '#/definitions/Representative'
ShopAccountParams:
type: object
required:
- currency
properties:
currency:
$ref: '#/definitions/CurrencyRef'
ShopContractModification:
type: object
required:
- contractID
- payoutToolID
properties:
contractID:
type: string
payoutToolID:
type: string
ShopDetails:
type: object
required:
- name
properties:
name:
description: Название магазина
type: string
maxLength: 100
description:
description: Краткое описание
type: string
maxLength: 1000
ShopInfo:
description: Изменение деталей магазина
type: object
allOf:
- $ref: '#/definitions/ShopDetails'
- type: object
required:
- location
properties:
location:
$ref: '#/definitions/ShopLocation'
ShopLocation:
description: 'Местоположение магазина, по которому можно его найти'
type: object
discriminator: locationType
required:
- locationType
properties:
locationType:
description: Тип местоположения
type: string
ShopLocationUrl:
description: Местоположение в Интернете
type: object
allOf:
- $ref: '#/definitions/ShopLocation'
- type: object
required:
- url
properties:
url:
description: URL сайта магазина
type: string
format: uri
maxLength: 1000
ShopModification:
type: object
properties:
creation:
$ref: '#/definitions/ShopParams'
categoryModification:
$ref: '#/definitions/CategoryRef'
detailsModification:
$ref: '#/definitions/ShopDetails'
contractModification:
$ref: '#/definitions/ShopContractModification'
payoutToolModification:
type: string
locationModification:
$ref: '#/definitions/ShopLocation'
shopAccountCreation:
$ref: '#/definitions/ShopAccountParams'
payoutScheduleModification:
$ref: '#/definitions/ScheduleModification'
ShopModificationUnit:
type: object
allOf:
- $ref: '#/definitions/PartyModification'
required:
- id
- modification
properties:
id:
description: Идентификатор магазина
type: string
maxLength: 40
minLength: 1
modification:
$ref: '#/definitions/ShopModification'
ShopParams:
description: Параметры магазина
type: object
required:
- category
- location
- details
- contractID
- payoutToolID
properties:
category:
$ref: '#/definitions/CategoryRef'
location:
$ref: '#/definitions/ShopLocation'
details:
$ref: '#/definitions/ShopDetails'
contractID:
type: string
payoutToolID:
type: string
Snapshot:
type: object
allOf:
- $ref: '#/definitions/Questionary'
StatementOfDuty:
type: object
allOf:
- $ref: '#/definitions/FinancialPosition'
StatusChanged:
type: object
allOf:
- $ref: '#/definitions/StatusModification'
StatusModification:
description: Единичное изменение статуса заявки
type: object
discriminator: statusModificationType
required:
- statusModificationType
properties:
statusModificationType:
type: string
enum:
- StatusChanged
StatusModificationUnit:
type: object
allOf:
- $ref: '#/definitions/ClaimModification'
- type: object
required:
- status
- modification
properties:
status:
description: Статус заявки
type: string
enum:
- pending
- review
- pendingAcceptance
- accepted
- denied
- revoked
modification:
$ref: '#/definitions/StatusModification'
SubError:
description: |
Детализация описания ошибки
type: object
required:
- code
properties:
code:
description: Детализация кода ошибки
type: string
subError:
$ref: '#/definitions/SubError'
TransportBusiness:
type: object
allOf:
- $ref: '#/definitions/BusinessInfo'
Version:
description: Номер версии
type: integer
format: int64
minimum: 1
default: 1
WalletInfo:
type: object
required:
- walletID
properties:
walletID:
type: string
WholesaleTradeBusiness:
type: object
allOf:
- $ref: '#/definitions/BusinessInfo'