Обмен файлами

Обмен данными между партнером и Cardsmobile

Документация перемещена

Информация на этой странице не обновляется и может быть устаревшей. Наиболее полная и актуальная версия документации для разработчиков доступна по новому адресу:

https://developers.koshelek.app

Общие принципы обмена данными

Последовательность взаимодействия представлена на диаграмме ниже.

где:

  • ИС партнера — информационная система партнера, организовавшего выпуск своих карт лояльности через приложение «Кошелёк»;

  • Файловое хранилище — хранилище файлов для обмена данными и сервер sFTP, организованные на стороне Cardsmobile;

  • Сервер Кошелька — компонент платформы Cardsmobile, обеспечивающий взаимодействие с партнерами, выпуск карт лояльности в приложении «Кошелёк», и осуществляющий подготовку отчетов и реестров выпущенных карт.

Партнер загружает свои файлы реестров в папку in. Файл реестра, формируемый Кошельком, партнер выгружает из папки out.

Форматы файлов, участвующих в файловом обмене

1. Реестр выпущенных карт лояльности

Реестр передается партнером с установленной периодичностью (рекомендуемая периодичность передачи реестра — не реже одного раза в сутки). Схема именования файла:

<имя партнера>_clients_<дата>.csv.zip

где:

  • <имя партнера> — согласованное с Cardsmobile имя партнера (без пробелов);

  • <дата> — дата формирования реестра в формате ГГГГММДД.

Пример имени файла реестра выпущенных карт лояльности:

PartnerName_clients_20190131.csv.zip

В файле передаются следующие поля в указанном порядке:

  1. card_number — номер карты (текстовое, до 50 символов);

  2. barcode — номер штрихкода (текстовое, до 50 символов);

  3. date — дата выдачи карты (строка в формате ГГГГММДД);

  4. first_name — имя держателя карты (текстовое, до 50 символов);

  5. last_name — фамилия держателя карты (текстовое, до 50 символов);

  6. patronymic_name — отчество держателя карты (текстовое, до 50 символов);

  7. phone — номер телефона держателя карты в формате MSISDN (без префикса +, например: 79111111111);

  8. email — адрес электронной почты держателя карты (текстовое, до 50 символов);

  9. sex — пол держателя карты (текстовое, один символ: м или ж);

  10. birthday — день рождения держателя карты (строка в формате ГГГГММДД);

  11. bonus_balance — текущий баланс бонусов на карте (целое число);

  12. discount — текущий размер скидки по карте (целое число);

  13. sum — сумма накоплений на карте (целое число);

  14. status — текущий статус карты (текстовое, возможные значения: active или blocked).

Если поле status отсутствует, содержит пустое значение, или значение, отличное от active или blocked, по умолчанию платформа Cardsmobile присвоит карте статус active.

Пример:

<заголовок, игнорируется>
1120000029201582;1120000029201582;20180121;Иван;Иванов;;79111111111;box@mail.dom;м;;2000;10;5000;active
1120000029201583;1120000029201583;20180122;Петр;Петров;;79111111112;box2@mail.dom;м;;2000;10;5000;active

2. Реестр свободных номеров карт лояльности

Реестр передается партнером по мере необходимости для предотвращения исчерпания набора свободных номеров карт для выпуска. Схема именования файла:

new_<имя партнера>_clients_<дата>.csv.zip

где:

  • <имя партнера> — согласованное с Cardsmobile имя партнера (без пробелов);

  • <дата> — дата формирования реестра в формате ГГГГММДД.

Пример имени файла реестра свободных номеров карт лояльности:

new_PartnerName_clients_20190131.csv.zip

В файле передаются следующие поля:

  1. card_number — номер карты (текстовое, до 50 символов);

  2. barcode — номер штрихкода (текстовое, до 50 символов).

Пример:

<заголовок, игнорируется>
1120000029201582;1120000029201582
1120000029201583;1120000029201583

3. Реестр карт лояльности, выпущенных Cardsmobile

Реестр выгружается сервером Кошелька на файловое хранилище ежедневно. Дата выгрузки файла в точности совпадает с датой выпуска карт лояльности, сведения о которых содержатся в файле. Схема именования файла:

from_koshelek_<дата>.csv.zip

где:

  • <дата> — дата формирования реестра в формате ГГГГ-ММ-ДД.

Пример имени файла реестра карт лояльности, выпущенных Cardsmobile:

from_koshelek_2019-01-31.csv.zip

В файле передаются следующие поля в указанном порядке:

  1. card_number — номер карты (текстовое, до 50 символов);

  2. barcode — номер штрихкода (текстовое, до 50 символов);

  3. first_name — имя держателя карты (текстовое, до 50 символов);

  4. last_name — фамилия держателя карты (текстовое, до 50 символов);

  5. patronymic_name — отчество держателя карты (текстовое, до 50 символов);

  6. phone — номер телефона держателя карты в формате MSISDN (без префикса +, например: 79111111111);

  7. email — адрес электронной почты держателя карты (текстовое, до 50 символов);

  8. sex — пол держателя карты (текстовое, один символ: м или ж);

  9. birthday — день рождения держателя карты (строка в формате ГГГГММДД).

Пример:

<заголовок, игнорируется>
1120000029201582;1120000029201582;Иван;Иванов;;79111111111;box@mail.dom;м;20000101
1120000029201583;1120000029201583;Петр;Петров;;79111111112;box2@mail.dom;м;20000102

При необходимости (по согласованию с партнером) в конец списка полей могут быть добавлены дополнительные поля.

Чтобы обеспечить актуальность сведений о картах лояльности, выпущенных для партнера в Кошельке, рекомендуется загружать реестр карт, выпущенных Cardsmobile, не реже одного раза в сутки.

Last updated