Қысқаша
Көп жағдайда мұның себебі бір: QR-дың сканерлеу терезесі өтіп кеткен. Әр QR нақты бір счётқа жасалады және қысқа уақыт қана жарамды — шамамен үш минут. Шешімі: жаңа счёт жасап, жаңа QR көрсету. Ескі QR-ды жаңарту, ұзарту немесе қайта тірілту мүмкін емес — терезені Kaspi белгілейді, біз оған әсер ете алмаймыз.
Неге бұлай
QR — тұрақты «дүкеннің QR-ы» емес, нақты бір счётқа жасалған уақытша код. Счёт жасағандағы жауапта qrUrl, qrImageUrl, payUrl, deepLink және expiresAt келеді. Соңғысы — осы QR қашанға дейін жарамды екенін көрсететін өріс.
Терезе өтіп кеткеннен кейін QR-ды скандаған клиент төлем экранын көрмейді: оның орнына «кейінірек көріңіз» немесе соған ұқсас хабар шығады. Бұл клиенттің Kaspi қосымшасының ақауы емес және сіздің баптауыңыздың қатесі де емес.
Уақытты кодта тұрақты сан қылып жазбаңыз. Kaspi терезені өзгертуі мүмкін. expiresAt өрісін оқып, таймерді содан құрыңыз — сонда кодыңыз өзі бейімделеді.
Симптом бойынша
| Не көріп тұрсыз | Ықтимал себебі | Не істеу керек |
|---|---|---|
| Клиент скандады, «кейінірек көріңіз» шықты | Терезе өтіп кеткен | Жаңа счёт жасаңыз |
| QR экранда ұзақ тұрған, содан кейін ғана скандалды | Сол себеп | QR-ды клиент дайын болғанда көрсетіңіз |
| Басылып қабырғада ілулі QR істемей қалды | Счёт QR-ы басуға арналмаған | Төлем сілтемесін қолданыңыз |
Счёт әлі pending, бірақ QR істемейді | Терезе біткен, счёт әлі жабылмаған | Жаңа счёт жасап, ескісін жабыңыз |
| QR мүлде ашылмайды, сурет бос | Счёт жасалмаған, қате қайтарылған | API жауабындағы қате кодын қараңыз |
| Sandbox-та QR нақты төлем қабылдамайды | Тест режимі | Клиентке төлем келмей жатыр |
Не істеу керек
- Ескі счётты
POST /api/v1/invoices/{id}/cancelарқылы жабасыз — сонда клиент кейін оны кездейсоқ төлеп қоймайды - Сол сомамен жаңа счёт жасайсыз
- Жаңа
qrImageUrlнемесеpayUrlмекенжайын клиентке көрсетесіз
Клиент кассада тұрса, бұл бірнеше секундтық жұмыс. Ыңғайлы болу үшін кассаның экранында «QR-ды жаңарту» батырмасын қойыңыз: ол жаңа счёт жасап, жаңа кодты шығарсын.
Басылған QR мен экрандағы QR
Бұл екеуін шатастыру — жиі кездесетін қате.
| Счёттың QR-ы | Төлем сілтемесі | |
|---|---|---|
| Не үшін | Нақты бір төлем, нақты сома | Тұрақты мекенжай, қайта-қайта қолдануға |
| Жарамдылығы | Қысқа терезе, expiresAt | Сіз тоқтатқанша жұмыс істейді |
| Басуға жарай ма | Жоқ | Иә |
| Сомасы | Счёт жасағанда белгіленеді | Тұрақты немесе ашық сомалы |
Егер сізге қабырғаға ілетін, мәзірге басатын немесе стикерге шығаратын тұрақты QR керек болса, төлем сілтемесін қолданыңыз: qut.kz/p/<slug>. Сілтеменің QR-ы ескірмейді, өйткені ол счётқа емес, сілтеменің өзіне сілтейді — клиент скандаған сәтте счёт жаңадан жасалады. Ашық сомалы сілтеме де болады: соманы клиент өзі енгізеді.
Экрандағы динамикалық QR офлайн нүктеде дұрыс жұмыс істейді: кассир соманы енгізеді, экранда QR шығады, клиент бірден скандайды.
Терезеге тап болмау үшін
- QR-ды соңғы сәтте жасаңыз. Тапсырыс беттегі формаға кіргенде емес, клиент «Төлеу» батырмасын басқанда счёт жасаңыз.
- Экранда таймер көрсетіңіз.
expiresAtөрісінен қанша уақыт қалғанын есептеп, клиентке көрсетіңіз. - Терезе біткенде батырма шығарыңыз. «QR ескірді, жаңасын жасау» — клиент өзі басады.
- Клиент жақын жерде болмаса,
phoneсчётын таңдаңыз. Телефонға счёт ұзағырақ тұрады, клиент хабарламаны кейін ашып төлей алады. - Электрондық поштамен немесе мессенджермен QR-дың суретін жібермеңіз. Хат ашылғанша терезе бітіп қалады — оның орнына төлем сілтемесін жіберіңіз.
Жиі қойылатын сұрақтар
QR-дың терезесін ұзартуға бола ма? Жоқ. Терезені Kaspi белгілейді, біз оны өзгерте алмаймыз.
Нақты неше минут? Шамамен үш минут, бірақ дәл мәнді expiresAt өрісінен алыңыз. Кодта тұрақты сан жазбаңыз.
Терезе бітсе, счёт бірден expired бола ма? Міндетті емес: QR-дың сканерлеу терезесі мен счёттың жалпы күйі бір нәрсе емес. Счёт әлі pending тұрып, QR істемеуі мүмкін. Толығы: Счёт pending күйінде тұрып қалды.
Клиент ескі QR-ды скандап төлеп қойса ше? Терезеден кейін төлем өтпейді. Егер төлем әйтеуір өтіп кетсе, сізге invoice.paid оқиғасы late: true белгісімен келеді — қызметті беріңіз немесе ақшаны қайтарыңыз.
Бір счётқа екі рет QR көрсетуге бола ма? Иә, qrImageUrl сол күйі қалады. Бірақ терезе біткен соң ол да жұмыс істемейді.