openapi: 3.1.0 info: version: '6' x-publicVersion: true title: Adyen Account acceptDispute Cardacquisition API description: "This API is used for the classic integration. If you are just starting your implementation, refer to our [new integration guide](https://docs.adyen.com/marketplaces-and-platforms) instead.\n\nThe Account API provides endpoints for managing account-related entities on your platform. These related entities include account holders, accounts, bank accounts, shareholders, and verification-related documents. The management operations include actions such as creation, retrieval, updating, and deletion of them.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/marketplaces-and-platforms/classic).\n## Authentication\nYour Adyen contact will provide your API credential and an API key. To connect to the API, add an `X-API-Key` header with the API key as the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\" \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use the username and password to connect to the API using basic authentication. For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Account API supports [versioning](https://docs.adyen.com/development-resources/versioning) using a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Account/v6/createAccountHolder\n```" x-timestamp: '2023-05-30T15:27:20Z' termsOfService: https://www.adyen.com/legal/terms-and-conditions contact: name: Adyen Developer Experience team url: https://github.com/Adyen/adyen-openapi servers: - url: https://cal-test.adyen.com/cal/services/Account/v6 tags: - name: Cardacquisition paths: /cardacquisition: post: description: It conveys Information related to the payment and loyalty cards to read and analyse. This message pair is usually followed by a message pair (e.g. payment or loyalty) which refers to this Card Acquisition message pair. Content of the Card Acquisition Request message. summary: Adyen CardAcquisition Request security: - BasicAuth: [] - ApiKeyAuth: [] requestBody: content: application/json: schema: $ref: '#/components/schemas/CardAcquisitionRequest' responses: '200': content: application/json: schema: $ref: '#/components/schemas/CardAcquisitionResponse' examples: operation200Example: summary: Default operation 200 response x-microcks-default: true value: Response: example_value SaleData: example_value POIData: example_value CustomerLanguage: example_value PaymentBrand: - example_value PaymentInstrumentData: example_value LoyaltyAccount: - example_value description: It conveys Information related to the payment and loyalty cards read and processed by the POI System and entered by the Customer. Content of the Card Acquisition Response message. tags: - Cardacquisition x-microcks-operation: delay: 0 dispatcher: FALLBACK components: schemas: POIData: type: object description: In the Message Response, identification of the POI transaction. Data related to the POI System. properties: POITransactionID: $ref: '#/components/schemas/TransactionIDType' POIReconciliationID: type: integer description: If Result is Success. required: - POITransactionID PaymentInstrumentData: type: object description: Sent in the result of the payment transaction. For a card, it could also be sent in the CardAcquisition response, to be processed by the Sale System. Data related to the instrument of payment for the transaction. properties: PaymentInstrumentType: $ref: '#/components/schemas/PaymentInstrumentType' ProtectedCardData: type: string CardData: $ref: '#/components/schemas/CardData' CheckData: $ref: '#/components/schemas/CheckData' MobileData: $ref: '#/components/schemas/MobileData' StoredValueAccountID: $ref: '#/components/schemas/StoredValueAccountID' required: - PaymentInstrumentType CardAcquisitionResponse: type: object description: It conveys Information related to the payment and loyalty cards read and processed by the POI System and entered by the Customer. Content of the Card Acquisition Response message. properties: Response: $ref: '#/components/schemas/Response' SaleData: $ref: '#/components/schemas/SaleData' POIData: $ref: '#/components/schemas/POIData' CustomerLanguage: type: string pattern: ^[a-z]{2,2}$ description: Data related to the POI System. PaymentBrand: type: array items: type: string pattern: ^.+$ description: Brands available for payment by the card and not chosen by the Customer. PaymentInstrumentData: $ref: '#/components/schemas/PaymentInstrumentData' LoyaltyAccount: type: array items: $ref: '#/components/schemas/LoyaltyAccount' required: - Response - SaleData - POIData LoyaltyAccountID: type: object description: In the Payment or the Loyalty Request message, it allows to identify the loyalty account by the Sale Terminal instead of the POI Terminal (e.g. because the account identification is a bar-code read by the Cashier on a scanner device). Identification of a Loyalty account. properties: EntryMode: $ref: '#/components/schemas/EntryMode' IdentificationType: $ref: '#/components/schemas/IdentificationType' IdentificationSupport: $ref: '#/components/schemas/IdentificationSupport' LoyaltyID: type: string required: - EntryMode - IdentificationType - LoyaltyID ErrorCondition: type: string enum: - Aborted - Busy - Cancel - DeviceOut - InProgress - InsertedCard - InvalidCard - LoggedOut - MessageFormat - NotAllowed - NotFound - PaymentRestriction - Refusal - UnavailableDevice - UnavailableService - UnreachableHost - WrongPIN CardData: type: object description: Allows acquisition of the card data by the Sale System before the Payment, CardAcquisition or BalanceInquiry request to the POI. It could also be sent in the CardAcquisition response, to be processed by the Sale System. Information related to the payment card used for the transaction. properties: PaymentBrand: type: string pattern: ^.+$ description: If card PAN is readable . MaskedPan: type: string pattern: ^.+$ PaymentAccountRef: type: string pattern: ^.+$ EntryMode: $ref: '#/components/schemas/EntryMode' CardCountryCode: type: integer minimum: 3 maximum: 3 description: If available in the card. ProtectedCardData: type: string description: SensitiveCardData protected by CMS EnvelopedData. SensitiveCardData: $ref: '#/components/schemas/SensitiveCardData' AllowedProductCode: type: array items: type: integer minimum: 1 maximum: 20 AllowedProduct: type: array items: $ref: '#/components/schemas/AllowedProduct' PaymentToken: $ref: '#/components/schemas/PaymentToken' CustomerOrder: type: array items: $ref: '#/components/schemas/CustomerOrder' UTMCoordinates: type: object properties: UTMZone: type: string pattern: ^.+$ UTMEastward: type: string pattern: ^.+$ UTMNorthward: type: string pattern: ^.+$ required: - UTMZone - UTMEastward - UTMNorthward EntryMode: type: array items: type: string enum: - Contactless - File - ICC - Keyed - MagStripe - Manual - Mobile - RFID - Scanned - SynchronousICC - Tapped Response: type: object description: If Result is Success, ErrorCondition is absent or not used in the processing of the message. In the other cases, the ErrorCondition has to be present and can refine the processing of the message response. AdditionalResponse gives more information about the success or the failure of the message request processing, for logging without real time involvements. Result of a message request processing. properties: Result: $ref: '#/components/schemas/Result' ErrorCondition: $ref: '#/components/schemas/ErrorCondition' AdditionalResponse: type: string pattern: ^.+$ description: If present, the POI logs it for further examination. required: - Result StoredValueAccountID: type: object description: It contains the identifications of the stored value account or the stored value card, and the associated product sold by the Sale System for stored value requests. Identification of the stored value account or the stored value card. properties: StoredValueAccountType: $ref: '#/components/schemas/StoredValueAccountType' StoredValueProvider: type: string pattern: ^.+$ OwnerName: type: string pattern: ^.+$ ExpiryDate: type: integer minimum: 4 maximum: 4 EntryMode: $ref: '#/components/schemas/EntryMode' IdentificationType: $ref: '#/components/schemas/IdentificationType' StoredValueID: type: string pattern: ^.+$ required: - StoredValueAccountType - EntryMode - IdentificationType - StoredValueID TransactionIDType: type: object description: Identification of a transaction for the Sale System or the POI System. properties: TransactionID: type: string pattern: ^.+$ TimeStamp: type: string format: date-time required: - TransactionID - TimeStamp Result: type: string enum: - Failure - Partial - Success CheckData: type: object description: Allows the check information to be provided by the Sale System before requesting the payment, or stored by the Sale System after processing of the payment. Information related to the paper check used for the transaction. properties: BankID: type: string pattern: ^.+$ description: Mandatory if TrackData absent. AccountNumber: type: string pattern: ^.+$ description: Mandatory if TrackData absent. CheckNumber: type: string pattern: ^.+$ description: Mandatory if TrackData absent. TrackData: $ref: '#/components/schemas/TrackData' CheckCardNumber: type: string pattern: ^.+$ description: If provided by the customer. TypeCode: $ref: '#/components/schemas/TypeCode' Country: type: string pattern: ^[A-Z]{3,3}$ description: Absent if country of the Sale system. GeographicCoordinates: type: object properties: Latitude: type: string pattern: ^.+$ Longitude: type: string pattern: ^.+$ required: - Latitude - Longitude IdentificationType: type: string enum: - AccountNumber - BarCode - ISOTrack2 - PAN - PhoneNumber CardAcquisitionTransaction: type: object properties: AllowedPaymentBrand: type: array items: type: string pattern: ^.+$ AllowedLoyaltyBrand: type: array items: type: string pattern: ^.+$ LoyaltyHandling: $ref: '#/components/schemas/LoyaltyHandling' CustomerLanguage: type: string pattern: ^[a-z]{2,2}$ ForceEntryMode: $ref: '#/components/schemas/ForceEntryMode' ForceCustomerSelectionFlag: type: boolean TotalAmount: type: number maximum: 99999999.999999 minimum: 0 PaymentType: $ref: '#/components/schemas/PaymentType' CashBackFlag: type: boolean SaleData: type: object description: Data associated to the Sale System, with a particular value during the processing of the payment by the POI, including the cards acquisition. Data related to the Sale System. properties: OperatorID: type: string pattern: ^.+$ OperatorLanguage: type: string pattern: ^[a-z]{2,2}$ description: if different from the Login. ShiftNumber: type: string pattern: ^.+$ description: if different from the Login and see Login .SaleData. SaleTransactionID: $ref: '#/components/schemas/TransactionIDType' SaleReferenceID: type: string pattern: ^.+$ description: If payment reservation. SaleTerminalData: $ref: '#/components/schemas/SaleTerminalData' TokenRequestedType: $ref: '#/components/schemas/TokenRequestedType' CustomerOrderID: type: string pattern: ^.+$ description: Additional and optional identification of a customer order. CustomerOrderReq: $ref: '#/components/schemas/CustomerOrderReq' SaleToPOIData: type: string pattern: ^.+$ description: Stored with the transaction. SaleToAcquirerData: type: string pattern: ^.+$ description: Send to the Acquirer if present. SaleToIssuerData: $ref: '#/components/schemas/SaleToIssuerData' required: - SaleTransactionID PaymentType: type: string enum: - CashAdvance - CashDeposit - Completion - FirstReservation - Instalment - IssuerInstalment - Normal - OneTimeReservation - PaidOut - Recurring - Refund - UpdateReservation Geolocation: type: object properties: GeographicCoordinates: $ref: '#/components/schemas/GeographicCoordinates' UTMCoordinates: $ref: '#/components/schemas/UTMCoordinates' CardAcquisitionRequest: type: object description: It conveys Information related to the payment and loyalty cards to read and analyse. This message pair is usually followed by a message pair (e.g. payment or loyalty) which refers to this Card Acquisition message pair. Content of the Card Acquisition Request message. properties: SaleData: $ref: '#/components/schemas/SaleData' CardAcquisitionTransaction: $ref: '#/components/schemas/CardAcquisitionTransaction' required: - SaleData - CardAcquisitionTransaction CustomerOrder: type: object description: Customer order attached to a customer, recorded in the POI system. Allows the management of customer orders by the POI, for instance in a multi-channel or a click and collect sale transaction. properties: CustomerOrderID: type: string pattern: ^.+$ description: Additional and optional identification of a customer order. SaleReferenceID: type: string pattern: ^.+$ OpenOrderState: type: boolean default: true StartDate: type: string format: date-time description: Date time of the beginning of an operation. EndDate: type: string format: date-time description: Date time of the end of an operation. ForecastedAmount: type: number maximum: 99999999.999999 minimum: 0 CurrentAmount: type: number maximum: 99999999.999999 minimum: 0 description: Total amount of all completed transactions of a customer order. Currency: type: string pattern: ^[A-Z]{3,3}$ description: Currency of a monetary amount. AccessedBy: type: string pattern: ^.+$ AdditionalInformation: type: string pattern: ^.+$ description: Unqualified information. required: - SaleReferenceID - StartDate - ForecastedAmount - CurrentAmount TrackFormat: type: string enum: - AAMVA - ISO TypeCode: type: string enum: - Company - Personal ForceEntryMode: type: array items: type: string enum: - CheckReader - Contactless - File - ICC - Keyed - MagStripe - Manual - RFID - Scanned - SynchronousICC - Tapped TrackData: type: object description: ISO 7813 - ISO 4909. Generic data structure for a card track, used when the magstripe card reader is located on the Sale Terminal, or for magstripe Card Reader device request. The data structure is also used to store the line at the bottom of a bank check. Magnetic track or magnetic ink characters line. properties: TrackNumb: type: integer minimum: 1 maximum: 3 default: 2 TrackFormat: $ref: '#/components/schemas/TrackFormat' TrackValue: type: string pattern: ^.{1,104}$ required: - TrackValue PaymentInstrumentType: type: string enum: - Card - Cash - Check - Mobile - StoredValue SensitiveCardData: type: object description: This data structure could be CMS protected (EnvelopedData). In this case the data structure SensitiveCardData is replaced by the data structure ProtectedCardData of type ContentInformationType. When this data is protected, the exact content is unknown by the Sale System, and might include all the information which are required by an external backup POI Server to make a batch payment transaction in case of problem with the POI System. Sensitive information related to the payment card, entered or read by the Sale System. properties: PAN: type: integer minimum: 8 maximum: 28 CardSeqNumb: type: integer minimum: 2 maximum: 3 description: if EntryMode is File, Keyed or Manual. ExpiryDate: type: integer minimum: 4 maximum: 4 description: if EntryMode is File. TrackData: type: array items: $ref: '#/components/schemas/TrackData' PaymentToken: type: object description: Surrogate of the PAN (Primary Account Number) of the payment card to identify the payment mean of the customer. It allows, for a merchant, to identify the customer. properties: TokenRequestedType: $ref: '#/components/schemas/TokenRequestedType' TokenValue: type: string pattern: ^.+$ ExpiryDateTime: type: string format: date-time description: Expiry date and time. Limits the validity of a payment token. required: - TokenRequestedType - TokenValue TokenRequestedType: type: string enum: - Customer - Transaction MobileData: type: object description: Mobile phone is used as a payment instrument for the transaction. Information related to the mobile for the payment transaction. properties: MobileCountryCode: type: integer minimum: 3 maximum: 3 description: If data available. MobileNetworkCode: type: integer minimum: 2 maximum: 3 description: If data available. MaskedMSISDN: type: integer description: If data available. Geolocation: $ref: '#/components/schemas/Geolocation' ProtectedMobileData: type: string description: SensitiveMobileData. SensitiveMobileData: $ref: '#/components/schemas/SensitiveMobileData' StoredValueAccountType: type: string enum: - GiftCard - Other - PhoneCard SensitiveMobileData: type: object properties: MSISDN: type: integer ISMI: type: integer IMEI: type: integer required: - MSISDN SaleTerminalData: type: object description: In the Login Request, if a Sale Terminal is involved in the login. In other messages, when a logical device is out of order (SaleCapabilites), or when the other data have changed since or were not in the Login. Information related to the software and hardware feature of the Sale Terminal. properties: TotalsGroupID: type: string pattern: ^.{1,16}$ description: If present, default value for all transaction. AllowedProduct: type: object description: Product that is payable by the payment card. Product codes that are payable by the payment card. properties: ProductCode: type: integer minimum: 1 maximum: 20 description: Product code of item purchased with the transaction. EanUpc: type: integer description: Standard product code of item purchased with the transaction. ProductLabel: type: string pattern: ^.+$ description: Product name of an item purchased with the transaction. AdditionalProductInfo: type: string pattern: ^.+$ description: Additionl information related to the line item. required: - ProductCode CustomerOrderReq: type: array items: type: string enum: - Both - Closed - Open SaleToIssuerData: type: object description: The POI System receives this information and sends it to the Acquirer for the Issuer without any change. Sale information intended for the Issuer. properties: StatementReference: type: string pattern: ^.+$ description: Information to print on the bank statement. LoyaltyHandling: type: string enum: - Allowed - Forbidden - Processed - Proposed - Required IdentificationSupport: type: string enum: - HybridCard - LinkedCard - LoyaltyCard - NoCard LoyaltyAccount: type: object description: This data structure conveys the identification of the account and the associated loyalty brand. Data related to a loyalty account processed in the transaction. properties: LoyaltyAccountID: $ref: '#/components/schemas/LoyaltyAccountID' LoyaltyBrand: type: string pattern: ^.+$ description: If a card is analysed. required: - LoyaltyAccountID securitySchemes: ApiKeyAuth: in: header name: X-API-Key type: apiKey BasicAuth: scheme: basic type: http x-groups: - Account holders - Accounts - Verification