Інтеграція 1С-Бітрікс з платіжною системою МИР Pay

Покупці з картками МИР очікують швидкої та зручної безконтактної оплати, але без правильної інтеграції платіжної системи МИР Pay в 1С-Бітрікс процес може гальмувати та викликати помилки. Ми розробляємо інтеграцію МИР Pay під ключ — від вибору оптимального способу підключення до впровадження та подальшої підтримки. Наша команда забезпечить стабільну роботу платежів, щоб ваш бізнес приймав оплату надійно та без зриву термінів.
Послуги, які ми пропонуємо
Показано 1 з 1Усі 1626 послуг
Інтеграція 1С-Бітрікс з платіжною системою МИР Pay
Середній
~1-2 тижні

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

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

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

  • Розробка сайту компанії B2B ADVANCE
    Розробка сайту компанії B2B ADVANCE
    1532
  • Розробка веб-сайту для компанії ФІКСПЕР
    Розробка веб-сайту для компанії ФІКСПЕР
    1045
  • Розробка віджета онлайн-запису для медичного центру
    Розробка віджета онлайн-запису для медичного центру
    820
  • Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    915
  • Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    853
  • Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    1208

В умовах зміненого ринку МИР Pay став єдиним інструментом безконтактної оплати для російських покупців з картками МИР — в обігу понад 170 млн карток. Інтеграція платіжної системи МИР в 1С-Бітрікс реалізується через банк-еквайр, який працює з НСПК. Окремого API для прямого підключення без банку не існує. Ми вже кілька років інтегруємо платіжні системи в 1С-Бітрікс, і інтеграція МИР Pay — один з найчастіших запитів. Головний біль: хочеться, щоб оплата проходила швидко і без помилок, але без велосипедів. Покажемо на реальному досвіді, як це зробити.

Як вибрати спосіб інтеграції МИР Pay?

Через існуючий еквайр МИР — якщо у вас підключено Тинькофф, CloudPayments або ЮKassa, МИР Pay зазвичай включається без додаткової розробки. Банк-еквайр визначає тип картки за BIN і маршрутизує транзакцію через НСПК. T-Pay SDK від Тинькофф включає МИР Pay і автоматично пропонує його власникам карток МИР. Payment Request API — браузерний стандарт W3C, підтримуваний в Chrome, Яндекс.Браузері, Firefox та Safari.

Порівняння підходів

Метод Складність Час інтеграції Підтримка браузерів
Через існуючий еквайр Низька 0.5–1 день Не залежить
T-Pay SDK Середня 1–2 дні Android + iOS WebView
Payment Request API Висока 2–4 дні Chrome, Yandex, Firefox, Safari

Payment Request API виграє по широті: він покриває в 1.5 рази більше браузерів, ніж T-Pay SDK, і не вимагає встановлення додаткового SDK. Інтеграція через еквайр в 2-3 рази швидше, ніж кастомна реалізація. Вибір методу впливає на бюджет: через еквайр — мінімальні витрати, кастомна реалізація дорожче. Зв'яжіться з нами для вибору оптимального варіанту.

Чому варто обрати Payment Request API?

Payment Request API — це стандарт W3C, який підтримується всіма сучасними браузерами (більше 90% користувачів). На відміну від T-Pay SDK, він не вимагає встановлення бібліотек і працює однаково на всіх пристроях. Якщо ваш сайт обслуговує користувачів з різними браузерами, цей варіант є кращим. При цьому важливо пам'ятати, що для старих браузерів потрібен fallback на стандартну форму оплати. Економія на транзакціях при виборі правильного методу може скласти до 30%.

Як підключити МИР Pay через Тинькофф?

Інтеграція через Тинькофф: серверна частина

// Створення платіжної сесії
$params = [
    'TerminalKey' => TINKOFF_TERMINAL,
    'Amount' => (int)($order->getPrice() * 100),
    'OrderId' => $order->getAccountNumber(),
    'Description' => 'Замовлення #' . $order->getAccountNumber(),
    'SuccessURL' => 'https://shop.ru/payment/success/',
    'FailURL' => 'https://shop.ru/payment/fail/',
    'NotificationURL' => 'https://shop.ru/bitrix/tools/sale_ps_result.php',
    'PayType' => 'O',
];
$params['Token'] = generateTinkoffToken($params, TINKOFF_SECRET);
$response = tinkoffRequest('/v2/Init', $params);
// Тинькофф показує МИР Pay на сторінці $response['PaymentURL']
// автоматично, якщо картка покупця — МИР

Payment Request API: кнопка МИР Pay на сайті

// Перевіряємо підтримку Payment Request API
if (!window.PaymentRequest) {
  return; // fallback до стандартної форми
}

const mirMethod = {
  supportedMethods: 'https://pay.mir.ru/',
};

const pr = new PaymentRequest(
  [mirMethod],
  {
    total: {
      label: 'Разом',
      amount: {
        currency: 'RUB',
        value: orderAmount.toFixed(2),
      },
    },
  }
);

pr.canMakePayment().then(canPay => {
  if (canPay) {
    document.getElementById('mir-pay-btn').style.display = 'flex';
  }
});

document.getElementById('mir-pay-btn').addEventListener('click', async () => {
  const response = await pr.show();
  const result = await fetch('/api/mir-pay-confirm.php', {
    method: 'POST',
    body: JSON.stringify({
      details: response.details,
      orderId,
    }),
  });
  const data = await result.json();
  response.complete(data.success ? 'success' : 'fail');
});

PHP-обробник токена МИР Pay

// local/api/mir-pay-confirm.php
$input = json_decode(file_get_contents('php://input'), true);
$token = $input['details']['token'] ?? '';
$orderId = (int)($input['orderId'] ?? 0);

// Передаємо в Тинькофф (підтримує МИР Pay токени)
$charge = tinkoffRequest('/v2/FinishAuthorize', [
    'TerminalKey' => TINKOFF_TERMINAL,
    'PaymentId' => getPaymentIdByOrderId($orderId),
    'CardData' => base64_encode($token),
    'Token' => generateTinkoffToken([...], TINKOFF_SECRET),
]);

if ($charge['Success']) {
    $payment = getBitrixPayment($orderId);
    $payment->setPaid('Y');
    $payment->save();
    echo json_encode(['success' => true]);
}

Які технічні складнощі виникають?

Найчастіша проблема — некоректна обробка токена МИР Pay при використанні власного еквайра. Наприклад, банк може не підтримувати FinishAuthorize з CardData. У такому випадку потрібно переходити на T-Pay SDK або налаштовувати двостадійний платіж. Друга складність — коректне визначення типу картки за BIN: не всі банки надсилають BIN у callback. Ми рекомендуємо підключати тестові картки МИР на етапі розробки (офіційний симулятор НСПК на Wikipedia).

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

  1. Аналіз поточного стеку та вибір оптимального способу інтеграції.
  2. Налаштування платіжного шлюзу в 1С-Бітрікс (підключення модуля, еквайра).
  3. Реалізація кнопки МИР Pay на стороні клієнта через Payment Request API або SDK.
  4. Розробка серверної частини для роботи з токенами та 54-ФЗ.
  5. Тестування на тестових картках МИР у бойовому оточенні.
  6. Документація та передача доступів (адмінка, лог-файли).
  7. Гарантія 30 днів на коректну роботу платежів.

Типові помилки при інтеграції: BIN не розпізнається — перевірте список підтримуваних банків; токен закінчується — використовуйте одностадійний платіж або збільшуйте таймаут; фрейм не відображається — вимкніть блокувальники реклами або перевірте Content Security Policy.

Терміни

Задача Строк
Включення через існуючий еквайр 0.5–1 день
Кастомна реалізація з Payment Request API 2–4 дні
Тестування на тестових картках МИР 0.5–1 день
Повний цикл (аналітика + реалізація + тест) від 3 до 7 днів

Брендинг МИР Pay

НСПК регламентує оформлення кнопки МИР Pay. Офіційні ресурси та логотипи — на mironline.ru. Кнопку не можна довільно перейменовувати або змінювати колірну схему.

Замовте інтеграцію МИР Pay з 1С-Бітрікс у нас. Отримайте консультацію по вашому проекту — ми оцінимо поточну інфраструктуру та запропонуємо оптимальне рішення під ключ.