---
title: "Core concepts"
url: "https://dev.ionova.ai/concepts"
image: "https://dev.ionova.ai/_og/d/c_Ocean.takumi,title_Core+concepts,props_eyJ0aGVtZSI6eyJtb2RlIjoibGlnaHQiLCJjb2xvcnMiOnsicHJpbWFyeSI6IiMyRTUwOTAifX19,p_Ii9jb25jZXB0cyI,s_KS6QCmdR7t0i8R8s.png"
---

Core concepts

# Four operations, two _placements_.

Everything ARS does is one of four operations, run in one of two places, on either a single address or a whole ISO 20022 message. Learn the model once — the whole catalogue falls into place.

The four _operations_Two only look; two change the data.

| Operation | In plain English                                                | Effect         |
| :-------- | :-------------------------------------------------------------- | :------------- |
| Classify  | See what you have — structured, hybrid, or unstructured?        | No change      |
| Validate  | Judge it — compliant? required? exempt?                         | No change      |
| Correct   | Fix it — turn unstructured into structured, repair the content. | Changes data   |
| Render    | Flatten it — structured back to plain lines for legacy / MT.    | Changes format |

_`Process` is not a fifth verb — it is the all-steps composite that runs Classify → Validate → normalise → verify → Correct → re-Validate in one call._

The two _placements_Where on the payment's journey you make the call.

| Placement | In plain English                                                                 | Who                             |
| :-------- | :------------------------------------------------------------------------------- | :------------------------------ |
| At-Source | Before the payment moves — at data entry, on stored records, or on the file before you send it. | Everyone                        |
| In-Flight | While the message moves through the rails — in the engine, at the gate, on the wire. | Banks · Hubs · embedded engines |

Address, or _message_The scope decides which API group you call.

-   **Data scope** — one Party Address. The **Party Address API** (`EP-01`–`EP-07`).
-   **Message scope** — a whole ISO 20022 message. The **Message Address API** (`EP-08`–`EP-15`). The engine auto-discovers every party address in the message.
-   **`pain` is yours** — your instruction to your bank, so you fix it **At-Source**. _(pain.001, pain.008.)_
-   **`pacs` is bank-to-bank** — owned by the bank or hub, so it is fixed **In-Flight**. _(pacs.008, pacs.009.)_

**The one sentence —** _four operations × two placements, on an address or a message._ One engine, one set of v4.3 endpoints; each audience simply picks its corner. Compliance is not a fifth thing — it is an overlay that rides on whatever the other operations leave behind, sharper for every field that arrives structured.

Where next

[Channels](https://dev.ionova.ai/channels)[Use case library](https://dev.ionova.ai/use-cases)[Find your path](https://dev.ionova.ai/solutions)[API reference](https://dev.ionova.ai/apis)