{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/adyen/refs/heads/main/json-schema/checkout-ach-details-schema.json",
"title": "AchDetails",
"description": "AchDetails schema from Adyen API",
"type": "object",
"properties": {
"bankAccountNumber": {
"description": "The bank account number (without separators).",
"type": "string"
},
"bankAccountType": {
"description": "The bank account type (checking, savings...).",
"enum": [
"balance",
"checking",
"deposit",
"general",
"other",
"payment",
"savings"
],
"type": "string"
},
"bankLocationId": {
"description": "The bank routing number of the account. The field value is `nil` in most cases.",
"type": "string"
},
"checkoutAttemptId": {
"x-addedInVersion": "68",
"description": "The checkout attempt identifier.",
"type": "string"
},
"encryptedBankAccountNumber": {
"description": "Encrypted bank account number. The bank account number (without separators).",
"type": "string"
},
"encryptedBankLocationId": {
"description": "Encrypted location id. The bank routing number of the account. The field value is `nil` in most cases.",
"type": "string"
},
"ownerName": {
"description": "The name of the bank account holder.\nIf you submit a name with non-Latin characters, we automatically replace some of them with corresponding Latin characters to meet the FATF recommendations. For example:\n* \u03c712 is converted to ch12.\n* \u00fcA is converted to euA.\n* Peter M\u00f8ller is converted to Peter Mller, because banks don't accept '\u00f8'.\nAfter replacement, the ownerName must have at least three alphanumeric characters (A-Z, a-z, 0-9), and at least one of them must be a valid Latin character (A-Z, a-z). For example:\n* John17 - allowed.\n* J17 - allowed.\n* 171 - not allowed.\n* John-7 - allowed.\n> If provided details don't match the required format, the response returns the error message: 203 'Invalid bank account holder name'.",
"type": "string"
},
"recurringDetailReference": {
"deprecated": true,
"x-deprecatedInVersion": "49",
"x-deprecatedMessage": "Use `storedPaymentMethodId` instead.",
"description": "This is the `recurringDetailReference` returned in the response when you created the token.",
"type": "string"
},
"storedPaymentMethodId": {
"x-addedInVersion": "49",
"description": "This is the `recurringDetailReference` returned in the response when you created the token.",
"maxLength": 64,
"type": "string"
},
"type": {
"default": "ach",
"description": "**ach**",
"enum": [
"ach",
"ach_plaid"
],
"type": "string"
}
},
"required": [
"bankAccountNumber"
],
"additionalProperties": false
}