← APIs / Financial Validation
Verified

Financial Validation

Apiosk Basicsby Apiosk Basics · General

Validate an IBAN (format + mod-97 checksum), read its country, and optionally check it against an expected country. One deterministic call, no bank-account verification.

financeapi
Price per request
$0.06
About

Financial Validation is a stateless first-party utility for AI agents that handle payouts, invoices or onboarding forms: pass an IBAN and get back whether the format and mod-97 checksum are valid, which country the IBAN belongs to, and — if you supply expected_country — whether they match. It is a pure format/checksum/country check against a per-country IBAN length table; it does NOT verify that the account exists or belongs to anyone. Pay per request via x402 (X-Payment header); no API key needed from the caller.

Base URL
https://gateway.apiosk.com/financial-validation
Technical Specs
Auth Methodx402
Response FormatJSON
Endpoints1
Endpoints
MethodPathDescriptionCost
POST /iban-country-check Validate an IBAN's format and mod-97 checksum, derive its country code, and optionally compare it to an expected country. Format/checksum/country only — no bank-account verification.
$0.06 default
View details
Endpoint documentation
POST/iban-country-check
$0.06 default
Description

Validate an IBAN's format and mod-97 checksum, derive its country code, and optionally compare it to an expected country. Format/checksum/country only — no bank-account verification.

Pricing
$0.06 default
Request schema
{
  "description": "Provide an IBAN; expected_country is optional.",
  "properties": {
    "expected_country": {
      "description": "Optional ISO 3166-1 alpha-2 code to compare against, e.g. \"NL\".",
      "type": "string"
    },
    "iban": {
      "description": "IBAN, spaces allowed, e.g. \"NL91ABNA0417164300\" or \"NL91 ABNA 0417 1643 00\".",
      "type": "string"
    }
  },
  "required": [
    "iban"
  ],
  "type": "object"
}
Response schema
{
  "properties": {
    "country": {
      "description": "Two-letter code read from the IBAN (echoed even when the length table does not support it).",
      "type": [
        "string",
        "null"
      ]
    },
    "country_matches": {
      "description": "null when no expected_country was supplied.",
      "type": [
        "boolean",
        "null"
      ]
    },
    "expected_country": {
      "type": [
        "string",
        "null"
      ]
    },
    "format_valid": {
      "description": "true only when both the per-country length and the mod-97 checksum are correct.",
      "type": "boolean"
    },
    "iban": {
      "type": "string"
    }
  },
  "type": "object"
}
Example request
{
  "expected_country": "NL",
  "iban": "NL91ABNA0417164300"
}
Example response
{
  "country": "NL",
  "country_matches": true,
  "expected_country": "NL",
  "format_valid": true,
  "iban": "NL91ABNA0417164300"
}