3. Прикладний рівень: керівні принципи

Редакція OpenBanking Ukraine

Цей розділ визначає керівні принципи прикладного рівня для Consent API: обов’язкові endpoints, особливості надання згоди для мультивалютних рахунків та правила використання статусів згоди (consentStatus) у межах процесу встановлення згоди та її життєвого циклу.

3.1. Методи доступу до API

У {consent-category} підтримується категорія згоди: account-access.

Всі endpoints, вказані у цій таблиці є обов’язковими для реалізації.

EndpointМетодУмоваОпис
consents/account-accessPOSTMandatoryСтворює ресурс згоди, визначивши права доступу до виділених рахунків певного PSU-ID. Ці рахунки явно розглядаються в методі як параметри основної функції. (Detailed consent model) Розділ 5.
consents/account-access/{consentId}GETMandatoryПовертає вміст об’єкту згоди вказаного ресурсу згоди, включаючи статус. Розділ 6.1.
consents/{consent-category}/{consentId}/statusGETMandatoryПовертає статус об’єкту згоди вказаного ресурсу згоди. Розділ 6.2.
consents/{consent-category}/{consentId}DELETEMandatoryВідкликає вказану згоду. Розділ 7.

3.2. Особливості надання згоди для мультивалютних рахунків

При наданні згоди на доступ до мультивалютних рахунків використовується IBAN.

Якщо у запиті на створення згоди на отримання відомостей з мультивалютного рахунку не вказана валюта — то згода надається на усі валюти мультивалютного рахунку.

Якщо у запиті на створення згоди на отримання інформації по мультивалютному рахунку вказана валюта — то згода надається тільки на доступ до мультивалютного рахунку з вказаною валютою.

3.3. Інформація про статус згоди у межах процесу встановлення згоди та життєвого циклу

Статус ресурсу згоди змінюється в процесі ініціації та життєвого циклу. Елемент даних для статусу згоди визначається як consentStatus.

На етапі ініціації згоди підтримуються наступні consentStatus для цього процесу: received, rejected та valid.

Після успішної авторизації згоди PSU, ресурс згоди може змінити свій статус протягом життєвого циклу. На етапі життєвого циклу згоди підтримуються такі consentStatus після статусу valid:

  1. expired: термін дії згоди закінчився (наприклад, після закінчення періоду часу, передбаченого чинним нормативним актом).
  2. revokedByPsu: згода була відкликана PSU через платіжний застосунок (інші онлайн-канали) ASPSP.
  3. terminatedByTpp: згода була відкликана через платіжний застосунок AISP, AISP для припинення дії згоди викликав метод DELETE /v2/consents/{consent-category}/{consentId}.
  4. replacedByTPP: AISP припинив дію згоди неявно, після успішного надання нової згоди PSU для того самого рахунку PSU.

AISP може отримати статус згоди у повідомленні GET Status Response Message.

Примітка: Статус expired також застосовуватиметься до разових згод після того, як був здійснений успішний виклик одного з endpoints отримання відомостей з рахунку (GET /v2/accounts/{account-id}/balances або GET /v2/accounts/{account-id}/transactions {query-parameters}) або термін дії згоди завершився.

Примітка: статус згоди expired може застосовуватись також до згоди якщо у відповіді на виклик GET /v2/accounts {query-parameters} ASPSP підтримує повернення балансу у цьому endpoint (атрибут withBalance).

Рекомендовано вживати наступні транслітерації статусів згоди для відображення PSU у платіжному застосунку:

  1. Received — Очікує підтвердження;
  2. Rejected — Відхилена;
  3. Valid — Активна;
  4. RevokedByPSU — Відкликана;
  5. Expired — Прострочена;
  6. TerminatedByTPP — Відкликана;
  7. ReplacedByTPP — Не активна;
  8. PartiallyAuthorised — Частково підтверджена (це статус для юридичних осіб, у цій специфікації не використовується).