Төлемдер мен күйлер
Шот-фактура тапсырысты сипаттайды. Төлем — оны төлеуге жасалған нақты әрекет. Төлем әрекеті және оның сілтемесінің қолжетімділігі — бөлек күйлер.
Осы бетте
Төлем жазбасы#
Шот-фактура тапсырыс шарттарын сақтайды; төлем оның шлюз операциясын анықтайды. Алғашқы іске қосу бір тұрақты байланысты және сервердің Идемпотенттік-Кілтін резервтейді. Жіберу басталғаннан кейін басқа әдіс сол шот-фактура бойынша екінші төлем жасай алмайды.
GET /api/payment-links және GET /api/v1/payments иесіне link.payment қайтарады. Сілтеменің белсенді/тоқтатылған/болдырылған/мерзімі өткен күйі төлем күйінен бөлек. Клиент өз операциясын тек кездейсоқ checkout токені арқылы оқи алады.
| Деректер | Мақсат |
|---|---|
| Сәйкестендіргіш және тапсырыс | Әрекетті сатып алумен байланыстыру |
| Базалық сома және валюта | Есептеу базасы |
| Төлем әдісі | Қолданылатын комиссия және салық |
| ҚҚС төлеуші | Салықты кім жабады |
| Комиссия, ҚҚС және жиынтықтар | Сақталған есептеу |
| Мәртебе және уақыт | Ағымдағы транзакция күйі |
| Шлюз оқиғасына сілтеме | Сервер растау көзі |
Тірі операция күйлері#
Демо-нұсқа бөлек тест жазбаларын пайдаланады. Демо-күйді өзгерту нақты төлемді растамайды және қаржылық жазбаларды өзгертпейді.
| Мәртебе | Мағынасы |
|---|---|
| күтілуде | Операция жасалды; әрекет немесе нәтиже күтілуде |
| requires_action | Банк коды немесе клиентті растау қажет |
| processing | Провайдер әлі де нәтижені растауда |
| сәтті аяқталды | Сервер нақты төлемді тексерді |
| сәтсіз | Әрекет расталған төлемсіз аяқталды |
| expired | Нұсқаулықтар мерзімі өтті; салыстыру әлі қолжетімді |
| review_required | Қосымша қарау қажет; қайта төлемеңіз |
| partially_paid | Соманың тек бір бөлігі алынды; басқа төлем жасамаңыз |
| partially_refunded | Төлемнің бір бөлігі қайтарылды |
| refunded | Қайтару расталды |
| disputed | Операция даулы |
Ақиқат көзі#
Қол қойылған webhook нақты шлюз операциясының аутентификацияланған оқылуын іске қосады. ID, тапсырыс, валюта, әдіс, базалық және соңғы сомалар, тірі режим және монотонды нұсқа тексеріледі. Кіріс оқиға атауының өзі ақшаның дәлелі емес.
Күй, түбіртек және мерчант оқиғасы атомдық түрде коммит жасалады. Ескі жауаптар жаңа нұсқаны қайта жаза алмайды; қайталанғандар екі рет орындалмайды, ал күтілуде расталған төлемді алмастыра алмайды. Бұл жазбалар автоматты түрде шығарылатын баланс немесе төлем жасамайды.
Нәтиже белгісіз болғанда#
- 1
Түпнұсқа шот-фактураны және операция сәйкестендіргішін сақтаңыз.
- 2
GET /api/checkout/{token}/status оқыңыз; ол төлем жасамайды.
- 3
Айқын салыстыру қажет болғанда POST /api/checkout/{token}/reconcile пайдаланыңыз.
- 4
Белгісіз нәтижеден кейін әдісті, соманы немесе идемпотенттік кілтті өзгертпеңіз.
Бірнеше дүкен және бір АҚШ доллары базалық бағасы#
Жиынтық аналитика мен операциялар үшін Барлық дүкендерді таңдаңыз немесе жеке жазбалары үшін дүкенді таңдаңыз. Әр дүкеннің жеке storeId, атауы, ҚҚС әдепкі мәні, шоттары, API кілттері, вебхук нүктелері, оқиғалар тарихы және веб-сайт қосымшасы бар. Хабарландырулар мен қолдау билеттері тіркелгіге тиесілі. Тіркелгі 100 дүкенге дейін құра алады. Бар жазбалар оның бірінші дүкенінде қалады.
Жаңа жұмыс кеңістігі шоттары pricingMode="universal" және АҚШ доллары базалық бағасын пайдаланады. Any карта, alipay, sbp және криптоны қамтиды; сатушы ішкі жиынтықты таңдай алады. Карталар мен Alipay АҚШ долларымен есептейді. SBP Ресей Банкінің АҚШ доллары/рубль анықтамалық бағамын пайдаланып рубльмен есептейді. Крипто айқын шот ережесі бойынша USDT-мен есептейді: 1 АҚШ доллары = 1 USDT. Бұл шот айырбастау ережесі, нарықтық USDT котировкасы емес. Шлюз таңдалған монетаның бағамын, нақты аударым сомасын және нұсқауларды аударымға дейін береді.
Анықтамалық бағам және екі сома да құру кезінде мұздатылады. Рубльге айырбастауды қамтитын шоттар 24 сағат ішінде мерзімі аяқталады. Егер анықтамалық бағамды алу мүмкін болмаса, құру FX_UNAVAILABLE қатесімен сәтсіз аяқталады; ойдан шығарылған немесе ескірген қосалқы бағам пайдаланылмайды. Меншік иесінің жауабындағы amountMinor және quotes АҚШ доллары бухгалтерлік валютасын пайдаланады. quotes[method].settlement туынды валютадағы төлем котировкасын қамтиды. Қоғамдық төлем беті таңдалған төлем валютасын currency өрісінде, бастапқы бағаны baseAmountMinor/baseCurrency өрістерінде және анықтамалық бағамды fx өрісінде көрсетеді. Төлем жіберілгеннен кейін оның әдісін өзгерту мүмкін емес; шотта бір шлюз операциясы болады.
Мақсатты дүкен ішінде API кілтін жасаңыз және серверіңізден Authorization: Bearer <key> жіберіңіз. Оның дүкенге байланыстыруы өзгермейді; X-Kevmi-Store оған басқа дүкенге қолжетімділік бере алмайды. Браузер сеанстары X-Kevmi-Store: <storeId> таңдайды; оны алып тастағанда бірінші дүкен таңдалады. all мәні тек GET /api/account/dashboard және GET /api/payment-links сұраулары арқылы қабылданады. Өзгертулер таңдалған дүкенді, Origin және X-CSRF-Token талап етеді. Тіркелгі идентификаторлары мен дүкен идентификаторлары әртүрлі идентификаторлар болып табылады.
Үйлесімділік үшін pricingMode="universal" жоқ API сұраулары қолма-қол баға белгілеуді және бастапқы валюта шектеулерін сақтайды. Бар шоттар ешқашан қайта есептелмейді. Аналитикадағы расталған түбіртектер тексерілген төлемдерден сақталған шот шығындарын шегергендегі соманы көрсетеді; олар шығарылатын баланс емес. Мұрагерлік шот валюталары бөлек қалады, ал төлемдер қолдау қызметімен келісіледі. Тапсырысты тек payment.fulfillmentReady=true және payment.status="succeeded" сервер API, оқиғалар тарихы немесе қол қойылған вебхук арқылы тексергеннен кейін орындаңыз.