Adyen storeDetailAndSubmitThirdParty API

The storeDetailAndSubmitThirdParty API from Adyen — 1 operation(s) for storedetailandsubmitthirdparty.

Documentation

📖
Documentation
https://docs.adyen.com/marketplaces-and-platforms/classic/configure-notifications/
📖
Documentation
https://docs.adyen.com/api-explorer/Account/6/overview
📖
Documentation
https://docs.adyen.com/development-resources/webhooks/
📖
Documentation
https://docs.adyen.com/api-explorer/BalanceControl/1/overview
📖
Documentation
https://docs.adyen.com/api-explorer/BinLookup/52/overview
📖
Documentation
https://docs.adyen.com/api-explorer/Checkout/71/overview
📖
Documentation
https://docs.adyen.com/api-explorer/balanceplatform/2/overview
📖
Documentation
https://docs.adyen.com/api-explorer/balanceplatform-webhooks/1/overview
📖
Documentation
https://docs.adyen.com/development-resources/data-protection-api/
📖
Documentation
https://docs.adyen.com/risk-management/disputes-api
📖
Documentation
https://docs.adyen.com/marketplaces-and-platforms/classic/fund-transfer/
📖
Documentation
https://docs.adyen.com/marketplaces-and-platforms/collect-verification-details/hosted/
📖
Documentation
https://docs.adyen.com/marketplaces-and-platforms/legal-entity-management-api/
📖
Documentation
https://docs.adyen.com/api-explorer/Management/3/overview
📖
Documentation
https://docs.adyen.com/api-explorer/management-webhooks/3/overview
📖
Documentation
https://docs.adyen.com/marketplaces-and-platforms/classic/notifications
📖
Documentation
https://docs.adyen.com/point-of-sale/design-your-integration/notifications/
📖
Documentation
https://docs.adyen.com/online-payments/
📖
Documentation
https://docs.adyen.com/online-payments/online-payouts
📖
Documentation
https://docs.adyen.com/point-of-sale/design-your-integration/terminal-api/
📖
Documentation
https://docs.adyen.com/online-payments/tokenization
📖
Documentation
https://docs.adyen.com/api-explorer/report-webhooks/1/overview
📖
Documentation
https://docs.adyen.com/payment-methods/gift-cards/stored-value-api/
📖
Documentation
https://docs.adyen.com/point-of-sale/design-your-integration/terminal-api/terminal-api-reference/
📖
Documentation
https://docs.adyen.com/development-resources/testing/create-test-cards
📖
Documentation
https://docs.adyen.com/marketplaces-and-platforms/business-accounts/transactions/transaction-webhooks/
📖
Documentation
https://docs.adyen.com/api-explorer/transfer-webhooks/3/overview
📖
Documentation
https://docs.adyen.com/marketplaces-and-platforms/payout-to-users/on-demand-payouts
📖
Documentation
https://docs.adyen.com/development-resources/webhooks

Specifications

Other Resources

OpenAPI Specification

adyen-storedetailandsubmitthirdparty-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  version: '6'
  x-publicVersion: true
  title: Adyen Account acceptDispute storeDetailAndSubmitThirdParty 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: storeDetailAndSubmitThirdParty
paths:
  /storeDetailAndSubmitThirdParty:
    post:
      tags:
      - storeDetailAndSubmitThirdParty
      summary: Adyen Store Details and Submit a Payout
      description: 'Submits a payout and stores its details for subsequent payouts.


        The submitted payout must be confirmed or declined either by a reviewer or via `/confirmThirdParty` or `/declineThirdParty` calls.'
      x-addedInVersion: '10'
      operationId: post-storeDetailAndSubmitThirdParty
      x-sortIndex: 1
      x-methodName: storeDetailAndSubmitThirdParty
      security:
      - BasicAuth: []
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              storeDetailAndSubmitThirdParty:
                $ref: '#/components/examples/post-storeDetailAndSubmitThirdParty-storeDetailAndSubmitThirdParty'
              storeDetailAndSubmitThirdParty-Neteller:
                $ref: '#/components/examples/post-storeDetailAndSubmitThirdParty-storeDetailAndSubmitThirdParty-Neteller'
              storeDetailAndSubmitThirdParty-PayPal:
                $ref: '#/components/examples/post-storeDetailAndSubmitThirdParty-storeDetailAndSubmitThirdParty-PayPal'
              storeDetailAndSubmitThirdParty-Paysafecard:
                $ref: '#/components/examples/post-storeDetailAndSubmitThirdParty-storeDetailAndSubmitThirdParty-Paysafecard'
              storeDetailAndSubmitThirdParty-Skrill:
                $ref: '#/components/examples/post-storeDetailAndSubmitThirdParty-storeDetailAndSubmitThirdParty-Skrill'
            schema:
              $ref: '#/components/schemas/StoreDetailAndSubmitRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StoreDetailAndSubmitResponse'
              examples:
                post-storeDetailAndSubmitThirdParty200Example:
                  summary: Default post-storeDetailAndSubmitThirdParty 200 response
                  x-microcks-default: true
                  value:
                    additionalData: {}
                    pspReference: REF-001
                    refusalReason: REF-001
                    resultCode: CODE123
          description: OK - the request has succeeded.
        '400':
          content:
            application/json:
              examples:
                generic:
                  $ref: '#/components/examples/generic-400'
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Bad Request - a problem reading or understanding the request.
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
              examples:
                post-storeDetailAndSubmitThirdParty401Example:
                  summary: Default post-storeDetailAndSubmitThirdParty 401 response
                  x-microcks-default: true
                  value:
                    additionalData: {}
                    errorCode: CODE123
                    errorType: standard
                    message: example_value
                    pspReference: REF-001
                    status: 500
          description: Unauthorized - authentication required.
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
              examples:
                post-storeDetailAndSubmitThirdParty403Example:
                  summary: Default post-storeDetailAndSubmitThirdParty 403 response
                  x-microcks-default: true
                  value:
                    additionalData: {}
                    errorCode: CODE123
                    errorType: standard
                    message: example_value
                    pspReference: REF-001
                    status: 500
          description: Forbidden - insufficient permissions to process the request.
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
              examples:
                post-storeDetailAndSubmitThirdParty422Example:
                  summary: Default post-storeDetailAndSubmitThirdParty 422 response
                  x-microcks-default: true
                  value:
                    additionalData: {}
                    errorCode: CODE123
                    errorType: standard
                    message: example_value
                    pspReference: REF-001
                    status: 500
          description: Unprocessable Entity - a request validation error.
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
              examples:
                post-storeDetailAndSubmitThirdParty500Example:
                  summary: Default post-storeDetailAndSubmitThirdParty 500 response
                  x-microcks-default: true
                  value:
                    additionalData: {}
                    errorCode: CODE123
                    errorType: standard
                    message: example_value
                    pspReference: REF-001
                    status: 500
          description: Internal Server Error - the server could not process the request.
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  examples:
    post-storeDetailAndSubmitThirdParty-storeDetailAndSubmitThirdParty-Skrill:
      summary: Submit a payout to Skrill
      description: Submit a payout to Skrill and stores its details for subsequent payouts
      value:
        amount:
          currency: EUR
          value: 100
        selectedBrand: moneybookers
        additionalData:
          tokenDataType: MoneyBookers
          email: name@adyen.com
        shopperName:
          firstName: Test
          gender: FEMALE
          lastName: Test2
        dateOfBirth: '1982-07-17'
        entityType: NaturalPerson
        nationality: NL
        merchantAccount: YOUR_MERCHANT_ACCOUNT
        recurring:
          contract: PAYOUT
        reference: Test Payout
        shopperEmail: test@company.com
        shopperReference: YOUR_UNIQUE_SHOPPER_ID
    post-storeDetailAndSubmitThirdParty-storeDetailAndSubmitThirdParty-Neteller:
      summary: Submit a payout to Neteller
      description: Submit a payout to Neteller and stores its details for subsequent payouts
      value:
        amount:
          currency: EUR
          value: 100
        selectedBrand: neteller
        additionalData:
          tokenDataType: Neteller
          account: myNetellerAccount
        shopperName:
          firstName: Test
          gender: FEMALE
          lastName: Test2
        dateOfBirth: '1982-07-17'
        entityType: NaturalPerson
        nationality: NL
        merchantAccount: YOUR_MERCHANT_ACCOUNT
        recurring:
          contract: PAYOUT
        reference: Test Payout
        shopperEmail: test@company.com
        shopperReference: YOUR_SHOPPER_REFERENCE
    post-storeDetailAndSubmitThirdParty-storeDetailAndSubmitThirdParty:
      summary: Submit a payout and stores details
      description: Submit a payout and stores its details for subsequent payouts
      value:
        merchantAccount: YOUR_MERCHANT_ACCOUNT
        recurring:
          contract: PAYOUT
        amount:
          value: 2000
          currency: EUR
        bank:
          bankName: Commerzbank
          iban: DE87123456781234567890
          countryCode: DE
          ownerName: Simon Hopper
        reference: Your Reference Here
        shopperEmail: s.hopper@test.com
        shopperIP: 61.294.12.12
        shopperReference: YOUR_SHOPPER_REFERENCE
        shopperName:
          firstName: Adyen
          gender: MALE
          lastName: Test
        dateOfBirth: '1990-01-01'
        entityType: Company
        nationality: NL
    post-storeDetailAndSubmitThirdParty-storeDetailAndSubmitThirdParty-Paysafecard:
      summary: Submit a payout to Paysafecard
      description: Submit a payout to Paysafecard and stores its details for subsequent payouts
      value:
        amount:
          currency: EUR
          value: 1000
        selectedBrand: paysafecard
        additionalData:
          emailId: EmailUsedForPaysafecardAccount@example.com
        shopperName:
          firstName: Test
          gender: MALE
          lastName: Test2
        dateOfBirth: '1982-07-17'
        entityType: NaturalPerson
        nationality: NL
        merchantAccount: YOUR_MERCHANT_ACCOUNT
        recurring:
          contract: PAYOUT
        reference: Test Payout
        shopperEmail: test@company.com
        shopperReference: YOUR_UNIQUE_SHOPPER_ID
        shopperIP: 61.294.12.12
    generic-400:
      summary: Response code 400. Bad Request.
      value:
        status: 400
        errorCode: '702'
        message: 'Unexpected input: I'
        errorType: validation
    post-storeDetailAndSubmitThirdParty-storeDetailAndSubmitThirdParty-PayPal:
      summary: Submit a payout to PayPal
      description: Submit a payout to PayPal and stores its details for subsequent payouts
      value:
        amount:
          currency: EUR
          value: 1750
        selectedBrand: paypal
        additionalData:
          tokenDataType: PayPal
          emailId: EmailUsedForPayPalAccount@example.com
          paypal.payerId: AK5HCWWRUV2KL
        shopperName:
          firstName: Test
          gender: FEMALE
          lastName: Test2
        dateOfBirth: '1982-07-17'
        entityType: NaturalPerson
        nationality: NL
        merchantAccount: YOUR_MERCHANT_ACCOUNT
        recurring:
          contract: PAYOUT
        reference: Test Payout
        shopperEmail: test@company.com
        shopperReference: YOUR_UNIQUE_SHOPPER_ID
  schemas:
    StoreDetailAndSubmitResponse:
      properties:
        additionalData:
          additionalProperties:
            type: string
          description: This field contains additional data, which may be returned in a particular response.
          type: object
        pspReference:
          description: A new reference to uniquely identify this request.
          type: string
        refusalReason:
          description: In case of refusal, an informational message for the reason.
          type: string
        resultCode:
          description: 'The response:


            * In case of success is payout-submit-received.

            * In case of an error, an informational message is returned.'
          type: string
      required:
      - pspReference
      - resultCode
      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:

            * CVV2/CVC2 – length: 3 digits

            * CID – length: 4 digits

            > 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.

            > This field must be always present in a [one-click payment request](https://docs.adyen.com/classic-integration/recurring-payments).

            > 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.

            Format: 2 digits, zero-padded for single digits. For example:

            * 03 = March

            * 11 = November'
          maxLength: 2
          minLength: 1
          type: string
        expiryYear:
          description: 'The card expiry year.

            Format: 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.

            When 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
    Amount:
      properties:
        currency:
          description: The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).
          maxLength: 3
          minLength: 3
          type: string
        value:
          description: The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes).
          format: int64
          type: integer
      required:
      - value
      - currency
      type: object
    StoreDetailAndSubmitRequest:
      properties:
        additionalData:
          additionalProperties:
            type: string
          description: This field contains additional data, which may be required for a particular request.
          type: object
        amount:
          description: A container object for the payable amount information of the transaction.
          $ref: '#/components/schemas/Amount'
        bank:
          description: 'A container for bank account data.

            > This field is mandatory if `card` is not provided.'
          $ref: '#/components/schemas/BankAccount'
        billingAddress:
          x-addedInVersion: '18'
          description: 'The billing address.


            > The `billingAddress` object is required for cross-border payouts to and from Canada. Include all of the fields within this object.'
          $ref: '#/components/schemas/Address'
        card:
          description: 'A container for card data.

            > This field is mandatory if `bank` is not provided.'
          $ref: '#/components/schemas/Card'
        dateOfBirth:
          x-addedInVersion: '24'
          description: 'The date of birth.

            Format: [ISO-8601](https://www.w3.org/TR/NOTE-datetime); example: YYYY-MM-DD

            For Paysafecard it must be the same as used when registering the Paysafecard account.

            > This field is mandatory for natural persons.'
          format: date
          type: string
        entityType:
          x-addedInVersion: '24'
          description: The type of the entity the payout is processed for.
          enum:
          - NaturalPerson
          - Company
          type: string
        fraudOffset:
          description: An integer value that is added to the normal fraud score. The value can be either positive or negative.
          format: int32
          type: integer
        merchantAccount:
          description: The merchant account identifier, with which you want to process the transaction.
          type: string
        nationality:
          x-addedInVersion: '24'
          description: 'The shopper''s nationality.


            A valid value is an ISO 2-character country code (e.g. ''NL'').'
          maxLength: 2
          type: string
        recurring:
          description: 'A container for the type of recurring contract to be retrieved.


            The recurring.contract must be set to `PAYOUT`'
          $ref: '#/components/schemas/Recurring'
        reference:
          description: The merchant reference for this payment. This reference will be used in all communication to the merchant about the status of the payout. Although it is a good idea to make sure it is unique, this is not a requirement.
          type: string
        selectedBrand:
          x-addedInVersion: '24'
          description: 'The name of the brand to make a payout to.


            For Paysafecard it must be set to `paysafecard`.'
          type: string
        shopperEmail:
          description: The shopper's email address.
          type: string
        shopperName:
          x-addedInVersion: '24'
          description: 'The shopper''s name.


            When the `entityType` is `Company`, the `shopperName.lastName` must contain the company name.'
          $ref: '#/components/schemas/Name'
        shopperReference:
          description: The shopper's reference for the payment transaction.
          type: string
        shopperStatement:
          x-addedInVersion: '2'
          description: The description of this payout. This description is shown on the bank statement of the shopper (if this is supported by the chosen payment method).
          type: string
        socialSecurityNumber:
          x-addedInVersion: '24'
          description: The shopper's social security number.
          type: string
        telephoneNumber:
          x-addedInVersion: '52'
          description: The shopper's phone number.
          type: string
      required:
      - merchantAccount
      - shopperEmail
      - shopperReference
      - recurring
      - dateOfBirth
      - nationality
      - entityType
      - reference
      - amount
      type: object
    ServiceError:
      properties:
        additionalData:
          x-addedInVersion: '46'
          additionalProperties:
            type: string
          description: Contains additional information about the payment. Some data fields are included only if you select them first. Go to **Customer Area** > **Developers** > **Additional data**.
          type: object
        errorCode:
          description: The error code mapped to the error message.
          type: string
        errorType:
          description: The category of the error.
          type: string
        message:
          description: A short explanation of the issue.
          type: string
        pspReference:
          description: The PSP reference of the payment.
          type: string
        status:
          description: The HTTP response status.
          format: int32
          type: integer
      type: object
    Name:
      properties:
        firstName:
          description: The first name.
          type: string
        lastName:
          description: The last name.
          type: string
      required:
      - firstName
      - lastName
      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.


            A 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.

            If 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:

            * χ12 is converted to ch12.

            * üA is converted to euA.

            * Peter Møller is converted to Peter Mller, because banks don''t accept ''ø''.

            After 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:

            * John17 - allowed.

            * J17 - allowed.

            * 171 - not allowed.

            * John-7 - allowed.

            > 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
    Recurring:
      properties:
        contract:
          description: 'The type of recurring contract to be used.

            Possible values:

            * `ONECLICK` – Payment details can be used to initiate a one-click payment, where the shopper enters the [card security code (CVC/CVV)](https://docs.adyen.com/payments-fundamentals/payment-glossary#card-security-code-cvc-cvv-cid).

            * `RECURRING` – Payment details can be used without the card security code to initiate [card-not-present transactions](https://docs.adyen.com/payments-fundamentals/payment-glossary#card-not-present-cnp).

            * `ONECLICK,RECURRING` – Payment details can be used regardless of whether the shopper is on your site or not.

            * `PAYOUT` – Payment details can be used to [make a payout](https://docs.adyen.com/online-payments/online-payouts).'
          enum:
          - ONECLICK
          - RECURRING
          - PAYOUT
          type: string
        recurringDetailName:
          description: A descriptive name for this detail.
          type: string
        recurringExpiry:
          x-addedInVersion: '40'
          description: Date after which no further authorisations shall be performed. Only for 3D Secure 2.
          format: date-time
          type: string
        recurringFrequency:
          x-addedInVersion: '40'
          description: Minimum number of days between authorisations. Only for 3D Secure 2.
          type: string
        tokenService:
          x-addedInVersion: '25'
          description: The name of the token service.
          enum:
          - VISATOKENSERVICE
          - MCTOKENSERVICE
          - AMEXTOKENSERVICE
          - TOKEN_SHARING
          type: string
      type: object
    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**.

            > 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.

            > Required for the US and Canada.'
          type: string
        street:
          description: 'The name of the street. Maximum length: 3000 characters.

            > 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
  securitySchemes:
    ApiKeyAuth:
      in: header
      name: X-API-Key
      type: apiKey
    BasicAuth:
      scheme: basic
      type: http
x-groups:
- Account holders
- Accounts
- Verification