---
title: "Channels"
url: "https://dev.ionova.ai/channels"
image: "https://dev.ionova.ai/_og/d/c_Ocean.takumi,title_Channels,props_eyJ0aGVtZSI6eyJtb2RlIjoibGlnaHQiLCJjb2xvcnMiOnsicHJpbWFyeSI6IiMyRTUwOTAifX19,p_Ii9jaGFubmVscyI,s_1cjgxVaGUxldWDSz.png"
---

Channels

# Configure once. Inherit _everywhere_.

A channel captures scheme, direction, output mode and thresholds once. Every later call just names it — think of it as a CSS cascade for your payment settings.

How every request _resolves_Top to bottom, most specific wins.

1.  **channelProfile** — the baseline for every setting; registered once, referenced by name.
2.  **processingOptions** — overrides chosen settings, for this one call only.
3.  **context** — fills any remaining gaps, and writes every field to the audit trail.

A registered channel — a `channelProfile` in the API — is your stylesheet; `processingOptions` is an inline override for one call; `context` is the fallback that also logs everything to audit.

The request shrinks to its _essentials_Name the channel; send only the payload.

**Without a profile — every call repeats the config:**

```json
{
  "messageType": "pacs.008",
  "scheme": "SCT_INST",
  "schemeVersion": "SR2026",
  "direction": "OUTBOUND",
  "targetFormat": "FULLY_STRUCTURED",
  "processingOptions": {
    "outputMode": "EPC",
    "quality": "standard",
    "repairConfidenceThreshold": 0.80
  },
  "messageXml": "<Document>...</Document>"
}
```

**With the `sepa-inst-out` profile — same call:**

```json
{
  "channelName": "sepa-inst-out",
  "messageXml": "<Document>...</Document>"
}
```

Starter _channels_Copy one, tweak it, register it with EP-25.

These presets are what the old "editions" really were. Each maps to an audience starting point.

**`sepa-sct-out` — SEPA SCT, outbound.** Clean, structured `pain.001` outbound under SEPA SCT. The corporate-treasury starting point.

```json
{
  "channelName": "sepa-sct-out",
  "channelSelection": {
    "channel": "sepa", "scheme": "SCT", "schemeVersion": "SR2026",
    "direction": "OUTBOUND", "pspCountry": "DE", "timezone": "Europe/Berlin"
  },
  "corridor": { "sendingCountry": "DE", "receivingCountry": "FR", "currency": "EUR" },
  "preferences": {
    "outputMode": "EPC", "targetFormat": "FULLY_STRUCTURED",
    "quality": "standard", "repairConfidenceThreshold": 0.8
  }
}
```

**`swift-cbpr-in` — SWIFT CBPR+, inbound.** Repair inbound `pacs.008` for screening and legacy systems. The correspondent-bank starting point.

```json
{
  "channelName": "swift-cbpr-in",
  "channelSelection": {
    "channel": "swift", "schemeVersion": "SR2026", "direction": "INBOUND",
    "pspCountry": "GB", "timezone": "Europe/London"
  },
  "corridor": { "sendingCountry": "US", "receivingCountry": "GB", "currency": "USD" },
  "preferences": {
    "outputMode": "CBPR_PLUS", "autoRepairMode": "STANDARD", "targetFormat": "auto",
    "quality": "premium", "repairConfidenceThreshold": 0.85
  }
}
```

**`corp-host-to-host` — host-to-host file, outbound.** Bulk file validation a platform runs for the corporates it serves.

```json
{
  "channelName": "corp-host-to-host",
  "channelSelection": {
    "channel": "file", "scheme": "SCT", "schemeVersion": "SR2026",
    "direction": "OUTBOUND", "pspCountry": "NL", "timezone": "Europe/Amsterdam"
  },
  "corridor": { "sendingCountry": "NL", "receivingCountry": "DE", "currency": "EUR" },
  "preferences": {
    "outputMode": "EPC", "targetFormat": "HYBRID", "autoRepairMode": "CONSERVATIVE",
    "quality": "standard", "repairConfidenceThreshold": 0.8
  }
}
```

**`cop-verify` — CoP / VOP address check.** Address-level structural checks only — no message scope, pre-check by nature.

```json
{
  "channelName": "cop-verify",
  "channelSelection": {
    "channel": "api", "direction": "INBOUND", "pspCountry": "GB", "timezone": "Europe/London"
  },
  "preferences": { "quality": "standard", "targetFormat": "auto" }
}
```

**Manage channels —** register with **EP-25** (`POST /channel-profile`), update with **EP-26** (`PATCH /channel-profile/{name}`), read with **EP-27** (`GET /channel-profile/{name}`).

Where next

[Integrations](https://dev.ionova.ai/integrations)[Find your path](https://dev.ionova.ai/solutions)[API reference](https://dev.ionova.ai/apis)