Der IMS-Systemadministrator definiert die Transaktionen. Für jede definierte Transaktion wird ein Programmname angegeben. Beim Aufruf einer Transaktion über einen IMS-Knoten ermittelt die IMS-Steuerregion das Programm, das für die Transaktion konfiguriert ist und stellt die Daten zum Abrufen durch das Programm in eine Warteschlange.
Nachdem das Programm die Antwortdaten für den IMS-Knoten im Nachrichtenfluss vorbereitet hat, fügt es die Daten in eine andere Warteschlange ein. Diese Ausgabewarteschlange ist an den Socket gebunden, mit dem WebSphere Message Broker verbunden ist. Deshalb besitzt bei mehreren gleichzeitig ablaufenden Nachrichtenflüssen, die dieselbe Transaktion aufrufen, jeder Nachrichtenfluss eine separate Warteschlange zum Empfangen der Antworten.
Das IMS-Programm ruft Nachrichten mit einem GU-Aufruf (GetUnique) ab und erzeugt Nachrichten mit einem ISRT-Aufruf (Insert). Diese Aufrufe sind als DL/1-Aufrufe bekannt. DL/1 ist die Programmierschnittstelle für IMS. Andere häufig verwendete DL/1-Aufrufe sind PURG (Purge) und GN (GetNext).