Инструкция по работе с карточными токенами Kassa24 Business
Для успешной интеграции с сервисом Kassa24 Business, выполните следующие шаги:
-
Проведите интеграцию согласно технической документации сервиса Kassa24 Business.
-
Обратитесь в службу технической поддержки и запросите включение функции карточных токенов.
-
При создании транзакции с параметром
tokenization: trueклиенту будет предложено ввести данные карты. После успешной оплаты в ваш коллбэк придёт полеcardToken— токен карты в строковом формате. -
Чтобы токен был создан, в теле запроса обязательно укажите номер телефона клиента.
Важно: Если клиент не укажет номер телефона, или вы не передадите его в запросе, привязка не произойдёт, и ток ен не будет сгенерирован.
-
При необходимости вы можете получить список всех токенов, связанных с клиентом, по запросу
GET /card/tokens?phone=.... -
Полученный токен сохраняется на вашей стороне и используется при последующих платежах. Для этого передавайте его в параметре
cardToken, вместе с тем же значениемphone, которое использовалось при привязке.
Важно: Настоящая инструкция описывает работу с токенами при приёме платежей. Инструкция по работе с токенами при выплатах доступна здесь.
Ниже пример платежного запроса с использованием ранее полученного cardToken:
1 2 3 4 5 6 7 8 9 10 11 12 13 14{ "merchantId":"your_login", "amount":12500, "returnUrl":"https://yoursite.kz/payment/complete", "description":"Test payment for [email protected]", "callbackUrl":"https://yoursite.kz/payment/callback", "acquiringId":5, "customerData":{ "phone":"77007777777", "cardToken":"9a796429-6bf7-4611-a04c-d7b179f33e41" }, "type":1, "demo":true }
Важно: Если вы передаёте параметр returnUrl в теле запроса, клиент будет перенаправлен на указанный URL после завершения оплаты.
Больше примеров по созданию транзакций с токенами вы можете найти тут.
Создание токена
Этот запрос используется для инициации платёжной транзакции и получения ссылки, по которой клиент сможет оплатить картой. Если вы указываете параметр tokenization: true, система создаст токен карты, но он не вернётся сразу в ответе на запрос.
Как работает процесс:
-
Вы отправляете запрос на
POST /payment/createс параметромtokenization: true -
В ответе вы получаете ссылку на форму оплаты (url) — её нужно передать клиенту.
-
Клиент переходит по ссылке, вводит данные карты и подтверждает платёж.
-
Посл е успешной оплаты в коллбэке (на ваш
callbackUrl) приходит токен карты — поле cardToken. -
Вы сохраняете этот токен и используете его в следующих платежах, чтобы клиенту не пришлось повторно вводить данные карты.
Обратите внимание, что токен приходит только в коллбэке, после оплаты, а не в теле ответа этого запроса
1POST /payment/create
Заголовки запроса
| Название заголовка | Значение | Описание |
|---|---|---|
| Content-Type | application/json | Тип содержимого запроса |
| Authorization | Basic **** | Авторизационные данные в формате Basic |
Тело запроса
1 2 3 4 5 6 7{ "merchantId": "your_login", "tokenization": true, "customerData": { "phone": "77007777777" } }
Описание переменных
| Название переменной | Тип переменной | Описание переменной |
|---|---|---|
| merchantId | string | Идентификатор мерчанта |
| tokenization | bool | Флаг включения токенизации |
| customerData | object | Данные клиента |
| phone | string | Номер телефона клиента (строка, содержащая 11 цифр) |
Пример ответа
1 2 3 4{ "url": "https://ecommerce.pult24.kz/payment/view?id=9876543210", "id": "9876543210" }
Описание переменных ответа
| Название переменной | Тип переменной | Описание переменной |
|---|---|---|
| url | string | URL для просмотра платежа |
| id | string | Идентификатор транзакции в системе |
Получение списка токенов по номеру телефона
Операция получения списка токенов, связанных с указанным номером телефона. Позволяет получить информацию о сохраненных картах клиента.
1GET /card/tokens
Параметры запроса
| Параметр | Тип | Описание |
|---|---|---|
| phone | string | Номер телефона клиента (11 цифр) |
Заголовки запроса
| Название заголовка | Значение | Описание |
|---|---|---|
| Authorization | Basic **** | Авторизационные данные в формате Basic |
Пример запроса
1https://ecommerce.pult24.kz/card/tokens?phone=77007777777
Пример ответа
1 2 3 4 5 6[ { "ID": "9a796429-6bf7-4611-a04c-d7b179f33e41", "Pan": "1111222233334444" } ]
Описание переменных ответа
| Название переменной | Тип переменной | Описание переменной |
|---|---|---|
| ID | string | Идентификатор карты (токена), который используется для проведения транзакций |
| Pan | string | Основной номер карты (PAN) |
Удаление токена
Операция удаления токена карты из системы. Позволяет удалить сохраненную карту по ее идентификатору.
1POST /card/tokens/remove
Заголовки запроса
| Название заголовка | Значение | Описание |
|---|---|---|
| Content-Type | application/json | Тип содержимого запроса |
| Authorization | Basic **** | Авторизационные данные в формате Basic |
Тело запроса
1 2 3{ "id": "9a796429-6bf7-4611-a04c-d7b179f33e41" }
Описание переменных
| Название переменной | Тип переменной | Описание переменной |
|---|---|---|
| id | string | Идентификатор карты (токена), который используется для проведения транзакций |
Пример ответа
1 2 3{ "removed": true }
Описание переменных ответа
| Название переменной | Тип переменной | Описание переменной |
|---|---|---|
| removed | bool | Статус удаления токена (true/false) |
Общие замечания
- Все запросы требуют авторизации с использованием заголовка Authorization в формате Basic.
- Номера телефонов должны содержать строго 11 цифр и передаваться в виде строки.
- Вместо реального номера телефона можно передавать другой уникальный идентификатор — при условии, что он также состоит из 11 цифр (например, "77007777777"). Этот идентификатор должен использоваться во всех последующих запросах, связанных с токенами, включая создание, получение и удаление карты.
- Идентификаторы (например, merchantId, id карты) должны быть предоставлены соответствующими значениями, полученными от системы.