diff --git a/json/MarketPayNotificationService-v3.json b/json/MarketPayNotificationService-v3.json index 66412a5..2982185 100644 --- a/json/MarketPayNotificationService-v3.json +++ b/json/MarketPayNotificationService-v3.json @@ -1,9 +1,9 @@ { - "openapi" : "3.0.0", + "openapi" : "3.0.3", "info" : { "version" : "3", - "title" : "Adyen MarketPay Notifications", - "description" : "The Notification API sends notifications to the endpoints specified in a given subscription. Subscriptions are managed through the Notification Configuration API. The API specifications listed here detail the format of each notification.\n\nFor further information on MarketPay notifications, please visit the [MarketPay documentation](https://docs.adyen.com/marketpay).", + "title" : "Adyen for Platforms: Notifications", + "description" : "The Notification API sends notifications to the endpoints specified in a given subscription. Subscriptions are managed through the Notification Configuration API. The API specifications listed here detail the format of each notification.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/marketpay/marketpay-notifications).", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Support", @@ -24,6 +24,7 @@ "post" : { "summary" : "Triggered upon the closure of an account.", "description" : "This notification is sent when an account has been closed.", + "operationId" : "post-ACCOUNT_CLOSED", "x-groupName" : "Accounts", "x-sortIndex" : 3, "requestBody" : { @@ -53,6 +54,7 @@ "post" : { "summary" : "Triggered upon the creation of an account.", "description" : "This notification is sent when an account has been created.", + "operationId" : "post-ACCOUNT_CREATED", "x-groupName" : "Accounts", "x-sortIndex" : 1, "requestBody" : { @@ -82,6 +84,7 @@ "post" : { "summary" : "Triggered upon the creation of an account holder.", "description" : "This notification is sent when an account holder has been created.", + "operationId" : "post-ACCOUNT_HOLDER_CREATED", "x-groupName" : "Account holders", "x-sortIndex" : 1, "requestBody" : { @@ -111,6 +114,7 @@ "post" : { "summary" : "Triggered upon a payout to an account holder.", "description" : "This notification is sent when a payout request to an account holder has been processed and the payout has been scheduled.", + "operationId" : "post-ACCOUNT_HOLDER_PAYOUT", "x-groupName" : "Fund management", "x-sortIndex" : 1, "requestBody" : { @@ -140,6 +144,7 @@ "post" : { "summary" : "Triggered upon the status change of an account holder.", "description" : "This notification is sent when the status of an account holder has been changed.", + "operationId" : "post-ACCOUNT_HOLDER_STATUS_CHANGE", "x-groupName" : "Account holders", "x-sortIndex" : 4, "requestBody" : { @@ -169,6 +174,7 @@ "post" : { "summary" : "Triggered upon the status change of a store tied to an account holder.", "description" : "This notification is sent when the status of a store tied to an account holder has been changed.", + "operationId" : "post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE", "x-groupName" : "Account holders", "x-sortIndex" : 4, "requestBody" : { @@ -198,6 +204,7 @@ "post" : { "summary" : "Triggered upon an upcoming deadline.", "description" : "This notification is sent when an Account Holder has a deadline, to fulfill the requirements of a specific event, coming up.", + "operationId" : "post-ACCOUNT_HOLDER_UPCOMING_DEADLINE", "x-groupName" : "Account holders", "x-sortIndex" : 1, "requestBody" : { @@ -227,6 +234,7 @@ "post" : { "summary" : "Triggered upon the update of an account holder.", "description" : "This notification is sent when an account holder has been updated.", + "operationId" : "post-ACCOUNT_HOLDER_UPDATED", "x-groupName" : "Account holders", "x-sortIndex" : 2, "requestBody" : { @@ -256,6 +264,7 @@ "post" : { "summary" : "Triggered upon the receipt of KYC Verification results.", "description" : "This notification is sent when KYC Verification results are made available.", + "operationId" : "post-ACCOUNT_HOLDER_VERIFICATION", "x-groupName" : "Account holders", "x-sortIndex" : 3, "requestBody" : { @@ -285,6 +294,7 @@ "post" : { "summary" : "Triggered upon the update of an account.", "description" : "This notification is sent when an account has been updated.", + "operationId" : "post-ACCOUNT_UPDATED", "x-groupName" : "Accounts", "x-sortIndex" : 2, "requestBody" : { @@ -314,6 +324,7 @@ "post" : { "summary" : "Triggered upon the setup of a beneficiary.", "description" : "This notification is sent when a benefactor/beneficiary relationship between accounts has been set up.", + "operationId" : "post-BENEFICIARY_SETUP", "x-groupName" : "Fund management", "x-sortIndex" : 3, "requestBody" : { @@ -343,6 +354,7 @@ "post" : { "summary" : "Triggered upon the compensation of negative account balances.", "description" : "This notification is sent when funds have been transferred from the Marketplace's liable account to an overdrawn account in order to compensate for the overdraft.", + "operationId" : "post-COMPENSATE_NEGATIVE_BALANCE", "x-groupName" : "Fund management", "x-sortIndex" : 5, "requestBody" : { @@ -372,6 +384,7 @@ "post" : { "summary" : "Triggered when an automated direct debit is initiated.", "description" : "This notification is sent when an automated direct debit is initiated from the Adyen platform.", + "operationId" : "post-DIRECT_DEBIT_INITIATED", "x-groupName" : "Fund management", "x-sortIndex" : 7, "requestBody" : { @@ -401,6 +414,7 @@ "post" : { "summary" : "Triggered upon an account payment failure.", "description" : "This notification is sent when a payment to an account has failed. In these cases, the funds which were meant for the account are redirected to the Marketplace's liable account.", + "operationId" : "post-PAYMENT_FAILURE", "x-groupName" : "Other", "x-sortIndex" : 1, "requestBody" : { @@ -426,10 +440,41 @@ } } }, + "/PAYOUT_CONFIRMED" : { + "post" : { + "summary" : "Triggered when a payout has been confirmed.", + "description" : "This notification is sent when a payout is confirmed from the Adyen platform.", + "operationId" : "post-PAYOUT_CONFIRMED", + "x-groupName" : "Fund management", + "x-sortIndex" : 8, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AccountHolderPayoutNotification" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/NotificationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, "/REFUND_FUNDS_TRANSFER" : { "post" : { "summary" : "Triggered upon the transfer refund of funds between accounts.", "description" : "This notification is sent when the refund of funds from an account have been transferred to another account.", + "operationId" : "post-REFUND_FUNDS_TRANSFER", "x-groupName" : "Fund management", "x-sortIndex" : 6, "requestBody" : { @@ -459,6 +504,7 @@ "post" : { "summary" : "Triggered when a report is made available.", "description" : "This notification is sent when a report has been made available.", + "operationId" : "post-REPORT_AVAILABLE", "x-groupName" : "Other", "x-sortIndex" : 2, "requestBody" : { @@ -488,6 +534,7 @@ "post" : { "summary" : "Triggered upon the scheduling of refunds requested by a 'Refund Transfers Not Paid Out' call.", "description" : "This notification is sent when a 'Refund Transfers Not Paid Out' call has been processed and the associated refunds have been scheduled.", + "operationId" : "post-SCHEDULED_REFUNDS", "x-groupName" : "Fund management", "x-sortIndex" : 4, "requestBody" : { @@ -517,6 +564,7 @@ "post" : { "summary" : "Triggered upon the transfer of funds between accounts.", "description" : "This notification is sent when the funds from an account have been transferred to another account.", + "operationId" : "post-TRANSFER_FUNDS", "x-groupName" : "Fund management", "x-sortIndex" : 2, "requestBody" : { @@ -698,6 +746,9 @@ "type" : "string" }, "metadata" : { + "additionalProperties" : { + "type" : "string" + }, "description" : "A set of key and value pairs for general use by the account holder or merchant.\nThe keys do not have specific names and may be used for storing miscellaneous data as desired.\n> The values being stored have a maximum length of eighty (80) characters and will be truncated if necessary.\n> Note that during an update of metadata, the omission of existing key-value pairs will result in the deletion of those key-value pairs.", "type" : "object" }, @@ -819,11 +870,7 @@ } }, "required" : [ - "status", - "statusReason", - "processingState", - "payoutState", - "events" + "status" ] }, "AccountHolderStatusChangeNotification" : { @@ -878,8 +925,7 @@ "required" : [ "accountHolderCode", "oldStatus", - "newStatus", - "reason" + "newStatus" ] }, "AccountHolderStoreStatusChangeNotification" : { @@ -1087,10 +1133,12 @@ "description" : "The type of validation performed.", "enum" : [ "BANK_ACCOUNT_VERIFICATION", + "CARD_VERIFICATION", "COMPANY_VERIFICATION", "IDENTITY_VERIFICATION", "NONPROFIT_VERIFICATION", - "PASSPORT_VERIFICATION" + "PASSPORT_VERIFICATION", + "PAYOUT_METHOD_VERIFICATION" ], "type" : "string" } @@ -1122,14 +1170,7 @@ "format" : "int32", "type" : "integer" } - }, - "required" : [ - "allowPayout", - "disabled", - "tierNumber", - "disableReason", - "payoutLimit" - ] + } }, "AccountProcessingState" : { "properties" : { @@ -1154,14 +1195,7 @@ "format" : "int32", "type" : "integer" } - }, - "required" : [ - "disabled", - "disableReason", - "processedFrom", - "processedTo", - "tierNumber" - ] + } }, "AccountUpdateNotification" : { "properties" : { @@ -1416,7 +1450,7 @@ "CloseAccountResponse" : { "properties" : { "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -1434,7 +1468,7 @@ "type" : "string" }, "submittedAsync" : { - "description" : "Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.\n* **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue.", + "description" : "Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.", "type" : "boolean" } }, @@ -1536,7 +1570,7 @@ "type" : "array" }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -1544,7 +1578,7 @@ "type" : "string" }, "submittedAsync" : { - "description" : "Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.\n* **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue.", + "description" : "Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.", "type" : "boolean" }, "verification" : { @@ -1576,7 +1610,7 @@ "$ref" : "#/components/schemas/PayoutScheduleResponse" }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -1594,7 +1628,7 @@ "type" : "string" }, "submittedAsync" : { - "description" : "Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.\n* **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue.", + "description" : "Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.", "type" : "boolean" } }, @@ -1781,6 +1815,9 @@ "sourceAccountCode", "stateOrProvince", "status", + "stockExchange", + "stockNumber", + "stockTicker", "store", "storeDetail", "storeName", @@ -1829,11 +1866,7 @@ }, "type" : "array" } - }, - "required" : [ - "checks", - "bankAccountUUID" - ] + } }, "KYCCheckDataSummaryItem" : { "properties" : { @@ -1857,10 +1890,7 @@ }, "type" : "array" } - }, - "required" : [ - "checks" - ] + } }, "KYCCheckStatusData" : { "properties" : { @@ -1891,22 +1921,22 @@ "$ref" : "#/components/schemas/KYCCheckSummary" }, "type" : { - "description" : "The type of check.\n>Permitted Values: `COMPANY_VERIFICATION`, `IDENTITY_VERIFICATION`, `PASSPORT_VERIFICATION`, `BANK_ACCOUNT_VERIFICATION`, `NONPROFIT_VERIFICATION`.", + "description" : "The type of check.\n>Permitted Values: `COMPANY_VERIFICATION`, `IDENTITY_VERIFICATION`, `PASSPORT_VERIFICATION`, `BANK_ACCOUNT_VERIFICATION`, `NONPROFIT_VERIFICATION`, `CARD_VERIFICATION`.", "enum" : [ "BANK_ACCOUNT_VERIFICATION", + "CARD_VERIFICATION", "COMPANY_VERIFICATION", "IDENTITY_VERIFICATION", "NONPROFIT_VERIFICATION", - "PASSPORT_VERIFICATION" + "PASSPORT_VERIFICATION", + "PAYOUT_METHOD_VERIFICATION" ], "type" : "string" } }, "required" : [ "type", - "status", - "summary", - "requiredFields" + "status" ] }, "KYCCheckSummary" : { @@ -1938,11 +1968,7 @@ "description" : "The code of the shareholder to which the check applies.", "type" : "string" } - }, - "required" : [ - "checks", - "shareholderCode" - ] + } }, "KYCVerificationResult" : { "properties" : { @@ -1964,12 +1990,7 @@ }, "type" : "array" } - }, - "required" : [ - "accountHolder", - "shareholders", - "bankAccounts" - ] + } }, "LocalDate" : { "properties" : { @@ -1998,13 +2019,10 @@ "NotificationResponse" : { "properties" : { "notificationResponse" : { - "description" : "Set this property to **[accepted]** to acknowledge that you received a notification from Adyen.", + "description" : "Set this parameter to **[accepted]** to acknowledge that you received a notification from Adyen.", "type" : "string" } - }, - "required" : [ - "notificationResponse" - ] + } }, "OperationStatus" : { "properties" : { @@ -2134,8 +2152,7 @@ } }, "required" : [ - "type", - "number" + "type" ] }, "RefundFundsTransferNotification" : { @@ -2425,15 +2442,18 @@ "type" : "string" }, "transactionStatus" : { - "description" : "The status of the transaction.\n>Permitted values: `PendingCredit`, `CreditFailed`, `Credited`, `Converted`, `PendingDebit`, `DebitFailed`, `Debited`, `DebitReversedReceived`, `DebitedReversed`, `ChargebackReceived`, `Chargeback`, `ChargebackReversedReceived`, `ChargebackReversed`, `Payout`, `PayoutReversed`, `FundTransfer`, `PendingFundTransfer`, `ManualCorrected`.", + "description" : "The status of the transaction.\n>Permitted values: `PendingCredit`, `CreditFailed`, `CreditClosed`, `Credited`, `Converted`, `PendingDebit`, `DebitFailed`, `Debited`, `DebitReversedReceived`, `DebitedReversed`, `ChargebackReceived`, `Chargeback`, `ChargebackReversedReceived`, `ChargebackReversed`, `Payout`, `PayoutReversed`, `FundTransfer`, `PendingFundTransfer`, `ManualCorrected`.", "enum" : [ "Chargeback", "ChargebackCorrection", "ChargebackCorrectionReceived", "ChargebackReceived", "ChargebackReversed", + "ChargebackReversedCorrection", + "ChargebackReversedCorrectionReceived", "ChargebackReversedReceived", "Converted", + "CreditClosed", "CreditFailed", "CreditReversed", "CreditReversedReceived", @@ -2549,7 +2569,7 @@ "type" : "array" }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -2557,7 +2577,7 @@ "type" : "string" }, "submittedAsync" : { - "description" : "Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.\n* **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue.", + "description" : "Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.", "type" : "boolean" }, "updatedFields" : { @@ -2590,7 +2610,7 @@ "$ref" : "#/components/schemas/PayoutScheduleResponse" }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -2598,15 +2618,14 @@ "type" : "string" }, "submittedAsync" : { - "description" : "Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.\n* **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue.", + "description" : "Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.", "type" : "boolean" } }, "required" : [ "pspReference", "submittedAsync", - "accountCode", - "payoutSchedule" + "accountCode" ] }, "ViasAddress" : { @@ -2724,6 +2743,17 @@ "phoneNumber" ] } + }, + "securitySchemes" : { + "ApiKeyAuth" : { + "in" : "header", + "name" : "X-API-Key", + "type" : "apiKey" + }, + "BasicAuth" : { + "scheme" : "basic", + "type" : "http" + } } } } \ No newline at end of file diff --git a/json/MarketPayNotificationService-v4.json b/json/MarketPayNotificationService-v4.json index 278a093..a2d0449 100644 --- a/json/MarketPayNotificationService-v4.json +++ b/json/MarketPayNotificationService-v4.json @@ -1,9 +1,9 @@ { - "openapi" : "3.0.0", + "openapi" : "3.0.3", "info" : { "version" : "4", - "title" : "Adyen MarketPay Notifications", - "description" : "The Notification API sends notifications to the endpoints specified in a given subscription. Subscriptions are managed through the Notification Configuration API. The API specifications listed here detail the format of each notification.\n\nFor further information on MarketPay notifications, please visit the [MarketPay documentation](https://docs.adyen.com/marketpay).", + "title" : "Adyen for Platforms: Notifications", + "description" : "The Notification API sends notifications to the endpoints specified in a given subscription. Subscriptions are managed through the Notification Configuration API. The API specifications listed here detail the format of each notification.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/marketpay/marketpay-notifications).", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Support", @@ -24,6 +24,7 @@ "post" : { "summary" : "Triggered upon the closure of an account.", "description" : "This notification is sent when an account has been closed.", + "operationId" : "post-ACCOUNT_CLOSED", "x-groupName" : "Accounts", "x-sortIndex" : 3, "requestBody" : { @@ -53,6 +54,7 @@ "post" : { "summary" : "Triggered upon the creation of an account.", "description" : "This notification is sent when an account has been created.", + "operationId" : "post-ACCOUNT_CREATED", "x-groupName" : "Accounts", "x-sortIndex" : 1, "requestBody" : { @@ -82,6 +84,7 @@ "post" : { "summary" : "Triggered upon the creation of an account holder.", "description" : "This notification is sent when an account holder has been created.", + "operationId" : "post-ACCOUNT_HOLDER_CREATED", "x-groupName" : "Account holders", "x-sortIndex" : 1, "requestBody" : { @@ -111,6 +114,7 @@ "post" : { "summary" : "Triggered upon a payout to an account holder.", "description" : "This notification is sent when a payout request to an account holder has been processed and the payout has been scheduled.", + "operationId" : "post-ACCOUNT_HOLDER_PAYOUT", "x-groupName" : "Fund management", "x-sortIndex" : 1, "requestBody" : { @@ -140,6 +144,7 @@ "post" : { "summary" : "Triggered upon the status change of an account holder.", "description" : "This notification is sent when the status of an account holder has been changed.", + "operationId" : "post-ACCOUNT_HOLDER_STATUS_CHANGE", "x-groupName" : "Account holders", "x-sortIndex" : 4, "requestBody" : { @@ -169,6 +174,7 @@ "post" : { "summary" : "Triggered upon the status change of a store tied to an account holder.", "description" : "This notification is sent when the status of a store tied to an account holder has been changed.", + "operationId" : "post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE", "x-groupName" : "Account holders", "x-sortIndex" : 4, "requestBody" : { @@ -198,6 +204,7 @@ "post" : { "summary" : "Triggered upon an upcoming deadline.", "description" : "This notification is sent when an Account Holder has a deadline, to fulfill the requirements of a specific event, coming up.", + "operationId" : "post-ACCOUNT_HOLDER_UPCOMING_DEADLINE", "x-groupName" : "Account holders", "x-sortIndex" : 1, "requestBody" : { @@ -227,6 +234,7 @@ "post" : { "summary" : "Triggered upon the update of an account holder.", "description" : "This notification is sent when an account holder has been updated.", + "operationId" : "post-ACCOUNT_HOLDER_UPDATED", "x-groupName" : "Account holders", "x-sortIndex" : 2, "requestBody" : { @@ -256,6 +264,7 @@ "post" : { "summary" : "Triggered upon the receipt of KYC Verification results.", "description" : "This notification is sent when KYC Verification results are made available.", + "operationId" : "post-ACCOUNT_HOLDER_VERIFICATION", "x-groupName" : "Account holders", "x-sortIndex" : 3, "requestBody" : { @@ -285,6 +294,7 @@ "post" : { "summary" : "Triggered upon the update of an account.", "description" : "This notification is sent when an account has been updated.", + "operationId" : "post-ACCOUNT_UPDATED", "x-groupName" : "Accounts", "x-sortIndex" : 2, "requestBody" : { @@ -314,6 +324,7 @@ "post" : { "summary" : "Triggered upon the setup of a beneficiary.", "description" : "This notification is sent when a benefactor/beneficiary relationship between accounts has been set up.", + "operationId" : "post-BENEFICIARY_SETUP", "x-groupName" : "Fund management", "x-sortIndex" : 3, "requestBody" : { @@ -343,6 +354,7 @@ "post" : { "summary" : "Triggered upon the compensation of negative account balances.", "description" : "This notification is sent when funds have been transferred from the Marketplace's liable account to an overdrawn account in order to compensate for the overdraft.", + "operationId" : "post-COMPENSATE_NEGATIVE_BALANCE", "x-groupName" : "Fund management", "x-sortIndex" : 5, "requestBody" : { @@ -372,6 +384,7 @@ "post" : { "summary" : "Triggered when an automated direct debit is initiated.", "description" : "This notification is sent when an automated direct debit is initiated from the Adyen platform.", + "operationId" : "post-DIRECT_DEBIT_INITIATED", "x-groupName" : "Fund management", "x-sortIndex" : 7, "requestBody" : { @@ -401,6 +414,7 @@ "post" : { "summary" : "Triggered upon an account payment failure.", "description" : "This notification is sent when a payment to an account has failed. In these cases, the funds which were meant for the account are redirected to the Marketplace's liable account.", + "operationId" : "post-PAYMENT_FAILURE", "x-groupName" : "Other", "x-sortIndex" : 1, "requestBody" : { @@ -426,10 +440,41 @@ } } }, + "/PAYOUT_CONFIRMED" : { + "post" : { + "summary" : "Triggered when a payout has been confirmed.", + "description" : "This notification is sent when a payout is confirmed from the Adyen platform.", + "operationId" : "post-PAYOUT_CONFIRMED", + "x-groupName" : "Fund management", + "x-sortIndex" : 8, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AccountHolderPayoutNotification" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/NotificationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, "/REFUND_FUNDS_TRANSFER" : { "post" : { "summary" : "Triggered upon the transfer refund of funds between accounts.", "description" : "This notification is sent when the refund of funds from an account have been transferred to another account.", + "operationId" : "post-REFUND_FUNDS_TRANSFER", "x-groupName" : "Fund management", "x-sortIndex" : 6, "requestBody" : { @@ -459,6 +504,7 @@ "post" : { "summary" : "Triggered when a report is made available.", "description" : "This notification is sent when a report has been made available.", + "operationId" : "post-REPORT_AVAILABLE", "x-groupName" : "Other", "x-sortIndex" : 2, "requestBody" : { @@ -488,6 +534,7 @@ "post" : { "summary" : "Triggered upon the scheduling of refunds requested by a 'Refund Transfers Not Paid Out' call.", "description" : "This notification is sent when a 'Refund Transfers Not Paid Out' call has been processed and the associated refunds have been scheduled.", + "operationId" : "post-SCHEDULED_REFUNDS", "x-groupName" : "Fund management", "x-sortIndex" : 4, "requestBody" : { @@ -517,6 +564,7 @@ "post" : { "summary" : "Triggered upon the transfer of funds between accounts.", "description" : "This notification is sent when the funds from an account have been transferred to another account.", + "operationId" : "post-TRANSFER_FUNDS", "x-groupName" : "Fund management", "x-sortIndex" : 2, "requestBody" : { @@ -716,6 +764,9 @@ "type" : "string" }, "metadata" : { + "additionalProperties" : { + "type" : "string" + }, "description" : "A set of key and value pairs for general use by the account holder or merchant.\nThe keys do not have specific names and may be used for storing miscellaneous data as desired.\n> The values being stored have a maximum length of eighty (80) characters and will be truncated if necessary.\n> Note that during an update of metadata, the omission of existing key-value pairs will result in the deletion of those key-value pairs.", "type" : "object" }, @@ -843,11 +894,7 @@ } }, "required" : [ - "status", - "statusReason", - "processingState", - "payoutState", - "events" + "status" ] }, "AccountHolderStatusChangeNotification" : { @@ -908,8 +955,7 @@ "required" : [ "accountHolderCode", "oldStatus", - "newStatus", - "reason" + "newStatus" ] }, "AccountHolderStoreStatusChangeNotification" : { @@ -1137,10 +1183,12 @@ "description" : "The type of validation performed.", "enum" : [ "BANK_ACCOUNT_VERIFICATION", + "CARD_VERIFICATION", "COMPANY_VERIFICATION", "IDENTITY_VERIFICATION", "NONPROFIT_VERIFICATION", - "PASSPORT_VERIFICATION" + "PASSPORT_VERIFICATION", + "PAYOUT_METHOD_VERIFICATION" ], "type" : "string" } @@ -1172,14 +1220,7 @@ "format" : "int32", "type" : "integer" } - }, - "required" : [ - "allowPayout", - "disabled", - "tierNumber", - "disableReason", - "payoutLimit" - ] + } }, "AccountProcessingState" : { "properties" : { @@ -1204,14 +1245,7 @@ "format" : "int32", "type" : "integer" } - }, - "required" : [ - "disabled", - "disableReason", - "processedFrom", - "processedTo", - "tierNumber" - ] + } }, "AccountUpdateNotification" : { "properties" : { @@ -1482,7 +1516,7 @@ "CloseAccountResponse" : { "properties" : { "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -1500,7 +1534,7 @@ "type" : "string" }, "submittedAsync" : { - "description" : "Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.\n* **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue.", + "description" : "Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.", "type" : "boolean" } }, @@ -1623,7 +1657,7 @@ "type" : "string" }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -1631,7 +1665,7 @@ "type" : "string" }, "submittedAsync" : { - "description" : "Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.\n* **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue.", + "description" : "Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.", "type" : "boolean" }, "verification" : { @@ -1668,7 +1702,7 @@ "$ref" : "#/components/schemas/PayoutScheduleResponse" }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -1686,7 +1720,7 @@ "type" : "string" }, "submittedAsync" : { - "description" : "Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.\n* **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue.", + "description" : "Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.", "type" : "boolean" } }, @@ -1879,6 +1913,9 @@ "sourceAccountCode", "stateOrProvince", "status", + "stockExchange", + "stockNumber", + "stockTicker", "store", "storeDetail", "storeName", @@ -1927,11 +1964,7 @@ }, "type" : "array" } - }, - "required" : [ - "checks", - "bankAccountUUID" - ] + } }, "KYCCheckResult" : { "properties" : { @@ -1942,10 +1975,7 @@ }, "type" : "array" } - }, - "required" : [ - "checks" - ] + } }, "KYCCheckStatusData" : { "properties" : { @@ -1976,22 +2006,22 @@ "$ref" : "#/components/schemas/KYCCheckSummary" }, "type" : { - "description" : "The type of check.\n>Permitted Values: `COMPANY_VERIFICATION`, `IDENTITY_VERIFICATION`, `PASSPORT_VERIFICATION`, `BANK_ACCOUNT_VERIFICATION`, `NONPROFIT_VERIFICATION`.", + "description" : "The type of check.\n>Permitted Values: `COMPANY_VERIFICATION`, `IDENTITY_VERIFICATION`, `PASSPORT_VERIFICATION`, `BANK_ACCOUNT_VERIFICATION`, `NONPROFIT_VERIFICATION`, `CARD_VERIFICATION`.", "enum" : [ "BANK_ACCOUNT_VERIFICATION", + "CARD_VERIFICATION", "COMPANY_VERIFICATION", "IDENTITY_VERIFICATION", "NONPROFIT_VERIFICATION", - "PASSPORT_VERIFICATION" + "PASSPORT_VERIFICATION", + "PAYOUT_METHOD_VERIFICATION" ], "type" : "string" } }, "required" : [ "type", - "status", - "summary", - "requiredFields" + "status" ] }, "KYCCheckSummary" : { @@ -2023,11 +2053,7 @@ "description" : "The code of the shareholder to which the check applies.", "type" : "string" } - }, - "required" : [ - "checks", - "shareholderCode" - ] + } }, "KYCVerificationResult" : { "properties" : { @@ -2049,12 +2075,7 @@ }, "type" : "array" } - }, - "required" : [ - "accountHolder", - "shareholders", - "bankAccounts" - ] + } }, "LocalDate" : { "properties" : { @@ -2083,13 +2104,10 @@ "NotificationResponse" : { "properties" : { "notificationResponse" : { - "description" : "Set this property to **[accepted]** to acknowledge that you received a notification from Adyen.", + "description" : "Set this parameter to **[accepted]** to acknowledge that you received a notification from Adyen.", "type" : "string" } - }, - "required" : [ - "notificationResponse" - ] + } }, "OperationStatus" : { "properties" : { @@ -2225,8 +2243,7 @@ } }, "required" : [ - "type", - "number" + "type" ] }, "RefundFundsTransferNotification" : { @@ -2534,15 +2551,18 @@ "type" : "string" }, "transactionStatus" : { - "description" : "The status of the transaction.\n>Permitted values: `PendingCredit`, `CreditFailed`, `Credited`, `Converted`, `PendingDebit`, `DebitFailed`, `Debited`, `DebitReversedReceived`, `DebitedReversed`, `ChargebackReceived`, `Chargeback`, `ChargebackReversedReceived`, `ChargebackReversed`, `Payout`, `PayoutReversed`, `FundTransfer`, `PendingFundTransfer`, `ManualCorrected`.", + "description" : "The status of the transaction.\n>Permitted values: `PendingCredit`, `CreditFailed`, `CreditClosed`, `Credited`, `Converted`, `PendingDebit`, `DebitFailed`, `Debited`, `DebitReversedReceived`, `DebitedReversed`, `ChargebackReceived`, `Chargeback`, `ChargebackReversedReceived`, `ChargebackReversed`, `Payout`, `PayoutReversed`, `FundTransfer`, `PendingFundTransfer`, `ManualCorrected`.", "enum" : [ "Chargeback", "ChargebackCorrection", "ChargebackCorrectionReceived", "ChargebackReceived", "ChargebackReversed", + "ChargebackReversedCorrection", + "ChargebackReversedCorrectionReceived", "ChargebackReversedReceived", "Converted", + "CreditClosed", "CreditFailed", "CreditReversed", "CreditReversedReceived", @@ -2679,7 +2699,7 @@ "type" : "string" }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -2687,7 +2707,7 @@ "type" : "string" }, "submittedAsync" : { - "description" : "Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.\n* **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue.", + "description" : "Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.", "type" : "boolean" }, "updatedFields" : { @@ -2725,7 +2745,7 @@ "$ref" : "#/components/schemas/PayoutScheduleResponse" }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -2733,15 +2753,14 @@ "type" : "string" }, "submittedAsync" : { - "description" : "Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.\n* **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue.", + "description" : "Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.", "type" : "boolean" } }, "required" : [ "pspReference", "submittedAsync", - "accountCode", - "payoutSchedule" + "accountCode" ] }, "ViasAddress" : { @@ -2859,6 +2878,17 @@ "phoneNumber" ] } + }, + "securitySchemes" : { + "ApiKeyAuth" : { + "in" : "header", + "name" : "X-API-Key", + "type" : "apiKey" + }, + "BasicAuth" : { + "scheme" : "basic", + "type" : "http" + } } } } \ No newline at end of file diff --git a/json/MarketPayNotificationService-v5.json b/json/MarketPayNotificationService-v5.json index 4ff1a45..d2cc9a6 100644 --- a/json/MarketPayNotificationService-v5.json +++ b/json/MarketPayNotificationService-v5.json @@ -1,9 +1,9 @@ { - "openapi" : "3.0.0", + "openapi" : "3.0.3", "info" : { "version" : "5", - "title" : "Adyen MarketPay Notifications", - "description" : "The Notification API sends notifications to the endpoints specified in a given subscription. Subscriptions are managed through the Notification Configuration API. The API specifications listed here detail the format of each notification.\n\nFor further information on MarketPay notifications, please visit the [MarketPay documentation](https://docs.adyen.com/marketpay).", + "title" : "Adyen for Platforms: Notifications", + "description" : "The Notification API sends notifications to the endpoints specified in a given subscription. Subscriptions are managed through the Notification Configuration API. The API specifications listed here detail the format of each notification.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/marketpay/marketpay-notifications).", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Support", @@ -24,6 +24,7 @@ "post" : { "summary" : "Triggered upon the closure of an account.", "description" : "This notification is sent when an account has been closed.", + "operationId" : "post-ACCOUNT_CLOSED", "x-groupName" : "Accounts", "x-sortIndex" : 3, "requestBody" : { @@ -53,6 +54,7 @@ "post" : { "summary" : "Triggered upon the creation of an account.", "description" : "This notification is sent when an account has been created.", + "operationId" : "post-ACCOUNT_CREATED", "x-groupName" : "Accounts", "x-sortIndex" : 1, "requestBody" : { @@ -82,6 +84,7 @@ "post" : { "summary" : "Triggered upon the creation of an account holder.", "description" : "This notification is sent when an account holder has been created.", + "operationId" : "post-ACCOUNT_HOLDER_CREATED", "x-groupName" : "Account holders", "x-sortIndex" : 1, "requestBody" : { @@ -111,6 +114,7 @@ "post" : { "summary" : "Triggered upon a payout to an account holder.", "description" : "This notification is sent when a payout request to an account holder has been processed and the payout has been scheduled.", + "operationId" : "post-ACCOUNT_HOLDER_PAYOUT", "x-groupName" : "Fund management", "x-sortIndex" : 1, "requestBody" : { @@ -140,6 +144,7 @@ "post" : { "summary" : "Triggered upon the status change of an account holder.", "description" : "This notification is sent when the status of an account holder has been changed.", + "operationId" : "post-ACCOUNT_HOLDER_STATUS_CHANGE", "x-groupName" : "Account holders", "x-sortIndex" : 4, "requestBody" : { @@ -169,6 +174,7 @@ "post" : { "summary" : "Triggered upon the status change of a store tied to an account holder.", "description" : "This notification is sent when the status of a store tied to an account holder has been changed.", + "operationId" : "post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE", "x-groupName" : "Account holders", "x-sortIndex" : 4, "requestBody" : { @@ -198,6 +204,7 @@ "post" : { "summary" : "Triggered upon an upcoming deadline.", "description" : "This notification is sent when an Account Holder has a deadline, to fulfill the requirements of a specific event, coming up.", + "operationId" : "post-ACCOUNT_HOLDER_UPCOMING_DEADLINE", "x-groupName" : "Account holders", "x-sortIndex" : 1, "requestBody" : { @@ -227,6 +234,7 @@ "post" : { "summary" : "Triggered upon the update of an account holder.", "description" : "This notification is sent when an account holder has been updated.", + "operationId" : "post-ACCOUNT_HOLDER_UPDATED", "x-groupName" : "Account holders", "x-sortIndex" : 2, "requestBody" : { @@ -256,6 +264,7 @@ "post" : { "summary" : "Triggered upon the receipt of KYC Verification results.", "description" : "This notification is sent when KYC Verification results are made available.", + "operationId" : "post-ACCOUNT_HOLDER_VERIFICATION", "x-groupName" : "Account holders", "x-sortIndex" : 3, "requestBody" : { @@ -285,6 +294,7 @@ "post" : { "summary" : "Triggered upon the update of an account.", "description" : "This notification is sent when an account has been updated.", + "operationId" : "post-ACCOUNT_UPDATED", "x-groupName" : "Accounts", "x-sortIndex" : 2, "requestBody" : { @@ -314,6 +324,7 @@ "post" : { "summary" : "Triggered upon the setup of a beneficiary.", "description" : "This notification is sent when a benefactor/beneficiary relationship between accounts has been set up.", + "operationId" : "post-BENEFICIARY_SETUP", "x-groupName" : "Fund management", "x-sortIndex" : 3, "requestBody" : { @@ -343,6 +354,7 @@ "post" : { "summary" : "Triggered upon the compensation of negative account balances.", "description" : "This notification is sent when funds have been transferred from the Marketplace's liable account to an overdrawn account in order to compensate for the overdraft.", + "operationId" : "post-COMPENSATE_NEGATIVE_BALANCE", "x-groupName" : "Fund management", "x-sortIndex" : 5, "requestBody" : { @@ -372,6 +384,7 @@ "post" : { "summary" : "Triggered when an automated direct debit is initiated.", "description" : "This notification is sent when an automated direct debit is initiated from the Adyen platform.", + "operationId" : "post-DIRECT_DEBIT_INITIATED", "x-groupName" : "Fund management", "x-sortIndex" : 7, "requestBody" : { @@ -401,6 +414,7 @@ "post" : { "summary" : "Triggered upon an account payment failure.", "description" : "This notification is sent when a payment to an account has failed. In these cases, the funds which were meant for the account are redirected to the Marketplace's liable account.", + "operationId" : "post-PAYMENT_FAILURE", "x-groupName" : "Other", "x-sortIndex" : 1, "requestBody" : { @@ -426,10 +440,41 @@ } } }, + "/PAYOUT_CONFIRMED" : { + "post" : { + "summary" : "Triggered when a payout has been confirmed.", + "description" : "This notification is sent when a payout is confirmed from the Adyen platform.", + "operationId" : "post-PAYOUT_CONFIRMED", + "x-groupName" : "Fund management", + "x-sortIndex" : 8, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AccountHolderPayoutNotification" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/NotificationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, "/REFUND_FUNDS_TRANSFER" : { "post" : { "summary" : "Triggered upon the transfer refund of funds between accounts.", "description" : "This notification is sent when the refund of funds from an account have been transferred to another account.", + "operationId" : "post-REFUND_FUNDS_TRANSFER", "x-groupName" : "Fund management", "x-sortIndex" : 6, "requestBody" : { @@ -459,6 +504,7 @@ "post" : { "summary" : "Triggered when a report is made available.", "description" : "This notification is sent when a report has been made available.", + "operationId" : "post-REPORT_AVAILABLE", "x-groupName" : "Other", "x-sortIndex" : 2, "requestBody" : { @@ -488,6 +534,7 @@ "post" : { "summary" : "Triggered upon the scheduling of refunds requested by a 'Refund Transfers Not Paid Out' call.", "description" : "This notification is sent when a 'Refund Transfers Not Paid Out' call has been processed and the associated refunds have been scheduled.", + "operationId" : "post-SCHEDULED_REFUNDS", "x-groupName" : "Fund management", "x-sortIndex" : 4, "requestBody" : { @@ -517,6 +564,7 @@ "post" : { "summary" : "Triggered upon the transfer of funds between accounts.", "description" : "This notification is sent when the funds from an account have been transferred to another account.", + "operationId" : "post-TRANSFER_FUNDS", "x-groupName" : "Fund management", "x-sortIndex" : 2, "requestBody" : { @@ -707,6 +755,10 @@ }, "type" : "array" }, + "bankAggregatorDataReference" : { + "description" : "The opaque reference value returned by the Adyen API during bank account login.", + "type" : "string" + }, "businessDetails" : { "description" : "Details applicable to `Business` legal entities.\nPopulated only if the account holder's legal entity is of type `Business`.\n> Required when being used in a `/createAccountHolder` request in which the legal entity is `Business`.", "$ref" : "#/components/schemas/BusinessDetails" @@ -728,6 +780,9 @@ "type" : "string" }, "metadata" : { + "additionalProperties" : { + "type" : "string" + }, "description" : "A set of key and value pairs for general use by the account holder or merchant.\nThe keys do not have specific names and may be used for storing miscellaneous data as desired.\n> The values being stored have a maximum length of eighty (80) characters and will be truncated if necessary.\n> Note that during an update of metadata, the omission of existing key-value pairs will result in the deletion of those key-value pairs.", "type" : "object" }, @@ -838,6 +893,14 @@ "description" : "The PSP reference of the original payout.", "type" : "string" }, + "payoutSpeed" : { + "description" : "Speed with which payouts for this account are processed. Permitted values: `STANDARD`, `SAME_DAY`.", + "enum" : [ + "SAME_DAY", + "STANDARD" + ], + "type" : "string" + }, "status" : { "description" : "The payout status.", "$ref" : "#/components/schemas/OperationStatus" @@ -881,11 +944,7 @@ } }, "required" : [ - "status", - "statusReason", - "processingState", - "payoutState", - "events" + "status" ] }, "AccountHolderStatusChangeNotification" : { @@ -957,8 +1016,7 @@ "required" : [ "accountHolderCode", "oldStatus", - "newStatus", - "reason" + "newStatus" ] }, "AccountHolderStoreStatusChangeNotification" : { @@ -1054,8 +1112,7 @@ "store", "storeReference", "oldStatus", - "newStatus", - "reason" + "newStatus" ] }, "AccountHolderUpcomingDeadlineNotification" : { @@ -1269,15 +1326,7 @@ "format" : "int32", "type" : "integer" } - }, - "required" : [ - "allowPayout", - "disabled", - "tierNumber", - "disableReason", - "payoutLimit", - "notAllowedReason" - ] + } }, "AccountProcessingState" : { "properties" : { @@ -1302,14 +1351,7 @@ "format" : "int32", "type" : "integer" } - }, - "required" : [ - "disabled", - "disableReason", - "processedFrom", - "processedTo", - "tierNumber" - ] + } }, "AccountUpdateNotification" : { "properties" : { @@ -1604,7 +1646,7 @@ "type" : "array" }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -1748,7 +1790,7 @@ "type" : "string" }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -1800,8 +1842,16 @@ "description" : "The payout schedule of the account.", "$ref" : "#/components/schemas/PayoutScheduleResponse" }, + "payoutSpeed" : { + "description" : "Speed with which payouts for this account are processed. Permitted values: `STANDARD`, `SAME_DAY`.", + "enum" : [ + "SAME_DAY", + "STANDARD" + ], + "type" : "string" + }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -2011,6 +2061,9 @@ "sourceAccountCode", "stateOrProvince", "status", + "stockExchange", + "stockNumber", + "stockTicker", "store", "storeDetail", "storeName", @@ -2059,11 +2112,22 @@ }, "type" : "array" } - }, - "required" : [ - "checks", - "bankAccountUUID" - ] + } + }, + "KYCCardCheckResult" : { + "properties" : { + "checks" : { + "description" : "A list of the checks and their statuses.", + "items" : { + "$ref" : "#/components/schemas/KYCCheckStatusData" + }, + "type" : "array" + }, + "payoutMethodCode" : { + "description" : "The unique ID of the card to which the check applies.", + "type" : "string" + } + } }, "KYCCheckResult" : { "properties" : { @@ -2074,10 +2138,7 @@ }, "type" : "array" } - }, - "required" : [ - "checks" - ] + } }, "KYCCheckStatusData" : { "properties" : { @@ -2108,22 +2169,22 @@ "$ref" : "#/components/schemas/KYCCheckSummary" }, "type" : { - "description" : "The type of check.\n>Permitted Values: `COMPANY_VERIFICATION`, `IDENTITY_VERIFICATION`, `PASSPORT_VERIFICATION`, `BANK_ACCOUNT_VERIFICATION`, `NONPROFIT_VERIFICATION`.", + "description" : "The type of check.\n>Permitted Values: `COMPANY_VERIFICATION`, `IDENTITY_VERIFICATION`, `PASSPORT_VERIFICATION`, `BANK_ACCOUNT_VERIFICATION`, `NONPROFIT_VERIFICATION`, `CARD_VERIFICATION`.", "enum" : [ "BANK_ACCOUNT_VERIFICATION", + "CARD_VERIFICATION", "COMPANY_VERIFICATION", "IDENTITY_VERIFICATION", "NONPROFIT_VERIFICATION", - "PASSPORT_VERIFICATION" + "PASSPORT_VERIFICATION", + "PAYOUT_METHOD_VERIFICATION" ], "type" : "string" } }, "required" : [ "type", - "status", - "summary", - "requiredFields" + "status" ] }, "KYCCheckSummary" : { @@ -2152,11 +2213,7 @@ "description" : "The code of the shareholder to which the check applies.", "type" : "string" } - }, - "required" : [ - "checks", - "shareholderCode" - ] + } }, "KYCVerificationResult" : { "properties" : { @@ -2171,6 +2228,13 @@ }, "type" : "array" }, + "cards" : { + "description" : "The result(s) of the checks on the card(s).", + "items" : { + "$ref" : "#/components/schemas/KYCCardCheckResult" + }, + "type" : "array" + }, "shareholders" : { "description" : "The result(s) of the checks on the shareholder(s).", "items" : { @@ -2178,12 +2242,7 @@ }, "type" : "array" } - }, - "required" : [ - "accountHolder", - "shareholders", - "bankAccounts" - ] + } }, "LocalDate" : { "properties" : { @@ -2224,13 +2283,10 @@ "NotificationResponse" : { "properties" : { "notificationResponse" : { - "description" : "Set this property to **[accepted]** to acknowledge that you received a notification from Adyen.", + "description" : "Set this parameter to **[accepted]** to acknowledge that you received a notification from Adyen.", "type" : "string" } - }, - "required" : [ - "notificationResponse" - ] + } }, "OperationStatus" : { "properties" : { @@ -2397,8 +2453,7 @@ } }, "required" : [ - "type", - "number" + "type" ] }, "RefundFundsTransferNotification" : { @@ -2736,15 +2791,18 @@ "type" : "string" }, "transactionStatus" : { - "description" : "The status of the transaction.\n>Permitted values: `PendingCredit`, `CreditFailed`, `Credited`, `Converted`, `PendingDebit`, `DebitFailed`, `Debited`, `DebitReversedReceived`, `DebitedReversed`, `ChargebackReceived`, `Chargeback`, `ChargebackReversedReceived`, `ChargebackReversed`, `Payout`, `PayoutReversed`, `FundTransfer`, `PendingFundTransfer`, `ManualCorrected`.", + "description" : "The status of the transaction.\n>Permitted values: `PendingCredit`, `CreditFailed`, `CreditClosed`, `Credited`, `Converted`, `PendingDebit`, `DebitFailed`, `Debited`, `DebitReversedReceived`, `DebitedReversed`, `ChargebackReceived`, `Chargeback`, `ChargebackReversedReceived`, `ChargebackReversed`, `Payout`, `PayoutReversed`, `FundTransfer`, `PendingFundTransfer`, `ManualCorrected`.", "enum" : [ "Chargeback", "ChargebackCorrection", "ChargebackCorrectionReceived", "ChargebackReceived", "ChargebackReversed", + "ChargebackReversedCorrection", + "ChargebackReversedCorrectionReceived", "ChargebackReversedReceived", "Converted", + "CreditClosed", "CreditFailed", "CreditReversed", "CreditReversedReceived", @@ -2896,7 +2954,7 @@ "type" : "string" }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -2942,8 +3000,16 @@ "description" : "The payout schedule of the account.", "$ref" : "#/components/schemas/PayoutScheduleResponse" }, + "payoutSpeed" : { + "description" : "Speed with which payouts for this account are processed. Permitted values: `STANDARD`, `SAME_DAY`.", + "enum" : [ + "SAME_DAY", + "STANDARD" + ], + "type" : "string" + }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -2953,8 +3019,7 @@ }, "required" : [ "pspReference", - "accountCode", - "payoutSchedule" + "accountCode" ] }, "ViasAddress" : { @@ -3067,6 +3132,17 @@ "phoneNumber" ] } + }, + "securitySchemes" : { + "ApiKeyAuth" : { + "in" : "header", + "name" : "X-API-Key", + "type" : "apiKey" + }, + "BasicAuth" : { + "scheme" : "basic", + "type" : "http" + } } } } \ No newline at end of file diff --git a/json/MarketPayNotificationService-v6.json b/json/MarketPayNotificationService-v6.json new file mode 100644 index 0000000..7b92c08 --- /dev/null +++ b/json/MarketPayNotificationService-v6.json @@ -0,0 +1,3163 @@ +{ + "openapi" : "3.0.3", + "info" : { + "version" : "6", + "title" : "Adyen for Platforms: Notifications", + "description" : "The Notification API sends notifications to the endpoints specified in a given subscription. Subscriptions are managed through the Notification Configuration API. The API specifications listed here detail the format of each notification.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/marketpay/marketpay-notifications).", + "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", + "contact" : { + "name" : "Adyen Support", + "url" : "https://support.adyen.com/", + "email" : "support@adyen.com" + } + }, + "x-groups" : [ + "Account holders", + "Accounts", + "Fund management", + "Other" + ], + "x-isWebhook" : "true", + "x-staticResponse" : "response.json", + "paths" : { + "/ACCOUNT_CLOSED" : { + "post" : { + "summary" : "Triggered upon the closure of an account.", + "description" : "This notification is sent when an account has been closed.", + "operationId" : "post-ACCOUNT_CLOSED", + "x-groupName" : "Accounts", + "x-sortIndex" : 3, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AccountCloseNotification" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/NotificationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, + "/ACCOUNT_CREATED" : { + "post" : { + "summary" : "Triggered upon the creation of an account.", + "description" : "This notification is sent when an account has been created.", + "operationId" : "post-ACCOUNT_CREATED", + "x-groupName" : "Accounts", + "x-sortIndex" : 1, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AccountCreateNotification" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/NotificationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, + "/ACCOUNT_HOLDER_CREATED" : { + "post" : { + "summary" : "Triggered upon the creation of an account holder.", + "description" : "This notification is sent when an account holder has been created.", + "operationId" : "post-ACCOUNT_HOLDER_CREATED", + "x-groupName" : "Account holders", + "x-sortIndex" : 1, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AccountHolderCreateNotification" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/NotificationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, + "/ACCOUNT_HOLDER_PAYOUT" : { + "post" : { + "summary" : "Triggered upon a payout to an account holder.", + "description" : "This notification is sent when a payout request to an account holder has been processed and the payout has been scheduled.", + "operationId" : "post-ACCOUNT_HOLDER_PAYOUT", + "x-groupName" : "Fund management", + "x-sortIndex" : 1, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AccountHolderPayoutNotification" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/NotificationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, + "/ACCOUNT_HOLDER_STATUS_CHANGE" : { + "post" : { + "summary" : "Triggered upon the status change of an account holder.", + "description" : "This notification is sent when the status of an account holder has been changed.", + "operationId" : "post-ACCOUNT_HOLDER_STATUS_CHANGE", + "x-groupName" : "Account holders", + "x-sortIndex" : 4, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AccountHolderStatusChangeNotification" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/NotificationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, + "/ACCOUNT_HOLDER_STORE_STATUS_CHANGE" : { + "post" : { + "summary" : "Triggered upon the status change of a store tied to an account holder.", + "description" : "This notification is sent when the status of a store tied to an account holder has been changed.", + "operationId" : "post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE", + "x-groupName" : "Account holders", + "x-sortIndex" : 4, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AccountHolderStoreStatusChangeNotification" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/NotificationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, + "/ACCOUNT_HOLDER_UPCOMING_DEADLINE" : { + "post" : { + "summary" : "Triggered upon an upcoming deadline.", + "description" : "This notification is sent when an Account Holder has a deadline, to fulfill the requirements of a specific event, coming up.", + "operationId" : "post-ACCOUNT_HOLDER_UPCOMING_DEADLINE", + "x-groupName" : "Account holders", + "x-sortIndex" : 1, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AccountHolderUpcomingDeadlineNotification" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/NotificationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, + "/ACCOUNT_HOLDER_UPDATED" : { + "post" : { + "summary" : "Triggered upon the update of an account holder.", + "description" : "This notification is sent when an account holder has been updated.", + "operationId" : "post-ACCOUNT_HOLDER_UPDATED", + "x-groupName" : "Account holders", + "x-sortIndex" : 2, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AccountHolderUpdateNotification" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/NotificationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, + "/ACCOUNT_HOLDER_VERIFICATION" : { + "post" : { + "summary" : "Triggered upon the receipt of KYC Verification results.", + "description" : "This notification is sent when KYC Verification results are made available.", + "operationId" : "post-ACCOUNT_HOLDER_VERIFICATION", + "x-groupName" : "Account holders", + "x-sortIndex" : 3, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AccountHolderVerificationNotification" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/NotificationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, + "/ACCOUNT_UPDATED" : { + "post" : { + "summary" : "Triggered upon the update of an account.", + "description" : "This notification is sent when an account has been updated.", + "operationId" : "post-ACCOUNT_UPDATED", + "x-groupName" : "Accounts", + "x-sortIndex" : 2, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AccountUpdateNotification" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/NotificationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, + "/BENEFICIARY_SETUP" : { + "post" : { + "summary" : "Triggered upon the setup of a beneficiary.", + "description" : "This notification is sent when a benefactor/beneficiary relationship between accounts has been set up.", + "operationId" : "post-BENEFICIARY_SETUP", + "x-groupName" : "Fund management", + "x-sortIndex" : 3, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/BeneficiarySetupNotification" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/NotificationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, + "/COMPENSATE_NEGATIVE_BALANCE" : { + "post" : { + "summary" : "Triggered upon the compensation of negative account balances.", + "description" : "This notification is sent when funds have been transferred from the Marketplace's liable account to an overdrawn account in order to compensate for the overdraft.", + "operationId" : "post-COMPENSATE_NEGATIVE_BALANCE", + "x-groupName" : "Fund management", + "x-sortIndex" : 5, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/CompensateNegativeBalanceNotification" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/NotificationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, + "/DIRECT_DEBIT_INITIATED" : { + "post" : { + "summary" : "Triggered when an automated direct debit is initiated.", + "description" : "This notification is sent when an automated direct debit is initiated from the Adyen platform.", + "operationId" : "post-DIRECT_DEBIT_INITIATED", + "x-groupName" : "Fund management", + "x-sortIndex" : 7, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/DirectDebitInitiatedNotification" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/NotificationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, + "/PAYMENT_FAILURE" : { + "post" : { + "summary" : "Triggered upon an account payment failure.", + "description" : "This notification is sent when a payment to an account has failed. In these cases, the funds which were meant for the account are redirected to the Marketplace's liable account.", + "operationId" : "post-PAYMENT_FAILURE", + "x-groupName" : "Other", + "x-sortIndex" : 1, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/PaymentFailureNotification" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/NotificationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, + "/PAYOUT_CONFIRMED" : { + "post" : { + "summary" : "Triggered when a payout has been confirmed.", + "description" : "This notification is sent when a payout is confirmed from the Adyen platform.", + "operationId" : "post-PAYOUT_CONFIRMED", + "x-groupName" : "Fund management", + "x-sortIndex" : 8, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AccountHolderPayoutNotification" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/NotificationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, + "/REFUND_FUNDS_TRANSFER" : { + "post" : { + "summary" : "Triggered upon the transfer refund of funds between accounts.", + "description" : "This notification is sent when the refund of funds from an account have been transferred to another account.", + "operationId" : "post-REFUND_FUNDS_TRANSFER", + "x-groupName" : "Fund management", + "x-sortIndex" : 6, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RefundFundsTransferNotification" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/NotificationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, + "/REPORT_AVAILABLE" : { + "post" : { + "summary" : "Triggered when a report is made available.", + "description" : "This notification is sent when a report has been made available.", + "operationId" : "post-REPORT_AVAILABLE", + "x-groupName" : "Other", + "x-sortIndex" : 2, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ReportAvailableNotification" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/NotificationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, + "/SCHEDULED_REFUNDS" : { + "post" : { + "summary" : "Triggered upon the scheduling of refunds requested by a 'Refund Transfers Not Paid Out' call.", + "description" : "This notification is sent when a 'Refund Transfers Not Paid Out' call has been processed and the associated refunds have been scheduled.", + "operationId" : "post-SCHEDULED_REFUNDS", + "x-groupName" : "Fund management", + "x-sortIndex" : 4, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ScheduledRefundsNotification" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/NotificationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, + "/TRANSFER_FUNDS" : { + "post" : { + "summary" : "Triggered upon the transfer of funds between accounts.", + "description" : "This notification is sent when the funds from an account have been transferred to another account.", + "operationId" : "post-TRANSFER_FUNDS", + "x-groupName" : "Fund management", + "x-sortIndex" : 2, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/TransferFundsNotification" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/NotificationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + } + }, + "components" : { + "schemas" : { + "AccountCloseNotification" : { + "properties" : { + "content" : { + "description" : "The details of the Account update.", + "$ref" : "#/components/schemas/CloseAccountResponse" + }, + "error" : { + "description" : "Error information of failed request. No value provided here if no error occurred on processing.", + "$ref" : "#/components/schemas/NotificationErrorContainer" + }, + "eventDate" : { + "description" : "The date and time when an event has been completed.", + "format" : "date-time", + "type" : "string" + }, + "eventType" : { + "description" : "The event type of the notification.", + "type" : "string" + }, + "executingUserKey" : { + "description" : "The user or process that has triggered the notification.", + "type" : "string" + }, + "live" : { + "description" : "Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.", + "type" : "boolean" + }, + "pspReference" : { + "description" : "The PSP reference of the request from which the notification originates.", + "type" : "string" + } + }, + "required" : [ + "executingUserKey", + "pspReference", + "eventType", + "live", + "eventDate", + "content" + ] + }, + "AccountCreateNotification" : { + "properties" : { + "content" : { + "description" : "The details of the account creation.", + "$ref" : "#/components/schemas/CreateAccountResponse" + }, + "error" : { + "description" : "Error information of failed request. No value provided here if no error occurred on processing.", + "$ref" : "#/components/schemas/NotificationErrorContainer" + }, + "eventDate" : { + "description" : "The date and time when an event has been completed.", + "format" : "date-time", + "type" : "string" + }, + "eventType" : { + "description" : "The event type of the notification.", + "type" : "string" + }, + "executingUserKey" : { + "description" : "The user or process that has triggered the notification.", + "type" : "string" + }, + "live" : { + "description" : "Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.", + "type" : "boolean" + }, + "pspReference" : { + "description" : "The PSP reference of the request from which the notification originates.", + "type" : "string" + } + }, + "required" : [ + "executingUserKey", + "pspReference", + "eventType", + "live", + "eventDate", + "content" + ] + }, + "AccountEvent" : { + "properties" : { + "event" : { + "description" : "The event.\n>Permitted values: `InactivateAccount`, `RefundNotPaidOutTransfers`.\nFor more information, refer to [Verification checks](https://docs.adyen.com/marketpay/onboarding-and-verification/verification-checks).", + "enum" : [ + "InactivateAccount", + "RefundNotPaidOutTransfers" + ], + "type" : "string" + }, + "executionDate" : { + "description" : "The date on which the event will take place.", + "format" : "date-time", + "type" : "string" + }, + "reason" : { + "description" : "The reason why this event has been created.", + "type" : "string" + } + }, + "required" : [ + "event", + "executionDate", + "reason" + ] + }, + "AccountHolderCreateNotification" : { + "properties" : { + "content" : { + "description" : "The details of the account holder creation.", + "$ref" : "#/components/schemas/CreateAccountHolderResponse" + }, + "error" : { + "description" : "Error information of failed request. No value provided here if no error occurred on processing.", + "$ref" : "#/components/schemas/NotificationErrorContainer" + }, + "eventDate" : { + "description" : "The date and time when an event has been completed.", + "format" : "date-time", + "type" : "string" + }, + "eventType" : { + "description" : "The event type of the notification.", + "type" : "string" + }, + "executingUserKey" : { + "description" : "The user or process that has triggered the notification.", + "type" : "string" + }, + "live" : { + "description" : "Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.", + "type" : "boolean" + }, + "pspReference" : { + "description" : "The PSP reference of the request from which the notification originates.", + "type" : "string" + } + }, + "required" : [ + "executingUserKey", + "pspReference", + "eventType", + "live", + "eventDate", + "content" + ] + }, + "AccountHolderDetails" : { + "properties" : { + "address" : { + "description" : "The address of the account holder.", + "$ref" : "#/components/schemas/ViasAddress" + }, + "bankAccountDetails" : { + "description" : "Each of the bank accounts associated with the account holder.\n> Each array entry should represent one bank account.\n> For comprehensive detail regarding the required `BankAccountDetail` fields, please refer to the [KYC Verification documentation](https://docs.adyen.com/marketpay/onboarding-and-verification/verification-checks).", + "items" : { + "$ref" : "#/components/schemas/BankAccountDetail" + }, + "type" : "array" + }, + "bankAggregatorDataReference" : { + "description" : "The opaque reference value returned by the Adyen API during bank account login.", + "type" : "string" + }, + "businessDetails" : { + "description" : "Details applicable to `Business` legal entities.\nPopulated only if the account holder's legal entity is of type `Business`.\n> Required when being used in a `/createAccountHolder` request in which the legal entity is `Business`.", + "$ref" : "#/components/schemas/BusinessDetails" + }, + "email" : { + "description" : "The email address of the account holder.", + "type" : "string" + }, + "fullPhoneNumber" : { + "description" : "The phone number of the account holder provided as a single string. It will be handled as a landline phone.\n**Examples:** \"0031 6 11 22 33 44\", \"+316/1122-3344\", \"(0031) 611223344\"", + "type" : "string" + }, + "individualDetails" : { + "description" : "Details applicable to `Individual` legal entities.\nPopulated only if the account holder's legal entity is of type `Individual`.\n> Required when being used in a `/createAccountHolder` request in which the legal entity is `Individual`.", + "$ref" : "#/components/schemas/IndividualDetails" + }, + "merchantCategoryCode" : { + "description" : "The Merchant Category Code of the account holder.\n> If not specified in the request, this will be derived from the platform account (which is configured by Adyen).", + "type" : "string" + }, + "metadata" : { + "additionalProperties" : { + "type" : "string" + }, + "description" : "A set of key and value pairs for general use by the account holder or merchant.\nThe keys do not have specific names and may be used for storing miscellaneous data as desired.\n> The values being stored have a maximum length of eighty (80) characters and will be truncated if necessary.\n> Note that during an update of metadata, the omission of existing key-value pairs will result in the deletion of those key-value pairs.", + "type" : "object" + }, + "payoutMethods" : { + "description" : "Each of the card tokens associated with the account holder.\n> Each array entry should represent one card token.\n> For comprehensive detail regarding the required `CardToken` fields, please refer to the [KYC Verification documentation](https://docs.adyen.com/marketpay/onboarding-and-verification/verification-checks).", + "items" : { + "$ref" : "#/components/schemas/PayoutMethod" + }, + "type" : "array" + }, + "webAddress" : { + "description" : "The URL of the website of the account holder.", + "type" : "string" + } + }, + "required" : [ + "fullPhoneNumber", + "email", + "webAddress" + ] + }, + "AccountHolderPayoutNotification" : { + "properties" : { + "content" : { + "description" : "Details of the payout to the Account Holder.", + "$ref" : "#/components/schemas/AccountHolderPayoutNotificationContent" + }, + "error" : { + "description" : "Error information of failed request. No value provided here if no error occurred on processing.", + "$ref" : "#/components/schemas/NotificationErrorContainer" + }, + "eventDate" : { + "description" : "The date and time when an event has been completed.", + "format" : "date-time", + "type" : "string" + }, + "eventType" : { + "description" : "The event type of the notification.", + "type" : "string" + }, + "executingUserKey" : { + "description" : "The user or process that has triggered the notification.", + "type" : "string" + }, + "live" : { + "description" : "Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.", + "type" : "boolean" + }, + "pspReference" : { + "description" : "The PSP reference of the request from which the notification originates.", + "type" : "string" + } + }, + "required" : [ + "executingUserKey", + "pspReference", + "eventType", + "live", + "eventDate", + "content" + ] + }, + "AccountHolderPayoutNotificationContent" : { + "properties" : { + "accountCode" : { + "description" : "The code of the account from which the payout was made.", + "type" : "string" + }, + "accountHolderCode" : { + "description" : "The code of the Account Holder to which the payout was made.", + "type" : "string" + }, + "amounts" : { + "description" : "The payout amounts (per currency).", + "items" : { + "$ref" : "#/components/schemas/Amount" + }, + "type" : "array" + }, + "bankAccountDetail" : { + "description" : "Details of the Bank Account to which the payout was made.", + "$ref" : "#/components/schemas/BankAccountDetail" + }, + "description" : { + "description" : "A description of the payout.", + "type" : "string" + }, + "estimatedArrivalDate" : { + "description" : "The estimated date of arrival.", + "$ref" : "#/components/schemas/LocalDate" + }, + "invalidFields" : { + "description" : "Invalid fields list.", + "items" : { + "$ref" : "#/components/schemas/ErrorFieldType" + }, + "type" : "array" + }, + "merchantReference" : { + "description" : "The merchant reference.", + "type" : "string" + }, + "originalPspReference" : { + "description" : "The PSP reference of the original payout.", + "type" : "string" + }, + "payoutAccountCountry" : { + "description" : "Payout account country.", + "type" : "string" + }, + "payoutAccountNumber" : { + "description" : "Payout bank account number.", + "type" : "string" + }, + "payoutBankName" : { + "description" : "Payout bank name.", + "type" : "string" + }, + "payoutBranchCode" : { + "description" : "Payout branch code.", + "type" : "string" + }, + "payoutReference" : { + "description" : "Payout transaction id.", + "format" : "int64", + "type" : "integer" + }, + "payoutSpeed" : { + "description" : "Speed with which payouts for this account are processed. Permitted values: `STANDARD`, `SAME_DAY`.", + "enum" : [ + "SAME_DAY", + "STANDARD" + ], + "type" : "string" + }, + "status" : { + "description" : "The payout status.", + "$ref" : "#/components/schemas/OperationStatus" + } + }, + "required" : [ + "accountHolderCode", + "accountCode" + ] + }, + "AccountHolderStatus" : { + "properties" : { + "events" : { + "description" : "A list of events scheduled for the account holder.", + "items" : { + "$ref" : "#/components/schemas/AccountEvent" + }, + "type" : "array" + }, + "payoutState" : { + "description" : "The payout state of the account holder.", + "$ref" : "#/components/schemas/AccountPayoutState" + }, + "processingState" : { + "description" : "The processing state of the account holder.", + "$ref" : "#/components/schemas/AccountProcessingState" + }, + "status" : { + "description" : "The status of the account holder.\n>Permitted values: `Active`, `Inactive`, `Suspended`, `Closed`.", + "enum" : [ + "Active", + "Closed", + "Inactive", + "Suspended" + ], + "type" : "string" + }, + "statusReason" : { + "description" : "The reason why the status was assigned to the account holder.", + "type" : "string" + } + }, + "required" : [ + "status" + ] + }, + "AccountHolderStatusChangeNotification" : { + "properties" : { + "content" : { + "description" : "The details of the Account Holder status change.", + "$ref" : "#/components/schemas/AccountHolderStatusChangeNotificationContent" + }, + "error" : { + "description" : "Error information of failed request. No value provided here if no error occurred on processing.", + "$ref" : "#/components/schemas/NotificationErrorContainer" + }, + "eventDate" : { + "description" : "The date and time when an event has been completed.", + "format" : "date-time", + "type" : "string" + }, + "eventType" : { + "description" : "The event type of the notification.", + "type" : "string" + }, + "executingUserKey" : { + "description" : "The user or process that has triggered the notification.", + "type" : "string" + }, + "live" : { + "description" : "Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.", + "type" : "boolean" + }, + "pspReference" : { + "description" : "The PSP reference of the request from which the notification originates.", + "type" : "string" + } + }, + "required" : [ + "executingUserKey", + "pspReference", + "eventType", + "live", + "eventDate" + ] + }, + "AccountHolderStatusChangeNotificationContent" : { + "properties" : { + "accountHolderCode" : { + "description" : "The code of the account holder.", + "type" : "string" + }, + "invalidFields" : { + "description" : "in case the account holder has not been updated, contains account holder fields, that did not pass the validation.", + "items" : { + "$ref" : "#/components/schemas/ErrorFieldType" + }, + "type" : "array" + }, + "newStatus" : { + "description" : "The new status of the account holder.", + "$ref" : "#/components/schemas/AccountHolderStatus" + }, + "oldStatus" : { + "description" : "The former status of the account holder.", + "$ref" : "#/components/schemas/AccountHolderStatus" + }, + "reason" : { + "description" : "The reason for the status change.", + "type" : "string" + } + }, + "required" : [ + "accountHolderCode", + "oldStatus", + "newStatus" + ] + }, + "AccountHolderStoreStatusChangeNotification" : { + "properties" : { + "content" : { + "description" : "The details of the Account Holder Store status change.", + "$ref" : "#/components/schemas/AccountHolderStoreStatusChangeNotificationContent" + }, + "error" : { + "description" : "Error information of failed request. No value provided here if no error occurred on processing.", + "$ref" : "#/components/schemas/NotificationErrorContainer" + }, + "eventDate" : { + "description" : "The date and time when an event has been completed.", + "format" : "date-time", + "type" : "string" + }, + "eventType" : { + "description" : "The event type of the notification.", + "type" : "string" + }, + "executingUserKey" : { + "description" : "The user or process that has triggered the notification.", + "type" : "string" + }, + "live" : { + "description" : "Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.", + "type" : "boolean" + }, + "pspReference" : { + "description" : "The PSP reference of the request from which the notification originates.", + "type" : "string" + } + }, + "required" : [ + "executingUserKey", + "pspReference", + "eventType", + "live", + "eventDate" + ] + }, + "AccountHolderStoreStatusChangeNotificationContent" : { + "properties" : { + "accountHolderCode" : { + "description" : "The code of the account holder.", + "type" : "string" + }, + "invalidFields" : { + "description" : "In case the store status has not been updated, contains fields that did not pass the validation.", + "items" : { + "$ref" : "#/components/schemas/ErrorFieldType" + }, + "type" : "array" + }, + "newStatus" : { + "description" : "The new status of the account holder.", + "enum" : [ + "Active", + "Closed", + "Inactive", + "InactiveWithModifications", + "Pending" + ], + "type" : "string" + }, + "oldStatus" : { + "description" : "The former status of the account holder.", + "enum" : [ + "Active", + "Closed", + "Inactive", + "InactiveWithModifications", + "Pending" + ], + "type" : "string" + }, + "reason" : { + "description" : "The reason for the status change.", + "type" : "string" + }, + "store" : { + "description" : "Alphanumeric identifier of the store.", + "type" : "string" + }, + "storeReference" : { + "description" : "Store store reference.", + "type" : "string" + } + }, + "required" : [ + "accountHolderCode", + "store", + "storeReference", + "oldStatus", + "newStatus" + ] + }, + "AccountHolderUpcomingDeadlineNotification" : { + "properties" : { + "content" : { + "description" : "The details of the upcoming event.", + "$ref" : "#/components/schemas/AccountHolderUpcomingDeadlineNotificationContent" + }, + "error" : { + "description" : "Error information of failed request. No value provided here if no error occurred on processing.", + "$ref" : "#/components/schemas/NotificationErrorContainer" + }, + "eventDate" : { + "description" : "The date and time when an event has been completed.", + "format" : "date-time", + "type" : "string" + }, + "eventType" : { + "description" : "The event type of the notification.", + "type" : "string" + }, + "executingUserKey" : { + "description" : "The user or process that has triggered the notification.", + "type" : "string" + }, + "live" : { + "description" : "Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.", + "type" : "boolean" + }, + "pspReference" : { + "description" : "The PSP reference of the request from which the notification originates.", + "type" : "string" + } + }, + "required" : [ + "executingUserKey", + "pspReference", + "eventType", + "live", + "eventDate" + ] + }, + "AccountHolderUpcomingDeadlineNotificationContent" : { + "properties" : { + "accountHolderCode" : { + "description" : "The code of the account holder whom the event refers to.", + "type" : "string" + }, + "event" : { + "description" : "The event name that will be trigger if no action is taken.", + "enum" : [ + "AccessPii", + "CloseAccount", + "CloseStores", + "DeleteBankAccounts", + "DeletePayoutInstrumentTokens", + "DeletePayoutMethods", + "DeleteShareholders", + "InactivateAccount", + "RecalculateAccountStatusAndProcessingTier", + "RefundNotPaidOutTransfers", + "ResolveEvents", + "SaveAccountHolder", + "SaveKYCCheckStatus", + "SuspendAccount", + "UnSuspendAccount", + "UpdateAccountHolderState", + "Verification" + ], + "type" : "string" + }, + "executionDate" : { + "description" : "The execution date scheduled for the event.", + "$ref" : "#/components/schemas/LocalDate" + }, + "reason" : { + "description" : "The reason that leads to scheduling of the event.", + "type" : "string" + } + } + }, + "AccountHolderUpdateNotification" : { + "properties" : { + "content" : { + "description" : "The details of the Account Holder update.", + "$ref" : "#/components/schemas/UpdateAccountHolderResponse" + }, + "error" : { + "description" : "Error information of failed request. No value provided here if no error occurred on processing.", + "$ref" : "#/components/schemas/NotificationErrorContainer" + }, + "eventDate" : { + "description" : "The date and time when an event has been completed.", + "format" : "date-time", + "type" : "string" + }, + "eventType" : { + "description" : "The event type of the notification.", + "type" : "string" + }, + "executingUserKey" : { + "description" : "The user or process that has triggered the notification.", + "type" : "string" + }, + "live" : { + "description" : "Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.", + "type" : "boolean" + }, + "pspReference" : { + "description" : "The PSP reference of the request from which the notification originates.", + "type" : "string" + } + }, + "required" : [ + "executingUserKey", + "pspReference", + "eventType", + "live", + "eventDate", + "content" + ] + }, + "AccountHolderVerificationNotification" : { + "properties" : { + "content" : { + "description" : "The details of the Account Holder verification.", + "$ref" : "#/components/schemas/AccountHolderVerificationNotificationContent" + }, + "error" : { + "description" : "Error information of failed request. No value provided here if no error occurred on processing.", + "$ref" : "#/components/schemas/NotificationErrorContainer" + }, + "eventDate" : { + "description" : "The date and time when an event has been completed.", + "format" : "date-time", + "type" : "string" + }, + "eventType" : { + "description" : "The event type of the notification.", + "type" : "string" + }, + "executingUserKey" : { + "description" : "The user or process that has triggered the notification.", + "type" : "string" + }, + "live" : { + "description" : "Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.", + "type" : "boolean" + }, + "pspReference" : { + "description" : "The PSP reference of the request from which the notification originates.", + "type" : "string" + } + }, + "required" : [ + "executingUserKey", + "pspReference", + "eventType", + "live", + "eventDate", + "content" + ] + }, + "AccountHolderVerificationNotificationContent" : { + "properties" : { + "accountHolderCode" : { + "description" : "The code of the account holder.", + "type" : "string" + }, + "kycCheckStatusData" : { + "description" : "Information on the verification status", + "$ref" : "#/components/schemas/KYCCheckStatusData" + }, + "payoutMethodCode" : { + "description" : "The unique code of the payout method that has been verified.", + "type" : "string" + }, + "shareholderCode" : { + "description" : "The code of the shareholder that has been verified.", + "type" : "string" + } + }, + "required" : [ + "accountHolderCode" + ] + }, + "AccountPayoutState" : { + "properties" : { + "allowPayout" : { + "description" : "Indicates whether payouts are allowed. This field is the overarching payout status, and is the aggregate of multiple conditions (e.g., KYC status, disabled flag, etc). If this field is false, no payouts will be permitted for any of the account holder's accounts. If this field is true, payouts will be permitted for any of the account holder's accounts.", + "type" : "boolean" + }, + "disableReason" : { + "description" : "The reason why payouts (to all of the account holder's accounts) have been disabled (by the platform). If the `disabled` field is true, this field can be used to explain why.", + "type" : "string" + }, + "disabled" : { + "description" : "Indicates whether payouts have been disabled (by the platform) for all of the account holder's accounts. A platform may enable and disable this field at their discretion. If this field is true, `allowPayout` will be false and no payouts will be permitted for any of the account holder's accounts. If this field is false, `allowPayout` may or may not be enabled, depending on other factors.", + "type" : "boolean" + }, + "notAllowedReason" : { + "description" : "The reason why payouts (to all of the account holder's accounts) have been disabled (by Adyen). If payouts have been disabled by Adyen, this field will explain why. If this field is blank, payouts have not been disabled by Adyen.", + "type" : "string" + }, + "payoutLimit" : { + "description" : "The maximum amount that payouts are limited to. Only applies if payouts are allowed but limited.", + "$ref" : "#/components/schemas/Amount" + }, + "tierNumber" : { + "description" : "The payout tier that the account holder occupies.", + "format" : "int32", + "type" : "integer" + } + } + }, + "AccountProcessingState" : { + "properties" : { + "disableReason" : { + "description" : "The reason why processing has been disabled.", + "type" : "string" + }, + "disabled" : { + "description" : "Indicates whether the processing of payments is allowed.", + "type" : "boolean" + }, + "processedFrom" : { + "description" : "The lower bound of the processing tier (i.e., an account holder must have processed at least this amount of money in order to be placed into this tier).", + "$ref" : "#/components/schemas/Amount" + }, + "processedTo" : { + "description" : "The upper bound of the processing tier (i.e., an account holder must have processed less than this amount of money in order to be placed into this tier).", + "$ref" : "#/components/schemas/Amount" + }, + "tierNumber" : { + "description" : "The processing tier that the account holder occupies.", + "format" : "int32", + "type" : "integer" + } + } + }, + "AccountUpdateNotification" : { + "properties" : { + "content" : { + "description" : "The details of the Account update.", + "$ref" : "#/components/schemas/UpdateAccountResponse" + }, + "error" : { + "description" : "Error information of failed request. No value provided here if no error occurred on processing.", + "$ref" : "#/components/schemas/NotificationErrorContainer" + }, + "eventDate" : { + "description" : "The date and time when an event has been completed.", + "format" : "date-time", + "type" : "string" + }, + "eventType" : { + "description" : "The event type of the notification.", + "type" : "string" + }, + "executingUserKey" : { + "description" : "The user or process that has triggered the notification.", + "type" : "string" + }, + "live" : { + "description" : "Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.", + "type" : "boolean" + }, + "pspReference" : { + "description" : "The PSP reference of the request from which the notification originates.", + "type" : "string" + } + }, + "required" : [ + "executingUserKey", + "pspReference", + "eventType", + "live", + "eventDate", + "content" + ] + }, + "Amount" : { + "properties" : { + "currency" : { + "description" : "The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).", + "maxLength" : 3, + "minLength" : 3, + "type" : "string" + }, + "value" : { + "description" : "The payable amount that can be charged for the transaction.\n\nThe transaction amount needs to be represented in minor units according to the [following table](https://docs.adyen.com/development-resources/currency-codes).", + "format" : "int64", + "type" : "integer" + } + }, + "required" : [ + "value", + "currency" + ] + }, + "BankAccountDetail" : { + "properties" : { + "accountNumber" : { + "description" : "The bank account number (without separators).\n>Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements.", + "type" : "string" + }, + "accountType" : { + "description" : "The type of bank account.\nOnly applicable to bank accounts held in the USA.\nThe permitted values are: `checking`, `savings`.\n\n>Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements.", + "type" : "string" + }, + "bankAccountName" : { + "description" : "The name of the bank account.", + "type" : "string" + }, + "bankAccountReference" : { + "description" : "Merchant reference to the bank account.", + "type" : "string" + }, + "bankAccountUUID" : { + "description" : "The unique identifier (UUID) of the Bank Account.\n>If, during an account holder create or update request, this field is left blank (but other fields provided), a new Bank Account will be created with a procedurally-generated UUID.\n\n>If, during an account holder create request, a UUID is provided, the creation of the Bank Account will fail while the creation of the account holder will continue.\n\n>If, during an account holder update request, a UUID that is not correlated with an existing Bank Account is provided, the update of the account holder will fail.\n\n>If, during an account holder update request, a UUID that is correlated with an existing Bank Account is provided, the existing Bank Account will be updated.\n", + "type" : "string" + }, + "bankBicSwift" : { + "description" : "The bank identifier code.\n>Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements.", + "type" : "string" + }, + "bankCity" : { + "description" : "The city in which the bank branch is located.\n\n>Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements.", + "type" : "string" + }, + "bankCode" : { + "description" : "The bank code of the banking institution with which the bank account is registered.\n\n>Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements.", + "type" : "string" + }, + "bankName" : { + "description" : "The name of the banking institution with which the bank account is held.\n\n>Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements.", + "type" : "string" + }, + "branchCode" : { + "description" : "The branch code of the branch under which the bank account is registered. The value to be specified in this parameter depends on the country of the bank account:\n* United States - Routing number\n* United Kingdom - Sort code\n* Germany - Bankleitzahl\n>Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements.", + "type" : "string" + }, + "checkCode" : { + "description" : "The check code of the bank account.\n\n>Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements.", + "type" : "string" + }, + "countryCode" : { + "description" : "The two-letter country code in which the bank account is registered.\n>The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. 'NL').\n\n>Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements.", + "type" : "string" + }, + "currencyCode" : { + "description" : "The currency in which the bank account deals.\n>The permitted currency codes are defined in ISO-4217 (e.g. 'EUR').\n\n>Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements.", + "type" : "string" + }, + "iban" : { + "description" : "The international bank account number.\n>The IBAN standard is defined in ISO-13616.\n\n>Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements.", + "type" : "string" + }, + "ownerCity" : { + "description" : "The city of residence of the bank account owner.\n>Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements.", + "type" : "string" + }, + "ownerCountryCode" : { + "description" : "The country code of the country of residence of the bank account owner.\n>The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. 'NL').\n\n>Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements.", + "type" : "string" + }, + "ownerDateOfBirth" : { + "description" : "The date of birth of the bank account owner.\n", + "type" : "string" + }, + "ownerHouseNumberOrName" : { + "description" : "The house name or number of the residence of the bank account owner.\n>Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements.", + "type" : "string" + }, + "ownerName" : { + "description" : "The name of the bank account owner.\n>Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements.", + "type" : "string" + }, + "ownerNationality" : { + "description" : "The country code of the country of nationality of the bank account owner.\n>The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. 'NL').\n\n>Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements.", + "type" : "string" + }, + "ownerPostalCode" : { + "description" : "The postal code of the residence of the bank account owner.\n>Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements.", + "type" : "string" + }, + "ownerState" : { + "description" : "The state of residence of the bank account owner.\n>Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements.", + "type" : "string" + }, + "ownerStreet" : { + "description" : "The street name of the residence of the bank account owner.\n>Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements.", + "type" : "string" + }, + "primaryAccount" : { + "description" : "If set to true, the bank account is a primary account.", + "type" : "boolean" + }, + "taxId" : { + "description" : "The tax ID number.\n\n>Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements.", + "type" : "string" + }, + "urlForVerification" : { + "description" : "The URL to be used for bank account verification.\nThis may be generated on bank account creation.\n\n>Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements.", + "type" : "string" + } + } + }, + "BeneficiarySetupNotification" : { + "properties" : { + "content" : { + "description" : "Details of the beneficiary setup.", + "$ref" : "#/components/schemas/BeneficiarySetupNotificationContent" + }, + "error" : { + "description" : "Error information of failed request. No value provided here if no error occurred on processing.", + "$ref" : "#/components/schemas/NotificationErrorContainer" + }, + "eventDate" : { + "description" : "The date and time when an event has been completed.", + "format" : "date-time", + "type" : "string" + }, + "eventType" : { + "description" : "The event type of the notification.", + "type" : "string" + }, + "executingUserKey" : { + "description" : "The user or process that has triggered the notification.", + "type" : "string" + }, + "live" : { + "description" : "Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.", + "type" : "boolean" + }, + "pspReference" : { + "description" : "The PSP reference of the request from which the notification originates.", + "type" : "string" + } + }, + "required" : [ + "executingUserKey", + "pspReference", + "eventType", + "live", + "eventDate", + "content" + ] + }, + "BeneficiarySetupNotificationContent" : { + "properties" : { + "destinationAccountCode" : { + "description" : "The code of the beneficiary account.", + "type" : "string" + }, + "destinationAccountHolderCode" : { + "description" : "The code of the beneficiary Account Holder.", + "type" : "string" + }, + "invalidFields" : { + "description" : "A listing of the invalid fields which have caused the Setup Beneficiary request to fail. If this is empty, the Setup Beneficiary request has succeeded.", + "items" : { + "$ref" : "#/components/schemas/ErrorFieldType" + }, + "type" : "array" + }, + "merchantReference" : { + "description" : "The reference provided by the merchant.", + "type" : "string" + }, + "sourceAccountCode" : { + "description" : "The code of the benefactor account.", + "type" : "string" + }, + "sourceAccountHolderCode" : { + "description" : "The code of the benefactor Account Holder.", + "type" : "string" + }, + "transferDate" : { + "description" : "The date on which the beneficiary was set up and funds transferred from benefactor to beneficiary.", + "format" : "date-time", + "type" : "string" + } + }, + "required" : [ + "sourceAccountHolderCode", + "sourceAccountCode", + "destinationAccountHolderCode", + "destinationAccountCode", + "transferDate" + ] + }, + "BusinessDetails" : { + "properties" : { + "doingBusinessAs" : { + "description" : "The registered name of the company (if it differs from the legal name of the company).", + "type" : "string" + }, + "legalBusinessName" : { + "description" : "The legal name of the company.", + "type" : "string" + }, + "registrationNumber" : { + "description" : "The registration number of the company.", + "type" : "string" + }, + "shareholders" : { + "description" : "Each of the shareholders associated with the company.\nEach array entry should represent one shareholder.", + "items" : { + "$ref" : "#/components/schemas/ShareholderContact" + }, + "type" : "array" + }, + "stockExchange" : { + "description" : "Market Identifier Code (MIC).", + "type" : "string" + }, + "stockNumber" : { + "description" : "International Securities Identification Number (ISIN).", + "type" : "string" + }, + "stockTicker" : { + "description" : "Stock Ticker symbol.", + "type" : "string" + }, + "taxId" : { + "description" : "The tax ID of the company.", + "type" : "string" + } + } + }, + "CloseAccountResponse" : { + "properties" : { + "accountCode" : { + "description" : "The account code of the account that is closed.", + "type" : "string" + }, + "invalidFields" : { + "description" : "Contains field validation errors that would prevent requests from being processed.", + "items" : { + "$ref" : "#/components/schemas/ErrorFieldType" + }, + "type" : "array" + }, + "pspReference" : { + "description" : "The reference of a request. Can be used to uniquely identify the request.", + "type" : "string" + }, + "resultCode" : { + "description" : "The result code.", + "type" : "string" + }, + "status" : { + "description" : "The new status of the account.\n>Permitted values: `Active`, `Inactive`, `Suspended`, `Closed`.", + "enum" : [ + "Active", + "Closed", + "Inactive", + "Suspended" + ], + "type" : "string" + } + }, + "required" : [ + "pspReference", + "status" + ] + }, + "CompensateNegativeBalanceNotification" : { + "properties" : { + "content" : { + "description" : "Details of the negative balance compensation.", + "$ref" : "#/components/schemas/CompensateNegativeBalanceNotificationContent" + }, + "error" : { + "description" : "Error information of failed request. No value provided here if no error occurred on processing.", + "$ref" : "#/components/schemas/NotificationErrorContainer" + }, + "eventDate" : { + "description" : "The date and time when an event has been completed.", + "format" : "date-time", + "type" : "string" + }, + "eventType" : { + "description" : "The event type of the notification.", + "type" : "string" + }, + "executingUserKey" : { + "description" : "The user or process that has triggered the notification.", + "type" : "string" + }, + "live" : { + "description" : "Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.", + "type" : "boolean" + }, + "pspReference" : { + "description" : "The PSP reference of the request from which the notification originates.", + "type" : "string" + } + }, + "required" : [ + "executingUserKey", + "pspReference", + "eventType", + "live", + "eventDate" + ] + }, + "CompensateNegativeBalanceNotificationContent" : { + "properties" : { + "records" : { + "description" : "A list of the negative balances compensated.", + "items" : { + "$ref" : "#/components/schemas/CompensateNegativeBalanceNotificationRecord" + }, + "type" : "array" + } + }, + "required" : [ + "records" + ] + }, + "CompensateNegativeBalanceNotificationRecord" : { + "properties" : { + "accountCode" : { + "description" : "The code of the account whose negative balance has been compensated.", + "type" : "string" + }, + "amount" : { + "description" : "The amount compensated.", + "$ref" : "#/components/schemas/Amount" + }, + "transferDate" : { + "description" : "The date on which the compensation took place.", + "format" : "date-time", + "type" : "string" + } + }, + "required" : [ + "accountCode", + "transferDate", + "amount" + ] + }, + "CreateAccountHolderResponse" : { + "properties" : { + "accountCode" : { + "description" : "The code of a new account created for the account holder.", + "type" : "string" + }, + "accountHolderCode" : { + "description" : "The code of the new account holder.", + "type" : "string" + }, + "accountHolderDetails" : { + "description" : "Details of the new account holder.", + "$ref" : "#/components/schemas/AccountHolderDetails" + }, + "accountHolderStatus" : { + "description" : "The status of the new account holder.", + "$ref" : "#/components/schemas/AccountHolderStatus" + }, + "description" : { + "description" : "The description of the new account holder.", + "type" : "string" + }, + "invalidFields" : { + "description" : "A list of fields that caused the `/createAccountHolder` request to fail.", + "items" : { + "$ref" : "#/components/schemas/ErrorFieldType" + }, + "type" : "array" + }, + "legalEntity" : { + "description" : "The type of legal entity of the new account holder.", + "enum" : [ + "Business", + "Individual", + "NonProfit", + "Partnership", + "PublicCompany" + ], + "type" : "string" + }, + "primaryCurrency" : { + "description" : "The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes), with which the prospective account holder primarily deals.", + "type" : "string" + }, + "pspReference" : { + "description" : "The reference of a request. Can be used to uniquely identify the request.", + "type" : "string" + }, + "resultCode" : { + "description" : "The result code.", + "type" : "string" + }, + "verification" : { + "description" : "The details of KYC Verification of the account holder.", + "$ref" : "#/components/schemas/KYCVerificationResult" + }, + "verificationProfile" : { + "description" : "The identifier of the profile that applies to this entity.", + "type" : "string" + } + }, + "required" : [ + "pspReference", + "accountHolderCode", + "accountHolderStatus", + "accountHolderDetails", + "verification", + "legalEntity" + ] + }, + "CreateAccountResponse" : { + "properties" : { + "accountCode" : { + "description" : "The code of the new account.", + "type" : "string" + }, + "accountHolderCode" : { + "description" : "The code of the account holder.", + "type" : "string" + }, + "description" : { + "description" : "The description of the account.", + "type" : "string" + }, + "invalidFields" : { + "description" : "A list of fields that caused the `/createAccount` request to fail.", + "items" : { + "$ref" : "#/components/schemas/ErrorFieldType" + }, + "type" : "array" + }, + "metadata" : { + "additionalProperties" : { + "type" : "string" + }, + "type" : "object" + }, + "payoutSchedule" : { + "description" : "The payout schedule of the account.", + "$ref" : "#/components/schemas/PayoutScheduleResponse" + }, + "payoutSpeed" : { + "description" : "Speed with which payouts for this account are processed. Permitted values: `STANDARD`, `SAME_DAY`.", + "enum" : [ + "SAME_DAY", + "STANDARD" + ], + "type" : "string" + }, + "pspReference" : { + "description" : "The reference of a request. Can be used to uniquely identify the request.", + "type" : "string" + }, + "resultCode" : { + "description" : "The result code.", + "type" : "string" + }, + "status" : { + "description" : "The status of the account.\n>Permitted values: `Active`.", + "enum" : [ + "Active", + "Closed", + "Inactive", + "Suspended" + ], + "type" : "string" + } + }, + "required" : [ + "pspReference", + "accountHolderCode", + "accountCode", + "status" + ] + }, + "DirectDebitInitiatedNotification" : { + "properties" : { + "content" : { + "description" : "Details of the direct debit.", + "$ref" : "#/components/schemas/DirectDebitInitiatedNotificationContent" + }, + "error" : { + "description" : "Error information of failed request. No value provided here if no error occurred on processing.", + "$ref" : "#/components/schemas/NotificationErrorContainer" + }, + "eventDate" : { + "description" : "The date and time when an event has been completed.", + "format" : "date-time", + "type" : "string" + }, + "eventType" : { + "description" : "The event type of the notification.", + "type" : "string" + }, + "executingUserKey" : { + "description" : "The user or process that has triggered the notification.", + "type" : "string" + }, + "live" : { + "description" : "Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.", + "type" : "boolean" + }, + "pspReference" : { + "description" : "The PSP reference of the request from which the notification originates.", + "type" : "string" + } + }, + "required" : [ + "executingUserKey", + "pspReference", + "eventType", + "live", + "eventDate" + ] + }, + "DirectDebitInitiatedNotificationContent" : { + "properties" : { + "accountCode" : { + "description" : "The code of the account.", + "type" : "string" + }, + "amount" : { + "description" : "The amount to be debited from the funding account.", + "$ref" : "#/components/schemas/Amount" + }, + "debitInitiationDate" : { + "description" : "The date of the debit initiation.", + "$ref" : "#/components/schemas/LocalDate" + }, + "merchantAccountCode" : { + "description" : "The code of the merchant account.", + "type" : "string" + }, + "status" : { + "description" : "Direct debit status.", + "$ref" : "#/components/schemas/OperationStatus" + } + }, + "required" : [ + "amount", + "accountCode", + "merchantAccountCode" + ] + }, + "ErrorFieldType" : { + "properties" : { + "errorCode" : { + "description" : "The validation error code.", + "format" : "int32", + "type" : "integer" + }, + "errorDescription" : { + "description" : "A description of the validation error.", + "type" : "string" + }, + "fieldType" : { + "description" : "The type of error field.", + "$ref" : "#/components/schemas/FieldType" + } + } + }, + "FieldType" : { + "properties" : { + "field" : { + "description" : "The full name of the property.", + "type" : "string" + }, + "fieldName" : { + "description" : "The type of the field.", + "enum" : [ + "accountCode", + "accountHolderCode", + "accountHolderDetails", + "accountNumber", + "accountStateType", + "accountStatus", + "accountType", + "address", + "bankAccount", + "bankAccountCode", + "bankAccountName", + "bankAccountUUID", + "bankBicSwift", + "bankCity", + "bankCode", + "bankName", + "bankStatement", + "branchCode", + "businessContact", + "cardToken", + "checkCode", + "city", + "companyRegistration", + "country", + "countryCode", + "currency", + "currencyCode", + "dateOfBirth", + "description", + "destinationAccountCode", + "document", + "documentExpirationDate", + "documentIssuerCountry", + "documentIssuerState", + "documentName", + "documentNumber", + "documentType", + "doingBusinessAs", + "drivingLicence", + "drivingLicenceBack", + "drivingLicense", + "email", + "firstName", + "fullPhoneNumber", + "gender", + "hopWebserviceUser", + "houseNumberOrName", + "iban", + "idCard", + "idCardBack", + "idCardFront", + "idNumber", + "identityDocument", + "individualDetails", + "lastName", + "legalBusinessName", + "legalEntity", + "legalEntityType", + "merchantAccount", + "merchantCategoryCode", + "merchantReference", + "microDeposit", + "name", + "nationality", + "originalReference", + "ownerCity", + "ownerCountryCode", + "ownerHouseNumberOrName", + "ownerName", + "ownerPostalCode", + "ownerState", + "ownerStreet", + "passport", + "passportNumber", + "payoutMethodCode", + "personalData", + "phoneCountryCode", + "phoneNumber", + "postalCode", + "primaryCurrency", + "reason", + "registrationNumber", + "returnUrl", + "schedule", + "shareholder", + "shareholderCode", + "socialSecurityNumber", + "sourceAccountCode", + "stateOrProvince", + "status", + "stockExchange", + "stockNumber", + "stockTicker", + "store", + "storeDetail", + "storeName", + "storeReference", + "street", + "taxId", + "tier", + "tierNumber", + "transferCode", + "unknown", + "value", + "virtualAccount", + "visaNumber", + "webAddress" + ], + "type" : "string" + }, + "shareholderCode" : { + "description" : "The code of the shareholder that the field belongs to. If empty, the field belongs to an account holder.", + "type" : "string" + } + } + }, + "IndividualDetails" : { + "properties" : { + "name" : { + "description" : "The name of the individual.\n>Make sure your account holder registers using the name shown on their Photo ID.", + "$ref" : "#/components/schemas/ViasName" + }, + "personalData" : { + "description" : "Personal information of the individual.", + "$ref" : "#/components/schemas/ViasPersonalData" + } + } + }, + "KYCCheckResult" : { + "properties" : { + "checks" : { + "description" : "A list of the checks and their statuses.", + "items" : { + "$ref" : "#/components/schemas/KYCCheckStatusData" + }, + "type" : "array" + } + } + }, + "KYCCheckStatusData" : { + "properties" : { + "requiredFields" : { + "description" : "A list of the fields required for execution of the check.", + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "status" : { + "description" : "The status of the check.\n>Permitted Values: `DATA_PROVIDED`, `PASSED`, `PENDING`, `AWAITING_DATA`, `RETRY_LIMIT_REACHED`, `INVALID_DATA`, `FAILED`.", + "enum" : [ + "AWAITING_DATA", + "DATA_PROVIDED", + "FAILED", + "INVALID_DATA", + "PASSED", + "PENDING", + "PENDING_REVIEW", + "RETRY_LIMIT_REACHED", + "UNCHECKED" + ], + "type" : "string" + }, + "summary" : { + "description" : "A summary of the execution of the check.", + "$ref" : "#/components/schemas/KYCCheckSummary" + }, + "type" : { + "description" : "The type of check.\n>Permitted Values: `COMPANY_VERIFICATION`, `IDENTITY_VERIFICATION`, `PASSPORT_VERIFICATION`, `BANK_ACCOUNT_VERIFICATION`, `NONPROFIT_VERIFICATION`, `CARD_VERIFICATION`.", + "enum" : [ + "BANK_ACCOUNT_VERIFICATION", + "CARD_VERIFICATION", + "COMPANY_VERIFICATION", + "IDENTITY_VERIFICATION", + "NONPROFIT_VERIFICATION", + "PASSPORT_VERIFICATION", + "PAYOUT_METHOD_VERIFICATION" + ], + "type" : "string" + } + }, + "required" : [ + "type", + "status" + ] + }, + "KYCCheckSummary" : { + "properties" : { + "kycCheckCode" : { + "description" : "The code of the check.", + "format" : "int32", + "type" : "integer" + }, + "kycCheckDescription" : { + "description" : "A description of the check.", + "type" : "string" + } + } + }, + "KYCPayoutMethodCheckResult" : { + "properties" : { + "checks" : { + "description" : "A list of the checks and their statuses.", + "items" : { + "$ref" : "#/components/schemas/KYCCheckStatusData" + }, + "type" : "array" + }, + "payoutMethodCode" : { + "description" : "The unique ID of the payoput method to which the check applies.", + "type" : "string" + } + } + }, + "KYCShareholderCheckResult" : { + "properties" : { + "checks" : { + "description" : "A list of the checks and their statuses.", + "items" : { + "$ref" : "#/components/schemas/KYCCheckStatusData" + }, + "type" : "array" + }, + "shareholderCode" : { + "description" : "The code of the shareholder to which the check applies.", + "type" : "string" + } + } + }, + "KYCVerificationResult" : { + "properties" : { + "accountHolder" : { + "description" : "The result(s) of the checks on the account holder.", + "$ref" : "#/components/schemas/KYCCheckResult" + }, + "payoutMethods" : { + "description" : "The result(s) of the checks on the payout method(s).", + "items" : { + "$ref" : "#/components/schemas/KYCPayoutMethodCheckResult" + }, + "type" : "array" + }, + "shareholders" : { + "description" : "The result(s) of the checks on the shareholder(s).", + "items" : { + "$ref" : "#/components/schemas/KYCShareholderCheckResult" + }, + "type" : "array" + } + } + }, + "LocalDate" : { + "properties" : { + "month" : { + "format" : "int32", + "type" : "integer" + }, + "year" : { + "format" : "int32", + "type" : "integer" + } + } + }, + "Message" : { + "properties" : { + "code" : { + "description" : "The message code.", + "type" : "string" + }, + "text" : { + "description" : "The message text.", + "type" : "string" + } + } + }, + "NotificationErrorContainer" : { + "properties" : { + "errorCode" : { + "description" : "The Adyen code that is mapped to the error message.", + "type" : "string" + }, + "message" : { + "description" : "A short explanation of the issue.", + "type" : "string" + } + } + }, + "NotificationResponse" : { + "properties" : { + "notificationResponse" : { + "description" : "Set this parameter to **[accepted]** to acknowledge that you received a notification from Adyen.", + "type" : "string" + } + } + }, + "OperationStatus" : { + "properties" : { + "message" : { + "description" : "The message regarding the operation status.", + "$ref" : "#/components/schemas/Message" + }, + "statusCode" : { + "description" : "The status code.", + "type" : "string" + } + } + }, + "PaymentFailureNotification" : { + "properties" : { + "content" : { + "description" : "The details of the payment failure.", + "$ref" : "#/components/schemas/PaymentFailureNotificationContent" + }, + "error" : { + "description" : "Error information of failed request. No value provided here if no error occurred on processing.", + "$ref" : "#/components/schemas/NotificationErrorContainer" + }, + "eventDate" : { + "description" : "The date and time when an event has been completed.", + "format" : "date-time", + "type" : "string" + }, + "eventType" : { + "description" : "The event type of the notification.", + "type" : "string" + }, + "executingUserKey" : { + "description" : "The user or process that has triggered the notification.", + "type" : "string" + }, + "live" : { + "description" : "Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.", + "type" : "boolean" + }, + "pspReference" : { + "description" : "The PSP reference of the request from which the notification originates.", + "type" : "string" + } + }, + "required" : [ + "executingUserKey", + "pspReference", + "eventType", + "live", + "eventDate", + "content" + ] + }, + "PaymentFailureNotificationContent" : { + "properties" : { + "errorFields" : { + "description" : "Missing or invalid fields that caused the payment error.", + "items" : { + "$ref" : "#/components/schemas/ErrorFieldType" + }, + "type" : "array" + }, + "errorMessage" : { + "description" : "The error message.", + "$ref" : "#/components/schemas/Message" + } + }, + "required" : [ + "errorMessage", + "errorFields" + ] + }, + "PayoutMethod" : { + "properties" : { + "merchantAccount" : { + "type" : "string" + }, + "payoutMethodCode" : { + "type" : "string" + }, + "payoutMethodType" : { + "enum" : [ + "CardToken" + ], + "type" : "string" + }, + "recurringDetailReference" : { + "type" : "string" + }, + "shopperReference" : { + "type" : "string" + } + }, + "required" : [ + "merchantAccount", + "shopperReference", + "recurringDetailReference" + ] + }, + "PayoutScheduleResponse" : { + "properties" : { + "nextScheduledPayout" : { + "description" : "The date of the next scheduled payout.", + "format" : "date-time", + "type" : "string" + }, + "schedule" : { + "description" : "The payout schedule of the account.\n>Permitted values: `DEFAULT`, `HOLD`, `DAILY`, `WEEKLY`, `MONTHLY`.", + "enum" : [ + "BIWEEKLY_ON_1ST_AND_15TH_AT_MIDNIGHT", + "BIWEEKLY_ON_1ST_AND_15TH_AT_NOON", + "DAILY", + "DAILY_6PM", + "DAILY_AU", + "DAILY_EU", + "DAILY_US", + "DEFAULT", + "EVERY_6_HOURS_FROM_MIDNIGHT", + "HOLD", + "MONTHLY", + "WEEKLY", + "WEEKLY_ON_TUE_FRI_MIDNIGHT", + "YEARLY" + ], + "type" : "string" + } + }, + "required" : [ + "schedule", + "nextScheduledPayout" + ] + }, + "PersonalDocumentData" : { + "properties" : { + "expirationDate" : { + "description" : "The expiration date of the document.\nThe date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).", + "type" : "string" + }, + "issuerCountry" : { + "description" : "The two-character country code of the issuer.\n>The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. 'NL').", + "maxLength" : 2, + "minLength" : 2, + "type" : "string" + }, + "issuerState" : { + "description" : "The state issued the document (if applicable)", + "type" : "string" + }, + "number" : { + "description" : "The number of the document. Delete the given type if the value empty.", + "type" : "string" + }, + "type" : { + "description" : "The type of the document. More then one item pert type does not allowed.\nValid values: ID, PASSPORT, VISA, DRIVINGLICENSE", + "enum" : [ + "DRIVINGLICENSE", + "ID", + "PASSPORT", + "SOCIALSECURITY", + "VISA" + ], + "type" : "string" + } + }, + "required" : [ + "type" + ] + }, + "RefundFundsTransferNotification" : { + "properties" : { + "content" : { + "description" : "Details of the fund transfer refund.", + "$ref" : "#/components/schemas/RefundFundsTransferNotificationContent" + }, + "error" : { + "description" : "Error information of failed request. No value provided here if no error occurred on processing.", + "$ref" : "#/components/schemas/NotificationErrorContainer" + }, + "eventDate" : { + "description" : "The date and time when an event has been completed.", + "format" : "date-time", + "type" : "string" + }, + "eventType" : { + "description" : "The event type of the notification.", + "type" : "string" + }, + "executingUserKey" : { + "description" : "The user or process that has triggered the notification.", + "type" : "string" + }, + "live" : { + "description" : "Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.", + "type" : "boolean" + }, + "pspReference" : { + "description" : "The PSP reference of the request from which the notification originates.", + "type" : "string" + } + }, + "required" : [ + "executingUserKey", + "pspReference", + "eventType", + "live", + "eventDate", + "content" + ] + }, + "RefundFundsTransferNotificationContent" : { + "properties" : { + "amount" : { + "description" : "The amount to be refunded.", + "$ref" : "#/components/schemas/Amount" + }, + "invalidFields" : { + "description" : "Invalid fields list.", + "items" : { + "$ref" : "#/components/schemas/ErrorFieldType" + }, + "type" : "array" + }, + "merchantReference" : { + "description" : "A value that can be supplied at the discretion of the executing user in order to link multiple transactions to one another.", + "type" : "string" + }, + "originalReference" : { + "description" : "A PSP reference of the original fund transfer.", + "type" : "string" + }, + "status" : { + "description" : "The status of the fund transfer refund.", + "$ref" : "#/components/schemas/OperationStatus" + } + }, + "required" : [ + "originalReference", + "amount" + ] + }, + "RefundResult" : { + "properties" : { + "originalTransaction" : { + "description" : "The transaction that has been refunded.", + "$ref" : "#/components/schemas/Transaction" + }, + "pspReference" : { + "description" : "The reference of the refund.", + "type" : "string" + }, + "response" : { + "description" : "The response indicating if the refund has been received for processing.", + "type" : "string" + } + }, + "required" : [ + "pspReference", + "originalTransaction" + ] + }, + "ReportAvailableNotification" : { + "properties" : { + "content" : { + "description" : "Details of the report.", + "$ref" : "#/components/schemas/ReportAvailableNotificationContent" + }, + "error" : { + "description" : "Error information of failed request. No value provided here if no error occurred on processing.", + "$ref" : "#/components/schemas/NotificationErrorContainer" + }, + "eventDate" : { + "description" : "The date and time when an event has been completed.", + "format" : "date-time", + "type" : "string" + }, + "eventType" : { + "description" : "The event type of the notification.", + "type" : "string" + }, + "executingUserKey" : { + "description" : "The user or process that has triggered the notification.", + "type" : "string" + }, + "live" : { + "description" : "Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.", + "type" : "boolean" + }, + "pspReference" : { + "description" : "The PSP reference of the request from which the notification originates.", + "type" : "string" + } + }, + "required" : [ + "executingUserKey", + "pspReference", + "eventType", + "live", + "eventDate", + "content" + ] + }, + "ReportAvailableNotificationContent" : { + "properties" : { + "accountCode" : { + "description" : "The code of the Account to which the report applies.", + "type" : "string" + }, + "accountType" : { + "description" : "The type of Account to which the report applies.", + "type" : "string" + }, + "eventDate" : { + "description" : "The date of the event to which the report applies.", + "format" : "date-time", + "type" : "string" + }, + "remoteAccessUrl" : { + "description" : "The URL at which the report can be accessed.", + "type" : "string" + }, + "success" : { + "description" : "Indicates whether the event resulted in a success.", + "type" : "boolean" + } + } + }, + "ScheduledRefundsNotification" : { + "properties" : { + "content" : { + "description" : "Details of the scheduling of the refunds.", + "$ref" : "#/components/schemas/ScheduledRefundsNotificationContent" + }, + "error" : { + "description" : "Error information of failed request. No value provided here if no error occurred on processing.", + "$ref" : "#/components/schemas/NotificationErrorContainer" + }, + "eventDate" : { + "description" : "The date and time when an event has been completed.", + "format" : "date-time", + "type" : "string" + }, + "eventType" : { + "description" : "The event type of the notification.", + "type" : "string" + }, + "executingUserKey" : { + "description" : "The user or process that has triggered the notification.", + "type" : "string" + }, + "live" : { + "description" : "Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.", + "type" : "boolean" + }, + "pspReference" : { + "description" : "The PSP reference of the request from which the notification originates.", + "type" : "string" + } + }, + "required" : [ + "executingUserKey", + "pspReference", + "eventType", + "live", + "eventDate", + "content" + ] + }, + "ScheduledRefundsNotificationContent" : { + "properties" : { + "accountCode" : { + "description" : "The code of the account.", + "type" : "string" + }, + "accountHolderCode" : { + "description" : "The code of the Account Holder.", + "type" : "string" + }, + "invalidFields" : { + "description" : "Invalid fields list.", + "items" : { + "$ref" : "#/components/schemas/ErrorFieldType" + }, + "type" : "array" + }, + "lastPayout" : { + "description" : "The most recent payout (after which all transactions were scheduled to be refunded).", + "$ref" : "#/components/schemas/Transaction" + }, + "refundResults" : { + "description" : "A list of the refunds that have been scheduled and their results.", + "items" : { + "$ref" : "#/components/schemas/RefundResult" + }, + "type" : "array" + } + }, + "required" : [ + "accountHolderCode", + "accountCode", + "refundResults", + "lastPayout" + ] + }, + "ShareholderContact" : { + "properties" : { + "address" : { + "description" : "The address of the contact.", + "$ref" : "#/components/schemas/ViasAddress" + }, + "email" : { + "description" : "The e-mail address of the contact.", + "type" : "string" + }, + "fullPhoneNumber" : { + "description" : "The phone number of the contact provided as a single string. It will be handled as a landline phone.\n**Examples:** \"0031 6 11 22 33 44\", \"+316/1122-3344\", \"(0031) 611223344\"", + "type" : "string" + }, + "name" : { + "description" : "The name of the contact.", + "$ref" : "#/components/schemas/ViasName" + }, + "personalData" : { + "description" : "Personal data of the Shareholder.", + "$ref" : "#/components/schemas/ViasPersonalData" + }, + "phoneNumber" : { + "description" : "The phone number of the contact.", + "$ref" : "#/components/schemas/ViasPhoneNumber" + }, + "shareholderCode" : { + "description" : "The unique identifier (UUID) of the Shareholder.\n>**If, during an Account Holder create or update request, this field is left blank (but other fields provided), a new Shareholder will be created with a procedurally-generated UUID.**\n\n>**If, during an Account Holder create request, a UUID is provided, the creation of the Shareholder will fail while the creation of the Account Holder will continue.**\n\n>**If, during an Account Holder update request, a UUID that is not correlated with an existing Shareholder is provided, the update of the Shareholder will fail.**\n\n>**If, during an Account Holder update request, a UUID that is correlated with an existing Shareholder is provided, the existing Shareholder will be updated.**\n", + "type" : "string" + }, + "shareholderReference" : { + "description" : "Merchant reference to the Shareholder.", + "type" : "string" + }, + "webAddress" : { + "description" : "The URL of the website of the contact.", + "type" : "string" + } + } + }, + "Transaction" : { + "properties" : { + "amount" : { + "description" : "The amount of the transaction.", + "$ref" : "#/components/schemas/Amount" + }, + "bankAccountDetail" : { + "description" : "The details of the bank account to where a payout was made.", + "$ref" : "#/components/schemas/BankAccountDetail" + }, + "captureMerchantReference" : { + "description" : "The merchant reference of a related capture.", + "type" : "string" + }, + "capturePspReference" : { + "description" : "The psp reference of a related capture.", + "type" : "string" + }, + "creationDate" : { + "description" : "The date on which the transaction was performed.", + "format" : "date-time", + "type" : "string" + }, + "description" : { + "description" : "A description of the transaction.", + "type" : "string" + }, + "destinationAccountCode" : { + "description" : "The code of the account to which funds were credited during an outgoing fund transfer.", + "type" : "string" + }, + "disputePspReference" : { + "description" : "The psp reference of the related dispute.", + "type" : "string" + }, + "disputeReasonCode" : { + "description" : "The reason code of a dispute.", + "type" : "string" + }, + "merchantReference" : { + "description" : "The merchant reference of a transaction.", + "type" : "string" + }, + "paymentPspReference" : { + "description" : "The psp reference of the related authorisation or transfer.", + "type" : "string" + }, + "payoutPspReference" : { + "description" : "The psp reference of the related payout.", + "type" : "string" + }, + "pspReference" : { + "description" : "The psp reference of a transaction.", + "type" : "string" + }, + "sourceAccountCode" : { + "description" : "The code of the account from which funds were debited during an incoming fund transfer.", + "type" : "string" + }, + "transactionStatus" : { + "description" : "The status of the transaction.\n>Permitted values: `PendingCredit`, `CreditFailed`, `CreditClosed`, `Credited`, `Converted`, `PendingDebit`, `DebitFailed`, `Debited`, `DebitReversedReceived`, `DebitedReversed`, `ChargebackReceived`, `Chargeback`, `ChargebackReversedReceived`, `ChargebackReversed`, `Payout`, `PayoutReversed`, `FundTransfer`, `PendingFundTransfer`, `ManualCorrected`.", + "enum" : [ + "Chargeback", + "ChargebackCorrection", + "ChargebackCorrectionReceived", + "ChargebackReceived", + "ChargebackReversed", + "ChargebackReversedCorrection", + "ChargebackReversedCorrectionReceived", + "ChargebackReversedReceived", + "Converted", + "CreditClosed", + "CreditFailed", + "CreditReversed", + "CreditReversedReceived", + "Credited", + "DebitFailed", + "DebitReversedReceived", + "Debited", + "DebitedReversed", + "Fee", + "FundTransfer", + "FundTransferReversed", + "ManualCorrected", + "Payout", + "PayoutReversed", + "PendingCredit", + "PendingDebit", + "PendingFundTransfer", + "SecondChargeback", + "SecondChargebackReceived" + ], + "type" : "string" + }, + "transferCode" : { + "description" : "The transfer code of the transaction.", + "type" : "string" + } + } + }, + "TransferFundsNotification" : { + "properties" : { + "content" : { + "description" : "Details of the fund transfer.", + "$ref" : "#/components/schemas/TransferFundsNotificationContent" + }, + "error" : { + "description" : "Error information of failed request. No value provided here if no error occurred on processing.", + "$ref" : "#/components/schemas/NotificationErrorContainer" + }, + "eventDate" : { + "description" : "The date and time when an event has been completed.", + "format" : "date-time", + "type" : "string" + }, + "eventType" : { + "description" : "The event type of the notification.", + "type" : "string" + }, + "executingUserKey" : { + "description" : "The user or process that has triggered the notification.", + "type" : "string" + }, + "live" : { + "description" : "Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.", + "type" : "boolean" + }, + "pspReference" : { + "description" : "The PSP reference of the request from which the notification originates.", + "type" : "string" + } + }, + "required" : [ + "executingUserKey", + "pspReference", + "eventType", + "live", + "eventDate", + "content" + ] + }, + "TransferFundsNotificationContent" : { + "properties" : { + "amount" : { + "description" : "The amount transferred.", + "$ref" : "#/components/schemas/Amount" + }, + "destinationAccountCode" : { + "description" : "The code of the Account to which funds were credited.", + "type" : "string" + }, + "invalidFields" : { + "description" : "Invalid fields list.", + "items" : { + "$ref" : "#/components/schemas/ErrorFieldType" + }, + "type" : "array" + }, + "merchantReference" : { + "description" : "The reference provided by the merchant.", + "type" : "string" + }, + "sourceAccountCode" : { + "description" : "The code of the Account from which funds were debited.", + "type" : "string" + }, + "status" : { + "description" : "The status of the fund transfer.", + "$ref" : "#/components/schemas/OperationStatus" + }, + "transferCode" : { + "description" : "The transfer code.", + "type" : "string" + } + }, + "required" : [ + "sourceAccountCode", + "destinationAccountCode", + "amount", + "transferCode" + ] + }, + "UpdateAccountHolderResponse" : { + "properties" : { + "accountHolderCode" : { + "description" : "The code of the account holder.", + "type" : "string" + }, + "accountHolderDetails" : { + "description" : "Details of the account holder.", + "$ref" : "#/components/schemas/AccountHolderDetails" + }, + "accountHolderStatus" : { + "description" : "The new status of the account holder.", + "$ref" : "#/components/schemas/AccountHolderStatus" + }, + "description" : { + "description" : "The description of the account holder.", + "type" : "string" + }, + "invalidFields" : { + "description" : "in case the account holder has not been updated, contains account holder fields, that did not pass the validation.", + "items" : { + "$ref" : "#/components/schemas/ErrorFieldType" + }, + "type" : "array" + }, + "legalEntity" : { + "description" : "The legal entity of the account holder.", + "enum" : [ + "Business", + "Individual", + "NonProfit", + "Partnership", + "PublicCompany" + ], + "type" : "string" + }, + "primaryCurrency" : { + "description" : "The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes), with which the prospective account holder primarily deals.", + "type" : "string" + }, + "pspReference" : { + "description" : "The reference of a request. Can be used to uniquely identify the request.", + "type" : "string" + }, + "resultCode" : { + "description" : "The result code.", + "type" : "string" + }, + "verification" : { + "description" : "The details of KYC Verification of the account holder.", + "$ref" : "#/components/schemas/KYCVerificationResult" + }, + "verificationProfile" : { + "description" : "The identifier of the profile that applies to this entity.", + "type" : "string" + } + }, + "required" : [ + "pspReference", + "accountHolderStatus", + "verification", + "legalEntity" + ] + }, + "UpdateAccountResponse" : { + "properties" : { + "accountCode" : { + "description" : "The code of the account.", + "type" : "string" + }, + "description" : { + "description" : "The description of the account.", + "type" : "string" + }, + "invalidFields" : { + "description" : "A list of fields that caused the `/updateAccount` request to fail.", + "items" : { + "$ref" : "#/components/schemas/ErrorFieldType" + }, + "type" : "array" + }, + "metadata" : { + "additionalProperties" : { + "type" : "string" + }, + "type" : "object" + }, + "payoutSchedule" : { + "description" : "The payout schedule of the account.", + "$ref" : "#/components/schemas/PayoutScheduleResponse" + }, + "payoutSpeed" : { + "description" : "Speed with which payouts for this account are processed. Permitted values: `STANDARD`, `SAME_DAY`.", + "enum" : [ + "SAME_DAY", + "STANDARD" + ], + "type" : "string" + }, + "pspReference" : { + "description" : "The reference of a request. Can be used to uniquely identify the request.", + "type" : "string" + }, + "resultCode" : { + "description" : "The result code.", + "type" : "string" + } + }, + "required" : [ + "pspReference", + "accountCode" + ] + }, + "ViasAddress" : { + "properties" : { + "city" : { + "description" : "The name of the city.\n>Required if either `houseNumberOrName`, `street`, `postalCode`, or `stateOrProvince` are provided.", + "type" : "string" + }, + "country" : { + "description" : "The two-character country code of the address. The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. 'NL').\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.", + "type" : "string" + }, + "postalCode" : { + "description" : "The postal code.\n>A maximum of five (5) digits for an address in the USA, or a maximum of ten (10) characters for an address in all other countries.\n>Required if either `houseNumberOrName`, `street`, `city`, or `stateOrProvince` are provided.", + "type" : "string" + }, + "stateOrProvince" : { + "description" : "The abbreviation of the state or province.\n>Two (2) characters for an address in the USA or Canada, or a maximum of three (3) characters for an address in all other countries.\n>Required for an address in the USA or Canada if either `houseNumberOrName`, `street`, `city`, or `postalCode` are provided.", + "type" : "string" + }, + "street" : { + "description" : "The name of the street.\n>The house number should not be included in this field; it should be separately provided via `houseNumberOrName`.\n>Required if either `houseNumberOrName`, `city`, `postalCode`, or `stateOrProvince` are provided.", + "type" : "string" + } + }, + "required" : [ + "country" + ] + }, + "ViasName" : { + "properties" : { + "firstName" : { + "description" : "The first name.", + "type" : "string" + }, + "gender" : { + "description" : "The gender.\n>The following values are permitted: `MALE`, `FEMALE`, `UNKNOWN`.", + "enum" : [ + "MALE", + "FEMALE", + "UNKNOWN" + ], + "maxLength" : 1, + "minLength" : 1, + "type" : "string" + }, + "infix" : { + "description" : "The name's infix, if applicable.\n>A maximum length of twenty (20) characters is imposed.", + "type" : "string" + }, + "lastName" : { + "description" : "The last name.", + "type" : "string" + } + }, + "required" : [ + "firstName", + "lastName", + "gender" + ] + }, + "ViasPersonalData" : { + "properties" : { + "dateOfBirth" : { + "description" : "The date of birth of the person.\nThe date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).", + "type" : "string" + }, + "documentData" : { + "description" : "Key value pairs of document type and identify numbers", + "items" : { + "$ref" : "#/components/schemas/PersonalDocumentData" + }, + "type" : "array" + }, + "nationality" : { + "description" : "The nationality of the person represented by a two-character country code.\n>The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. 'NL').", + "maxLength" : 2, + "minLength" : 2, + "type" : "string" + } + } + }, + "ViasPhoneNumber" : { + "properties" : { + "phoneCountryCode" : { + "description" : "The two-character country code of the phone number.\n>The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. 'NL').", + "type" : "string" + }, + "phoneNumber" : { + "description" : "The phone number.\n>The inclusion of the phone number country code is not necessary.", + "type" : "string" + }, + "phoneType" : { + "description" : "The type of the phone number.\n>The following values are permitted: `Landline`, `Mobile`, `SIP`, `Fax`.", + "enum" : [ + "Fax", + "Landline", + "Mobile", + "SIP" + ], + "type" : "string" + } + }, + "required" : [ + "phoneCountryCode", + "phoneNumber" + ] + } + }, + "securitySchemes" : { + "ApiKeyAuth" : { + "in" : "header", + "name" : "X-API-Key", + "type" : "apiKey" + }, + "BasicAuth" : { + "scheme" : "basic", + "type" : "http" + } + } + } +} \ No newline at end of file diff --git a/json/NotificationConfigurationService-v1.json b/json/NotificationConfigurationService-v1.json index ddf7348..a9e6a28 100644 --- a/json/NotificationConfigurationService-v1.json +++ b/json/NotificationConfigurationService-v1.json @@ -1,5 +1,5 @@ { - "openapi" : "3.0.0", + "openapi" : "3.0.3", "servers" : [ { "url" : "https://cal-test.adyen.com/cal/services/Notification/v1" @@ -7,8 +7,8 @@ ], "info" : { "version" : "1", - "title" : "Adyen MarketPay Notification Configuration API", - "description" : "The MarketPay Notification Configuration API provides endpoints for configuration a subscription to a marketplace's MarketPay-related notifications. Notifications are sent upon the occurrence of certain events (such as a KYC check completion or a payout completion), and the subscription to these notifications dictates to where they are sent.\n\nFor further information on MarketPay notifications, please visit the [MarketPay documentation](https://docs.adyen.com/marketpay).\n## Authentication\nTo connect to the MarketPay API, you must use basic authentication credentials of your web service user. If you don't have one, please contact the [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@MarketPlace.YourMarketPlace\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nMarketPay API supports versioning of its endpoints through a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v1/createNotificationConfiguration\n```", + "title" : "Adyen for Platforms: Notification Configuration API", + "description" : "The Notification Configuration API provides endpoints for setting up and testing notifications that inform you of events on your platform, for example when a KYC check or a payout has been completed.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/marketpay/marketpay-notifications).\n## Authentication\nTo connect to the Notification Configuration API, you must use basic authentication credentials of your web service user. If you don't have one, contact our [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@MarketPlace.YourMarketPlace\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Notification Configuration API supports versioning of its endpoints through a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v1/createNotificationConfiguration\n```", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Support", @@ -22,8 +22,9 @@ "paths" : { "/createNotificationConfiguration" : { "post" : { - "summary" : "Configure a new subscription to notifications.", - "description" : "This endpoint is used to create a subscription to MarketPay event notifications. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.", + "summary" : "Subscribe to notifications.", + "description" : "Creates a subscription to notifications informing you of events on your platform. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.", + "operationId" : "post-createNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 1, "requestBody" : { @@ -53,6 +54,7 @@ "post" : { "summary" : "Delete an existing notification subscription configuration.", "description" : "This endpoint is used to delete an existing notification subscription configuration. After the subscription is deleted, no further event notifications will be sent to the URL that was in the subscription.", + "operationId" : "post-deleteNotificationConfigurations", "x-groupName" : "General", "x-sortIndex" : 6, "requestBody" : { @@ -82,6 +84,7 @@ "post" : { "summary" : "Retrieve an existing notification subscription configuration.", "description" : "This endpoint is used to retrieve the details of the configuration of a notification subscription.", + "operationId" : "post-getNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 2, "requestBody" : { @@ -111,6 +114,7 @@ "post" : { "summary" : "Retrieve a list of existing notification subscription configurations.", "description" : "This endpoint is used to retrieve the details of the configurations of all of the notification subscriptions in the marketplace of the executing user.", + "operationId" : "post-getNotificationConfigurationList", "x-groupName" : "General", "x-sortIndex" : 3, "requestBody" : { @@ -140,6 +144,7 @@ "post" : { "summary" : "Test an existing notification configuration.", "description" : "This endpoint is used to test an existing notification subscription configuration. For each event type specified, a test notification will be generated and sent to the URL configured in the subscription specified.", + "operationId" : "post-testNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 4, "requestBody" : { @@ -169,6 +174,7 @@ "post" : { "summary" : "Update an existing notification subscription configuration.", "description" : "This endpoint is used to update an existing notification subscription configuration. If updating the event types, all event types desired must be provided, otherwise the previous event type configuration will be overwritten.", + "operationId" : "post-updateNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 5, "requestBody" : { @@ -239,7 +245,7 @@ "GenericResponse" : { "properties" : { "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -247,14 +253,10 @@ "type" : "string" }, "submittedAsync" : { - "description" : "Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.\n* **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue.", + "description" : "Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.", "type" : "boolean" } - }, - "required" : [ - "pspReference", - "submittedAsync" - ] + } }, "GetNotificationConfigurationListResponse" : { "properties" : { @@ -266,7 +268,7 @@ "type" : "array" }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -274,13 +276,11 @@ "type" : "string" }, "submittedAsync" : { - "description" : "Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.\n* **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue.", + "description" : "Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.", "type" : "boolean" } }, "required" : [ - "pspReference", - "submittedAsync", "configurations" ] }, @@ -303,7 +303,7 @@ "$ref" : "#/components/schemas/NotificationConfigurationDetails" }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -311,13 +311,11 @@ "type" : "string" }, "submittedAsync" : { - "description" : "Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.\n* **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue.", + "description" : "Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.", "type" : "boolean" } }, "required" : [ - "pspReference", - "submittedAsync", "configurationDetails" ] }, @@ -333,7 +331,7 @@ "type" : "integer" }, "description" : { - "description" : "A description of the notification subscription configuration.\n>Required when creating a configuration, forbidden when updating a configuration.", + "description" : "A description of the notification subscription configuration.", "type" : "string" }, "eventConfigs" : { @@ -413,10 +411,10 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", - "TRANSFER_FUNDS", - "TRANSFER_FUNDS_REFUND" + "TRANSFER_FUNDS" ], "type" : "string" }, @@ -455,10 +453,10 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", - "TRANSFER_FUNDS", - "TRANSFER_FUNDS_REFUND" + "TRANSFER_FUNDS" ], "type" : "string" }, @@ -502,10 +500,10 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", - "TRANSFER_FUNDS", - "TRANSFER_FUNDS_REFUND" + "TRANSFER_FUNDS" ], "type" : "string" }, @@ -531,7 +529,7 @@ "type" : "array" }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -539,13 +537,11 @@ "type" : "string" }, "submittedAsync" : { - "description" : "Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.\n* **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue.", + "description" : "Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.", "type" : "boolean" } }, "required" : [ - "pspReference", - "submittedAsync", "notificationId", "eventTypes", "okMessages", @@ -563,6 +559,17 @@ "configurationDetails" ] } + }, + "securitySchemes" : { + "ApiKeyAuth" : { + "in" : "header", + "name" : "X-API-Key", + "type" : "apiKey" + }, + "BasicAuth" : { + "scheme" : "basic", + "type" : "http" + } } } } \ No newline at end of file diff --git a/json/NotificationConfigurationService-v2.json b/json/NotificationConfigurationService-v2.json index 94090d0..e5b41b5 100644 --- a/json/NotificationConfigurationService-v2.json +++ b/json/NotificationConfigurationService-v2.json @@ -1,5 +1,5 @@ { - "openapi" : "3.0.0", + "openapi" : "3.0.3", "servers" : [ { "url" : "https://cal-test.adyen.com/cal/services/Notification/v2" @@ -7,8 +7,8 @@ ], "info" : { "version" : "2", - "title" : "Adyen MarketPay Notification Configuration API", - "description" : "The MarketPay Notification Configuration API provides endpoints for configuration a subscription to a marketplace's MarketPay-related notifications. Notifications are sent upon the occurrence of certain events (such as a KYC check completion or a payout completion), and the subscription to these notifications dictates to where they are sent.\n\nFor further information on MarketPay notifications, please visit the [MarketPay documentation](https://docs.adyen.com/marketpay).\n## Authentication\nTo connect to the MarketPay API, you must use basic authentication credentials of your web service user. If you don't have one, please contact the [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@MarketPlace.YourMarketPlace\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nMarketPay API supports versioning of its endpoints through a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v2/createNotificationConfiguration\n```", + "title" : "Adyen for Platforms: Notification Configuration API", + "description" : "The Notification Configuration API provides endpoints for setting up and testing notifications that inform you of events on your platform, for example when a KYC check or a payout has been completed.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/marketpay/marketpay-notifications).\n## Authentication\nTo connect to the Notification Configuration API, you must use basic authentication credentials of your web service user. If you don't have one, contact our [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@MarketPlace.YourMarketPlace\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Notification Configuration API supports versioning of its endpoints through a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v2/createNotificationConfiguration\n```", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Support", @@ -22,8 +22,9 @@ "paths" : { "/createNotificationConfiguration" : { "post" : { - "summary" : "Configure a new subscription to notifications.", - "description" : "This endpoint is used to create a subscription to MarketPay event notifications. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.", + "summary" : "Subscribe to notifications.", + "description" : "Creates a subscription to notifications informing you of events on your platform. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.", + "operationId" : "post-createNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 1, "requestBody" : { @@ -53,6 +54,7 @@ "post" : { "summary" : "Delete an existing notification subscription configuration.", "description" : "This endpoint is used to delete an existing notification subscription configuration. After the subscription is deleted, no further event notifications will be sent to the URL that was in the subscription.", + "operationId" : "post-deleteNotificationConfigurations", "x-groupName" : "General", "x-sortIndex" : 6, "requestBody" : { @@ -82,6 +84,7 @@ "post" : { "summary" : "Retrieve an existing notification subscription configuration.", "description" : "This endpoint is used to retrieve the details of the configuration of a notification subscription.", + "operationId" : "post-getNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 2, "requestBody" : { @@ -111,6 +114,7 @@ "post" : { "summary" : "Retrieve a list of existing notification subscription configurations.", "description" : "This endpoint is used to retrieve the details of the configurations of all of the notification subscriptions in the marketplace of the executing user.", + "operationId" : "post-getNotificationConfigurationList", "x-groupName" : "General", "x-sortIndex" : 3, "requestBody" : { @@ -140,6 +144,7 @@ "post" : { "summary" : "Test an existing notification configuration.", "description" : "This endpoint is used to test an existing notification subscription configuration. For each event type specified, a test notification will be generated and sent to the URL configured in the subscription specified.", + "operationId" : "post-testNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 4, "requestBody" : { @@ -169,6 +174,7 @@ "post" : { "summary" : "Update an existing notification subscription configuration.", "description" : "This endpoint is used to update an existing notification subscription configuration. If updating the event types, all event types desired must be provided, otherwise the previous event type configuration will be overwritten.", + "operationId" : "post-updateNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 5, "requestBody" : { @@ -239,7 +245,7 @@ "GenericResponse" : { "properties" : { "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -247,14 +253,10 @@ "type" : "string" }, "submittedAsync" : { - "description" : "Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.\n* **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue.", + "description" : "Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.", "type" : "boolean" } - }, - "required" : [ - "pspReference", - "submittedAsync" - ] + } }, "GetNotificationConfigurationListResponse" : { "properties" : { @@ -266,7 +268,7 @@ "type" : "array" }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -274,13 +276,11 @@ "type" : "string" }, "submittedAsync" : { - "description" : "Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.\n* **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue.", + "description" : "Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.", "type" : "boolean" } }, "required" : [ - "pspReference", - "submittedAsync", "configurations" ] }, @@ -303,7 +303,7 @@ "$ref" : "#/components/schemas/NotificationConfigurationDetails" }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -311,13 +311,11 @@ "type" : "string" }, "submittedAsync" : { - "description" : "Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.\n* **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue.", + "description" : "Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.", "type" : "boolean" } }, "required" : [ - "pspReference", - "submittedAsync", "configurationDetails" ] }, @@ -333,7 +331,7 @@ "type" : "integer" }, "description" : { - "description" : "A description of the notification subscription configuration.\n>Required when creating a configuration, forbidden when updating a configuration.", + "description" : "A description of the notification subscription configuration.", "type" : "string" }, "eventConfigs" : { @@ -413,10 +411,10 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", - "TRANSFER_FUNDS", - "TRANSFER_FUNDS_REFUND" + "TRANSFER_FUNDS" ], "type" : "string" }, @@ -455,10 +453,10 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", - "TRANSFER_FUNDS", - "TRANSFER_FUNDS_REFUND" + "TRANSFER_FUNDS" ], "type" : "string" }, @@ -502,10 +500,10 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", - "TRANSFER_FUNDS", - "TRANSFER_FUNDS_REFUND" + "TRANSFER_FUNDS" ], "type" : "string" }, @@ -531,7 +529,7 @@ "type" : "array" }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -539,13 +537,11 @@ "type" : "string" }, "submittedAsync" : { - "description" : "Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.\n* **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue.", + "description" : "Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.", "type" : "boolean" } }, "required" : [ - "pspReference", - "submittedAsync", "notificationId", "eventTypes", "okMessages", @@ -563,6 +559,17 @@ "configurationDetails" ] } + }, + "securitySchemes" : { + "ApiKeyAuth" : { + "in" : "header", + "name" : "X-API-Key", + "type" : "apiKey" + }, + "BasicAuth" : { + "scheme" : "basic", + "type" : "http" + } } } } \ No newline at end of file diff --git a/json/NotificationConfigurationService-v3.json b/json/NotificationConfigurationService-v3.json index 1963217..74c5a6f 100644 --- a/json/NotificationConfigurationService-v3.json +++ b/json/NotificationConfigurationService-v3.json @@ -1,5 +1,5 @@ { - "openapi" : "3.0.0", + "openapi" : "3.0.3", "servers" : [ { "url" : "https://cal-test.adyen.com/cal/services/Notification/v3" @@ -7,8 +7,8 @@ ], "info" : { "version" : "3", - "title" : "Adyen MarketPay Notification Configuration API", - "description" : "The MarketPay Notification Configuration API provides endpoints for configuration a subscription to a marketplace's MarketPay-related notifications. Notifications are sent upon the occurrence of certain events (such as a KYC check completion or a payout completion), and the subscription to these notifications dictates to where they are sent.\n\nFor further information on MarketPay notifications, please visit the [MarketPay documentation](https://docs.adyen.com/marketpay).\n## Authentication\nTo connect to the MarketPay API, you must use basic authentication credentials of your web service user. If you don't have one, please contact the [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@MarketPlace.YourMarketPlace\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nMarketPay API supports versioning of its endpoints through a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v3/createNotificationConfiguration\n```", + "title" : "Adyen for Platforms: Notification Configuration API", + "description" : "The Notification Configuration API provides endpoints for setting up and testing notifications that inform you of events on your platform, for example when a KYC check or a payout has been completed.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/marketpay/marketpay-notifications).\n## Authentication\nTo connect to the Notification Configuration API, you must use basic authentication credentials of your web service user. If you don't have one, contact our [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@MarketPlace.YourMarketPlace\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Notification Configuration API supports versioning of its endpoints through a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v3/createNotificationConfiguration\n```", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Support", @@ -22,8 +22,9 @@ "paths" : { "/createNotificationConfiguration" : { "post" : { - "summary" : "Configure a new subscription to notifications.", - "description" : "This endpoint is used to create a subscription to MarketPay event notifications. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.", + "summary" : "Subscribe to notifications.", + "description" : "Creates a subscription to notifications informing you of events on your platform. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.", + "operationId" : "post-createNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 1, "requestBody" : { @@ -53,6 +54,7 @@ "post" : { "summary" : "Delete an existing notification subscription configuration.", "description" : "This endpoint is used to delete an existing notification subscription configuration. After the subscription is deleted, no further event notifications will be sent to the URL that was in the subscription.", + "operationId" : "post-deleteNotificationConfigurations", "x-groupName" : "General", "x-sortIndex" : 6, "requestBody" : { @@ -82,6 +84,7 @@ "post" : { "summary" : "Retrieve an existing notification subscription configuration.", "description" : "This endpoint is used to retrieve the details of the configuration of a notification subscription.", + "operationId" : "post-getNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 2, "requestBody" : { @@ -111,6 +114,7 @@ "post" : { "summary" : "Retrieve a list of existing notification subscription configurations.", "description" : "This endpoint is used to retrieve the details of the configurations of all of the notification subscriptions in the marketplace of the executing user.", + "operationId" : "post-getNotificationConfigurationList", "x-groupName" : "General", "x-sortIndex" : 3, "requestBody" : { @@ -140,6 +144,7 @@ "post" : { "summary" : "Test an existing notification configuration.", "description" : "This endpoint is used to test an existing notification subscription configuration. For each event type specified, a test notification will be generated and sent to the URL configured in the subscription specified.", + "operationId" : "post-testNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 4, "requestBody" : { @@ -169,6 +174,7 @@ "post" : { "summary" : "Update an existing notification subscription configuration.", "description" : "This endpoint is used to update an existing notification subscription configuration. If updating the event types, all event types desired must be provided, otherwise the previous event type configuration will be overwritten.", + "operationId" : "post-updateNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 5, "requestBody" : { @@ -239,7 +245,7 @@ "GenericResponse" : { "properties" : { "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -247,14 +253,10 @@ "type" : "string" }, "submittedAsync" : { - "description" : "Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.\n* **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue.", + "description" : "Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.", "type" : "boolean" } - }, - "required" : [ - "pspReference", - "submittedAsync" - ] + } }, "GetNotificationConfigurationListResponse" : { "properties" : { @@ -266,7 +268,7 @@ "type" : "array" }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -274,13 +276,11 @@ "type" : "string" }, "submittedAsync" : { - "description" : "Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.\n* **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue.", + "description" : "Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.", "type" : "boolean" } }, "required" : [ - "pspReference", - "submittedAsync", "configurations" ] }, @@ -303,7 +303,7 @@ "$ref" : "#/components/schemas/NotificationConfigurationDetails" }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -311,13 +311,11 @@ "type" : "string" }, "submittedAsync" : { - "description" : "Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.\n* **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue.", + "description" : "Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.", "type" : "boolean" } }, "required" : [ - "pspReference", - "submittedAsync", "configurationDetails" ] }, @@ -333,7 +331,7 @@ "type" : "integer" }, "description" : { - "description" : "A description of the notification subscription configuration.\n>Required when creating a configuration, forbidden when updating a configuration.", + "description" : "A description of the notification subscription configuration.", "type" : "string" }, "eventConfigs" : { @@ -413,10 +411,10 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", - "TRANSFER_FUNDS", - "TRANSFER_FUNDS_REFUND" + "TRANSFER_FUNDS" ], "type" : "string" }, @@ -455,10 +453,10 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", - "TRANSFER_FUNDS", - "TRANSFER_FUNDS_REFUND" + "TRANSFER_FUNDS" ], "type" : "string" }, @@ -502,10 +500,10 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", - "TRANSFER_FUNDS", - "TRANSFER_FUNDS_REFUND" + "TRANSFER_FUNDS" ], "type" : "string" }, @@ -531,7 +529,7 @@ "type" : "array" }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -539,13 +537,11 @@ "type" : "string" }, "submittedAsync" : { - "description" : "Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.\n* **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue.", + "description" : "Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.", "type" : "boolean" } }, "required" : [ - "pspReference", - "submittedAsync", "notificationId", "eventTypes", "okMessages", @@ -563,6 +559,17 @@ "configurationDetails" ] } + }, + "securitySchemes" : { + "ApiKeyAuth" : { + "in" : "header", + "name" : "X-API-Key", + "type" : "apiKey" + }, + "BasicAuth" : { + "scheme" : "basic", + "type" : "http" + } } } } \ No newline at end of file diff --git a/json/NotificationConfigurationService-v4.json b/json/NotificationConfigurationService-v4.json index 188f1c0..091185d 100644 --- a/json/NotificationConfigurationService-v4.json +++ b/json/NotificationConfigurationService-v4.json @@ -1,5 +1,5 @@ { - "openapi" : "3.0.0", + "openapi" : "3.0.3", "servers" : [ { "url" : "https://cal-test.adyen.com/cal/services/Notification/v4" @@ -7,8 +7,8 @@ ], "info" : { "version" : "4", - "title" : "Adyen MarketPay Notification Configuration API", - "description" : "The MarketPay Notification Configuration API provides endpoints for configuration a subscription to a marketplace's MarketPay-related notifications. Notifications are sent upon the occurrence of certain events (such as a KYC check completion or a payout completion), and the subscription to these notifications dictates to where they are sent.\n\nFor further information on MarketPay notifications, please visit the [MarketPay documentation](https://docs.adyen.com/marketpay).\n## Authentication\nTo connect to the MarketPay API, you must use basic authentication credentials of your web service user. If you don't have one, please contact the [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@MarketPlace.YourMarketPlace\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nMarketPay API supports versioning of its endpoints through a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v4/createNotificationConfiguration\n```", + "title" : "Adyen for Platforms: Notification Configuration API", + "description" : "The Notification Configuration API provides endpoints for setting up and testing notifications that inform you of events on your platform, for example when a KYC check or a payout has been completed.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/marketpay/marketpay-notifications).\n## Authentication\nTo connect to the Notification Configuration API, you must use basic authentication credentials of your web service user. If you don't have one, contact our [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@MarketPlace.YourMarketPlace\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Notification Configuration API supports versioning of its endpoints through a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v4/createNotificationConfiguration\n```", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Support", @@ -22,8 +22,9 @@ "paths" : { "/createNotificationConfiguration" : { "post" : { - "summary" : "Configure a new subscription to notifications.", - "description" : "This endpoint is used to create a subscription to MarketPay event notifications. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.", + "summary" : "Subscribe to notifications.", + "description" : "Creates a subscription to notifications informing you of events on your platform. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.", + "operationId" : "post-createNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 1, "requestBody" : { @@ -53,6 +54,7 @@ "post" : { "summary" : "Delete an existing notification subscription configuration.", "description" : "This endpoint is used to delete an existing notification subscription configuration. After the subscription is deleted, no further event notifications will be sent to the URL that was in the subscription.", + "operationId" : "post-deleteNotificationConfigurations", "x-groupName" : "General", "x-sortIndex" : 6, "requestBody" : { @@ -82,6 +84,7 @@ "post" : { "summary" : "Retrieve an existing notification subscription configuration.", "description" : "This endpoint is used to retrieve the details of the configuration of a notification subscription.", + "operationId" : "post-getNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 2, "requestBody" : { @@ -111,6 +114,7 @@ "post" : { "summary" : "Retrieve a list of existing notification subscription configurations.", "description" : "This endpoint is used to retrieve the details of the configurations of all of the notification subscriptions in the marketplace of the executing user.", + "operationId" : "post-getNotificationConfigurationList", "x-groupName" : "General", "x-sortIndex" : 3, "requestBody" : { @@ -140,6 +144,7 @@ "post" : { "summary" : "Test an existing notification configuration.", "description" : "This endpoint is used to test an existing notification subscription configuration. For each event type specified, a test notification will be generated and sent to the URL configured in the subscription specified.", + "operationId" : "post-testNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 4, "requestBody" : { @@ -169,6 +174,7 @@ "post" : { "summary" : "Update an existing notification subscription configuration.", "description" : "This endpoint is used to update an existing notification subscription configuration. If updating the event types, all event types desired must be provided, otherwise the previous event type configuration will be overwritten.", + "operationId" : "post-updateNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 5, "requestBody" : { @@ -239,7 +245,7 @@ "GenericResponse" : { "properties" : { "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -247,14 +253,10 @@ "type" : "string" }, "submittedAsync" : { - "description" : "Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.\n* **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue.", + "description" : "Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.", "type" : "boolean" } - }, - "required" : [ - "pspReference", - "submittedAsync" - ] + } }, "GetNotificationConfigurationListResponse" : { "properties" : { @@ -266,7 +268,7 @@ "type" : "array" }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -274,13 +276,11 @@ "type" : "string" }, "submittedAsync" : { - "description" : "Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.\n* **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue.", + "description" : "Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.", "type" : "boolean" } }, "required" : [ - "pspReference", - "submittedAsync", "configurations" ] }, @@ -303,7 +303,7 @@ "$ref" : "#/components/schemas/NotificationConfigurationDetails" }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -311,13 +311,11 @@ "type" : "string" }, "submittedAsync" : { - "description" : "Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.\n* **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue.", + "description" : "Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.", "type" : "boolean" } }, "required" : [ - "pspReference", - "submittedAsync", "configurationDetails" ] }, @@ -333,7 +331,7 @@ "type" : "integer" }, "description" : { - "description" : "A description of the notification subscription configuration.\n>Required when creating a configuration, forbidden when updating a configuration.", + "description" : "A description of the notification subscription configuration.", "type" : "string" }, "eventConfigs" : { @@ -413,10 +411,10 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", - "TRANSFER_FUNDS", - "TRANSFER_FUNDS_REFUND" + "TRANSFER_FUNDS" ], "type" : "string" }, @@ -455,10 +453,10 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", - "TRANSFER_FUNDS", - "TRANSFER_FUNDS_REFUND" + "TRANSFER_FUNDS" ], "type" : "string" }, @@ -502,10 +500,10 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", - "TRANSFER_FUNDS", - "TRANSFER_FUNDS_REFUND" + "TRANSFER_FUNDS" ], "type" : "string" }, @@ -531,7 +529,7 @@ "type" : "array" }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -539,13 +537,11 @@ "type" : "string" }, "submittedAsync" : { - "description" : "Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.\n* **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue.", + "description" : "Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied:\n* **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received.\n* **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable.", "type" : "boolean" } }, "required" : [ - "pspReference", - "submittedAsync", "notificationId", "eventTypes", "okMessages", @@ -563,6 +559,17 @@ "configurationDetails" ] } + }, + "securitySchemes" : { + "ApiKeyAuth" : { + "in" : "header", + "name" : "X-API-Key", + "type" : "apiKey" + }, + "BasicAuth" : { + "scheme" : "basic", + "type" : "http" + } } } } \ No newline at end of file diff --git a/json/NotificationConfigurationService-v5.json b/json/NotificationConfigurationService-v5.json index 45d6234..75dbf57 100644 --- a/json/NotificationConfigurationService-v5.json +++ b/json/NotificationConfigurationService-v5.json @@ -1,5 +1,5 @@ { - "openapi" : "3.0.0", + "openapi" : "3.0.3", "servers" : [ { "url" : "https://cal-test.adyen.com/cal/services/Notification/v5" @@ -7,8 +7,8 @@ ], "info" : { "version" : "5", - "title" : "Adyen MarketPay Notification Configuration API", - "description" : "The MarketPay Notification Configuration API provides endpoints for configuration a subscription to a marketplace's MarketPay-related notifications. Notifications are sent upon the occurrence of certain events (such as a KYC check completion or a payout completion), and the subscription to these notifications dictates to where they are sent.\n\nFor further information on MarketPay notifications, please visit the [MarketPay documentation](https://docs.adyen.com/marketpay).\n## Authentication\nTo connect to the MarketPay API, you must use basic authentication credentials of your web service user. If you don't have one, please contact the [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@MarketPlace.YourMarketPlace\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nMarketPay API supports versioning of its endpoints through a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v5/createNotificationConfiguration\n```", + "title" : "Adyen for Platforms: Notification Configuration API", + "description" : "The Notification Configuration API provides endpoints for setting up and testing notifications that inform you of events on your platform, for example when a KYC check or a payout has been completed.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/marketpay/marketpay-notifications).\n## Authentication\nTo connect to the Notification Configuration API, you must use basic authentication credentials of your web service user. If you don't have one, contact our [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@MarketPlace.YourMarketPlace\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Notification Configuration API supports versioning of its endpoints through a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v5/createNotificationConfiguration\n```", "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", "contact" : { "name" : "Adyen Support", @@ -22,8 +22,9 @@ "paths" : { "/createNotificationConfiguration" : { "post" : { - "summary" : "Configure a new subscription to notifications.", - "description" : "This endpoint is used to create a subscription to MarketPay event notifications. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.", + "summary" : "Subscribe to notifications.", + "description" : "Creates a subscription to notifications informing you of events on your platform. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.", + "operationId" : "post-createNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 1, "requestBody" : { @@ -53,6 +54,7 @@ "post" : { "summary" : "Delete an existing notification subscription configuration.", "description" : "This endpoint is used to delete an existing notification subscription configuration. After the subscription is deleted, no further event notifications will be sent to the URL that was in the subscription.", + "operationId" : "post-deleteNotificationConfigurations", "x-groupName" : "General", "x-sortIndex" : 6, "requestBody" : { @@ -82,6 +84,7 @@ "post" : { "summary" : "Retrieve an existing notification subscription configuration.", "description" : "This endpoint is used to retrieve the details of the configuration of a notification subscription.", + "operationId" : "post-getNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 2, "requestBody" : { @@ -111,6 +114,7 @@ "post" : { "summary" : "Retrieve a list of existing notification subscription configurations.", "description" : "This endpoint is used to retrieve the details of the configurations of all of the notification subscriptions in the marketplace of the executing user.", + "operationId" : "post-getNotificationConfigurationList", "x-groupName" : "General", "x-sortIndex" : 3, "requestBody" : { @@ -140,6 +144,7 @@ "post" : { "summary" : "Test an existing notification configuration.", "description" : "This endpoint is used to test an existing notification subscription configuration. For each event type specified, a test notification will be generated and sent to the URL configured in the subscription specified.", + "operationId" : "post-testNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 4, "requestBody" : { @@ -169,6 +174,7 @@ "post" : { "summary" : "Update an existing notification subscription configuration.", "description" : "This endpoint is used to update an existing notification subscription configuration. If updating the event types, all event types desired must be provided, otherwise the previous event type configuration will be overwritten.", + "operationId" : "post-updateNotificationConfiguration", "x-groupName" : "General", "x-sortIndex" : 5, "requestBody" : { @@ -352,6 +358,9 @@ "sourceAccountCode", "stateOrProvince", "status", + "stockExchange", + "stockNumber", + "stockTicker", "store", "storeDetail", "storeName", @@ -385,17 +394,14 @@ "type" : "array" }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { "description" : "The result code.", "type" : "string" } - }, - "required" : [ - "pspReference" - ] + } }, "GetNotificationConfigurationListResponse" : { "properties" : { @@ -414,7 +420,7 @@ "type" : "array" }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -423,7 +429,6 @@ } }, "required" : [ - "pspReference", "configurations" ] }, @@ -453,7 +458,7 @@ "type" : "array" }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -462,7 +467,6 @@ } }, "required" : [ - "pspReference", "configurationDetails" ] }, @@ -478,7 +482,7 @@ "type" : "integer" }, "description" : { - "description" : "A description of the notification subscription configuration.\n>Required when creating a configuration, forbidden when updating a configuration.", + "description" : "A description of the notification subscription configuration.", "type" : "string" }, "eventConfigs" : { @@ -548,10 +552,10 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", - "TRANSFER_FUNDS", - "TRANSFER_FUNDS_REFUND" + "TRANSFER_FUNDS" ], "type" : "string" }, @@ -590,10 +594,10 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", - "TRANSFER_FUNDS", - "TRANSFER_FUNDS_REFUND" + "TRANSFER_FUNDS" ], "type" : "string" }, @@ -637,10 +641,10 @@ "COMPENSATE_NEGATIVE_BALANCE", "DIRECT_DEBIT_INITIATED", "PAYMENT_FAILURE", + "REFUND_FUNDS_TRANSFER", "REPORT_AVAILABLE", "SCHEDULED_REFUNDS", - "TRANSFER_FUNDS", - "TRANSFER_FUNDS_REFUND" + "TRANSFER_FUNDS" ], "type" : "string" }, @@ -673,7 +677,7 @@ "type" : "array" }, "pspReference" : { - "description" : "The reference of a request. Can be used to uniquely identify the request.", + "description" : "The reference of a request. Can be used to uniquely identify the request.", "type" : "string" }, "resultCode" : { @@ -682,7 +686,6 @@ } }, "required" : [ - "pspReference", "notificationId", "eventTypes", "okMessages", @@ -700,6 +703,17 @@ "configurationDetails" ] } + }, + "securitySchemes" : { + "ApiKeyAuth" : { + "in" : "header", + "name" : "X-API-Key", + "type" : "apiKey" + }, + "BasicAuth" : { + "scheme" : "basic", + "type" : "http" + } } } } \ No newline at end of file diff --git a/json/NotificationConfigurationService-v6.json b/json/NotificationConfigurationService-v6.json new file mode 100644 index 0000000..076172e --- /dev/null +++ b/json/NotificationConfigurationService-v6.json @@ -0,0 +1,719 @@ +{ + "openapi" : "3.0.3", + "servers" : [ + { + "url" : "https://cal-test.adyen.com/cal/services/Notification/v6" + } + ], + "info" : { + "version" : "6", + "title" : "Adyen for Platforms: Notification Configuration API", + "description" : "The Notification Configuration API provides endpoints for setting up and testing notifications that inform you of events on your platform, for example when a KYC check or a payout has been completed.\n\nFor more information, refer to our [documentation](https://docs.adyen.com/marketpay/marketpay-notifications).\n## Authentication\nTo connect to the Notification Configuration API, you must use basic authentication credentials of your web service user. If you don't have one, contact our [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example:\n\n```\ncurl\n-U \"ws@MarketPlace.YourMarketPlace\":\"YourWsPassword\" \\\n-H \"Content-Type: application/json\" \\\n...\n```\nNote that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\n## Versioning\nThe Notification Configuration API supports versioning of its endpoints through a version suffix in the endpoint URL. This suffix has the following format: \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v6/createNotificationConfiguration\n```", + "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions", + "contact" : { + "name" : "Adyen Support", + "url" : "https://support.adyen.com/", + "email" : "support@adyen.com" + } + }, + "x-groups" : [ + "General" + ], + "paths" : { + "/createNotificationConfiguration" : { + "post" : { + "summary" : "Subscribe to notifications.", + "description" : "Creates a subscription to notifications informing you of events on your platform. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.", + "operationId" : "post-createNotificationConfiguration", + "x-groupName" : "General", + "x-sortIndex" : 1, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/CreateNotificationConfigurationRequest" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/GetNotificationConfigurationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, + "/deleteNotificationConfigurations" : { + "post" : { + "summary" : "Delete an existing notification subscription configuration.", + "description" : "This endpoint is used to delete an existing notification subscription configuration. After the subscription is deleted, no further event notifications will be sent to the URL that was in the subscription.", + "operationId" : "post-deleteNotificationConfigurations", + "x-groupName" : "General", + "x-sortIndex" : 6, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/DeleteNotificationConfigurationRequest" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/GenericResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, + "/getNotificationConfiguration" : { + "post" : { + "summary" : "Retrieve an existing notification subscription configuration.", + "description" : "This endpoint is used to retrieve the details of the configuration of a notification subscription.", + "operationId" : "post-getNotificationConfiguration", + "x-groupName" : "General", + "x-sortIndex" : 2, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/GetNotificationConfigurationRequest" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/GetNotificationConfigurationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, + "/getNotificationConfigurationList" : { + "post" : { + "summary" : "Retrieve a list of existing notification subscription configurations.", + "description" : "This endpoint is used to retrieve the details of the configurations of all of the notification subscriptions in the marketplace of the executing user.", + "operationId" : "post-getNotificationConfigurationList", + "x-groupName" : "General", + "x-sortIndex" : 3, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/EmptyRequest" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/GetNotificationConfigurationListResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, + "/testNotificationConfiguration" : { + "post" : { + "summary" : "Test an existing notification configuration.", + "description" : "This endpoint is used to test an existing notification subscription configuration. For each event type specified, a test notification will be generated and sent to the URL configured in the subscription specified.", + "operationId" : "post-testNotificationConfiguration", + "x-groupName" : "General", + "x-sortIndex" : 4, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/TestNotificationConfigurationRequest" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/TestNotificationConfigurationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + }, + "/updateNotificationConfiguration" : { + "post" : { + "summary" : "Update an existing notification subscription configuration.", + "description" : "This endpoint is used to update an existing notification subscription configuration. If updating the event types, all event types desired must be provided, otherwise the previous event type configuration will be overwritten.", + "operationId" : "post-updateNotificationConfiguration", + "x-groupName" : "General", + "x-sortIndex" : 5, + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/UpdateNotificationConfigurationRequest" + } + } + } + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/GetNotificationConfigurationResponse" + } + } + }, + "description" : "OK - the request has succeeded." + } + } + } + } + }, + "components" : { + "schemas" : { + "CreateNotificationConfigurationRequest" : { + "properties" : { + "configurationDetails" : { + "description" : "Details of the prospective notification subscription configuration.", + "$ref" : "#/components/schemas/NotificationConfigurationDetails" + } + }, + "required" : [ + "configurationDetails" + ] + }, + "DeleteNotificationConfigurationRequest" : { + "properties" : { + "notificationIds" : { + "description" : "A list of IDs of the notification subscription configurations to be deleted.", + "items" : { + "format" : "int64", + "type" : "integer" + }, + "type" : "array" + } + }, + "required" : [ + "notificationIds" + ] + }, + "EmptyRequest" : { + + }, + "ErrorFieldType" : { + "properties" : { + "errorCode" : { + "description" : "The validation error code.", + "format" : "int32", + "type" : "integer" + }, + "errorDescription" : { + "description" : "A description of the validation error.", + "type" : "string" + }, + "fieldType" : { + "description" : "The type of error field.", + "$ref" : "#/components/schemas/FieldType" + } + } + }, + "ExchangeMessage" : { + "properties" : { + "messageCode" : { + "type" : "string" + }, + "messageDescription" : { + "type" : "string" + } + } + }, + "FieldType" : { + "properties" : { + "field" : { + "description" : "The full name of the property.", + "type" : "string" + }, + "fieldName" : { + "description" : "The type of the field.", + "enum" : [ + "accountCode", + "accountHolderCode", + "accountHolderDetails", + "accountNumber", + "accountStateType", + "accountStatus", + "accountType", + "address", + "bankAccount", + "bankAccountCode", + "bankAccountName", + "bankAccountUUID", + "bankBicSwift", + "bankCity", + "bankCode", + "bankName", + "bankStatement", + "branchCode", + "businessContact", + "cardToken", + "checkCode", + "city", + "companyRegistration", + "country", + "countryCode", + "currency", + "currencyCode", + "dateOfBirth", + "description", + "destinationAccountCode", + "document", + "documentExpirationDate", + "documentIssuerCountry", + "documentIssuerState", + "documentName", + "documentNumber", + "documentType", + "doingBusinessAs", + "drivingLicence", + "drivingLicenceBack", + "drivingLicense", + "email", + "firstName", + "fullPhoneNumber", + "gender", + "hopWebserviceUser", + "houseNumberOrName", + "iban", + "idCard", + "idCardBack", + "idCardFront", + "idNumber", + "identityDocument", + "individualDetails", + "lastName", + "legalBusinessName", + "legalEntity", + "legalEntityType", + "merchantAccount", + "merchantCategoryCode", + "merchantReference", + "microDeposit", + "name", + "nationality", + "originalReference", + "ownerCity", + "ownerCountryCode", + "ownerHouseNumberOrName", + "ownerName", + "ownerPostalCode", + "ownerState", + "ownerStreet", + "passport", + "passportNumber", + "payoutMethodCode", + "personalData", + "phoneCountryCode", + "phoneNumber", + "postalCode", + "primaryCurrency", + "reason", + "registrationNumber", + "returnUrl", + "schedule", + "shareholder", + "shareholderCode", + "socialSecurityNumber", + "sourceAccountCode", + "stateOrProvince", + "status", + "stockExchange", + "stockNumber", + "stockTicker", + "store", + "storeDetail", + "storeName", + "storeReference", + "street", + "taxId", + "tier", + "tierNumber", + "transferCode", + "unknown", + "value", + "virtualAccount", + "visaNumber", + "webAddress" + ], + "type" : "string" + }, + "shareholderCode" : { + "description" : "The code of the shareholder that the field belongs to. If empty, the field belongs to an account holder.", + "type" : "string" + } + } + }, + "GenericResponse" : { + "properties" : { + "invalidFields" : { + "description" : "Contains field validation errors that would prevent requests from being processed.", + "items" : { + "$ref" : "#/components/schemas/ErrorFieldType" + }, + "type" : "array" + }, + "pspReference" : { + "description" : "The reference of a request. Can be used to uniquely identify the request.", + "type" : "string" + }, + "resultCode" : { + "description" : "The result code.", + "type" : "string" + } + } + }, + "GetNotificationConfigurationListResponse" : { + "properties" : { + "configurations" : { + "description" : "Details of the notification subscription configurations.", + "items" : { + "$ref" : "#/components/schemas/NotificationConfigurationDetails" + }, + "type" : "array" + }, + "invalidFields" : { + "description" : "Contains field validation errors that would prevent requests from being processed.", + "items" : { + "$ref" : "#/components/schemas/ErrorFieldType" + }, + "type" : "array" + }, + "pspReference" : { + "description" : "The reference of a request. Can be used to uniquely identify the request.", + "type" : "string" + }, + "resultCode" : { + "description" : "The result code.", + "type" : "string" + } + }, + "required" : [ + "configurations" + ] + }, + "GetNotificationConfigurationRequest" : { + "properties" : { + "notificationId" : { + "description" : "The ID of the notification subscription configuration whose details are to be retrieved.", + "format" : "int64", + "type" : "integer" + } + }, + "required" : [ + "notificationId" + ] + }, + "GetNotificationConfigurationResponse" : { + "properties" : { + "configurationDetails" : { + "description" : "Details of the notification subscription configuration.", + "$ref" : "#/components/schemas/NotificationConfigurationDetails" + }, + "invalidFields" : { + "description" : "Contains field validation errors that would prevent requests from being processed.", + "items" : { + "$ref" : "#/components/schemas/ErrorFieldType" + }, + "type" : "array" + }, + "pspReference" : { + "description" : "The reference of a request. Can be used to uniquely identify the request.", + "type" : "string" + }, + "resultCode" : { + "description" : "The result code.", + "type" : "string" + } + }, + "required" : [ + "configurationDetails" + ] + }, + "NotificationConfigurationDetails" : { + "properties" : { + "active" : { + "description" : "Indicates whether the notification subscription is active.", + "type" : "boolean" + }, + "apiVersion" : { + "description" : "The API version of the notification to send.", + "format" : "int32", + "type" : "integer" + }, + "description" : { + "description" : "A description of the notification subscription configuration.", + "type" : "string" + }, + "eventConfigs" : { + "description" : "The types of events whose notifications apply to this configuration.", + "items" : { + "$ref" : "#/components/schemas/NotificationEventConfiguration" + }, + "type" : "array" + }, + "hmacSignatureKey" : { + "description" : "A string with which to salt the notification(s) before hashing. If this field is provided, a hash value will be included under the notification header `HmacSignature` and the hash protocol will be included under the notification header `Protocol`. A notification body along with its `hmacSignatureKey` and `Protocol` can be used to calculate a hash value; matching this hash value with the `HmacSignature` will ensure that the notification body has not been tampered with or corrupted.\n\n>Must be a 32-byte hex-encoded string (i.e. a string containing 64 hexadecimal characters; e.g. \"b0ea55c2fe60d4d1d605e9c385e0e7f7e6cafbb939ce07010f31a327a0871f27\").\n\nThe omission of this field will preclude the provision of the `HmacSignature` and `Protocol` headers in notification(s).", + "type" : "string" + }, + "notificationId" : { + "description" : "The ID of the configuration.\n>Required if updating an existing configuration, ignored during the creation of a configuration.", + "format" : "int64", + "type" : "integer" + }, + "notifyPassword" : { + "description" : "The password to use when accessing the notifyURL with the specified username.", + "type" : "string" + }, + "notifyURL" : { + "description" : "The URL to which the notifications are to be sent.", + "type" : "string" + }, + "notifyUsername" : { + "description" : "The username to use when accessing the notifyURL.", + "type" : "string" + }, + "sslProtocol" : { + "description" : "The SSL protocol employed by the endpoint.\n>Permitted values: `SSL`, `SSLInsecureCiphers`, `TLS`, `TLSv10`, `TLSv10InsecureCiphers`, `TLSv11`, `TLSv12`.", + "enum" : [ + "SSL", + "SSLInsecureCiphers", + "TLS", + "TLSv10", + "TLSv10InsecureCiphers", + "TLSv11", + "TLSv12" + ], + "type" : "string" + } + }, + "required" : [ + "eventConfigs", + "notifyURL" + ] + }, + "NotificationEventConfiguration" : { + "properties" : { + "eventType" : { + "description" : "The type of event triggering the notification.\n>Permitted values: `ACCOUNT_HOLDER_CREATED`, `ACCOUNT_CREATED`, `ACCOUNT_UPDATED`, `ACCOUNT_HOLDER_UPDATED`, `ACCOUNT_HOLDER_STATUS_CHANGE`, `ACCOUNT_HOLDER_STORE_STATUS_CHANGE`, `ACCOUNT_HOLDER_VERIFICATION`, `ACCOUNT_HOLDER_LIMIT_REACHED`, `ACCOUNT_HOLDER_PAYOUT`, `PAYMENT_FAILURE`, `SCHEDULED_REFUNDS`, `REPORT_AVAILABLE`, `TRANSFER_FUNDS`, `BENEFICIARY_SETUP`, `COMPENSATE_NEGATIVE_BALANCE`.", + "enum" : [ + "ACCOUNT_CLOSED", + "ACCOUNT_CREATED", + "ACCOUNT_HOLDER_CREATED", + "ACCOUNT_HOLDER_LIMIT_REACHED", + "ACCOUNT_HOLDER_PAYOUT", + "ACCOUNT_HOLDER_STATUS_CHANGE", + "ACCOUNT_HOLDER_STORE_STATUS_CHANGE", + "ACCOUNT_HOLDER_UPCOMING_DEADLINE", + "ACCOUNT_HOLDER_UPDATED", + "ACCOUNT_HOLDER_VERIFICATION", + "ACCOUNT_UPDATED", + "BENEFICIARY_SETUP", + "COMPENSATE_NEGATIVE_BALANCE", + "DIRECT_DEBIT_INITIATED", + "PAYMENT_FAILURE", + "REFUND_FUNDS_TRANSFER", + "REPORT_AVAILABLE", + "SCHEDULED_REFUNDS", + "TRANSFER_FUNDS" + ], + "type" : "string" + }, + "includeMode" : { + "description" : "Indicates whether the specified eventType is to be sent to the endpoint or all events other than the specified eventType (and other specified eventTypes) are to be sent.\n>Permitted values: `INCLUDE`, `EXCLUDE`.\n>- `INCLUDE`: send the specified eventType.\n>- `EXCLUDE`: send all eventTypes other than the specified eventType (and other eventTypes marked with `EXCLUDE`).", + "enum" : [ + "EXCLUDE", + "INCLUDE" + ], + "type" : "string" + } + }, + "required" : [ + "eventType", + "includeMode" + ] + }, + "TestNotificationConfigurationRequest" : { + "properties" : { + "eventTypes" : { + "description" : "The event types to test. If left blank, then all of the configured event types will be tested.\n>Permitted values: `ACCOUNT_HOLDER_CREATED`, `ACCOUNT_CREATED`, `ACCOUNT_UPDATED`, `ACCOUNT_HOLDER_UPDATED`, `ACCOUNT_HOLDER_STATUS_CHANGE`, `ACCOUNT_HOLDER_STORE_STATUS_CHANGE` `ACCOUNT_HOLDER_VERIFICATION`, `ACCOUNT_HOLDER_LIMIT_REACHED`, `ACCOUNT_HOLDER_PAYOUT`, `PAYMENT_FAILURE`, `SCHEDULED_REFUNDS`, `REPORT_AVAILABLE`, `TRANSFER_FUNDS`, `BENEFICIARY_SETUP`, `COMPENSATE_NEGATIVE_BALANCE`.", + "items" : { + "enum" : [ + "ACCOUNT_CLOSED", + "ACCOUNT_CREATED", + "ACCOUNT_HOLDER_CREATED", + "ACCOUNT_HOLDER_LIMIT_REACHED", + "ACCOUNT_HOLDER_PAYOUT", + "ACCOUNT_HOLDER_STATUS_CHANGE", + "ACCOUNT_HOLDER_STORE_STATUS_CHANGE", + "ACCOUNT_HOLDER_UPCOMING_DEADLINE", + "ACCOUNT_HOLDER_UPDATED", + "ACCOUNT_HOLDER_VERIFICATION", + "ACCOUNT_UPDATED", + "BENEFICIARY_SETUP", + "COMPENSATE_NEGATIVE_BALANCE", + "DIRECT_DEBIT_INITIATED", + "PAYMENT_FAILURE", + "REFUND_FUNDS_TRANSFER", + "REPORT_AVAILABLE", + "SCHEDULED_REFUNDS", + "TRANSFER_FUNDS" + ], + "type" : "string" + }, + "type" : "array" + }, + "notificationId" : { + "description" : "The ID of the notification subscription configuration to be tested.", + "format" : "int64", + "type" : "integer" + } + }, + "required" : [ + "notificationId" + ] + }, + "TestNotificationConfigurationResponse" : { + "properties" : { + "errorMessages" : { + "description" : "Any error messages encountered.", + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "eventTypes" : { + "description" : "The event types that were tested.\n>Permitted values: `ACCOUNT_HOLDER_CREATED`, `ACCOUNT_CREATED`, `ACCOUNT_UPDATED`, `ACCOUNT_HOLDER_UPDATED`, `ACCOUNT_HOLDER_STATUS_CHANGE`, `ACCOUNT_HOLDER_STORE_STATUS_CHANGE` `ACCOUNT_HOLDER_VERIFICATION`, `ACCOUNT_HOLDER_LIMIT_REACHED`, `ACCOUNT_HOLDER_PAYOUT`, `PAYMENT_FAILURE`, `SCHEDULED_REFUNDS`, `REPORT_AVAILABLE`, `TRANSFER_FUNDS`, `BENEFICIARY_SETUP`, `COMPENSATE_NEGATIVE_BALANCE`.", + "items" : { + "enum" : [ + "ACCOUNT_CLOSED", + "ACCOUNT_CREATED", + "ACCOUNT_HOLDER_CREATED", + "ACCOUNT_HOLDER_LIMIT_REACHED", + "ACCOUNT_HOLDER_PAYOUT", + "ACCOUNT_HOLDER_STATUS_CHANGE", + "ACCOUNT_HOLDER_STORE_STATUS_CHANGE", + "ACCOUNT_HOLDER_UPCOMING_DEADLINE", + "ACCOUNT_HOLDER_UPDATED", + "ACCOUNT_HOLDER_VERIFICATION", + "ACCOUNT_UPDATED", + "BENEFICIARY_SETUP", + "COMPENSATE_NEGATIVE_BALANCE", + "DIRECT_DEBIT_INITIATED", + "PAYMENT_FAILURE", + "REFUND_FUNDS_TRANSFER", + "REPORT_AVAILABLE", + "SCHEDULED_REFUNDS", + "TRANSFER_FUNDS" + ], + "type" : "string" + }, + "type" : "array" + }, + "exchangeMessages" : { + "description" : "The notification message and related response messages.", + "items" : { + "$ref" : "#/components/schemas/ExchangeMessage" + }, + "type" : "array" + }, + "invalidFields" : { + "description" : "Contains field validation errors that would prevent requests from being processed.", + "items" : { + "$ref" : "#/components/schemas/ErrorFieldType" + }, + "type" : "array" + }, + "notificationId" : { + "description" : "The ID of the notification subscription configuration.", + "format" : "int64", + "type" : "integer" + }, + "okMessages" : { + "description" : "A list of messages describing the testing steps.", + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "pspReference" : { + "description" : "The reference of a request. Can be used to uniquely identify the request.", + "type" : "string" + }, + "resultCode" : { + "description" : "The result code.", + "type" : "string" + } + }, + "required" : [ + "notificationId", + "eventTypes", + "okMessages", + "exchangeMessages" + ] + }, + "UpdateNotificationConfigurationRequest" : { + "properties" : { + "configurationDetails" : { + "description" : "Details of the notification subscription configuration to be updated.", + "$ref" : "#/components/schemas/NotificationConfigurationDetails" + } + }, + "required" : [ + "configurationDetails" + ] + } + }, + "securitySchemes" : { + "ApiKeyAuth" : { + "in" : "header", + "name" : "X-API-Key", + "type" : "apiKey" + }, + "BasicAuth" : { + "scheme" : "basic", + "type" : "http" + } + } + } +} \ No newline at end of file diff --git a/yaml/MarketPayNotificationService-v3.yaml b/yaml/MarketPayNotificationService-v3.yaml index 103499c..e98bccd 100644 --- a/yaml/MarketPayNotificationService-v3.yaml +++ b/yaml/MarketPayNotificationService-v3.yaml @@ -1,11 +1,11 @@ -openapi: 3.0.0 +openapi: 3.0.3 info: version: '3' - title: Adyen MarketPay Notifications + title: 'Adyen for Platforms: Notifications' description: |- The Notification API sends notifications to the endpoints specified in a given subscription. Subscriptions are managed through the Notification Configuration API. The API specifications listed here detail the format of each notification. - For further information on MarketPay notifications, please visit the [MarketPay documentation](https://docs.adyen.com/marketpay). + For more information, refer to our [documentation](https://docs.adyen.com/marketpay/marketpay-notifications). termsOfService: 'https://www.adyen.com/legal/terms-and-conditions' contact: name: Adyen Support @@ -23,6 +23,7 @@ paths: post: summary: Triggered upon the closure of an account. description: This notification is sent when an account has been closed. + operationId: post-ACCOUNT_CLOSED x-groupName: Accounts x-sortIndex: 3 requestBody: @@ -41,6 +42,7 @@ paths: post: summary: Triggered upon the creation of an account. description: This notification is sent when an account has been created. + operationId: post-ACCOUNT_CREATED x-groupName: Accounts x-sortIndex: 1 requestBody: @@ -59,6 +61,7 @@ paths: post: summary: Triggered upon the creation of an account holder. description: This notification is sent when an account holder has been created. + operationId: post-ACCOUNT_HOLDER_CREATED x-groupName: Account holders x-sortIndex: 1 requestBody: @@ -77,6 +80,7 @@ paths: post: summary: Triggered upon a payout to an account holder. description: This notification is sent when a payout request to an account holder has been processed and the payout has been scheduled. + operationId: post-ACCOUNT_HOLDER_PAYOUT x-groupName: Fund management x-sortIndex: 1 requestBody: @@ -95,6 +99,7 @@ paths: post: summary: Triggered upon the status change of an account holder. description: This notification is sent when the status of an account holder has been changed. + operationId: post-ACCOUNT_HOLDER_STATUS_CHANGE x-groupName: Account holders x-sortIndex: 4 requestBody: @@ -113,6 +118,7 @@ paths: post: summary: Triggered upon the status change of a store tied to an account holder. description: This notification is sent when the status of a store tied to an account holder has been changed. + operationId: post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE x-groupName: Account holders x-sortIndex: 4 requestBody: @@ -131,6 +137,7 @@ paths: post: summary: Triggered upon an upcoming deadline. description: 'This notification is sent when an Account Holder has a deadline, to fulfill the requirements of a specific event, coming up.' + operationId: post-ACCOUNT_HOLDER_UPCOMING_DEADLINE x-groupName: Account holders x-sortIndex: 1 requestBody: @@ -149,6 +156,7 @@ paths: post: summary: Triggered upon the update of an account holder. description: This notification is sent when an account holder has been updated. + operationId: post-ACCOUNT_HOLDER_UPDATED x-groupName: Account holders x-sortIndex: 2 requestBody: @@ -167,6 +175,7 @@ paths: post: summary: Triggered upon the receipt of KYC Verification results. description: This notification is sent when KYC Verification results are made available. + operationId: post-ACCOUNT_HOLDER_VERIFICATION x-groupName: Account holders x-sortIndex: 3 requestBody: @@ -185,6 +194,7 @@ paths: post: summary: Triggered upon the update of an account. description: This notification is sent when an account has been updated. + operationId: post-ACCOUNT_UPDATED x-groupName: Accounts x-sortIndex: 2 requestBody: @@ -203,6 +213,7 @@ paths: post: summary: Triggered upon the setup of a beneficiary. description: This notification is sent when a benefactor/beneficiary relationship between accounts has been set up. + operationId: post-BENEFICIARY_SETUP x-groupName: Fund management x-sortIndex: 3 requestBody: @@ -221,6 +232,7 @@ paths: post: summary: Triggered upon the compensation of negative account balances. description: This notification is sent when funds have been transferred from the Marketplace's liable account to an overdrawn account in order to compensate for the overdraft. + operationId: post-COMPENSATE_NEGATIVE_BALANCE x-groupName: Fund management x-sortIndex: 5 requestBody: @@ -239,6 +251,7 @@ paths: post: summary: Triggered when an automated direct debit is initiated. description: This notification is sent when an automated direct debit is initiated from the Adyen platform. + operationId: post-DIRECT_DEBIT_INITIATED x-groupName: Fund management x-sortIndex: 7 requestBody: @@ -257,6 +270,7 @@ paths: post: summary: Triggered upon an account payment failure. description: 'This notification is sent when a payment to an account has failed. In these cases, the funds which were meant for the account are redirected to the Marketplace''s liable account.' + operationId: post-PAYMENT_FAILURE x-groupName: Other x-sortIndex: 1 requestBody: @@ -271,10 +285,30 @@ paths: schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. + /PAYOUT_CONFIRMED: + post: + summary: Triggered when a payout has been confirmed. + description: This notification is sent when a payout is confirmed from the Adyen platform. + operationId: post-PAYOUT_CONFIRMED + x-groupName: Fund management + x-sortIndex: 8 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/AccountHolderPayoutNotification' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/NotificationResponse' + description: OK - the request has succeeded. /REFUND_FUNDS_TRANSFER: post: summary: Triggered upon the transfer refund of funds between accounts. description: This notification is sent when the refund of funds from an account have been transferred to another account. + operationId: post-REFUND_FUNDS_TRANSFER x-groupName: Fund management x-sortIndex: 6 requestBody: @@ -293,6 +327,7 @@ paths: post: summary: Triggered when a report is made available. description: This notification is sent when a report has been made available. + operationId: post-REPORT_AVAILABLE x-groupName: Other x-sortIndex: 2 requestBody: @@ -311,6 +346,7 @@ paths: post: summary: Triggered upon the scheduling of refunds requested by a 'Refund Transfers Not Paid Out' call. description: This notification is sent when a 'Refund Transfers Not Paid Out' call has been processed and the associated refunds have been scheduled. + operationId: post-SCHEDULED_REFUNDS x-groupName: Fund management x-sortIndex: 4 requestBody: @@ -329,6 +365,7 @@ paths: post: summary: Triggered upon the transfer of funds between accounts. description: This notification is sent when the funds from an account have been transferred to another account. + operationId: post-TRANSFER_FUNDS x-groupName: Fund management x-sortIndex: 2 requestBody: @@ -475,6 +512,8 @@ components: > If not specified in the request, this will be derived from the platform account (which is configured by Adyen). type: string metadata: + additionalProperties: + type: string description: |- A set of key and value pairs for general use by the account holder or merchant. The keys do not have specific names and may be used for storing miscellaneous data as desired. @@ -570,10 +609,6 @@ components: type: string required: - status - - statusReason - - processingState - - payoutState - - events AccountHolderStatusChangeNotification: properties: content: @@ -614,7 +649,6 @@ components: - accountHolderCode - oldStatus - newStatus - - reason AccountHolderStoreStatusChangeNotification: properties: content: @@ -772,10 +806,12 @@ components: description: The type of validation performed. enum: - BANK_ACCOUNT_VERIFICATION + - CARD_VERIFICATION - COMPANY_VERIFICATION - IDENTITY_VERIFICATION - NONPROFIT_VERIFICATION - PASSPORT_VERIFICATION + - PAYOUT_METHOD_VERIFICATION type: string required: - accountHolderCode @@ -797,12 +833,6 @@ components: description: The payout tier that the account holder occupies. format: int32 type: integer - required: - - allowPayout - - disabled - - tierNumber - - disableReason - - payoutLimit AccountProcessingState: properties: disableReason: @@ -821,12 +851,6 @@ components: description: The processing tier that the account holder occupies. format: int32 type: integer - required: - - disabled - - disableReason - - processedFrom - - processedTo - - tierNumber AccountUpdateNotification: properties: content: @@ -1094,7 +1118,7 @@ components: CloseAccountResponse: properties: pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. @@ -1111,10 +1135,9 @@ components: type: string submittedAsync: description: |- - Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied: - * **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. - * **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received. - * **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue. + Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied: + * **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received. + * **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. type: boolean required: - pspReference @@ -1187,17 +1210,16 @@ components: $ref: '#/components/schemas/ErrorFieldType' type: array pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. type: string submittedAsync: description: |- - Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied: - * **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. - * **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received. - * **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue. + Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied: + * **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received. + * **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. type: boolean verification: description: The details of KYC Verification of the account holder. @@ -1221,7 +1243,7 @@ components: description: The payout schedule of the account. $ref: '#/components/schemas/PayoutScheduleResponse' pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. @@ -1238,10 +1260,9 @@ components: type: string submittedAsync: description: |- - Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied: - * **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. - * **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received. - * **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue. + Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied: + * **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received. + * **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. type: boolean required: - pspReference @@ -1402,6 +1423,9 @@ components: - sourceAccountCode - stateOrProvince - status + - stockExchange + - stockNumber + - stockTicker - store - storeDetail - storeName @@ -1440,9 +1464,6 @@ components: items: $ref: '#/components/schemas/KYCCheckStatusData' type: array - required: - - checks - - bankAccountUUID KYCCheckDataSummaryItem: properties: itemCode: @@ -1459,8 +1480,6 @@ components: items: $ref: '#/components/schemas/KYCCheckStatusData' type: array - required: - - checks KYCCheckStatusData: properties: requiredFields: @@ -1489,19 +1508,19 @@ components: type: description: |- The type of check. - >Permitted Values: `COMPANY_VERIFICATION`, `IDENTITY_VERIFICATION`, `PASSPORT_VERIFICATION`, `BANK_ACCOUNT_VERIFICATION`, `NONPROFIT_VERIFICATION`. + >Permitted Values: `COMPANY_VERIFICATION`, `IDENTITY_VERIFICATION`, `PASSPORT_VERIFICATION`, `BANK_ACCOUNT_VERIFICATION`, `NONPROFIT_VERIFICATION`, `CARD_VERIFICATION`. enum: - BANK_ACCOUNT_VERIFICATION + - CARD_VERIFICATION - COMPANY_VERIFICATION - IDENTITY_VERIFICATION - NONPROFIT_VERIFICATION - PASSPORT_VERIFICATION + - PAYOUT_METHOD_VERIFICATION type: string required: - type - status - - summary - - requiredFields KYCCheckSummary: properties: code: @@ -1523,9 +1542,6 @@ components: shareholderCode: description: The code of the shareholder to which the check applies. type: string - required: - - checks - - shareholderCode KYCVerificationResult: properties: accountHolder: @@ -1541,10 +1557,6 @@ components: items: $ref: '#/components/schemas/KYCShareholderCheckResult' type: array - required: - - accountHolder - - shareholders - - bankAccounts LocalDate: properties: month: @@ -1564,10 +1576,8 @@ components: NotificationResponse: properties: notificationResponse: - description: 'Set this property to **[accepted]** to acknowledge that you received a notification from Adyen.' + description: 'Set this parameter to **[accepted]** to acknowledge that you received a notification from Adyen.' type: string - required: - - notificationResponse OperationStatus: properties: message: @@ -1674,7 +1684,6 @@ components: type: string required: - type - - number RefundFundsTransferNotification: properties: content: @@ -1898,15 +1907,18 @@ components: transactionStatus: description: |- The status of the transaction. - >Permitted values: `PendingCredit`, `CreditFailed`, `Credited`, `Converted`, `PendingDebit`, `DebitFailed`, `Debited`, `DebitReversedReceived`, `DebitedReversed`, `ChargebackReceived`, `Chargeback`, `ChargebackReversedReceived`, `ChargebackReversed`, `Payout`, `PayoutReversed`, `FundTransfer`, `PendingFundTransfer`, `ManualCorrected`. + >Permitted values: `PendingCredit`, `CreditFailed`, `CreditClosed`, `Credited`, `Converted`, `PendingDebit`, `DebitFailed`, `Debited`, `DebitReversedReceived`, `DebitedReversed`, `ChargebackReceived`, `Chargeback`, `ChargebackReversedReceived`, `ChargebackReversed`, `Payout`, `PayoutReversed`, `FundTransfer`, `PendingFundTransfer`, `ManualCorrected`. enum: - Chargeback - ChargebackCorrection - ChargebackCorrectionReceived - ChargebackReceived - ChargebackReversed + - ChargebackReversedCorrection + - ChargebackReversedCorrectionReceived - ChargebackReversedReceived - Converted + - CreditClosed - CreditFailed - CreditReversed - CreditReversedReceived @@ -1995,17 +2007,16 @@ components: $ref: '#/components/schemas/ErrorFieldType' type: array pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. type: string submittedAsync: description: |- - Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied: - * **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. - * **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received. - * **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue. + Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied: + * **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received. + * **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. type: boolean updatedFields: description: A list of the fields updated through the request. @@ -2029,23 +2040,21 @@ components: description: The payout schedule of the account. $ref: '#/components/schemas/PayoutScheduleResponse' pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. type: string submittedAsync: description: |- - Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied: - * **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. - * **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received. - * **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue. + Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied: + * **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received. + * **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. type: boolean required: - pspReference - submittedAsync - accountCode - - payoutSchedule ViasAddress: properties: city: @@ -2157,3 +2166,11 @@ components: required: - phoneCountryCode - phoneNumber + securitySchemes: + ApiKeyAuth: + in: header + name: X-API-Key + type: apiKey + BasicAuth: + scheme: basic + type: http diff --git a/yaml/MarketPayNotificationService-v4.yaml b/yaml/MarketPayNotificationService-v4.yaml index d2f6efb..fa02e96 100644 --- a/yaml/MarketPayNotificationService-v4.yaml +++ b/yaml/MarketPayNotificationService-v4.yaml @@ -1,11 +1,11 @@ -openapi: 3.0.0 +openapi: 3.0.3 info: version: '4' - title: Adyen MarketPay Notifications + title: 'Adyen for Platforms: Notifications' description: |- The Notification API sends notifications to the endpoints specified in a given subscription. Subscriptions are managed through the Notification Configuration API. The API specifications listed here detail the format of each notification. - For further information on MarketPay notifications, please visit the [MarketPay documentation](https://docs.adyen.com/marketpay). + For more information, refer to our [documentation](https://docs.adyen.com/marketpay/marketpay-notifications). termsOfService: 'https://www.adyen.com/legal/terms-and-conditions' contact: name: Adyen Support @@ -23,6 +23,7 @@ paths: post: summary: Triggered upon the closure of an account. description: This notification is sent when an account has been closed. + operationId: post-ACCOUNT_CLOSED x-groupName: Accounts x-sortIndex: 3 requestBody: @@ -41,6 +42,7 @@ paths: post: summary: Triggered upon the creation of an account. description: This notification is sent when an account has been created. + operationId: post-ACCOUNT_CREATED x-groupName: Accounts x-sortIndex: 1 requestBody: @@ -59,6 +61,7 @@ paths: post: summary: Triggered upon the creation of an account holder. description: This notification is sent when an account holder has been created. + operationId: post-ACCOUNT_HOLDER_CREATED x-groupName: Account holders x-sortIndex: 1 requestBody: @@ -77,6 +80,7 @@ paths: post: summary: Triggered upon a payout to an account holder. description: This notification is sent when a payout request to an account holder has been processed and the payout has been scheduled. + operationId: post-ACCOUNT_HOLDER_PAYOUT x-groupName: Fund management x-sortIndex: 1 requestBody: @@ -95,6 +99,7 @@ paths: post: summary: Triggered upon the status change of an account holder. description: This notification is sent when the status of an account holder has been changed. + operationId: post-ACCOUNT_HOLDER_STATUS_CHANGE x-groupName: Account holders x-sortIndex: 4 requestBody: @@ -113,6 +118,7 @@ paths: post: summary: Triggered upon the status change of a store tied to an account holder. description: This notification is sent when the status of a store tied to an account holder has been changed. + operationId: post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE x-groupName: Account holders x-sortIndex: 4 requestBody: @@ -131,6 +137,7 @@ paths: post: summary: Triggered upon an upcoming deadline. description: 'This notification is sent when an Account Holder has a deadline, to fulfill the requirements of a specific event, coming up.' + operationId: post-ACCOUNT_HOLDER_UPCOMING_DEADLINE x-groupName: Account holders x-sortIndex: 1 requestBody: @@ -149,6 +156,7 @@ paths: post: summary: Triggered upon the update of an account holder. description: This notification is sent when an account holder has been updated. + operationId: post-ACCOUNT_HOLDER_UPDATED x-groupName: Account holders x-sortIndex: 2 requestBody: @@ -167,6 +175,7 @@ paths: post: summary: Triggered upon the receipt of KYC Verification results. description: This notification is sent when KYC Verification results are made available. + operationId: post-ACCOUNT_HOLDER_VERIFICATION x-groupName: Account holders x-sortIndex: 3 requestBody: @@ -185,6 +194,7 @@ paths: post: summary: Triggered upon the update of an account. description: This notification is sent when an account has been updated. + operationId: post-ACCOUNT_UPDATED x-groupName: Accounts x-sortIndex: 2 requestBody: @@ -203,6 +213,7 @@ paths: post: summary: Triggered upon the setup of a beneficiary. description: This notification is sent when a benefactor/beneficiary relationship between accounts has been set up. + operationId: post-BENEFICIARY_SETUP x-groupName: Fund management x-sortIndex: 3 requestBody: @@ -221,6 +232,7 @@ paths: post: summary: Triggered upon the compensation of negative account balances. description: This notification is sent when funds have been transferred from the Marketplace's liable account to an overdrawn account in order to compensate for the overdraft. + operationId: post-COMPENSATE_NEGATIVE_BALANCE x-groupName: Fund management x-sortIndex: 5 requestBody: @@ -239,6 +251,7 @@ paths: post: summary: Triggered when an automated direct debit is initiated. description: This notification is sent when an automated direct debit is initiated from the Adyen platform. + operationId: post-DIRECT_DEBIT_INITIATED x-groupName: Fund management x-sortIndex: 7 requestBody: @@ -257,6 +270,7 @@ paths: post: summary: Triggered upon an account payment failure. description: 'This notification is sent when a payment to an account has failed. In these cases, the funds which were meant for the account are redirected to the Marketplace''s liable account.' + operationId: post-PAYMENT_FAILURE x-groupName: Other x-sortIndex: 1 requestBody: @@ -271,10 +285,30 @@ paths: schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. + /PAYOUT_CONFIRMED: + post: + summary: Triggered when a payout has been confirmed. + description: This notification is sent when a payout is confirmed from the Adyen platform. + operationId: post-PAYOUT_CONFIRMED + x-groupName: Fund management + x-sortIndex: 8 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/AccountHolderPayoutNotification' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/NotificationResponse' + description: OK - the request has succeeded. /REFUND_FUNDS_TRANSFER: post: summary: Triggered upon the transfer refund of funds between accounts. description: This notification is sent when the refund of funds from an account have been transferred to another account. + operationId: post-REFUND_FUNDS_TRANSFER x-groupName: Fund management x-sortIndex: 6 requestBody: @@ -293,6 +327,7 @@ paths: post: summary: Triggered when a report is made available. description: This notification is sent when a report has been made available. + operationId: post-REPORT_AVAILABLE x-groupName: Other x-sortIndex: 2 requestBody: @@ -311,6 +346,7 @@ paths: post: summary: Triggered upon the scheduling of refunds requested by a 'Refund Transfers Not Paid Out' call. description: This notification is sent when a 'Refund Transfers Not Paid Out' call has been processed and the associated refunds have been scheduled. + operationId: post-SCHEDULED_REFUNDS x-groupName: Fund management x-sortIndex: 4 requestBody: @@ -329,6 +365,7 @@ paths: post: summary: Triggered upon the transfer of funds between accounts. description: This notification is sent when the funds from an account have been transferred to another account. + operationId: post-TRANSFER_FUNDS x-groupName: Fund management x-sortIndex: 2 requestBody: @@ -490,6 +527,8 @@ components: > If not specified in the request, this will be derived from the platform account (which is configured by Adyen). type: string metadata: + additionalProperties: + type: string description: |- A set of key and value pairs for general use by the account holder or merchant. The keys do not have specific names and may be used for storing miscellaneous data as desired. @@ -590,10 +629,6 @@ components: type: string required: - status - - statusReason - - processingState - - payoutState - - events AccountHolderStatusChangeNotification: properties: content: @@ -639,7 +674,6 @@ components: - accountHolderCode - oldStatus - newStatus - - reason AccountHolderStoreStatusChangeNotification: properties: content: @@ -814,10 +848,12 @@ components: description: The type of validation performed. enum: - BANK_ACCOUNT_VERIFICATION + - CARD_VERIFICATION - COMPANY_VERIFICATION - IDENTITY_VERIFICATION - NONPROFIT_VERIFICATION - PASSPORT_VERIFICATION + - PAYOUT_METHOD_VERIFICATION type: string required: - accountHolderCode @@ -839,12 +875,6 @@ components: description: The payout tier that the account holder occupies. format: int32 type: integer - required: - - allowPayout - - disabled - - tierNumber - - disableReason - - payoutLimit AccountProcessingState: properties: disableReason: @@ -863,12 +893,6 @@ components: description: The processing tier that the account holder occupies. format: int32 type: integer - required: - - disabled - - disableReason - - processedFrom - - processedTo - - tierNumber AccountUpdateNotification: properties: content: @@ -1149,7 +1173,7 @@ components: CloseAccountResponse: properties: pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. @@ -1166,10 +1190,9 @@ components: type: string submittedAsync: description: |- - Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied: - * **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. - * **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received. - * **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue. + Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied: + * **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received. + * **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. type: boolean required: - pspReference @@ -1259,17 +1282,16 @@ components: - PublicCompany type: string pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. type: string submittedAsync: description: |- - Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied: - * **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. - * **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received. - * **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue. + Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied: + * **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received. + * **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. type: boolean verification: description: The details of KYC Verification of the account holder. @@ -1297,7 +1319,7 @@ components: description: The payout schedule of the account. $ref: '#/components/schemas/PayoutScheduleResponse' pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. @@ -1314,10 +1336,9 @@ components: type: string submittedAsync: description: |- - Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied: - * **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. - * **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received. - * **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue. + Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied: + * **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received. + * **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. type: boolean required: - pspReference @@ -1483,6 +1504,9 @@ components: - sourceAccountCode - stateOrProvince - status + - stockExchange + - stockNumber + - stockTicker - store - storeDetail - storeName @@ -1521,9 +1545,6 @@ components: items: $ref: '#/components/schemas/KYCCheckStatusData' type: array - required: - - checks - - bankAccountUUID KYCCheckResult: properties: checks: @@ -1531,8 +1552,6 @@ components: items: $ref: '#/components/schemas/KYCCheckStatusData' type: array - required: - - checks KYCCheckStatusData: properties: requiredFields: @@ -1561,19 +1580,19 @@ components: type: description: |- The type of check. - >Permitted Values: `COMPANY_VERIFICATION`, `IDENTITY_VERIFICATION`, `PASSPORT_VERIFICATION`, `BANK_ACCOUNT_VERIFICATION`, `NONPROFIT_VERIFICATION`. + >Permitted Values: `COMPANY_VERIFICATION`, `IDENTITY_VERIFICATION`, `PASSPORT_VERIFICATION`, `BANK_ACCOUNT_VERIFICATION`, `NONPROFIT_VERIFICATION`, `CARD_VERIFICATION`. enum: - BANK_ACCOUNT_VERIFICATION + - CARD_VERIFICATION - COMPANY_VERIFICATION - IDENTITY_VERIFICATION - NONPROFIT_VERIFICATION - PASSPORT_VERIFICATION + - PAYOUT_METHOD_VERIFICATION type: string required: - type - status - - summary - - requiredFields KYCCheckSummary: properties: code: @@ -1595,9 +1614,6 @@ components: shareholderCode: description: The code of the shareholder to which the check applies. type: string - required: - - checks - - shareholderCode KYCVerificationResult: properties: accountHolder: @@ -1613,10 +1629,6 @@ components: items: $ref: '#/components/schemas/KYCShareholderCheckResult' type: array - required: - - accountHolder - - shareholders - - bankAccounts LocalDate: properties: month: @@ -1636,10 +1648,8 @@ components: NotificationResponse: properties: notificationResponse: - description: 'Set this property to **[accepted]** to acknowledge that you received a notification from Adyen.' + description: 'Set this parameter to **[accepted]** to acknowledge that you received a notification from Adyen.' type: string - required: - - notificationResponse OperationStatus: properties: message: @@ -1751,7 +1761,6 @@ components: type: string required: - type - - number RefundFundsTransferNotification: properties: content: @@ -1990,15 +1999,18 @@ components: transactionStatus: description: |- The status of the transaction. - >Permitted values: `PendingCredit`, `CreditFailed`, `Credited`, `Converted`, `PendingDebit`, `DebitFailed`, `Debited`, `DebitReversedReceived`, `DebitedReversed`, `ChargebackReceived`, `Chargeback`, `ChargebackReversedReceived`, `ChargebackReversed`, `Payout`, `PayoutReversed`, `FundTransfer`, `PendingFundTransfer`, `ManualCorrected`. + >Permitted values: `PendingCredit`, `CreditFailed`, `CreditClosed`, `Credited`, `Converted`, `PendingDebit`, `DebitFailed`, `Debited`, `DebitReversedReceived`, `DebitedReversed`, `ChargebackReceived`, `Chargeback`, `ChargebackReversedReceived`, `ChargebackReversed`, `Payout`, `PayoutReversed`, `FundTransfer`, `PendingFundTransfer`, `ManualCorrected`. enum: - Chargeback - ChargebackCorrection - ChargebackCorrectionReceived - ChargebackReceived - ChargebackReversed + - ChargebackReversedCorrection + - ChargebackReversedCorrectionReceived - ChargebackReversedReceived - Converted + - CreditClosed - CreditFailed - CreditReversed - CreditReversedReceived @@ -2104,17 +2116,16 @@ components: - PublicCompany type: string pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. type: string submittedAsync: description: |- - Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied: - * **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. - * **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received. - * **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue. + Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied: + * **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received. + * **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. type: boolean updatedFields: description: A list of the fields updated through the request. @@ -2142,23 +2153,21 @@ components: description: The payout schedule of the account. $ref: '#/components/schemas/PayoutScheduleResponse' pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. type: string submittedAsync: description: |- - Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied: - * **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. - * **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received. - * **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue. + Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied: + * **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received. + * **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. type: boolean required: - pspReference - submittedAsync - accountCode - - payoutSchedule ViasAddress: properties: city: @@ -2270,3 +2279,11 @@ components: required: - phoneCountryCode - phoneNumber + securitySchemes: + ApiKeyAuth: + in: header + name: X-API-Key + type: apiKey + BasicAuth: + scheme: basic + type: http diff --git a/yaml/MarketPayNotificationService-v5.yaml b/yaml/MarketPayNotificationService-v5.yaml index 08c766c..8284a0b 100644 --- a/yaml/MarketPayNotificationService-v5.yaml +++ b/yaml/MarketPayNotificationService-v5.yaml @@ -1,11 +1,11 @@ -openapi: 3.0.0 +openapi: 3.0.3 info: version: '5' - title: Adyen MarketPay Notifications + title: 'Adyen for Platforms: Notifications' description: |- The Notification API sends notifications to the endpoints specified in a given subscription. Subscriptions are managed through the Notification Configuration API. The API specifications listed here detail the format of each notification. - For further information on MarketPay notifications, please visit the [MarketPay documentation](https://docs.adyen.com/marketpay). + For more information, refer to our [documentation](https://docs.adyen.com/marketpay/marketpay-notifications). termsOfService: 'https://www.adyen.com/legal/terms-and-conditions' contact: name: Adyen Support @@ -23,6 +23,7 @@ paths: post: summary: Triggered upon the closure of an account. description: This notification is sent when an account has been closed. + operationId: post-ACCOUNT_CLOSED x-groupName: Accounts x-sortIndex: 3 requestBody: @@ -41,6 +42,7 @@ paths: post: summary: Triggered upon the creation of an account. description: This notification is sent when an account has been created. + operationId: post-ACCOUNT_CREATED x-groupName: Accounts x-sortIndex: 1 requestBody: @@ -59,6 +61,7 @@ paths: post: summary: Triggered upon the creation of an account holder. description: This notification is sent when an account holder has been created. + operationId: post-ACCOUNT_HOLDER_CREATED x-groupName: Account holders x-sortIndex: 1 requestBody: @@ -77,6 +80,7 @@ paths: post: summary: Triggered upon a payout to an account holder. description: This notification is sent when a payout request to an account holder has been processed and the payout has been scheduled. + operationId: post-ACCOUNT_HOLDER_PAYOUT x-groupName: Fund management x-sortIndex: 1 requestBody: @@ -95,6 +99,7 @@ paths: post: summary: Triggered upon the status change of an account holder. description: This notification is sent when the status of an account holder has been changed. + operationId: post-ACCOUNT_HOLDER_STATUS_CHANGE x-groupName: Account holders x-sortIndex: 4 requestBody: @@ -113,6 +118,7 @@ paths: post: summary: Triggered upon the status change of a store tied to an account holder. description: This notification is sent when the status of a store tied to an account holder has been changed. + operationId: post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE x-groupName: Account holders x-sortIndex: 4 requestBody: @@ -131,6 +137,7 @@ paths: post: summary: Triggered upon an upcoming deadline. description: 'This notification is sent when an Account Holder has a deadline, to fulfill the requirements of a specific event, coming up.' + operationId: post-ACCOUNT_HOLDER_UPCOMING_DEADLINE x-groupName: Account holders x-sortIndex: 1 requestBody: @@ -149,6 +156,7 @@ paths: post: summary: Triggered upon the update of an account holder. description: This notification is sent when an account holder has been updated. + operationId: post-ACCOUNT_HOLDER_UPDATED x-groupName: Account holders x-sortIndex: 2 requestBody: @@ -167,6 +175,7 @@ paths: post: summary: Triggered upon the receipt of KYC Verification results. description: This notification is sent when KYC Verification results are made available. + operationId: post-ACCOUNT_HOLDER_VERIFICATION x-groupName: Account holders x-sortIndex: 3 requestBody: @@ -185,6 +194,7 @@ paths: post: summary: Triggered upon the update of an account. description: This notification is sent when an account has been updated. + operationId: post-ACCOUNT_UPDATED x-groupName: Accounts x-sortIndex: 2 requestBody: @@ -203,6 +213,7 @@ paths: post: summary: Triggered upon the setup of a beneficiary. description: This notification is sent when a benefactor/beneficiary relationship between accounts has been set up. + operationId: post-BENEFICIARY_SETUP x-groupName: Fund management x-sortIndex: 3 requestBody: @@ -221,6 +232,7 @@ paths: post: summary: Triggered upon the compensation of negative account balances. description: This notification is sent when funds have been transferred from the Marketplace's liable account to an overdrawn account in order to compensate for the overdraft. + operationId: post-COMPENSATE_NEGATIVE_BALANCE x-groupName: Fund management x-sortIndex: 5 requestBody: @@ -239,6 +251,7 @@ paths: post: summary: Triggered when an automated direct debit is initiated. description: This notification is sent when an automated direct debit is initiated from the Adyen platform. + operationId: post-DIRECT_DEBIT_INITIATED x-groupName: Fund management x-sortIndex: 7 requestBody: @@ -257,6 +270,7 @@ paths: post: summary: Triggered upon an account payment failure. description: 'This notification is sent when a payment to an account has failed. In these cases, the funds which were meant for the account are redirected to the Marketplace''s liable account.' + operationId: post-PAYMENT_FAILURE x-groupName: Other x-sortIndex: 1 requestBody: @@ -271,10 +285,30 @@ paths: schema: $ref: '#/components/schemas/NotificationResponse' description: OK - the request has succeeded. + /PAYOUT_CONFIRMED: + post: + summary: Triggered when a payout has been confirmed. + description: This notification is sent when a payout is confirmed from the Adyen platform. + operationId: post-PAYOUT_CONFIRMED + x-groupName: Fund management + x-sortIndex: 8 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/AccountHolderPayoutNotification' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/NotificationResponse' + description: OK - the request has succeeded. /REFUND_FUNDS_TRANSFER: post: summary: Triggered upon the transfer refund of funds between accounts. description: This notification is sent when the refund of funds from an account have been transferred to another account. + operationId: post-REFUND_FUNDS_TRANSFER x-groupName: Fund management x-sortIndex: 6 requestBody: @@ -293,6 +327,7 @@ paths: post: summary: Triggered when a report is made available. description: This notification is sent when a report has been made available. + operationId: post-REPORT_AVAILABLE x-groupName: Other x-sortIndex: 2 requestBody: @@ -311,6 +346,7 @@ paths: post: summary: Triggered upon the scheduling of refunds requested by a 'Refund Transfers Not Paid Out' call. description: This notification is sent when a 'Refund Transfers Not Paid Out' call has been processed and the associated refunds have been scheduled. + operationId: post-SCHEDULED_REFUNDS x-groupName: Fund management x-sortIndex: 4 requestBody: @@ -329,6 +365,7 @@ paths: post: summary: Triggered upon the transfer of funds between accounts. description: This notification is sent when the funds from an account have been transferred to another account. + operationId: post-TRANSFER_FUNDS x-groupName: Fund management x-sortIndex: 2 requestBody: @@ -473,6 +510,9 @@ components: items: $ref: '#/components/schemas/BankAccountDetail' type: array + bankAggregatorDataReference: + description: The opaque reference value returned by the Adyen API during bank account login. + type: string businessDetails: description: |- Details applicable to `Business` legal entities. @@ -499,6 +539,8 @@ components: > If not specified in the request, this will be derived from the platform account (which is configured by Adyen). type: string metadata: + additionalProperties: + type: string description: |- A set of key and value pairs for general use by the account holder or merchant. The keys do not have specific names and may be used for storing miscellaneous data as desired. @@ -587,6 +629,12 @@ components: originalPspReference: description: The PSP reference of the original payout. type: string + payoutSpeed: + description: 'Speed with which payouts for this account are processed. Permitted values: `STANDARD`, `SAME_DAY`.' + enum: + - SAME_DAY + - STANDARD + type: string status: description: The payout status. $ref: '#/components/schemas/OperationStatus' @@ -621,10 +669,6 @@ components: type: string required: - status - - statusReason - - processingState - - payoutState - - events AccountHolderStatusChangeNotification: properties: content: @@ -678,7 +722,6 @@ components: - accountHolderCode - oldStatus - newStatus - - reason AccountHolderStoreStatusChangeNotification: properties: content: @@ -752,7 +795,6 @@ components: - storeReference - oldStatus - newStatus - - reason AccountHolderUpcomingDeadlineNotification: properties: content: @@ -914,13 +956,6 @@ components: description: The payout tier that the account holder occupies. format: int32 type: integer - required: - - allowPayout - - disabled - - tierNumber - - disableReason - - payoutLimit - - notAllowedReason AccountProcessingState: properties: disableReason: @@ -939,12 +974,6 @@ components: description: The processing tier that the account holder occupies. format: int32 type: integer - required: - - disabled - - disableReason - - processedFrom - - processedTo - - tierNumber AccountUpdateNotification: properties: content: @@ -1242,7 +1271,7 @@ components: $ref: '#/components/schemas/ErrorFieldType' type: array pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. @@ -1350,7 +1379,7 @@ components: description: 'The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes), with which the prospective account holder primarily deals.' type: string pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. @@ -1388,8 +1417,14 @@ components: payoutSchedule: description: The payout schedule of the account. $ref: '#/components/schemas/PayoutScheduleResponse' + payoutSpeed: + description: 'Speed with which payouts for this account are processed. Permitted values: `STANDARD`, `SAME_DAY`.' + enum: + - SAME_DAY + - STANDARD + type: string pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. @@ -1570,6 +1605,9 @@ components: - sourceAccountCode - stateOrProvince - status + - stockExchange + - stockNumber + - stockTicker - store - storeDetail - storeName @@ -1608,9 +1646,16 @@ components: items: $ref: '#/components/schemas/KYCCheckStatusData' type: array - required: - - checks - - bankAccountUUID + KYCCardCheckResult: + properties: + checks: + description: A list of the checks and their statuses. + items: + $ref: '#/components/schemas/KYCCheckStatusData' + type: array + payoutMethodCode: + description: The unique ID of the card to which the check applies. + type: string KYCCheckResult: properties: checks: @@ -1618,8 +1663,6 @@ components: items: $ref: '#/components/schemas/KYCCheckStatusData' type: array - required: - - checks KYCCheckStatusData: properties: requiredFields: @@ -1648,19 +1691,19 @@ components: type: description: |- The type of check. - >Permitted Values: `COMPANY_VERIFICATION`, `IDENTITY_VERIFICATION`, `PASSPORT_VERIFICATION`, `BANK_ACCOUNT_VERIFICATION`, `NONPROFIT_VERIFICATION`. + >Permitted Values: `COMPANY_VERIFICATION`, `IDENTITY_VERIFICATION`, `PASSPORT_VERIFICATION`, `BANK_ACCOUNT_VERIFICATION`, `NONPROFIT_VERIFICATION`, `CARD_VERIFICATION`. enum: - BANK_ACCOUNT_VERIFICATION + - CARD_VERIFICATION - COMPANY_VERIFICATION - IDENTITY_VERIFICATION - NONPROFIT_VERIFICATION - PASSPORT_VERIFICATION + - PAYOUT_METHOD_VERIFICATION type: string required: - type - status - - summary - - requiredFields KYCCheckSummary: properties: kycCheckCode: @@ -1680,9 +1723,6 @@ components: shareholderCode: description: The code of the shareholder to which the check applies. type: string - required: - - checks - - shareholderCode KYCVerificationResult: properties: accountHolder: @@ -1693,15 +1733,16 @@ components: items: $ref: '#/components/schemas/KYCBankAccountCheckResult' type: array + cards: + description: The result(s) of the checks on the card(s). + items: + $ref: '#/components/schemas/KYCCardCheckResult' + type: array shareholders: description: The result(s) of the checks on the shareholder(s). items: $ref: '#/components/schemas/KYCShareholderCheckResult' type: array - required: - - accountHolder - - shareholders - - bankAccounts LocalDate: properties: month: @@ -1729,10 +1770,8 @@ components: NotificationResponse: properties: notificationResponse: - description: 'Set this property to **[accepted]** to acknowledge that you received a notification from Adyen.' + description: 'Set this parameter to **[accepted]** to acknowledge that you received a notification from Adyen.' type: string - required: - - notificationResponse OperationStatus: properties: message: @@ -1865,7 +1904,6 @@ components: type: string required: - type - - number RefundFundsTransferNotification: properties: content: @@ -2126,15 +2164,18 @@ components: transactionStatus: description: |- The status of the transaction. - >Permitted values: `PendingCredit`, `CreditFailed`, `Credited`, `Converted`, `PendingDebit`, `DebitFailed`, `Debited`, `DebitReversedReceived`, `DebitedReversed`, `ChargebackReceived`, `Chargeback`, `ChargebackReversedReceived`, `ChargebackReversed`, `Payout`, `PayoutReversed`, `FundTransfer`, `PendingFundTransfer`, `ManualCorrected`. + >Permitted values: `PendingCredit`, `CreditFailed`, `CreditClosed`, `Credited`, `Converted`, `PendingDebit`, `DebitFailed`, `Debited`, `DebitReversedReceived`, `DebitedReversed`, `ChargebackReceived`, `Chargeback`, `ChargebackReversedReceived`, `ChargebackReversed`, `Payout`, `PayoutReversed`, `FundTransfer`, `PendingFundTransfer`, `ManualCorrected`. enum: - Chargeback - ChargebackCorrection - ChargebackCorrectionReceived - ChargebackReceived - ChargebackReversed + - ChargebackReversedCorrection + - ChargebackReversedCorrectionReceived - ChargebackReversedReceived - Converted + - CreditClosed - CreditFailed - CreditReversed - CreditReversedReceived @@ -2251,7 +2292,7 @@ components: description: 'The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes), with which the prospective account holder primarily deals.' type: string pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. @@ -2284,8 +2325,14 @@ components: payoutSchedule: description: The payout schedule of the account. $ref: '#/components/schemas/PayoutScheduleResponse' + payoutSpeed: + description: 'Speed with which payouts for this account are processed. Permitted values: `STANDARD`, `SAME_DAY`.' + enum: + - SAME_DAY + - STANDARD + type: string pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. @@ -2293,7 +2340,6 @@ components: required: - pspReference - accountCode - - payoutSchedule ViasAddress: properties: city: @@ -2401,3 +2447,11 @@ components: required: - phoneCountryCode - phoneNumber + securitySchemes: + ApiKeyAuth: + in: header + name: X-API-Key + type: apiKey + BasicAuth: + scheme: basic + type: http diff --git a/yaml/MarketPayNotificationService-v6.yaml b/yaml/MarketPayNotificationService-v6.yaml new file mode 100644 index 0000000..026f09c --- /dev/null +++ b/yaml/MarketPayNotificationService-v6.yaml @@ -0,0 +1,2470 @@ +openapi: 3.0.3 +info: + version: '6' + title: 'Adyen for Platforms: Notifications' + description: |- + The Notification API sends notifications to the endpoints specified in a given subscription. Subscriptions are managed through the Notification Configuration API. The API specifications listed here detail the format of each notification. + + For more information, refer to our [documentation](https://docs.adyen.com/marketpay/marketpay-notifications). + termsOfService: 'https://www.adyen.com/legal/terms-and-conditions' + contact: + name: Adyen Support + url: 'https://support.adyen.com/' + email: support@adyen.com +x-groups: + - Account holders + - Accounts + - Fund management + - Other +x-isWebhook: 'true' +x-staticResponse: response.json +paths: + /ACCOUNT_CLOSED: + post: + summary: Triggered upon the closure of an account. + description: This notification is sent when an account has been closed. + operationId: post-ACCOUNT_CLOSED + x-groupName: Accounts + x-sortIndex: 3 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/AccountCloseNotification' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/NotificationResponse' + description: OK - the request has succeeded. + /ACCOUNT_CREATED: + post: + summary: Triggered upon the creation of an account. + description: This notification is sent when an account has been created. + operationId: post-ACCOUNT_CREATED + x-groupName: Accounts + x-sortIndex: 1 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/AccountCreateNotification' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/NotificationResponse' + description: OK - the request has succeeded. + /ACCOUNT_HOLDER_CREATED: + post: + summary: Triggered upon the creation of an account holder. + description: This notification is sent when an account holder has been created. + operationId: post-ACCOUNT_HOLDER_CREATED + x-groupName: Account holders + x-sortIndex: 1 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/AccountHolderCreateNotification' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/NotificationResponse' + description: OK - the request has succeeded. + /ACCOUNT_HOLDER_PAYOUT: + post: + summary: Triggered upon a payout to an account holder. + description: This notification is sent when a payout request to an account holder has been processed and the payout has been scheduled. + operationId: post-ACCOUNT_HOLDER_PAYOUT + x-groupName: Fund management + x-sortIndex: 1 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/AccountHolderPayoutNotification' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/NotificationResponse' + description: OK - the request has succeeded. + /ACCOUNT_HOLDER_STATUS_CHANGE: + post: + summary: Triggered upon the status change of an account holder. + description: This notification is sent when the status of an account holder has been changed. + operationId: post-ACCOUNT_HOLDER_STATUS_CHANGE + x-groupName: Account holders + x-sortIndex: 4 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/AccountHolderStatusChangeNotification' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/NotificationResponse' + description: OK - the request has succeeded. + /ACCOUNT_HOLDER_STORE_STATUS_CHANGE: + post: + summary: Triggered upon the status change of a store tied to an account holder. + description: This notification is sent when the status of a store tied to an account holder has been changed. + operationId: post-ACCOUNT_HOLDER_STORE_STATUS_CHANGE + x-groupName: Account holders + x-sortIndex: 4 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/AccountHolderStoreStatusChangeNotification' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/NotificationResponse' + description: OK - the request has succeeded. + /ACCOUNT_HOLDER_UPCOMING_DEADLINE: + post: + summary: Triggered upon an upcoming deadline. + description: 'This notification is sent when an Account Holder has a deadline, to fulfill the requirements of a specific event, coming up.' + operationId: post-ACCOUNT_HOLDER_UPCOMING_DEADLINE + x-groupName: Account holders + x-sortIndex: 1 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/AccountHolderUpcomingDeadlineNotification' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/NotificationResponse' + description: OK - the request has succeeded. + /ACCOUNT_HOLDER_UPDATED: + post: + summary: Triggered upon the update of an account holder. + description: This notification is sent when an account holder has been updated. + operationId: post-ACCOUNT_HOLDER_UPDATED + x-groupName: Account holders + x-sortIndex: 2 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/AccountHolderUpdateNotification' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/NotificationResponse' + description: OK - the request has succeeded. + /ACCOUNT_HOLDER_VERIFICATION: + post: + summary: Triggered upon the receipt of KYC Verification results. + description: This notification is sent when KYC Verification results are made available. + operationId: post-ACCOUNT_HOLDER_VERIFICATION + x-groupName: Account holders + x-sortIndex: 3 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/AccountHolderVerificationNotification' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/NotificationResponse' + description: OK - the request has succeeded. + /ACCOUNT_UPDATED: + post: + summary: Triggered upon the update of an account. + description: This notification is sent when an account has been updated. + operationId: post-ACCOUNT_UPDATED + x-groupName: Accounts + x-sortIndex: 2 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/AccountUpdateNotification' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/NotificationResponse' + description: OK - the request has succeeded. + /BENEFICIARY_SETUP: + post: + summary: Triggered upon the setup of a beneficiary. + description: This notification is sent when a benefactor/beneficiary relationship between accounts has been set up. + operationId: post-BENEFICIARY_SETUP + x-groupName: Fund management + x-sortIndex: 3 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/BeneficiarySetupNotification' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/NotificationResponse' + description: OK - the request has succeeded. + /COMPENSATE_NEGATIVE_BALANCE: + post: + summary: Triggered upon the compensation of negative account balances. + description: This notification is sent when funds have been transferred from the Marketplace's liable account to an overdrawn account in order to compensate for the overdraft. + operationId: post-COMPENSATE_NEGATIVE_BALANCE + x-groupName: Fund management + x-sortIndex: 5 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CompensateNegativeBalanceNotification' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/NotificationResponse' + description: OK - the request has succeeded. + /DIRECT_DEBIT_INITIATED: + post: + summary: Triggered when an automated direct debit is initiated. + description: This notification is sent when an automated direct debit is initiated from the Adyen platform. + operationId: post-DIRECT_DEBIT_INITIATED + x-groupName: Fund management + x-sortIndex: 7 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/DirectDebitInitiatedNotification' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/NotificationResponse' + description: OK - the request has succeeded. + /PAYMENT_FAILURE: + post: + summary: Triggered upon an account payment failure. + description: 'This notification is sent when a payment to an account has failed. In these cases, the funds which were meant for the account are redirected to the Marketplace''s liable account.' + operationId: post-PAYMENT_FAILURE + x-groupName: Other + x-sortIndex: 1 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/PaymentFailureNotification' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/NotificationResponse' + description: OK - the request has succeeded. + /PAYOUT_CONFIRMED: + post: + summary: Triggered when a payout has been confirmed. + description: This notification is sent when a payout is confirmed from the Adyen platform. + operationId: post-PAYOUT_CONFIRMED + x-groupName: Fund management + x-sortIndex: 8 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/AccountHolderPayoutNotification' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/NotificationResponse' + description: OK - the request has succeeded. + /REFUND_FUNDS_TRANSFER: + post: + summary: Triggered upon the transfer refund of funds between accounts. + description: This notification is sent when the refund of funds from an account have been transferred to another account. + operationId: post-REFUND_FUNDS_TRANSFER + x-groupName: Fund management + x-sortIndex: 6 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/RefundFundsTransferNotification' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/NotificationResponse' + description: OK - the request has succeeded. + /REPORT_AVAILABLE: + post: + summary: Triggered when a report is made available. + description: This notification is sent when a report has been made available. + operationId: post-REPORT_AVAILABLE + x-groupName: Other + x-sortIndex: 2 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ReportAvailableNotification' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/NotificationResponse' + description: OK - the request has succeeded. + /SCHEDULED_REFUNDS: + post: + summary: Triggered upon the scheduling of refunds requested by a 'Refund Transfers Not Paid Out' call. + description: This notification is sent when a 'Refund Transfers Not Paid Out' call has been processed and the associated refunds have been scheduled. + operationId: post-SCHEDULED_REFUNDS + x-groupName: Fund management + x-sortIndex: 4 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ScheduledRefundsNotification' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/NotificationResponse' + description: OK - the request has succeeded. + /TRANSFER_FUNDS: + post: + summary: Triggered upon the transfer of funds between accounts. + description: This notification is sent when the funds from an account have been transferred to another account. + operationId: post-TRANSFER_FUNDS + x-groupName: Fund management + x-sortIndex: 2 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TransferFundsNotification' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/NotificationResponse' + description: OK - the request has succeeded. +components: + schemas: + AccountCloseNotification: + properties: + content: + description: The details of the Account update. + $ref: '#/components/schemas/CloseAccountResponse' + error: + description: Error information of failed request. No value provided here if no error occurred on processing. + $ref: '#/components/schemas/NotificationErrorContainer' + eventDate: + description: The date and time when an event has been completed. + format: date-time + type: string + eventType: + description: The event type of the notification. + type: string + executingUserKey: + description: The user or process that has triggered the notification. + type: string + live: + description: 'Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.' + type: boolean + pspReference: + description: The PSP reference of the request from which the notification originates. + type: string + required: + - executingUserKey + - pspReference + - eventType + - live + - eventDate + - content + AccountCreateNotification: + properties: + content: + description: The details of the account creation. + $ref: '#/components/schemas/CreateAccountResponse' + error: + description: Error information of failed request. No value provided here if no error occurred on processing. + $ref: '#/components/schemas/NotificationErrorContainer' + eventDate: + description: The date and time when an event has been completed. + format: date-time + type: string + eventType: + description: The event type of the notification. + type: string + executingUserKey: + description: The user or process that has triggered the notification. + type: string + live: + description: 'Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.' + type: boolean + pspReference: + description: The PSP reference of the request from which the notification originates. + type: string + required: + - executingUserKey + - pspReference + - eventType + - live + - eventDate + - content + AccountEvent: + properties: + event: + description: |- + The event. + >Permitted values: `InactivateAccount`, `RefundNotPaidOutTransfers`. + For more information, refer to [Verification checks](https://docs.adyen.com/marketpay/onboarding-and-verification/verification-checks). + enum: + - InactivateAccount + - RefundNotPaidOutTransfers + type: string + executionDate: + description: The date on which the event will take place. + format: date-time + type: string + reason: + description: The reason why this event has been created. + type: string + required: + - event + - executionDate + - reason + AccountHolderCreateNotification: + properties: + content: + description: The details of the account holder creation. + $ref: '#/components/schemas/CreateAccountHolderResponse' + error: + description: Error information of failed request. No value provided here if no error occurred on processing. + $ref: '#/components/schemas/NotificationErrorContainer' + eventDate: + description: The date and time when an event has been completed. + format: date-time + type: string + eventType: + description: The event type of the notification. + type: string + executingUserKey: + description: The user or process that has triggered the notification. + type: string + live: + description: 'Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.' + type: boolean + pspReference: + description: The PSP reference of the request from which the notification originates. + type: string + required: + - executingUserKey + - pspReference + - eventType + - live + - eventDate + - content + AccountHolderDetails: + properties: + address: + description: The address of the account holder. + $ref: '#/components/schemas/ViasAddress' + bankAccountDetails: + description: |- + Each of the bank accounts associated with the account holder. + > Each array entry should represent one bank account. + > For comprehensive detail regarding the required `BankAccountDetail` fields, please refer to the [KYC Verification documentation](https://docs.adyen.com/marketpay/onboarding-and-verification/verification-checks). + items: + $ref: '#/components/schemas/BankAccountDetail' + type: array + bankAggregatorDataReference: + description: The opaque reference value returned by the Adyen API during bank account login. + type: string + businessDetails: + description: |- + Details applicable to `Business` legal entities. + Populated only if the account holder's legal entity is of type `Business`. + > Required when being used in a `/createAccountHolder` request in which the legal entity is `Business`. + $ref: '#/components/schemas/BusinessDetails' + email: + description: The email address of the account holder. + type: string + fullPhoneNumber: + description: |- + The phone number of the account holder provided as a single string. It will be handled as a landline phone. + **Examples:** "0031 6 11 22 33 44", "+316/1122-3344", "(0031) 611223344" + type: string + individualDetails: + description: |- + Details applicable to `Individual` legal entities. + Populated only if the account holder's legal entity is of type `Individual`. + > Required when being used in a `/createAccountHolder` request in which the legal entity is `Individual`. + $ref: '#/components/schemas/IndividualDetails' + merchantCategoryCode: + description: |- + The Merchant Category Code of the account holder. + > If not specified in the request, this will be derived from the platform account (which is configured by Adyen). + type: string + metadata: + additionalProperties: + type: string + description: |- + A set of key and value pairs for general use by the account holder or merchant. + The keys do not have specific names and may be used for storing miscellaneous data as desired. + > The values being stored have a maximum length of eighty (80) characters and will be truncated if necessary. + > Note that during an update of metadata, the omission of existing key-value pairs will result in the deletion of those key-value pairs. + type: object + payoutMethods: + description: |- + Each of the card tokens associated with the account holder. + > Each array entry should represent one card token. + > For comprehensive detail regarding the required `CardToken` fields, please refer to the [KYC Verification documentation](https://docs.adyen.com/marketpay/onboarding-and-verification/verification-checks). + items: + $ref: '#/components/schemas/PayoutMethod' + type: array + webAddress: + description: The URL of the website of the account holder. + type: string + required: + - fullPhoneNumber + - email + - webAddress + AccountHolderPayoutNotification: + properties: + content: + description: Details of the payout to the Account Holder. + $ref: '#/components/schemas/AccountHolderPayoutNotificationContent' + error: + description: Error information of failed request. No value provided here if no error occurred on processing. + $ref: '#/components/schemas/NotificationErrorContainer' + eventDate: + description: The date and time when an event has been completed. + format: date-time + type: string + eventType: + description: The event type of the notification. + type: string + executingUserKey: + description: The user or process that has triggered the notification. + type: string + live: + description: 'Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.' + type: boolean + pspReference: + description: The PSP reference of the request from which the notification originates. + type: string + required: + - executingUserKey + - pspReference + - eventType + - live + - eventDate + - content + AccountHolderPayoutNotificationContent: + properties: + accountCode: + description: The code of the account from which the payout was made. + type: string + accountHolderCode: + description: The code of the Account Holder to which the payout was made. + type: string + amounts: + description: The payout amounts (per currency). + items: + $ref: '#/components/schemas/Amount' + type: array + bankAccountDetail: + description: Details of the Bank Account to which the payout was made. + $ref: '#/components/schemas/BankAccountDetail' + description: + description: A description of the payout. + type: string + estimatedArrivalDate: + description: The estimated date of arrival. + $ref: '#/components/schemas/LocalDate' + invalidFields: + description: Invalid fields list. + items: + $ref: '#/components/schemas/ErrorFieldType' + type: array + merchantReference: + description: The merchant reference. + type: string + originalPspReference: + description: The PSP reference of the original payout. + type: string + payoutAccountCountry: + description: Payout account country. + type: string + payoutAccountNumber: + description: Payout bank account number. + type: string + payoutBankName: + description: Payout bank name. + type: string + payoutBranchCode: + description: Payout branch code. + type: string + payoutReference: + description: Payout transaction id. + format: int64 + type: integer + payoutSpeed: + description: 'Speed with which payouts for this account are processed. Permitted values: `STANDARD`, `SAME_DAY`.' + enum: + - SAME_DAY + - STANDARD + type: string + status: + description: The payout status. + $ref: '#/components/schemas/OperationStatus' + required: + - accountHolderCode + - accountCode + AccountHolderStatus: + properties: + events: + description: A list of events scheduled for the account holder. + items: + $ref: '#/components/schemas/AccountEvent' + type: array + payoutState: + description: The payout state of the account holder. + $ref: '#/components/schemas/AccountPayoutState' + processingState: + description: The processing state of the account holder. + $ref: '#/components/schemas/AccountProcessingState' + status: + description: |- + The status of the account holder. + >Permitted values: `Active`, `Inactive`, `Suspended`, `Closed`. + enum: + - Active + - Closed + - Inactive + - Suspended + type: string + statusReason: + description: The reason why the status was assigned to the account holder. + type: string + required: + - status + AccountHolderStatusChangeNotification: + properties: + content: + description: The details of the Account Holder status change. + $ref: '#/components/schemas/AccountHolderStatusChangeNotificationContent' + error: + description: Error information of failed request. No value provided here if no error occurred on processing. + $ref: '#/components/schemas/NotificationErrorContainer' + eventDate: + description: The date and time when an event has been completed. + format: date-time + type: string + eventType: + description: The event type of the notification. + type: string + executingUserKey: + description: The user or process that has triggered the notification. + type: string + live: + description: 'Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.' + type: boolean + pspReference: + description: The PSP reference of the request from which the notification originates. + type: string + required: + - executingUserKey + - pspReference + - eventType + - live + - eventDate + AccountHolderStatusChangeNotificationContent: + properties: + accountHolderCode: + description: The code of the account holder. + type: string + invalidFields: + description: 'in case the account holder has not been updated, contains account holder fields, that did not pass the validation.' + items: + $ref: '#/components/schemas/ErrorFieldType' + type: array + newStatus: + description: The new status of the account holder. + $ref: '#/components/schemas/AccountHolderStatus' + oldStatus: + description: The former status of the account holder. + $ref: '#/components/schemas/AccountHolderStatus' + reason: + description: The reason for the status change. + type: string + required: + - accountHolderCode + - oldStatus + - newStatus + AccountHolderStoreStatusChangeNotification: + properties: + content: + description: The details of the Account Holder Store status change. + $ref: '#/components/schemas/AccountHolderStoreStatusChangeNotificationContent' + error: + description: Error information of failed request. No value provided here if no error occurred on processing. + $ref: '#/components/schemas/NotificationErrorContainer' + eventDate: + description: The date and time when an event has been completed. + format: date-time + type: string + eventType: + description: The event type of the notification. + type: string + executingUserKey: + description: The user or process that has triggered the notification. + type: string + live: + description: 'Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.' + type: boolean + pspReference: + description: The PSP reference of the request from which the notification originates. + type: string + required: + - executingUserKey + - pspReference + - eventType + - live + - eventDate + AccountHolderStoreStatusChangeNotificationContent: + properties: + accountHolderCode: + description: The code of the account holder. + type: string + invalidFields: + description: 'In case the store status has not been updated, contains fields that did not pass the validation.' + items: + $ref: '#/components/schemas/ErrorFieldType' + type: array + newStatus: + description: The new status of the account holder. + enum: + - Active + - Closed + - Inactive + - InactiveWithModifications + - Pending + type: string + oldStatus: + description: The former status of the account holder. + enum: + - Active + - Closed + - Inactive + - InactiveWithModifications + - Pending + type: string + reason: + description: The reason for the status change. + type: string + store: + description: Alphanumeric identifier of the store. + type: string + storeReference: + description: Store store reference. + type: string + required: + - accountHolderCode + - store + - storeReference + - oldStatus + - newStatus + AccountHolderUpcomingDeadlineNotification: + properties: + content: + description: The details of the upcoming event. + $ref: '#/components/schemas/AccountHolderUpcomingDeadlineNotificationContent' + error: + description: Error information of failed request. No value provided here if no error occurred on processing. + $ref: '#/components/schemas/NotificationErrorContainer' + eventDate: + description: The date and time when an event has been completed. + format: date-time + type: string + eventType: + description: The event type of the notification. + type: string + executingUserKey: + description: The user or process that has triggered the notification. + type: string + live: + description: 'Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.' + type: boolean + pspReference: + description: The PSP reference of the request from which the notification originates. + type: string + required: + - executingUserKey + - pspReference + - eventType + - live + - eventDate + AccountHolderUpcomingDeadlineNotificationContent: + properties: + accountHolderCode: + description: The code of the account holder whom the event refers to. + type: string + event: + description: The event name that will be trigger if no action is taken. + enum: + - AccessPii + - CloseAccount + - CloseStores + - DeleteBankAccounts + - DeletePayoutInstrumentTokens + - DeletePayoutMethods + - DeleteShareholders + - InactivateAccount + - RecalculateAccountStatusAndProcessingTier + - RefundNotPaidOutTransfers + - ResolveEvents + - SaveAccountHolder + - SaveKYCCheckStatus + - SuspendAccount + - UnSuspendAccount + - UpdateAccountHolderState + - Verification + type: string + executionDate: + description: The execution date scheduled for the event. + $ref: '#/components/schemas/LocalDate' + reason: + description: The reason that leads to scheduling of the event. + type: string + AccountHolderUpdateNotification: + properties: + content: + description: The details of the Account Holder update. + $ref: '#/components/schemas/UpdateAccountHolderResponse' + error: + description: Error information of failed request. No value provided here if no error occurred on processing. + $ref: '#/components/schemas/NotificationErrorContainer' + eventDate: + description: The date and time when an event has been completed. + format: date-time + type: string + eventType: + description: The event type of the notification. + type: string + executingUserKey: + description: The user or process that has triggered the notification. + type: string + live: + description: 'Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.' + type: boolean + pspReference: + description: The PSP reference of the request from which the notification originates. + type: string + required: + - executingUserKey + - pspReference + - eventType + - live + - eventDate + - content + AccountHolderVerificationNotification: + properties: + content: + description: The details of the Account Holder verification. + $ref: '#/components/schemas/AccountHolderVerificationNotificationContent' + error: + description: Error information of failed request. No value provided here if no error occurred on processing. + $ref: '#/components/schemas/NotificationErrorContainer' + eventDate: + description: The date and time when an event has been completed. + format: date-time + type: string + eventType: + description: The event type of the notification. + type: string + executingUserKey: + description: The user or process that has triggered the notification. + type: string + live: + description: 'Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.' + type: boolean + pspReference: + description: The PSP reference of the request from which the notification originates. + type: string + required: + - executingUserKey + - pspReference + - eventType + - live + - eventDate + - content + AccountHolderVerificationNotificationContent: + properties: + accountHolderCode: + description: The code of the account holder. + type: string + kycCheckStatusData: + description: Information on the verification status + $ref: '#/components/schemas/KYCCheckStatusData' + payoutMethodCode: + description: The unique code of the payout method that has been verified. + type: string + shareholderCode: + description: The code of the shareholder that has been verified. + type: string + required: + - accountHolderCode + AccountPayoutState: + properties: + allowPayout: + description: 'Indicates whether payouts are allowed. This field is the overarching payout status, and is the aggregate of multiple conditions (e.g., KYC status, disabled flag, etc). If this field is false, no payouts will be permitted for any of the account holder''s accounts. If this field is true, payouts will be permitted for any of the account holder''s accounts.' + type: boolean + disableReason: + description: 'The reason why payouts (to all of the account holder''s accounts) have been disabled (by the platform). If the `disabled` field is true, this field can be used to explain why.' + type: string + disabled: + description: 'Indicates whether payouts have been disabled (by the platform) for all of the account holder''s accounts. A platform may enable and disable this field at their discretion. If this field is true, `allowPayout` will be false and no payouts will be permitted for any of the account holder''s accounts. If this field is false, `allowPayout` may or may not be enabled, depending on other factors.' + type: boolean + notAllowedReason: + description: 'The reason why payouts (to all of the account holder''s accounts) have been disabled (by Adyen). If payouts have been disabled by Adyen, this field will explain why. If this field is blank, payouts have not been disabled by Adyen.' + type: string + payoutLimit: + description: The maximum amount that payouts are limited to. Only applies if payouts are allowed but limited. + $ref: '#/components/schemas/Amount' + tierNumber: + description: The payout tier that the account holder occupies. + format: int32 + type: integer + AccountProcessingState: + properties: + disableReason: + description: The reason why processing has been disabled. + type: string + disabled: + description: Indicates whether the processing of payments is allowed. + type: boolean + processedFrom: + description: 'The lower bound of the processing tier (i.e., an account holder must have processed at least this amount of money in order to be placed into this tier).' + $ref: '#/components/schemas/Amount' + processedTo: + description: 'The upper bound of the processing tier (i.e., an account holder must have processed less than this amount of money in order to be placed into this tier).' + $ref: '#/components/schemas/Amount' + tierNumber: + description: The processing tier that the account holder occupies. + format: int32 + type: integer + AccountUpdateNotification: + properties: + content: + description: The details of the Account update. + $ref: '#/components/schemas/UpdateAccountResponse' + error: + description: Error information of failed request. No value provided here if no error occurred on processing. + $ref: '#/components/schemas/NotificationErrorContainer' + eventDate: + description: The date and time when an event has been completed. + format: date-time + type: string + eventType: + description: The event type of the notification. + type: string + executingUserKey: + description: The user or process that has triggered the notification. + type: string + live: + description: 'Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.' + type: boolean + pspReference: + description: The PSP reference of the request from which the notification originates. + type: string + required: + - executingUserKey + - pspReference + - eventType + - live + - eventDate + - content + Amount: + properties: + currency: + description: 'The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes).' + maxLength: 3 + minLength: 3 + type: string + value: + description: |- + The payable amount that can be charged for the transaction. + + The transaction amount needs to be represented in minor units according to the [following table](https://docs.adyen.com/development-resources/currency-codes). + format: int64 + type: integer + required: + - value + - currency + BankAccountDetail: + properties: + accountNumber: + description: |- + The bank account number (without separators). + >Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements. + type: string + accountType: + description: |- + The type of bank account. + Only applicable to bank accounts held in the USA. + The permitted values are: `checking`, `savings`. + + >Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements. + type: string + bankAccountName: + description: The name of the bank account. + type: string + bankAccountReference: + description: Merchant reference to the bank account. + type: string + bankAccountUUID: + description: | + The unique identifier (UUID) of the Bank Account. + >If, during an account holder create or update request, this field is left blank (but other fields provided), a new Bank Account will be created with a procedurally-generated UUID. + + >If, during an account holder create request, a UUID is provided, the creation of the Bank Account will fail while the creation of the account holder will continue. + + >If, during an account holder update request, a UUID that is not correlated with an existing Bank Account is provided, the update of the account holder will fail. + + >If, during an account holder update request, a UUID that is correlated with an existing Bank Account is provided, the existing Bank Account will be updated. + type: string + bankBicSwift: + description: |- + The bank identifier code. + >Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements. + type: string + bankCity: + description: |- + The city in which the bank branch is located. + + >Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements. + type: string + bankCode: + description: |- + The bank code of the banking institution with which the bank account is registered. + + >Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements. + type: string + bankName: + description: |- + The name of the banking institution with which the bank account is held. + + >Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements. + type: string + branchCode: + description: |- + The branch code of the branch under which the bank account is registered. The value to be specified in this parameter depends on the country of the bank account: + * United States - Routing number + * United Kingdom - Sort code + * Germany - Bankleitzahl + >Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements. + type: string + checkCode: + description: |- + The check code of the bank account. + + >Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements. + type: string + countryCode: + description: |- + The two-letter country code in which the bank account is registered. + >The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. 'NL'). + + >Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements. + type: string + currencyCode: + description: |- + The currency in which the bank account deals. + >The permitted currency codes are defined in ISO-4217 (e.g. 'EUR'). + + >Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements. + type: string + iban: + description: |- + The international bank account number. + >The IBAN standard is defined in ISO-13616. + + >Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements. + type: string + ownerCity: + description: |- + The city of residence of the bank account owner. + >Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements. + type: string + ownerCountryCode: + description: |- + The country code of the country of residence of the bank account owner. + >The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. 'NL'). + + >Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements. + type: string + ownerDateOfBirth: + description: | + The date of birth of the bank account owner. + type: string + ownerHouseNumberOrName: + description: |- + The house name or number of the residence of the bank account owner. + >Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements. + type: string + ownerName: + description: |- + The name of the bank account owner. + >Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements. + type: string + ownerNationality: + description: |- + The country code of the country of nationality of the bank account owner. + >The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. 'NL'). + + >Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements. + type: string + ownerPostalCode: + description: |- + The postal code of the residence of the bank account owner. + >Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements. + type: string + ownerState: + description: |- + The state of residence of the bank account owner. + >Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements. + type: string + ownerStreet: + description: |- + The street name of the residence of the bank account owner. + >Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements. + type: string + primaryAccount: + description: 'If set to true, the bank account is a primary account.' + type: boolean + taxId: + description: |- + The tax ID number. + + >Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements. + type: string + urlForVerification: + description: |- + The URL to be used for bank account verification. + This may be generated on bank account creation. + + >Refer to the [Onboarding and verification](https://docs.adyen.com/marketpay/onboarding-and-verification) section for details on field requirements. + type: string + BeneficiarySetupNotification: + properties: + content: + description: Details of the beneficiary setup. + $ref: '#/components/schemas/BeneficiarySetupNotificationContent' + error: + description: Error information of failed request. No value provided here if no error occurred on processing. + $ref: '#/components/schemas/NotificationErrorContainer' + eventDate: + description: The date and time when an event has been completed. + format: date-time + type: string + eventType: + description: The event type of the notification. + type: string + executingUserKey: + description: The user or process that has triggered the notification. + type: string + live: + description: 'Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.' + type: boolean + pspReference: + description: The PSP reference of the request from which the notification originates. + type: string + required: + - executingUserKey + - pspReference + - eventType + - live + - eventDate + - content + BeneficiarySetupNotificationContent: + properties: + destinationAccountCode: + description: The code of the beneficiary account. + type: string + destinationAccountHolderCode: + description: The code of the beneficiary Account Holder. + type: string + invalidFields: + description: 'A listing of the invalid fields which have caused the Setup Beneficiary request to fail. If this is empty, the Setup Beneficiary request has succeeded.' + items: + $ref: '#/components/schemas/ErrorFieldType' + type: array + merchantReference: + description: The reference provided by the merchant. + type: string + sourceAccountCode: + description: The code of the benefactor account. + type: string + sourceAccountHolderCode: + description: The code of the benefactor Account Holder. + type: string + transferDate: + description: The date on which the beneficiary was set up and funds transferred from benefactor to beneficiary. + format: date-time + type: string + required: + - sourceAccountHolderCode + - sourceAccountCode + - destinationAccountHolderCode + - destinationAccountCode + - transferDate + BusinessDetails: + properties: + doingBusinessAs: + description: The registered name of the company (if it differs from the legal name of the company). + type: string + legalBusinessName: + description: The legal name of the company. + type: string + registrationNumber: + description: The registration number of the company. + type: string + shareholders: + description: |- + Each of the shareholders associated with the company. + Each array entry should represent one shareholder. + items: + $ref: '#/components/schemas/ShareholderContact' + type: array + stockExchange: + description: Market Identifier Code (MIC). + type: string + stockNumber: + description: International Securities Identification Number (ISIN). + type: string + stockTicker: + description: Stock Ticker symbol. + type: string + taxId: + description: The tax ID of the company. + type: string + CloseAccountResponse: + properties: + accountCode: + description: The account code of the account that is closed. + type: string + invalidFields: + description: Contains field validation errors that would prevent requests from being processed. + items: + $ref: '#/components/schemas/ErrorFieldType' + type: array + pspReference: + description: The reference of a request. Can be used to uniquely identify the request. + type: string + resultCode: + description: The result code. + type: string + status: + description: |- + The new status of the account. + >Permitted values: `Active`, `Inactive`, `Suspended`, `Closed`. + enum: + - Active + - Closed + - Inactive + - Suspended + type: string + required: + - pspReference + - status + CompensateNegativeBalanceNotification: + properties: + content: + description: Details of the negative balance compensation. + $ref: '#/components/schemas/CompensateNegativeBalanceNotificationContent' + error: + description: Error information of failed request. No value provided here if no error occurred on processing. + $ref: '#/components/schemas/NotificationErrorContainer' + eventDate: + description: The date and time when an event has been completed. + format: date-time + type: string + eventType: + description: The event type of the notification. + type: string + executingUserKey: + description: The user or process that has triggered the notification. + type: string + live: + description: 'Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.' + type: boolean + pspReference: + description: The PSP reference of the request from which the notification originates. + type: string + required: + - executingUserKey + - pspReference + - eventType + - live + - eventDate + CompensateNegativeBalanceNotificationContent: + properties: + records: + description: A list of the negative balances compensated. + items: + $ref: '#/components/schemas/CompensateNegativeBalanceNotificationRecord' + type: array + required: + - records + CompensateNegativeBalanceNotificationRecord: + properties: + accountCode: + description: The code of the account whose negative balance has been compensated. + type: string + amount: + description: The amount compensated. + $ref: '#/components/schemas/Amount' + transferDate: + description: The date on which the compensation took place. + format: date-time + type: string + required: + - accountCode + - transferDate + - amount + CreateAccountHolderResponse: + properties: + accountCode: + description: The code of a new account created for the account holder. + type: string + accountHolderCode: + description: The code of the new account holder. + type: string + accountHolderDetails: + description: Details of the new account holder. + $ref: '#/components/schemas/AccountHolderDetails' + accountHolderStatus: + description: The status of the new account holder. + $ref: '#/components/schemas/AccountHolderStatus' + description: + description: The description of the new account holder. + type: string + invalidFields: + description: A list of fields that caused the `/createAccountHolder` request to fail. + items: + $ref: '#/components/schemas/ErrorFieldType' + type: array + legalEntity: + description: The type of legal entity of the new account holder. + enum: + - Business + - Individual + - NonProfit + - Partnership + - PublicCompany + type: string + primaryCurrency: + description: 'The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes), with which the prospective account holder primarily deals.' + type: string + pspReference: + description: The reference of a request. Can be used to uniquely identify the request. + type: string + resultCode: + description: The result code. + type: string + verification: + description: The details of KYC Verification of the account holder. + $ref: '#/components/schemas/KYCVerificationResult' + verificationProfile: + description: The identifier of the profile that applies to this entity. + type: string + required: + - pspReference + - accountHolderCode + - accountHolderStatus + - accountHolderDetails + - verification + - legalEntity + CreateAccountResponse: + properties: + accountCode: + description: The code of the new account. + type: string + accountHolderCode: + description: The code of the account holder. + type: string + description: + description: The description of the account. + type: string + invalidFields: + description: A list of fields that caused the `/createAccount` request to fail. + items: + $ref: '#/components/schemas/ErrorFieldType' + type: array + metadata: + additionalProperties: + type: string + type: object + payoutSchedule: + description: The payout schedule of the account. + $ref: '#/components/schemas/PayoutScheduleResponse' + payoutSpeed: + description: 'Speed with which payouts for this account are processed. Permitted values: `STANDARD`, `SAME_DAY`.' + enum: + - SAME_DAY + - STANDARD + type: string + pspReference: + description: The reference of a request. Can be used to uniquely identify the request. + type: string + resultCode: + description: The result code. + type: string + status: + description: |- + The status of the account. + >Permitted values: `Active`. + enum: + - Active + - Closed + - Inactive + - Suspended + type: string + required: + - pspReference + - accountHolderCode + - accountCode + - status + DirectDebitInitiatedNotification: + properties: + content: + description: Details of the direct debit. + $ref: '#/components/schemas/DirectDebitInitiatedNotificationContent' + error: + description: Error information of failed request. No value provided here if no error occurred on processing. + $ref: '#/components/schemas/NotificationErrorContainer' + eventDate: + description: The date and time when an event has been completed. + format: date-time + type: string + eventType: + description: The event type of the notification. + type: string + executingUserKey: + description: The user or process that has triggered the notification. + type: string + live: + description: 'Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.' + type: boolean + pspReference: + description: The PSP reference of the request from which the notification originates. + type: string + required: + - executingUserKey + - pspReference + - eventType + - live + - eventDate + DirectDebitInitiatedNotificationContent: + properties: + accountCode: + description: The code of the account. + type: string + amount: + description: The amount to be debited from the funding account. + $ref: '#/components/schemas/Amount' + debitInitiationDate: + description: The date of the debit initiation. + $ref: '#/components/schemas/LocalDate' + merchantAccountCode: + description: The code of the merchant account. + type: string + status: + description: Direct debit status. + $ref: '#/components/schemas/OperationStatus' + required: + - amount + - accountCode + - merchantAccountCode + ErrorFieldType: + properties: + errorCode: + description: The validation error code. + format: int32 + type: integer + errorDescription: + description: A description of the validation error. + type: string + fieldType: + description: The type of error field. + $ref: '#/components/schemas/FieldType' + FieldType: + properties: + field: + description: The full name of the property. + type: string + fieldName: + description: The type of the field. + enum: + - accountCode + - accountHolderCode + - accountHolderDetails + - accountNumber + - accountStateType + - accountStatus + - accountType + - address + - bankAccount + - bankAccountCode + - bankAccountName + - bankAccountUUID + - bankBicSwift + - bankCity + - bankCode + - bankName + - bankStatement + - branchCode + - businessContact + - cardToken + - checkCode + - city + - companyRegistration + - country + - countryCode + - currency + - currencyCode + - dateOfBirth + - description + - destinationAccountCode + - document + - documentExpirationDate + - documentIssuerCountry + - documentIssuerState + - documentName + - documentNumber + - documentType + - doingBusinessAs + - drivingLicence + - drivingLicenceBack + - drivingLicense + - email + - firstName + - fullPhoneNumber + - gender + - hopWebserviceUser + - houseNumberOrName + - iban + - idCard + - idCardBack + - idCardFront + - idNumber + - identityDocument + - individualDetails + - lastName + - legalBusinessName + - legalEntity + - legalEntityType + - merchantAccount + - merchantCategoryCode + - merchantReference + - microDeposit + - name + - nationality + - originalReference + - ownerCity + - ownerCountryCode + - ownerHouseNumberOrName + - ownerName + - ownerPostalCode + - ownerState + - ownerStreet + - passport + - passportNumber + - payoutMethodCode + - personalData + - phoneCountryCode + - phoneNumber + - postalCode + - primaryCurrency + - reason + - registrationNumber + - returnUrl + - schedule + - shareholder + - shareholderCode + - socialSecurityNumber + - sourceAccountCode + - stateOrProvince + - status + - stockExchange + - stockNumber + - stockTicker + - store + - storeDetail + - storeName + - storeReference + - street + - taxId + - tier + - tierNumber + - transferCode + - unknown + - value + - virtualAccount + - visaNumber + - webAddress + type: string + shareholderCode: + description: 'The code of the shareholder that the field belongs to. If empty, the field belongs to an account holder.' + type: string + IndividualDetails: + properties: + name: + description: |- + The name of the individual. + >Make sure your account holder registers using the name shown on their Photo ID. + $ref: '#/components/schemas/ViasName' + personalData: + description: Personal information of the individual. + $ref: '#/components/schemas/ViasPersonalData' + KYCCheckResult: + properties: + checks: + description: A list of the checks and their statuses. + items: + $ref: '#/components/schemas/KYCCheckStatusData' + type: array + KYCCheckStatusData: + properties: + requiredFields: + description: A list of the fields required for execution of the check. + items: + type: string + type: array + status: + description: |- + The status of the check. + >Permitted Values: `DATA_PROVIDED`, `PASSED`, `PENDING`, `AWAITING_DATA`, `RETRY_LIMIT_REACHED`, `INVALID_DATA`, `FAILED`. + enum: + - AWAITING_DATA + - DATA_PROVIDED + - FAILED + - INVALID_DATA + - PASSED + - PENDING + - PENDING_REVIEW + - RETRY_LIMIT_REACHED + - UNCHECKED + type: string + summary: + description: A summary of the execution of the check. + $ref: '#/components/schemas/KYCCheckSummary' + type: + description: |- + The type of check. + >Permitted Values: `COMPANY_VERIFICATION`, `IDENTITY_VERIFICATION`, `PASSPORT_VERIFICATION`, `BANK_ACCOUNT_VERIFICATION`, `NONPROFIT_VERIFICATION`, `CARD_VERIFICATION`. + enum: + - BANK_ACCOUNT_VERIFICATION + - CARD_VERIFICATION + - COMPANY_VERIFICATION + - IDENTITY_VERIFICATION + - NONPROFIT_VERIFICATION + - PASSPORT_VERIFICATION + - PAYOUT_METHOD_VERIFICATION + type: string + required: + - type + - status + KYCCheckSummary: + properties: + kycCheckCode: + description: The code of the check. + format: int32 + type: integer + kycCheckDescription: + description: A description of the check. + type: string + KYCPayoutMethodCheckResult: + properties: + checks: + description: A list of the checks and their statuses. + items: + $ref: '#/components/schemas/KYCCheckStatusData' + type: array + payoutMethodCode: + description: The unique ID of the payoput method to which the check applies. + type: string + KYCShareholderCheckResult: + properties: + checks: + description: A list of the checks and their statuses. + items: + $ref: '#/components/schemas/KYCCheckStatusData' + type: array + shareholderCode: + description: The code of the shareholder to which the check applies. + type: string + KYCVerificationResult: + properties: + accountHolder: + description: The result(s) of the checks on the account holder. + $ref: '#/components/schemas/KYCCheckResult' + payoutMethods: + description: The result(s) of the checks on the payout method(s). + items: + $ref: '#/components/schemas/KYCPayoutMethodCheckResult' + type: array + shareholders: + description: The result(s) of the checks on the shareholder(s). + items: + $ref: '#/components/schemas/KYCShareholderCheckResult' + type: array + LocalDate: + properties: + month: + format: int32 + type: integer + year: + format: int32 + type: integer + Message: + properties: + code: + description: The message code. + type: string + text: + description: The message text. + type: string + NotificationErrorContainer: + properties: + errorCode: + description: The Adyen code that is mapped to the error message. + type: string + message: + description: A short explanation of the issue. + type: string + NotificationResponse: + properties: + notificationResponse: + description: 'Set this parameter to **[accepted]** to acknowledge that you received a notification from Adyen.' + type: string + OperationStatus: + properties: + message: + description: The message regarding the operation status. + $ref: '#/components/schemas/Message' + statusCode: + description: The status code. + type: string + PaymentFailureNotification: + properties: + content: + description: The details of the payment failure. + $ref: '#/components/schemas/PaymentFailureNotificationContent' + error: + description: Error information of failed request. No value provided here if no error occurred on processing. + $ref: '#/components/schemas/NotificationErrorContainer' + eventDate: + description: The date and time when an event has been completed. + format: date-time + type: string + eventType: + description: The event type of the notification. + type: string + executingUserKey: + description: The user or process that has triggered the notification. + type: string + live: + description: 'Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.' + type: boolean + pspReference: + description: The PSP reference of the request from which the notification originates. + type: string + required: + - executingUserKey + - pspReference + - eventType + - live + - eventDate + - content + PaymentFailureNotificationContent: + properties: + errorFields: + description: Missing or invalid fields that caused the payment error. + items: + $ref: '#/components/schemas/ErrorFieldType' + type: array + errorMessage: + description: The error message. + $ref: '#/components/schemas/Message' + required: + - errorMessage + - errorFields + PayoutMethod: + properties: + merchantAccount: + type: string + payoutMethodCode: + type: string + payoutMethodType: + enum: + - CardToken + type: string + recurringDetailReference: + type: string + shopperReference: + type: string + required: + - merchantAccount + - shopperReference + - recurringDetailReference + PayoutScheduleResponse: + properties: + nextScheduledPayout: + description: The date of the next scheduled payout. + format: date-time + type: string + schedule: + description: |- + The payout schedule of the account. + >Permitted values: `DEFAULT`, `HOLD`, `DAILY`, `WEEKLY`, `MONTHLY`. + enum: + - BIWEEKLY_ON_1ST_AND_15TH_AT_MIDNIGHT + - BIWEEKLY_ON_1ST_AND_15TH_AT_NOON + - DAILY + - DAILY_6PM + - DAILY_AU + - DAILY_EU + - DAILY_US + - DEFAULT + - EVERY_6_HOURS_FROM_MIDNIGHT + - HOLD + - MONTHLY + - WEEKLY + - WEEKLY_ON_TUE_FRI_MIDNIGHT + - YEARLY + type: string + required: + - schedule + - nextScheduledPayout + PersonalDocumentData: + properties: + expirationDate: + description: |- + The expiration date of the document. + The date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31). + type: string + issuerCountry: + description: |- + The two-character country code of the issuer. + >The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. 'NL'). + maxLength: 2 + minLength: 2 + type: string + issuerState: + description: The state issued the document (if applicable) + type: string + number: + description: The number of the document. Delete the given type if the value empty. + type: string + type: + description: |- + The type of the document. More then one item pert type does not allowed. + Valid values: ID, PASSPORT, VISA, DRIVINGLICENSE + enum: + - DRIVINGLICENSE + - ID + - PASSPORT + - SOCIALSECURITY + - VISA + type: string + required: + - type + RefundFundsTransferNotification: + properties: + content: + description: Details of the fund transfer refund. + $ref: '#/components/schemas/RefundFundsTransferNotificationContent' + error: + description: Error information of failed request. No value provided here if no error occurred on processing. + $ref: '#/components/schemas/NotificationErrorContainer' + eventDate: + description: The date and time when an event has been completed. + format: date-time + type: string + eventType: + description: The event type of the notification. + type: string + executingUserKey: + description: The user or process that has triggered the notification. + type: string + live: + description: 'Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.' + type: boolean + pspReference: + description: The PSP reference of the request from which the notification originates. + type: string + required: + - executingUserKey + - pspReference + - eventType + - live + - eventDate + - content + RefundFundsTransferNotificationContent: + properties: + amount: + description: The amount to be refunded. + $ref: '#/components/schemas/Amount' + invalidFields: + description: Invalid fields list. + items: + $ref: '#/components/schemas/ErrorFieldType' + type: array + merchantReference: + description: A value that can be supplied at the discretion of the executing user in order to link multiple transactions to one another. + type: string + originalReference: + description: A PSP reference of the original fund transfer. + type: string + status: + description: The status of the fund transfer refund. + $ref: '#/components/schemas/OperationStatus' + required: + - originalReference + - amount + RefundResult: + properties: + originalTransaction: + description: The transaction that has been refunded. + $ref: '#/components/schemas/Transaction' + pspReference: + description: The reference of the refund. + type: string + response: + description: The response indicating if the refund has been received for processing. + type: string + required: + - pspReference + - originalTransaction + ReportAvailableNotification: + properties: + content: + description: Details of the report. + $ref: '#/components/schemas/ReportAvailableNotificationContent' + error: + description: Error information of failed request. No value provided here if no error occurred on processing. + $ref: '#/components/schemas/NotificationErrorContainer' + eventDate: + description: The date and time when an event has been completed. + format: date-time + type: string + eventType: + description: The event type of the notification. + type: string + executingUserKey: + description: The user or process that has triggered the notification. + type: string + live: + description: 'Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.' + type: boolean + pspReference: + description: The PSP reference of the request from which the notification originates. + type: string + required: + - executingUserKey + - pspReference + - eventType + - live + - eventDate + - content + ReportAvailableNotificationContent: + properties: + accountCode: + description: The code of the Account to which the report applies. + type: string + accountType: + description: The type of Account to which the report applies. + type: string + eventDate: + description: The date of the event to which the report applies. + format: date-time + type: string + remoteAccessUrl: + description: The URL at which the report can be accessed. + type: string + success: + description: Indicates whether the event resulted in a success. + type: boolean + ScheduledRefundsNotification: + properties: + content: + description: Details of the scheduling of the refunds. + $ref: '#/components/schemas/ScheduledRefundsNotificationContent' + error: + description: Error information of failed request. No value provided here if no error occurred on processing. + $ref: '#/components/schemas/NotificationErrorContainer' + eventDate: + description: The date and time when an event has been completed. + format: date-time + type: string + eventType: + description: The event type of the notification. + type: string + executingUserKey: + description: The user or process that has triggered the notification. + type: string + live: + description: 'Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.' + type: boolean + pspReference: + description: The PSP reference of the request from which the notification originates. + type: string + required: + - executingUserKey + - pspReference + - eventType + - live + - eventDate + - content + ScheduledRefundsNotificationContent: + properties: + accountCode: + description: The code of the account. + type: string + accountHolderCode: + description: The code of the Account Holder. + type: string + invalidFields: + description: Invalid fields list. + items: + $ref: '#/components/schemas/ErrorFieldType' + type: array + lastPayout: + description: The most recent payout (after which all transactions were scheduled to be refunded). + $ref: '#/components/schemas/Transaction' + refundResults: + description: A list of the refunds that have been scheduled and their results. + items: + $ref: '#/components/schemas/RefundResult' + type: array + required: + - accountHolderCode + - accountCode + - refundResults + - lastPayout + ShareholderContact: + properties: + address: + description: The address of the contact. + $ref: '#/components/schemas/ViasAddress' + email: + description: The e-mail address of the contact. + type: string + fullPhoneNumber: + description: |- + The phone number of the contact provided as a single string. It will be handled as a landline phone. + **Examples:** "0031 6 11 22 33 44", "+316/1122-3344", "(0031) 611223344" + type: string + name: + description: The name of the contact. + $ref: '#/components/schemas/ViasName' + personalData: + description: Personal data of the Shareholder. + $ref: '#/components/schemas/ViasPersonalData' + phoneNumber: + description: The phone number of the contact. + $ref: '#/components/schemas/ViasPhoneNumber' + shareholderCode: + description: | + The unique identifier (UUID) of the Shareholder. + >**If, during an Account Holder create or update request, this field is left blank (but other fields provided), a new Shareholder will be created with a procedurally-generated UUID.** + + >**If, during an Account Holder create request, a UUID is provided, the creation of the Shareholder will fail while the creation of the Account Holder will continue.** + + >**If, during an Account Holder update request, a UUID that is not correlated with an existing Shareholder is provided, the update of the Shareholder will fail.** + + >**If, during an Account Holder update request, a UUID that is correlated with an existing Shareholder is provided, the existing Shareholder will be updated.** + type: string + shareholderReference: + description: Merchant reference to the Shareholder. + type: string + webAddress: + description: The URL of the website of the contact. + type: string + Transaction: + properties: + amount: + description: The amount of the transaction. + $ref: '#/components/schemas/Amount' + bankAccountDetail: + description: The details of the bank account to where a payout was made. + $ref: '#/components/schemas/BankAccountDetail' + captureMerchantReference: + description: The merchant reference of a related capture. + type: string + capturePspReference: + description: The psp reference of a related capture. + type: string + creationDate: + description: The date on which the transaction was performed. + format: date-time + type: string + description: + description: A description of the transaction. + type: string + destinationAccountCode: + description: The code of the account to which funds were credited during an outgoing fund transfer. + type: string + disputePspReference: + description: The psp reference of the related dispute. + type: string + disputeReasonCode: + description: The reason code of a dispute. + type: string + merchantReference: + description: The merchant reference of a transaction. + type: string + paymentPspReference: + description: The psp reference of the related authorisation or transfer. + type: string + payoutPspReference: + description: The psp reference of the related payout. + type: string + pspReference: + description: The psp reference of a transaction. + type: string + sourceAccountCode: + description: The code of the account from which funds were debited during an incoming fund transfer. + type: string + transactionStatus: + description: |- + The status of the transaction. + >Permitted values: `PendingCredit`, `CreditFailed`, `CreditClosed`, `Credited`, `Converted`, `PendingDebit`, `DebitFailed`, `Debited`, `DebitReversedReceived`, `DebitedReversed`, `ChargebackReceived`, `Chargeback`, `ChargebackReversedReceived`, `ChargebackReversed`, `Payout`, `PayoutReversed`, `FundTransfer`, `PendingFundTransfer`, `ManualCorrected`. + enum: + - Chargeback + - ChargebackCorrection + - ChargebackCorrectionReceived + - ChargebackReceived + - ChargebackReversed + - ChargebackReversedCorrection + - ChargebackReversedCorrectionReceived + - ChargebackReversedReceived + - Converted + - CreditClosed + - CreditFailed + - CreditReversed + - CreditReversedReceived + - Credited + - DebitFailed + - DebitReversedReceived + - Debited + - DebitedReversed + - Fee + - FundTransfer + - FundTransferReversed + - ManualCorrected + - Payout + - PayoutReversed + - PendingCredit + - PendingDebit + - PendingFundTransfer + - SecondChargeback + - SecondChargebackReceived + type: string + transferCode: + description: The transfer code of the transaction. + type: string + TransferFundsNotification: + properties: + content: + description: Details of the fund transfer. + $ref: '#/components/schemas/TransferFundsNotificationContent' + error: + description: Error information of failed request. No value provided here if no error occurred on processing. + $ref: '#/components/schemas/NotificationErrorContainer' + eventDate: + description: The date and time when an event has been completed. + format: date-time + type: string + eventType: + description: The event type of the notification. + type: string + executingUserKey: + description: The user or process that has triggered the notification. + type: string + live: + description: 'Indicates whether the notification originated from the live environment or the test environment. If true, the notification originated from the live environment. If false, the notification originated from the test environment.' + type: boolean + pspReference: + description: The PSP reference of the request from which the notification originates. + type: string + required: + - executingUserKey + - pspReference + - eventType + - live + - eventDate + - content + TransferFundsNotificationContent: + properties: + amount: + description: The amount transferred. + $ref: '#/components/schemas/Amount' + destinationAccountCode: + description: The code of the Account to which funds were credited. + type: string + invalidFields: + description: Invalid fields list. + items: + $ref: '#/components/schemas/ErrorFieldType' + type: array + merchantReference: + description: The reference provided by the merchant. + type: string + sourceAccountCode: + description: The code of the Account from which funds were debited. + type: string + status: + description: The status of the fund transfer. + $ref: '#/components/schemas/OperationStatus' + transferCode: + description: The transfer code. + type: string + required: + - sourceAccountCode + - destinationAccountCode + - amount + - transferCode + UpdateAccountHolderResponse: + properties: + accountHolderCode: + description: The code of the account holder. + type: string + accountHolderDetails: + description: Details of the account holder. + $ref: '#/components/schemas/AccountHolderDetails' + accountHolderStatus: + description: The new status of the account holder. + $ref: '#/components/schemas/AccountHolderStatus' + description: + description: The description of the account holder. + type: string + invalidFields: + description: 'in case the account holder has not been updated, contains account holder fields, that did not pass the validation.' + items: + $ref: '#/components/schemas/ErrorFieldType' + type: array + legalEntity: + description: The legal entity of the account holder. + enum: + - Business + - Individual + - NonProfit + - Partnership + - PublicCompany + type: string + primaryCurrency: + description: 'The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes), with which the prospective account holder primarily deals.' + type: string + pspReference: + description: The reference of a request. Can be used to uniquely identify the request. + type: string + resultCode: + description: The result code. + type: string + verification: + description: The details of KYC Verification of the account holder. + $ref: '#/components/schemas/KYCVerificationResult' + verificationProfile: + description: The identifier of the profile that applies to this entity. + type: string + required: + - pspReference + - accountHolderStatus + - verification + - legalEntity + UpdateAccountResponse: + properties: + accountCode: + description: The code of the account. + type: string + description: + description: The description of the account. + type: string + invalidFields: + description: A list of fields that caused the `/updateAccount` request to fail. + items: + $ref: '#/components/schemas/ErrorFieldType' + type: array + metadata: + additionalProperties: + type: string + type: object + payoutSchedule: + description: The payout schedule of the account. + $ref: '#/components/schemas/PayoutScheduleResponse' + payoutSpeed: + description: 'Speed with which payouts for this account are processed. Permitted values: `STANDARD`, `SAME_DAY`.' + enum: + - SAME_DAY + - STANDARD + type: string + pspReference: + description: The reference of a request. Can be used to uniquely identify the request. + type: string + resultCode: + description: The result code. + type: string + required: + - pspReference + - accountCode + ViasAddress: + properties: + city: + description: |- + The name of the city. + >Required if either `houseNumberOrName`, `street`, `postalCode`, or `stateOrProvince` are provided. + type: string + country: + description: |- + The two-character country code of the address. The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. 'NL'). + > 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. + type: string + postalCode: + description: |- + The postal code. + >A maximum of five (5) digits for an address in the USA, or a maximum of ten (10) characters for an address in all other countries. + >Required if either `houseNumberOrName`, `street`, `city`, or `stateOrProvince` are provided. + type: string + stateOrProvince: + description: |- + The abbreviation of the state or province. + >Two (2) characters for an address in the USA or Canada, or a maximum of three (3) characters for an address in all other countries. + >Required for an address in the USA or Canada if either `houseNumberOrName`, `street`, `city`, or `postalCode` are provided. + type: string + street: + description: |- + The name of the street. + >The house number should not be included in this field; it should be separately provided via `houseNumberOrName`. + >Required if either `houseNumberOrName`, `city`, `postalCode`, or `stateOrProvince` are provided. + type: string + required: + - country + ViasName: + properties: + firstName: + description: The first name. + type: string + gender: + description: |- + The gender. + >The following values are permitted: `MALE`, `FEMALE`, `UNKNOWN`. + enum: + - MALE + - FEMALE + - UNKNOWN + maxLength: 1 + minLength: 1 + type: string + infix: + description: |- + The name's infix, if applicable. + >A maximum length of twenty (20) characters is imposed. + type: string + lastName: + description: The last name. + type: string + required: + - firstName + - lastName + - gender + ViasPersonalData: + properties: + dateOfBirth: + description: |- + The date of birth of the person. + The date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31). + type: string + documentData: + description: Key value pairs of document type and identify numbers + items: + $ref: '#/components/schemas/PersonalDocumentData' + type: array + nationality: + description: |- + The nationality of the person represented by a two-character country code. + >The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. 'NL'). + maxLength: 2 + minLength: 2 + type: string + ViasPhoneNumber: + properties: + phoneCountryCode: + description: |- + The two-character country code of the phone number. + >The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. 'NL'). + type: string + phoneNumber: + description: |- + The phone number. + >The inclusion of the phone number country code is not necessary. + type: string + phoneType: + description: |- + The type of the phone number. + >The following values are permitted: `Landline`, `Mobile`, `SIP`, `Fax`. + enum: + - Fax + - Landline + - Mobile + - SIP + type: string + required: + - phoneCountryCode + - phoneNumber + securitySchemes: + ApiKeyAuth: + in: header + name: X-API-Key + type: apiKey + BasicAuth: + scheme: basic + type: http diff --git a/yaml/NotificationConfigurationService-v1.yaml b/yaml/NotificationConfigurationService-v1.yaml index 7a9f747..5113dee 100644 --- a/yaml/NotificationConfigurationService-v1.yaml +++ b/yaml/NotificationConfigurationService-v1.yaml @@ -1,15 +1,15 @@ -openapi: 3.0.0 +openapi: 3.0.3 servers: - url: 'https://cal-test.adyen.com/cal/services/Notification/v1' info: version: '1' - title: Adyen MarketPay Notification Configuration API + title: 'Adyen for Platforms: Notification Configuration API' description: |- - The MarketPay Notification Configuration API provides endpoints for configuration a subscription to a marketplace's MarketPay-related notifications. Notifications are sent upon the occurrence of certain events (such as a KYC check completion or a payout completion), and the subscription to these notifications dictates to where they are sent. + The Notification Configuration API provides endpoints for setting up and testing notifications that inform you of events on your platform, for example when a KYC check or a payout has been completed. - For further information on MarketPay notifications, please visit the [MarketPay documentation](https://docs.adyen.com/marketpay). + For more information, refer to our [documentation](https://docs.adyen.com/marketpay/marketpay-notifications). ## Authentication - To connect to the MarketPay API, you must use basic authentication credentials of your web service user. If you don't have one, please contact the [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example: + To connect to the Notification Configuration API, you must use basic authentication credentials of your web service user. If you don't have one, contact our [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example: ``` curl @@ -20,7 +20,7 @@ info: Note that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints). ## Versioning - MarketPay API supports versioning of its endpoints through a version suffix in the endpoint URL. This suffix has the following format: "vXX", where XX is the version number. + The Notification Configuration API supports versioning of its endpoints through a version suffix in the endpoint URL. This suffix has the following format: "vXX", where XX is the version number. For example: ``` @@ -36,8 +36,9 @@ x-groups: paths: /createNotificationConfiguration: post: - summary: Configure a new subscription to notifications. - description: 'This endpoint is used to create a subscription to MarketPay event notifications. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.' + summary: Subscribe to notifications. + description: 'Creates a subscription to notifications informing you of events on your platform. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.' + operationId: post-createNotificationConfiguration x-groupName: General x-sortIndex: 1 requestBody: @@ -56,6 +57,7 @@ paths: post: summary: Delete an existing notification subscription configuration. description: 'This endpoint is used to delete an existing notification subscription configuration. After the subscription is deleted, no further event notifications will be sent to the URL that was in the subscription.' + operationId: post-deleteNotificationConfigurations x-groupName: General x-sortIndex: 6 requestBody: @@ -74,6 +76,7 @@ paths: post: summary: Retrieve an existing notification subscription configuration. description: This endpoint is used to retrieve the details of the configuration of a notification subscription. + operationId: post-getNotificationConfiguration x-groupName: General x-sortIndex: 2 requestBody: @@ -92,6 +95,7 @@ paths: post: summary: Retrieve a list of existing notification subscription configurations. description: This endpoint is used to retrieve the details of the configurations of all of the notification subscriptions in the marketplace of the executing user. + operationId: post-getNotificationConfigurationList x-groupName: General x-sortIndex: 3 requestBody: @@ -110,6 +114,7 @@ paths: post: summary: Test an existing notification configuration. description: 'This endpoint is used to test an existing notification subscription configuration. For each event type specified, a test notification will be generated and sent to the URL configured in the subscription specified.' + operationId: post-testNotificationConfiguration x-groupName: General x-sortIndex: 4 requestBody: @@ -128,6 +133,7 @@ paths: post: summary: Update an existing notification subscription configuration. description: 'This endpoint is used to update an existing notification subscription configuration. If updating the event types, all event types desired must be provided, otherwise the previous event type configuration will be overwritten.' + operationId: post-updateNotificationConfiguration x-groupName: General x-sortIndex: 5 requestBody: @@ -171,21 +177,17 @@ components: GenericResponse: properties: pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. type: string submittedAsync: description: |- - Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied: - * **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. - * **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received. - * **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue. + Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied: + * **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received. + * **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. type: boolean - required: - - pspReference - - submittedAsync GetNotificationConfigurationListResponse: properties: configurations: @@ -194,21 +196,18 @@ components: $ref: '#/components/schemas/NotificationConfigurationDetails' type: array pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. type: string submittedAsync: description: |- - Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied: - * **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. - * **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received. - * **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue. + Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied: + * **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received. + * **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. type: boolean required: - - pspReference - - submittedAsync - configurations GetNotificationConfigurationRequest: properties: @@ -224,21 +223,18 @@ components: description: Details of the notification subscription configuration. $ref: '#/components/schemas/NotificationConfigurationDetails' pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. type: string submittedAsync: description: |- - Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied: - * **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. - * **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received. - * **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue. + Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied: + * **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received. + * **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. type: boolean required: - - pspReference - - submittedAsync - configurationDetails NotificationConfigurationDetails: properties: @@ -250,9 +246,7 @@ components: format: int32 type: integer description: - description: |- - A description of the notification subscription configuration. - >Required when creating a configuration, forbidden when updating a configuration. + description: A description of the notification subscription configuration. type: string eventConfigs: description: The types of events whose notifications apply to this configuration. @@ -327,10 +321,10 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS - TRANSFER_FUNDS - - TRANSFER_FUNDS_REFUND type: string includeMode: description: |- @@ -368,10 +362,10 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS - TRANSFER_FUNDS - - TRANSFER_FUNDS_REFUND type: string type: array notificationId: @@ -408,10 +402,10 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS - TRANSFER_FUNDS - - TRANSFER_FUNDS_REFUND type: string type: array exchangeMessages: @@ -429,21 +423,18 @@ components: type: string type: array pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. type: string submittedAsync: description: |- - Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied: - * **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. - * **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received. - * **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue. + Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied: + * **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received. + * **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. type: boolean required: - - pspReference - - submittedAsync - notificationId - eventTypes - okMessages @@ -455,3 +446,11 @@ components: $ref: '#/components/schemas/NotificationConfigurationDetails' required: - configurationDetails + securitySchemes: + ApiKeyAuth: + in: header + name: X-API-Key + type: apiKey + BasicAuth: + scheme: basic + type: http diff --git a/yaml/NotificationConfigurationService-v2.yaml b/yaml/NotificationConfigurationService-v2.yaml index 5627648..dceeedf 100644 --- a/yaml/NotificationConfigurationService-v2.yaml +++ b/yaml/NotificationConfigurationService-v2.yaml @@ -1,15 +1,15 @@ -openapi: 3.0.0 +openapi: 3.0.3 servers: - url: 'https://cal-test.adyen.com/cal/services/Notification/v2' info: version: '2' - title: Adyen MarketPay Notification Configuration API + title: 'Adyen for Platforms: Notification Configuration API' description: |- - The MarketPay Notification Configuration API provides endpoints for configuration a subscription to a marketplace's MarketPay-related notifications. Notifications are sent upon the occurrence of certain events (such as a KYC check completion or a payout completion), and the subscription to these notifications dictates to where they are sent. + The Notification Configuration API provides endpoints for setting up and testing notifications that inform you of events on your platform, for example when a KYC check or a payout has been completed. - For further information on MarketPay notifications, please visit the [MarketPay documentation](https://docs.adyen.com/marketpay). + For more information, refer to our [documentation](https://docs.adyen.com/marketpay/marketpay-notifications). ## Authentication - To connect to the MarketPay API, you must use basic authentication credentials of your web service user. If you don't have one, please contact the [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example: + To connect to the Notification Configuration API, you must use basic authentication credentials of your web service user. If you don't have one, contact our [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example: ``` curl @@ -20,7 +20,7 @@ info: Note that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints). ## Versioning - MarketPay API supports versioning of its endpoints through a version suffix in the endpoint URL. This suffix has the following format: "vXX", where XX is the version number. + The Notification Configuration API supports versioning of its endpoints through a version suffix in the endpoint URL. This suffix has the following format: "vXX", where XX is the version number. For example: ``` @@ -36,8 +36,9 @@ x-groups: paths: /createNotificationConfiguration: post: - summary: Configure a new subscription to notifications. - description: 'This endpoint is used to create a subscription to MarketPay event notifications. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.' + summary: Subscribe to notifications. + description: 'Creates a subscription to notifications informing you of events on your platform. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.' + operationId: post-createNotificationConfiguration x-groupName: General x-sortIndex: 1 requestBody: @@ -56,6 +57,7 @@ paths: post: summary: Delete an existing notification subscription configuration. description: 'This endpoint is used to delete an existing notification subscription configuration. After the subscription is deleted, no further event notifications will be sent to the URL that was in the subscription.' + operationId: post-deleteNotificationConfigurations x-groupName: General x-sortIndex: 6 requestBody: @@ -74,6 +76,7 @@ paths: post: summary: Retrieve an existing notification subscription configuration. description: This endpoint is used to retrieve the details of the configuration of a notification subscription. + operationId: post-getNotificationConfiguration x-groupName: General x-sortIndex: 2 requestBody: @@ -92,6 +95,7 @@ paths: post: summary: Retrieve a list of existing notification subscription configurations. description: This endpoint is used to retrieve the details of the configurations of all of the notification subscriptions in the marketplace of the executing user. + operationId: post-getNotificationConfigurationList x-groupName: General x-sortIndex: 3 requestBody: @@ -110,6 +114,7 @@ paths: post: summary: Test an existing notification configuration. description: 'This endpoint is used to test an existing notification subscription configuration. For each event type specified, a test notification will be generated and sent to the URL configured in the subscription specified.' + operationId: post-testNotificationConfiguration x-groupName: General x-sortIndex: 4 requestBody: @@ -128,6 +133,7 @@ paths: post: summary: Update an existing notification subscription configuration. description: 'This endpoint is used to update an existing notification subscription configuration. If updating the event types, all event types desired must be provided, otherwise the previous event type configuration will be overwritten.' + operationId: post-updateNotificationConfiguration x-groupName: General x-sortIndex: 5 requestBody: @@ -171,21 +177,17 @@ components: GenericResponse: properties: pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. type: string submittedAsync: description: |- - Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied: - * **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. - * **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received. - * **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue. + Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied: + * **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received. + * **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. type: boolean - required: - - pspReference - - submittedAsync GetNotificationConfigurationListResponse: properties: configurations: @@ -194,21 +196,18 @@ components: $ref: '#/components/schemas/NotificationConfigurationDetails' type: array pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. type: string submittedAsync: description: |- - Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied: - * **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. - * **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received. - * **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue. + Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied: + * **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received. + * **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. type: boolean required: - - pspReference - - submittedAsync - configurations GetNotificationConfigurationRequest: properties: @@ -224,21 +223,18 @@ components: description: Details of the notification subscription configuration. $ref: '#/components/schemas/NotificationConfigurationDetails' pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. type: string submittedAsync: description: |- - Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied: - * **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. - * **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received. - * **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue. + Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied: + * **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received. + * **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. type: boolean required: - - pspReference - - submittedAsync - configurationDetails NotificationConfigurationDetails: properties: @@ -250,9 +246,7 @@ components: format: int32 type: integer description: - description: |- - A description of the notification subscription configuration. - >Required when creating a configuration, forbidden when updating a configuration. + description: A description of the notification subscription configuration. type: string eventConfigs: description: The types of events whose notifications apply to this configuration. @@ -327,10 +321,10 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS - TRANSFER_FUNDS - - TRANSFER_FUNDS_REFUND type: string includeMode: description: |- @@ -368,10 +362,10 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS - TRANSFER_FUNDS - - TRANSFER_FUNDS_REFUND type: string type: array notificationId: @@ -408,10 +402,10 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS - TRANSFER_FUNDS - - TRANSFER_FUNDS_REFUND type: string type: array exchangeMessages: @@ -429,21 +423,18 @@ components: type: string type: array pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. type: string submittedAsync: description: |- - Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied: - * **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. - * **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received. - * **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue. + Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied: + * **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received. + * **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. type: boolean required: - - pspReference - - submittedAsync - notificationId - eventTypes - okMessages @@ -455,3 +446,11 @@ components: $ref: '#/components/schemas/NotificationConfigurationDetails' required: - configurationDetails + securitySchemes: + ApiKeyAuth: + in: header + name: X-API-Key + type: apiKey + BasicAuth: + scheme: basic + type: http diff --git a/yaml/NotificationConfigurationService-v3.yaml b/yaml/NotificationConfigurationService-v3.yaml index 0eb0361..ceb78bf 100644 --- a/yaml/NotificationConfigurationService-v3.yaml +++ b/yaml/NotificationConfigurationService-v3.yaml @@ -1,15 +1,15 @@ -openapi: 3.0.0 +openapi: 3.0.3 servers: - url: 'https://cal-test.adyen.com/cal/services/Notification/v3' info: version: '3' - title: Adyen MarketPay Notification Configuration API + title: 'Adyen for Platforms: Notification Configuration API' description: |- - The MarketPay Notification Configuration API provides endpoints for configuration a subscription to a marketplace's MarketPay-related notifications. Notifications are sent upon the occurrence of certain events (such as a KYC check completion or a payout completion), and the subscription to these notifications dictates to where they are sent. + The Notification Configuration API provides endpoints for setting up and testing notifications that inform you of events on your platform, for example when a KYC check or a payout has been completed. - For further information on MarketPay notifications, please visit the [MarketPay documentation](https://docs.adyen.com/marketpay). + For more information, refer to our [documentation](https://docs.adyen.com/marketpay/marketpay-notifications). ## Authentication - To connect to the MarketPay API, you must use basic authentication credentials of your web service user. If you don't have one, please contact the [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example: + To connect to the Notification Configuration API, you must use basic authentication credentials of your web service user. If you don't have one, contact our [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example: ``` curl @@ -20,7 +20,7 @@ info: Note that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints). ## Versioning - MarketPay API supports versioning of its endpoints through a version suffix in the endpoint URL. This suffix has the following format: "vXX", where XX is the version number. + The Notification Configuration API supports versioning of its endpoints through a version suffix in the endpoint URL. This suffix has the following format: "vXX", where XX is the version number. For example: ``` @@ -36,8 +36,9 @@ x-groups: paths: /createNotificationConfiguration: post: - summary: Configure a new subscription to notifications. - description: 'This endpoint is used to create a subscription to MarketPay event notifications. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.' + summary: Subscribe to notifications. + description: 'Creates a subscription to notifications informing you of events on your platform. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.' + operationId: post-createNotificationConfiguration x-groupName: General x-sortIndex: 1 requestBody: @@ -56,6 +57,7 @@ paths: post: summary: Delete an existing notification subscription configuration. description: 'This endpoint is used to delete an existing notification subscription configuration. After the subscription is deleted, no further event notifications will be sent to the URL that was in the subscription.' + operationId: post-deleteNotificationConfigurations x-groupName: General x-sortIndex: 6 requestBody: @@ -74,6 +76,7 @@ paths: post: summary: Retrieve an existing notification subscription configuration. description: This endpoint is used to retrieve the details of the configuration of a notification subscription. + operationId: post-getNotificationConfiguration x-groupName: General x-sortIndex: 2 requestBody: @@ -92,6 +95,7 @@ paths: post: summary: Retrieve a list of existing notification subscription configurations. description: This endpoint is used to retrieve the details of the configurations of all of the notification subscriptions in the marketplace of the executing user. + operationId: post-getNotificationConfigurationList x-groupName: General x-sortIndex: 3 requestBody: @@ -110,6 +114,7 @@ paths: post: summary: Test an existing notification configuration. description: 'This endpoint is used to test an existing notification subscription configuration. For each event type specified, a test notification will be generated and sent to the URL configured in the subscription specified.' + operationId: post-testNotificationConfiguration x-groupName: General x-sortIndex: 4 requestBody: @@ -128,6 +133,7 @@ paths: post: summary: Update an existing notification subscription configuration. description: 'This endpoint is used to update an existing notification subscription configuration. If updating the event types, all event types desired must be provided, otherwise the previous event type configuration will be overwritten.' + operationId: post-updateNotificationConfiguration x-groupName: General x-sortIndex: 5 requestBody: @@ -171,21 +177,17 @@ components: GenericResponse: properties: pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. type: string submittedAsync: description: |- - Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied: - * **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. - * **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received. - * **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue. + Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied: + * **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received. + * **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. type: boolean - required: - - pspReference - - submittedAsync GetNotificationConfigurationListResponse: properties: configurations: @@ -194,21 +196,18 @@ components: $ref: '#/components/schemas/NotificationConfigurationDetails' type: array pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. type: string submittedAsync: description: |- - Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied: - * **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. - * **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received. - * **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue. + Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied: + * **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received. + * **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. type: boolean required: - - pspReference - - submittedAsync - configurations GetNotificationConfigurationRequest: properties: @@ -224,21 +223,18 @@ components: description: Details of the notification subscription configuration. $ref: '#/components/schemas/NotificationConfigurationDetails' pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. type: string submittedAsync: description: |- - Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied: - * **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. - * **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received. - * **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue. + Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied: + * **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received. + * **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. type: boolean required: - - pspReference - - submittedAsync - configurationDetails NotificationConfigurationDetails: properties: @@ -250,9 +246,7 @@ components: format: int32 type: integer description: - description: |- - A description of the notification subscription configuration. - >Required when creating a configuration, forbidden when updating a configuration. + description: A description of the notification subscription configuration. type: string eventConfigs: description: The types of events whose notifications apply to this configuration. @@ -327,10 +321,10 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS - TRANSFER_FUNDS - - TRANSFER_FUNDS_REFUND type: string includeMode: description: |- @@ -368,10 +362,10 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS - TRANSFER_FUNDS - - TRANSFER_FUNDS_REFUND type: string type: array notificationId: @@ -408,10 +402,10 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS - TRANSFER_FUNDS - - TRANSFER_FUNDS_REFUND type: string type: array exchangeMessages: @@ -429,21 +423,18 @@ components: type: string type: array pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. type: string submittedAsync: description: |- - Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied: - * **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. - * **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received. - * **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue. + Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied: + * **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received. + * **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. type: boolean required: - - pspReference - - submittedAsync - notificationId - eventTypes - okMessages @@ -455,3 +446,11 @@ components: $ref: '#/components/schemas/NotificationConfigurationDetails' required: - configurationDetails + securitySchemes: + ApiKeyAuth: + in: header + name: X-API-Key + type: apiKey + BasicAuth: + scheme: basic + type: http diff --git a/yaml/NotificationConfigurationService-v4.yaml b/yaml/NotificationConfigurationService-v4.yaml index 7c8ee47..9865497 100644 --- a/yaml/NotificationConfigurationService-v4.yaml +++ b/yaml/NotificationConfigurationService-v4.yaml @@ -1,15 +1,15 @@ -openapi: 3.0.0 +openapi: 3.0.3 servers: - url: 'https://cal-test.adyen.com/cal/services/Notification/v4' info: version: '4' - title: Adyen MarketPay Notification Configuration API + title: 'Adyen for Platforms: Notification Configuration API' description: |- - The MarketPay Notification Configuration API provides endpoints for configuration a subscription to a marketplace's MarketPay-related notifications. Notifications are sent upon the occurrence of certain events (such as a KYC check completion or a payout completion), and the subscription to these notifications dictates to where they are sent. + The Notification Configuration API provides endpoints for setting up and testing notifications that inform you of events on your platform, for example when a KYC check or a payout has been completed. - For further information on MarketPay notifications, please visit the [MarketPay documentation](https://docs.adyen.com/marketpay). + For more information, refer to our [documentation](https://docs.adyen.com/marketpay/marketpay-notifications). ## Authentication - To connect to the MarketPay API, you must use basic authentication credentials of your web service user. If you don't have one, please contact the [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example: + To connect to the Notification Configuration API, you must use basic authentication credentials of your web service user. If you don't have one, contact our [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example: ``` curl @@ -20,7 +20,7 @@ info: Note that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints). ## Versioning - MarketPay API supports versioning of its endpoints through a version suffix in the endpoint URL. This suffix has the following format: "vXX", where XX is the version number. + The Notification Configuration API supports versioning of its endpoints through a version suffix in the endpoint URL. This suffix has the following format: "vXX", where XX is the version number. For example: ``` @@ -36,8 +36,9 @@ x-groups: paths: /createNotificationConfiguration: post: - summary: Configure a new subscription to notifications. - description: 'This endpoint is used to create a subscription to MarketPay event notifications. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.' + summary: Subscribe to notifications. + description: 'Creates a subscription to notifications informing you of events on your platform. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.' + operationId: post-createNotificationConfiguration x-groupName: General x-sortIndex: 1 requestBody: @@ -56,6 +57,7 @@ paths: post: summary: Delete an existing notification subscription configuration. description: 'This endpoint is used to delete an existing notification subscription configuration. After the subscription is deleted, no further event notifications will be sent to the URL that was in the subscription.' + operationId: post-deleteNotificationConfigurations x-groupName: General x-sortIndex: 6 requestBody: @@ -74,6 +76,7 @@ paths: post: summary: Retrieve an existing notification subscription configuration. description: This endpoint is used to retrieve the details of the configuration of a notification subscription. + operationId: post-getNotificationConfiguration x-groupName: General x-sortIndex: 2 requestBody: @@ -92,6 +95,7 @@ paths: post: summary: Retrieve a list of existing notification subscription configurations. description: This endpoint is used to retrieve the details of the configurations of all of the notification subscriptions in the marketplace of the executing user. + operationId: post-getNotificationConfigurationList x-groupName: General x-sortIndex: 3 requestBody: @@ -110,6 +114,7 @@ paths: post: summary: Test an existing notification configuration. description: 'This endpoint is used to test an existing notification subscription configuration. For each event type specified, a test notification will be generated and sent to the URL configured in the subscription specified.' + operationId: post-testNotificationConfiguration x-groupName: General x-sortIndex: 4 requestBody: @@ -128,6 +133,7 @@ paths: post: summary: Update an existing notification subscription configuration. description: 'This endpoint is used to update an existing notification subscription configuration. If updating the event types, all event types desired must be provided, otherwise the previous event type configuration will be overwritten.' + operationId: post-updateNotificationConfiguration x-groupName: General x-sortIndex: 5 requestBody: @@ -171,21 +177,17 @@ components: GenericResponse: properties: pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. type: string submittedAsync: description: |- - Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied: - * **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. - * **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received. - * **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue. + Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied: + * **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received. + * **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. type: boolean - required: - - pspReference - - submittedAsync GetNotificationConfigurationListResponse: properties: configurations: @@ -194,21 +196,18 @@ components: $ref: '#/components/schemas/NotificationConfigurationDetails' type: array pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. type: string submittedAsync: description: |- - Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied: - * **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. - * **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received. - * **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue. + Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied: + * **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received. + * **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. type: boolean required: - - pspReference - - submittedAsync - configurations GetNotificationConfigurationRequest: properties: @@ -224,21 +223,18 @@ components: description: Details of the notification subscription configuration. $ref: '#/components/schemas/NotificationConfigurationDetails' pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. type: string submittedAsync: description: |- - Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied: - * **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. - * **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received. - * **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue. + Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied: + * **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received. + * **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. type: boolean required: - - pspReference - - submittedAsync - configurationDetails NotificationConfigurationDetails: properties: @@ -250,9 +246,7 @@ components: format: int32 type: integer description: - description: |- - A description of the notification subscription configuration. - >Required when creating a configuration, forbidden when updating a configuration. + description: A description of the notification subscription configuration. type: string eventConfigs: description: The types of events whose notifications apply to this configuration. @@ -327,10 +321,10 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS - TRANSFER_FUNDS - - TRANSFER_FUNDS_REFUND type: string includeMode: description: |- @@ -368,10 +362,10 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS - TRANSFER_FUNDS - - TRANSFER_FUNDS_REFUND type: string type: array notificationId: @@ -408,10 +402,10 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS - TRANSFER_FUNDS - - TRANSFER_FUNDS_REFUND type: string type: array exchangeMessages: @@ -429,21 +423,18 @@ components: type: string type: array pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. type: string submittedAsync: description: |- - Indicates whether the request is processed synchronously or asynchronously. Depending on the request's platform settings, the following scenarios may be applied: - * **sync:** The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. - * **async:** The request is queued and will be executed when the providing service is available in the order in which the requests are received. - * **asyncOnError:** The processing of the request is immediately attempted, but if the providing service is unavailable, the request is scheduled in a queue. + Indicates whether the request is processed asynchronously. Depending on the request's platform settings, the following scenarios may be applied: + * **true**: The request is queued and will be executed when the providing service is available in the order in which the requests are received. + * **false**: The processing of the request is immediately attempted; it may result in an error if the providing service is unavailable. type: boolean required: - - pspReference - - submittedAsync - notificationId - eventTypes - okMessages @@ -455,3 +446,11 @@ components: $ref: '#/components/schemas/NotificationConfigurationDetails' required: - configurationDetails + securitySchemes: + ApiKeyAuth: + in: header + name: X-API-Key + type: apiKey + BasicAuth: + scheme: basic + type: http diff --git a/yaml/NotificationConfigurationService-v5.yaml b/yaml/NotificationConfigurationService-v5.yaml index 572eab3..c477d0a 100644 --- a/yaml/NotificationConfigurationService-v5.yaml +++ b/yaml/NotificationConfigurationService-v5.yaml @@ -1,15 +1,15 @@ -openapi: 3.0.0 +openapi: 3.0.3 servers: - url: 'https://cal-test.adyen.com/cal/services/Notification/v5' info: version: '5' - title: Adyen MarketPay Notification Configuration API + title: 'Adyen for Platforms: Notification Configuration API' description: |- - The MarketPay Notification Configuration API provides endpoints for configuration a subscription to a marketplace's MarketPay-related notifications. Notifications are sent upon the occurrence of certain events (such as a KYC check completion or a payout completion), and the subscription to these notifications dictates to where they are sent. + The Notification Configuration API provides endpoints for setting up and testing notifications that inform you of events on your platform, for example when a KYC check or a payout has been completed. - For further information on MarketPay notifications, please visit the [MarketPay documentation](https://docs.adyen.com/marketpay). + For more information, refer to our [documentation](https://docs.adyen.com/marketpay/marketpay-notifications). ## Authentication - To connect to the MarketPay API, you must use basic authentication credentials of your web service user. If you don't have one, please contact the [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example: + To connect to the Notification Configuration API, you must use basic authentication credentials of your web service user. If you don't have one, contact our [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example: ``` curl @@ -20,7 +20,7 @@ info: Note that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints). ## Versioning - MarketPay API supports versioning of its endpoints through a version suffix in the endpoint URL. This suffix has the following format: "vXX", where XX is the version number. + The Notification Configuration API supports versioning of its endpoints through a version suffix in the endpoint URL. This suffix has the following format: "vXX", where XX is the version number. For example: ``` @@ -36,8 +36,9 @@ x-groups: paths: /createNotificationConfiguration: post: - summary: Configure a new subscription to notifications. - description: 'This endpoint is used to create a subscription to MarketPay event notifications. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.' + summary: Subscribe to notifications. + description: 'Creates a subscription to notifications informing you of events on your platform. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.' + operationId: post-createNotificationConfiguration x-groupName: General x-sortIndex: 1 requestBody: @@ -56,6 +57,7 @@ paths: post: summary: Delete an existing notification subscription configuration. description: 'This endpoint is used to delete an existing notification subscription configuration. After the subscription is deleted, no further event notifications will be sent to the URL that was in the subscription.' + operationId: post-deleteNotificationConfigurations x-groupName: General x-sortIndex: 6 requestBody: @@ -74,6 +76,7 @@ paths: post: summary: Retrieve an existing notification subscription configuration. description: This endpoint is used to retrieve the details of the configuration of a notification subscription. + operationId: post-getNotificationConfiguration x-groupName: General x-sortIndex: 2 requestBody: @@ -92,6 +95,7 @@ paths: post: summary: Retrieve a list of existing notification subscription configurations. description: This endpoint is used to retrieve the details of the configurations of all of the notification subscriptions in the marketplace of the executing user. + operationId: post-getNotificationConfigurationList x-groupName: General x-sortIndex: 3 requestBody: @@ -110,6 +114,7 @@ paths: post: summary: Test an existing notification configuration. description: 'This endpoint is used to test an existing notification subscription configuration. For each event type specified, a test notification will be generated and sent to the URL configured in the subscription specified.' + operationId: post-testNotificationConfiguration x-groupName: General x-sortIndex: 4 requestBody: @@ -128,6 +133,7 @@ paths: post: summary: Update an existing notification subscription configuration. description: 'This endpoint is used to update an existing notification subscription configuration. If updating the event types, all event types desired must be provided, otherwise the previous event type configuration will be overwritten.' + operationId: post-updateNotificationConfiguration x-groupName: General x-sortIndex: 5 requestBody: @@ -278,6 +284,9 @@ components: - sourceAccountCode - stateOrProvince - status + - stockExchange + - stockNumber + - stockTicker - store - storeDetail - storeName @@ -304,13 +313,11 @@ components: $ref: '#/components/schemas/ErrorFieldType' type: array pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. type: string - required: - - pspReference GetNotificationConfigurationListResponse: properties: configurations: @@ -324,13 +331,12 @@ components: $ref: '#/components/schemas/ErrorFieldType' type: array pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. type: string required: - - pspReference - configurations GetNotificationConfigurationRequest: properties: @@ -351,13 +357,12 @@ components: $ref: '#/components/schemas/ErrorFieldType' type: array pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. type: string required: - - pspReference - configurationDetails NotificationConfigurationDetails: properties: @@ -369,9 +374,7 @@ components: format: int32 type: integer description: - description: |- - A description of the notification subscription configuration. - >Required when creating a configuration, forbidden when updating a configuration. + description: A description of the notification subscription configuration. type: string eventConfigs: description: The types of events whose notifications apply to this configuration. @@ -439,10 +442,10 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS - TRANSFER_FUNDS - - TRANSFER_FUNDS_REFUND type: string includeMode: description: |- @@ -480,10 +483,10 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS - TRANSFER_FUNDS - - TRANSFER_FUNDS_REFUND type: string type: array notificationId: @@ -520,10 +523,10 @@ components: - COMPENSATE_NEGATIVE_BALANCE - DIRECT_DEBIT_INITIATED - PAYMENT_FAILURE + - REFUND_FUNDS_TRANSFER - REPORT_AVAILABLE - SCHEDULED_REFUNDS - TRANSFER_FUNDS - - TRANSFER_FUNDS_REFUND type: string type: array exchangeMessages: @@ -546,13 +549,12 @@ components: type: string type: array pspReference: - description: The reference of a request. Can be used to uniquely identify the request. + description: The reference of a request. Can be used to uniquely identify the request. type: string resultCode: description: The result code. type: string required: - - pspReference - notificationId - eventTypes - okMessages @@ -564,3 +566,11 @@ components: $ref: '#/components/schemas/NotificationConfigurationDetails' required: - configurationDetails + securitySchemes: + ApiKeyAuth: + in: header + name: X-API-Key + type: apiKey + BasicAuth: + scheme: basic + type: http diff --git a/yaml/NotificationConfigurationService-v6.yaml b/yaml/NotificationConfigurationService-v6.yaml new file mode 100644 index 0000000..7b1a641 --- /dev/null +++ b/yaml/NotificationConfigurationService-v6.yaml @@ -0,0 +1,576 @@ +openapi: 3.0.3 +servers: + - url: 'https://cal-test.adyen.com/cal/services/Notification/v6' +info: + version: '6' + title: 'Adyen for Platforms: Notification Configuration API' + description: |- + The Notification Configuration API provides endpoints for setting up and testing notifications that inform you of events on your platform, for example when a KYC check or a payout has been completed. + + For more information, refer to our [documentation](https://docs.adyen.com/marketpay/marketpay-notifications). + ## Authentication + To connect to the Notification Configuration API, you must use basic authentication credentials of your web service user. If you don't have one, contact our [Adyen Support Team](https://support.adyen.com/hc/en-us/requests/new). Then use its credentials to authenticate your request, for example: + + ``` + curl + -U "ws@MarketPlace.YourMarketPlace":"YourWsPassword" \ + -H "Content-Type: application/json" \ + ... + ``` + Note that when going live, you need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints). + + ## Versioning + The Notification Configuration API supports versioning of its endpoints through a version suffix in the endpoint URL. This suffix has the following format: "vXX", where XX is the version number. + + For example: + ``` + https://cal-test.adyen.com/cal/services/Notification/v6/createNotificationConfiguration + ``` + termsOfService: 'https://www.adyen.com/legal/terms-and-conditions' + contact: + name: Adyen Support + url: 'https://support.adyen.com/' + email: support@adyen.com +x-groups: + - General +paths: + /createNotificationConfiguration: + post: + summary: Subscribe to notifications. + description: 'Creates a subscription to notifications informing you of events on your platform. After the subscription is created, the events specified in the configuration will be sent to the URL specified in the configuration. Subscriptions must be configured on a per-event basis (as opposed to, for example, a per-account holder basis), so all event notifications of a marketplace and of a given type will be sent to the same endpoint(s). A marketplace may have multiple endpoints if desired; an event notification may be sent to as many or as few different endpoints as configured.' + operationId: post-createNotificationConfiguration + x-groupName: General + x-sortIndex: 1 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreateNotificationConfigurationRequest' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/GetNotificationConfigurationResponse' + description: OK - the request has succeeded. + /deleteNotificationConfigurations: + post: + summary: Delete an existing notification subscription configuration. + description: 'This endpoint is used to delete an existing notification subscription configuration. After the subscription is deleted, no further event notifications will be sent to the URL that was in the subscription.' + operationId: post-deleteNotificationConfigurations + x-groupName: General + x-sortIndex: 6 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/DeleteNotificationConfigurationRequest' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/GenericResponse' + description: OK - the request has succeeded. + /getNotificationConfiguration: + post: + summary: Retrieve an existing notification subscription configuration. + description: This endpoint is used to retrieve the details of the configuration of a notification subscription. + operationId: post-getNotificationConfiguration + x-groupName: General + x-sortIndex: 2 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/GetNotificationConfigurationRequest' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/GetNotificationConfigurationResponse' + description: OK - the request has succeeded. + /getNotificationConfigurationList: + post: + summary: Retrieve a list of existing notification subscription configurations. + description: This endpoint is used to retrieve the details of the configurations of all of the notification subscriptions in the marketplace of the executing user. + operationId: post-getNotificationConfigurationList + x-groupName: General + x-sortIndex: 3 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/EmptyRequest' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/GetNotificationConfigurationListResponse' + description: OK - the request has succeeded. + /testNotificationConfiguration: + post: + summary: Test an existing notification configuration. + description: 'This endpoint is used to test an existing notification subscription configuration. For each event type specified, a test notification will be generated and sent to the URL configured in the subscription specified.' + operationId: post-testNotificationConfiguration + x-groupName: General + x-sortIndex: 4 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TestNotificationConfigurationRequest' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/TestNotificationConfigurationResponse' + description: OK - the request has succeeded. + /updateNotificationConfiguration: + post: + summary: Update an existing notification subscription configuration. + description: 'This endpoint is used to update an existing notification subscription configuration. If updating the event types, all event types desired must be provided, otherwise the previous event type configuration will be overwritten.' + operationId: post-updateNotificationConfiguration + x-groupName: General + x-sortIndex: 5 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateNotificationConfigurationRequest' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/GetNotificationConfigurationResponse' + description: OK - the request has succeeded. +components: + schemas: + CreateNotificationConfigurationRequest: + properties: + configurationDetails: + description: Details of the prospective notification subscription configuration. + $ref: '#/components/schemas/NotificationConfigurationDetails' + required: + - configurationDetails + DeleteNotificationConfigurationRequest: + properties: + notificationIds: + description: A list of IDs of the notification subscription configurations to be deleted. + items: + format: int64 + type: integer + type: array + required: + - notificationIds + EmptyRequest: {} + ErrorFieldType: + properties: + errorCode: + description: The validation error code. + format: int32 + type: integer + errorDescription: + description: A description of the validation error. + type: string + fieldType: + description: The type of error field. + $ref: '#/components/schemas/FieldType' + ExchangeMessage: + properties: + messageCode: + type: string + messageDescription: + type: string + FieldType: + properties: + field: + description: The full name of the property. + type: string + fieldName: + description: The type of the field. + enum: + - accountCode + - accountHolderCode + - accountHolderDetails + - accountNumber + - accountStateType + - accountStatus + - accountType + - address + - bankAccount + - bankAccountCode + - bankAccountName + - bankAccountUUID + - bankBicSwift + - bankCity + - bankCode + - bankName + - bankStatement + - branchCode + - businessContact + - cardToken + - checkCode + - city + - companyRegistration + - country + - countryCode + - currency + - currencyCode + - dateOfBirth + - description + - destinationAccountCode + - document + - documentExpirationDate + - documentIssuerCountry + - documentIssuerState + - documentName + - documentNumber + - documentType + - doingBusinessAs + - drivingLicence + - drivingLicenceBack + - drivingLicense + - email + - firstName + - fullPhoneNumber + - gender + - hopWebserviceUser + - houseNumberOrName + - iban + - idCard + - idCardBack + - idCardFront + - idNumber + - identityDocument + - individualDetails + - lastName + - legalBusinessName + - legalEntity + - legalEntityType + - merchantAccount + - merchantCategoryCode + - merchantReference + - microDeposit + - name + - nationality + - originalReference + - ownerCity + - ownerCountryCode + - ownerHouseNumberOrName + - ownerName + - ownerPostalCode + - ownerState + - ownerStreet + - passport + - passportNumber + - payoutMethodCode + - personalData + - phoneCountryCode + - phoneNumber + - postalCode + - primaryCurrency + - reason + - registrationNumber + - returnUrl + - schedule + - shareholder + - shareholderCode + - socialSecurityNumber + - sourceAccountCode + - stateOrProvince + - status + - stockExchange + - stockNumber + - stockTicker + - store + - storeDetail + - storeName + - storeReference + - street + - taxId + - tier + - tierNumber + - transferCode + - unknown + - value + - virtualAccount + - visaNumber + - webAddress + type: string + shareholderCode: + description: 'The code of the shareholder that the field belongs to. If empty, the field belongs to an account holder.' + type: string + GenericResponse: + properties: + invalidFields: + description: Contains field validation errors that would prevent requests from being processed. + items: + $ref: '#/components/schemas/ErrorFieldType' + type: array + pspReference: + description: The reference of a request. Can be used to uniquely identify the request. + type: string + resultCode: + description: The result code. + type: string + GetNotificationConfigurationListResponse: + properties: + configurations: + description: Details of the notification subscription configurations. + items: + $ref: '#/components/schemas/NotificationConfigurationDetails' + type: array + invalidFields: + description: Contains field validation errors that would prevent requests from being processed. + items: + $ref: '#/components/schemas/ErrorFieldType' + type: array + pspReference: + description: The reference of a request. Can be used to uniquely identify the request. + type: string + resultCode: + description: The result code. + type: string + required: + - configurations + GetNotificationConfigurationRequest: + properties: + notificationId: + description: The ID of the notification subscription configuration whose details are to be retrieved. + format: int64 + type: integer + required: + - notificationId + GetNotificationConfigurationResponse: + properties: + configurationDetails: + description: Details of the notification subscription configuration. + $ref: '#/components/schemas/NotificationConfigurationDetails' + invalidFields: + description: Contains field validation errors that would prevent requests from being processed. + items: + $ref: '#/components/schemas/ErrorFieldType' + type: array + pspReference: + description: The reference of a request. Can be used to uniquely identify the request. + type: string + resultCode: + description: The result code. + type: string + required: + - configurationDetails + NotificationConfigurationDetails: + properties: + active: + description: Indicates whether the notification subscription is active. + type: boolean + apiVersion: + description: The API version of the notification to send. + format: int32 + type: integer + description: + description: A description of the notification subscription configuration. + type: string + eventConfigs: + description: The types of events whose notifications apply to this configuration. + items: + $ref: '#/components/schemas/NotificationEventConfiguration' + type: array + hmacSignatureKey: + description: |- + A string with which to salt the notification(s) before hashing. If this field is provided, a hash value will be included under the notification header `HmacSignature` and the hash protocol will be included under the notification header `Protocol`. A notification body along with its `hmacSignatureKey` and `Protocol` can be used to calculate a hash value; matching this hash value with the `HmacSignature` will ensure that the notification body has not been tampered with or corrupted. + + >Must be a 32-byte hex-encoded string (i.e. a string containing 64 hexadecimal characters; e.g. "b0ea55c2fe60d4d1d605e9c385e0e7f7e6cafbb939ce07010f31a327a0871f27"). + + The omission of this field will preclude the provision of the `HmacSignature` and `Protocol` headers in notification(s). + type: string + notificationId: + description: |- + The ID of the configuration. + >Required if updating an existing configuration, ignored during the creation of a configuration. + format: int64 + type: integer + notifyPassword: + description: The password to use when accessing the notifyURL with the specified username. + type: string + notifyURL: + description: The URL to which the notifications are to be sent. + type: string + notifyUsername: + description: The username to use when accessing the notifyURL. + type: string + sslProtocol: + description: |- + The SSL protocol employed by the endpoint. + >Permitted values: `SSL`, `SSLInsecureCiphers`, `TLS`, `TLSv10`, `TLSv10InsecureCiphers`, `TLSv11`, `TLSv12`. + enum: + - SSL + - SSLInsecureCiphers + - TLS + - TLSv10 + - TLSv10InsecureCiphers + - TLSv11 + - TLSv12 + type: string + required: + - eventConfigs + - notifyURL + NotificationEventConfiguration: + properties: + eventType: + description: |- + The type of event triggering the notification. + >Permitted values: `ACCOUNT_HOLDER_CREATED`, `ACCOUNT_CREATED`, `ACCOUNT_UPDATED`, `ACCOUNT_HOLDER_UPDATED`, `ACCOUNT_HOLDER_STATUS_CHANGE`, `ACCOUNT_HOLDER_STORE_STATUS_CHANGE`, `ACCOUNT_HOLDER_VERIFICATION`, `ACCOUNT_HOLDER_LIMIT_REACHED`, `ACCOUNT_HOLDER_PAYOUT`, `PAYMENT_FAILURE`, `SCHEDULED_REFUNDS`, `REPORT_AVAILABLE`, `TRANSFER_FUNDS`, `BENEFICIARY_SETUP`, `COMPENSATE_NEGATIVE_BALANCE`. + enum: + - ACCOUNT_CLOSED + - ACCOUNT_CREATED + - ACCOUNT_HOLDER_CREATED + - ACCOUNT_HOLDER_LIMIT_REACHED + - ACCOUNT_HOLDER_PAYOUT + - ACCOUNT_HOLDER_STATUS_CHANGE + - ACCOUNT_HOLDER_STORE_STATUS_CHANGE + - ACCOUNT_HOLDER_UPCOMING_DEADLINE + - ACCOUNT_HOLDER_UPDATED + - ACCOUNT_HOLDER_VERIFICATION + - ACCOUNT_UPDATED + - BENEFICIARY_SETUP + - COMPENSATE_NEGATIVE_BALANCE + - DIRECT_DEBIT_INITIATED + - PAYMENT_FAILURE + - REFUND_FUNDS_TRANSFER + - REPORT_AVAILABLE + - SCHEDULED_REFUNDS + - TRANSFER_FUNDS + type: string + includeMode: + description: |- + Indicates whether the specified eventType is to be sent to the endpoint or all events other than the specified eventType (and other specified eventTypes) are to be sent. + >Permitted values: `INCLUDE`, `EXCLUDE`. + >- `INCLUDE`: send the specified eventType. + >- `EXCLUDE`: send all eventTypes other than the specified eventType (and other eventTypes marked with `EXCLUDE`). + enum: + - EXCLUDE + - INCLUDE + type: string + required: + - eventType + - includeMode + TestNotificationConfigurationRequest: + properties: + eventTypes: + description: |- + The event types to test. If left blank, then all of the configured event types will be tested. + >Permitted values: `ACCOUNT_HOLDER_CREATED`, `ACCOUNT_CREATED`, `ACCOUNT_UPDATED`, `ACCOUNT_HOLDER_UPDATED`, `ACCOUNT_HOLDER_STATUS_CHANGE`, `ACCOUNT_HOLDER_STORE_STATUS_CHANGE` `ACCOUNT_HOLDER_VERIFICATION`, `ACCOUNT_HOLDER_LIMIT_REACHED`, `ACCOUNT_HOLDER_PAYOUT`, `PAYMENT_FAILURE`, `SCHEDULED_REFUNDS`, `REPORT_AVAILABLE`, `TRANSFER_FUNDS`, `BENEFICIARY_SETUP`, `COMPENSATE_NEGATIVE_BALANCE`. + items: + enum: + - ACCOUNT_CLOSED + - ACCOUNT_CREATED + - ACCOUNT_HOLDER_CREATED + - ACCOUNT_HOLDER_LIMIT_REACHED + - ACCOUNT_HOLDER_PAYOUT + - ACCOUNT_HOLDER_STATUS_CHANGE + - ACCOUNT_HOLDER_STORE_STATUS_CHANGE + - ACCOUNT_HOLDER_UPCOMING_DEADLINE + - ACCOUNT_HOLDER_UPDATED + - ACCOUNT_HOLDER_VERIFICATION + - ACCOUNT_UPDATED + - BENEFICIARY_SETUP + - COMPENSATE_NEGATIVE_BALANCE + - DIRECT_DEBIT_INITIATED + - PAYMENT_FAILURE + - REFUND_FUNDS_TRANSFER + - REPORT_AVAILABLE + - SCHEDULED_REFUNDS + - TRANSFER_FUNDS + type: string + type: array + notificationId: + description: The ID of the notification subscription configuration to be tested. + format: int64 + type: integer + required: + - notificationId + TestNotificationConfigurationResponse: + properties: + errorMessages: + description: Any error messages encountered. + items: + type: string + type: array + eventTypes: + description: |- + The event types that were tested. + >Permitted values: `ACCOUNT_HOLDER_CREATED`, `ACCOUNT_CREATED`, `ACCOUNT_UPDATED`, `ACCOUNT_HOLDER_UPDATED`, `ACCOUNT_HOLDER_STATUS_CHANGE`, `ACCOUNT_HOLDER_STORE_STATUS_CHANGE` `ACCOUNT_HOLDER_VERIFICATION`, `ACCOUNT_HOLDER_LIMIT_REACHED`, `ACCOUNT_HOLDER_PAYOUT`, `PAYMENT_FAILURE`, `SCHEDULED_REFUNDS`, `REPORT_AVAILABLE`, `TRANSFER_FUNDS`, `BENEFICIARY_SETUP`, `COMPENSATE_NEGATIVE_BALANCE`. + items: + enum: + - ACCOUNT_CLOSED + - ACCOUNT_CREATED + - ACCOUNT_HOLDER_CREATED + - ACCOUNT_HOLDER_LIMIT_REACHED + - ACCOUNT_HOLDER_PAYOUT + - ACCOUNT_HOLDER_STATUS_CHANGE + - ACCOUNT_HOLDER_STORE_STATUS_CHANGE + - ACCOUNT_HOLDER_UPCOMING_DEADLINE + - ACCOUNT_HOLDER_UPDATED + - ACCOUNT_HOLDER_VERIFICATION + - ACCOUNT_UPDATED + - BENEFICIARY_SETUP + - COMPENSATE_NEGATIVE_BALANCE + - DIRECT_DEBIT_INITIATED + - PAYMENT_FAILURE + - REFUND_FUNDS_TRANSFER + - REPORT_AVAILABLE + - SCHEDULED_REFUNDS + - TRANSFER_FUNDS + type: string + type: array + exchangeMessages: + description: The notification message and related response messages. + items: + $ref: '#/components/schemas/ExchangeMessage' + type: array + invalidFields: + description: Contains field validation errors that would prevent requests from being processed. + items: + $ref: '#/components/schemas/ErrorFieldType' + type: array + notificationId: + description: The ID of the notification subscription configuration. + format: int64 + type: integer + okMessages: + description: A list of messages describing the testing steps. + items: + type: string + type: array + pspReference: + description: The reference of a request. Can be used to uniquely identify the request. + type: string + resultCode: + description: The result code. + type: string + required: + - notificationId + - eventTypes + - okMessages + - exchangeMessages + UpdateNotificationConfigurationRequest: + properties: + configurationDetails: + description: Details of the notification subscription configuration to be updated. + $ref: '#/components/schemas/NotificationConfigurationDetails' + required: + - configurationDetails + securitySchemes: + ApiKeyAuth: + in: header + name: X-API-Key + type: apiKey + BasicAuth: + scheme: basic + type: http