Как подключить WPForms к платежным системам в WordPress

WPForms — один из самых популярных плагинов для создания форм в WordPress. Многие используют его для сбора заявок, регистрации и опросов, но часто возникает задача принимать оплату прямо через форму. В этой статье разберём, как правильно подключить WPForms к платежным системам, чтобы принимать платежи на сайте без лишних сложностей.

Почему стоит интегрировать WPForms с платежными системами

Интеграция WPForms с платёжными шлюзами позволяет:

  • Принимать оплату за услуги или товары прямо на сайте без перенаправления;
  • Автоматически получать уведомления о платеже и обрабатывать данные клиента;
  • Упрощать процесс оформления заказа для пользователей;
  • Повысить конверсию за счёт удобства и скорости оплаты.

WPForms поддерживает несколько популярных платежных систем через официальные дополнения (Addons), а также можно реализовать кастомные интеграции с помощью Webhook и API.

Поддерживаемые платежные системы и официальные дополнения

Среди официальных Addons для WPForms есть:

  • Stripe Addon — для приёма платежей с банковских карт через Stripe;
  • PayPal Standard Addon — для приёма платежей через PayPal;
  • Authorize.Net Addon — для интеграции с Authorize.Net;
  • Square Addon — для приёма платежей через Square.

Каждый из этих плагинов позволяет создавать платежные формы с минимальными настройками. Для примера рассмотрим настройку Stripe.

Настройка Stripe в WPForms

1. Установите и активируйте WPForms Stripe Addon. Скачать его можно с https://wpshop.ru/product/wpforms-stripe-addon/?utm_source=wpform.ru&utm_medium=article&utm_campaign=kak-podklyuchit-wpforms-k-platezhnym-sistemam-v-wordpress

2. В админке WordPress перейдите в WPForms > Настройки > Платежи и подключите Stripe, введя публичный и секретный ключи, которые можно получить в личном кабинете Stripe.

3. Создайте новую форму или отредактируйте существующую, добавьте платежные поля: «Кредитная карта», «Сумма» и другие необходимые.

4. В настройках формы включите Stripe и укажите необходимые параметры: валюту, описание платежа и т.д.

5. Сохраните форму и вставьте её на страницу с помощью шорткода или блока WPForms.

Пример кода для кастомной обработки платежа через Stripe API

Иногда требуется более гибкая интеграция. Ниже пример функции для обработки платежа через Stripe в WPForms с использованием хука wpformru_handle_stripe_payment:

function wpformru_handle_stripe_payment($entry, $form_data) {
    $token = sanitize_text_field($_POST['stripeToken']);
    $amount = intval($entry['fields']['payment_amount']);

    \Stripe\Stripe::setApiKey('sk_test_your_secret_key');

    try {
        $charge = \Stripe\Charge::create([
            'amount' => $amount * 100, // в центах
            'currency' => 'usd',
            'description' => 'Оплата с сайта',
            'source' => $token,
        ]);
        // Можно сохранить статус платежа в метаданных формы
        update_post_meta($entry['id'], '_payment_status', $charge->status);
    } catch (Exception $e) {
        // Логируем ошибку
        error_log('Stripe Payment Error: ' . $e->getMessage());
        wp_die('Платёж не прошёл, попробуйте позже.');
    }
}
add_action('wpforms_process_complete', 'wpformru_handle_stripe_payment', 10, 2);

В этом примере после отправки формы происходит вызов функции, которая берёт токен карты и сумму из полей формы, создаёт платёж в Stripe и сохраняет статус.

Интеграция WPForms с PayPal через Webhook

PayPal Standard Addon работает через перенаправление, что не всегда удобно. Можно настроить Webhook для автоматической обработки платежей без перезагрузки.

Для этого:

  • В админке WPForms создайте форму с кнопкой «Оплатить через PayPal»;
  • Настройте Webhook URL в аккаунте PayPal, который будет принимать уведомления о платеже;
  • Создайте обработчик Webhook в WordPress, который обновит статус заявки при успешном платеже.

Пример простого обработчика Webhook:

function wpformru_handle_paypal_webhook() {
    $payload = file_get_contents('php://input');
    $data = json_decode($payload, true);

    if (!empty($data['invoice']) && $data['payment_status'] === 'Completed') {
        $entry_id = intval($data['invoice']);
        update_post_meta($entry_id, '_payment_status', 'completed');
    }
    http_response_code(200);
    exit;
}
add_action('init', function() {
    if ($_SERVER['REQUEST_URI'] === '/paypal-webhook') {
        wpformru_handle_paypal_webhook();
    }
});

URL /paypal-webhook нужно указать в настройках PayPal IPN (Instant Payment Notification).

Советы по безопасности и тестированию платежных форм

При работе с платежами крайне важно соблюдать меры безопасности:

  • Используйте HTTPS на сайте для шифрования данных;
  • Храните ключи API в защищённых настройках, не в открытом коде;
  • Проверяйте валидность и целостность данных, полученных от платежных систем;
  • Тестируйте интеграцию в тестовом режиме (sandbox) платежных систем;
  • Ведите логи ошибок и попыток оплаты для анализа проблем.

WPForms и его дополнения позволяют упростить работу, но ответственность за корректность и безопасность всегда остаётся на разработчике и администраторе сайта.

Альтернативные плагины для оплаты в WordPress

Если WPForms по каким-то причинам не подходит, можно рассмотреть другие варианты:

  • Gravity Forms — с мощными дополнениями для Stripe, PayPal и др.;
  • Formidable Forms — поддерживает оплату и сложные вычисления;
  • WooCommerce — если нужна полноценная корзина и магазин.

Но для простых платежных форм WPForms с официальными Addons — самый быстрый и надёжный вариант.

Где скачать WPForms и платёжные дополнения

Все официальные Addons для WPForms доступны на сайте WPShop по ссылкам с UTM метками:

WPForms динамические поля с расчетом значений в WordPress
20.03.2026
WPForms: как собирать данные из нескольких форм в одну таблицу WordPress
20.02.2026
Как добавить собственные поля в WPForms и обработать их в WordPress
23.11.2025
WPForms: как сделать отсрочку отправки формы в WordPress
12.02.2026
WPForms: как избежать повторной отправки формы при обновлении страницы в WordPress
28.04.2026