# Нақты режимге көштім, бірақ істемей жатыр

> Live-қа көшкеннен кейін счёт жасалмаса немесе төлем келмесе — бес минуттық тексеру реті. Кілт, кассир, тариф, webhook адресі және режимнің өзі, әрқайсысына нақты қадам.

## Қысқаша

Live-қа көшкеннен кейінгі мәселелердің дерлік бәрі бес себептің біреуі: **кілт әлі test күйінде**, **кассир қосылмаған не байланысы үзілген**, **тариф белсенді емес не лимитке жеттіңіз**, **webhook адресі сырттан ашылмайды**, **режим шынымен live болып ауыспаған**. Төмендегі бес қадамды ретімен өтіңіз — әдетте бесеуін тексеруге бес минут та кетпейді.

## Қадам 1. Кілт live ме

Ең жиі себебі. `qp_test_` кілті нақты счёт жасай алмайды.

- **Қайдан қарайсыз:** кабинет → **Интеграциялар** → API кілттер. Тізімде әр кілттің префиксі көрінеді
- **Не болуы керек:** сіздің серверіңіз қолданып жүрген кілт `qp_live_` префиксімен
- **Не істейсіз:** live кілт жоқ болса, жаңасын жасайсыз. Кілт **бір рет қана** толық көрсетіледі, сол сәтте көшіріп алыңыз. Содан кейін серверіңіздегі орта айнымалысын жаңартып, қызметті қайта іске қосасыз

**Тексеру амалы:** серверде қандай кілт тұрғанын логтан немесе env-тен қараңыз, бірақ кілттің өзін логқа толық жазбаңыз — префиксі мен соңғы төрт таңбасы жеткілікті.

Сіз кілтті жаңарттыңыз деп ойласаңыз да, қызмет қайта іске қосылмаған болса, ол ескі кілтпен жұмыс істеп тұрған болуы мүмкін. Бұл өте жиі кездеседі.

Белгілері: API **401** қайтарады — [API 401 қайтарады](/kb/api-401).

## Қадам 2. Кассир белсенді ме

Sandbox-та кассир керек емес еді, сондықтан оны қоспай қалу оңай.

- **Қайдан қарайсыз:** [Kaspi](https://qut.kz/app/kaspi/) бөлімі
- **Не болуы керек:** кемінде бір карточка **белсенді**, қасында «Себебі» деген жол жоқ
- **Не істейсіз:**
  - Карточка мүлде жоқ болса — кассир қосасыз: [Kaspi кассирін қалай қосу керек](/kb/connect-cashier)
  - Карточка белсенді емес болса — нөмірді енгізіп, SMS кодымен қайта байланыстырасыз. Бір минут алады
  - Кілтіңіз нақты кассирге байланған болса, дәл сол кассирдің белсенді екенін тексеріңіз: байланған кілт басқа кассирге ауыспайды

Байланыс үзілуінің ең жиі себебі — кассир нөмірімен біреу Kaspi Pay қосымшасына кіріп кеткен. Kaspi бір нөмірге бір ғана белсенді құрылғыға рұқсат береді.

## Қадам 3. Тариф пен лимит

- **Қайдан қарайсыз:** кабинет → **Тариф**
- **Не болуы керек:** тариф белсенді, айлық лимитке жетпегенсіз
- **Не істейсіз:**
  - Тариф белсенді емес болса — төлейсіз немесе қолдауға жазасыз
  - Лимитке жеткен болсаңыз — тарифті жоғарылатасыз

Екі бөлек қатені шатастырмаңыз:

| Қате | Мағынасы | Не істеу керек |
|---|---|---|
| `tariff_limit_reached` | Айлық счёт лимиті бітті | Тарифті жоғарылату немесе келесі айды күту |
| `tariff_daily_burst` | Тәуліктік қорғаныс іске қосылды | Кодты тексеру: бір жерде цикл болуы мүмкін |
| `tariff_inactive` немесе 403 | Тариф белсенді емес | Тариф бөлімінен төлеу |

Тәуліктік сан — бизнес лимиті емес, циклге түскен интеграциядан қорғаныс. Толығырақ: [Лимитке жеттім](/kb/tariff-limit-hit).

## Қадам 4. Webhook адресі сырттан ашыла ма

Счёт жасалып тұрса, бірақ төлем туралы хабар өз жүйеңізге келмесе — мәселе осында.

- **Қайдан қарайсыз:** кабинет → **Интеграциялар** → webhook журналы. Онда әр жіберудің жауабы жазылады
- **Не болуы керек:** адресіңіз `https://` және нақты домен, сырттан авторизациясыз ашылады, 2xx қайтарады
- **Не істейсіз:** адресті сырттағы құрылғыдан (мысалы, мобильді интернеттен) ашып көріңіз

Жиі кездесетін себептер:

- Адрес **локалды** немесе туннель арқылы: продакшенде IP-адрес пен уақытша туннель қабылданбайды
- Адрес **авторизациямен жабық**: біз кіре алмаймыз, 401/403 аламыз
- Адрес **басқа жерге қайта бағыттайды**: 307/308 тек сол адрестің өзіне (http→https, қиғаш сызық) ұсталады, басқа доменге апаратын қайта бағыттау ұсталмайды
- Сіздің жағыңыз **2xx емес** қайтарады: онда жіберу 11 рет қайталанады, 10 секундтан 1 сағатқа дейін өсіп

Егер қолтаңба сәйкес келмей жатса — денені өзгертілмеген байт күйінде тексеріп жатқаныңызды қарап шығыңыз: [Webhook қолтаңбасы сәйкес келмейді](/kb/webhook-signature-mismatch).

## Қадам 5. Режим шынымен live па

Соңғы, ең қарапайым тексеру. Кейде ауыстырғыш басылмай қалады немесе басқа ұйымда ауыстырылады.

- **Қайдан қарайсыз:** кабинет → **Баптау** → режим ауыстырғышы
- **Не болуы керек:** **Нақты (live)** күйінде
- **Қосымша тексеру:** кабинеттің жоғарғы жағында қай **ұйымда** тұрғаныңызға қараңыз. Бірнеше ұйымыңыз болса, режимді басқа ұйымда ауыстырып қойған болуыңыз мүмкін

Белгісі: счёттар жасалып жатыр, қате жоқ, бірақ клиент QR-ды сканерлегенде нақты төлем бетін көрмейді, ал кабинеттегі счёт test деп белгіленген.

## Бәрі дұрыс, бірақ әлі істемей жатыр

Сол бес қадам таза болса, мәселе Kaspi жағында болуы мүмкін:

1. [Қызмет күйін](/kb/status-endpoint) тексеріңіз
2. Сол сәтте Kaspi қосымшасының өзі қалыпты жұмыс істеп тұрғанын қараңыз
3. Екі минуттық диагностика: [Мәселе менде ме, Kaspi-де ме](/kb/is-it-us-or-kaspi)

Одан кейін де шешілмесе, қолдауға жазыңыз. Жазғанда мыналарды қоса жіберіңіз: счёттың идентификаторы, шамамен қай уақытта болғаны, қате мәтіні, кілттің префиксі (толық кілтті емес).

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

**Sandbox-та бәрі істеп тұрған, live-та неге бұзылды?** Sandbox-та Kaspi мүлде қатыспайды және кассир керек емес. Live-та қосымша үш нәрсе пайда болады: кассир, тариф және нақты Kaspi жауабы. Бұзылу солардың біреуінен.

**Кілтті ауыстырдым, бірақ әлі 401 келеді.** Қызмет қайта іске қосылды ма? Ескі кілт жадта қалып қоюы мүмкін. Сондай-ақ тақырыптың аты дәл `X-API-Key` екенін тексеріңіз.

**Счёт жасалады, бірақ `paid` күйіне ауыспайды.** Poller әр 3 секунд сайын жүреді, жаңа счёт әр айналымда тексеріледі. Бір минуттан асып кетсе — кассир байланысын және клиенттің шынымен төлегенін тексеріңіз.

**Live-қа көшкенде ескі test счёттарым не болады?** Тізімде қалады, бірақ олар нақты счёт емес және айлық лимитке кірмейді.

**Қайта sandbox-қа қайтып, сынауға бола ма?** Иә. Режимді кері ауыстырып, `qp_test_` кілтімен сынай беріңіз. Бірақ басталған сынақ мерзімі тоқтамайды.
