{
   "openapi" : "3.1.0",
   "servers" : [
      {
         "url" : "https://pal-test.adyen.com/pal/servlet/Payout/v52"
      }
   ],
   "info" : {
      "version" : "52",
      "x-publicVersion" : true,
      "title" : "Adyen Payout API",
      "description" : "> The **Payout API is deprecated** and no longer supports new integrations. Do one of the following:\n>- If you are building a new integration, use the [Transfers API](https://docs.adyen.com/api-explorer/transfers/latest/overview) instead.\n> - If you are already using the Payout API, reach out to your Adyen contact to learn how to migrate to the Transfers API.\n>\n> With the Transfers API, you can:\n> - Handle multiple payout use cases with a single API.\n> - Use new payout functionalities, such as instant payouts to bank accounts.\n> - Receive webhooks with more details and defined transfer states.\n>\n> For more information about the payout features of the Transfers API, see our [Payouts](https://docs.adyen.com/payouts/payout-service) documentation.\n\n\nA set of API endpoints that allow you to store payout details, confirm, or decline a payout.\n\nFor more information, refer to [Online payouts](https://docs.adyen.com/online-payments/online-payouts).\n## Authentication\nTo use the Payout API, you need to have [two API credentials](https://docs.adyen.com/online-payments/online-payouts#payouts-to-bank-accounts-and-wallets): one for storing payout details and submitting payouts, and another one for confirming or declining payouts. If you don't have the required API credentials, contact our [Support Team](https://www.adyen.help/hc/en-us/requests/new).\n\nIf using an API key, 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](https://docs.adyen.com/development-resources/api-credentials#basic-authentication).\n\nThe following example shows how to authenticate your request with basic authentication when submitting a payout:\n\n```\ncurl\n-U \"storePayout@Company.YOUR_COMPANY_ACCOUNT\":\"YOUR_BASIC_AUTHENTICATION_PASSWORD\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\n\n## Versioning\nPayments 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://pal-test.adyen.com/pal/servlet/Payout/v52/payout\n```\n\n## Going live\n\nTo authenticate to the live endpoints, you need [API credentials](https://docs.adyen.com/development-resources/api-credentials) from your live Customer Area.\n\nThe live endpoint URLs contain a prefix which is unique to your company account:\n```\n\nhttps://{PREFIX}-pal-live.adyenpayments.com/pal/servlet/Payout/v52/payout\n```\n\nGet your `{PREFIX}` from your live Customer Area under **Developers** > **API URLs** > **Prefix**.",
      "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions",
      "contact" : {
         "name" : "Adyen Developer Experience team",
         "url" : "https://github.com/Adyen/adyen-openapi"
      }
   },
   "tags" : [
      {
         "name" : "Initialization"
      },
      {
         "name" : "Reviewing"
      },
      {
         "name" : "Instant payouts"
      }
   ],
   "paths" : {
      "/confirmThirdParty" : {
         "post" : {
            "tags" : [
               "Reviewing"
            ],
            "summary" : "Confirm a payout",
            "description" : "> This endpoint is **deprecated** and no longer supports new integrations. Do one of the following:\n>- If you are building a new integration, use the [Transfers API](https://docs.adyen.com/api-explorer/transfers/latest/overview) instead.\n> - If you are already using the Payout API, reach out to your Adyen contact to learn how to migrate to the Transfers API.\n>\n> With the Transfers API, you can:\n> - Handle multiple payout use cases with a single API.\n> - Use new payout functionalities, such as instant payouts to bank accounts.\n> - Receive webhooks with more details and defined transfer states.\n>\n> For more information about the payout features of the Transfers API, see our [Payouts](https://docs.adyen.com/payouts/payout-service) documentation.\n\n\nConfirms a previously submitted payout.\n\nTo cancel a payout, use the `/declineThirdParty` endpoint.",
            "x-addedInVersion" : "10",
            "operationId" : "post-confirmThirdParty",
            "x-sortIndex" : 1,
            "x-methodName" : "confirmThirdParty",
            "security" : [
               {
                  "BasicAuth" : [
                     ]
               },
               {
                  "ApiKeyAuth" : [
                     ]
               }
            ],
            "requestBody" : {
               "content" : {
                  "application/json" : {
                     "examples" : {
                        "confirmThirdParty" : {
                           "$ref" : "#/components/examples/post-confirmThirdParty-confirmThirdParty"
                        }
                     },
                     "schema" : {
                        "$ref" : "#/components/schemas/ModifyRequest"
                     }
                  }
               }
            },
            "responses" : {
               "200" : {
                  "content" : {
                     "application/json" : {
                        "examples" : {
                           "confirmThirdParty" : {
                              "$ref" : "#/components/examples/post-confirmThirdParty-confirmThirdParty-200"
                           }
                        },
                        "schema" : {
                           "$ref" : "#/components/schemas/ModifyResponse"
                        }
                     }
                  },
                  "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"
                        }
                     }
                  },
                  "description" : "Unauthorized - authentication required."
               },
               "403" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/ServiceError"
                        }
                     }
                  },
                  "description" : "Forbidden - insufficient permissions to process the request."
               },
               "422" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/ServiceError"
                        }
                     }
                  },
                  "description" : "Unprocessable Entity - a request validation error."
               },
               "500" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/ServiceError"
                        }
                     }
                  },
                  "description" : "Internal Server Error - the server could not process the request."
               }
            }
         }
      },
      "/declineThirdParty" : {
         "post" : {
            "tags" : [
               "Reviewing"
            ],
            "summary" : "Cancel a payout",
            "description" : "> This endpoint is **deprecated** and no longer supports new integrations. Do one of the following:\n>- If you are building a new integration, use the [Transfers API](https://docs.adyen.com/api-explorer/transfers/latest/overview) instead.\n> - If you are already using the Payout API, reach out to your Adyen contact to learn how to migrate to the Transfers API.\n>\n> With the Transfers API, you can:\n> - Handle multiple payout use cases with a single API.\n> - Use new payout functionalities, such as instant payouts to bank accounts.\n> - Receive webhooks with more details and defined transfer states.\n>\n> For more information about the payout features of the Transfers API, see our [Payouts](https://docs.adyen.com/payouts/payout-service) documentation.\n\n\nCancels a previously submitted payout.\n\nTo confirm and send a payout, use the `/confirmThirdParty` endpoint.",
            "x-addedInVersion" : "10",
            "operationId" : "post-declineThirdParty",
            "x-sortIndex" : 2,
            "x-methodName" : "declineThirdParty",
            "security" : [
               {
                  "BasicAuth" : [
                     ]
               },
               {
                  "ApiKeyAuth" : [
                     ]
               }
            ],
            "requestBody" : {
               "content" : {
                  "application/json" : {
                     "examples" : {
                        "declineThirdParty" : {
                           "$ref" : "#/components/examples/post-declineThirdParty-declineThirdParty"
                        }
                     },
                     "schema" : {
                        "$ref" : "#/components/schemas/ModifyRequest"
                     }
                  }
               }
            },
            "responses" : {
               "200" : {
                  "content" : {
                     "application/json" : {
                        "examples" : {
                           "declineThirdParty" : {
                              "$ref" : "#/components/examples/post-declineThirdParty-declineThirdParty-200"
                           }
                        },
                        "schema" : {
                           "$ref" : "#/components/schemas/ModifyResponse"
                        }
                     }
                  },
                  "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"
                        }
                     }
                  },
                  "description" : "Unauthorized - authentication required."
               },
               "403" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/ServiceError"
                        }
                     }
                  },
                  "description" : "Forbidden - insufficient permissions to process the request."
               },
               "422" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/ServiceError"
                        }
                     }
                  },
                  "description" : "Unprocessable Entity - a request validation error."
               },
               "500" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/ServiceError"
                        }
                     }
                  },
                  "description" : "Internal Server Error - the server could not process the request."
               }
            }
         }
      },
      "/payout" : {
         "post" : {
            "tags" : [
               "Instant payouts"
            ],
            "summary" : "Make an instant card payout",
            "description" : "> This endpoint is **deprecated** and no longer supports new integrations. Do one of the following:\n>- If you are building a new integration, use the POST [/transfers](https://docs.adyen.com/api-explorer/transfers/latest/post/transfers) endpoint instead.\n> - If you are already using the Payout API, reach out to your Adyen contact to learn how to migrate to the Transfers API.\n>\n> With the Transfers API, you can:\n> - Handle multiple payout use cases with a single API.\n> - Use new payout functionalities, such as instant payouts to bank accounts.\n> - Receive webhooks with more details and defined transfer states.\n>\n> For more information about the payout features of the Transfers API, see our [Payouts](https://docs.adyen.com/payouts/payout-service) documentation.\n\n\nWith this call, you can pay out to your customers, and funds will be made available within 30 minutes on the cardholder's bank account (this is dependent on whether the issuer supports this functionality). Instant card payouts are only supported for Visa and Mastercard cards.",
            "x-addedInVersion" : "11",
            "operationId" : "post-payout",
            "x-sortIndex" : 1,
            "x-methodName" : "payout",
            "security" : [
               {
                  "BasicAuth" : [
                     ]
               },
               {
                  "ApiKeyAuth" : [
                     ]
               }
            ],
            "requestBody" : {
               "content" : {
                  "application/json" : {
                     "examples" : {
                        "payout-b2c" : {
                           "$ref" : "#/components/examples/post-payout-payout-b2c"
                        },
                        "payout-p2p" : {
                           "$ref" : "#/components/examples/post-payout-payout-p2p"
                        }
                     },
                     "schema" : {
                        "$ref" : "#/components/schemas/PayoutRequest"
                     }
                  }
               }
            },
            "responses" : {
               "200" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/PayoutResponse"
                        }
                     }
                  },
                  "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"
                        }
                     }
                  },
                  "description" : "Unauthorized - authentication required."
               },
               "403" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/ServiceError"
                        }
                     }
                  },
                  "description" : "Forbidden - insufficient permissions to process the request."
               },
               "422" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/ServiceError"
                        }
                     }
                  },
                  "description" : "Unprocessable Entity - a request validation error."
               },
               "500" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/ServiceError"
                        }
                     }
                  },
                  "description" : "Internal Server Error - the server could not process the request."
               }
            }
         }
      },
      "/storeDetail" : {
         "post" : {
            "tags" : [
               "Initialization"
            ],
            "summary" : "Store payout details",
            "description" : "> This endpoint is **deprecated** and no longer supports new integrations. Do one of the following:\n>- If you are building a new integration, use the [Transfers API](https://docs.adyen.com/api-explorer/transfers/latest/overview) instead.\n> - If you are already using the Payout API, reach out to your Adyen contact to learn how to migrate to the Transfers API.\n>\n> With the Transfers API, you can:\n> - Handle multiple payout use cases with a single API.\n> - Use new payout functionalities, such as instant payouts to bank accounts.\n> - Receive webhooks with more details and defined transfer states.\n>\n> For more information about the payout features of the Transfers API, see our [Payouts](https://docs.adyen.com/payouts/payout-service) documentation.\n\n\nStores payment details under the `PAYOUT` recurring contract. These payment details can be used later to submit a payout via the `/submitThirdParty` call.",
            "operationId" : "post-storeDetail",
            "x-sortIndex" : 2,
            "x-methodName" : "storeDetail",
            "security" : [
               {
                  "BasicAuth" : [
                     ]
               },
               {
                  "ApiKeyAuth" : [
                     ]
               }
            ],
            "requestBody" : {
               "content" : {
                  "application/json" : {
                     "examples" : {
                        "storeDetail" : {
                           "$ref" : "#/components/examples/post-storeDetail-storeDetail"
                        }
                     },
                     "schema" : {
                        "$ref" : "#/components/schemas/StoreDetailRequest"
                     }
                  }
               }
            },
            "responses" : {
               "200" : {
                  "content" : {
                     "application/json" : {
                        "examples" : {
                           "storeDetail" : {
                              "$ref" : "#/components/examples/post-storeDetail-storeDetail-200"
                           }
                        },
                        "schema" : {
                           "$ref" : "#/components/schemas/StoreDetailResponse"
                        }
                     }
                  },
                  "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"
                        }
                     }
                  },
                  "description" : "Unauthorized - authentication required."
               },
               "403" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/ServiceError"
                        }
                     }
                  },
                  "description" : "Forbidden - insufficient permissions to process the request."
               },
               "422" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/ServiceError"
                        }
                     }
                  },
                  "description" : "Unprocessable Entity - a request validation error."
               },
               "500" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/ServiceError"
                        }
                     }
                  },
                  "description" : "Internal Server Error - the server could not process the request."
               }
            }
         }
      },
      "/storeDetailAndSubmitThirdParty" : {
         "post" : {
            "tags" : [
               "Initialization"
            ],
            "summary" : "Store details and submit a payout",
            "description" : "> This endpoint is **deprecated** and no longer supports new integrations. Do one of the following:\n>- If you are building a new integration, use the POST [/transfers](https://docs.adyen.com/api-explorer/transfers/latest/post/transfers) endpoint instead.\n> - If you are already using the Payout API, reach out to your Adyen contact to learn how to migrate to the Transfers API.\n>\n> With the Transfers API, you can:\n> - Handle multiple payout use cases with a single API.\n> - Use new payout functionalities, such as instant payouts to bank accounts.\n> - Receive webhooks with more details and defined transfer states.\n>\n> For more information about the payout features of the Transfers API, see our [Payouts](https://docs.adyen.com/payouts/payout-service) documentation.\n\n\nSubmits a payout and stores its details for subsequent payouts.\n\nThe 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"
                        }
                     }
                  },
                  "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"
                        }
                     }
                  },
                  "description" : "Unauthorized - authentication required."
               },
               "403" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/ServiceError"
                        }
                     }
                  },
                  "description" : "Forbidden - insufficient permissions to process the request."
               },
               "422" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/ServiceError"
                        }
                     }
                  },
                  "description" : "Unprocessable Entity - a request validation error."
               },
               "500" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/ServiceError"
                        }
                     }
                  },
                  "description" : "Internal Server Error - the server could not process the request."
               }
            }
         }
      },
      "/submitThirdParty" : {
         "post" : {
            "tags" : [
               "Initialization"
            ],
            "summary" : "Submit a payout",
            "description" : "> This endpoint is **deprecated** and no longer supports new integrations. Do one of the following:\n>- If you are building a new integration, use the POST [/transfers](https://docs.adyen.com/api-explorer/transfers/latest/post/transfers) endpoint instead.\n> - If you are already using the Payout API, reach out to your Adyen contact to learn how to migrate to the Transfers API.\n>\n> With the Transfers API, you can:\n> - Handle multiple payout use cases with a single API.\n> - Use new payout functionalities, such as instant payouts to bank accounts.\n> - Receive webhooks with more details and defined transfer states.\n>\n> For more information about the payout features of the Transfers API, see our [Payouts](https://docs.adyen.com/payouts/payout-service) documentation.\n\n\nSubmits a payout using the previously stored payment details. To store payment details, use the `/storeDetail` API call.\n\nThe submitted payout must be confirmed or declined either by a reviewer or via `/confirmThirdParty` or `/declineThirdParty` calls.",
            "x-addedInVersion" : "10",
            "operationId" : "post-submitThirdParty",
            "x-sortIndex" : 3,
            "x-methodName" : "submitThirdParty",
            "security" : [
               {
                  "BasicAuth" : [
                     ]
               },
               {
                  "ApiKeyAuth" : [
                     ]
               }
            ],
            "requestBody" : {
               "content" : {
                  "application/json" : {
                     "examples" : {
                        "submitThirdParty" : {
                           "$ref" : "#/components/examples/post-submitThirdParty-submitThirdParty"
                        }
                     },
                     "schema" : {
                        "$ref" : "#/components/schemas/SubmitRequest"
                     }
                  }
               }
            },
            "responses" : {
               "200" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/SubmitResponse"
                        }
                     }
                  },
                  "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"
                        }
                     }
                  },
                  "description" : "Unauthorized - authentication required."
               },
               "403" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/ServiceError"
                        }
                     }
                  },
                  "description" : "Forbidden - insufficient permissions to process the request."
               },
               "422" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/ServiceError"
                        }
                     }
                  },
                  "description" : "Unprocessable Entity - a request validation error."
               },
               "500" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/ServiceError"
                        }
                     }
                  },
                  "description" : "Internal Server Error - the server could not process the request."
               }
            }
         }
      }
   },
   "components" : {
      "schemas" : {
         "Address" : {
            "additionalProperties" : false,
            "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"
         },
         "Amount" : {
            "additionalProperties" : false,
            "properties" : {
               "currency" : {
                  "description" : "The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#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#minor-units).",
                  "format" : "int64",
                  "type" : "integer"
               }
            },
            "required" : [
               "value",
               "currency"
            ],
            "type" : "object"
         },
         "BankAccount" : {
            "additionalProperties" : false,
            "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" : {
            "additionalProperties" : false,
            "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"
         },
         "FraudCheckResult" : {
            "additionalProperties" : false,
            "properties" : {
               "accountScore" : {
                  "description" : "The fraud score generated by the risk check.",
                  "format" : "int32",
                  "type" : "integer"
               },
               "checkId" : {
                  "description" : "The ID of the risk check.",
                  "format" : "int32",
                  "type" : "integer"
               },
               "name" : {
                  "description" : "The name of the risk check.",
                  "type" : "string"
               }
            },
            "required" : [
               "checkId",
               "name",
               "accountScore"
            ],
            "type" : "object"
         },
         "FraudCheckResultWrapper" : {
            "properties" : {
               "FraudCheckResult" : {
                  "$ref" : "#/components/schemas/FraudCheckResult"
               }
            }
         },
         "FraudResult" : {
            "additionalProperties" : false,
            "properties" : {
               "accountScore" : {
                  "description" : "The total fraud score generated by the risk checks.",
                  "format" : "int32",
                  "type" : "integer"
               },
               "results" : {
                  "description" : "The result of the individual risk checks.",
                  "items" : {
                     "$ref" : "#/components/schemas/FraudCheckResultWrapper"
                  },
                  "type" : "array"
               }
            },
            "required" : [
               "accountScore"
            ],
            "type" : "object"
         },
         "FundSource" : {
            "additionalProperties" : false,
            "properties" : {
               "additionalData" : {
                  "additionalProperties" : {
                     "type" : "string"
                  },
                  "description" : "A map of name-value pairs for passing additional or industry-specific data.",
                  "type" : "object"
               },
               "billingAddress" : {
                  "description" : "The address where to send the invoice.",
                  "$ref" : "#/components/schemas/Address"
               },
               "card" : {
                  "description" : "Credit card data.\n\nOptional if `shopperReference` and `selectedRecurringDetailReference` are provided.",
                  "$ref" : "#/components/schemas/Card"
               },
               "shopperEmail" : {
                  "description" : "Email address of the person.",
                  "type" : "string"
               },
               "shopperName" : {
                  "description" : "Name of the person.",
                  "$ref" : "#/components/schemas/Name"
               },
               "telephoneNumber" : {
                  "description" : "Phone number of the person",
                  "type" : "string"
               }
            },
            "type" : "object"
         },
         "ModifyRequest" : {
            "additionalProperties" : false,
            "properties" : {
               "additionalData" : {
                  "additionalProperties" : {
                     "type" : "string"
                  },
                  "description" : "This field contains additional data, which may be required for a particular payout request.",
                  "type" : "object"
               },
               "merchantAccount" : {
                  "description" : "The merchant account identifier, with which you want to process the transaction.",
                  "type" : "string"
               },
               "originalReference" : {
                  "description" : "The PSP reference received in the `/submitThirdParty` response.",
                  "type" : "string"
               }
            },
            "required" : [
               "merchantAccount",
               "originalReference"
            ],
            "type" : "object"
         },
         "ModifyResponse" : {
            "additionalProperties" : false,
            "properties" : {
               "additionalData" : {
                  "additionalProperties" : {
                     "type" : "string"
                  },
                  "description" : "This field contains additional data, which may be returned in a particular response.",
                  "type" : "object"
               },
               "pspReference" : {
                  "description" : "Adyen's 16-character string reference associated with the transaction. This value is globally unique; quote it when communicating with us about this response.",
                  "type" : "string"
               },
               "response" : {
                  "description" : "The response:\n* In case of success, it is either `payout-confirm-received` or `payout-decline-received`.\n* In case of an error, an informational message is returned.",
                  "type" : "string"
               }
            },
            "required" : [
               "pspReference",
               "response"
            ],
            "type" : "object"
         },
         "Name" : {
            "additionalProperties" : false,
            "properties" : {
               "firstName" : {
                  "description" : "The first name.",
                  "maxLength" : 80,
                  "type" : "string"
               },
               "lastName" : {
                  "description" : "The last name.",
                  "maxLength" : 80,
                  "type" : "string"
               }
            },
            "required" : [
               "firstName",
               "lastName"
            ],
            "type" : "object"
         },
         "PayoutRequest" : {
            "additionalProperties" : false,
            "properties" : {
               "amount" : {
                  "description" : "The amount information for the transaction (in [minor units](https://docs.adyen.com/development-resources/currency-codes)). For [BIN or card verification](https://docs.adyen.com/payment-methods/cards/bin-data-and-card-verification) requests, set amount to 0 (zero).",
                  "$ref" : "#/components/schemas/Amount"
               },
               "billingAddress" : {
                  "x-addedInVersion" : "4",
                  "description" : "The address where to send the invoice.\n> The `billingAddress` object is required in the following scenarios. Include all of the fields within this object.\n>* For 3D Secure 2 transactions in all browser-based and mobile implementations.\n>* For cross-border payouts to and from Canada.",
                  "$ref" : "#/components/schemas/Address"
               },
               "card" : {
                  "description" : "A container for card data.\n> Either `bankAccount` or `card` field must be provided in a payment request.",
                  "$ref" : "#/components/schemas/Card"
               },
               "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"
               },
               "fundSource" : {
                  "x-addedInVersion" : "64",
                  "description" : "The person or entity funding the money.",
                  "$ref" : "#/components/schemas/FundSource"
               },
               "merchantAccount" : {
                  "description" : "The merchant account identifier, with which you want to process the transaction.",
                  "type" : "string"
               },
               "recurring" : {
                  "description" : "The recurring settings for the payment. Use this property when you want to enable [recurring payments](https://docs.adyen.com/classic-integration/recurring-payments).",
                  "$ref" : "#/components/schemas/Recurring"
               },
               "reference" : {
                  "description" : "The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement.\nIf you need to provide multiple references for a transaction, separate them with hyphens (\"-\").\nMaximum length: 80 characters.",
                  "type" : "string"
               },
               "selectedRecurringDetailReference" : {
                  "description" : "The `recurringDetailReference` you want to use for this payment. The value `LATEST` can be used to select the most recently stored recurring detail.",
                  "type" : "string"
               },
               "shopperEmail" : {
                  "description" : "The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks.\n> For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations.",
                  "type" : "string"
               },
               "shopperInteraction" : {
                  "description" : "Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer.\nFor the web service API, Adyen assumes Ecommerce shopper interaction by default.\n\nThis field has the following possible values:\n* `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request.\n* `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment).\n* `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone.\n* `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal.",
                  "enum" : [
                     "Ecommerce",
                     "ContAuth",
                     "Moto",
                     "POS"
                  ],
                  "type" : "string"
               },
               "shopperName" : {
                  "x-addedInVersion" : "7",
                  "description" : "The shopper's full name.",
                  "$ref" : "#/components/schemas/Name"
               },
               "shopperReference" : {
                  "description" : "Required for recurring payments. \nYour reference to uniquely identify this shopper, for example user ID or account ID. The value is case-sensitive and must be at least three characters.\n> Your reference must not include personally identifiable information (PII) such as name or email address.",
                  "type" : "string"
               },
               "telephoneNumber" : {
                  "x-addedInVersion" : "7",
                  "description" : "The shopper's telephone number.",
                  "type" : "string"
               }
            },
            "required" : [
               "merchantAccount",
               "reference",
               "amount"
            ],
            "type" : "object"
         },
         "PayoutResponse" : {
            "additionalProperties" : false,
            "properties" : {
               "additionalData" : {
                  "additionalProperties" : {
                     "type" : "string"
                  },
                  "x-anyOf" : [
                     {
                        "$ref" : "#/components/schemas/ResponseAdditionalData3DSecure"
                     },
                     {
                        "$ref" : "#/components/schemas/ResponseAdditionalDataBillingAddress"
                     },
                     {
                        "$ref" : "#/components/schemas/ResponseAdditionalDataCard"
                     },
                     {
                        "$ref" : "#/components/schemas/ResponseAdditionalDataCommon"
                     },
                     {
                        "$ref" : "#/components/schemas/ResponseAdditionalDataDomesticError"
                     },
                     {
                        "$ref" : "#/components/schemas/ResponseAdditionalDataInstallments"
                     },
                     {
                        "$ref" : "#/components/schemas/ResponseAdditionalDataNetworkTokens"
                     },
                     {
                        "$ref" : "#/components/schemas/ResponseAdditionalDataOpi"
                     },
                     {
                        "$ref" : "#/components/schemas/ResponseAdditionalDataSepa"
                     }
                  ],
                  "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"
               },
               "authCode" : {
                  "description" : "Authorisation code:\n* When the payment is authorised successfully, this field holds the authorisation code for the payment.\n* When the payment is not authorised, this field is empty.",
                  "type" : "string"
               },
               "dccAmount" : {
                  "description" : "Includes the currency of the conversion and the value of the transaction.\n> This value only applies if you have implemented Dynamic Currency Conversion. For more information, [contact Support](https://www.adyen.help/hc/en-us/requests/new).",
                  "$ref" : "#/components/schemas/Amount"
               },
               "dccSignature" : {
                  "description" : "Cryptographic signature used to verify `dccQuote`.\n> This value only applies if you have implemented Dynamic Currency Conversion. For more information, [contact Support](https://www.adyen.help/hc/en-us/requests/new).",
                  "type" : "string"
               },
               "fraudResult" : {
                  "description" : "The fraud result properties of the payment.",
                  "$ref" : "#/components/schemas/FraudResult"
               },
               "issuerUrl" : {
                  "description" : "The URL to direct the shopper to.\n> In case of SecurePlus, do not redirect a shopper to this URL.",
                  "type" : "string"
               },
               "md" : {
                  "description" : "The payment session.",
                  "maxLength" : 20000,
                  "type" : "string"
               },
               "paRequest" : {
                  "description" : "The 3D request data for the issuer.\n\nIf the value is **CUPSecurePlus-CollectSMSVerificationCode**, collect an SMS code from the shopper and pass it in the `/authorise3D` request. For more information, see [3D Secure](https://docs.adyen.com/classic-integration/3d-secure).",
                  "type" : "string"
               },
               "pspReference" : {
                  "description" : "Adyen's 16-character reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request.",
                  "type" : "string"
               },
               "refusalReason" : {
                  "description" : "If the payment's authorisation is refused or an error occurs during authorisation, this field holds Adyen's mapped reason for the refusal or a description of the error. When a transaction fails, the authorisation response includes `resultCode` and `refusalReason` values.\n\nFor more information, see [Refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons).",
                  "type" : "string"
               },
               "resultCode" : {
                  "description" : "The result of the payment. For more information, see [Result codes](https://docs.adyen.com/online-payments/payment-result-codes).\n\nPossible values:\n\n* **AuthenticationFinished** – The payment has been successfully authenticated with 3D Secure 2. Returned for 3D Secure 2 authentication-only transactions.\n* **AuthenticationNotRequired** – The transaction does not require 3D Secure authentication. Returned for [standalone authentication-only integrations](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only).\n* **Authorised** – The payment was successfully authorised. This state serves as an indicator to proceed with the delivery of goods and services. This is a final state.\n* **Cancelled** – Indicates the payment has been cancelled (either by the shopper or the merchant) before processing was completed. This is a final state.\n* **ChallengeShopper** – The issuer requires further shopper interaction before the payment can be authenticated. Returned for 3D Secure 2 transactions.\n* **Error** – There was an error when the payment was being processed. The reason is given in the `refusalReason` field. This is a final state.\n* **IdentifyShopper** – The issuer requires the shopper's device fingerprint before the payment can be authenticated. Returned for 3D Secure 2 transactions.\n* **PartiallyAuthorised** – The payment has been authorised for a partial amount.\nThis happens for card payments when the merchant supports Partial Authorisations and the cardholder has insufficient funds.\n* **Pending** – Indicates that it is not possible to obtain the final status of the payment. This can happen if the systems providing final status information for the payment are unavailable, or if the shopper needs to take further action to complete the payment.\n* **PresentToShopper** – Indicates that the response contains additional information that you need to present to a shopper, so that they can use it to complete a payment.\n* **Received** – Indicates the payment has successfully been received by Adyen, and will be processed. This is the initial state for all payments.\n* **RedirectShopper** – Indicates the shopper should be redirected to an external web page or app to complete the authorisation.\n* **Refused** – Indicates the payment was refused. The reason is given in the `refusalReason` field. This is a final state.",
                  "enum" : [
                     "AuthenticationFinished",
                     "AuthenticationNotRequired",
                     "Authorised",
                     "Cancelled",
                     "ChallengeShopper",
                     "Error",
                     "IdentifyShopper",
                     "PartiallyAuthorised",
                     "Pending",
                     "PresentToShopper",
                     "Received",
                     "RedirectShopper",
                     "Refused",
                     "Success"
                  ],
                  "type" : "string"
               }
            },
            "type" : "object"
         },
         "Recurring" : {
            "additionalProperties" : false,
            "properties" : {
               "contract" : {
                  "description" : "The type of recurring contract to be used.\nPossible values:\n* `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).\n* `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).\n* `ONECLICK,RECURRING` – Payment details can be used regardless of whether the shopper is on your site or not.\n* `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"
         },
         "ResponseAdditionalData3DSecure" : {
            "additionalProperties" : false,
            "properties" : {
               "cardHolderInfo" : {
                  "description" : "Information provided by the issuer to the cardholder. If this field is present, you need to display this information to the cardholder. ",
                  "type" : "string"
               },
               "cavv" : {
                  "description" : "The Cardholder Authentication Verification Value (CAVV) for the 3D Secure authentication session, as a Base64-encoded 20-byte array.",
                  "type" : "string"
               },
               "cavvAlgorithm" : {
                  "description" : "The CAVV algorithm used.",
                  "type" : "string"
               },
               "scaExemptionRequested" : {
                  "description" : "Shows the [exemption type](https://docs.adyen.com/payments-fundamentals/psd2-sca-compliance-and-implementation-guide#specifypreferenceinyourapirequest) that Adyen requested for the payment.\n\n Possible values:\n* **lowValue** \n* **secureCorporate** \n* **trustedBeneficiary** \n* **transactionRiskAnalysis** ",
                  "type" : "string"
               },
               "threeds2.cardEnrolled" : {
                  "description" : "Indicates whether a card is enrolled for 3D Secure 2.",
                  "type" : "boolean"
               }
            },
            "type" : "object"
         },
         "ResponseAdditionalDataBillingAddress" : {
            "additionalProperties" : false,
            "properties" : {
               "billingAddress.city" : {
                  "description" : "The billing address city passed in the payment request.",
                  "type" : "string"
               },
               "billingAddress.country" : {
                  "description" : "The billing address country passed in the payment request.\n\nExample: NL",
                  "type" : "string"
               },
               "billingAddress.houseNumberOrName" : {
                  "description" : "The billing address house number or name passed in the payment request.",
                  "type" : "string"
               },
               "billingAddress.postalCode" : {
                  "description" : "The billing address postal code passed in the payment request.\n\nExample: 1011 DJ",
                  "type" : "string"
               },
               "billingAddress.stateOrProvince" : {
                  "description" : "The billing address state or province passed in the payment request.\n\nExample: NH",
                  "type" : "string"
               },
               "billingAddress.street" : {
                  "description" : "The billing address street passed in the payment request.",
                  "type" : "string"
               }
            },
            "type" : "object"
         },
         "ResponseAdditionalDataCard" : {
            "additionalProperties" : false,
            "properties" : {
               "cardBin" : {
                  "description" : "The first six digits of the card number.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN.\n\nExample: 521234",
                  "type" : "string"
               },
               "cardHolderName" : {
                  "description" : "The cardholder name passed in the payment request.",
                  "type" : "string"
               },
               "cardIssuingBank" : {
                  "description" : "The bank or the financial institution granting lines of credit through card association branded payment cards. This information can be included when available.",
                  "type" : "string"
               },
               "cardIssuingCountry" : {
                  "description" : "The country where the card was issued.\n\nExample: US",
                  "type" : "string"
               },
               "cardIssuingCurrency" : {
                  "description" : "The currency in which the card is issued, if this information is available. Provided as the currency code or currency number from the ISO-4217 standard. \n\nExample: USD",
                  "type" : "string"
               },
               "cardPaymentMethod" : {
                  "description" : "The card payment method used for the transaction.\n\nExample: amex",
                  "type" : "string"
               },
               "cardProductId" : {
                  "description" : "The Card Product ID represents the type of card following card scheme product definitions and can be returned for Adyen Acquiring service level payments.\n\nPossible values Visa:\n* **A** - Visa Traditional\n* **B** - Visa Traditional Rewards\n* **C** - Visa Signature\n* **D** - Visa Signature Preferred\n* **F** - Visa Classic\n\nPossible values Mastercard:\n* **MCC** - Mastercard Card\n* **MCE** - Mastercard Electronic Card\n* **MCF** - Mastercard Corporate Fleet Card\n* **MCG** - Gold Mastercard Card\n* **MCH** - Mastercard Premium Charge\n* **MCI** - Mastercard Select Debit\n",
                  "enum" : [
                     "A",
                     "B",
                     "C",
                     "D",
                     "F",
                     "MCC",
                     "MCE",
                     "MCF",
                     "MCG",
                     "MCH",
                     "MCI"
                  ],
                  "type" : "string"
               },
               "cardSummary" : {
                  "description" : "The last four digits of a card number.\n\n> Returned only in case of a card payment.",
                  "type" : "string"
               },
               "issuerBin" : {
                  "description" : "The first eight digits of the card number. Only returned if the card number is 16 digits or more.\n\nThis is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN.\n\nExample: 52123423",
                  "type" : "string"
               }
            },
            "type" : "object"
         },
         "ResponseAdditionalDataCommon" : {
            "additionalProperties" : false,
            "properties" : {
               "acquirerAccountCode" : {
                  "description" : "The name of the Adyen acquirer account.\n\nExample: PayPalSandbox_TestAcquirer\n\n> Only relevant for PayPal transactions.",
                  "type" : "string"
               },
               "acquirerCode" : {
                  "description" : "The name of the acquirer processing the payment request.\n\nExample: TestPmmAcquirer",
                  "type" : "string"
               },
               "acquirerReference" : {
                  "description" : "The reference number that can be used for reconciliation in case a non-Adyen acquirer is used for settlement.\n\nExample: 7C9N3FNBKT9",
                  "type" : "string"
               },
               "alias" : {
                  "description" : "The Adyen alias of the card.\n\nExample: H167852639363479",
                  "type" : "string"
               },
               "aliasType" : {
                  "description" : "The type of the card alias.\n\nExample: Default",
                  "type" : "string"
               },
               "authCode" : {
                  "description" : "Authorisation code:\n* When the payment is authorised successfully, this field holds the authorisation code for the payment.\n* When the payment is not authorised, this field is empty.\n\nExample: 58747",
                  "type" : "string"
               },
               "authorisationMid" : {
                  "description" : "Merchant ID known by the acquirer.",
                  "type" : "string"
               },
               "authorisedAmountCurrency" : {
                  "description" : "The currency of the authorised amount, as a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).",
                  "type" : "string"
               },
               "authorisedAmountValue" : {
                  "description" : "Value of the amount authorised.\n\nThis amount is represented in minor units according to the [following table](https://docs.adyen.com/development-resources/currency-codes).",
                  "type" : "string"
               },
               "avsResult" : {
                  "description" : "The AVS result code of the payment, which provides information about the outcome of the AVS check.\n\nFor possible values, see [AVS](https://docs.adyen.com/risk-management/configure-standard-risk-rules/consistency-rules#billing-address-does-not-match-cardholder-address-avs).",
                  "type" : "string"
               },
               "avsResultRaw" : {
                  "description" : "Raw AVS result received from the acquirer, where available.\n\nExample: D",
                  "type" : "string"
               },
               "bic" : {
                  "description" : "BIC of a bank account.\n\nExample: TESTNL01\n\n> Only relevant for SEPA Direct Debit transactions.",
                  "type" : "string"
               },
               "coBrandedWith" : {
                  "description" : "Includes the co-branded card information.",
                  "type" : "string"
               },
               "cvcResult" : {
                  "description" : "The result of CVC verification.",
                  "example" : "1 Matches",
                  "type" : "string"
               },
               "cvcResultRaw" : {
                  "description" : "The raw result of CVC verification.",
                  "example" : "M",
                  "type" : "string"
               },
               "dsTransID" : {
                  "description" : "Supported for 3D Secure 2. The unique transaction identifier assigned by the DS to identify a single transaction.",
                  "type" : "string"
               },
               "eci" : {
                  "description" : "The Electronic Commerce Indicator returned from the schemes for the 3DS payment session.\n\nExample: 02",
                  "type" : "string"
               },
               "expiryDate" : {
                  "description" : "The expiry date on the card.\n\nExample: 6/2016\n\n> Returned only in case of a card payment.",
                  "type" : "string"
               },
               "extraCostsCurrency" : {
                  "description" : "The currency of the extra amount charged due to additional amounts set in the skin used in the HPP payment request.\n\nExample: EUR",
                  "type" : "string"
               },
               "extraCostsValue" : {
                  "description" : "The value of the extra amount charged due to additional amounts set in the skin used in the HPP payment request. The amount is in minor units.",
                  "type" : "string"
               },
               "fraudCheck-[itemNr]-[FraudCheckname]" : {
                  "description" : "The fraud score due to a particular fraud check. The fraud check name is found in the key of the key-value pair.",
                  "type" : "string"
               },
               "fraudManualReview" : {
                  "description" : "Indicates if the payment is sent to manual review.",
                  "type" : "string"
               },
               "fraudResultType" : {
                  "description" : "The fraud result properties of the payment.",
                  "enum" : [
                     "GREEN",
                     "FRAUD"
                  ],
                  "type" : "string"
               },
               "fraudRiskLevel" : {
                  "description" : "The risk level of the transaction as classified by the [machine learning](https://docs.adyen.com/risk-management/configure-your-risk-profile/machine-learning-rules/) fraud risk rule. The risk level indicates the likelihood that a transaction will result in a fraudulent dispute. The possible return values are:\\n* veryLow\\n* low\\n* medium\\n* high\\n* veryHigh\\n\\n>",
                  "enum" : [
                     "veryLow",
                     "low",
                     "medium",
                     "high",
                     "veryHigh"
                  ],
                  "type" : "string"
               },
               "fundingSource" : {
                  "description" : "Information regarding the funding type of the card. The possible return values are:\n* CHARGE\n* CREDIT\n* DEBIT\n* PREPAID\n* PREPAID_RELOADABLE\n\n* PREPAID_NONRELOADABLE\n* DEFFERED_DEBIT\n\n> This functionality requires additional configuration on Adyen's end. To enable it, contact the Support Team.\n\nFor receiving this field in the notification, enable **Include Funding Source** in **Notifications** > **Additional settings**.",
                  "type" : "string"
               },
               "fundsAvailability" : {
                  "description" : "Indicates availability of funds.\n\nVisa:\n* \"I\" (fast funds are supported)\n* \"N\" (otherwise)\n\nMastercard:\n* \"I\" (product type is Prepaid or Debit, or issuing country is in CEE/HGEM list)\n* \"N\" (otherwise)\n\n> Returned when you verify a card BIN or estimate costs, and only if payoutEligible is \"Y\" or \"D\".",
                  "type" : "string"
               },
               "inferredRefusalReason" : {
                  "description" : "Provides the more granular indication of why a transaction was refused. When a transaction fails with either \"Refused\", \"Restricted Card\", \"Transaction Not Permitted\", \"Not supported\" or \"DeclinedNon Generic\" refusalReason from the issuer, Adyen cross references its PSP-wide data for extra insight into the refusal reason. If an inferred refusal reason is available, the `inferredRefusalReason`, field is populated and the `refusalReason`, is set to \"Not Supported\".\n\nPossible values:\n\n* 3D Secure Mandated\n* Closed Account\n* ContAuth Not Supported\n* CVC Mandated\n* Ecommerce Not Allowed\n* Crossborder Not Supported\n* Card Updated\n\n* Low Authrate Bin\n* Non-reloadable prepaid card",
                  "type" : "string"
               },
               "isCardCommercial" : {
                  "description" : "Indicates if the card is used for business purposes only.",
                  "type" : "string"
               },
               "issuerCountry" : {
                  "description" : "The issuing country of the card based on the BIN list that Adyen maintains.\n\nExample: JP",
                  "type" : "string"
               },
               "liabilityShift" : {
                  "description" : "A Boolean value indicating whether a liability shift was offered for this payment.",
                  "type" : "string"
               },
               "mcBankNetReferenceNumber" : {
                  "description" : "The `mcBankNetReferenceNumber`, is a minimum of six characters and a maximum of nine characters long.\n\n> Contact Support Team to enable this field.",
                  "type" : "string"
               },
               "merchantAdviceCode" : {
                  "description" : "The Merchant Advice Code (MAC) can be returned by Mastercard issuers for refused payments. If present, the MAC contains information about why the payment failed, and whether it can be retried.\n\nFor more information see [Mastercard Merchant Advice Codes](https://docs.adyen.com/development-resources/raw-acquirer-responses#mastercard-merchant-advice-codes).",
                  "type" : "string"
               },
               "merchantReference" : {
                  "description" : "The reference provided for the transaction.",
                  "type" : "string"
               },
               "networkTxReference" : {
                  "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"
               },
               "nonScheme.transactionLimit" : {
                  "description" : "The maximum spendable value for a single transaction. Applicable to some gift cards.",
                  "type" : "string"
               },
               "nonScheme.transactionLimitCcy" : {
                  "description" : "The currency of the transaction limit.",
                  "type" : "string"
               },
               "ownerName" : {
                  "description" : "The owner name of a bank account.\n\nOnly relevant for SEPA Direct Debit transactions.",
                  "type" : "string"
               },
               "paymentAccountReference" : {
                  "description" : "The Payment Account Reference (PAR) value links a network token with the underlying primary account number (PAN). The PAR value consists of 29 uppercase alphanumeric characters.",
                  "type" : "string"
               },
               "paymentMethod" : {
                  "description" : "The payment method used in the transaction.",
                  "type" : "string"
               },
               "paymentMethodVariant" : {
                  "description" : "The Adyen sub-variant of the payment method used for the payment request.\n\nFor more information, refer to [PaymentMethodVariant](https://docs.adyen.com/development-resources/paymentmethodvariant).\n\nExample: mcpro",
                  "type" : "string"
               },
               "payoutEligible" : {
                  "description" : "Indicates whether a payout is eligible or not for this card.\n\nVisa:\n* \"Y\"\n* \"N\"\n\nMastercard:\n* \"Y\" (domestic and cross-border)\n\n* \"D\" (only domestic)\n* \"N\" (no MoneySend)\n* \"U\" (unknown)",
                  "type" : "string"
               },
               "realtimeAccountUpdaterStatus" : {
                  "description" : "The response code from the Real Time Account Updater service.\n\nPossible return values are:\n* CardChanged\n* CardExpiryChanged\n* CloseAccount\n\n* ContactCardAccountHolder",
                  "type" : "string"
               },
               "receiptFreeText" : {
                  "description" : "Message to be displayed on the terminal.",
                  "type" : "string"
               },
               "recurring.contractTypes" : {
                  "x-addedInVersion" : "40",
                  "description" : "The recurring contract types applicable to the transaction.",
                  "type" : "string"
               },
               "recurring.firstPspReference" : {
                  "description" : "The `pspReference`, of the first recurring payment that created the recurring detail.\n\nThis functionality requires additional configuration on Adyen's end. To enable it, contact the Support Team.",
                  "type" : "string"
               },
               "recurring.recurringDetailReference" : {
                  "description" : "The reference that uniquely identifies the recurring transaction.",
                  "type" : "string"
               },
               "recurring.shopperReference" : {
                  "x-addedInVersion" : "40",
                  "description" : "The provided reference of the shopper for a recurring transaction.",
                  "type" : "string"
               },
               "recurringProcessingModel" : {
                  "x-addedInVersion" : "40",
                  "description" : "The processing model used for the recurring transaction.",
                  "enum" : [
                     "CardOnFile",
                     "Subscription",
                     "UnscheduledCardOnFile"
                  ],
                  "type" : "string"
               },
               "referred" : {
                  "description" : "If the payment is referred, this field is set to true.\n\nThis field is unavailable if the payment is referred and is usually not returned with ecommerce transactions.\n\nExample: true",
                  "type" : "string"
               },
               "refusalReasonRaw" : {
                  "description" : "Raw refusal reason received from the acquirer, where available.\n\nExample: AUTHORISED",
                  "type" : "string"
               },
               "requestAmount" : {
                  "description" : "The amount of the payment request.",
                  "type" : "string"
               },
               "requestCurrencyCode" : {
                  "description" : "The currency of the payment request.",
                  "type" : "string"
               },
               "shopperInteraction" : {
                  "description" : "The shopper interaction type of the payment request.\n\nExample: Ecommerce",
                  "type" : "string"
               },
               "shopperReference" : {
                  "description" : "The shopperReference passed in the payment request.\n\nExample: AdyenTestShopperXX",
                  "type" : "string"
               },
               "terminalId" : {
                  "description" : "The terminal ID used in a point-of-sale payment.\n\nExample: 06022622",
                  "type" : "string"
               },
               "threeDAuthenticated" : {
                  "description" : "A Boolean value indicating whether 3DS authentication was completed on this payment.\n\nExample: true",
                  "type" : "string"
               },
               "threeDAuthenticatedResponse" : {
                  "description" : "The raw 3DS authentication result from the card issuer.\n\nExample: N",
                  "type" : "string"
               },
               "threeDOffered" : {
                  "description" : "A Boolean value indicating whether 3DS was offered for this payment.\n\nExample: true",
                  "type" : "string"
               },
               "threeDOfferedResponse" : {
                  "description" : "The raw enrollment result from the 3DS directory services of the card schemes.\n\nExample: Y",
                  "type" : "string"
               },
               "threeDSVersion" : {
                  "description" : "The 3D Secure 2 version.",
                  "type" : "string"
               },
               "tokenization.shopperReference" : {
                  "description" : "The reference for the shopper that you sent when tokenizing the payment details.",
                  "type" : "string"
               },
               "tokenization.store.operationType" : {
                  "description" : "The operation performed on the token. Possible values:\n\n* **created**: the token has been created.\n* **updated**: the existing token has been updated.\n* **alreadyExisting**: the details have already been stored.\n",
                  "enum" : [
                     "created",
                     "updated",
                     "alreadyExisting"
                  ],
                  "type" : "string"
               },
               "tokenization.storedPaymentMethodId" : {
                  "description" : "The reference that uniquely identifies tokenized payment details.",
                  "type" : "string"
               },
               "visaTransactionId" : {
                  "description" : "The `visaTransactionId`, has a fixed length of 15 numeric characters.\n\n> Contact Support Team to enable this field.",
                  "type" : "string"
               },
               "xid" : {
                  "description" : "The 3DS transaction ID of the 3DS session sent in notifications. The value is Base64-encoded and is returned for transactions with directoryResponse 'N' or 'Y'. \n\nExample: ODgxNDc2MDg2MDExODk5MAAAAAA=",
                  "type" : "string"
               }
            },
            "type" : "object"
         },
         "ResponseAdditionalDataDomesticError" : {
            "additionalProperties" : false,
            "properties" : {
               "domesticRefusalReasonRaw" : {
                  "description" : "The reason the transaction was declined, given by the local issuer. \nCurrently available for merchants in Japan.",
                  "type" : "string"
               },
               "domesticShopperAdvice" : {
                  "description" : "The action the shopper should take, in a local language. \nCurrently available in Japanese, for merchants in Japan.",
                  "type" : "string"
               }
            },
            "type" : "object"
         },
         "ResponseAdditionalDataInstallments" : {
            "additionalProperties" : false,
            "properties" : {
               "installmentPaymentData.installmentType" : {
                  "description" : "Type of installment. The value of `installmentType` should be **IssuerFinanced**.",
                  "type" : "string"
               },
               "installmentPaymentData.option[itemNr].annualPercentageRate" : {
                  "description" : "Annual interest rate.",
                  "type" : "string"
               },
               "installmentPaymentData.option[itemNr].firstInstallmentAmount" : {
                  "description" : "First Installment Amount in minor units.",
                  "type" : "string"
               },
               "installmentPaymentData.option[itemNr].installmentFee" : {
                  "description" : "Installment fee amount in minor units.",
                  "type" : "string"
               },
               "installmentPaymentData.option[itemNr].interestRate" : {
                  "description" : "Interest rate for the installment period.",
                  "type" : "string"
               },
               "installmentPaymentData.option[itemNr].maximumNumberOfInstallments" : {
                  "description" : "Maximum number of installments possible for this payment.",
                  "type" : "string"
               },
               "installmentPaymentData.option[itemNr].minimumNumberOfInstallments" : {
                  "description" : "Minimum number of installments possible for this payment.",
                  "type" : "string"
               },
               "installmentPaymentData.option[itemNr].numberOfInstallments" : {
                  "description" : "Total number of installments possible for this payment.",
                  "type" : "string"
               },
               "installmentPaymentData.option[itemNr].subsequentInstallmentAmount" : {
                  "description" : "Subsequent Installment Amount in minor units.",
                  "type" : "string"
               },
               "installmentPaymentData.option[itemNr].totalAmountDue" : {
                  "description" : "Total amount in minor units.",
                  "type" : "string"
               },
               "installmentPaymentData.paymentOptions" : {
                  "description" : "Possible values:\n* PayInInstallmentsOnly\n* PayInFullOnly\n* PayInFullOrInstallments",
                  "type" : "string"
               },
               "installments.value" : {
                  "description" : "The number of installments that the payment amount should be charged with.\n\nExample: 5\n> Only relevant for card payments in countries that support installments.",
                  "type" : "string"
               }
            },
            "type" : "object"
         },
         "ResponseAdditionalDataNetworkTokens" : {
            "additionalProperties" : false,
            "properties" : {
               "networkToken.available" : {
                  "description" : "Indicates whether a network token is available for the specified card.",
                  "type" : "string"
               },
               "networkToken.bin" : {
                  "description" : "The Bank Identification Number of a tokenized card, which is the first six digits of a card number.",
                  "type" : "string"
               },
               "networkToken.tokenSummary" : {
                  "description" : "The last four digits of a network token.",
                  "type" : "string"
               }
            },
            "type" : "object"
         },
         "ResponseAdditionalDataOpi" : {
            "additionalProperties" : false,
            "properties" : {
               "opi.transToken" : {
                  "description" : "Returned in the response if you included `opi.includeTransToken: true` in an ecommerce payment request. This contains an Oracle Payment Interface token that you can store in your Oracle Opera database to identify tokenized ecommerce transactions. For more information and required settings, see [Oracle Opera](https://docs.adyen.com/plugins/oracle-opera#opi-token-ecommerce).",
                  "type" : "string"
               }
            },
            "type" : "object"
         },
         "ResponseAdditionalDataSepa" : {
            "additionalProperties" : false,
            "properties" : {
               "sepadirectdebit.dateOfSignature" : {
                  "description" : "The transaction signature date.\n\nFormat: yyyy-MM-dd",
                  "type" : "string"
               },
               "sepadirectdebit.mandateId" : {
                  "description" : "Its value corresponds to the pspReference value of the transaction.",
                  "type" : "string"
               },
               "sepadirectdebit.sequenceType" : {
                  "description" : "This field can take one of the following values:\n* OneOff: (OOFF) Direct debit instruction to initiate exactly one direct debit transaction.\n\n* First: (FRST) Initial/first collection in a series of direct debit instructions.\n* Recurring: (RCUR) Direct debit instruction to carry out regular direct debit transactions initiated by the creditor.\n* Final: (FNAL) Last/final collection in a series of direct debit instructions.\n\nExample: OOFF",
                  "type" : "string"
               }
            },
            "type" : "object"
         },
         "ServiceError" : {
            "additionalProperties" : false,
            "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"
         },
         "StoreDetailAndSubmitRequest" : {
            "additionalProperties" : false,
            "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.\n> This field is mandatory if `card` is not provided.",
                  "$ref" : "#/components/schemas/BankAccount"
               },
               "billingAddress" : {
                  "x-addedInVersion" : "18",
                  "description" : "The billing address.\n\n> 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.\n> This field is mandatory if `bank` is not provided.",
                  "$ref" : "#/components/schemas/Card"
               },
               "dateOfBirth" : {
                  "x-addedInVersion" : "24",
                  "description" : "The date of birth.\nFormat: [ISO-8601](https://www.w3.org/TR/NOTE-datetime); example: YYYY-MM-DD\nFor Paysafecard it must be the same as used when registering the Paysafecard account.\n> 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.\n\nA 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.\n\nThe 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.\n\nFor 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.\n\nWhen 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"
         },
         "StoreDetailAndSubmitResponse" : {
            "additionalProperties" : false,
            "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:\n\n* In case of success is payout-submit-received.\n* In case of an error, an informational message is returned.",
                  "type" : "string"
               }
            },
            "required" : [
               "pspReference",
               "resultCode"
            ],
            "type" : "object"
         },
         "StoreDetailRequest" : {
            "additionalProperties" : false,
            "properties" : {
               "additionalData" : {
                  "additionalProperties" : {
                     "type" : "string"
                  },
                  "description" : "This field contains additional data, which may be required for a particular request.",
                  "type" : "object"
               },
               "bank" : {
                  "description" : "A container for bank account data.\n> This field is mandatory if `card` is not provided.",
                  "$ref" : "#/components/schemas/BankAccount"
               },
               "billingAddress" : {
                  "x-addedInVersion" : "18",
                  "description" : "The billing address.\n\n> 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.\n> This field is mandatory if `bank` is not provided.",
                  "$ref" : "#/components/schemas/Card"
               },
               "dateOfBirth" : {
                  "x-addedInVersion" : "24",
                  "description" : "The date of birth.\nFormat: [ISO-8601](https://www.w3.org/TR/NOTE-datetime); example: YYYY-MM-DD\nFor Paysafecard it must be the same as used when registering the Paysafecard account.\n> 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.\n\nA 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.\n\nThe recurring.contract must be set to `PAYOUT`",
                  "$ref" : "#/components/schemas/Recurring"
               },
               "selectedBrand" : {
                  "x-addedInVersion" : "24",
                  "description" : "The name of the brand to make a payout to.\n\nFor 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.\n\nWhen 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"
               },
               "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"
            ],
            "type" : "object"
         },
         "StoreDetailResponse" : {
            "additionalProperties" : false,
            "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"
               },
               "recurringDetailReference" : {
                  "description" : "The token which you can use later on for submitting the payout.",
                  "type" : "string"
               },
               "resultCode" : {
                  "description" : "The result code of the transaction. `Success` indicates that the details were stored successfully.",
                  "type" : "string"
               }
            },
            "required" : [
               "pspReference",
               "recurringDetailReference",
               "resultCode"
            ],
            "type" : "object"
         },
         "SubmitRequest" : {
            "additionalProperties" : false,
            "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"
               },
               "dateOfBirth" : {
                  "x-addedInVersion" : "24",
                  "description" : "The date of birth.\nFormat: ISO-8601; example: YYYY-MM-DD\n\nFor Paysafecard it must be the same as used when registering the Paysafecard account.\n\n> This field is mandatory for natural persons. \n> This field is required to update the existing `dateOfBirth` that is associated with this recurring contract.",
                  "format" : "date",
                  "type" : "string"
               },
               "entityType" : {
                  "x-addedInVersion" : "24",
                  "description" : "The type of the entity the payout is processed for.\n\nAllowed values:\n* NaturalPerson\n* Company\n> This field is required to update the existing `entityType` that is associated with this recurring contract.",
                  "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 you want to process the transaction request with.",
                  "type" : "string"
               },
               "nationality" : {
                  "x-addedInVersion" : "24",
                  "description" : "The shopper's nationality.\n\nA valid value is an ISO 2-character country code (e.g. 'NL').\n\n> This field is required to update the existing nationality that is associated with this recurring contract.",
                  "type" : "string"
               },
               "recurring" : {
                  "description" : "A container for the type of recurring contract to be retrieved.\n\nThe `recurring.contract` must be set to \"PAYOUT\".",
                  "$ref" : "#/components/schemas/Recurring"
               },
               "reference" : {
                  "description" : "The merchant reference for this payout. 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"
               },
               "selectedRecurringDetailReference" : {
                  "description" : "This is the `recurringDetailReference` you want to use for this payout.\n\nYou can use the value LATEST to select the most recently used recurring detail.",
                  "type" : "string"
               },
               "shopperEmail" : {
                  "description" : "The shopper's email address.",
                  "type" : "string"
               },
               "shopperName" : {
                  "x-addedInVersion" : "24",
                  "description" : "The shopper's name.\n\nIn case the `entityType` is `Company`, the `shopperName.lastName` must contain the company name.\n\n> This field is required to update the existing `shopperName` associated with a recurring contract.",
                  "$ref" : "#/components/schemas/Name"
               },
               "shopperReference" : {
                  "description" : "The shopper's reference for the payout 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"
               }
            },
            "required" : [
               "merchantAccount",
               "reference",
               "amount",
               "shopperEmail",
               "shopperReference",
               "recurring",
               "selectedRecurringDetailReference"
            ],
            "type" : "object"
         },
         "SubmitResponse" : {
            "additionalProperties" : false,
            "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:\n* In case of success, it is `payout-submit-received`.\n* In case of an error, an informational message is returned.",
                  "type" : "string"
               }
            },
            "required" : [
               "pspReference",
               "resultCode"
            ],
            "type" : "object"
         }
      },
      "securitySchemes" : {
         "ApiKeyAuth" : {
            "in" : "header",
            "name" : "X-API-Key",
            "type" : "apiKey"
         },
         "BasicAuth" : {
            "scheme" : "basic",
            "type" : "http"
         }
      },
      "examples" : {
         "generic-400" : {
            "summary" : "Response code 400. Bad Request.",
            "value" : {
               "status" : 400,
               "errorCode" : "702",
               "message" : "Unexpected input: I",
               "errorType" : "validation"
            }
         },
         "post-confirmThirdParty-confirmThirdParty" : {
            "summary" : "Confirm a payout",
            "description" : "Confirm a previously submitted payout",
            "value" : {
               "merchantAccount" : "YOUR_MERCHANT_ACCOUNT",
               "originalReference" : "9913140798220028"
            }
         },
         "post-confirmThirdParty-confirmThirdParty-200" : {
            "summary" : "Example response for request 'confirmThirdParty'",
            "value" : {
               "pspReference" : "991617894325358C",
               "response" : "[payout-confirm-received]"
            }
         },
         "post-declineThirdParty-declineThirdParty" : {
            "summary" : "Cancel a payout",
            "description" : "Cancel a previously submitted payout",
            "value" : {
               "merchantAccount" : "YOUR_MERCHANT_ACCOUNT",
               "originalReference" : "9913140798220028"
            }
         },
         "post-declineThirdParty-declineThirdParty-200" : {
            "summary" : "Example response for request 'declineThirdParty'",
            "value" : {
               "pspReference" : "991617894325360J",
               "response" : "[payout-decline-received]"
            }
         },
         "post-payout-payout-b2c" : {
            "summary" : "Instant card payout (B2C)",
            "description" : "Pay out to your sellers, customers, freelancers, etc",
            "value" : {
               "amount" : {
                  "value" : 2500,
                  "currency" : "USD"
               },
               "card" : {
                  "number" : "4111111111111111",
                  "expiryMonth" : "03",
                  "expiryYear" : "2030",
                  "holderName" : "John Smith"
               },
               "billingAddress" : {
                  "houseNumberOrName" : "121",
                  "street" : "Brannan Street",
                  "city" : "Beverly Hills",
                  "postalCode" : "90210",
                  "stateOrProvince" : "CA",
                  "country" : "US"
               },
               "merchantAccount" : "YOUR_MERCHANT_ACCOUNT",
               "reference" : "P9999999999999999",
               "shopperName" : {
                  "firstName" : "John",
                  "lastName" : "Smith"
               }
            }
         },
         "post-payout-payout-p2p" : {
            "summary" : "Instant card payout (P2P)",
            "description" : "Facilitate the transfer of money between two individuals",
            "value" : {
               "amount" : {
                  "value" : 2500,
                  "currency" : "USD"
               },
               "card" : {
                  "number" : "4111111111111111",
                  "expiryMonth" : "03",
                  "expiryYear" : "2030",
                  "holderName" : "John Smith"
               },
               "billingAddress" : {
                  "houseNumberOrName" : "121",
                  "street" : "Brannan Street",
                  "city" : "Beverly Hills",
                  "postalCode" : "90210",
                  "stateOrProvince" : "CA",
                  "country" : "US"
               },
               "fundSource" : {
                  "additionalData" : {
                     "fundingSource" : "DEBIT"
                  },
                  "billingAddress" : {
                     "houseNumberOrName" : "121",
                     "street" : "Brannan Street",
                     "city" : "Beverly Hills",
                     "postalCode" : "90210",
                     "stateOrProvince" : "CA",
                     "country" : "US"
                  },
                  "card" : {
                     "expiryMonth" : "03",
                     "expiryYear" : "2030",
                     "holderName" : "Payer Name",
                     "number" : "4400000000000008"
                  },
                  "shopperName" : {
                     "firstName" : "Payer",
                     "lastName" : "Name"
                  }
               },
               "merchantAccount" : "YOUR_MERCHANT_ACCOUNT",
               "reference" : "P9999999999999999",
               "shopperName" : {
                  "firstName" : "John",
                  "lastName" : "Smith"
               }
            }
         },
         "post-storeDetail-storeDetail" : {
            "summary" : "Store payout details",
            "description" : "Store payment details under the PAYOUT recurring contract",
            "value" : {
               "merchantAccount" : "YOUR_MERCHANT_ACCOUNT",
               "recurring" : {
                  "contract" : "PAYOUT"
               },
               "bank" : {
                  "bankName" : "AbnAmro",
                  "bic" : "ABNANL2A",
                  "countryCode" : "NL",
                  "iban" : "NL32ABNA0515071439",
                  "ownerName" : "Adyen",
                  "bankCity" : "Amsterdam",
                  "taxId" : "bankTaxId"
               },
               "shopperEmail" : "shopper@email.com",
               "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID",
               "shopperName" : {
                  "firstName" : "Adyen",
                  "lastName" : "Test"
               },
               "dateOfBirth" : "1990-01-01",
               "entityType" : "Company",
               "nationality" : "NL",
               "billingAddress" : {
                  "houseNumberOrName" : "17",
                  "street" : "Teststreet 1",
                  "city" : "Amsterdam",
                  "stateOrProvince" : "NY",
                  "country" : "US",
                  "postalCode" : "12345"
               }
            }
         },
         "post-storeDetail-storeDetail-200" : {
            "summary" : "Example response for request 'storeDetail'",
            "value" : {
               "pspReference" : "991617894326362D",
               "recurringDetailReference" : "9916178936754752",
               "resultCode" : "Success"
            }
         },
         "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",
               "shopperEmail" : "s.hopper@test.com",
               "shopperReference" : "YOUR_SHOPPER_REFERENCE",
               "shopperName" : {
                  "firstName" : "Adyen",
                  "lastName" : "Test"
               },
               "dateOfBirth" : "1990-01-01",
               "entityType" : "Company",
               "nationality" : "NL"
            }
         },
         "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",
                  "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-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",
                  "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-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",
                  "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-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",
                  "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-submitThirdParty-submitThirdParty" : {
            "summary" : "Submit a payout",
            "description" : "Submit a payout using the previously stored payment details",
            "value" : {
               "amount" : {
                  "currency" : "EUR",
                  "value" : 1000
               },
               "merchantAccount" : "YOUR_MERCHANT_ACCOUNT",
               "recurring" : {
                  "contract" : "PAYOUT"
               },
               "reference" : "PayoutPayment-0001",
               "shopperEmail" : "shopper@email.com",
               "shopperReference" : "YOUR_UNIQUE_SHOPPER_ID",
               "shopperName" : {
                  "firstName" : "Adyen",
                  "lastName" : "Test"
               },
               "dateOfBirth" : "1990-01-01",
               "entityType" : "Company",
               "nationality" : "NL",
               "selectedRecurringDetailReference" : "LATEST"
            }
         }
      }
   }
}