Today: Tuesday 22 June 2021 , 8:44 pm


advertisment
search




ISO 8583

Последнее обновление 9 День , 22 час 5 Взгляды

Advertisement
In this page talks about ( ISO 8583 ) It was sent to us on 12/06/2021 and was presented on 12/06/2021 and the last update on this page on 12/06/2021

Твой комментарий


Введите код
  ISO 8583 — стандарт ISO, описывающий процесс передачи и формат финансовых сообщений системами, обрабатывающими данные банковских платёжных карт.

Введение

Транзакция с использованием платёжных карт (например, для запроса авторизации держателя карты) начинается с устройства, её инициирующего, например c POS-терминала, проходит через ряд систем/сетей и заканчивается на системе, которая выпустила карту (эмитент).
Транзакционные данные включают в себя:
  • информацию о карте (например, номер счета, )
  • информацию о терминале (например, номер торговца, )
  • собственно финансовая информация (например, цена, количество)
Система, которая выпустила карту, авторизует транзакцию либо отклоняет её и генерирует ответное сообщение, которое возвращается на терминал.
ISO 8583 описывает формат транзакций и механизм их передачи («communication flow») таким образом, чтобы различные системы могли обмениваться этими транзакциями.
Большинство транзакций, которые выполняются с банкоматов, используют ISO 8583 в некоторых аспектах коммуникационной цепочки, как то, например, транзакции, выполняющиеся при оплате покупателем товара в магазине. Такие международные платёжные системы как MasterCard и Visa используют стандарт ISO 8583 при авторизационных взаимодействиях.
ISO 8583 описывает транзакции, инициированные держателем карты, такие как покупка, снятие наличных, пополнение счёта, оплату, аннулирование операции, запрос баланса, платежи и переводы со счёта на счёт. ISO 8583 также описывает сообщения между системами для обмена ключами безопасности, согласования итогов и сообщения для других административных целей.
Несмотря на то, что ISO 8583 определяет общий стандарт, как правило, он не используется напрямую в системах или сетях. Вместо этого каждая сеть адаптирует стандарт для собственных нужд, пользуясь отдельными полями и вариантами использования.
Положение полей различается в разных версиях стандарта. К примеру, отдельные элементы, определяющие валюту в версиях 1987 и 1993 более не используются в версии 2003, где валюта является составной частью элемента, определяющего сумму. ISO 8583:2003 нужно время для достижения широкого признания.
Сообщение ISO 8583 состоит из следующих частей:
  • Message Type Indicator (MTI) — Индикатор типа сообщения;
  • Одна или несколько битовых карт, указывающих, какие элементы данных присутствуют в сообщении;
  • Элементы данных, поля сообщения.

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

Индикатор типа сообщения ( ) — 4-значное числовое поле, которое определяет высокоуровневую функцию сообщения.
Индикатор типа сообщения включает в себя версию стандарта ISO 8583, класс сообщения, функцию сообщения и источник сообщения, описанные ниже.
Пример: 0110
0xxx -> версия стандарта ISO 8583 (версия 1987 года)
x1xx -> класс сообщения (сообщение авторизации)
xx1x -> функция сообщения (ответ на запрос)
xxx0 -> кто начал взаимодействие (эквайер)

Версии ISO 8583

Первая позиция MTI определяет версию стандарта ISO 8583, используемую для передачи сообщения.
{ class="wikitable"
! Позиция !! Значение
-
0xxx Версия ISO 8583-1:1987
-
1xxx Версия ISO 8583-2:1993
-
2xxx Версия ISO 8583-1:2003
-
3xxx
Зарезервировано ISO
-
4xxx
Зарезервировано ISO
-
5xxx
Зарезервировано ISO
-
6xxx
Зарезервировано ISO
-
7xxx
Зарезервировано ISO
-
8xxx
Зарезервировано для национального использования
-
9xxx Зарезервировано для частного использования

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

Вторая позиция MTI определяет общую цель сообщения.
{ class="wikitable"
! Позиция !! Значение !! Использование
-
x1xx Authorization Message Проверяет доступность средств, получает одобрение, но проведение по счёту не производится. Работает по принципу Dual Message System (DMS), ожидает обмена файлами для проведения по счёту.
-
x2xx Financial Message Проверяет доступность средств, получает одобрение, производится проводка по счёту. Работает по принципу Single Message System (SMS), обмен файлами по данной транзакции не производится.
-
x3xx File Actions Message Used for hot-card, TMS and other exchanges
-
x4xx Reversal/Chargeback Message Reversal (x4x0 or x4x1): Отменяет действие предыдущей авторизации.
Chargeback (x4x2 or x4x3): Отменяет списание по финансовому сообщению.
-
x5xx Reconciliation Message Передаёт информацию о проведении расчёта (например, сообщение о закрытии смены на POS-терминале)
-
x6xx Administrative Message Передает административные сообщения. Часто используется для передачи сообщений об ошибках (например сообщение отклонено или "чушь полная")
-
x7xx Fee Collection Message
-
x8xx Network Management Message Используется для обмена ключами безопасности, входа в систему, посылки эхо-тестов и для других функций сети
-
x9xx Зарезервировано ISO

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

Третья позиция Индикатора сообщения (MTI) определяет функцию сообщения и способ его обработки в системе. Запросы (Request) являются сообщениями полного цикла (т.е. от эквайера к эмитенту и обратно включая время ожидания и автоматической переадресации), в то время как авизо (Advice) - прямые сообщения (например, от терминала к эквайеру, от эквайера в сеть, из сети к эмитенту, с гарантированной передачей к следующему звену, но, возможно, с задержкой).
{ class="wikitable"
! Позиция !! Значение
-
xx0x Request
-
xx1x Request Response
-
xx2x Advice
-
xx3x Advice Response
-
xx4x Notification
-
xx8x Response acknowledgment
-
xx9x Negative acknowledgment

Источник сообщения

Четвертое значение индикатора сообщения (MTI) определяет его инициатора в платежной системе.
{ class="wikitable"
! Позиция !! Значение
-
xxx0 Acquirer
-
xxx1 Acquirer Repeat
-
xxx2 Issuer
-
xxx3 Issuer Repeat
-
xxx4 Other
-
xxx5 Other Repeat

Примеры

С помощью всех вышеуказанных позиций индекса сообщения (MTI), полностью определяется как будет обрабатываться сообщение в сети. К сожалению, не все реализации стандарта ISO 8583 интерпретируют значение индекса (MTI) одинаково, но несмотря на это, некоторые MTI - стандартны:
{ class="wikitable"
! MTI !! Значение !! Применение
-
0100 Authorization request Авторизационный запрос с POS-терминала
-
0120 Authorization Advice При падении эмитента (например, по timeout) и необходимости успешного проведения транзакции
-
0121 Authorisation Advice Repeat При истечении срока ожидания авизо
-
0200 Acquirer Financial Request Финансовый запрос, часто от банкомата
-
0220 Acquirer Financial Advice Например, при проверке в отеле
-
0221 Acquirer Financial Advice repeat При ожидании авизо
-
0400 Acquirer Reversal Request Отмена авторизации
-
0420 Acquirer Reversal Advice Advises that a reversal has taken place
-
0421 Acquirer Reversal Advice Repeat Message if the reversal times out
-
0800 Network Management Request Echo test, logon, log off etc
-
0820 Network Management Advice Keychange

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

В соответствии с ISO 8583, побитовая карта — это поле или подполе внутри сообщения, показывающие какие элементы данных представлены в другом месте сообщения.
Сообщение содержит как минимум одну битовую карту, которая называется Primary Bitmap (англ. Первичная битовая карта), определяющую, какие из элементов данных с номерами от 1 до 64 присутствуют в сообщении. Как правило, если вторая битовая карта присутствует, то размещается в качестве первого элемента данных и определяет, какие из элементов данных с номерами от 65 до 128 присутствуют в сообщении. Аналогично, третья битовая карта может использоваться для определения наличия или присутствия элементов со 129 до 192, впрочем, они используются редко.
Битовые карты могут быть переданы как 8 байт двоичной информации или как 16 шестнадцатеричных символов (0-9, A-F) из наборов ASCII или EBCDIC.
Поле присутствует, когда соответствующий бит битовой карты имеет значение «истина», например, байт '10000010' означает, что поля 1 и 7 присутствуют в сообщении.

Примеры

{ class="wikitable"
! Bitmap !! Определяет наличие...
-
4210001102C04804 ...полей 2, 7, 12, 28, 32, 39, 41, 42, 50, 53, 62
-
7234054128C28805 ...полей 2, 1, 4, 7, 11, 12, 14, 22, 24, 26, 32, 35, 37, 41, 42, 47, 49, 53, 62, 64, 100 (требуется второй Bitmap, чтобы показать наличие поля номер 100)
-
8000000000000001 ...полей 1, 64
-
0000000000000003
(второй Bitmap) Поля 127, 128
Объяснение Bitmap поля 4210001102C04804
01000010 = 42x (нумеруем слева направо, второй и седьмой бит равны 1, что означает присутствие полей 2 и 7)
00010000 = 10x (присутствует поле 12)
00000000 = 00x (никакие поля не присутствуют)
00010001 = 11x (присутствуют поля 28 и 32)
00000010 = 02x (присутствует поле 39)
11000000 = C0x (присутствуют поля 41 и 42)
01001000 = 48x (присутствуют поля 50 и 53)
00000100 = 04x (присутствует поле 62)
{ class="wikitable"
-
! rowspan=2 Номер
бита
0 10 20 30 40 50 60
-
1234567890 1234567890 1234567890 1234567890 1234567890 1234567890 1234
-
! Bitmap
0010001000 0100000000 0000000100 0100000010 1100000001 0010000000 0100
Поля, присутствующие в сообщении с переменной длиной:
3, 7, 12, 28, 32, 39, 41, 42, 50, 53, 62

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

Элементы данных — это отдельные поля, содержащие информацию о транзакции. Исходный стандарт ISO 8583:1987 был рассчитан на возможность включения 128 элементов данных, а в последующих версиях было определено до 192 элементов данных. В ревизии 1993 года были введены новые описания, удалены некоторые старые, при этом формат как таковой не претерпел изменений.
Несмотря на то, что каждый элемент данных имеет описанное значение и формат, стандарт включает некоторые элементы данных для общих целей, а также специфические для системы (или страны) элементы данных, которые могут иметь огромные различия в разных реализациях.
Каждый элемент данных описан в формате стандарта, который указывает разрешенные значения полей (напр. числовое, бинарное итд.) и длину поля (постоянное значение или меняющее), в соответствии с данной таблицей:
{ class="wikitable"
! Сокращение !! Значение
-
a (Латинские?) буквы, включая пробелы
-
n Только числовые значения
-
s Только специальные символы
-
an Буквы и цифры
-
as Буквы и специальные символы
-
ns Числа и специальные символы
-
ans Буквы, числа и специальные символы
-
b Двоичные данные
-
z Набор кодов трека 2 и 3, как определено в ISO 4909 и ISO 7813
-
. или .. или … индикатор переменной длины поля, каждый символ . означает цифру
-
x или xx или xxx поле фиксированной длины или максимальная длина в случае полей переменной длины
Кроме того, каждое поле может быть или фиксированной, или переменной длины. Если поле переменной длины, длина поля предшествуется индикатором длины.
{ class="wikitable"
! Тип !! Значение
-
Fixed длина поля не используется
-
LLVAR или (..xx) Где LL < 100, означает две лидирующих цифры LL, определяющие длину поля VAR
-
LLLVAR или (…xxx) Где LLL < 1000, означает три лидирующие цифры LLL, определяющие длину поля VAR
-
LL и LLL - шестнадцатеричные цифры или ASCII-символы. Поле VAR может быть упаковано (compressed) или быть записано в ASCII, в зависимости от типа данных элемента LL может быть длиной 1 или 2 байта. Например, если оно упаковано как один шестнадцатеричный байт, 0x27 означает, что далее следует 27 байт поля VAR. Если формат ASCII, два байта 0x32, 0x37 означают, что далее следует 27 байт (так как 0x32 - это код символа '2' в кодировке ASCII и т.п.). 3-цифирная длина поля LLL использует 2 байта с лидирующим 0 в упакованном режиме, или 3 байта в формате ASCII. Формат элемента данных VAR зависит от типа элемента данных. Если число было упаковано, то 874 будет представлено 2 байтами 0x0874. В формате ASCII будет использоваться один байт для каждой цифры или символа, оно будет выглядеть, как 0x38 ('8'), 0x37 ('7'), 0x34 ('4').
{ class="wikitable"
+ ISO-Defined Data Elements
! Элемент данных (номер поля) !! Тип !! Использование
-
1 b 8 Дополнительная битовая карта
-
2 n ..19 Primary account number (PAN)
-
3 n 6 Processing code
-
4 n 12 Amount, transaction
-
5 n 12 Amount, Settlement
-
6 n 12 Amount, cardholder billing
-
7 n 10 Transmission date & time
-
8 n 8 Amount, Cardholder billing fee
-
9 n 8 Conversion rate, Settlement
-
10 n 8 Conversion rate, cardholder billing
-
11 n 6 Systems trace audit number
-
12 n 6 Time, Local transaction
-
13 n 4 Date, Local transaction
-
14 n 4 Date, Expiration
-
15 n 4 Date, Settlement
-
16 n 4 Date, conversion
-
17 n 4 Date, capture
-
18 n 4 Merchant type
-
19 n 3 Acquiring institution country code
-
20 n 3 PAN Extended, country code
-
21 n 3 Forwarding institution. country code
-
22 n 3 Point of service entry mode
-
23 n 3 Application PAN number
-
24 n 3 Function code(ISO 8583:1993)/Network International identifier (NII)
-
25 n 2 Point of service condition code
-
26 n 2 Point of service capture code
-
27 n 1 Authorizing identification response length
-
28 n 8 Amount, transaction fee
-
29 n 8 Amount. settlement fee
-
30 n 8 Amount, transaction processing fee
-
31 n 8 Amount, settlement processing fee
-
32 n ..11 Acquiring institution identification code
-
33 n ..11 Forwarding institution identification code
-
34 n ..28 Primary account number, extended
-
35 z ..37 Данные трека 2 (Track 2 Data)
-
36 n …104 Данные трека 3 (Track 3 Data)
-
37 an 12 Retrieval reference number
-
38 an 6 Authorization identification response
-
39 an 2 Код ответа (Response code)
-
40 an 3 Service restriction code
-
41 ans 8 Card acceptor terminal identification
-
42 ans 15 Card acceptor identification code
-
43 ans 40 Card acceptor name/location
-
44 an ..25 Additional response data
-
45 an ..76 Данные трека 1 (Track 1 Data)
-
46 an …999 Дополнительные данные — ISO
-
47 an …999 Дополнительные данные — National
-
48 an …999 Дополнительные данные — Private
-
49 a 3 Currency code, transaction
-
50 an 3 Currency code, settlement
-
51 a 3 Currency code, cardholder billing
-
52 b 16 Personal Identification number data
-
53 n 18 Security related control information
-
54 an 120 Additional amounts
-
55 ans …999 Reserved ISO
-
56 ans …999 Reserved ISO
-
57 ans …999 Reserved National
-
58 ans …999 Reserved National
-
59 ans …999 Зарезервировано для использования на национальном уровне
-
60 an .7 Advice/reason code (private reserved)
-
61 ans …999 Reserved Private
-
62 ans …999 Reserved Private
-
63 ans …999 Reserved Private
-
64 b 16 Message authentication code (MAC)
-
65 b 16 Bit map, tertiary
-
66 n 1 Settlement code
-
67 n 2 Extended payment code
-
68 n 3 Receiving institution country code
-
69 n 3 Settlement institution country code
-
70 n 3 Network management Information code
-
71 n 4 Message number
-
72 ans …999 Data record (ISO 8583:1993)/n 4 Message number, last(?)
-
73 n 6 Date, Action
-
74 n 10 Credits, number
-
75 n 10 Credits, reversal number
-
76 n 10 Debits, number
-
77 n 10 Debits, reversal number
-
78 n 10 Transfer number
-
79 n 10 Transfer, reversal number
-
80 n 10 Inquiries number
-
81 n 10 Authorizations, number
-
82 n 12 Credits, processing fee amount
-
83 n 12 Credits, transaction fee amount
-
84 n 12 Debits, processing fee amount
-
85 n 12 Debits, transaction fee amount
-
86 n 15 Credits, amount
-
87 n 15 Credits, reversal amount
-
88 n 15 Debits, amount
-
89 n 15 Debits, reversal amount
-
90 n 42 Original data elements
-
91 an 1 File update code
-
92 n 2 File security code
-
93 n 5 Response indicator
-
94 an 7 Service indicator
-
95 an 42 Replacement amounts
-
96 an 8 Message security code
-
97 n 16 Amount, net settlement
-
98 ans 25 Payee
-
99 n ..11 Settlement institution identification code
-
100 n ..11 Receiving institution identification code
-
101 ans 17 File name
-
102 ans ..28 Account identification 1
-
103 ans ..28 Account identification 2
-
104 ans …100 Transaction description
-
105 ans …999 Зарезервировано для использования в ISO
-
106 ans …999 Зарезервировано для использования в ISO
-
107 ans …999 Зарезервировано для использования в ISO
-
108 ans …999 Зарезервировано для использования в ISO
-
109 ans …999 Зарезервировано для использования в ISO
-
110 ans …999 Зарезервировано для использования в ISO
-
111 ans …999 Зарезервировано для использования в ISO
-
112 ans …999 Зарезервировано для использования на национальном уровне
-
113 n ..11 Authorizing agent institution id code
-
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 …255 Info Text
-
125 ans ..50 Network management information
-
126 ans .6 Issuer trace id
-
127 ans …999 Зарезервировано для использования конкретными реализаторами стандарта
-
128 b 64 Message Authentication code

Примеры

{ class="wikitable"
! Определение поля !! Значение
-
n6 Поле фиксированной длины в 6 цифр
-
n.6 Числовое поле LLVAR с длиной до 6 цифр
-
a..11 Буквенно-числовое поле LLVAR с длиной до 11 символов
-
b…999 Поле двоичных данных LLLVAR с длиной до 999 байт

См. также

  • Мерчант (сервис)
  • Поставщик платёжных услуг
  • 3-D Secure

Ссылки

  • DL-ISO-8583 Open-source implementation, written in C
  • GPL’d ISO8583 Framework
  • .NET ISO-8583 Framework
  • jPOS ISO-8583 Framework in Java

8583
Категория:Безналичные расчёты
 
Комментарии

Пока нет комментариев




последний раз видели
большинство посещений