{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/adyen/main/json-schema/adyen-recurring-details-result-schema.json", "title": "RecurringDetailsResult", "x-generated": "2026-10-12", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/adyen-listrecurringdetails-api-openapi.yml#/components/schemas/RecurringDetailsResult", "properties": { "creationDate": { "description": "The date when the recurring details were created.", "format": "date-time", "type": "string" }, "details": { "description": "Payment details stored for recurring payments.", "items": { "$ref": "#/$defs/RecurringDetailWrapper" }, "type": "array" }, "lastKnownShopperEmail": { "description": "The most recent email for this shopper (if available).", "type": "string" }, "shopperReference": { "description": "The reference you use to uniquely identify the shopper (e.g. user ID or account ID).", "type": "string" } }, "type": "object", "$defs": { "Address": { "properties": { "city": { "description": "The name of the city. Maximum length: 3000 characters.", "maxLength": 3000, "type": "string" }, "country": { "description": "The two-character ISO-3166-1 alpha-2 country code. For example, **US**.\n> If you don't know the country or are not collecting the country from the shopper, provide `country` as `ZZ`.", "type": "string" }, "houseNumberOrName": { "description": "The number or name of the house. Maximum length: 3000 characters.", "maxLength": 3000, "type": "string" }, "postalCode": { "description": "A maximum of five digits for an address in the US, or a maximum of ten characters for an address in all other countries.", "type": "string" }, "stateOrProvince": { "description": "The two-character ISO 3166-2 state or province code. For example, **CA** in the US or **ON** in Canada.\n> Required for the US and Canada.", "type": "string" }, "street": { "description": "The name of the street. Maximum length: 3000 characters.\n> The house number should not be included in this field; it should be separately provided via `houseNumberOrName`.", "maxLength": 3000, "type": "string" } }, "required": [ "street", "houseNumberOrName", "city", "postalCode", "country" ], "type": "object" }, "BankAccount": { "properties": { "bankAccountNumber": { "description": "The bank account number (without separators).", "type": "string" }, "bankCity": { "x-addedInVersion": "18", "description": "The bank city.", "type": "string" }, "bankLocationId": { "description": "The location id of the bank. The field value is `nil` in most cases.", "type": "string" }, "bankName": { "description": "The name of the bank.", "type": "string" }, "bic": { "description": "The [Business Identifier Code](https://en.wikipedia.org/wiki/ISO_9362) (BIC) is the SWIFT address assigned to a bank. The field value is `nil` in most cases.", "type": "string" }, "countryCode": { "description": "Country code where the bank is located.\n\nA valid value is an ISO two-character country code (e.g. 'NL').", "type": "string" }, "iban": { "description": "The [International Bank Account Number](https://en.wikipedia.org/wiki/International_Bank_Account_Number) (IBAN).", "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* χ12 is converted to ch12.\n* üA is converted to euA.\n* Peter Møller is converted to Peter Mller, because banks don't accept 'ø'.\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" }, "taxId": { "x-addedInVersion": "18", "description": "The bank account holder's tax ID.", "type": "string" } }, "type": "object" }, "Card": { "properties": { "cvc": { "description": "The [card verification code](https://docs.adyen.com/payments-fundamentals/payment-glossary#card-security-code-cvc-cvv-cid) (1-20 characters). Depending on the card brand, it is known also as:\n* CVV2/CVC2 – length: 3 digits\n* CID – length: 4 digits\n> If you are using [Client-Side Encryption](https://docs.adyen.com/classic-integration/cse-integration-ecommerce), the CVC code is present in the encrypted data. You must never post the card details to the server.\n> This field must be always present in a [one-click payment request](https://docs.adyen.com/classic-integration/recurring-payments).\n> When this value is returned in a response, it is always empty because it is not stored.", "maxLength": 20, "minLength": 1, "type": "string" }, "expiryMonth": { "description": "The card expiry month.\nFormat: 2 digits, zero-padded for single digits. For example:\n* 03 = March\n* 11 = November", "maxLength": 2, "minLength": 1, "type": "string" }, "expiryYear": { "description": "The card expiry year.\nFormat: 4 digits. For example: 2020", "maxLength": 4, "minLength": 4, "type": "string" }, "holderName": { "description": "The name of the cardholder, as printed on the card.", "maxLength": 50, "minLength": 1, "type": "string" }, "issueNumber": { "description": "The issue number of the card (for some UK debit cards only).", "maxLength": 2, "minLength": 1, "type": "string" }, "number": { "description": "The card number (4-19 characters). Do not use any separators.\nWhen this value is returned in a response, only the last 4 digits of the card number are returned.", "maxLength": 19, "minLength": 4, "type": "string" }, "startMonth": { "description": "The month component of the start date (for some UK debit cards only).", "maxLength": 2, "minLength": 1, "type": "string" }, "startYear": { "description": "The year component of the start date (for some UK debit cards only).", "maxLength": 4, "minLength": 4, "type": "string" } }, "type": "object" }, "Name": { "properties": { "firstName": { "description": "The first name.", "type": "string" }, "lastName": { "description": "The last name.", "type": "string" } }, "required": [ "firstName", "lastName" ], "type": "object" }, "RecurringDetail": { "properties": { "additionalData": { "x-addedInVersion": "5", "additionalProperties": { "type": "string" }, "description": "This field contains additional data, which may be returned in a particular response.\n\nThe additionalData object consists of entries, each of which includes the key and value.", "type": "object" }, "alias": { "x-addedInVersion": "4", "description": "The alias of the credit card number.\n\nApplies only to recurring contracts storing credit card details", "type": "string" }, "aliasType": { "x-addedInVersion": "4", "description": "The alias type of the credit card number.\n\nApplies only to recurring contracts storing credit card details.", "type": "string" }, "bank": { "description": "A container for bank account data.", "$ref": "#/$defs/BankAccount" }, "billingAddress": { "x-addedInVersion": "4", "description": "The billing address.", "$ref": "#/$defs/Address" }, "card": { "description": "A container for card data.", "$ref": "#/$defs/Card" }, "contractTypes": { "x-addedInVersion": "12", "description": "Types of recurring contracts.", "items": { "type": "string" }, "type": "array" }, "creationDate": { "description": "The date when the recurring details were created.", "format": "date-time", "type": "string" }, "firstPspReference": { "x-addedInVersion": "4", "description": "The `pspReference` of the first recurring payment that created the recurring detail.", "type": "string" }, "name": { "description": "An optional descriptive name for this recurring detail.", "type": "string" }, "networkTxReference": { "x-addedInVersion": "68", "description": "Returned in the response if you are not tokenizing with Adyen and are using the Merchant-initiated transactions (MIT) framework from Mastercard or Visa.\n\nThis contains either the Mastercard Trace ID or the Visa Transaction ID.", "type": "string" }, "paymentMethodVariant": { "x-addedInVersion": "2", "description": "The type or sub-brand of a payment method used, e.g. Visa Debit, Visa Corporate, etc. For more information, refer to [PaymentMethodVariant](https://docs.adyen.com/development-resources/paymentmethodvariant).", "type": "string" }, "recurringDetailReference": { "description": "The reference that uniquely identifies the recurring detail.", "type": "string" }, "shopperName": { "x-addedInVersion": "4", "description": "The name of the shopper.", "$ref": "#/$defs/Name" }, "socialSecurityNumber": { "x-addedInVersion": "4", "description": "A shopper's social security number (only in countries where it is legal to collect).", "type": "string" }, "tokenDetails": { "x-addedInVersion": "2", "$ref": "#/$defs/TokenDetails" }, "variant": { "description": "The payment method, such as “mc\", \"visa\", \"ideal\", \"paypal\".", "type": "string" } }, "required": [ "recurringDetailReference", "variant" ], "type": "object" }, "RecurringDetailWrapper": { "properties": { "RecurringDetail": { "$ref": "#/$defs/RecurringDetail" } } }, "TokenDetails": { "properties": { "tokenData": { "additionalProperties": { "type": "string" }, "type": "object" }, "tokenDataType": { "type": "string" } }, "type": "object" } } }