You are obliged to validate the transmitted IBANs in good time. This helps to streamline the process for all of us involved.
You can validate the IBAN individually when the user enters it, or in batch mode before the file is transferred.
Validate a Single IBAN
The endpoint to validate a single IBAN is POST /api/v2/Payment/Containers/me/validateSingleIban:
POST /api/v2/Payment/Containers/me/validateSingleIban HTTP/1.1Host: connect-testing.secupay-ag.deContent-Type: application/jsonAuthorization: Bearer htlu0l0m22rsesvh20f7i5d22i{ "iban": "DE37503240001000000524"}Apart from technical conditions, the service will always respond with HTTP status 200 OK, regardless whether the IBAN is valid or not.
If valid, also BIC and bank institute name are present:
HTTP/1.1 200 OKContent-Type: application/json{ "id": null, "valid": true, "iban": "DE37503240001000000524", "bic": "FTSBDEFAXXX", "bankname": "ABN AMRO Bank, Frankfurt Branch"}If invalid, these data cannot be present:
HTTP/1.1 200 OKContent-Type: application/json{ "id": null, "valid": false, "iban": "DE37503240001000000523", "bic": null}Validate IBANs in Batch Mode
The endpoint to validate an IBAN is POST /api/v2/Payment/Containers/me/validateIban:
POST /api/v2/Payment/Containers/me/validateIban HTTP/1.1Host: connect-testing.secupay-ag.deContent-Type: application/jsonAuthorization: Bearer htlu0l0m22rsesvh20f7i5d22i[ { "id": 1, "iban": "DE37503240001000000524" }, { "id": 2, "iban": "DE99999999999999999999" }]It responds basically like the endpoint for single IBANs. The id is used to match the individual validation jobs contained:
HTTP/1.1 200 OKContent-Type: application/json[ { "id": 1, "valid": true, "iban": "DE37503240001000000524", "bic": "FTSBDEFAXXX", "bankname": "ABN AMRO Bank, Frankfurt Branch" }, { "id": 2, "valid": false, "iban": "DE99999999999999999999", "bic": null }]