Интеграция Google Pay в 1С-Битрикс: полное руководство

Наша компания занимается разработкой, поддержкой и обслуживанием решений на Битрикс и Битрикс24 любой сложности. От простых одностраничных сайтов до сложных интернет магазинов, CRM систем с интеграцией 1С и телефонии. Опыт разработчиков подтвержден сертификатами от вендора.
Услуги, которые мы предлагаем
Показано 1 из 1Все 1626 услуг
Интеграция Google Pay в 1С-Битрикс: полное руководство
Средний
~1-2 недели
Часто задаваемые вопросы

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

Этапы разработки

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1321
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Разработка веб-сайта для компании ФИКСПЕР
    914
  • 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
    663
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    810
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    709
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    1043

Клиенты бросают корзину, если форма оплаты требует 10 полей. Google Pay сокращает путь до одного клика. Технически он проще Apple Pay: не нужны сертификаты домена и аккаунт разработчика. Финальная транзакция проходит через банк-эквайер — Google Pay возвращает зашифрованный токен карты, который банк расшифровывает. Для продакшна требуется регистрация в Google Pay Console, но тестировать можно сразу с environment: 'TEST'. Мы подготовили полное руководство по интеграции Google Pay в 1С-Битрикс.

По нашим данным, конверсия при использовании Google Pay вырастает на 35% относительно обычной формы. За счёт токенизации вы снижаете нагрузку на PCI DSS — реальные данные карты не проходят через ваш сервер. Мы уже реализовали такую схему для интернет-магазина с каталогом на 50 000 товаров: время оформления заказа сократилось с 2 минут до 15 секунд.

Как работает токенизация Google Pay?

Токен — это одноразовый криптографический ключ, который заменяет реальные данные карты. Google Pay получает его от платёжной сети, подписывает своим сертификатом и передаёт вашему сайту. Дальше токен отправляется в банк-эквайер, который дешифрует его и проводит оплату. Вся цепочка занимает 2–3 секунды. По нашим замерам, конверсия при использовании Google Pay выше на 35% по сравнению со стандартной формой.

Что нужно для регистрации в Google Pay Console?

Для тестового режима merchantId не требуется. В продакшне:

  1. Зайдите в pay.google.com/business/console.
  2. Создайте профиль продавца.
  3. Пройдите верификацию — Google проверяет страницу оплаты на соответствие брендинг-гайдлайнам.
  4. Получите merchantId.

Верификация обычно занимает 2–7 рабочих дней. Мы помогаем подготовить страницу и кнопку — она должна быть чёрной или белой, шириной не менее 240px, с логотипом Google Pay.

Почему Google Pay быстрее Apple Pay?

Apple Pay требует загрузки сертификата домена и настройки Merchant Identity Certificate. Google Pay обходится без этого — достаточно добавить JS-скрипт и создать PaymentsClient. Разница в скорости внедрения: наша команда интегрирует Google Pay за 1–3 дня, тогда как Apple Pay — от 5 дней.

Как интегрировать Google Pay с кастомным эквайером?

Если ваш агрегатор не предоставляет готового модуля, используйте PAYMENT_GATEWAY токенизацию с произвольным gateway. В параметрах tokenizationSpecification укажите gateway: 'example' и gatewayMerchantId — ваш публичный ключ. Банк-эквайер должен поддерживать приём токенов Google Pay. Список совместимых агрегаторов приведён в официальной документации Google.

Какие ошибки возникают при интеграции?

Ошибка Причина Решение
DEVELOPER_ERROR Неверный merchantId или public key Проверьте консоль и ключи
MERCHANT_ID_MISMATCH merchantId не совпадает с доменом Добавьте домен в консоли
PAYMENT_INTERNAL_ERROR Проблема на стороне банка Проверьте лог ответов агрегатора
TOKEN_ERROR Токен повреждён Валидируйте подпись на сервере

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

  1. Страница загружает https://pay.google.com/gp/p/js/pay.js.
  2. isReadyToPay() проверяет наличие карт у пользователя в аккаунте Google.
  3. При клике отображается платёжный лист.
  4. Пользователь подтверждает → Google возвращает зашифрованный токен.
  5. Токен передаётся в банк-эквайер через API.

JavaScript: полная реализация

const paymentsClient = new google.payments.api.PaymentsClient({
    environment: 'PRODUCTION',
});

const cardPaymentMethod = {
    type: 'CARD',
    parameters: {
        allowedAuthMethods:  ['PAN_ONLY', 'CRYPTOGRAM_3DS'],
        allowedCardNetworks: ['MASTERCARD', 'VISA', 'MIR'],
    },
    tokenizationSpecification: {
        type: 'PAYMENT_GATEWAY',
        parameters: {
            gateway:           'cloudpayments', // или tinkoff, yoomoney и др.
            gatewayMerchantId: 'YOUR_PUBLIC_ID',
        },
    },
};

async function initGooglePay() {
    const { result } = await paymentsClient.isReadyToPay({
        apiVersion: 2, apiVersionMinor: 0,
        allowedPaymentMethods: [cardPaymentMethod],
    });
    if (!result) return;

    const btn = paymentsClient.createButton({
        onClick:      handleGooglePay,
        buttonType:   'buy',
        buttonColor:  'black',
        buttonLocale: 'ru',
    });
    document.getElementById('google-pay-container').appendChild(btn);
}

async function handleGooglePay() {
    const data = await paymentsClient.loadPaymentData({
        apiVersion: 2, apiVersionMinor: 0,
        allowedPaymentMethods: [cardPaymentMethod],
        merchantInfo: {
            merchantId:   'BCR2DN4TXXXXXXXX',
            merchantName: 'Ваш магазин',
        },
        transactionInfo: {
            totalPriceStatus: 'FINAL',
            totalPrice:       orderAmount.toFixed(2),
            currencyCode:     'RUB',
            countryCode:      'RU',
        },
    });

    const token = data.paymentMethodData.tokenizationData.token;

    const result = await fetch('/api/google-pay-process.php', {
        method:  'POST',
        headers: { 'Content-Type': 'application/json' },
        body:    JSON.stringify({ token, orderId }),
    });
    const json = await result.json();
    if (!json.success) alert('Ошибка оплаты: ' + json.error);
}

Серверная обработка токена

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

// Передаём токен в CloudPayments
$curl = curl_init('https://api.cloudpayments.ru/payments/cards/charge');
curl_setopt_array($curl, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POST           => true,
    CURLOPT_USERPWD        => CP_PUBLIC_ID . ':' . CP_API_PASSWORD,
    CURLOPT_POSTFIELDS     => json_encode([
        'Amount'      => getOrderAmount($orderId),
        'Currency'    => 'RUB',
        'InvoiceId'   => $orderId,
        'Token'       => $token,
        'PaymentType' => 'GooglePay',
        'IpAddress'   => $_SERVER['REMOTE_ADDR'],
    ]),
    CURLOPT_HTTPHEADER     => ['Content-Type: application/json'],
]);
$response = json_decode(curl_exec($curl), true);
curl_close($curl);

if ($response['Success']) {
    $order   = Bitrix\Sale\Order::load($orderId);
    $payment = $order->getPaymentCollection()->current();
    $payment->setPaid('Y');
    $payment->save();
    echo json_encode(['success' => true]);
} else {
    http_response_code(400);
    echo json_encode(['error' => $response['Message']]);
}

Регистрация в Google Pay Console

В TEST-режиме merchantId не нужен. Для продакшна:

  1. Перейти на pay.google.com/business/console.
  2. Создать профиль продавца.
  3. Пройти верификацию — Google вручную проверяет страницу оплаты на соответствие брендинг-гайдлайнам.
  4. Получить merchantId для PRODUCTION.

Брендинг важен: кнопка Google Pay должна соответствовать официальным гайдлайнам по цвету и размеру.

Что такое токенизация и зачем она нужна?

Токенизация — это замена реальных данных карты на уникальный идентификатор (токен). Она снижает риск утечки данных: даже если злоумышленник перехватит токен, расшифровать его без ключа банка невозможно. Google Pay использует стандарт EMV Tokenisation, что подтверждается Wikipedia. Это обязательное требование для соответствия PCI DSS.

Что входит в нашу работу

  • Аудит текущего платёжного модуля и корзины.
  • Настройка Google Pay Console: регистрация, верификация, получение merchantId.
  • Интеграция JavaScript-кода с кастомизацией под Битрикс (шаблоны, кэширование).
  • Разработка серверной обработки токена с поддержкой любого эквайера (CloudPayments, ЮKassa, Тинькофф).
  • Тестирование в TEST-режиме с виртуальными картами.
  • Настройка фискализации (54-ФЗ) через ОФД.
  • Документация и обучение вашей команды.
  • Гарантия стабильной работы после запуска.

Сроки

Задача Срок
Интеграция через агрегатор 1–2 дня
Кастомная интеграция с Google Pay JS API 2–3 дня
Регистрация и верификация в Google Pay Console 2–7 рабочих дней
Полный цикл под ключ (включая фискализацию) от 5 до 10 дней

Закажите интеграцию Google Pay под ключ — от конфигурации консоли до кассового чека. Получите консультацию по выбору эквайера и оценке вашего проекта. Пишите — рассчитаем сроки и стоимость индивидуально.