Введение

ISO 8583 – международный стандарт для обмена сообщениями, инициированными финансовыми транзакционными картами. Это стандарт Международной организации по стандартизации для систем, обменивающихся электронными транзакциями, инициированными держателями карт при использовании платежных карт. ISO 8583 определяет формат сообщений и порядок обмена данными, чтобы различные системы могли обмениваться запросами и ответами по транзакциям. Подавляющее большинство транзакций, совершаемых клиентом при оплате картой в магазине (EFTPOS), в какой-то момент в цепочке обмена данными используют ISO 8583, как и транзакции, совершаемые в банкоматах. В частности, сети Mastercard, Visa и Verve основывают свои авторизационные коммуникации на стандарте ISO 8583, равно как и многие другие организации и сети. Хотя ISO 8583 определяет единый стандарт, он обычно не используется напрямую системами или сетями. Он определяет множество стандартных полей (элементов данных), которые остаются неизменными во всех системах или сетях, и предусматривает несколько дополнительных полей для передачи специфической информации сети. Эти поля используются каждой сетью для адаптации стандарта под собственные нужды, включая пользовательские поля и специфические применения, такие как бесконтактные карты.

Введение

Спецификация ISO 8583 состоит из трех частей:

Часть 1: Сообщения, элементы данных и кодовые значения.
Часть 2: Процедуры применения и регистрации кодов идентификации учреждений (IIC).
Часть 3: Процедуры поддержки вышеуказанных сообщений, элементов данных и кодовых значений.

Индикатор типа сообщения (MTI)

Индикатор типа сообщения – это четырехзначное числовое поле, которое указывает на основное назначение сообщения. Индикатор типа сообщения содержит информацию о версии ISO 8583, классе сообщения, функции сообщения и источнике сообщения, как описано ниже.

Класс сообщения

Вторая позиция МТИ указывает общую цель сообщения. Код Значение Использование Зарезервировано ISO Авторизационное сообщение Определяет наличие средств, получает одобрение, но не проводит операцию по счету для сверки. Двойная система сообщений (DMS), ожидает обмена файлами для проведения операции по счету. Финансовые сообщения Определяет наличие средств, получает одобрение и проводит операцию по счету напрямую. Система единого сообщения (SMS), после этого обмен файлами не требуется. Сообщение о файловых операциях Используется для сообщений о скомпрометированных картах, TMS и других обменов. Сообщения об отмене и чарджбэках Отмена (или ): Отменяет действие предыдущей авторизации. Чарджбэк (или ): Возвращает средства по ранее обработанному финансовому сообщению. Сообщение о сверке Передает информацию о расчетах. Административное сообщение Передает административные уведомления. Часто используется для сообщений об ошибках (например, отклонение сообщения или невозможность применения). Сообщения о сборе комиссий Сообщение об управлении сетью Используется для безопасного обмена ключами, входа в систему, эхо-теста и других сетевых функций. Зарезервировано ISO

Функция сообщения

В позиции 3 MTI указывается функция сообщения, которая определяет способ передачи сообщения в системе. Запросы – это сквозные сообщения (например, от эквайера к эмитенту и обратно с установленными тайм-аутами и автоматическими отменами), а уведомления – сообщения от точки к точке (например, от терминала к эквайеру, от эквайера к сети, от сети к эмитенту, с гарантированной передачей по каждому каналу, но не обязательно немедленной).

Код | Значение | Примечания
---|---|---
Запрос | Запрос от эквайера к эмитенту на выполнение операции; эмитент может принять или отклонить |
Ответ на запрос | Ответ на запрос |
Уведомление | Уведомление о том, что операция выполнена; получатель может только принять, но не отклонить |
Ответ на уведомление | Ответ на уведомление |
Извещение | Извещение о наступлении события; получатель может только принять, но не отклонить |
Подтверждение извещения | Ответ на извещение |
Инструкция | ISO 8583:2003 |
Подтверждение инструкции | Зарезервировано для использования ISO |
| Некоторые реализации (например, MasterCard) используют для положительного подтверждения. |
| Некоторые реализации (например, MasterCard) используют для отрицательного подтверждения. |

Битовые карты

В ISO 8583 битовая карта – это поле или подполе в сообщении, которое указывает, присутствуют ли другие элементы данных или подполя элементов данных в сообщении. Поле считается присутствующим только тогда, когда соответствующий бит в битовой карте установлен. Например, шестнадцатеричное число со значением (десятичное 130) в двоичном виде выглядит как , что означает, что поля и присутствуют в сообщении, а поля 2, 3, 4, 5, 6 и 8 отсутствуют. Битовая карта может быть представлена в виде 8 байтов двоичных данных или 16 шестнадцатеричных символов (0–9, A–F) в наборах символов ASCII или EBCDIC. Сообщение содержит как минимум одну битовую карту, называемую первичной битовой картой, которая указывает, присутствуют ли элементы данных с 1 по 64. Наличие необязательной вторичной битовой карты также указывается первым битом в первичной битовой карте. Если она присутствует, вторичная битовая карта указывает, присутствуют ли элементы данных с 65 по 128. Аналогично, третичная битовая карта может использоваться для указания наличия полей с 129 по 192, хотя эти элементы данных используются редко.

Элементы данных

Элементы данных – это отдельные поля, содержащие информацию о транзакции. В оригинальном стандарте ISO 8583:1987 определено до 128 элементов данных, а в более поздних версиях – до 192 элементов данных. Редакция 1993 года добавила новые определения, удалила некоторые, при этом сам формат сообщения остался без изменений. Хотя каждый элемент данных имеет определенное значение и формат, стандарт также включает в себя элементы данных общего назначения, а также элементы данных, специфичные для системы или страны, которые значительно различаются в использовании и форме в зависимости от реализации. Каждый элемент данных описывается в стандартном формате, который определяет допустимое содержимое поля (числовое, двоичное и т.д.) и длину поля (переменная или фиксированная) в соответствии со следующей таблицей:

Сокращение | Значение
------- | --------
a | Альфа, включая пробелы
n | Только числовые значения
x+n | Числовые (сумма) значения, где первый байт – либо 'C' для обозначения положительного или кредитного значения, либо 'D' для обозначения отрицательного или дебетового значения, за которым следует числовое значение (с использованием n цифр)
s | Только специальные символы
an | Альфа-цифровые, как и Alpha & специальные символы
ns | Числовые и специальные символы
ans | Альфа-цифровые, числовые и специальные символы
anp | Альфа-цифровые, числовые и заполняющие символы
b | Двоичные данные
p | Заполняющий символ, пробел
z | Код дорожек 2 и 3, определенный в ISO/IEC 7813 и ISO/IEC 4909 соответственно, или индикатор переменной длины поля, каждый из которых указывает цифру.
x или xx или xxx | Фиксированная длина поля или максимальная длина в случае полей переменной длины.

Кроме того, каждое поле может иметь фиксированную или переменную длину. Если переменная, то перед длиной поля будет указатель длины.

Тип | Значение
------- | --------
Фиксированная | Длина поля не используется
LLVAR или (xx) | Где 0 < LL < 100, означает, что две ведущие цифры LL указывают длину поля VAR
LLLVAR или (xxx) | Где 0 < LLL < 1000, означает, что три ведущие цифры LLL указывают длину поля VAR
LL и LLL | Шестнадцатеричные или ASCII значения.

Поле VAR может быть сжатым или ASCII в зависимости от типа элемента данных. LL может быть один или два байта. Например, если сжато в виде одного шестнадцатеричного байта, '27x означает, что за ним следуют 27 байтов VAR. Если ASCII, то два байта '32x, '37x означают, что за ними следуют 27 байтов. Трехзначная длина поля LLL использует два байта с ведущим "0" нибблом, если сжато, или три байта, если ASCII. Формат элемента данных VAR зависит от типа элемента данных. Если числовой, он будет сжат, например, 87456 будет представлен тремя шестнадцатеричными байтами '087456x. Если ASCII, то используется один байт для каждой цифры или символа, например, '38x, '37x, '34x, '35x, '36x.

Примеры

Определение поля Значение
n 6 Фиксированное поле длиной в шесть цифр
n.6 Числовое поле переменной длины длиной до 6 цифр
a 11 Алфавитно-цифровое поле переменной длины длиной до 11 символов
b 999 Двоичное поле переменной длины длиной до 999 байтов

Элементы данных, определенные по ISO (лето 1987)

Поле данных Тип Назначение 1 b 16 Битовая карта 2 n 19 Первичный номер счета (PAN) 3 n 6 Код обработки 4 n 12 Сумма транзакции 5 n 12 Сумма, расчеты 6 n 12 Сумма, выставление счета держателю карты 7 n 10 Дата и время транзакции 8 n 8 Сумма, комиссия держателя карты 9 n 8 Курс конвертации, расчеты 10 n 8 Курс конвертации, выставление счета держателю карты 11 n 6 Системный номер аудита транзакции (STAN) 12 n 6 Локальное время транзакции (hhmmss) 13 n 4 Локальная дата транзакции (MMDD) 14 n 4 Дата истечения срока действия (YYMM) 15 n 4 Дата расчетов 16 n 4 Дата конвертации валюты 17 n 4 Дата авторизации 18 n 4 Тип торговой точки или код категории торговой точки 19 n 3 Код страны банка-эквайера 20 n 3 PAN расширенный (код страны) 21 n 3 Код страны банка-маршрутизатора 22 n 3 Способ ввода в точку обслуживания 23 n 3 Последовательный номер PAN приложения 24 n 3 Функциональный код (ISO 8583:1993) или идентификатор сети (NII) 25 n 2 Код условий точки обслуживания 26 n 2 Код авторизации в точке обслуживания 27 n 1 Длина ответа идентификации авторизации 28 x+n 8 Сумма, комиссия транзакции 29 x+n 8 Сумма, комиссия расчетов 30 x+n 8 Сумма, комиссия обработки транзакции 31 x+n 8 Сумма, комиссия обработки расчетов 32 n 11 Идентификационный код банка-эквайера 33 n 11 Идентификационный код банка-маршрутизатора 34 ns 28 Расширенный первичный номер счета 35 z 37 Данные дорожки 2 36 n 104 Данные дорожки 3 37 an 12 Номер ссылки на извлечение 38 an 6 Ответ идентификации авторизации 39 an 2 Код ответа 40 an 3 Код ограничения услуг 41 ans 8 Идентификатор терминала приема карт 42 ans 15 Идентификационный код принимающей стороны 43 ans 40 Наименование/местоположение принимающей стороны (1–25 наименование принимающей стороны или местоположение банкомата, 26–28 наименование города, 39–40 код страны) 44 an 25 Дополнительные данные ответа 45 an 76 Данные дорожки 1 46 an 999 Дополнительные данные (ISO) 47 an 999 Дополнительные данные (национальные) 48 an 999 Дополнительные данные (частные) 49 a или n 3 Код валюты, транзакция 50 a или n 3 Код валюты, расчеты 51 a или n 3 Код валюты, выставление счета держателю карты 52 b 64 Данные персонального идентификационного номера (PIN) 53 n 16 Контрольная информация, связанная с безопасностью 54 an 120 Дополнительные суммы 55 ans 999 Данные ICC – EMV с множеством тегов 56 ans 999 Зарезервировано (ISO) 57 ans 999 Зарезервировано (национальные) 58 ans 999 59 ans 999 60 ans 999 Зарезервировано (национальные) (например, запрос на расчеты: номер партии, отчет о транзакциях: первоначальная сумма транзакции, загрузка партии: первоначальный MTI плюс первоначальный RRN плюс первоначальный STAN и т.д.) 61 ans 999 Зарезервировано (частные) (например, транзакции с кодом CVV2/сервис) 62 ans 999 Зарезервировано (частные) (например, транзакции: номер счета-фактуры, транзакции по обмену ключей: ключ TPK и т.д.) 63 ans 999 Зарезервировано (частные) 64 b 64 Код аутентификации сообщения (MAC) 65 b 1 Индикатор расширенной битовой карты 66 n 1 Код расчетов 67 n 2 Расширенный код платежа 68 n 3 Код страны принимающего банка 69 n 3 Код страны банка расчетов 70 n 3 Код информации об управлении сетью 71 n 4 Номер сообщения 72 n 4 Номер последнего сообщения 73 n 6 Дата действия (YYMMDD) 74 n 10 Количество кредитов 75 n 10 Номер отмены кредита 76 n 10 Количество дебетов 77 n 10 Номер отмены дебета 78 n 10 Количество переводов 79 n 10 Номер отмены перевода 80 n 10 Количество запросов 81 n 10 Количество авторизаций 82 n 12 Сумма комиссии за кредиты 83 n 12 Сумма комиссии за транзакции кредитов 84 n 12 Сумма комиссии за дебеты 85 n 12 Сумма комиссии за транзакции дебетов 86 n 16 Общая сумма кредитов 87 n 16 Сумма отмены кредитов 88 n 16 Общая сумма дебетов 89 n 16 Сумма отмены дебетов 90 n 42 Исходные элементы данных 91 an 1 Код обновления файла 92 an 2 Код безопасности файла 93 an 5 Индикатор ответа 94 an 7 Индикатор услуги 95 an 42 Замещающие суммы 96 b 64 Код безопасности сообщения 97 x+n 16 Чистая сумма расчетов 98 ans 25 Плательщик 99 n 11 Идентификационный код банка расчетов 100 n 11 Идентификационный код принимающего банка 101 ans 17 Имя файла 102 ans 28 Идентификатор счета 1 103 ans 28 Идентификатор счета 2 104 ans 100 Описание транзакции 105 ans 999 Зарезервировано для использования ISO 106 ans 999 107 ans 999 108 ans 999 109 ans 999 110 ans 999 111 ans 999 112 ans 999 Зарезервировано для национального использования 113 ans 999 114 ans 999 115 ans 999 116 ans 999 117 ans 999 118 ans 999 119 ans 999 Зарезервировано для частного использования 120 ans 999 121 ans 999 122 ans 999 123 ans 999 124 ans 999 125 ans 999 126 ans 999 127 ans 999 128 b 64 Код аутентификации сообщения

См. 1993 год

КодОписание000‑099Используется в сообщениях 1110, 1120, 1121, 1140 и 1210, 1220, 1221 и 1240 для указания, что транзакция одобрена.000одобрено001принять с идентификацией002одобрено на частичную сумму003одобрено (VIP)004одобрено, обновить трек 3005одобрено, тип счета указан эмитентом карты006одобрено на частичную сумму, тип счета указан эмитентом карты007одобрено, обновить ICC008‑059зарезервировано для использования ISO060‑079зарезервировано для национального использования080‑099зарезервировано для частного использования100‑199Используется в сообщениях 1110, 1120, 1121, 1140 и 1210, 1220, 1221 и 1240 для указания, что транзакция была обработана для авторизации эмитентом карты или от его имени и отклонена (без необходимости изъятия карты)100отклонено101истек срок действия карты102подозрение на мошенничество103эквайер должен связаться с держателем карты104ограниченная карта105держатель карты должен связаться с отделом безопасности эквайера106превышено допустимое количество попыток ввода PIN-кода107обратитесь к эмитенту карты108обратитесь к специальным условиям эмитента карты109недействительный торговец110недействительная сумма111недействительный номер карты112требуются данные PIN-кода113неприемлемая комиссия114нет счета запрошенного типа115запрошенная функция не поддерживается116недостаточно средств117неверный PIN-код118запись по карте не найдена119транзакция не разрешена держателю карты120транзакция не разрешена терминалу121превышен лимит суммы снятия122нарушение безопасности123превышен лимит частоты снятия124нарушение закона125карта недействительна126недействительный блок PIN-кода127ошибка длины PIN-кода128ошибка синхронизации ключа PIN-кода129подозрение на поддельную карту130‑159зарезервировано для использования ISO160‑179зарезервировано для национального использования180‑199зарезервировано для частного использования200‑299Используется в сообщениях 1110, 1120, 1121, 1140 и 1210, 1220, 1221 и 1240 для указания, что транзакция была обработана для авторизации эмитентом карты или от его имени и отклонена, требуя изъятия карты.200отклонено201истек срок действия карты202подозрение на мошенничество203эквайер должен связаться с держателем карты204ограниченная карта205держатель карты должен связаться с отделом безопасности эквайера206превышено допустимое количество попыток ввода PIN-кода207специальные условия208утерянная карта209украденная карта210подозрение на поддельную карту211‑259зарезервировано для использования ISO260‑279зарезервировано для национального использования280‑299зарезервировано для частного использования300‑399Используется в сообщениях 1314, 1324, 1325 и 1344 для указания результата операции с файлом.300успешно301не поддерживается получателем302не удалось найти запись в файле303дублирующаяся запись, старая запись заменена304ошибка редактирования поля305файл заблокирован306неуспешно307ошибка формата308дублирующаяся, новая запись отклонена309неизвестный файл310‑359зарезервировано для использования ISO360‑379зарезервировано для национального использования380‑399зарезервировано для частного использования400‑499Используется в сообщениях 1430, 1432, 1440 и 1442 для указания результата отмены или чарджбэка.400принято401‑459зарезервировано для использования ISO460‑479зарезервировано для национального использования480‑499зарезервировано для частного использования500‑599Используется в сообщениях 1510, 1512, 1530 и 1532 для указания результата сверки.500сверено, в балансе501сверено, не в балансе502сумма не сверяется, предоставлены итоги503итоговые данные недоступны504не сверяется, предоставлены итоги505‑559зарезервировано для использования ISO560‑579зарезервировано для национального использования580‑599зарезервировано для частного использования600‑699Используется в сообщениях 1614, 1624, 1625 и 1644600принято601не удалось отследить исходную транзакцию602недействительный номер ссылки603номер ссылки/PAN несовместимы604фотография POS недоступна605товар предоставлен606запрос не может быть выполнен – требуемая/запрошенная документация недоступна607‑659зарезервировано для использования ISO660‑679зарезервировано для национального использования680‑699зарезервировано для частного использования700‑799Используется в сообщениях 1720, 1721, 1740, 1722, 1723 и 1742.700принято701‑749зарезервировано для использования ISO750‑769зарезервировано для национального использования770‑799зарезервировано для частного использования800‑899Используется в сообщениях 1814, 1824, 1825 и 1844.800принято801‑859зарезервировано для использования ISO860‑879зарезервировано для национального использования880‑899зарезервировано для частного использования900Подтверждение получено, финансовая ответственность не принимается901Подтверждение получено, финансовая ответственность принимается902‑949Используется в сообщениях запроса и ответа для указания, что транзакцию не удалось обработать.902недействительная транзакция903повторно введите транзакцию904ошибка формата905эквайер не поддерживается коммутатором906переключение в процессе907эмитент карты или коммутатор не работает908пункт назначения транзакции не найден для маршрутизации909системная неисправность910эмитент карты отключен911эмитент карты превысил время ожидания912эмитент карты недоступен913дублирующаяся передача914не удалось отследить исходную транзакцию915ошибка переключения или контрольной точки сверки916MAC неверный917ошибка синхронизации ключа MAC918Нет доступных ключей связи для использования919ошибка синхронизации ключа шифрования920ошибка программного/аппаратного обеспечения безопасности – повторите попытку921ошибка программного/аппаратного обеспечения безопасности – никаких действий922номер сообщения не по порядку923запрос в процессе924‑929зарезервировано для использования ISO930‑939зарезервировано для национального использования940‑949зарезервировано для частного использования950‑999Используется в сообщениях ответа (1x3x) для указания причины отклонения передачи финансовой ответственности.950нарушение бизнес-соглашения951‑983зарезервировано для использования ISO984‑991зарезервировано для национального использования992‑999зарезервировано для частного использования

Режимы входа в точку обслуживания (поле 22)

В поле режима обслуживания в точке продажи (POS) указывается, при каких условиях была считана карта, какой тип аутентификации был произведен и, в зависимости от версии спецификации, какие возможности имеет терминал.