sale.cashbox.update
Обновить существующую кассу
Описание
Метод sale.cashbox.update обновляет существующую кассу.
Параметры
ID
sale_cashbox.ID
обязательный
Идентификатор обновляемой кассы
FIELDS
object
обязательный
Значения обновляемых полей (подробное описание приведено ниже)
Параметр FIELDS
NAME
string
необязательный
Название кассы
EMAIL
string
необязательный
Адрес электронной почты, на который будут отправляться уведомления в случае возникновения ошибок при печати чеков
OFD
string
необязательный
Код обработчика ОФД. Доступные обработчики ОФД:
- bx_firstofd — Первый ОФД
- bx_platformaofd — Платформа ОФД
- bx_yarusofd — ОФД ЯРУС
- bx_taxcomofd — Такском ОФД
- bx_ofdruofd — OFD.RU
- bx_tenzorofd — Тензор ОФД
- bx_conturofd — Контур ОФД
По умолчанию без ОФД
OFD_SETTINGS
object
необязательный
Настройки ОФД (подробное описание приведено ниже)
NUMBER_KKM
string
необязательный
Внешний идентификатор кассы
ACTIVE
string
необязательный
Активность кассы. Возможные значения:
- Y — да
- N — нет
SORT
integer
необязательный
Сортировка
USE_OFFLINE
string
необязательный
Используется ли касса офлайн. Возможные значения:
- Y — да
- N — нет
SETTINGS
object
необязательный
Настройки кассы в соответствии со структурой настроек, переданной в ключе CONFIG поля SETTINGS метода sale.cashbox.handler.add
Параметр OFD_SETTINGS
Настройки для всех ОФД
необязательный
OFD_MODE
object
необязательный
Настройки, относящиеся к режиму работы ОФД. Передается параметр IS_TEST (string со значениями Y/N) — режим работы ОФД:
- Y — тестовый режим
- N — рабочий режим
Дополнительные настройки для OFD.RU
необязательный
SELLER_INFO
object
необязательный
Настройки раздела «Информация о продавце». Передается обязательный параметр INN (string) — ИНН продавца
Дополнительные настройки для ОФД ЯРУС
необязательный
AUTH
object
необязательный
Настройки авторизации. Передается параметр INN (string) — ключ безопасности
Примеры запроса
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"ID":1,"FIELDS":{"NAME":"Новое имя"}}' \
https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/sale.cashbox.update
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"ID":1,"FIELDS":{"NAME":"Новое имя"},"auth":"**put_access_token_here**"}' \
https://**put_your_bitrix24_address**/rest/sale.cashbox.update
// This snippet is an ES module: top-level await requires type="module" or a bundler.
// $b24 is an already-initialized SDK instance (see the SDK "Get started" guide).
import { Text } from '@bitrix24/b24jssdk'
import type { B24Frame } from '@bitrix24/b24jssdk'
declare const $b24: B24Frame
try {
const response = await $b24.actions.v2.call.make<boolean>({
method: 'sale.cashbox.update',
params: {
ID: 1,
FIELDS: {
NAME: 'New name',
},
},
requestId: Text.getUuidRfc4122()
})
// The payload is available only on a successful response
if (!response.isSuccess) {
console.error(response.getErrorMessages().join('; '))
} else {
const result = response.getData()!.result
console.info('Cashbox updated:', result)
}
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
<!-- Load the SDK (UMD build); it is exposed as the global B24Js -->
<script src="https://unpkg.com/@bitrix24/b24jssdk@1/dist/umd/index.min.js"></script>
<script>
async function updateCashbox() {
try {
// Initialize the SDK inside a Bitrix24 frame
const $b24 = await B24Js.initializeB24Frame()
const response = await $b24.actions.v2.call.make({
method: 'sale.cashbox.update',
params: {
ID: 1,
FIELDS: {
NAME: 'New name',
},
},
requestId: B24Js.Text.getUuidRfc4122()
})
// The payload is available only on a successful response
if (!response.isSuccess) {
console.error(response.getErrorMessages().join('; '))
return
}
const result = response.getData().result
console.info('Cashbox updated:', result)
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
}
document.addEventListener('DOMContentLoaded', updateCashbox)
</script>
from b24pysdk.errors import BitrixAPIError, BitrixSDKException
fields = {
"NAME": "Новое имя",
}
try:
bitrix_response = client.sale.cashbox.update(
bitrix_id=1,
fields=fields,
).response
result = bitrix_response.result
print(result)
except BitrixAPIError as error:
print(
"Ошибка Bitrix API",
f"error: {error.error}",
f"error_description: {error.error_description}",
sep="\n",
)
except BitrixSDKException as error:
print(f"Ошибка Bitrix SDK: {error.message}")
except Exception as error:
print(f"Непредвиденная ошибка: {error}")
try {
$response = $b24Service
->core
->call(
'sale.cashbox.update',
[
'ID' => 1,
'FIELDS' => [
'NAME' => 'Новое имя',
],
]
);
$result = $response
->getResponseData()
->getResult();
if ($result->error()) {
error_log($result->error());
} else {
echo 'Success: ' . print_r($result->data(), true);
}
} catch (Throwable $e) {
error_log($e->getMessage());
echo 'Error updating cashbox: ' . $e->getMessage();
}
BX24.callMethod(
"sale.cashbox.update",
{
"ID": 1,
"FIELDS": {
"NAME": "Новое имя",
}
},
function(result)
{
if(result.error())
console.error(result.error());
else
console.dir(result.data());
}
);
require_once('crest.php');
$result = CRest::call(
'sale.cashbox.update',
[
'ID' => 1,
'FIELDS' =>
[
'NAME' => 'Новое имя',
]
]
);
echo '<PRE>';
print_r($result);
echo '</PRE>';
// client и ctx уже созданы — см. раздел «SDK для Go»
res, err := client.Core().Call(ctx, "sale.cashbox.update", b24.Params{
"ID": 1,
"FIELDS": b24.Params{
"NAME": "Новое имя",
},
})
if err != nil {
return fmt.Errorf("sale.cashbox.update: %w", err)
}
var ok bool
if err := json.Unmarshal(res.Result, &ok); err != nil {
return fmt.Errorf("разбор ответа: %w", err)
}
fmt.Println("выполнено:", ok)
Ответ
HTTP-статус: 200
{
"result": true,
"time": {
"start": 1712135335.026931,
"finish": 1712135335.407762,
"duration": 0.3808310031890869,
"processing": 0.0336611270904541,
"date_start": "2024-04-03T11:08:55+02:00",
"date_finish": "2024-04-03T11:08:55+02:00",
"operating_reset_at": 1705765533,
"operating": 3.3076241016387939
}
}
Возвращаемые данные
result
boolean
Результат обновления полей кассы
time
time
Информация о времени выполнения запроса
Обработка ошибок
HTTP-статус: 400
{
"error": "ERROR_CASHBOX_NOT_FOUND",
"error_description": "Cashbox not found"
}
| Код | Описание | Значение |
|---|---|---|
ACCESS_DENIED |
Недостаточно прав для обновления кассы либо приложение пытается изменить кассу, добавленную другим приложением | 403 |
ERROR_CHECK_FAILURE |
Не указано значение полей ID или FIELDS |
400 |
ERROR_CASHBOX_NOT_FOUND |
Касса с указанным ID не найдена |
400 |
ERROR_CASHBOX_UPDATE |
Прочие ошибки. Более подробную информацию об ошибке можно найти в error_description |
400 |

