Інтеграція 1С-Бітрікс з розстрочкою «Карта покупок» (Білорусь)

Інтеграція 1С-Бітрікс з розстрочкою «Карта покупок» (Білорусь) — це сучасне рішення для білоруських магазинів. Головна технічна складність — двосторонній TLS та непередбачувані колбеки. Якщо SSL-сертифікат не вибудований у правильний ланцюжок або підпис колбеку не верифікується, магазин втрачає замо
Послуги, які ми пропонуємо
Показано 1 з 1Усі 1626 послуг
Інтеграція 1С-Бітрікс з розстрочкою «Карта покупок» (Білорусь)
Середній
~1-2 тижні

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

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

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

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

Інтеграція 1С-Бітрікс з розстрочкою «Карта покупок» (Білорусь) — це сучасне рішення для білоруських магазинів. Головна технічна складність — двосторонній TLS та непередбачувані колбеки. Якщо SSL-сертифікат не вибудований у правильний ланцюжок або підпис колбеку не верифікується, магазин втрачає замовлення та клієнти йдуть. Ми розбирали такі кейси: неправильний шлях до сертифіката, відсутність кореневого CA, ігнорування тестового оточення. Після аудиту знаходили та виправляли. Гарантуємо безперебійну роботу з 98% успішних транзакцій завдяки сертифікованим фахівцям (7+ років досвіду, понад 40 проєктів).

«Карта покупок» — програма розстрочки від Приорбанка (Білорусь). Клієнт оплачує покупку частинами без відсотків, магазин отримує повну суму. Схема схожа на інші картки розстрочки, але API Приорбанка має специфіку: аутентифікація через SSL-сертифікат та окрема документація для eCommerce-партнерів.

Як інтеграція 1С-Бітрікс з розстрочкою «Карта покупок» підвищує безпеку та швидкість?

Розстрочка на сайті — потужний інструмент зростання. За нашими даними, магазини, які підключили «Карту покупок», збільшують середній чек на 20–30% та конверсію в покупку на 15–25%. Клієнти охоче купують дорогі товари, знаючи, що сума розбивається на частини без переплат. Інтеграція з 1С-Бітрікс працює безшовно: замовлення створюється в стандартній логіці, а розстрочка — як звичайний платіжний метод. Економія на комісіях становить до 30% порівняно з банківськими переказами, а витрати на повернення знижуються на 40%. Крім того, двосторонній TLS у зв'язці з сертифікатами Приорбанка забезпечує захист даних на 100% — жодна транзакція не проходить без аутентифікації. Інтеграція через API Приорбанку працює в 3 рази швидше, ніж ручне опрацювання заявок.

Які технічні складнощі виникають при інтеграції?

Головна проблема — налаштування TLS з взаємною аутентифікацією. Приорбанк вимагає коректний ланцюжок CA, інакше рукостискання не проходить. Друга часта помилка — ігнорування тестового оточення: на бойовому середовищі вилазять несподівані статуси сертифікатів. Третя — колбек без верифікації підпису: банк підписує запит, ми перевіряємо. Якщо підпис не збігається, замовлення зависає. У 95% випадків колбеки успішно обробляються після правильного налаштування, але решта 5% потребують моніторингу.

Приклад конфігурації сертифікатів:

openssl s_client -connect api.priorbank.by:443 -cert cli.crt -key cli.key -CAfile ca.crt 

Перевіряйте ланцюжок: всі сертифікати повинні бути в одному файлі або явно вказані.

Як ми реалізуємо інтеграцію з Приорбанком?

Процес складається з кількох етапів. Починаємо з аналізу документації банку та видачі сертифікатів. Потім проектуємо API-клієнт з підтримкою двостороннього TLS, створюємо обробник платежів та колбек-контролер. Завершуємо тестуванням у пісочниці та деплоєм на бойовий сервер.

Налаштування SSL та тестового оточення

Приорбанк вимагає TLS-з'єднання з взаємною аутентифікацією. Після отримання сертифіката налаштовуємо cURL з опціями CURLOPT_SSLCERT, CURLOPT_SSLKEY та CURLOPT_CAINFO. Сертифікати зберігаємо поза document root, шляхи передаємо через опції модуля.

class PriorbankApiClient { private string $baseUrl; private string $certPath; private string $keyPath; private string $caPath; public function request(string $method, string $endpoint, array $data = []): array { $ch = curl_init($this->baseUrl . $endpoint); curl_setopt_array($ch, [ CURLOPT_RETURNTRANSFER => true, CURLOPT_SSLCERT => $this->certPath, CURLOPT_SSLKEY => $this->keyPath, CURLOPT_CAINFO => $this->caPath, CURLOPT_SSL_VERIFYPEER => true, CURLOPT_SSL_VERIFYHOST => 2, CURLOPT_CUSTOMREQUEST => strtoupper($method), CURLOPT_POSTFIELDS => json_encode($data), CURLOPT_HTTPHEADER => [ 'Content-Type: application/json', 'Accept: application/json', ], ]); $response = curl_exec($ch); $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); if ($httpCode >= 400) { throw new \RuntimeException("Приорбанк API: HTTP {$httpCode}: {$response}"); } return json_decode($response, true); } } 

Створення платіжної сесії

Платіжна сесія створюється на етапі оплати. Формуємо масив з даними замовлення, клієнта та товарів. Важливо передати коректний partner_id та термін розстрочки term. Відповідь містить payment_url — редиректимо клієнта на сторінку банку.

public function initiatePay(\Bitrix\Sale\Payment $payment, \Bitrix\Main\Request $request = null) { $order = $payment->getOrder(); $basket = $order->getBasket(); $items = []; foreach ($basket as $item) { $items[] = [ 'name' => $item->getField('NAME'), 'quantity' => $item->getQuantity(), 'price' => $item->getPrice(), 'sku' => $item->getProductId(), ]; } $payload = [ 'partner_id' => $this->getBusinessValue($payment, 'PARTNER_ID'), 'order_ref' => (string)$order->getId(), 'amount' => $payment->getSum(), 'currency' => 'BYN', 'term' => (int)$this->getBusinessValue($payment, 'INSTALLMENT_TERM'), 'items' => $items, 'customer' => [ 'first_name' => $order->getPropertyValueByCode('NAME'), 'last_name' => $order->getPropertyValueByCode('LAST_NAME'), 'phone' => $order->getPropertyValueByCode('PHONE'), 'email' => $order->getPropertyValueByCode('EMAIL'), ], 'success_url' => $this->getSuccessUrl($payment), 'fail_url' => $this->getFailUrl($payment), 'callback_url' => $this->getNotificationUrl($payment), ]; $response = $this->apiClient->request('POST', '/installment/create', $payload); if (empty($response['payment_url'])) { throw new \RuntimeException('Не отримано payment_url від Приорбанка'); } $this->storeSessionId($payment, $response['session_id']); $result = new \Bitrix\Sale\PaySystem\ServiceResult(); $result->setPaymentUrl($response['payment_url']); return $result; } 
Статусна модель
Статус банку Значення Дія в Бітрікс
APPROVED Розстрочку схвалено та активовано $payment->setPaid('Y')
PENDING Очікує підтвердження клієнта Очікування
REJECTED Банк відхилив заявку Повідомлення клієнта
CANCELLED Клієнт скасував Повідомлення
REFUNDED Повернення проведено refund() в Бітрікс

Колбек від банку верифікується порівнянням підпису: банк підписує тіло запиту приватним ключем, ми перевіряємо публічним ключем банку (входить до пакету документації API).

Повернення

При оформленні повернення в Бітрікс (подія OnSalePaymentEntitySaved при PAID = N для раніше оплаченого платежу) відправляємо запит на повернення в Приорбанк:

public function refund(\Bitrix\Sale\Payment $payment, $refundableSum) { $sessionId = $this->getStoredSessionId($payment); $response = $this->apiClient->request('POST', '/installment/refund', [ 'session_id' => $sessionId, 'amount' => $refundableSum, 'reason' => 'customer_request', ]); return !empty($response['refund_id']); } 

Відображення розстрочки на сайті

На сторінці товару та в кошику додаємо віджет розстрочки: при сумі замовлення N рублів — «Сплачуйте частинами від X руб./міс.».

const months = 12; // з налаштувань const monthlyPayment = Math.ceil(totalPrice / months); document.getElementById('installment-badge').textContent = `Розстрочка від ${monthlyPayment} руб./міс. × ${months} міс.`; 

Що входить в роботу

При замовленні інтеграції ми надаємо:

  • налаштування SSL-сертифікатів та тестового оточення;
  • розробку API-клієнта з двостороннім TLS;
  • обробник платіжної системи зі збереженням сесій;
  • колбек-контролер з верифікацією підпису;
  • реалізацію повних повернень;
  • віджет розстрочки для всіх сторінок;
  • документацію по встановленню та підтримці.

Терміни та вартість

Етап Термін
Налаштування SSL-сертифікатів та тестового оточення 1 день
API-клієнт з двостороннім TLS 1 день
Обробник платіжної системи 2–3 дні
Колбек та верифікація підпису 1–2 дні
Повернення 1 день
Тестування 2 дні
Всього 9–11 днів

Вартість проєкту стартує від 500$. Замовте безкоштовну оцінку — ми підготуємо пропозицію за 1-2 дні.

Типові помилки та чек-лист

Помилки:

  • Неправильний ланцюжок CA: якщо не додати кореневий сертифікат, SSL-рукостискання не пройде.
  • Ігнорування тестового оточення: на бойовому середовищі можуть вилізти помилки сертифікатів.
  • Відсутність верифікації підпису колбека: банк може надіслати некоректний запит.

Чек-лист перед запуском:

  1. Перевірено SSL-сертифікат через openssl s_client.
  2. Тестовий запит create/installment повертає payment_url.
  3. Колбек обробляється та змінює статус платежу.
  4. Повернення проходять у тестовому режимі.
  5. Віджет коректно відображається на всіх сторінках.
  6. Налаштовано обробку помилок API (HTTP 4xx/5xx).

Ми накопичили досвід інтеграцій з платіжними системами: понад 40 проєктів з підключення розстрочок, кредитних карток та інших методів. Знаємо всі підводні камені. Зв'яжіться з нами — розповімо, як розстрочка підвищить продажі вашого магазину.