Введение — финансовые сообщения ISO 20022
Раздел посвящён знакомству с финансовыми сообщениями ISO 20022 и практикам использования в пределах TKEY7.

Стандарт ISO 20022 — современный и универсальный формат обмена финансовыми сообщениями нового поколения, который вводится для стандартизации правил обработки платежей, независимо от географического региона. Структура сообщений, которые используются при обмене информацией, должна соответствовать структуре сообщений электронного репозитория, размещённого на сайте www.iso20022.org.
TKEY7 поддерживает общепринятые финансовые сообщения pacs.002, pacs.004, pacs.008, pacs.009, camt.026, camt.029, camt.030, camt.056, camt.087, и также собственные сообщения tkey.001, tkey.002, разработанные на основании методологии международного стандарта ISO 20022 и с учётом внутренней практики для использования в рамках системы. Бизнес-сообщения должны формироваться серверной частью Участника и направляться в TKEY7 для передачи другому Участнику.
Каталог сообщений
Электронный репозиторий TKEY7 на ресурсе GitHub содержит шаблоны финансовых XML-сообщений, XML-схемы (XSD) и примеры сообщений ISO 20022, которые используются Участниками TKEY7.
Примеры использования финансовых сообщений содержатся в разделе — Сценарии.
Состав сообщений
Участники TKEY7 используют бизнес-сообщения для обмена информаци. Сообщения формируются целевой автоматизированной серверной системой Участника и направляются в TKEY7 для передачи другому Участнику.
Бизнес-сообщение состоит из двух блоков: бизнес-заголовка и бизнес-содержимого.
- В качестве бизнес-заголовка используется сообщение ISO 20022 — head.001.001.03.
- В качестве бизнес-содержимого используются финансовые сообщения ISO 20022, наименования и обозначения которых приведены в электронном репозитории.
Структура бизнес-сообщения
<Message xmlns="urn:tkeysettlement"><AppHdr><!-- Бизнес-заголовок --></AppHdr><Document><!-- Бизнес-содержимое --></Document></Message>
При формировании структуры бизнес-сообщений все пространства имён должны быть квалифицированы — необходимо использовать префикс пространства имён в элементах данных в XML-документе.
Таблица пространств имён
Префикс | Пространство имён |
---|---|
head | urn:iso:std:iso:20022:tech:xsd:head.001.001.03 |
tscisn | urn:iso:std:iso:20022:tech:xsd:tkey.001.001.01 |
tstsn | urn:iso:std:iso:20022:tech:xsd:tkey.002.001.01 |
tspsr | urn:iso:std:iso:20022:tech:xsd:pacs.002.001.11 |
tspr | urn:iso:std:iso:20022:tech:xsd:pacs.004.001.10 |
tscct | urn:iso:std:iso:20022:tech:xsd:pacs.008.001.09 |
tsct | urn:iso:std:iso:20022:tech:xsd:pacs.009.001.09 |
tsuta | urn:iso:std:iso:20022:tech:xsd:camt.026.001.09 |
tsroi | urn:iso:std:iso:20022:tech:xsd:camt.029.001.11 |
tsnoca | urn:iso:std:iso:20022:tech:xsd:camt.030.001.05 |
tspcr | urn:iso:std:iso:20022:tech:xsd:camt.056.001.10 |
tsrtmp | urn:iso:std:iso:20022:tech:xsd:camt.087.001.08 |
Для Участников TKEY7 подготовлен конфигурационный XSD-файл для чтения, проверки и создания XML-сообщений. Необходимо изменить значение /path/to
в атрибуте schemaLocation
в соответствии с каталогом серверной системы Участника, где расположены XSD-файлы.
Конфигурационный XSD-файл
<?xml version="1.0" encoding="UTF-8"?><xsd:schema xmlns="urn:tkeysettlement"xmlns:xsd="http://www.w3.org/2001/XMLSchema"xmlns:head="urn:iso:std:iso:20022:tech:xsd:head.001.001.03"xmlns:tscisn="urn:iso:std:iso:20022:tech:xsd:tkey.001.001.01"xmlns:tstsn="urn:iso:std:iso:20022:tech:xsd:tkey.002.001.01"xmlns:tspsr="urn:iso:std:iso:20022:tech:xsd:pacs.002.001.11"xmlns:tspr="urn:iso:std:iso:20022:tech:xsd:pacs.004.001.10"xmlns:tscct="urn:iso:std:iso:20022:tech:xsd:pacs.008.001.09"
Правила заполнения бизнес-заголовка и перечень основных элементов данных
<AppHdr><head:Fr><head:FIId><head:FinInstnId><!-- Зарегистрированный код BIC отправителя сообщения --><head:BICFI>{bicfi}</head:BICFI><head:Othr><!-- Идентификатор Участника отправителя сообщения в TKEY7 --><head:Id>{member_identification}</head:Id>
Тип | Описание | Состав | Пример |
---|---|---|---|
BizMsgIdr | Уникальный идентификатор бизнес-сообщения, присвоенный отправителем сообщения. | B + TKEY + YYYYMMDD + BICFI + Prefix + RandomNumber. | BTKEY20220717BLUERUMM001B0123456789 |
MsgDefIdr | Идентификатор сообщения — бизнес-содержимого. | Функциональная область + Идентификатор сообщения + Вариант + Версия | pacs.008.001.09 |
CreDt | Дата и время создания бизнес-сообщения. Время нормализовано до нулевого часового пояса — Z . | Year + Month + Day + T + Time + Z. | 2022-07-17T13:29:00Z |
Regex BizMsgIdr
^BTKEY([12]\d{3}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01]))([a-zA-Z]{4})([a-zA-Z]{2})(([2-9a-zA-Z]{1})([0-9a-np-zA-NP-Z]{1}))((([0-9a-wy-zA-WY-Z]{1})([0-9a-zA-Z]{2}))|([xX]{3})|11)[B,T]{1}[0-9]{10}$
Описание состава BizMsgIdr
Тип | Описание | Количество символов |
---|---|---|
B | Бизнес-сообщение. | 1 |
TKEY | Идентификатор системы. | 4 |
YYYYMMDD | Дата создания: год, месяц, день. | 8 |
BICFI | Зарегистрированный код БИК Финансового учреждения. | 11 |
Prefix | Префикс, идентифицирующий кем создано сообщение. B — Участник, T — TKEY7. | 1 |
RandomNumber | Случайное число. | 10 |
Перечень элементов данных — идентификаторов и правила заполнения
Тип | Описание | Состав | Пример |
---|---|---|---|
MsgId | Уникальный идентификатор сообщения — бизнес-содержимого. | YYYYMMDD + CcyCode + AssetGroupId + RandomNumber + BICFI | 20220717USDDSO0123456789BLUERUMM001 |
Id | Уникальный идентификатор дела/сообщения/уведомления. | YYYYMMDD + CcyCode + AssetGroupId + RandomNumber + BICFI | 20220718USDDSA2772750489GRENCHZZ002 |
InstrId | Уникальный идентификатор инструкции. | CcyCode + AssetGroupId + YYYYMMDD + BICFI + Prefix + RandomNumber | USDDSO20220717BLUERUMM001B123456789 |
EndToEndId | Уникальный сквозной идентификатор. | xxxxxxxxxxxx4xxxyxxxxxxxxxxxxxxx (UUIDv4) | 6cf0a51c25d6451cb6a5c2d684e70ae8 |
TxId | Уникальный идентификатор транзакции. | xxxxxxxxxxxx4xxxyxxxxxxxxxxxxxxx (UUIDv4) | b6274536bdd247d4a671c5150e107dc5 |
Regex EndToEndId/TxId
^[0-9A-F]{8}[0-9A-F]{4}4[0-9A-F]{3}[89AB][0-9A-F]{3}[0-9A-F]{12}$
Описание состава MsgId/Id
Тип | Описание | Количество символов |
---|---|---|
YYYYMMDD | Дата создания: год, месяц, день. | 8 |
CcyCode | Трёхбуквенный код расчётной валюты. | 3 |
AssetGroupId | Идентификатор группы активов. | 3 |
RandomNumber | Случайное число. | 10 |
BICFI | Зарегистрированный код БИК Финансового учреждения. | 11 |
Regex MsgId/Id
^([12]\d{3}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01]))[A-Z]{3}(DSO|DSA|XXX)[0-9]{10}([a-zA-Z]{4})([a-zA-Z]{2})(([2-9a-zA-Z]{1})([0-9a-np-zA-NP-Z]{1}))((([0-9a-wy-zA-WY-Z]{1})([0-9a-zA-Z]{2}))|([xX]{3})|11)$
Описание состава InstrId
Тип | Описание | Количество символов |
---|---|---|
CcyCode | Трёхбуквенный код расчётной валюты. | 3 |
AssetGroupId | Идентификатор группы активов. | 3 |
YYYYMMDD | Дата создания: год, месяц, день. | 8 |
BICFI | Зарегистрированный код БИК Финансового учреждения. | 11 |
Prefix | Префикс, идентифицирующий кем создана инструкция. B — Участник, T — TKEY7. | 1 |
RandomNumber | Случайное число. | 9 |
Regex InstrId
^[A-Z]{3}(DSO|DSA|XXX)([12]\d{3}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01]))([a-zA-Z]{4})([a-zA-Z]{2})(([2-9a-zA-Z]{1})([0-9a-np-zA-NP-Z]{1}))((([0-9a-wy-zA-WY-Z]{1})([0-9a-zA-Z]{2}))|([xX]{3})|11)[B,T]{1}[0-9]{9}$