Поля оплаты

GET /v1/payments/fields

Возвращает схему полей оплаты: типы, флаги только-для-чтения, список агрегируемых полей.

Примеры

curl — личный ключ

Terminal
curl "https://vibecode.bitrix24.tech/v1/payments/fields" \
  -H "X-Api-Key: YOUR_API_KEY"

curl — OAuth-приложение

Terminal
curl "https://vibecode.bitrix24.tech/v1/payments/fields" \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN"

JavaScript — личный ключ

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/payments/fields', {
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
  },
})

const { data } = await res.json()
console.log('Поля оплаты:', Object.keys(data.fields))

JavaScript — OAuth-приложение

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/payments/fields', {
  headers: {
    'X-Api-Key': 'YOUR_APP_KEY',
    'Authorization': 'Bearer USER_SESSION_TOKEN',
  },
})

const { data } = await res.json()

Поля ответа

Поле Тип Описание
id number Идентификатор оплаты (только чтение)
orderId number Идентификатор заказа. Источник: `GET /v1/orders`
paySystemId number Идентификатор платёжной системы. Узнать ID можно из существующих оплат: `GET /v1/payments` или `POST /v1/payments/aggregate` с groupBy: "paySystemId"
paySystemName string Название платёжной системы (только чтение, заполняется из карточки платёжной системы)
paySystemIsCash boolean Принимает ли платёжная система наличные (только чтение)
paySystemXmlId string Внешний идентификатор платёжной системы для синхронизации (только чтение)
sum number Сумма оплаты
currency string Валюта оплаты. Список: `GET /v1/currencies`
paid boolean Помечена ли оплата как поступившая
datePaid datetime Дата отметки оплаты
empPaidId number Сотрудник, отметивший оплату (только чтение). Источник: `GET /v1/users`
comments string Комментарий к оплате
accountNumber string Порядковый номер оплаты на портале (только чтение)
dateBill datetime Дата выставления счёта
datePayBefore datetime Срок оплаты
xmlId string Внешний идентификатор для синхронизации
responsibleId number Ответственный сотрудник. Источник: `GET /v1/users`
empResponsibleId number Сотрудник, ответственный за оплату (только чтение). Источник: `GET /v1/users`
dateResponsibleId datetime Дата назначения ответственного сотрудника (только чтение)
isReturn string Признак возврата: "N" обычная оплата, "Y" возврат, "P" частичный возврат
marked boolean Помечена ли оплата как проблемная
reasonMarked string Причина пометки
empMarkedId number Сотрудник, поставивший пометку (только чтение). Источник: `GET /v1/users`
dateMarked datetime Дата пометки оплаты как проблемной (только чтение)
psStatus string Статус оплаты по данным платёжной системы
psStatusCode string Код статуса от платёжной системы
psStatusDescription string Описание статуса от платёжной системы
psStatusMessage string Сообщение от платёжной системы
psSum number Сумма оплаты по данным платёжного шлюза
psCurrency string Валюта оплаты по данным платёжного шлюза
psResponseDate datetime Дата ответа платёжного шлюза
psInvoiceId string Идентификатор счёта на стороне платёжного шлюза
payVoucherNum string Номер платёжного поручения
payVoucherDate datetime Дата платёжного поручения
payReturnNum string Номер документа возврата
payReturnDate datetime Дата возврата
payReturnComment string Комментарий к возврату
empReturnId number Сотрудник, оформивший возврат (только чтение). Источник: `GET /v1/users`
priceCod number Сумма наложенного платежа
companyId number Компания-плательщик из CRM. Источник: `GET /v1/companies`
externalPayment boolean Оплата создана во внешней системе
id1c string Идентификатор оплаты в 1С
version1c string Версия оплаты в 1С
updated1c boolean Обновлена ли оплата через 1С

Массив aggregatable перечисляет поля, доступные для числовых функций и groupBy в `POST /v1/payments/aggregate`: sum, currency, paid, paySystemId, orderId, responsibleId. Массив batch — операции для `POST /v1/batch`: create, update, delete.

Пример ответа

JSON
{
  "success": true,
  "data": {
    "fields": {
      "id": { "type": "number", "readonly": true },
      "orderId": { "type": "number", "readonly": false },
      "paySystemId": { "type": "number", "readonly": false },
      "paySystemName": { "type": "string", "readonly": true },
      "paySystemIsCash": { "type": "boolean", "readonly": true },
      "paySystemXmlId": { "type": "string", "readonly": true },
      "sum": { "type": "number", "readonly": false },
      "currency": { "type": "string", "readonly": false },
      "paid": { "type": "boolean", "readonly": false },
      "datePaid": { "type": "datetime", "readonly": false },
      "empPaidId": { "type": "number", "readonly": true },
      "comments": { "type": "string", "readonly": false },
      "accountNumber": { "type": "string", "readonly": true },
      "dateBill": { "type": "datetime", "readonly": false },
      "datePayBefore": { "type": "datetime", "readonly": false },
      "xmlId": { "type": "string", "readonly": false },
      "responsibleId": { "type": "number", "readonly": false },
      "empResponsibleId": { "type": "number", "readonly": true },
      "dateResponsibleId": { "type": "datetime", "readonly": true },
      "isReturn": { "type": "string", "readonly": false },
      "marked": { "type": "boolean", "readonly": false },
      "reasonMarked": { "type": "string", "readonly": false },
      "empMarkedId": { "type": "number", "readonly": true },
      "dateMarked": { "type": "datetime", "readonly": true },
      "psStatus": { "type": "string", "readonly": false },
      "psStatusCode": { "type": "string", "readonly": false },
      "psStatusDescription": { "type": "string", "readonly": false },
      "psStatusMessage": { "type": "string", "readonly": false },
      "psSum": { "type": "number", "readonly": false },
      "psCurrency": { "type": "string", "readonly": false },
      "psResponseDate": { "type": "datetime", "readonly": false },
      "psInvoiceId": { "type": "string", "readonly": false },
      "payVoucherNum": { "type": "string", "readonly": false },
      "payVoucherDate": { "type": "datetime", "readonly": false },
      "payReturnNum": { "type": "string", "readonly": false },
      "payReturnDate": { "type": "datetime", "readonly": false },
      "payReturnComment": { "type": "string", "readonly": false },
      "empReturnId": { "type": "number", "readonly": true },
      "priceCod": { "type": "number", "readonly": false },
      "companyId": { "type": "number", "readonly": false },
      "externalPayment": { "type": "boolean", "readonly": false },
      "id1c": { "type": "string", "readonly": false },
      "version1c": { "type": "string", "readonly": false },
      "updated1c": { "type": "boolean", "readonly": false }
    },
    "aggregatable": ["sum", "currency", "paid", "paySystemId", "orderId", "responsibleId"],
    "batch": ["create", "update", "delete"]
  }
}

Пример ответа при ошибке

403 — нет скоупа:

JSON
{
  "success": false,
  "error": {
    "code": "SCOPE_DENIED",
    "message": "This endpoint requires 'sale' scope"
  }
}

Ошибки

HTTP Код Описание
403 SCOPE_DENIED API-ключ не имеет скоупа sale
401 TOKEN_MISSING API-ключ не имеет настроенных токенов

Полный список общих ошибок API — Ошибки.

Смотрите также