Qut Pay Сайт Кабинет Білім базасы Нұсқаулықтар API құжаттамасы ҚАЗРУС
Басты бетБілім базасы → Анықтамалық

WooCommerce плагині

Жаңартылды: 2026-09-14 · Markdown нұсқасы

Қысқаша

Плагин WooCommerce кассасына «Kaspi арқылы төлеу» әдісін қосады: сатып алушы Kaspi-ді таңдайды → Qut Pay төлем бетіне өтеді (QR немесе Kaspi сілтемесі) → төлеген сәтте тапсырыс автоматты түрде «Обработка» немесе «Выполнен» болады. Ақша тікелей сіздің Kaspi Pay шотыңызға түседі.

Жүктеу: https://api.qut.kz/downloads/qutpay-for-woocommerce.zip Толық нұсқаулық: https://api.qut.kz/docs/guide/wordpress

Барлығы 10-15 минут алады.

Талаптар

НеМәні
WordPress6.0 және жоғары
WooCommerce7.0 және жоғары. Классикалық касса, Checkout Blocks және HPOS қолдау көрсетіледі
PHP7.4 және жоғары
Сайтhttps арқылы ашылуы керек
Дүкен валютасыKZT (₸). Басқа валютада әдіс кассада мүлде көрінбейді
Qut PayKaspi кассирі қосылған ұйым. Sandbox-та сынау үшін кассир керек емес

1-қадам. Плагинді орнату

  1. Архивті жүктеп алыңыз.
  2. WordPress → Плагины → Добавить новый → Загрузить плагин → zip файлын таңдаңыз → УстановитьАктивировать.
  3. Егер тізімде ескі немесе бұзылған «qutpay-for-woocommerce» жазбасы тұрса, алдымен оны жойыңыз, керек болса хостингтегі wp-content/plugins/qutpay-for-woocommerce қалтасын өшіріңіз, сосын қайта жүктеңіз.

2-қадам. Кілт пен webhook

Кабинет: https://qut.kz/app

  1. Интеграциялар → API кілттері → атауы ретінде сайтыңызды жазып, Жасау. Кілт бір рет қана көрсетіледі — бірден көшіріп алыңыз. Қайтару жасай алу үшін кілтке refunds:write рұқсатын қосыңыз.
  2. Интеграциялар → Webhook → адрес:

`` https://САЙТЫҢЫЗ/wp-json/qutpay/v1/webhook ``

«Кілт» тізімінен жаңа ғана жасаған кілтті таңдаңыз — сонда бұл адреске тек осы сайттың оқиғалары келеді. Жасау → көрсетілген құпияны (whsec_…) көшіріп алыңыз, ол да бір рет көрсетіледі.

Сайтта «Постоянные ссылки» өшірулі болса, адрес басқаша болады: https://САЙТЫҢЫЗ/?rest_route=/qutpay/v1/webhook.

3-қадам. Баптау

WooCommerce → Настройки → Платежи → «Qut Pay (Kaspi QR)» → Управление:

ӨрісНе қою керек
Включить
Название на кассеСатып алушы көретін атау. Әдепкісін қалдыруға болады
ОписаниеКассадағы қысқа түсінік
API-ключ2-қадамдағы кілт
Секрет webhook2-қадамдағы whsec_…
Адрес APIhttps://api.qut.kz — өзгертпеңіз
Статус после оплатыФизикалық тауар — Обработка (processing), цифрлық қызмет немесе курс — Выполнен (completed)
ЛогСынау кезінде ✔ қойыңыз

Сохранить изменения басыңыз. Сосын WooCommerce → Настройки → Общие → Валюта өрісінде Казахстанский тенге (KZT) тұрғанын тексеріңіз.

Тапсырыс күйі қалай ауысады

  1. Сатып алушы тапсырысты растағанда плагин POST /api/v1/invoices шақырады: externalOrderId — тапсырыс нөмірі, Idempotency-Keywc-{id}-…. Сондықтан батырманы екі рет бассаңыз да екі счёт шықпайды. Сатып алушы payUrl бетіне бағытталады.
  2. Счёт pending күйінде шамамен 3 минут тұрады — бұл Kaspi-дің QR сканерлеу терезесі.
  3. Төленсе — webhook invoice.paid келеді, тапсырыс сіз таңдаған күйге ауысады, тапсырыс ескертпелерінде «Qut Pay: оплачен, счёт inv_…» жазылады.
  4. Төленбесе — счёт expired болады, тапсырыс «Отменён» күйіне көшеді.
  5. Кеш төлем. Счёт жабылғаннан кейін ақша келсе, invoice.paid кейін де келеді және тапсырысты қайта «оплачен» етеді. Бұл қалыпты жағдай: не тауарды беріңіз, не ақшаны қайтарыңыз.

«Спасибо» бетінде плагин күйді API-дан қайта сұрайды — webhook кешіксе де сатып алушы дұрыс күйді көреді. Бір оқиға екі рет келсе, тапсырыс екі рет өзгермейді.

Қайтару

Қайтаруды WooCommerce-тің өз тапсырыс карточкасынан жасайсыз: тапсырысты ашып, «Возврат» батырмасын басыңыз. Плагин POST /invoices/{id}/refund шақырады. Ішінара қайтару да жұмыс істейді.

Шарты біреу: кілтте refunds:write рұқсаты болуы керек. Кілт жасағанда оны белгілемесеңіз, қайтару 403 қатесімен өтпейді — жаңа кілт жасап, плагиндегі мәнді ауыстырыңыз.

Қайтаруды кабинеттен де жасауға болады — ол кезде тапсырыс webhook арқылы жаңарады.

Чек

Төленген соң чек сілтемесі «Спасибо» бетінде шығады және тапсырыс ескертпесіне жазылады. Счёт жасағанда сатып алушының email-і берілсе, чек хаты да кетеді (кабинетте SMTP бапталған болса). Толығырақ: Чектер.

Сынау

Sandbox. Кабинетте ұйым sandbox режимінде тұрғанда счёттар Kaspi-ге кетпейді. Дүкенде тапсырыс жасап, Kaspi әдісін таңдаңыз → төлем бетіндегі «[Sandbox] төлемді имитациялау» батырмасын басыңыз → сайтқа қайтасыз, тапсырыс төленген күйге ауысады. Webhook-тар бұл кезде шынайы жіберіледі.

Live. Кассирді қосып, режимді live-қа ауыстырыңыз, qp_live_… кілт жасап плагинге қойыңыз. 10 ₸-ға тест тауар жасап, өз телефоныңызбен төлеңіз. Сосын сол тапсырысты қайтарып көріңіз — WooCommerce-те «Возвращён» болғанын тексеріңіз.

Жиі кездесетін мәселелер

БелгісіСебебі және шешімі
Кассада Kaspi әдісі көрінбейдіВалюта KZT емес; плагин қосылмаған; API кілт өрісі бос
«Файл плагина не найден»Ескі немесе бұзылған архив. Плагин қалтасын өшіріп, жаңа zip-ті жүктеңіз
Тапсырыс «Ожидает оплаты» күйінде қалып қоядыWebhook тіркелмеген немесе құпия сәйкес емес. Кабинет → Интеграциялар → Webhook → Жеткізу журналы: 401 — құпия қате, 404 — адрес қате, 5xx — сайт қатесі
Журналда «timeout»Сайт 8 секундтан ұзақ жауап береді. Кэш немесе қорғаныс плагинін тексеріңіз; Cloudflare болса /wp-json/qutpay/ жолын «Bypass» етіңіз
kaspi_session_expiredКассир сессиясы үзілген: кабинет → Kaspi → SMS кодпен қайта байланыстырыңыз
tariff_limit_reachedЛимит толды: кабинет → Тариф
Live-та счёт жасалмайды, sandbox-та жасаладыПлагинде qp_test_… кілті тұр. Live кілт қойыңыз
Қайтару өтпейдіКілтте refunds:write жоқ. Жаңа кілт жасаңыз

Егер тізімдегі тексерулер көмектеспесе: Плагин істемей жатыр.

Жиі қойылатын сұрақтар

Checkout Blocks-пен жұмыс істей ме? Иә. Классикалық касса да, Blocks та, HPOS та қолдау көрсетіледі.

Сайтым http арқылы ашылады. Live режимде webhook адресі міндетті түрде https болуы керек. Сертификат орнатыңыз — қазір ол тегін.

Бірнеше дүкенім бар, бір кілт жетеді ме? Әр сайтқа бөлек кілт жасап, webhook адресін сол кілтке байлаған дұрыс: сонда әр дүкен тек өз оқиғаларын алады.

Сатып алушы төлем бетінен қайтып кетсе не болады? Тапсырыс «Ожидает оплаты» күйінде қалады, счёт өз мерзімінде expired болады. Сатып алушы тапсырысты қайта ашып, төлей алады.

Тапсырыс күйін өзім ауыстырсам, плагин оны қайта өзгерте ме? Менеджер тапсырысты processing немесе complete күйіне қойған болса, кешіккен expired/cancelled оқиғасы оны қайта өзгертпейді.

OpenCart дүкені үшін не істеу керек? Ол үшін бөлек кеңейту бар: OpenCart 4 кеңейтуі.

Байланысты мақалалар

WooCommerce немесе OpenCart плагині істемей жатырПлагин счёт жасамаса немесе тапсырыс күйі өзгермесе, тексеретін төрт нәрсе бар: кілт, режим сәйкестігі, webhook адресінің жариялығы және дүкен журналы. Қай симптом нені білдіреді.Webhook баптауКабинетте webhook адресін қосу, оқиғаларды таңдау, құпияны сақтау, тақырыптар мен дене пішімі, 11 рет қайталау кестесі, журналды оқу, адресті сынау және қайта бағыттау ережесі.API кілттер — жасау, сақтау, ауыстыруqp_live_ және qp_test_ кілттерінің айырмашылығы, кілтті кабинетте жасау, қайда сақтау керек және қайда мүлдем сақтамау керек, әр интеграцияға бөлек кілт, үзіліссіз ауыстыру реті және жою салдары.Қайтару API — толық және ішінара қайтаруPOST /invoices/{id}/refund әдісінің толық анықтамасы: сұрау өрістері, толық және ішінара қайтару, сома шектеуі, барлық қате коды, refund_unknown келгенде не істеу керек және қандай оқиғалар жіберіледі.Интернет-дүкенге Kaspi төлемін қосуСебеттен «төленді» күйіне дейінгі толық схема: счёт, төлем беті, webhook. Tilda, WooCommerce, OpenCart және өзі жазылған сайт үшін кодсыз жол мен API жолы.

Сұрағыңыз қалды ма? WhatsApp +77788813333 · kazprose@gmail.com
Кабинеттен де жазуға болады: Қолдау.

Qut Pay — тәуелсіз сервис, «Kaspi Bank» АҚ-мен аффилирленбеген. Kaspi және Kaspi Pay — құқық иесінің тауар белгілері.