Процессинг ATM — обзор
Справочная заметка ATM: Процессинг ATM — обзор.
Процессинг ATM — обзор
Участники транзакции
graph LR
CH["👤 Cardholder\n(держатель карты)"]
ATM["🏧 ATM\n(terminal)"]
ACQ["🏦 Acquirer\n(банк-эквайер)"]
SW["⚙️ Acquiring Switch\n(ATM Host)"]
CS["💳 Card Scheme\n(Visa / MC / МИР)"]
ISS["🏛️ Issuer\n(банк-эмитент)"]
IAUTH["🔐 Issuer\nAuthorizer"]
CH -->|"карта + PIN"| ATM
ATM -->|"NDC/XFS"| SW
SW -->|"ISO 8583"| ACQ
ACQ -->|"ISO 8583"| CS
CS -->|"ISO 8583"| IAUTH
IAUTH --- ISS
Роли участников
| Участник | Роль |
|---|---|
| Cardholder | Клиент. Использует карту, вводит PIN, выбирает операцию |
| ATM | Принимает карту, шифрует PIN, формирует и отправляет запрос хосту, выдаёт наличные |
| Acquirer (банк-эквайер) | Участник, обслуживающий ATM и принимающий транзакцию со стороны терминала. Может владеть ATM сам или работать через процессингового/сервисного провайдера |
| Acquiring Switch / Acquirer Processor / ATM Host | Процессинговый узел acquiring side: маршрутизирует запросы, ведёт журнал, управляет терминалами по NDC/DDC или принимает ISO 8583/другой профиль |
| Card Scheme | Платёжная система (Visa, Mastercard, МИР, UnionPay, Amex). Маршрутизирует между эквайером и эмитентом. Устанавливает правила (Operating Regulations) |
| Issuer (банк-эмитент) | Банк, выпустивший карту. Авторизует/отклоняет транзакцию, несёт риски |
| Issuer Authorizer | Авторизационная система эмитента (может быть собственная или процессинговый центр) |
[!warning] Не смешивать банк и процессинговый узел Acquiring switch обычно действует от имени эквайера. В схемах процесса его лучше показывать как часть acquiring side, а не как независимого участника между ATM и банком-эквайером.
[!note] Приоритет для этой базы Для российских ATM-сценариев приоритетный схемный профиль — ATM-МИР-и-НСПК. Общая модель Visa/Mastercard/UnionPay сохраняется как сравнительный слой, но правила МИР/НСПК и открытая российская регуляторика вынесены отдельно.
On-Us vs Off-Us транзакции
| Тип | Описание | Маршрут |
|---|---|---|
| On-Us | Карта эмитирована тем же банком, которому принадлежит ATM | ATM → Acquirer Switch → Issuer System (внутри одного банка) |
| Off-Us | Карта другого банка | ATM → Acquirer Switch → Card Scheme → Issuer |
| On-Us нет interchange | При on-us межбанковской комиссии нет | — |
| Off-Us: interchange | Эмитент платит эквайеру interchange fee | По тарифам схемы |
Типы транзакций ATM
| Тип | Код (ISO 8583 Field 3) | Описание |
|---|---|---|
| Withdrawal (Cash Out) | 01 0000 00 | Снятие наличных |
| Balance Inquiry | 31 0000 00 | Запрос баланса |
| Deposit | 21 0000 00 | Внесение наличных |
| Transfer | 40 0000 00 | Перевод между счетами |
| PIN Change | 90 0000 00 | Смена PIN |
| Mini Statement | 38 0000 00 | Мини-выписка (не везде) |
| Reversal | (от оригинала) | Отмена/возврат транзакции |
Модели авторизации
Single Message (SM)
- Один запрос может совмещать authorization и финансовое сообщение в правилах конкретной сети.
- MTI 0200 (Financial Request) → 0210 (Financial Response)
- Часто встречается в ATM-сценариях.
- Фактическое отражение по счету зависит от issuer/core banking: это может быть немедленная проводка, hold с последующим posting или другая схема учета.
Dual Message (DM)
- Сначала авторизация (hold), потом финансовое завершение (clearing)
- MTI 0100 (Auth Request) → 0110 (Auth Response), затем 0220 (Financial Advice)
- Чаще применяется в POS, но встречается и в ATM некоторых схем
Подробнее: ATM-Authorization-Hold-Clearing-Settlement.
ISO 8583 — ключевые поля ATM-транзакции
| Field | Название | Значение (пример) |
|---|---|---|
| MTI | Message Type Indicator | 0200 (Financial Req) |
| F2 | PAN | Номер карты (защищённый) |
| F3 | Processing Code | 01 0000 00 (withdrawal) |
| F4 | Transaction Amount | 000000010000 (100.00) |
| F7 | Transmission Date/Time | MMDDhhmmss |
| F11 | STAN | System Trace Audit Number |
| F12 | Time Local | hhmmss |
| F13 | Date Local | MMDD |
| F14 | Expiry Date | YYMM |
| F18 | MCC | 6011 (ATM) |
| F22 | POS Entry Mode | 051 (chip+PIN), 021 (mag) |
| F25 | POS Condition Code | 00 (normal) |
| F35 | Track 2 Data | (только для mag stripe) |
| F37 | Retrieval Reference Number | 12 знаков, уникальный |
| F39 | Response Code | 00=Approved, 51=NSF… |
| F41 | Terminal ID | ID банкомата (8 знаков) |
| F42 | Card Acceptor ID | ID точки обслуживания |
| F43 | Terminal Location | Адрес ATM |
| F49 | Currency Code | 643 (RUB), 840 (USD) |
| F52 | PIN Data | PIN Block (зашифрован) |
| F55 | EMV Data (ICC) | TLV данные чипа |
Авторизационные коды ответа (Response Code, Field 39)
| Код | Значение |
|---|---|
| 00 | Approved — одобрено |
| 05 | Do Not Honor — отказ без причины |
| 12 | Invalid Transaction |
| 13 | Invalid Amount |
| 14 | Invalid Card Number |
| 30 | Format Error |
| 41 | Lost Card — карта заявлена утерянной (изъять) |
| 43 | Stolen Card — карта заявлена украденной (изъять) |
| 51 | Insufficient Funds — недостаточно средств |
| 54 | Expired Card — истёк срок карты |
| 55 | Incorrect PIN |
| 57 | Transaction Not Permitted to Cardholder |
| 61 | Exceeds Withdrawal Amount Limit |
| 65 | Exceeds Withdrawal Frequency Limit |
| 75 | Allowable PIN Tries Exceeded |
| 91 | Issuer or Switch Inoperative |
| 96 | System Malfunction |
Жизненный цикл транзакции
flowchart LR
A["1. Initiated\n(карта вставлена)"]
B["2. In Progress\n(PIN введён, запрос отправлен)"]
C["3. Authorized\n(ответ 00 получен)"]
D["4. Completed\n(деньги выданы,\nчек напечатан)"]
E["5. Settled\n(финансовое списание\nпо итогам дня)"]
F["3a. Declined\n(ответ ≠ 00)"]
G["4a. Reversed\n(деньги не выданы,\nreversal отправлен)"]
A --> B
B --> C
B --> F
C --> D
C --> G
D --> E
G --> E
Settlement (Расчёты)
- Cut-off time: время закрытия расчётного дня (обычно 00:00 UTC или по договору)
- Net settlement: позиции эквайера и эмитента сворачиваются в чистую позицию
- Settlement файл: передаётся в Card Scheme (Visa BASE II, MC IPM, МИР НСПК)
- Reconciliation: сверка EJ ATM ↔ данные хоста ↔ данные схемы
Важно: settlement не является тем же самым, что authorization response и не обязан совпадать по времени с клиентским отображением списания/hold в мобильном банке.
Electronic Journal (EJ)
- Каждый ATM ведёт EJ — электронный журнал всех событий и транзакций
- Хранится в памяти ATM и/или передаётся на сервер
- Содержит: timestamp, тип операции, сумму, PAN (masked), response code, состояние диспенсера
- Используется для: reconciliation, disputes, аудита, диагностики
Связанные заметки
- ATM-Схема-транзакции-Mermaid — полная схема транзакции (Mermaid)
- ATM-Withdrawal-Sequence — детальный sequence diagram снятия
- ATM-Balance-Deposit-Sequence — баланс и депозит
- ATM-Сценарии-сбоев — отказы, таймауты, no-dispense
- ATM-ISO-8583 — детали протокола
- ATM-NDC-DDC — протокол ATM↔хост
- ATM-Authorization-Hold-Clearing-Settlement — границы authorization/hold/posting/clearing/settlement
- ATM-Reconciliation — сверка источников данных
- ATM-Dispute-Lifecycle — претензия/chargeback после спорной операции
- TERM-acquirer · TERM-issuer · TERM-card-scheme · TERM-settlement · TERM-reversal
- ATM-МИР-и-НСПК · ATM-Российская-регуляторика
Источники
- ISO: ISO 8583:2023.
- НСПК: Правила ПС «Мир» v4.3.
- Банк России: Национальная платежная система — FAQ.
- Mastercard: Transaction Processing Rules.