Оплату Kaspi на сайте WordPress принимают тремя путями: через ссылку на оплату из приложения Kaspi Pay, через платёжного провайдера с готовым модулем для WooCommerce или по прямой интеграции. Ссылка запускается за день, но статус заказа придётся менять вручную. Два других пути автоматизируют заказ, но требуют договора и разработки.
На проектах B2BPRO.KZ мы чаще всего видим такую картину. Владелец магазина на WooCommerce слышит от клиентов один и тот же вопрос: «А Kaspi у вас есть?». Карточный эквайринг стоит, а покупатель привык платить через Kaspi Gold, брать рассрочку и не вводить номер карты. Заказ отваливается на последнем шаге. Дальше по порядку: какие варианты есть, что подключается без программиста, что пишется кодом и где ломается связка «оплата — статус заказа».
Что такое Kaspi Pay и чем он отличается от интернет-эквайринга?
Kaspi Pay — это приложение Kaspi для предпринимателей: через него бизнес принимает платежи с мобильного POS, по QR-коду, по ссылке и через удалённую оплату. Интернет-эквайринг — это банковская услуга, которая подключает приём карт непосредственно к странице оплаты сайта и сообщает сайту о результате.
Разница важна для WordPress. Эквайринг по определению общается с сайтом: после оплаты банк отправляет подтверждение, и модуль переводит заказ в статус «Оплачен». Ссылка на оплату из Kaspi Pay работает как отдельный канал: покупатель переходит по ссылке, платит в приложении, а сайт об этом ничего не знает, пока не сообщит человек или дополнительный код.
По справке Kaspi для партнёров, подключение к Kaspi Pay для ИП проходит онлайн в приложении, документы на бумаге не нужны, а заявления подписываются электронной подписью. Подробности есть в справочнике Kaspi по подключению ИП. Эти условия относятся к самому Kaspi Pay. Для сайта нужна отдельная договорённость и техническая часть.
Какие есть способы принять оплату Kaspi на сайте WordPress?
Основных способов три, и у каждого свой баланс между скоростью запуска и автоматизацией.
| Способ | Как работает | Скорость запуска | Статус заказа |
|---|---|---|---|
| Ссылка на оплату Kaspi Pay | Менеджер или кнопка на сайте отдаёт покупателю ссылку, покупатель платит в приложении | В день обращения | Меняется вручную |
| Платёжный провайдер с модулем WooCommerce | Покупатель выбирает способ оплаты на странице провайдера, сайт получает подтверждение | Дни или недели: договор, настройка | Автоматически |
| Прямая интеграция по API | Разработчик пишет собственный платёжный модуль под условия Kaspi | От двух-трёх недель | Автоматически, с контролем ошибок |
Таблица описывает общую логику и ничего не гарантирует: конкретные сроки и условия зависят от договора и от того, что именно предоставляет банк или провайдер на момент подключения.
Как работает оплата по ссылке Kaspi Pay и подходит ли она интернет-магазину?
Оплата по ссылке подходит для небольшого потока заказов, консультаций и услуг, где каждый заказ всё равно проходит через менеджера. В справке Kaspi описан порядок: в мобильном POS открывается раздел «Удалённая оплата», вкладка «Ссылка для оплаты», ссылку копируют и отправляют в мессенджер или соцсеть. Покупатель сам вводит сумму и платит Kaspi Gold, Kaspi Red+, кредитом на покупки, бонусами или в рассрочку. Об этом сказано в разделе «Приём оплаты» справочника Kaspi.
Обратите внимание на деталь: сумму вводит покупатель. Для корзины это неудобно и опасно, потому что человек может ошибиться или заплатить меньше. Поэтому в интернет-магазине ссылку на оплату используют как временное решение: на странице заказа показывают инструкцию «оплатите по ссылке и пришлите чек», а менеджер сверяет платёж в приложении и вручную переводит заказ в «Выполняется».
Для стартового магазина с десятком заказов в день такая схема работает. На двух десятках в день начинаются ошибки: менеджер не заметил платёж, покупатель заплатил дважды, заказ повис в «Ожидает оплаты» на сутки. Вот тогда и нужен автоматический вариант.
Как оформить такую схему на WooCommerce без разработки
- В WooCommerce откройте «Настройки — Платежи» и включите способ оплаты «Прямой банковский перевод» (BACS): он нужен как контейнер для инструкции.
- В описании способа оплаты напишите, что оплата проходит по ссылке Kaspi, и дайте короткий порядок действий для покупателя.
- Заказ остаётся в статусе «Ожидает оплаты». Менеджер получает письмо о новом заказе, проверяет платёж в приложении и меняет статус вручную.
- Добавьте в письмо клиенту ссылку и номер заказа, чтобы платёж было легко найти среди остальных.
Эта схема не требует кода, но целиком держится на дисциплине менеджера. Считайте её мостом на первые недели: постоянным решением она не станет.
Можно ли подключить Kaspi через платёжного провайдера и готовый модуль?
Можно, если провайдер включает Kaspi в список доступных способов оплаты и предоставляет модуль для WooCommerce. Такой путь самый разумный для магазина, которому нужен автоматический статус без собственной разработки. Модуль для WooCommerce у платёжного оператора обычно настраивается в разделе «WooCommerce — Настройки — Платежи»: туда вводят идентификатор магазина и секретный ключ из личного кабинета. Именно так описана установка у Freedom Pay: в каталоге плагинов WordPress есть их платёжный модуль, который работает через Merchant ID и Secret Key.
Здесь легко ошибиться: наличие плагина у провайдера не означает, что в нём сразу включена оплата через Kaspi. Какие способы оплаты доступны именно вашему магазину, определяется договором и настройками личного кабинета. Перед подписанием стоит письменно спросить у менеджера провайдера три вещи:
- входит ли Kaspi в список способов оплаты на странице оплаты для вашего типа бизнеса;
- какая комиссия действует именно на этот способ, а не «в среднем по тарифу»;
- как провайдер сообщает сайту о платеже: веб-хук, повторные запросы, возможность проверить статус вручную.
Комиссии мы здесь не называем: они меняются, и публиковать цифру без привязки к договору нельзя. Для ориентира по структуре комиссий в нашем материале о комиссиях Kaspi Pay для Apple Pay, Google Pay и Smart POS есть разбор того, как Kaspi считает онлайн и офлайн отдельно.
Как устроена оплата в WooCommerce и что значит «написать собственный платёжный модуль»?
Платёжный модуль WooCommerce — это класс, который наследуется от базового класса платёжных шлюзов WooCommerce и переопределяет метод обработки платежа. По документации разработчика WooCommerce, шлюзы создаются как отдельные плагины, а метод process_payment принимает номер заказа и возвращает результат и адрес перенаправления. Всё это описано в документации по Payment Gateway API.
Для прямой интеграции с Kaspi разработчик пишет такой плагин по следующей схеме:
- Класс шлюза регистрируется в WooCommerce и появляется в списке способов оплаты на странице оформления заказа.
- При нажатии «Оформить заказ» плагин создаёт платёж на стороне Kaspi или провайдера и перенаправляет покупателя на страницу оплаты.
- Платёжная система присылает на специальный адрес сайта уведомление о результате.
- Плагин проверяет подпись уведомления, сверяет сумму и номер заказа и только после этого переводит заказ в «Выполняется» или «Завершён».
- Если уведомление не пришло, плагин по расписанию сам запрашивает статус платежа и закрывает такие заказы.
Условия API Kaspi Pay, формат запросов и подписи определяются документами самого Kaspi, которые выдаются при подключении. Мы не публикуем их детали: они меняются, а работать нужно с актуальной версией. Если вам нужна такая разработка, разработка сайтов под ключ у нас включает и платёжные интеграции на WordPress.
Как проверить платёж, чтобы не отдать товар без оплаты?
Заказ можно считать оплаченным только после серверного подтверждения от платёжной системы, а не после того, как покупатель вернулся на страницу «Спасибо». Возврат покупателя на страницу сайта подделать несложно: достаточно открыть адрес вручную. Поэтому надёжная схема всегда опирается на уведомление, которое платёжная система присылает на сайт напрямую.
Практический набор проверок в модуле выглядит так:
- сверка подписи уведомления по секретному ключу;
- сверка суммы: платёж на меньшую сумму не должен закрывать заказ;
- защита от повторной обработки: если уведомление пришло дважды, заказ не должен повторно списать остатки со склада и повторно отправить письмо;
- журнал всех уведомлений в базе или в логе WooCommerce, чтобы спорный платёж можно было разобрать за пять минут.
Последний пункт обычно вспоминают после первого конфликта с покупателем. Лучше заложить его сразу.
Какие ошибки чаще всего ломают оплату Kaspi на сайте?
Чаще всего ломается связка вокруг оплаты. На проектах B2BPRO.KZ мы видим один и тот же набор причин.
Заказ оплачен, а статус не меняется
Причина в том, что уведомление не доходит до сайта. Адрес уведомления закрыт защитой хостинга, плагином безопасности или кэшем, либо сайт отвечает на запрос слишком долго. Платёжные системы обычно повторяют запрос несколько раз, но если ответ ни разу не пришёл вовремя, заказ остаётся без статуса. Проверьте, что адрес уведомления открыт для серверов платёжной системы и не кэшируется.
Дубли заказов и двойные списания остатков
Если уведомление обрабатывается дважды, заказ переходит в «Выполняется» два раза, и склад списывает товар вдвое. Лечится проверкой текущего статуса заказа перед изменением: уже оплаченный заказ повторно не трогаем.
Сумма в тенге с копейками и округление
WooCommerce хранит цену в дробных значениях, а платёжные системы часто ждут сумму в определённом формате. Разные правила округления приводят к расхождению на тиын, и проверка суммы отклоняет честный платёж. Договоритесь о едином формате суммы и округляйте на стороне сайта до отправки в платёжную систему.
Покупатель оплатил и закрыл вкладку
Человек платит в приложении, возвращается в браузер не сразу или вообще не возвращается. Если сайт ждёт именно возврат на страницу «Спасибо», заказ не подтвердится. Опирайтесь на серверное уведомление и опрос статуса, а не на возврат покупателя.
Тестовый режим остался на боевом сайте
Второй по частоте случай после уведомлений: магазин работает на тестовых ключах, платежи «проходят» и ничего не поступает на счёт. Перед запуском проведите реальный платёж на минимальную сумму и убедитесь, что деньги пришли на расчётный счёт.
Пример: магазин садового инвентаря в Алматы
Ниже придуманная иллюстрация, реального клиента за ней нет. Магазин на WooCommerce принимает карты через банковский эквайринг, но 40% покупателей спрашивают Kaspi. Владелец сначала включает оплату по ссылке: на странице заказа инструкция, менеджер сверяет платежи в приложении. Через месяц заказов становится больше двадцати в день, и два платежа за неделю остаются без статуса.
Тогда магазин переходит на платёжного провайдера с модулем WooCommerce, где Kaspi входит в способы оплаты. Разработчик настраивает веб-хук, добавляет журнал уведомлений и опрос статуса по расписанию. После этого менеджер перестаёт сверять платежи вручную, а на сверку уходят только спорные случаи. Собственная разработка понадобится, только если условия провайдера не подходят.
Что подготовить до начала работ?
До разговора с разработчиком или провайдером соберите короткий список вводных: он сэкономит несколько дней переписки. Хороший бриф по оплате умещается на одну страницу.
- Форма бизнеса и расчётный счёт: ИП или ТОО, в каком банке открыт счёт и подключён ли уже Kaspi Pay.
- Среднее число заказов в день и средний чек, чтобы выбрать между ручной сверкой и автоматикой.
- Список способов оплаты, которые нужны на сайте: карты, Kaspi, Apple Pay, Google Pay, рассрочка.
- Сценарии возврата: кто принимает решение, в какие сроки и каким способом деньги возвращаются покупателю.
- Куда должны уходить данные об оплате: только в WooCommerce или ещё в 1С, CRM, учётную систему склада.
- Доступ к хостингу и тестовой копии сайта, чтобы отладка шла не на боевом магазине.
Последний пункт самый недооценённый. Платёжный модуль нельзя отлаживать на живом магазине: тестовый платёж создаёт настоящий заказ, письма и списание остатков. Поэтому первым шагом разработчик поднимает копию сайта и подключает тестовые ключи.
Как протестировать оплату перед запуском?
Перед запуском проверьте оплату на нескольких сценариях, а не на одном удачном платеже. Минимальный набор такой:
- Успешная оплата: заказ меняет статус, покупатель получает письмо, остатки списаны один раз.
- Отказ или отмена в приложении: заказ остаётся неоплаченным, покупатель может повторить попытку.
- Закрытая вкладка после оплаты: статус всё равно обновляется по серверному уведомлению или опросу.
- Повторное уведомление: заказ не обрабатывается второй раз.
- Оплата меньшей суммы: заказ не закрывается и попадает в список на ручную проверку.
- Боевой платёж на минимальную сумму: деньги реально приходят на расчётный счёт.
Каждый сценарий занимает несколько минут, а ошибка в любом из них на живом магазине обходится дороже: спорные платежи приходится разбирать вручную, а покупателям объяснять задержку.
Что учесть по безопасности и данным покупателей?
Сайт не должен хранить данные банковских карт, и при переходе на страницу оплаты провайдера или Kaspi это требование выполняется само: ввод проходит на стороне платёжной системы. Задача сайта в другом: надёжно хранить секретные ключи и не выдавать их посторонним.
- Не вписывайте ключи в код темы или в файлы, которые попадают в публичный репозиторий. Храните их в настройках плагина или в конфигурации сервера.
- Ограничьте доступ к адресу уведомлений: он должен принимать запросы платёжной системы и проверять подпись.
- Включите HTTPS на всём сайте, включая страницу оформления заказа.
- Следите за обновлениями WooCommerce и платёжного плагина: после обновления ядра оплату стоит проверять тестовым платежом.
Последний пункт касается любого магазина на WordPress. Обновление WooCommerce иногда меняет работу хуков и ломает самописные модули, поэтому тестовая копия сайта нужна и после запуска, а не только до него.
Как выбрать вариант под ваш магазин?
Выбор зависит от трёх вещей: потока заказов, наличия разработчика и готовности ждать договора. Если заказов мало и нужно запуститься на этой неделе, начните со ссылки на оплату. Если заказов больше двадцати в день и менеджер не справляется со сверкой, нужен провайдер с модулем или собственный модуль. Если у вас сложная логика (предоплата частями, возвраты, сверка с 1С), без индивидуальной интеграции не обойтись.
В казахстанских реалиях также стоит учитывать, что покупатель выбирает способ оплаты по привычке. Если рядом с кнопкой Kaspi стоит надпись о рассрочке, а на деле она недоступна, это вызывает недоверие. Не обещайте рассрочку на сайте, пока не подтвердили в договоре, что она доступна именно в вашем канале. Ссылка на оплату в приложении поддерживает рассрочку, но для сайта это отдельное условие провайдера.
Если сомневаетесь, какой вариант выбрать, напишите нам: на странице разработки сайтов можно оставить заявку, и мы посчитаем объём работ по вашему магазину.
Частые вопросы
Можно ли принимать Kaspi на сайте WordPress без программиста?
Да, можно. Самый простой путь — оплата по ссылке из приложения Kaspi Pay: вы включаете в WooCommerce способ оплаты с инструкцией и сверяете платежи вручную. Статус заказа при этом автоматически не меняется, поэтому вариант подходит магазинам с небольшим числом заказов.
Есть ли готовый плагин Kaspi для WooCommerce?
В справочнике Kaspi для партнёров мы не нашли готового официального модуля для WooCommerce. Обычно Kaspi подключают через платёжного провайдера, у которого есть свой плагин, либо через индивидуальную интеграцию. Уточняйте наличие модуля у менеджера Kaspi или провайдера перед началом работ.
Сколько времени занимает подключение оплаты Kaspi к магазину?
Зависит от пути. Оплату по ссылке можно запустить в день обращения. Через провайдера срок определяется договором и проверкой магазина, а собственный модуль обычно требует от двух-трёх недель разработки и тестов. Точные сроки лучше согласовать письменно.
Как понять, что заказ действительно оплачен?
Только по серверному уведомлению от платёжной системы или по сверке платежа в личном кабинете. Возврат покупателя на страницу «Спасибо» оплатой не считается. Модуль должен проверять подпись уведомления и сумму, прежде чем менять статус заказа.
Нужен ли отдельный договор для приёма Kaspi на сайте?
Подключение самого Kaspi Pay для ИП проходит онлайн в приложении. Для приёма платежей на сайте условия зависят от выбранного пути: через провайдера нужен договор с ним, для прямой интеграции потребуются документы и доступы от Kaspi. Уточняйте актуальные требования у менеджера.
