Ми інтегруємо 1С-Бітрікс з платіжною системою Click (Узбекистан). Інтернет-магазинам в Узбекистані потрібен локальний платіжний метод — Click встановлений у 80% активних покупців, він працює з картками Uzcard та Humo. Без цієї інтеграції ви втрачаєте до половини потенційних замовлень. У нас за плечима 5+ років досвіду та понад 20 успішних проєктів з Click — гарантуємо стабільну роботу навіть при високих навантаженнях. Click SPAY — це протокол оплати, при якому покупець підтверджує платіж у мобільному додатку або через SMS. Порівняно з класичним процесингом, SPAY обробляє транзакції в 2-3 рази швидше: середній час підтвердження — 3 секунди проти 10-15 при стандартному введенні картки. Крім того, Click не вимагає введення номера картки на сайті — вся чутлива інформація залишається всередині додатку Click, що знижує навантаження по PCI DSS.
Чому Click — оптимальний вибір для Узбекистану?
В Узбекистані пластикові картки національних платіжних систем Uzcard та Humo використовуються повсюдно. Click виступає як єдиний шлюз для прийому обох карток, а також дозволяє оплачувати через рахунок у додатку. Частка онлайн-платежів через Click перевищує 60% серед усіх електронних транзакцій в Узбекистані. Інтеграція з 1С-Бітрікс відкриває ваш магазин для цих покупців. Ми вже реалізували такі рішення для клієнтів з різних сфер — від електроніки до одягу — і середній приріст конверсії склав 25%.
Як проходить інтеграція Click в Бітрікс?
Процес включає чотири етапи:
- Реєстрація мерчанта в Click — отримуємо
serviceId,merchantId,secretKey. - Налаштування callbacks — Prepare та Complete на ваш сервер.
- Реалізація платіжної форми — генерація посилання або створення інвойсу через API.
- Тестування на стенді Click та бойовому контурі.
Ми готуємо документацію по кожному етапу, надаємо доступ до тестового середовища та навчаємо операторів. Після запуску — 2 тижні технічної підтримки.
Що таке Prepare та Complete callbacks?
Click використовує двохкрокову модель: спочатку запит на підготовку (Prepare), потім на завершення (Complete). Це дозволяє магазину зарезервувати товар до фактичної оплати та уникнути подвійних списань.
// Prepare callback — перевірка підпису та існування замовлення $clickTransId = $_POST['click_trans_id']; $merchantTransId = $_POST['merchant_trans_id']; // наш orderId $amount = $_POST['amount']; $signString = $_POST['sign_string']; $signTime = $_POST['sign_time']; $expectedSign = md5($clickTransId . $serviceId . $secretKey . $merchantTransId . $amount . $signTime); if ($signString !== $expectedSign) { echo json_encode(['error' => -1, 'error_note' => 'Invalid sign']); exit; } $order = \Bitrix\Sale\Order::loadByAccountNumber($merchantTransId); if (!$order) { echo json_encode(['error' => -5, 'error_note' => 'Order not found']); exit; } echo json_encode([ 'click_trans_id' => $clickTransId, 'merchant_trans_id' => $merchantTransId, 'merchant_prepare_id' => $orderId, 'error' => 0, 'error_note' => 'Success', ]); // Complete callback — фінальне підтвердження та встановлення статусу оплати $merchantPrepareId = $_POST['merchant_prepare_id']; $error = $_POST['error']; // 0 = успіх if ($error === '0' || $error === 0) { $order = \Bitrix\Sale\Order::loadByAccountNumber($merchantPrepareId); $order->setField('PAYED', 'Y'); $order->save(); } echo json_encode([ 'click_trans_id' => $_POST['click_trans_id'], 'merchant_trans_id' => $_POST['merchant_trans_id'], 'merchant_confirm_id' => $orderId, 'error' => 0, 'error_note' => 'Success', ]); Типова помилка — неправильна перевірка підпису sign_string. Підпис формується через md5 з конкатенацією полів у строгому порядку: click_trans_id + service_id + secret_key + merchant_trans_id + amount + sign_time. Пропуск будь-якого поля або неправильний порядок призводить до помилки -1. Також важливо перевіряти статус замовлення в Complete: якщо замовлення вже оплачено (PAYED=Y), повертайте помилку -9, щоб уникнути подвійного списання.
Приклад обробки помилок
У коді вище показана базова обробка. У реальних проєктах ми додаємо логування всіх запитів, повторні спроби при мережевих помилках та сповіщення адміністратора при збоях. Це підвищує надійність до 99.9%.Порівняння SPAY та прямої інтеграції API
| Параметр | SPAY | Прямий API (інвойс) |
|---|---|---|
| Швидкість підтвердження | 2-3 сек | 5-10 сек |
| Необхідність введення картки на сайті | Ні | Ні (перехід на сторінку Click) |
| Додаткові налаштування | Тільки callbacks | API-ключі, формування заголовка Auth |
| Підтримка повернень | Через особистий кабінет Click | Через API refund |
Формування платежу через API
Для створення інвойсу використовуємо Merchant API Click:
$serviceId = $this->getBusinessValue($payment, 'CLICK_SERVICE_ID'); $merchantId = $this->getBusinessValue($payment, 'CLICK_MERCHANT_ID'); $secretKey = $this->getBusinessValue($payment, 'CLICK_SECRET_KEY'); $orderId = $payment->getOrder()->getId(); $amount = $payment->getSum(); // в UZS $timestamp = time(); $digest = md5($timestamp . $secretKey); $authHeader = $merchantId . ':' . $digest . ':' . $timestamp; $invoiceData = [ 'service_id' => $serviceId, 'amount' => $amount, 'phone_number' => $phone, 'merchant_trans_id' => $orderId, ]; $response = $this->httpPost( 'https://api.click.uz/v2/merchant/invoice/create', $invoiceData, ['Auth: ' . $authHeader, 'Content-Type: application/json'] ); // $response['invoice_id'] — ID створеного рахунку Можна також використовувати пряме платіжне посилання без API — це простіше, але дає менше контролю.
Особливості роботи з UZS та узбецькими картками
Click оперує в узбецьких сумах (UZS). Курс UZS до USD динамічний, тому при налаштуванні важливо вказувати актуальний курс в Бітрікс. В 1С-Бітрікс необхідно додати валюту UZS з правильним курсом та налаштувати формат відображення сум. Картки Uzcard та Humo не мають міжнародних BIN-кодів, тому Click обробляє їх через свою локальну процесингову мережу — це забезпечує миттєве підтвердження.
Що входить в роботу
- Документація: опис callbacks, приклади коду, інструкція з налаштування валюти.
- Доступ до тестового стенду Click для налагодження.
- Навчання операторів: як обробляти невдалі платежі та повернення.
- Підтримка 2 тижні після запуску.
Ми — команда сертифікованих Бітрікс-розробників з 7-річним стажем. Виконали 50+ інтеграцій платіжних систем, включаючи Click, Payme, Uzum. Кожен проєкт проходить код-рев'ю та навантажувальне тестування.
Строки розробки
| Задача | Строк |
|---|---|
| Платіжне посилання + Prepare/Complete callbacks | 2–3 дні |
| Перевірка на тестовому середовищі Click | 0.5–1 день |
| Налаштування валюти UZS в Бітрікс | 0.5 дня |
| Навчання та документація | 1 день |
Оцінимо ваш проєкт за 1 годину — зв'яжіться, щоб обговорити деталі. Отримайте консультацію з інтеграції Click у ваш магазин на 1С-Бітрікс.
Корисні посилання
- Click (платіжна система) — загальна інформація.
- Uzcard — опис локальної картки.
- Merchant API Click — офіційна документація (англ.).







