Public familiarization only — scripted example stories, not live gateway Check. Open the working terminal for full validation.
ODG-PASS Gateway — free demo for familiarization. Example stories only — no live gateway check here. Unlock a test key for the working terminal. Desktop / account registration from Q3 2026. Submission and execution stay with your bank.
Demo terminal: example buttons show scripted stories (what a structure signal looks like). Full live Check runs only on the working terminal after unlock. Account registration opens in Q3 2026 after juridical person status.
ODG-PASS client terminalTerminal v1
International payments under your control
The terminal puts the payment in order on your side, before it leaves for the bank. You see what is wrong first — then you send. 🟢🟡🔴 is guidance, not a bank block.
Checked data goes to the bank’s server by keys if a connection is set, or as a pain.001 file if it is not. Submission and execution stay with your bank.
Structure. Mandatory fields present, values in the allowed format, identifiers match ISO 20022 and CBPR+.
Party details. IBAN check digit. BIC against the directory.
Address by field. Street, house number, post code, town, region, country. A locality instead of a street, or a building instead of a house number, is shown — with how to re-lay it.
Purpose code. You describe the purpose in your words. The terminal proposes an ISO 20022 code. You confirm or pick another. Both the words and the code stay in the message.
Field length. If a name or address will not fit, you see it before silent truncation.
Flags that need attention. Country, purpose, party combination — a hint, not the bank’s decision. Sanctions lists and AML stay with the bank. ODG-PASS does not predict that result.
Validated against official standards:ISO 20022SWIFT CBPR+ISO 13616 · IBANISO 4217 · currencyISO 3166 · country
Demo on this page
Each example button fills fields and shows a scripted demo story (OK / IBAN / address / flags / BIC). This page does not call the live gateway. For full Check: unlock → working terminal.
For banks · gatewayWorks
This page is the client terminal: structured data by keys when connected, or pain.001 as a file. The gateway sits in the bank contour — For banks.
Banks: start with a flow-copy pilot — a copy of outbound messages, no change to the payment path. This page has no API-key field.
Start with your invoiceoptional
One document — three paths. Upload a PDF here to pre-fill the payment check, or jump to tax XML / purpose code.
Text-based PDFs are read in your browser. Scanned photos need manual entry for now.
New payment ISO 20022
Payment
Bank tracing id — same as invoice no. unless you change it.
Your words. The engine proposes ISO purpose codes on the next line. Nothing is written until you pick.
Type the purpose above — close codes appear here.
Unstructured remittance (Ustrd). Not the ISO purpose code.
Sender
Receiver
Examples:
Click an example — fields fill and a scripted story runs. The result is pain.001.
Resultpain.001 / pain.001.09
Direct connection is not set. Download pain.001 for e-banking. Send to bank opens when the client is connected to the bank.
Fill in the payment and press “Check & build”.
Why international payments stall
The financial network is moving to ISO 20022. It requires payer and payee data split by field: street, house number, post code, town, region, country — and a purpose code in its own field.
The move is uneven. Correspondent banks change format at different times. The systems that still originate the payment often still form MT: four free-text lines of thirty-five characters, with no requirement on what they contain.
When that payment hits the network, one of three things happens. It passes with losses: data that did not fit was truncated and cannot be restored. It stops for manual review: the correspondent cannot read the fields and asks for documents — days, sometimes weeks. It is rejected and returned, with a code that explains little.
In all three cases the company loses time and money, and learns the reason after it is too late to fix.
Two ways to pass data to the bank
Direct connection to the bank’s server
If the bank accepts structured data directly, the terminal is set to send by keys. Checked data goes into the bank’s contour at once, without a file. For you it looks like an ordinary payment send — except the data arrives already split by field.
As a file
If a direct connection is not set, the terminal forms pain.001 — the standard client instruction to its bank in ISO 20022. You pass the file the way you already work with the bank: online banking, a protected channel, or the order you have agreed.
In both cases the terminal output is pain.001. The bank executes the payment. The terminal does not access the account and does not dispose of funds.
Security and confidentiality
Commercial data of your company stays with you.
On your computer. A Windows version runs locally. The check runs on your machine.
Not stored off-site. The terminal does not send or keep your payment details on external servers.
Clear in two places. Clear on the form erases party details. Clear result erases the formed pain.001.
Demo without registration. You can check a payment on this open page without an account and without sending company data.
Scope of the solution
Does not execute payments and does not access your account. It prepares data — it is not a payment system.
Does not replace the bank’s check. Full control on sanctions lists, anti-money-laundering, customer identification, and regulator reporting stay with the bank.
Does not guarantee the bank will accept the payment. The terminal removes typical return causes tied to data quality. The bank decides whether to process.
Does not give legal or tax opinions.
Try
Open demo — check a payment in the browser, no registration. Working terminal — with a key issued by the bank. Windows version — local install on the company computer.