Підключення СБП в 1С-Бітрікс: покрокова інтеграція з прикладами

Підключення СБП в 1С-Бітрікс: покрокова інтеграція з прикладами Після сотень підключень карткового еквайрингу до магазинів на 1С-Бітрікс ми помітили закономірність: власники повертаються через півроку із запитом на СБП. Причина очевидна — **комісія 0,4–0,7%** проти середніх 2% у карток. **СБП в 3
Послуги, які ми пропонуємо
Показано 1 з 1Усі 1626 послуг
Підключення СБП в 1С-Бітрікс: покрокова інтеграція з прикладами
Простий
~1 день

Наші компетенції:

Часті запитання

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1460
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Розробка веб-сайту для компанії ФІКСПЕР
    1019
  • 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
    763
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    882
  • image_crm_dolbimby_434_0.webp
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    809
  • image_crm_technotorgcomplex_453_0.webp
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    1164

Підключення СБП в 1С-Бітрікс: покрокова інтеграція з прикладами

Після сотень підключень карткового еквайрингу до магазинів на 1С-Бітрікс ми помітили закономірність: власники повертаються через півроку із запитом на СБП. Причина очевидна — комісія 0,4–0,7% проти середніх 2% у карток. СБП в 3–5 разів вигідніше карток — значна економія порівняно з картковими платежами. І це не рахуючи того, що гроші приходять за секунди, а не наступного дня. Технічна реалізація простіша, ніж здається: ми підготували інтеграцію з двома популярними провайдерами — Тинькофф та ЮKacca. Обидва надають прості API та швидкий онбординг. Середній час підключення — 1-2 дні.

Що таке СБП і як це працює

СБП — це міжбанківська система миттєвих платежів Банку Росії, запущена в 2019 році. Це прямий переказ між рахунками покупця та продавця без проміжних платіжних систем. Покупець сканує QR-код або переходить за посиланням — оплата проходить без введення карткових даних. Для інтернет-магазинів СБП надає перевагу зниження комісії в 3–5 разів порівняно з картками.

Порівняння СБП та карткового еквайрингу

Параметр СБП Картковий еквайринг
Комісія 0,4% – 0,7% 1,5% – 2,5%
Швидкість зарахування Кілька секунд Наступний банківський день
Повернення Простий зворотний переказ Через процесинг, 3–30 днів

Додатковий плюс — збільшується конверсія: за нашими оцінками, до 15% користувачів кидають кошик при вигляді форми введення картки. СБП прибирає цей бар'єр.

Як інтегрувати СБП через Тинькофф?

Тинькофф надає два формати: посилання (для мобільних) та QR-код (для десктопа). Етапи підключення:

  1. Отримати термінальний ключ в особистому кабінеті Тинькофф.
  2. Створити платіжну сесію через API Init.
  3. Запросити QR-код через GetQr.
  4. Відобразити користувачеві залежно від пристрою.

Приклад створення платіжної сесії та отримання QR:

// Створення платіжної сесії $params = [ 'TerminalKey' => TINKOFF_TERMINAL, 'Amount' => (int)($order->getPrice() * 100), 'OrderId' => $order->getAccountNumber(), 'Description' => 'Замовлення #' . $order->getAccountNumber(), 'NotificationURL' => 'https://shop.ru/bitrix/tools/sale_ps_result.php', 'PayType' => 'O', ]; $params['Token'] = tinkoffSign($params, TINKOFF_SECRET); $init = tinkoffPost('/v2/Init', $params); $paymentId = $init['PaymentId']; // Отримання QR для СБП $qrParams = [ 'TerminalKey' => TINKOFF_TERMINAL, 'PaymentId' => $paymentId, 'DataType' => 'PAYLOAD', ]; $qrParams['Token'] = tinkoffSign($qrParams, TINKOFF_SECRET); $qr = tinkoffPost('/v2/GetQr', $qrParams); $sbpLink = $qr['Data']; 

Адаптивне відображення QR та посилань

Наступний етап — показати користувачеві правильний інтерфейс. На мобільних пристроях краще відкривати банківський додаток за посиланням, на десктопі — QR-код. Перевіряємо user-agent і рендеримо потрібний елемент:

const isMobile = /Mobi|Android/i.test(navigator.userAgent); if (isMobile) { const btn = document.getElementById('sbp-btn'); btn.href = sbpLink; btn.style.display = 'block'; } else { const qr = new QRCode(document.getElementById('sbp-qr'), { text: sbpLink, width: 200, height: 200, }); document.getElementById('sbp-qr-block').style.display = 'block'; } // Polling статусу const poll = setInterval(async () => { const status = await fetch('/api/sbp-status.php?orderId=' + orderId) .then(r => r.json()); if (status.paid) { clearInterval(poll); location.href = '/payment/success/'; } }, 2000); 

Як інтегрувати СБП через ЮKacca?

ЮKacca також підтримує СБП. Приклад створення платежу:

$payment = $client->createPayment([ 'amount' => ['value' => number_format($sum, 2, '.', ''), 'currency' => 'USD'], 'payment_method_data' => ['type' => 'sbp'], 'confirmation' => ['type' => 'qr'], 'capture' => true, 'description' => 'Замовлення #' . $orderId, 'metadata' => ['order_id' => $orderId], ], uniqid('', true)); 

Обробка callback-повідомлень від банку

Після оплати банк надсилає POST-запит на NotificationURL. Це повідомлення містить статус платежу і має бути оброблене коректно:

// Отримання повідомлення $json = file_get_contents('php://input'); $data = json_decode($json, true); // Перевірка підпису $token = hash('sha256', $json . TINKOFF_SECRET); if ($token !== $_SERVER['HTTP_X_SIGNATURE']) { http_response_code(400); echo 'bad signature'; exit; } // Оновлення статусу платежу в Бітрікс if ($data['Status'] === 'CONFIRMED') { \Bitrix\Sale\PaymentCollection::setPaid($data['OrderId'], 'Y'); } 

Важливо: ніколи не покладайтеся лише на callback. Реалізуйте polling статусу (як у прикладі вище) — callback може не дійти через мережеві збої, але платіж уже пройшов.

Чи варто підключати СБП? Комісія та фіскалізація

Для роботи з СБП потрібен окремий продукт у банку — «Прийом платежів через СБП». Ставки для e-commerce: 0,4% для фізосіб, до 0,7% для юросіб, що дозволяє значно скоротити операційні витрати порівняно з картковим еквайрингом. Наприклад, при обороті $4.5k–6.5k на місяць економія складе до $68–98. Фіскалізація СБП-платежів проходить за стандартним механізмом: передаєте receipt з ознакою payment_method = 'sbp' в ОФД. Окрема онлайн-каса не потрібна — використовується той самий касовий апарат, що й для карток. При правильному налаштуванні в Бітрікс чеки надсилаються автоматично при підтвердженні платежу через webhook від банку.

Повернення та відміни платежів

При поверненні СБП-платежу гроші повертаються на рахунок покупця миттєво (на відміну від карток, де може бути затримка). У Бітрікс реалізуйте повернення через Refund-ендпоінт банку:

$refund = tinkoffPost('/v2/Refund', [ 'PaymentId' => $paymentId, 'TerminalKey' => TINKOFF_TERMINAL, ]); 

Часткові повернення також підтримуються — передайте суму повернення окремо від повної суми платежу.

Що входить у роботу з підключення СБП

Ми надаємо комплексний сервіс:

  • Технічне завдання та документація API
  • Інтеграція платіжної сесії та QR-коду
  • Налаштування callback (webhook) та polling
  • Адаптивне відображення для мобільних та десктопа
  • Фіскалізація чеків згідно 54-ФЗ
  • Навчання вашої команди та передача доступів
  • Підтримка 30 днів після запуску

Наш досвід і терміни підключення

Ми реалізували понад 50 інтеграцій платіжних систем на 1С-Бітрікс за останні 7 років. Сертифіковані спеціалісти Бітрікс гарантують стабільну роботу під навантаженням. Середні терміни:

Завдання Термін
СБП через Тинькофф або ЮKacca 1–2 дні
Адаптивне відображення QR/посилання 0.5 дня
Polling статусу 0.5 дня
Підключення еквайрингу в банку 3–10 робочих днів

Якщо ви хочете підключити СБП на своєму проєкті, зв'яжіться з нами — ми безкоштовно оцінимо обсяг робіт і запропонуємо оптимальне рішення.