Прикладаєте картку до термінала в кав’ярні за кордоном, але замість підтвердження оплати бачите запитання: у якій валюті розрахуватися? На екрані — місцева валюта та валюта вашої картки. Вибір займає кілька секунд, хоча за ним стоїть значно складніший процес: система має розпізнати картку, визначити доступність конвертації, сформувати пропозицію обміну та правильно завершити платіж.
Інженерний керівник Данііл Мазепін пояснює, чому така проста для покупця функція залежить насамперед від якості даних і способу їхньої обробки. У британському фінтех-стартапі Teya, який обслуговує малий і середній бізнес на європейських ринках, він спроєктував архітектуру платформи динамічної конвертації валют — Dynamic Currency Conversion, або DCC — та очолив її реалізацію.

Усе починається ще до оплати
Зазвичай покупець звертає увагу на термінал лише після того, як приклав картку. Проте, як пояснює Мазепін на прикладі цього проєкту, значну частину роботи платформа повинна виконати заздалегідь. Інакше складність внутрішніх процесів стає помітною саме тоді, коли людина чекає на підтвердження покупки.
Насамперед системі потрібна інформація, за якою вона визначатиме доступність валютної конвертації. Іноземна картка сама собою ще не гарантує появи відповідної пропозиції. Платформа має правильно прочитати дані та встановити, чи підходить конкретна операція для DCC.
Проблема в тому, що платіжні мережі передають інформацію в різних форматах. Для людини це схоже на роботу з кількома каталогами, кожен із яких має власні правила пошуку. Потрібні відомості можуть бути наявні, але їх ще необхідно правильно зіставити й використати.
Саме тут попередній механізм Teya, як і більшості представників галузі, обмежував можливості платформи. Щоб розпізнавати більше придатних операцій, Мазепін змінив спосіб підготовки інформації: спроєктував процес, який перевіряв дані різних платіжних мереж і приводив їх до спільного формату.
Така організація дозволила системі користуватися узгодженою інформаційною основою. Під час оплати вона вже не мала щоразу розбиратися з усією складністю початкових даних. Завдяки цьому платформа могла визначати доступність конвертації для операцій, які попередній механізм не розпізнавав як придатні.
Більше можливостей — без зайвого очікування
Проте розширити охоплення було недостатньо. Нова можливість повинна вписуватися у звичайний ритм покупки: продавець вводить суму, покупець прикладає картку, термінал показує результат. Додаткова перевірка не має перетворювати цю послідовність на незрозумілу паузу.
Підхід Мазепіна полягав у тому, щоб розглядати доступність функції та швидкість її роботи разом. Підготовка інформації й ухвалення рішення щодо конкретної операції отримали різні завдання: перша забезпечувала якість даних, друге — своєчасну відповідь на касі.
Це важливий принцип для сервісів, які поступово розширюють свої можливості. Кожна нова функція може вимагати додаткової обробки, але користувач не очікує, що через це звичні дії стануть повільнішими. Тому інженерам потрібно визначити, яку роботу виконувати заздалегідь, а яку залишити на момент звернення.
У випадку DCC наслідки видно одразу. Якщо термінал надовго замовкає, покупець може вирішити, що картка не спрацювала, і спробувати ще раз. Для невеликого магазину чи кав’ярні це також означає затримку обслуговування наступного клієнта.
Особливість рішення Мазепіна полягала в тому, що розширення охоплення не розглядалося окремо від швидкості та перевірки платежів. Він перебудував підготовку даних так, щоб платформа могла використовувати більше узгодженої інформації, не виконуючи всю її обробку під час оплати. Результатом став технологічний прорив для платформи: за внутрішньою оцінкою проєкту, частка операцій, придатних для DCC, у загальному обсязі транзакцій зросте приблизно вдесятеро. Щоб досягти цього, Мазепін поєднав розширення охоплення, швидкість відповіді та перевірку умов конвертації в одному архітектурному рішенні.
Від суми на екрані до завершеного платежу
Побачивши валютну пропозицію, покупець має оцінити її умови. Наприклад, якщо покупка коштує 50 євро, термінал може запропонувати списати цю суму в євро або показати її еквівалент у валюті картки. Знайома валюта допомагає швидше зорієнтуватися в сумі, але сама собою не гарантує вигіднішого обміну. За поясненням Visa, на екрані та в чеку мають бути зазначені суми в обох валютах, курс і додаткові збори або націнка. Вибір повинен робити покупець — продавець не має обирати валюту замість нього.
Важливий нюанс: відмова від запропонованої конвертації не означає відмову від покупки. Можна відхилити DCC та продовжити оплату в місцевій валюті. Якщо умови обміну не показані або вас схиляють до певного варіанта, Visa рекомендує відмовитися від конвертації та повідомити про ситуацію банк, який видав картку
Щоб такий вибір був доступний для більшої кількості платежів і не ускладнював покупку, Мазепін застосував інноваційний підхід до організації даних та їхньої обробки. Це дозволило Teya розширити охоплення DCC, одними з перших на ринку надати таку можливість малим і середнім бізнесам і водночас покращити швидкість відповіді сервісу. Для покупця взаємодія залишилася звичною: переглянути умови, обрати валюту й завершити оплату.
За кількома секундами біля термінала стоїть робота цілої платіжної системи. Її якість визначається тим, наскільки зрозуміло й надійно вона допомагає людині пройти шлях від вибору до підтвердження покупки.
