Endpoint
POST https://requiems.xyz/v1/systems/payment/validate
Validate Payment
Validate and cross-check BIN, IBAN, and SWIFT identifiers in one call. Returns per-field results and a consistency check that flags country and bank mismatches.
Parameters
| Name |
Type |
Required |
Location |
Description |
bin |
string |
no |
body |
Card BIN (first 6–8 digits). At least one of bin, iban, or swift is required. |
iban |
string |
no |
body |
IBAN string to validate. Checksum and format are verified. |
swift |
string |
no |
body |
SWIFT/BIC code to look up institution and country. |
Request Example
{
"bin": "424242",
"iban": "DE89370400440532013000",
"swift": "DEUTDEDB"
}
Response Example
{
"data": {
"bin": {
"valid": true,
"scheme": "visa",
"card_type": "debit",
"card_level": "classic",
"country_code": "US",
"issuer": "JPMorgan Chase",
"prepaid": false,
"luhn_prefix_valid": true
},
"iban": {
"valid": true,
"country_code": "DE",
"bank_code": "37040044",
"account_number": "0532013000"
},
"swift": {
"valid": true,
"institution": "Deutsche Bank",
"country": "DE",
"branch": "Frankfurt"
},
"consistency": {
"ok": false,
"flags": ["country_mismatch_bin_iban"]
}
},
"metadata": {
"timestamp": "2026-01-01T00:00:00Z"
}
}
Response Fields
| Field |
Type |
Description |
bin |
object |
BIN result. Null when bin was not provided. Contains valid, scheme, card_type, card_level, country_code, issuer, prepaid, luhn_prefix_valid. |
iban |
object |
IBAN result. Null when iban was not provided. Contains valid, country_code, bank_code, account_number. |
swift |
object |
SWIFT result. Null when swift was not provided. Contains valid, institution, country, branch. |
consistency.ok |
boolean |
True when no cross-field mismatches were detected |
consistency.flags |
array |
Mismatch flags. Possible values: country_mismatch_bin_iban, country_mismatch_bin_swift, country_mismatch_iban_swift, bank_mismatch_iban_swift |
Errors
undefined 422 — All of bin, iban, and swift were omitted. At least one is required.
undefined 401 — Missing or invalid API key
1---2name: payments-intelligence-post-validate3description: Validate and cross-check BIN, IBAN, and SWIFT identifiers in one call. Returns per-field results and a consistency check that flags country and bank mismatches.4---5
6## Endpoint
7
8**POST https://requiems.xyz/v1/systems/payment/validate**
9
10## Validate Payment
11
12Validate and cross-check BIN, IBAN, and SWIFT identifiers in one call. Returns per-field results and a consistency check that flags country and bank mismatches.
13
14## Parameters
15
16| Name | Type | Required | Location | Description |
17| ---- | ---- | -------- | -------- | ----------- |
18| `bin` | string | no | body | Card BIN (first 6–8 digits). At least one of bin, iban, or swift is required. |
19| `iban` | string | no | body | IBAN string to validate. Checksum and format are verified. |
20| `swift` | string | no | body | SWIFT/BIC code to look up institution and country. |
21
22## Request Example
23
24```json
25{
26 "bin": "424242",
27 "iban": "DE89370400440532013000",
28 "swift": "DEUTDEDB"
29}
30```
31
32## Response Example
33
34```json
35{
36 "data": {
37 "bin": {
38 "valid": true,
39 "scheme": "visa",
40 "card_type": "debit",
41 "card_level": "classic",
42 "country_code": "US",
43 "issuer": "JPMorgan Chase",
44 "prepaid": false,
45 "luhn_prefix_valid": true
46 },
47 "iban": {
48 "valid": true,
49 "country_code": "DE",
50 "bank_code": "37040044",
51 "account_number": "0532013000"
52 },
53 "swift": {
54 "valid": true,
55 "institution": "Deutsche Bank",
56 "country": "DE",
57 "branch": "Frankfurt"
58 },
59 "consistency": {
60 "ok": false,
61 "flags": ["country_mismatch_bin_iban"]
62 }
63 },
64 "metadata": {
65 "timestamp": "2026-01-01T00:00:00Z"
66 }
67}
68```
69
70## Response Fields
71
72| Field | Type | Description |
73| ----- | ---- | ----------- |
74| `bin` | object | BIN result. Null when bin was not provided. Contains valid, scheme, card_type, card_level, country_code, issuer, prepaid, luhn_prefix_valid. |
75| `iban` | object | IBAN result. Null when iban was not provided. Contains valid, country_code, bank_code, account_number. |
76| `swift` | object | SWIFT result. Null when swift was not provided. Contains valid, institution, country, branch. |
77| `consistency.ok` | boolean | True when no cross-field mismatches were detected |
78| `consistency.flags` | array<string> | Mismatch flags. Possible values: country_mismatch_bin_iban, country_mismatch_bin_swift, country_mismatch_iban_swift, bank_mismatch_iban_swift |
79
80## Errors
81
82- `undefined` **422** — All of bin, iban, and swift were omitted. At least one is required.
83- `undefined` **401** — Missing or invalid API key