# Curate Bank Account Curates the given bank account. The BankAccount that is sent in the request has to be uniquely identifiable. Minimal sets of attributes that identify a BankAccount are: 1. Only the IBAN (= internationalBankAccountIdentifier): 2. The bank account number (= nationalBankAccountIdentifier), bank code/number (= bank.nationalBankIdentifier) and bank country code (= bank.address.country.shortName): 3. The bank account number (= nationalBankAccountIdentifier), bank code/number (= bank.nationalBankIdentifier) and the BIC (= internationalBankIdentifier): If IBAN is not present in the request it will be generated only if there is sufficient data: - countryCode - internationalBankIdentifier - nationalBankAccountIdentifier Or - internationalBankIdentifier - nationalBankIdentifier - nationalBankAccountIdentifier For the following countries the generation of the internationalBankAccountIdentifier (IBAN) is NOT supported in the current version: AL, BA, BE, BG, BI, BR, DJ, EE, EG, ES, FI, FO, FR, HU, IS, IT, LY, MC, ME, MK, MR, NO, PL, PT, RS, SC, SD, SI, SM, TL, TR The response will always contain the original BankAccount provided in the request and a curated version of it. For example: If the given request does not provide one of the combinations of attributes described above, an ApiError will be returned: Message contains concatenated descriptions of all errors that occurred in the request. Endpoint: POST /bankaccounts/curate Version: 2 Security: apiKey ## Request fields (application/json): - `bankAccount` (object, required) A request to curate a BankAccount. - `bankAccount.internationalBankAccountIdentifier` (string) The IBAN of a bank account. Example: "CH8800781619278412000" - `bankAccount.nationalBankAccountIdentifier` (string) Identifier of a bank account in a national context, i.e. for a country. Example: "619278412000" - `bankAccount.bank` (object) The curated bank where a curated bank account is established. - `bankAccount.bank.internationalBankIdentifier` (string) (BIC/SWIFT) Bank identifier which is globally unique. Example: "KBSGCH22XXX" - `bankAccount.bank.nationalBankIdentifier` (string) Bank identifier which is unique in a national context, i.e. for a country. Example: "00781" - `bankAccount.bank.nationalBankInstitutionCode` (string) National Bank Institution Code. Example: "LOYD" - `bankAccount.bank.nationalBankSortCode` (string) National Bank Sort Code. Example: "301883" - `bankAccount.bank.nationalBankControlKey` (string) BankControlKey (SAP), NationalCheckDigits (SWIFT). Example: "12" - `bankAccount.bank.address` (object) The bank where a bank account is established. - `bankAccount.bank.address.country` (object) Country consisting of the country name and country code (ISO 3166-1 alpha-2). - `bankAccount.bank.address.country.shortName` (string) Country code (ISO 3166-1 alpha-2). Example: "CH" - `bankAccount.bank.address.country.value` (string) Country name (ISO 3166-1 alpha-2). Example: "Switzerland" - `featuresOn` (array) Feature(s) to be used during curation: * - Removes all invalid values (e.g. internationalBankIdentifier) during curation. By default, activated. Enum: "REMOVE_INVALID_VALUES" - `featuresOff` (array) Feature(s) to be used during curation: * - Removes all invalid values (e.g. internationalBankIdentifier) during curation. By default, activated. Enum: "REMOVE_INVALID_VALUES" ## Response 200 fields (application/json): - `originalBankAccount` (object) A request to curate a BankAccount. - `originalBankAccount.internationalBankAccountIdentifier` (string) The IBAN of a bank account. Example: "CH8800781619278412000" - `originalBankAccount.nationalBankAccountIdentifier` (string) Identifier of a bank account in a national context, i.e. for a country. Example: "619278412000" - `originalBankAccount.bank` (object) The curated bank where a curated bank account is established. - `originalBankAccount.bank.internationalBankIdentifier` (string) (BIC/SWIFT) Bank identifier which is globally unique. Example: "KBSGCH22XXX" - `originalBankAccount.bank.nationalBankIdentifier` (string) Bank identifier which is unique in a national context, i.e. for a country. Example: "00781" - `originalBankAccount.bank.nationalBankInstitutionCode` (string) National Bank Institution Code. Example: "LOYD" - `originalBankAccount.bank.nationalBankSortCode` (string) National Bank Sort Code. Example: "301883" - `originalBankAccount.bank.nationalBankControlKey` (string) BankControlKey (SAP), NationalCheckDigits (SWIFT). Example: "12" - `originalBankAccount.bank.address` (object) The bank where a bank account is established. - `originalBankAccount.bank.address.country` (object) Country consisting of the country name and country code (ISO 3166-1 alpha-2). - `originalBankAccount.bank.address.country.shortName` (string) Country code (ISO 3166-1 alpha-2). Example: "CH" - `originalBankAccount.bank.address.country.value` (string) Country name (ISO 3166-1 alpha-2). Example: "Switzerland" - `curatedBankAccount` (object) A request to curate a BankAccount. ## Response 400 fields (application/json): - `id` (string) Unique identifier of the error. Example: "5c6a2c7e-9b0a-4e1a-8b0a-4e1a8b0a4e1a" - `path` (string) Requested path which caused this error. Example: "/v2/businesspartners/lookup" - `timestamp` (string) ISO 8601 representation of the timestamp. Example: "2025-08-29T09:46:42Z" - `message` (string) Details about the error. Example: "This user is not allowed to access this service." - `error` (string) RFC 7231 error which belongs to the status code. Example: "BAD_REQUEST" - `status` (integer) RFC 7231 status code for this error. Example: "400" ## Response 401 fields (application/json): - `id` (string) Unique identifier of the error. Example: "5c6a2c7e-9b0a-4e1a-8b0a-4e1a8b0a4e1a" - `path` (string) Requested path which caused this error. Example: "/v2/businesspartners/lookup" - `timestamp` (string) ISO 8601 representation of the timestamp. Example: "2025-08-29T09:46:42Z" - `message` (string) Details about the error. Example: "This user is not allowed to access this service." - `error` (string) RFC 7231 error which belongs to the status code. Example: "BAD_REQUEST" - `status` (integer) RFC 7231 status code for this error. Example: "400"