Configuration
PAAY API key + secret в localStorage. Не коммить файл. На landing-странице ключ виден в HTML — это нормально для PAAY (он только для аутентификации, не для платежа).
Как работает PAAY
PAAY = EMV 3DS authenticator. Это не платёжка — он не списывает деньги. Он проверяет, что карта пройдена 3DS-челлендж, и возвращает
Поток:
1) Get JWT — обмениваешь apiKey+secret на JWT
2) Authenticate browser — посылаешь карданные + amount → получаешь либо сразу authentication result, либо URL для challenge
3) Если challenge — пользователь проходит OTP/банк, после redirect получаешь итог
4) Authenticate status — финальный
Для server-side флоу (recurring) используется 3RI — без браузера пользователя.
cavv / xid / eci. Эти параметры дальше передаются в платёжный gateway (или Konnektive Import Order) для liability shift.Поток:
1) Get JWT — обмениваешь apiKey+secret на JWT
2) Authenticate browser — посылаешь карданные + amount → получаешь либо сразу authentication result, либо URL для challenge
3) Если challenge — пользователь проходит OTP/банк, после redirect получаешь итог
4) Authenticate status — финальный
cavv/xid/eciДля server-side флоу (recurring) используется 3RI — без браузера пользователя.
Authentication
Generate JWT (HS256, client-signed)
client-sideJWT генерируется локально в браузере через HMAC-SHA256 (apiKey →
iss, secret → ключ). У PAAY нет endpoint'а для обмена secret на JWT — клиент подписывает токен сам.// JWT will appear here and auto-save to config
Browser 3DS flow
Этот эндпоинт принимает карданные. PCI scope. Тестовые карты с PAAY sandbox.
Authenticate browser
POST /{ver}/authenticate/browserСтарт 3DS-аутентификации для checkout-флоу. Возвращает либо
frictionless success, либо URL для challenge-iframe.// response
Authenticate 3RI (server-initiated)
POST /{ver}/authenticate/3ri3DS Requestor Initiated — для recurring/MIT без браузера клиента. Возвращает auth-result без challenge.
// response
Get authentication status
GET /{ver}/authenticate/{transactionId}Финальный статус аутентификации (после challenge или сразу для frictionless). Тут берёшь
cavv / xid / eci / authValue для платежа.// response
Tools
Decode JWT
Раскодировать payload JWT (header + claims).
Raw request
Любой path PAAY API. JWT и X-3DS-API-KEY подставятся.
// response