code402 / tools / iso20022-validate
$0.002 per call · 20 free calls/day · no signup · pay with card credits or a signed USDC voucher (x402)
Deterministic validation for institutional ISO 20022 XML/JSON payment messages (pain.001 credit transfer, pacs.008 customer credit, camt.053 bank statement) with XML DOCTYPE security guards, BigInt CtrlSum decimal sums, and ISO 13616 / 9362 / 17442 checksums (BAP-1).
curl -X POST https://code402.dev/v1/tools/iso20022-validate/call \
-H "content-type: application/json" \
-d '{"raw_payload":"<Document xmlns=\"urn:iso:std:iso:20022:tech:xsd:pain.001.001.09\"><CstmrCdtTrfInitn><GrpHdr><MsgId>MSG-2026-001</MsgId><NbOfTxs>1</NbOfTxs><CtrlSum>100.00</CtrlSum></GrpHdr><PmtInf><CdtTrfTxInf><Amt><InstdAmt Ccy=\"USD\">100.00</InstdAmt></Amt><CdtrAgt><FinInstnId><BICFI>DEUTDEDDFXX</BICFI></FinInstnId></CdtrAgt><CdtrAcct><Id><IBAN>DE89370400440532013000</IBAN></Id></CdtrAcct></CdtTrfTxInf></PmtInf></CstmrCdtTrfInitn></Document>"}'
No key needed for the free tier. When the free quota is used up, the API replies HTTP 402 with the exact price — agents sign the x402 voucher and retry; humans buy card credits. Every paid response carries a signed receipt you can verify offline.
| Field | Type | Meaning |
|---|---|---|
raw_payload (required) | string | Raw ISO 20022 XML or JSON message text |
format | string | 'xml' or 'json' (default auto-detected) |
namespace | string | Expected ISO 20022 schema namespace (e.g. 'pain.001.001.09') |
transactions | array | Structured transactions array for JSON validation |
Top-level fields: ok, standard, valid, namespace, message_id, tx_count, ctrl_sum_minor, findings, receipt_digest. Paid responses also carry a signed XDR-1 receipt.
Machine-readable catalog: llms-full.txt · MCP manifest · OpenAPI. Operated by JUANA LIMITED (UK Co. No. 14043409). Non-custodial: USDC settles payer→seller directly on Base.