Реестры принятых и возвращенных переводов

Раз в сутки Яндекс.Деньги формируют реестры зачисленных и возвращенных переводов. Реестры формируются в виде файлов формата CSV (Comma Separated Values) и отправляются во вложении к письмам на электронную почту контрагента. Письма подписываются сертификатом Яндекс.Денег (S/MIME подпись).

В реестре зачисленных переводов содержатся все переводы за указанную дату.

В реестре возвращенных переводов содержатся все возвращенные (полностью и частично) переводы за указанную дату.

Формат файла реестра соответствует рекомендации IETF RFC4180. Разделитель полей — точка с запятой «;». Кодировка символов — UTF-8.

Текстовый формат CSV представляет собой набор строк, разделенных символом переноса строки (LF или CRLF). Каждая строка содержит поля, разделенные точкой с запятой «;». Если в значении параметра встречаются символы двойные кавычки «"», точки с запятой «;» или переносы строк, то такие параметры должны заключаться в кавычки «"».

Note.

Допустимо помещать в кавычки все поля, вне зависимости от присутствующего в них набора символов. Если поле не помещено в кавычки, то все «соседние» пробелы (до точек с запятой или до начала или конца строки) игнорируются.

Тема (subject) электронного письма формируется по шаблону:

РЕЕСТР ДЛЯ <Название контрагента> ЗА <Дата переводов (yyyy-mm-dd)>. № <номер>

Формат имени файла реестра принятых переводов:

settlement_file_<agentId>_<yyyy-mm-dd>_<номер>.csv

Формат имени файла реестра возвращенных переводов:

refund_file_<agentId>_<yyyy-mm-dd>_<номер>.csv

Структура файла реестра

Содержимое файла реестра состоит из следующих элементов:

  • заголовок реестра, содержащий данные о номере и дате реестра (HD-строка);
  • переводы за указанную дату (D-строки);
  • контрольная строка или маркер отсутствия переводов в конце реестра (TD-строка).

Заголовок реестра (HD-строка)

Заголовок реестра содержит идентификатор магазина в Яндекс.Деньгах, номер реестра (идентификатор реестра) и отчетный период, за который сформирован реестр.

Формат заголовка реестра:

HD;agentId;registerId;from;till

Параметры заголовка реестра

Параметр

Тип

Описание

registerIdxs:long

Идентификатор сформированного реестра, уникальный на протяжении всей истории операций.

agentIdxs:long

Идентификатор контрагента.

fromxs:dateTime

Начало отчетного периода, за который сформирован реестр, включительно («от» включая).

tillxs:dateTime

Конец отчетного периода, за который сформирован реестр, исключительно («до» не включая).

Параметр

Тип

Описание

registerIdxs:long

Идентификатор сформированного реестра, уникальный на протяжении всей истории операций.

agentIdxs:long

Идентификатор контрагента.

fromxs:dateTime

Начало отчетного периода, за который сформирован реестр, включительно («от» включая).

tillxs:dateTime

Конец отчетного периода, за который сформирован реестр, исключительно («до» не включая).

Пример заголовка реестра:

HD;123456;2277;2015-07-01T00:00:00.000+03:00;2015-07-02T00:00:00.000+03:00

Перевод (D-строка)

Для каждого перевода, проведенного за отчетный период, формируется отдельная D-строка.

Note.

Временем совершения перевода считается время, возвращенное в поле processedDT в ответе на запрос makeDeposition .

Формат строки перевода:

D;clientOrderId;amount;currency;dstAccount;processedDT

Параметры строки перевода:

Параметр

Тип

Описание

dstAccountYMAccount

Идентификатор получателя перевода.

clientOrderIdClientTransactionNumber

Идентификатор операции.

processedDTxs:dateTime

Время зачисления средств на счет получателя (по часам сервера Яндекс.Денег, МСК). Приходит в ответе на запрос операции зачисления (makeDeposition). В случае возврата — время возврата средств со счета получателя.

amountCurrencyAmount

Сумма перевода или возврата.

currencyCurrencyCode

Код валюты перевода.

Параметр

Тип

Описание

dstAccountYMAccount

Идентификатор получателя перевода.

clientOrderIdClientTransactionNumber

Идентификатор операции.

processedDTxs:dateTime

Время зачисления средств на счет получателя (по часам сервера Яндекс.Денег, МСК). Приходит в ответе на запрос операции зачисления (makeDeposition). В случае возврата — время возврата средств со счета получателя.

amountCurrencyAmount

Сумма перевода или возврата.

currencyCurrencyCode

Код валюты перевода.

Пример строки:

D;123;1000.00;643;410010000400;2015-07-01T10:52:01.000+03:00

Контрольная строка (TD-строка)

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

Note.

Нулевой реестр содержит только строку заголовка и нулевую строку (Z-строку).

Формат строки:

TD;count;sum;currency

Параметры контрольной строки:

Параметр

Тип

Описание

countxs:int

Количество переводов за указанный период.

sumCurrencyAmount

Общая сумма переводов за указанный период.

currencyCurrencyCode

Код валюты общей суммы.

Параметр

Тип

Описание

countxs:int

Количество переводов за указанный период.

sumCurrencyAmount

Общая сумма переводов за указанный период.

currencyCurrencyCode

Код валюты общей суммы.

Пример строки:

TD;10;10547.25;643

Пример реестра

HD;123456;2277;2015-07-01T00:00:00.000+03:00;2015-07-02T00:00:00.000+03:00
D;123;1000.00;643;41001000040;2015-07-01T10:52:01.000+03:00
D;124;25000.00;643;41001000040;2015-07-01T10:52:02.000+03:00
TD;2;26000.00;643

Пример нулевого реестра

HD;123456;2277;2015-07-01T00:00:00.000+03:00;2015-07-02T00:00:00.000+03:00
Z

Смотрите также

Зачисление переводов

Типы данных