Перейти к содержанию

Offline Integration Implementation

Loyalty Offline Service implementation principles


Koshelek and a partner exchange files through a file storage deployed in a secured zone at the Cardsmobile platform. For file exchanging, file transfer protocol SFTP is used. Interaction scheme is presented in the figure below.

Information interaction with a partner

File Access Authentication

For connection, the username and password generated by Koshelek are used. The following connection parameters are provided to the partner:

Parameter Description
host:port Address of the Koshelek host where the SFTP server operates.
login:password Username and password to authorize access of the partner by SFTP server.

Transferred Data

Koshelek and a partner exchange the following registries (each registry is transferred as a separate file):

  • Registry of issued loyalty cards. The registry contains data on loyalty cards issued by the partner in its sale points and also on loyalty cards issued for the partner in the Koshelek app. The registry is regularly transmitted from the partner to Koshelek.
  • Registry of reserved loyalty card numbers. The registry contains loyalty card numbers reserved by the partner for issuance in the Koshelek app. The registry is regularly transmitted from the partner to Koshelek when it is required (to avoid lack of numbers).
  • Registry of loyalty cards issued by Koshelek. The registry contains data on loyalty cards issued by Koshelek platform for the partner in the Koshelek app. The registry is regularly transmitted from Koshelek to the partner.

Info

In addition to the registries of cards, a partner must also provide a barcode format of the cards to Koshelek (the format is specified once at the preparation stage).

File Requirements

All the registry data is transmitted in compressed CSV files (ZIP algorithm should be used).

The files must be encoded with the UTF-8 encoding.

The ; character is used as a value delimiter.

The header is expected at the first line of the file, so this line is ignored.