Перейти к основному содержимому

Кардпул

Общая информация

В Sailplay реализована возможность загрузки списка карт и последующее получение карт из него с помощью API.

Полученные значения можно использовать:

  • атомарно — просто получить номер карты;
  • с привязкой к клиенту — сразу записать номер карты в профиль клиента.

На практике функциональность чаще всего используется для генерации и выдачи виртуальных номеров карт, которые:

  • могут подставляться в письма и сообщения;
  • не имеют физического носителя.

Каждый код может быть получен из группы только один раз.

При записи номера карты клиенту система проверяет, не используется ли этот origin_user_id у других клиентов.
Если код уже занят, он пропускается, и система пытается взять следующий.
Максимальное количество попыток — 5.


Методы API

Создание пула карт

Создание пула (группы) номеров карт выполняется методом
/partners/origin-user-ids/load/

Загрузка осуществляется через POST-запрос с .txt файлом, где:

  • каждая строка файла содержит один номер карты.

В запросе необходимо передать:

  • авторизационные данные;
  • название группы (group_name), в которую будут загружены номера.

При успешной обработке:

  • создаётся группа с указанным именем;
  • все номера из файла добавляются в пул.
к сведению

В одну и ту же группу можно загружать несколько файлов.
Значения будут дополняться, при этом в группе сохраняются только уникальные номера карт.


Получение номера карты

После создания группы доступны два способа получения номера карты.

Получить номер карты

Метод
/partners/origin-user-ids/allocate/

  • возвращает свободный номер карты из группы (group_name);
  • помечает номер как выданный;
  • номер может быть использован далее в бизнес-логике (например, отображён клиенту).

Получить и сразу назначить клиенту

Метод
/partners/origin-user-ids/allocate-and-assign/

  • возвращает номер карты из группы;
  • автоматически присваивает его клиенту как origin_user_id;
  • клиент определяется по переданному идентификатору.
warning

Если у клиента уже был указан origin_user_id,
при использовании метода allocate-and-assign значение будет перезаписано.