Для AI-агентов: markdown этой страницы — /docs-content/entities/crm-payments/create.md индекс документации — /llms.txt
Создать оплату CRM
POST /v1/crm-payments
Создаёт пустую оплату для объекта CRM, например сделки: без позиций, с нулевой суммой и без отметки «оплачена».
Товары в оплату добавляются следующим шагом — позициями оплаты. Поля передаются плоско в корне JSON, без обёртки fields.
Поля запроса (body)
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
entityTypeId |
number | да | Тип объекта CRM. Для сделки — 2 |
entityId |
number | да | ID объекта CRM. Для сделки — ID из GET /v1/deals |
paySystemId |
number | нет | ID платёжной системы, неотрицательное целое. Список: GET /v1/pay-systems. Если не передан или равен 0, платёжная система назначается автоматически, её ID придёт в ответе |
Сумму и отметку оплаты при создании задать нельзя.
Примеры
curl — личный ключ
curl -X POST "https://vibecode.bitrix24.tech/v1/crm-payments" \
-H "X-Api-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "entityTypeId": 2, "entityId": 8761, "paySystemId": 1 }'
curl — OAuth-приложение
curl -X POST "https://vibecode.bitrix24.tech/v1/crm-payments" \
-H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN" \
-H "Content-Type: application/json" \
-d '{ "entityTypeId": 2, "entityId": 8761, "paySystemId": 1 }'
JavaScript — личный ключ
const res = await fetch('https://vibecode.bitrix24.tech/v1/crm-payments', {
method: 'POST',
headers: {
'X-Api-Key': 'YOUR_API_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({ entityTypeId: 2, entityId: 8761, paySystemId: 1 }),
})
const { data } = await res.json()
console.log('ID оплаты:', data.id, 'номер:', data.accountNumber)
JavaScript — OAuth-приложение
const res = await fetch('https://vibecode.bitrix24.tech/v1/crm-payments', {
method: 'POST',
headers: {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
'Content-Type': 'application/json',
},
body: JSON.stringify({ entityTypeId: 2, entityId: 8761, paySystemId: 1 }),
})
const { data } = await res.json()
Поля ответа
HTTP-статус успешного ответа — 201.
| Поле | Тип | Описание |
|---|---|---|
success |
boolean | true при успехе |
data.id |
number | ID созданной оплаты |
data.accountNumber |
string | Номер оплаты: номер связанного заказа и порядковый номер оплаты через /, например 1029/2 |
data.paid |
string | Отметка оплаты, у новой оплаты — N |
data.datePaid |
null | У новой оплаты — null |
data.empPaidId |
null | У новой оплаты — null |
data.paySystemId |
number | ID платёжной системы — переданный или назначенный автоматически. Список: GET /v1/pay-systems |
data.sum |
number | Сумма оплаты, у новой оплаты — 0 |
data.currency |
string | Код валюты. Список: GET /v1/currencies |
data.paySystemName |
string | Название платёжной системы |
meta.readbackUnavailable |
boolean | Приходит только со значением true, когда оплата создана, а перечитать её не удалось. Тогда data содержит только id. Повторять создание не нужно — получите оплату по этому id |
Пример ответа
{
"success": true,
"data": {
"id": 565,
"accountNumber": "1029/2",
"paid": "N",
"datePaid": null,
"empPaidId": null,
"paySystemId": 1,
"sum": 0,
"currency": "RUB",
"paySystemName": "Банковский перевод (Компании)"
}
}
Пример ответа при ошибке
400 — paySystemId отрицательный или не целое число:
{
"success": false,
"error": {
"code": "INVALID_PARAMS",
"message": "paySystemId must be a non-negative integer."
}
}
Ошибки
| HTTP | Код | Описание |
|---|---|---|
| 400 | MISSING_REQUIRED_FIELDS |
Не передан entityTypeId или entityId, либо значение не положительное целое |
| 400 | READONLY_FIELD |
В теле есть поле кроме entityTypeId, entityId и paySystemId |
| 400 | INVALID_PARAMS |
paySystemId отрицательный или не целое число |
| 404 | ENTITY_NOT_FOUND |
Объекта CRM с таким entityTypeId и entityId нет |
| 422 | BITRIX_NO_EFFECT |
Оплата не создана, например платёжной системы с таким paySystemId нет. Новой оплаты у объекта при этом не появляется |
| 422 | BITRIX_ERROR |
У объектов CRM этого типа нет оплат, например у лида с entityTypeId равным 1. Сообщение — Для данной сущности функционал создания оплат недоступен |
| 422 | BITRIX_ERROR |
Битрикс24 отклонил запрос, причина — в error.message |
| 403 | BITRIX_ACCESS_DENIED |
У пользователя ключа нет доступа к объекту CRM или оплате в Битрикс24 |
| 403 | WRITE_BLOCKED_READONLY_KEY |
Ключу запрещена запись |
| 403 | SCOPE_DENIED |
API-ключ не имеет скоупа crm |
| 401 | TOKEN_MISSING |
API-ключ не имеет настроенных токенов |
| 401 | MISSING_API_KEY |
Не передан X-Api-Key |
Полный список общих ошибок API — Ошибки.