Перейти к основному содержимому

Операции

Фильтрация выплат​

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

Запрос​

Метод: POST URL: https://b2b.selfwork.ru/openapi/v2/organisation/{organisationId}/operations/filter

Общая структура запроса описана в разделе Фильтрация: общая структура.

Path Parameters​

ПараметрТипОбязательныйОписание
organisationIdstring (uuid)ДаИдентификатор организации

Доступные фильтры (filters)​

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

Имя (name)Тип значения (value)Пример значенияОписание
IDstring (uuid) / array["3f2b8c1e-5d4a-4e6b-9c7d-1a2b3c4d5e6f"]Фильтрация по ID выплат
NUMBERnumber / array[number][1001, 1002]Фильтрация по числовым номерам выплат
REGISTRY_IDstring (uuid) / array["8a7b6c5d-4e3f-4a1b-9c8d-7e6f5a4b3c2d"]Фильтрация по ID реестров
INDIVIDUAL_IDstring (uuid) / array["c1d2e3f4-a5b6-4c7d-8e9f-0a1b2c3d4e5f"]Фильтрация по ID исполнителей
STATUSstring / array[string]["PAYED_SUCCESS", "PAYED_ERROR"]Статусы выплаты (см. справочник ниже)
PAYMENT_STATUSstring / array[string]["SUCCESS", "FAILED"]Упрощённый статус выплаты (см. справочник ниже)
SUBJECT_TYPEstring / array[string]["MANUAL"]Предмет выплаты (см. справочник ниже)
SUBJECT_IDstring / array[string]["3f2b8c1e-5d4a-4e6b-9c7d-1a2b3c4d5e6f"]Идентификатор предмета выплаты
PAYMENT_METHOD_TYPEstring / array[string]["BANK_CARD", "BANK_ACCOUNT", "BANK_FPS"]Тип способа оплаты
CREATED_ATдиапазон дат{"from": "2026-01-01T00:00:00.000Z", "to": "2026-01-31T23:59:59.999Z"}Диапазон дат создания выплаты
REGISTRATION_ATдиапазон дат{"from": "2026-01-01T00:00:00.000Z", "to": "2026-01-31T23:59:59.999Z"}Диапазон дат проведения выплаты
AMOUNTдиапазон чисел{"from": 10000, "to": 100000}Диапазон суммы выплаты в копейках
CONTRACTOR_FULL_NAMEstring"Иванов"Поиск по ФИО исполнителя

Фильтр ORGANISATION_ID тоже есть в схеме, но передавать его не нужно: организация всегда берётся из organisationId в пути.

Доступные сортировки​

Поле (field)Описание
IDID выплаты
NUMBERНомер выплаты
AMOUNTСумма выплаты
CREATED_ATДата создания
REGISTRATION_ATДата проведения выплаты

Справочник статусов (STATUS)​

СтатусОписание
NEWНовая выплата
CHECKEDПрошла предварительную проверку
ERRORОшибка предварительной проверки
PAYINGВ процессе проведения платежа
PAYED_SUCCESSУспешно проведена
PAYED_ERRORОшибка при проведении платежа
PAYED_LIMITS_ERRORПревышение лимитов при проведении
MANUAL_PAYТребует ручной обработки
NETWORK_ERRORСетевая ошибка
ON_SIGNОжидает подписания акта
SIGNEDАкт подписан
DECLINEDОтклонена
REPEATED_PAYMENTПовторная попытка платежа
NOT_HAVE_MONEYНедостаточно средств
CANCELLATIONВ процессе отмены
CANCELEDОтменена

Новые выплаты проходят только статусы NEW, CHECKED, ON_SIGN, PAYING, PAYED_SUCCESS, ERROR и PAYED_ERROR. Остальные значения встречаются только у исторических выплат.

Справочник упрощённых статусов (PAYMENT_STATUS)​

СтатусОписаниеSTATUS у новых выплат
DRAFTВыплата в черновике реестра: оплата не запускаласьNEW
IN_PROGRESSВыплата в работеCHECKED, ON_SIGN, PAYING
SUCCESSВыплата проведенаPAYED_SUCCESS
FAILEDВыплата завершилась ошибкой, причина — в failureReasonERROR, PAYED_ERROR

Справочник предметов выплаты (SUBJECT_TYPE)​

ЗначениеОписание
TASK_DEALСделка по объявлению о задаче
SIDE_JOB_DEALСделка по подработке
MANUALРучная выплата из реестра без сделки: subjectId равен id выплаты

Справочник детализаций статуса (substatus)​

SubstatusОписание
SERVICE_ERRORОшибка сервиса
FNS_ERRORОшибка ФНС
BALANCE_ERRORОшибка баланса
ACT_REJECT_ERRORОшибка отклонения акта
ACT_NOT_SIGNEDАкт не подписан
SELFEMPLOYED_LIMIT_ERRORПревышение лимита самозанятого
SELFEMPLOYED_MAX_LIMIT_ERRORДостигнут максимальный лимит самозанятого
SELFEMPLOYED_NOT_BOUNDСамозанятый не привязан
NOT_SELFEMPLOYEDНе является самозанятым
LEGAL_IS_BLOCKED_ERRORЮрлицо заблокировано
SUPPORT_CANCELОтмена службой поддержки
BLOCKED_BY_FRODЗаблокировано антифродом
PROVIDER_NOT_SUPPORT_PHYSICAL_PAYMENTПровайдер не поддерживает выплаты физлицам

Справочник причин ошибки (failureReason)​

failureReason принимает все значения substatus (см. справочник выше) и, дополнительно, следующие:

failureReasonОписание
CONTRACTOR_NOT_FOUNDИсполнитель не найден
CONTRACT_NOT_FOUNDДоговор не найден
PAYMENT_METHOD_NOT_FOUNDСпособ выплаты не найден
AMOUNT_NOT_SPECIFIEDНе указана сумма
PURPOSE_NOT_SPECIFIEDНе указано назначение платежа
CONTRACTOR_HAS_WRONG_STATUSНеподходящий статус исполнителя
REGISTRY_UNSUPPORTED_CONTRACTOR_TYPEТип исполнителя не поддерживается реестром
CONTRACTOR_REQUISITE_IS_WRONGНекорректные реквизиты исполнителя
PAYOUT_LIMIT_EXCEEDEDПревышен лимит выплат
COMPANY_DISABLED_EDOУ компании отключён ЭДО
CONNECT_DEAL_TO_PAYMENT_ERRORНе удалось связать выплату со сделкой
CREATE_PAY_REGISTRY_TASK_ERRORОшибка при создании задачи оплаты реестра
CREATE_REGISTRY_WITH_PAYOUT_ERRORОшибка при создании реестра с выплатой
PAY_REGISTRY_ERRORОшибка запроса на оплату реестра
PROVIDER_REJECTEDФинансовый сервис отказал в выплате, причина — в failureMessage
RECEIPT_REGISTRATION_REJECTEDФНС окончательно отказала в регистрации дохода, выплата не отправлялась
RECEIPT_REGISTRATION_TIMEOUTДоход не удалось зарегистрировать в ФНС за отведённый срок, выплата не отправлялась
REQUISITE_RESTRICTEDРеквизит выплаты в стоп-листе платформы, выплата не отправлялась

Пример запроса​

curl --location "https://b2b.selfwork.ru/openapi/v2/organisation/550e8400-e29b-41d4-a716-446655440000/operations/filter" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer ВАШ_API_КЛЮЧ" \
--data '{
"filters": [
{ "name": "PAYMENT_STATUS", "value": ["SUCCESS"] },
{ "name": "AMOUNT", "value": { "from": 10000, "to": 1000000 } }
],
"order": [{ "field": "CREATED_AT", "sort": "DESC" }],
"pagination": { "limit": 20, "lastId": null }
}'

Пример успешного ответа​

{
"requestId": "d6475869-7a8b-9abc-0123-012345678901",
"success": true,
"result": {
"lastId": "3f2b8c1e-5d4a-4e6b-9c7d-1a2b3c4d5e6f",
"items": [
{
"id": "3f2b8c1e-5d4a-4e6b-9c7d-1a2b3c4d5e6f",
"number": 1001,
"registryId": "8a7b6c5d-4e3f-4a1b-9c8d-7e6f5a4b3c2d",
"contractor": {
"id": "c1d2e3f4-a5b6-4c7d-8e9f-0a1b2c3d4e5f",
"lastName": "Иванов",
"name": "Иван",
"middleName": "Иванович",
"inn": "770123456789"
},
"amount": 150000,
"purpose": "Оплата по договору №123",
"paymentMethod": {
"type": "BANK_ACCOUNT",
"details": {
"accountNumber": "40817810099910004312",
"bik": "044525225"
}
},
"status": "PAYED_SUCCESS",
"paymentStatus": "SUCCESS",
"failureReason": null,
"failureMessage": null,
"contract": {
"id": "6b1f0c2a-9d3e-4f5a-8b7c-2d1e0f9a8b7c",
"name": "Договор оказания услуг",
"status": "SIGNED",
"url": "https://storage.example.com/documents/contract.pdf",
"signedUrl": "https://storage.example.com/documents/contract-signed.pdf",
"signedAt": "2026-04-01T12:00:00.000Z",
"createdAt": "2026-04-01T10:00:00.000Z"
},
"partnerCommission": 10000,
"taxRetention": 9000,
"subjectType": "MANUAL",
"subjectId": "3f2b8c1e-5d4a-4e6b-9c7d-1a2b3c4d5e6f",
"registrationAt": "2026-04-15T10:00:02.000Z",
"createdAt": "2026-04-15T09:00:00.000Z"
}
]
}
}

Описание полей ответа​

ПолеОписание
requestIdУникальный идентификатор запроса
successСтатус выполнения запроса
resultКонтейнер с данными выборки
lastIdID последнего элемента (для пагинации)
itemsМассив объектов выплат
idID выплаты (UUID)
numberЧисловой номер выплаты (он же payment.id в событиях Маркетплейса)
registryIdID реестра выплат (UUID); у исторических выплат — null
contractorКраткая информация об исполнителе (id, ФИО, ИНН)
amountСумма выплаты до удержания налога в копейках
purposeНазначение платежа
paymentMethodСпособ оплаты (type и маскированные details); null — реквизит не выбран
statusСтатус выплаты
substatusДетализация статуса (опционально)
paymentStatusУпрощённый статус: DRAFT, IN_PROGRESS, SUCCESS, FAILED
failureReasonПричина ошибки выплаты (см. справочник выше); null — ошибки нет
failureMessageТекст ошибки — от проверки перед оплатой или от финансового сервиса; null — ошибки нет
contractСвязанный договор (опционально)
taxRatePercentНалоговая ставка НПД (%) — только у исторических выплат (опционально)
partnerCommissionКомиссия платформы по тарифу в копейках (опционально)
taxRetentionНалог, удержанный в налоговую копилку исполнителя, в копейках; null — без удержания
subjectTypeПредмет выплаты: TASK_DEAL, SIDE_JOB_DEAL, MANUAL
subjectIdИдентификатор предмета выплаты; у ручной выплаты — сама выплата
registrationAtДата проведения выплаты (итогового статуса), а до неё — дата создания (ISO 8601)
createdAtДата создания выплаты (ISO 8601)

Поля объекта исполнителя (contractor)​

ПолеТипОписание
idstring (uuid)ID исполнителя в организации; у исторических выплат — null
lastNamestringФамилия
namestringИмя; у исторических выплат — ФИО одной строкой
middleNamestringОтчество (опционально)
innstringИНН исполнителя

Поля способа выплаты (paymentMethod)​

ПолеТипОписание
typestringТип способа оплаты: BANK_CARD, BANK_ACCOUNT, BANK_FPS
detailsobjectРеквизиты, состав зависит от type (см. ниже)

Состав details в зависимости от type:

typeПоля details
BANK_CARDfirst4 — первые 4 цифры карты, last4 — последние 4 цифры карты
BANK_ACCOUNTaccountNumber — номер счёта, bik — БИК банка
BANK_FPSphone — телефон в СБП, bankName — банк, bankId — ID банка в СБП

Поля связанного договора (contract)​

ПолеТипОписание
idstringID документа (UUID)
namestringНазвание документа
statusstringСтатус документа
urlstringСсылка на документ
signedUrlstringСсылка на подписанную копию; может быть null
signedAtstringДата подписания (ISO 8601); может быть null
createdAtstringДата создания (ISO 8601)

Возможные ошибки​

CodeОписание
VALIDATION_ERRORОшибка валидации
FORBIDDEN_ERRORОшибка авторизации
UNKNOWN_ERRORОшибка сервера

 

Получение информации о выплате​

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

Запрос​

Метод: GET URL: https://b2b.selfwork.ru/openapi/v2/organisation/{organisationId}/operations/{paymentId}

Path Parameters​

ПараметрТипОбязательныйОписание
organisationIdstring (uuid)ДаИдентификатор организации
paymentIdstring (uuid)ДаИдентификатор выплаты

Пример запроса​

curl --location "https://b2b.selfwork.ru/openapi/v2/organisation/550e8400-e29b-41d4-a716-446655440000/operations/3f2b8c1e-5d4a-4e6b-9c7d-1a2b3c4d5e6f" \
--header "accept: application/json" \
--header "Authorization: Bearer ВАШ_API_КЛЮЧ"

Пример успешного ответа​

{
"requestId": "e758697a-8b9c-abcd-1234-123456789012",
"result": {
"id": "3f2b8c1e-5d4a-4e6b-9c7d-1a2b3c4d5e6f",
"number": 1001,
"registryId": "8a7b6c5d-4e3f-4a1b-9c8d-7e6f5a4b3c2d",
"contractor": {
"id": "c1d2e3f4-a5b6-4c7d-8e9f-0a1b2c3d4e5f",
"lastName": "Иванов",
"name": "Иван",
"middleName": "Иванович",
"inn": "770123456789"
},
"amount": 150000,
"purpose": "Оплата по договору №123",
"paymentMethod": {
"type": "BANK_ACCOUNT",
"details": {
"accountNumber": "40817810099910004312",
"bik": "044525225"
}
},
"status": "PAYED_SUCCESS",
"paymentStatus": "SUCCESS",
"failureReason": null,
"failureMessage": null,
"contract": {
"id": "6b1f0c2a-9d3e-4f5a-8b7c-2d1e0f9a8b7c",
"name": "Договор оказания услуг",
"status": "SIGNED",
"url": "https://storage.example.com/documents/contract.pdf",
"signedUrl": "https://storage.example.com/documents/contract-signed.pdf",
"signedAt": "2026-04-01T12:00:00.000Z",
"createdAt": "2026-04-01T10:00:00.000Z"
},
"partnerCommission": 10000,
"taxRetention": 9000,
"subjectType": "MANUAL",
"subjectId": "3f2b8c1e-5d4a-4e6b-9c7d-1a2b3c4d5e6f",
"registrationAt": "2026-04-15T10:00:02.000Z",
"createdAt": "2026-04-15T09:00:00.000Z",
"financeOperation": {
"operationId": "9e8d7c6b-5a4f-4e3d-8c2b-1a0f9e8d7c6b",
"status": "SUCCEEDED"
},
"relatedDocuments": [
{
"type": "CONTRACT",
"id": "6b1f0c2a-9d3e-4f5a-8b7c-2d1e0f9a8b7c",
"date": "2026-04-01",
"status": "SIGNED",
"url": "https://storage.example.com/documents/contract.pdf",
"localUrl": "https://storage.example.com/documents/contract-signed.pdf",
"createdAt": "2026-04-01T10:00:00.000Z"
},
{
"type": "RECEIPT",
"id": "200abc1234",
"date": "2026-04-15",
"url": "https://example.com/receipts/200abc1234",
"localUrl": "https://storage.example.com/receipts/200abc1234.pdf",
"createdAt": "2026-04-15T09:30:00.000Z"
}
]
},
"success": true
}

Описание полей ответа (result)​

ПолеОписание
id, number, registryId, contractor, amount, purpose, paymentMethod, status, substatus, paymentStatus, failureReason, failureMessage, contract, taxRatePercent, partnerCommission, taxRetention, subjectType, subjectId, registrationAt, createdAtСм. описание полей в методе "Фильтрация выплат"
financeOperationТекущее состояние операции выплаты в финансовом сервисе; null — операция ещё не создана
relatedDocumentsДоговор, акт и чек выплаты

Поля contractor, paymentMethod и contract описаны в методе «Фильтрация выплат».

Поля операции в финансовом сервисе (financeOperation)​

ПолеТипОписание
operationIdstringИдентификатор операции в финансовом сервисе
statusstringСтатус операции: PROCESSING — деньги в пути, SUCCEEDED — дошли, FAILED — отказ
taskStatusstringСтатус задачи выплаты в финансовом сервисе (опционально)
withdrawalStatusstringСтатус банковского вывода; может быть null (опционально)
requiresReconciliationbooleanВывод не завершён и требует сверки (опционально)

Поля связанного документа (relatedDocuments[])​

ПолеТипОписание
typestringТип документа: CONTRACT, ACT, RECEIPT
idstringИдентификатор документа: UUID договора и акта, идентификатор чека в ФНС
datestringДата документа, YYYY-MM-DD (опционально)
statusstringСтатус документа (опционально)
urlstringВнешняя ссылка, например на чек ФНС (опционально)
localUrlstringСсылка на копию документа (опционально)
createdAtstringДата создания (ISO 8601) (опционально)

 

Получение истории статусов выплаты​

Метод возвращает список записей истории смены статусов конкретной выплаты по этапам её жизненного цикла.

Запрос​

Метод: GET URL: https://b2b.selfwork.ru/openapi/v2/organisation/{organisationId}/operations/{paymentId}/history

Path Parameters​

ПараметрТипОбязательныйОписание
organisationIdstring (uuid)ДаИдентификатор организации
paymentIdstring (uuid)ДаИдентификатор выплаты

Справочник этапов (payoutStage)​

ЭтапОписание
ACT_SIGNINGПодписание акта
RECEIPT_REGРегистрация чека ФНС
PAYOUT_EXECUTIONПроведение выплаты в финансовом сервисе
RECEIPT_CANCELLATIONАннулирование чека в ФНС после окончательного неуспеха выплаты

Справочник статусов этапа (payoutStageStatus)​

СтатусОписание
PROCESSINGВ процессе
SUCCESSУспешно завершён
ERRORЗавершён с ошибкой

Пример запроса​

curl --location "https://b2b.selfwork.ru/openapi/v2/organisation/550e8400-e29b-41d4-a716-446655440000/operations/3f2b8c1e-5d4a-4e6b-9c7d-1a2b3c4d5e6f/history" \
--header "accept: application/json" \
--header "Authorization: Bearer ВАШ_API_КЛЮЧ"

Пример успешного ответа​

{
"requestId": "f8697a8b-9cab-cdef-2345-234567890123",
"result": [
{
"id": "0b9a8c7d-6e5f-4a3b-8c2d-1e0f9a8b7c6d",
"payoutStage": "ACT_SIGNING",
"payoutStageStatus": "SUCCESS",
"createdAt": "2026-04-15T09:00:00.000Z"
},
{
"id": "1c0b9d8e-7f6a-4b5c-9d3e-2f1a0b9c8d7e",
"payoutStage": "RECEIPT_REG",
"payoutStageStatus": "SUCCESS",
"createdAt": "2026-04-15T09:30:00.000Z"
},
{
"id": "2d1c0e9f-8a7b-4c6d-8e4f-3a2b1c0d9e8f",
"payoutStage": "PAYOUT_EXECUTION",
"payoutStageStatus": "SUCCESS",
"createdAt": "2026-04-15T10:00:02.000Z"
}
],
"success": true
}

Описание полей ответа (items)​

ПолеОписание
idID записи истории (UUID)
payoutStageЭтап жизненного цикла выплаты (см. справочник выше)
payoutStageStatusСтатус этапа
createdAtДата и время изменения состояния (ISO 8601 UTC)