Для AI-агентов: markdown этой страницы — /docs-content/entities/crm-payments/list.md индекс документации — /llms.txt
Список оплат CRM
GET /v1/crm-payments
Возвращает все оплаты одного объекта CRM, например сделки, с фильтром и сортировкой по полям оплаты.
Параметры
| Параметр | Тип | Обяз. | Описание |
|---|---|---|---|
entityTypeId (query) |
number | да | Тип объекта CRM. Для сделки — 2 |
entityId (query) |
number | да | ID объекта CRM. Для сделки — ID из GET /v1/deals |
filter (query) |
object | нет | Отбор по полям оплаты из таблицы «Поля ответа» — только точное совпадение значения, ключ без операторов сравнения. Синтаксис фильтрации. Пример: ?filter[paid]=Y |
order (query) |
object | нет | Сортировка по полям оплаты из таблицы «Поля ответа»: asc, desc, ASC или DESC. Пример: ?order[id]=desc |
Пагинации нет: ответ содержит все оплаты объекта за один вызов. Других query-параметров метод не принимает, limit и offset тоже отклоняются.
Примеры
curl — личный ключ
curl "https://vibecode.bitrix24.tech/v1/crm-payments?entityTypeId=2&entityId=8761&order[id]=asc" \
-H "X-Api-Key: YOUR_API_KEY"
curl — OAuth-приложение
curl "https://vibecode.bitrix24.tech/v1/crm-payments?entityTypeId=2&entityId=8761&order[id]=asc" \
-H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN"
JavaScript — личный ключ
const params = new URLSearchParams({ entityTypeId: '2', entityId: '8761', 'order[id]': 'asc' })
const res = await fetch(`https://vibecode.bitrix24.tech/v1/crm-payments?${params}`, {
headers: {
'X-Api-Key': 'YOUR_API_KEY',
},
})
const { data, meta } = await res.json()
console.log(`Оплат: ${meta.total}`, data.map(p => `${p.accountNumber} — ${p.paid}`))
JavaScript — OAuth-приложение
const params = new URLSearchParams({ entityTypeId: '2', entityId: '8761', 'order[id]': 'asc' })
const res = await fetch(`https://vibecode.bitrix24.tech/v1/crm-payments?${params}`, {
headers: {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
},
})
const { data, meta } = await res.json()
Поля ответа
| Поле | Тип | Описание |
|---|---|---|
success |
boolean | true при успехе |
data |
array | Оплаты объекта. Пустой массив, если оплат нет |
data[].id |
number | ID оплаты |
data[].accountNumber |
string | Номер оплаты: номер связанного заказа и порядковый номер оплаты через /, например 1029/2 |
data[].paid |
string | Отметка оплаты: Y — оплачена, N — нет |
data[].datePaid |
string | null | Время последней отметки «оплачена», ISO 8601 со смещением часового пояса. null, если отметки не было |
data[].empPaidId |
number | null | ID сотрудника, который последним отметил оплату. Список: GET /v1/users |
data[].paySystemId |
number | ID платёжной системы. Список: GET /v1/pay-systems |
data[].sum |
number | Сумма оплаты. Складывается из позиций оплаты, у новой оплаты — 0 |
data[].currency |
string | Код валюты. Список: GET /v1/currencies |
data[].paySystemName |
string | Название платёжной системы |
meta.total |
number | Число оплат в data |
Пример ответа
{
"success": true,
"data": [
{
"id": 563,
"accountNumber": "1029/1",
"paid": "N",
"datePaid": null,
"empPaidId": null,
"paySystemId": 19,
"sum": 3000,
"currency": "RUB",
"paySystemName": "ЮKassa"
},
{
"id": 565,
"accountNumber": "1029/2",
"paid": "Y",
"datePaid": "2026-10-05T09:29:34+03:00",
"empPaidId": 1317,
"paySystemId": 3,
"sum": 0,
"currency": "RUB",
"paySystemName": "Банковский перевод (Контакты)"
}
],
"meta": {
"total": 2
}
}
Пример ответа при ошибке
400 — фильтр или сортировка по полю, которого нет в ответе:
{
"success": false,
"error": {
"code": "UNKNOWN_FILTER_FIELD",
"message": "Filter and order support only payment response fields."
}
}
Ошибки
| HTTP | Код | Описание |
|---|---|---|
| 400 | MISSING_REQUIRED_FIELDS |
Не передан entityTypeId или entityId, либо значение не положительное целое |
| 400 | UNKNOWN_FILTER_FIELD |
В filter или order поле не из таблицы «Поля ответа», ключ с оператором сравнения, направление сортировки не из asc, desc, ASC, DESC, либо передан другой query-параметр |
| 404 | ENTITY_NOT_FOUND |
Объекта CRM с таким entityTypeId и entityId нет |
| 422 | BITRIX_ERROR |
Битрикс24 отклонил запрос, причина — в error.message |
| 403 | BITRIX_ACCESS_DENIED |
У пользователя ключа нет доступа к объекту CRM или оплате в Битрикс24 |
| 403 | SCOPE_DENIED |
API-ключ не имеет скоупа crm |
| 401 | TOKEN_MISSING |
API-ключ не имеет настроенных токенов |
| 401 | MISSING_API_KEY |
Не передан X-Api-Key |
Полный список общих ошибок API — Ошибки.
Известные особенности
Снятие отметки не очищает время и автора последней отметки. После снятия отметки поля datePaid и empPaidId сохраняют значения последней отметки. Признак текущего состояния — только paid.