Блог Горошко Андрея 1C-Битрикс,Bitrix24 Изменить тип плательщика sale.persontype.update

Изменить тип плательщика sale.persontype.update

Оптимизация производительности и безопасности — залог успешного проекта на 1С-Битрикс. Данный материал посвящен практическому применению «Изменить тип плательщика sale.persontype.update». Мы подготовили подробный разбор принципов работы и развернутые примеры интеграции.

Изменить тип плательщика sale.persontype.update

> Scope: sale
>
> Кто может выполнять метод: администратор

Метод меняет поля типа плательщика.

Параметры метода

Параметр
тип
Описание
id
sale_person_type.id
Номер типа плательщика
fields
object
Значения полей (подробное описание приведено ниже) для обновления поля типа плательщика в виде структуры:

fields: {
    name: 'значение',
    code: 'значение',
    sort: 'значение',
    active: 'значение',
    xmlId: 'значение'
}

Параметр fields

Название
тип
Описание
name*
string
Название типа плательщика
code
string
Код типа плательщика. Должен быть уникальным
sort
string
Сортировка. По умолчанию значение равно 150
active
string
Флаг активности. Может принимать значения Y / N. По умолчанию установлено Y
xmlId
string
Внешний идентификатор.

Можно использовать для синхронизации текущего типа плательщика с аналогичной позицией во внешней системе

Примеры кода

  • cURL (Webhook)
    curl -X POST \
    -H "Content-Type: application/json" \
    -H "Accept: application/json" \
    -d '{"id":12,"fields":{"name":"Юр. лицо"}}' \
    https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/sale.persontype.update
  • cURL (OAuth)
    curl -X POST \
    -H "Content-Type: application/json" \
    -H "Accept: application/json" \
    -d '{"id":12,"fields":{"name":"Юр. лицо"},"auth":"**put_access_token_here**"}' \
    https://**put_your_bitrix24_address**/rest/sale.persontype.update
  • JS
    try
    {
    	const response = await $b24.callMethod(
    		'sale.persontype.update', 
    		{
    			id: 12,
    			fields: {
    				name: 'Юр. лицо'
    			}
    		}
    	);
    	
    	const result = response.getData().result;
    	console.log(result);
    }
    catch( error )
    {
    	console.error(error);
    }
  • PHP
    try {
        $response = $b24Service
            ->core
            ->call(
                'sale.persontype.update',
                [
                    'id' => 12,
                    '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 person type: ' . $e->getMessage();
    }
  • BX24.js
    BX24.callMethod(
        'sale.persontype.update', 
        {
            id: 12,
            fields: {
                name: 'Юр. лицо'
            }
        }, 
        function(result)
        {
            if(result.error())
                console.error(result.error());
            else
                console.log(result.data());
        }
    );
  • PHP CRest
    require_once('crest.php');

    $result = CRest::call(
        'sale.persontype.update',
        [
            'id' => 12,
            'fields' => [
                'name' => 'Юр. лицо'
            ]
        ]
    );

    echo '<PRE>';
    print_r($result);
    echo '</PRE>';

Обработка ответа

HTTP-статус: 200

{
    "result": {
        "personType": {
        "active": "Y",
        "code": "MY_CRM_COMPANY",
        "id": 68,
        "name": "Юр. лицо",
        "sort": "100",
        "xmlId": "1234"
        }
    },
    "time": {
        "start": 1712327086.69665,
        "finish": 1712327086.95303,
        "duration": 0.256376028060913,
        "processing": 0.0112268924713135,
        "date_start": "2024-04-05T16:24:46+02:00",
        "date_finish": "2024-04-05T16:24:46+02:00",
        "operating": 0
    }
}

Возвращаемые данные

Название
тип
Описание
result
object
Корневой элемент ответа
personType
sale_person_type
Объект с информацией об обновленном типе плательщика
time
time
Информация о времени выполнения запроса

Обработка ошибок

HTTP-статус: 400

{
    "error":0,
    "error_description":"Required fields: name"
}

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

КодОписание
200740400001Тип плательщика с заданным полем id не существует
200750000007
200750000002
Ошибка при обнолении типа
200040300020Нет доступа к редактированию
100Не указан параметр id
100Не указан или пустой параметр fields
0Не переданы обязательные поля структуры fields
0Другие ошибки (например, фатальные ошибки)
  • [](./index)
  • [](./sale-person-type-add)
  • [](./sale-person-type-get)
  • [](./sale-person-type-list)
  • [](./sale-person-type-delete)
  • [](./sale-person-type-get-fields)

💡 Экспертное мнение и рекомендации

Ключевые выводы по теме «Изменить тип плательщика sale.persontype.update»:

Использование современных стандартов D7 при работе с sale.persontype.update позволяет писать чистый, масштабируемый и безопасный код. Не забывайте обрабатывать исключения (try/catch) и проверять права доступа текущего пользователя перед выполнением критических операций.

Похожая задача в бизнесе?

Помогу автоматизировать процессы и внедрить ИИ

Меня зовут Андрей Горошко. Я Full-stack разработчик и эксперт по 1С-Битрикс. Настраиваю CRM Битрикс24, разрабатываю защищенные API и создаю умных ИИ-агентов для автоматизации рутины.

Related Post

Зарегистрировать ошибки обработки очереди офлайн-событий event.offline.errorЗарегистрировать ошибки обработки очереди офлайн-событий event.offline.error

Каждый PHP-разработчик, работающий с экосистемой Bitrix Framework, должен глубоко понимать работу её ключевых компонентов. В этой статье мы проведем подробный аудит темы «Зарегистрировать ошибки обработки очереди офлайн-событий event.offline.error», проанализируем лучшие

Интеграция системы отслеживания серверных ошибок Sentry для 1С-Битрикс D7Интеграция системы отслеживания серверных ошибок Sentry для 1С-Битрикс D7

Высокая скорость загрузки сайта и безупречная серверная безопасность — обязательные требования для успешного коммерческого проекта на 1С-Битрикс. Услуга «Интеграция системы отслеживания серверных ошибок Sentry для 1С-Битрикс D7» обеспечивает моментальное логирование

Создать документ складского учета catalog.document.addСоздать документ складского учета catalog.document.add

Каждый PHP-разработчик, работающий с экосистемой Bitrix Framework, должен глубоко понимать работу её ключевых компонентов. В этой статье мы проведем подробный аудит темы «Создать документ складского учета catalog.document.add», проанализируем лучшие практики