Päť rokov konektorov PSD2: čo vám špecifikácia nepovie

Dlaždica banky prepojená so značkou Trex Pi prerušovanými dátovými líniami

PSD2 sľubovalo jedno API pre každú banku v Európe. Dostali sme rodinu špecifikácií a niekoľko stoviek jej interpretácií. Po piatich rokoch budovania a prevádzkovania konektorov na informácie o účte a iniciáciu platieb pre klientov naprieč Pobaltím je vzorec jasný: prvá banka trvá týždeň, piata trvá deň a potom tá ďalšia nečakane trvá mesiac.

Tok súhlasu je miesto, kde sa projekty zaseknú

Volania API sú tou ľahkou časťou. Tou ťažkou je životný cyklus súhlasu - ako zákazník autorizuje váš prístup, ako dlho táto autorizácia žije a čo sa stane, keď vyprší o 03:00 v nedeľu.

  • Niektoré banky vydávajú 90-dňové súhlasy a obnovujú ich potichu; iné vynucujú úplnú opätovnú autentifikáciu.
  • Toky súhlasu v sandboxe sa bežne líšia od produkčných. Počítajte s druhým integračným kolom po spustení do produkcie.
  • Taxonómie chýb sú nekonzistentné: ten istý vypršaný súhlas sa môže prejaviť ako 401, 403, alebo - v jednom nezabudnuteľnom prípade - ako 200 s prázdnym zoznamom transakcií.

Ten posledný prípad si zaslúži zdôraznenie: prázdna odpoveď nie je to isté ako úspešná odpoveď. Ak vaše párovanie závisí od feedu transakcií, berte „žiadne transakcie" ako podmienku na overenie, nie ako fakt na zaznamenanie.

Na čom stavíme štandardizáciu

Každý konektor, ktorý dnes dodávame, beží za rovnakým interným rozhraním, pričom adaptéry pre jednotlivé banky sú zámerne udržiavané tenké. Rovnaká disciplína platí aj na strane iniciácie platieb - jeden kanonický objekt platby, explicitne mapovaný na dialekt každej banky:

Mapovanie polí platieb ERP na prvky SEPA pain.001 XML

Adaptér rieši zvláštnosti autentifikácie a odlišné spôsoby stránkovaného načítavania dát; všetko ostatné - opakovania, idempotencia, upozornenia, varovania pred vypršaním súhlasu - žije v zdieľanej vrstve, napísanej raz a raz otestovanej.

Ak bankový integračný konektor potrebuje vlastnú logiku opakovania, táto logika patrí do zdieľanej vrstvy s feature flagom - nikdy do adaptéra. Adaptéry ponechané samy na seba zastarávajú; zdieľaná vrstva sa priebežne udržiava.

Výsledok je rutina - a presne to je cieľ. Nová banka je nový adaptér, vzorový testovací súbor zaznamenaný z jej sandboxu a kontrolný zoznam - nie nový projekt.