API Explorer

Adapter

Adapter

In OBP, an Adapter is an out of process component that sits between OBP and a bank's systems of record (Core Banking System, Payment System, or database) and translates between them.

An Adapter is paired with an Indirect Connector: the Connector inside OBP turns OBP function calls into messages and sends them over a transport (for example RabbitMQ, Akka, or a stored procedure call); the Adapter receives those messages, talks to the CBS, and returns a response in the agreed Outbound / Inbound message format.

i.e. OBP API -> Connector -> Adapter -> CBS

Key properties:

  • It runs outside OBP, in its own process, typically on the bank's side.
  • It can be written in any language, as long as it respects the message format published in the Message Docs for the relevant Connector. This is the main advantage over a Direct Connector, which must be written in a JVM language.
  • It usually contains bank specific integration code: the data access, field mappings, identifier translation, and quirks of that one bank's CBS. As a result, each bank typically has its own Adapter build.
  • The Adapter is responsible for emitting OBP shaped values where required (for example a UUID shaped ACCOUNT_ID mapped to the underlying core banking account number).

For worked examples of writing an Adapter, see Adapter.Akka.Intro and Adapter.Stored_Procedure.Intro.