Интеграция 1С-Битрикс с Покупай со Сбером

Наша компания занимается разработкой, поддержкой и обслуживанием решений на Битрикс и Битрикс24 любой сложности. От простых одностраничных сайтов до сложных интернет магазинов, CRM систем с интеграцией 1С и телефонии. Опыт разработчиков подтвержден сертификатами от вендора.
Предлагаемые услуги
Показано 1 из 1 услугВсе 1626 услуг
Интеграция 1С-Битрикс с Покупай со Сбером
Средняя
~1-2 недели
Часто задаваемые вопросы
Наши компетенции:
Этапы разработки
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1177
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Разработка веб-сайта для компании ФИКСПЕР
    811
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    564
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    747
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    655
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    976

Интеграция 1С-Битрикс с Покупай со Сбером

Сервис «Покупай со Сбером» (ранее «Сбербанк Кредит», он же SberPay рассрочка) позволяет покупателю оформить рассрочку или кредит прямо на странице оформления заказа. Для интернет-магазина на 1С-Битрикс это дополнительная платёжная система, которая подключается к модулю sale. Аудитория Сбера — крупнейшая клиентская база среди российских банков, поэтому для магазинов с чеком от 3 000 рублей интеграция имеет прямой экономический смысл.

Принцип работы

Механика аналогична другим сервисам кредитования:

  1. Покупатель выбирает «Покупай со Сбером» при оформлении заказа
  2. Магазин отправляет данные заказа в API Сбера
  3. Покупатель перенаправляется на страницу Сбера для заполнения заявки
  4. Сбер принимает решение (скоринг — от 2 минут для клиентов Сбера)
  5. При одобрении и подписании — магазин получает уведомление, заказ оплачен

API Сбера для партнёров: https://api.sberbank.ru/fintech/api/v1/credit-gate/. Документация закрытая — выдаётся после подписания партнёрского договора.

Получение доступа

Процесс подключения дольше технической интеграции:

  1. Заявка на sberbank.ru/ru/s_m_business/bankingservice/credit_products — регистрация как партнёр
  2. Проверка юрлица (1–2 недели)
  3. Подписание договора
  4. Получение credentials: partnerId, partnerToken, тестовые реквизиты
  5. Техническая интеграция и тестирование
  6. Прохождение приёмочного тестирования Сбером
  7. Перевод в production

Приёмочное тестирование — Сбер проверяет, что интеграция работает корректно: правильная передача товаров, обработка всех статусов, корректный возврат. Без прохождения приёмки production-доступ не дадут.

Техническая интеграция с модулем sale

Как и для любой платёжной системы в 1С-Битрикс, создаётся обработчик в /local/php_interface/include/sale_payment/sber_credit/.

Файл .description.php:

$data = [
    'NAME' => 'Покупай со Сбером',
    'SORT' => 500,
    'CODES' => [
        'PARTNER_ID' => ['NAME' => 'Partner ID', 'SORT' => 100],
        'PARTNER_TOKEN' => ['NAME' => 'Token', 'SORT' => 200],
        'TEST_MODE' => ['NAME' => 'Тестовый режим', 'SORT' => 300, 'INPUT' => ['TYPE' => 'Y/N']],
    ]
];

Класс обработчика (handler.php) наследует \Bitrix\Sale\PaySystem\ServiceHandler. Ключевые методы:

Формирование заказа для API

Метод initiatePay формирует запрос к Сберу. Структура данных заказа:

$orderData = [
    'partnerOrderId' => $payment->getField('ORDER_ID'),
    'partnerOrderDate' => date('Y-m-d\TH:i:sP'),
    'amount' => $payment->getSum(),
    'currency' => 'RUB',
    'returnUrl' => $this->getSuccessUrl($payment),
    'failUrl' => $this->getFailUrl($payment),
    'callbackUrl' => $this->getCallbackUrl($payment),
    'items' => []
];

$basket = $payment->getOrder()->getBasket();
foreach ($basket as $item) {
    $orderData['items'][] = [
        'name' => $item->getField('NAME'),
        'quantity' => $item->getQuantity(),
        'price' => $item->getPrice(),
        'sum' => $item->getPrice() * $item->getQuantity(),
        'category' => $this->mapCategory($item),
    ];
}

Важно: сумма товарных позиций должна точно совпадать с amount. Если есть скидки или доставка — они должны быть отдельными позициями в items. Расхождение даже на копейку приведёт к отклонению заявки.

Категоризация товаров

Сбер требует категорию для каждого товара (category). Список категорий фиксированный: electronics, clothing, furniture, household, other и т.д. Маппинг категорий Битрикс на категории Сбера нужно реализовать:

  • Через пользовательское свойство раздела инфоблока (UF_SBER_CATEGORY)
  • Или через маппинг-таблицу в настройках модуля: ID раздела каталога → код категории Сбера

Без правильной категоризации заявка может быть отклонена или обрабатываться дольше.

Обработка статусов

Сбер отправляет POST-уведомления на callbackUrl при изменении статуса. Статусная модель:

Статус API Описание Действие
CREATED Заявка создана Логируем
PROCESSING На рассмотрении Ничего
APPROVED Одобрена банком Ничего (ждём подписание)
SIGNED Договор подписан $payment->setPaid('Y')
REJECTED Отказ банка Отменяем платёж
CANCELED Отмена клиентом Отменяем платёж
REFUNDED Возврат Создаём возврат в Битрикс

Обработчик processRequest должен:

  1. Проверить подпись запроса (HMAC-SHA256 от тела + partnerToken)
  2. Найти платёж по partnerOrderId
  3. Обновить статус платежа
  4. Вернуть HTTP 200 (иначе Сбер будет повторять уведомления)

Возвраты

«Покупай со Сбером» поддерживает частичные и полные возвраты через API. При оформлении возврата в 1С-Битрикс (Магазин → Заказы → Возврат) обработчик должен отправить запрос на POST /credit-gate/refund:

public function refund(\Bitrix\Sale\Payment $payment, $refundAmount)
{
    $response = $this->apiRequest('refund', [
        'partnerOrderId' => $payment->getField('ORDER_ID'),
        'amount' => $refundAmount,
    ]);
    return $response['status'] === 'SUCCESS';
}

Возврат обрабатывается Сбером в течение 1–5 рабочих дней. Статус возврата приходит callback-уведомлением.

Виджет на карточке товара

Сбер предоставляет JS-виджет для отображения ежемесячного платежа на странице товара:

<div id="sber-credit-widget" data-sum="80000"></div>
<script src="https://iss.sberbank.ru/partner/widget.js" data-partner-id="YOUR_ID"></script>

Виджет показывает: «от 3 500 руб/мес» — рядом с ценой. Встраивается в шаблон bitrix:catalog.element через component_epilog.php или кастомный шаблон.

Отличия от Тинькофф Кредит

  • Аудитория шире (клиенты Сбера — ~60% населения)
  • Процесс приёмочного тестирования строже
  • API-документация закрытая (только после договора)
  • Скоринг быстрее для клиентов Сбера (есть данные для оценки)
  • Минимальная сумма заказа обычно ниже (от 3 000 руб. против 3 000–5 000 у Тинькофф)