{
   "openapi" : "3.1.0",
   "info" : {
      "version" : "2",
      "x-publicVersion" : true,
      "title" : "Configuration webhooks",
      "description" : "Adyen sends webhooks to inform your system about events that occur in your platform. These events include, for example, when an account holder's capabilities are updated, or when a sweep configuration is created or updated. \nWhen an event occurs, Adyen makes an HTTP POST request to a URL on your server and includes the details of the event in the request body.\n\nYou can use these webhooks to build your implementation. For example, you can use this information to update internal statuses when the status of a capability is changed.",
      "termsOfService" : "https://www.adyen.com/legal/terms-and-conditions",
      "contact" : {
         "name" : "Adyen Developer Experience team",
         "url" : "https://github.com/Adyen/adyen-openapi"
      }
   },
   "tags" : [
      {
         "name" : "Account holder"
      },
      {
         "name" : "Balance account"
      },
      {
         "name" : "Payment instrument"
      },
      {
         "name" : "Card order"
      },
      {
         "name" : "Network token"
      }
   ],
   "webhooks" : {
      "balancePlatform.accountHolder.created" : {
         "post" : {
            "tags" : [
               "Account holder"
            ],
            "summary" : "Account holder created",
            "description" : "Adyen sends this webhook when you successfully [create an account holder](https://docs.adyen.com/api-explorer/balanceplatform/latest/post/accountHolders).",
            "operationId" : "post-balancePlatform.accountHolder.created",
            "x-sortIndex" : 1,
            "x-methodName" : "accountHolderCreated",
            "security" : [
               {
                  "BasicAuth" : [
                     ]
               }
            ],
            "requestBody" : {
               "content" : {
                  "application/json" : {
                     "examples" : {
                        "balancePlatform-accountHolder-created" : {
                           "$ref" : "#/components/examples/post-balancePlatform.accountHolder.created-balancePlatform-accountHolder-created"
                        },
                        "balancePlatform-accountHolder-created-lem-v3" : {
                           "$ref" : "#/components/examples/post-balancePlatform.accountHolder.created-balancePlatform-accountHolder-created-lem-v3"
                        }
                     },
                     "schema" : {
                        "$ref" : "#/components/schemas/AccountHolderNotificationRequest"
                     }
                  }
               }
            },
            "responses" : {
               "200" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/BalancePlatformNotificationResponse"
                        }
                     }
                  },
                  "description" : "OK - the request has succeeded."
               }
            }
         }
      },
      "balancePlatform.accountHolder.updated" : {
         "post" : {
            "tags" : [
               "Account holder"
            ],
            "summary" : "Account holder updated",
            "description" : "Adyen sends this webhook when you successfully [update an account holder](https://docs.adyen.com/api-explorer/balanceplatform/latest/patch/accountHolders/_id_).",
            "operationId" : "post-balancePlatform.accountHolder.updated",
            "x-sortIndex" : 2,
            "x-methodName" : "accountHolderUpdated",
            "security" : [
               {
                  "BasicAuth" : [
                     ]
               }
            ],
            "requestBody" : {
               "content" : {
                  "application/json" : {
                     "examples" : {
                        "balancePlatform-accountHolder-updated" : {
                           "$ref" : "#/components/examples/post-balancePlatform.accountHolder.updated-balancePlatform-accountHolder-updated"
                        },
                        "balancePlatform-accountHolder-updated-lem-v3" : {
                           "$ref" : "#/components/examples/post-balancePlatform.accountHolder.updated-balancePlatform-accountHolder-updated-lem-v3"
                        }
                     },
                     "schema" : {
                        "$ref" : "#/components/schemas/AccountHolderNotificationRequest"
                     }
                  }
               }
            },
            "responses" : {
               "200" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/BalancePlatformNotificationResponse"
                        }
                     }
                  },
                  "description" : "OK - the request has succeeded."
               }
            }
         }
      },
      "balancePlatform.balanceAccount.created" : {
         "post" : {
            "tags" : [
               "Balance account"
            ],
            "summary" : "Balance account created",
            "description" : "Adyen sends this webhook when you successfully [create a balance account](https://docs.adyen.com/api-explorer/balanceplatform/latest/post/balanceAccounts).",
            "operationId" : "post-balancePlatform.balanceAccount.created",
            "x-sortIndex" : 1,
            "x-methodName" : "balanceAccountCreated",
            "security" : [
               {
                  "BasicAuth" : [
                     ]
               }
            ],
            "requestBody" : {
               "content" : {
                  "application/json" : {
                     "examples" : {
                        "balancePlatform-balanceAccount-created" : {
                           "$ref" : "#/components/examples/post-balancePlatform.balanceAccount.created-balancePlatform-balanceAccount-created"
                        }
                     },
                     "schema" : {
                        "$ref" : "#/components/schemas/BalanceAccountNotificationRequest"
                     }
                  }
               }
            },
            "responses" : {
               "200" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/BalancePlatformNotificationResponse"
                        }
                     }
                  },
                  "description" : "OK - the request has succeeded."
               }
            }
         }
      },
      "balancePlatform.balanceAccount.updated" : {
         "post" : {
            "tags" : [
               "Balance account"
            ],
            "summary" : "Balance account updated",
            "description" : "Adyen sends this webhook when you successfully [update a balance account](https://docs.adyen.com/api-explorer/balanceplatform/latest/patch/balanceAccounts/_id_).",
            "operationId" : "post-balancePlatform.balanceAccount.updated",
            "x-sortIndex" : 2,
            "x-methodName" : "balanceAccountUpdated",
            "security" : [
               {
                  "BasicAuth" : [
                     ]
               }
            ],
            "requestBody" : {
               "content" : {
                  "application/json" : {
                     "examples" : {
                        "balancePlatform-balanceAccount-updated" : {
                           "$ref" : "#/components/examples/post-balancePlatform.balanceAccount.updated-balancePlatform-balanceAccount-updated"
                        }
                     },
                     "schema" : {
                        "$ref" : "#/components/schemas/BalanceAccountNotificationRequest"
                     }
                  }
               }
            },
            "responses" : {
               "200" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/BalancePlatformNotificationResponse"
                        }
                     }
                  },
                  "description" : "OK - the request has succeeded."
               }
            }
         }
      },
      "balancePlatform.balanceAccountSweep.created" : {
         "post" : {
            "tags" : [
               "Balance account"
            ],
            "summary" : "Sweep created",
            "description" : "Adyen sends this webhook when you successfully [create a sweep](https://docs.adyen.com/api-explorer/balanceplatform/latest/post/balanceAccounts/_balanceAccountId_/sweeps).",
            "operationId" : "post-balancePlatform.balanceAccountSweep.created",
            "x-sortIndex" : 3,
            "x-methodName" : "sweepCreated",
            "security" : [
               {
                  "BasicAuth" : [
                     ]
               }
            ],
            "requestBody" : {
               "content" : {
                  "application/json" : {
                     "examples" : {
                        "balancePlatform-sweep-created" : {
                           "$ref" : "#/components/examples/post-balancePlatform.balanceAccountSweep.created-balancePlatform-sweep-created"
                        }
                     },
                     "schema" : {
                        "$ref" : "#/components/schemas/SweepConfigurationNotificationRequest"
                     }
                  }
               }
            },
            "responses" : {
               "200" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/BalancePlatformNotificationResponse"
                        }
                     }
                  },
                  "description" : "OK - the request has succeeded."
               }
            }
         }
      },
      "balancePlatform.balanceAccountSweep.deleted" : {
         "post" : {
            "tags" : [
               "Balance account"
            ],
            "summary" : "Sweep deleted",
            "description" : "Adyen sends this webhook when you successfully [delete a sweep](https://docs.adyen.com/api-explorer/balanceplatform/latest/delete/balanceAccounts/_balanceAccountId_/sweeps/_sweepId_).",
            "operationId" : "post-balancePlatform.balanceAccountSweep.deleted",
            "x-sortIndex" : 5,
            "x-methodName" : "sweepDeleted",
            "security" : [
               {
                  "BasicAuth" : [
                     ]
               }
            ],
            "requestBody" : {
               "content" : {
                  "application/json" : {
                     "examples" : {
                        "balancePlatform-sweep-deleted" : {
                           "$ref" : "#/components/examples/post-balancePlatform.balanceAccountSweep.deleted-balancePlatform-sweep-deleted"
                        }
                     },
                     "schema" : {
                        "$ref" : "#/components/schemas/SweepConfigurationNotificationRequest"
                     }
                  }
               }
            },
            "responses" : {
               "200" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/BalancePlatformNotificationResponse"
                        }
                     }
                  },
                  "description" : "OK - the request has succeeded."
               }
            }
         }
      },
      "balancePlatform.balanceAccountSweep.updated" : {
         "post" : {
            "tags" : [
               "Balance account"
            ],
            "summary" : "Sweep updated",
            "description" : "Adyen sends this webhook when you successfully [update a sweep](https://docs.adyen.com/api-explorer/balanceplatform/latest/patch/balanceAccounts/_balanceAccountId_/sweeps/_sweepId_).",
            "operationId" : "post-balancePlatform.balanceAccountSweep.updated",
            "x-sortIndex" : 4,
            "x-methodName" : "sweepUpdated",
            "security" : [
               {
                  "BasicAuth" : [
                     ]
               }
            ],
            "requestBody" : {
               "content" : {
                  "application/json" : {
                     "examples" : {
                        "balancePlatform-sweep-updated" : {
                           "$ref" : "#/components/examples/post-balancePlatform.balanceAccountSweep.updated-balancePlatform-sweep-updated"
                        }
                     },
                     "schema" : {
                        "$ref" : "#/components/schemas/SweepConfigurationNotificationRequest"
                     }
                  }
               }
            },
            "responses" : {
               "200" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/BalancePlatformNotificationResponse"
                        }
                     }
                  },
                  "description" : "OK - the request has succeeded."
               }
            }
         }
      },
      "balancePlatform.cardorder.created" : {
         "post" : {
            "tags" : [
               "Card order"
            ],
            "summary" : "Card order created",
            "description" : "Adyen sends this webhook to indicate a successful creation of a card order after you create a [payment instrument](https://docs.adyen.com/api-explorer/balanceplatform/latest/post/paymentInstruments) of `type` **card** and `formFactor` **physical**.",
            "operationId" : "post-balancePlatform.cardorder.created",
            "x-sortIndex" : 1,
            "x-methodName" : "cardOrderCreated",
            "security" : [
               {
                  "BasicAuth" : [
                     ]
               }
            ],
            "requestBody" : {
               "content" : {
                  "application/json" : {
                     "examples" : {
                        "balancePlatform-cardorder-created-processing" : {
                           "$ref" : "#/components/examples/post-balancePlatform.cardorder.created-balancePlatform-cardorder-created-processing"
                        },
                        "balancePlatform-cardorder-created-rejected" : {
                           "$ref" : "#/components/examples/post-balancePlatform.cardorder.created-balancePlatform-cardorder-created-rejected"
                        }
                     },
                     "schema" : {
                        "$ref" : "#/components/schemas/CardOrderNotificationRequest"
                     }
                  }
               }
            },
            "responses" : {
               "200" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/BalancePlatformNotificationResponse"
                        }
                     }
                  },
                  "description" : "OK - the request has succeeded."
               }
            }
         }
      },
      "balancePlatform.cardorder.updated" : {
         "post" : {
            "tags" : [
               "Card order"
            ],
            "summary" : "Card order updated",
            "description" : "Adyen sends this webhook when there is an update in card order status.",
            "operationId" : "post-balancePlatform.cardorder.updated",
            "x-sortIndex" : 2,
            "x-methodName" : "cardOrderUpdated",
            "security" : [
               {
                  "BasicAuth" : [
                     ]
               }
            ],
            "requestBody" : {
               "content" : {
                  "application/json" : {
                     "examples" : {
                        "balancePlatform-cardorder-updated-produced" : {
                           "$ref" : "#/components/examples/post-balancePlatform.cardorder.updated-balancePlatform-cardorder-updated-produced"
                        },
                        "balancePlatform-cardorder-updated-shipped-card" : {
                           "$ref" : "#/components/examples/post-balancePlatform.cardorder.updated-balancePlatform-cardorder-updated-shipped-card"
                        },
                        "balancePlatform-cardorder-updated-shipped-pin" : {
                           "$ref" : "#/components/examples/post-balancePlatform.cardorder.updated-balancePlatform-cardorder-updated-shipped-pin"
                        }
                     },
                     "schema" : {
                        "$ref" : "#/components/schemas/CardOrderNotificationRequest"
                     }
                  }
               }
            },
            "responses" : {
               "200" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/BalancePlatformNotificationResponse"
                        }
                     }
                  },
                  "description" : "OK - the request has succeeded."
               }
            }
         }
      },
      "balancePlatform.networkToken.created" : {
         "post" : {
            "tags" : [
               "Network token"
            ],
            "summary" : "Network token created",
            "description" : "Adyen sends this webhook when you initiate a request for provisioning a network token.",
            "operationId" : "post-balancePlatform.networkToken.created",
            "x-sortIndex" : 1,
            "x-methodName" : "networkTokenCreated",
            "security" : [
               {
                  "BasicAuth" : [
                     ]
               }
            ],
            "requestBody" : {
               "content" : {
                  "application/json" : {
                     "schema" : {
                        "$ref" : "#/components/schemas/NetworkTokenNotificationRequest"
                     }
                  }
               }
            },
            "responses" : {
               "200" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/BalancePlatformNotificationResponse"
                        }
                     }
                  },
                  "description" : "OK - the request has succeeded."
               }
            }
         }
      },
      "balancePlatform.networkToken.updated" : {
         "post" : {
            "tags" : [
               "Network token"
            ],
            "summary" : "Network token updated",
            "description" : "Adyen sends this webhook when there is an internal status update for the network token during the provisioning process.",
            "operationId" : "post-balancePlatform.networkToken.updated",
            "x-sortIndex" : 2,
            "x-methodName" : "networkTokenUpdated",
            "security" : [
               {
                  "BasicAuth" : [
                     ]
               }
            ],
            "requestBody" : {
               "content" : {
                  "application/json" : {
                     "schema" : {
                        "$ref" : "#/components/schemas/NetworkTokenNotificationRequest"
                     }
                  }
               }
            },
            "responses" : {
               "200" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/BalancePlatformNotificationResponse"
                        }
                     }
                  },
                  "description" : "OK - the request has succeeded."
               }
            }
         }
      },
      "balancePlatform.paymentInstrument.created" : {
         "post" : {
            "tags" : [
               "Payment instrument"
            ],
            "summary" : "Payment instrument created",
            "description" : "Adyen sends this webhook when you successfully [create a payment instrument](https://docs.adyen.com/api-explorer/balanceplatform/latest/post/paymentInstruments). \n>The webhook does not include the card number when creating virtual cards. You can only get the card number in the response of the POST [/paymentInstruments](https://docs.adyen.com/api-explorer/balanceplatform/latest/post/paymentInstruments#responses-200-card-number) request.",
            "operationId" : "post-balancePlatform.paymentInstrument.created",
            "x-sortIndex" : 1,
            "x-methodName" : "paymentInstrumentCreated",
            "security" : [
               {
                  "BasicAuth" : [
                     ]
               }
            ],
            "requestBody" : {
               "content" : {
                  "application/json" : {
                     "examples" : {
                        "balancePlatform-paymentInstrument-created" : {
                           "$ref" : "#/components/examples/post-balancePlatform.paymentInstrument.created-balancePlatform-paymentInstrument-created"
                        }
                     },
                     "schema" : {
                        "$ref" : "#/components/schemas/PaymentNotificationRequest"
                     }
                  }
               }
            },
            "responses" : {
               "200" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/BalancePlatformNotificationResponse"
                        }
                     }
                  },
                  "description" : "OK - the request has succeeded."
               }
            }
         }
      },
      "balancePlatform.paymentInstrument.updated" : {
         "post" : {
            "tags" : [
               "Payment instrument"
            ],
            "summary" : "Payment instrument updated",
            "description" : "Adyen sends this webhook when you successfully [update a payment instrument](https://docs.adyen.com/api-explorer/balanceplatform/latest/patch/paymentInstruments/_id_). ",
            "operationId" : "post-balancePlatform.paymentInstrument.updated",
            "x-sortIndex" : 2,
            "x-methodName" : "paymentInstrumentUpdated",
            "security" : [
               {
                  "BasicAuth" : [
                     ]
               }
            ],
            "requestBody" : {
               "content" : {
                  "application/json" : {
                     "examples" : {
                        "balancePlatform-paymentInstrument-updated" : {
                           "$ref" : "#/components/examples/post-balancePlatform.paymentInstrument.updated-balancePlatform-paymentInstrument-updated"
                        }
                     },
                     "schema" : {
                        "$ref" : "#/components/schemas/PaymentNotificationRequest"
                     }
                  }
               }
            },
            "responses" : {
               "200" : {
                  "content" : {
                     "application/json" : {
                        "schema" : {
                           "$ref" : "#/components/schemas/BalancePlatformNotificationResponse"
                        }
                     }
                  },
                  "description" : "OK - the request has succeeded."
               }
            }
         }
      }
   },
   "components" : {
      "schemas" : {
         "AccountHolder" : {
            "additionalProperties" : false,
            "properties" : {
               "balancePlatform" : {
                  "description" : "The unique identifier of the [balance platform](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/get/balancePlatforms/{id}__queryParam_id) to which the account holder belongs. Required in the request if your API credentials can be used for multiple balance platforms.",
                  "type" : "string"
               },
               "capabilities" : {
                  "additionalProperties" : {
                     "$ref" : "#/components/schemas/AccountHolderCapability"
                  },
                  "description" : "Contains key-value pairs that specify the actions that an account holder can do in your platform. The key is a capability required for your integration. For example, **issueCard** for Issuing. The value is an object containing the settings for the capability.",
                  "type" : "object"
               },
               "contactDetails" : {
                  "deprecated" : true,
                  "description" : "Contact details of the account holder.",
                  "$ref" : "#/components/schemas/ContactDetails"
               },
               "description" : {
                  "description" : "Your description for the account holder.",
                  "maxLength" : 300,
                  "type" : "string"
               },
               "id" : {
                  "description" : "The unique identifier of the account holder.",
                  "type" : "string"
               },
               "legalEntityId" : {
                  "description" : "The unique identifier of the [legal entity](https://docs.adyen.com/api-explorer/legalentity/latest/post/legalEntities#responses-200-id) associated with the account holder. Adyen performs a verification process against the legal entity of the account holder.",
                  "type" : "string"
               },
               "metadata" : {
                  "additionalProperties" : {
                     "type" : "string"
                  },
                  "description" : "A set of key and value pairs for general use.\nThe keys do not have specific names and may be used for storing miscellaneous data as desired.\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"
               },
               "migratedAccountHolderCode" : {
                  "description" : "The unique identifier of the migrated account holder in the classic integration.",
                  "type" : "string"
               },
               "primaryBalanceAccount" : {
                  "description" : "The ID of the account holder's primary balance account. By default, this is set to the first balance account that you create for the account holder. To assign a different balance account, send a PATCH request.",
                  "type" : "string"
               },
               "reference" : {
                  "description" : "Your reference for the account holder.",
                  "maxLength" : 150,
                  "type" : "string"
               },
               "status" : {
                  "description" : "The status of the account holder.\n\nPossible values: \n\n * **active**: The account holder is active and allowed to use its capabilities. This is the initial status for account holders and balance accounts. You can change this status to **suspended** or **closed**. \n\n * **suspended**: The account holder is temporarily disabled and payouts are blocked. You can change this status to **active** or **closed**. \n\n* **closed**: The account holder and all of its capabilities are permanently disabled. This is a final status and cannot be changed.",
                  "enum" : [
                     "active",
                     "closed",
                     "suspended"
                  ],
                  "type" : "string"
               },
               "timeZone" : {
                  "description" : "The time zone of the account holder. For example, **Europe/Amsterdam**.\nDefaults to the time zone of the balance platform if no time zone is set. For possible values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).",
                  "type" : "string"
               },
               "verificationDeadlines" : {
                  "description" : "List of verification deadlines and the capabilities that will be disallowed if verification errors are not resolved.",
                  "items" : {
                     "$ref" : "#/components/schemas/VerificationDeadline"
                  },
                  "type" : "array"
               }
            },
            "required" : [
               "legalEntityId",
               "id"
            ],
            "type" : "object"
         },
         "AccountHolderCapability" : {
            "additionalProperties" : false,
            "properties" : {
               "allowed" : {
                  "description" : "Indicates whether the capability is allowed. Adyen sets this to **true** if the verification is successful and the account holder is permitted to use the capability.",
                  "type" : "boolean"
               },
               "allowedLevel" : {
                  "description" : "The capability level that is allowed for the account holder.\n\nPossible values: **notApplicable**, **low**, **medium**, **high**.",
                  "enum" : [
                     "high",
                     "low",
                     "medium",
                     "notApplicable"
                  ],
                  "type" : "string"
               },
               "allowedSettings" : {
                  "description" : "A JSON object containing the settings that are allowed for the account holder.",
                  "$ref" : "#/components/schemas/CapabilitySettings"
               },
               "enabled" : {
                  "description" : "Indicates whether the capability is enabled. If **false**, the capability is temporarily disabled for the account holder.",
                  "type" : "boolean"
               },
               "problems" : {
                  "description" : "Contains verification errors and the actions that you can take to resolve them.",
                  "items" : {
                     "$ref" : "#/components/schemas/CapabilityProblem"
                  },
                  "type" : "array"
               },
               "requested" : {
                  "description" : "Indicates whether the capability is requested. To check whether the account holder is permitted to use the capability, refer to the `allowed` field.",
                  "type" : "boolean"
               },
               "requestedLevel" : {
                  "description" : "The requested level of the capability. Some capabilities, such as those used in [card issuing](https://docs.adyen.com/issuing/add-capabilities#capability-levels), have different levels. Levels increase the capability, but also require additional checks and increased monitoring.\n\nPossible values: **notApplicable**, **low**, **medium**, **high**.",
                  "enum" : [
                     "high",
                     "low",
                     "medium",
                     "notApplicable"
                  ],
                  "type" : "string"
               },
               "requestedSettings" : {
                  "description" : "A JSON object containing the settings that were requested for the account holder.",
                  "$ref" : "#/components/schemas/CapabilitySettings"
               },
               "transferInstruments" : {
                  "description" : "Contains the status of the transfer instruments associated with this capability. ",
                  "items" : {
                     "$ref" : "#/components/schemas/AccountSupportingEntityCapability"
                  },
                  "type" : "array"
               },
               "verificationStatus" : {
                  "description" : "The status of the verification checks for the capability.\n\nPossible values:\n\n* **pending**: Adyen is running the verification.\n\n* **invalid**: The verification failed. Check if the `errors` array contains more information.\n\n* **valid**: The verification has been successfully completed.\n\n* **rejected**: Adyen has verified the information, but found reasons to not allow the capability.\n",
                  "enum" : [
                     "invalid",
                     "pending",
                     "rejected",
                     "valid"
                  ],
                  "type" : "string"
               }
            },
            "type" : "object"
         },
         "AccountHolderNotificationData" : {
            "additionalProperties" : false,
            "properties" : {
               "accountHolder" : {
                  "description" : "Contains information about the account holder resource that triggered the event.",
                  "$ref" : "#/components/schemas/AccountHolder"
               },
               "balancePlatform" : {
                  "description" : "The unique identifier of the balance platform.",
                  "type" : "string"
               }
            },
            "type" : "object"
         },
         "AccountHolderNotificationRequest" : {
            "additionalProperties" : false,
            "properties" : {
               "data" : {
                  "description" : "Contains event details.",
                  "$ref" : "#/components/schemas/AccountHolderNotificationData"
               },
               "environment" : {
                  "description" : "The environment from which the webhook originated.\n\nPossible values: **test**, **live**.",
                  "type" : "string"
               },
               "timestamp" : {
                  "description" : "When the event was queued.",
                  "format" : "date-time",
                  "type" : "string"
               },
               "type" : {
                  "description" : "Type of webhook.",
                  "enum" : [
                     "balancePlatform.accountHolder.updated",
                     "balancePlatform.accountHolder.created"
                  ],
                  "type" : "string"
               }
            },
            "required" : [
               "environment",
               "type",
               "data"
            ],
            "type" : "object"
         },
         "AccountSupportingEntityCapability" : {
            "additionalProperties" : false,
            "properties" : {
               "allowed" : {
                  "description" : "Indicates whether the supporting entity capability is allowed. Adyen sets this to **true** if the verification is successful and the account holder is permitted to use the capability.",
                  "type" : "boolean"
               },
               "allowedLevel" : {
                  "description" : "The capability level that is allowed for the account holder.\n\nPossible values: **notApplicable**, **low**, **medium**, **high**.",
                  "enum" : [
                     "high",
                     "low",
                     "medium",
                     "notApplicable"
                  ],
                  "type" : "string"
               },
               "enabled" : {
                  "description" : "Indicates whether the capability is enabled. If **false**, the capability is temporarily disabled for the account holder.",
                  "type" : "boolean"
               },
               "id" : {
                  "description" : "The ID of the supporting entity.",
                  "type" : "string"
               },
               "requested" : {
                  "description" : "Indicates whether the capability is requested. To check whether the account holder is permitted to use the capability, refer to the `allowed` field.",
                  "type" : "boolean"
               },
               "requestedLevel" : {
                  "description" : "The requested level of the capability. Some capabilities, such as those used in [card issuing](https://docs.adyen.com/issuing/add-capabilities#capability-levels), have different levels. Levels increase the capability, but also require additional checks and increased monitoring.\n\nPossible values: **notApplicable**, **low**, **medium**, **high**.",
                  "enum" : [
                     "high",
                     "low",
                     "medium",
                     "notApplicable"
                  ],
                  "type" : "string"
               },
               "verificationStatus" : {
                  "description" : "The status of the verification checks for the supporting entity capability.\n\nPossible values:\n\n* **pending**: Adyen is running the verification.\n\n* **invalid**: The verification failed. Check if the `errors` array contains more information.\n\n* **valid**: The verification has been successfully completed.\n\n* **rejected**: Adyen has verified the information, but found reasons to not allow the capability.\n",
                  "enum" : [
                     "invalid",
                     "pending",
                     "rejected",
                     "valid"
                  ],
                  "type" : "string"
               }
            },
            "type" : "object"
         },
         "Address" : {
            "additionalProperties" : false,
            "properties" : {
               "city" : {
                  "description" : "The name of the city. Maximum length: 3000 characters.",
                  "maxLength" : 3000,
                  "type" : "string"
               },
               "country" : {
                  "description" : "The two-character ISO-3166-1 alpha-2 country code. For example, **US**.\n> If you don't know the country or are not collecting the country from the shopper, provide `country` as `ZZ`.",
                  "type" : "string"
               },
               "houseNumberOrName" : {
                  "description" : "The number or name of the house. Maximum length: 3000 characters.",
                  "maxLength" : 3000,
                  "type" : "string"
               },
               "postalCode" : {
                  "description" : "A maximum of five digits for an address in the US, or a maximum of ten characters for an address in all other countries.",
                  "type" : "string"
               },
               "stateOrProvince" : {
                  "description" : "The two-character ISO 3166-2 state or province code. For example, **CA** in the US or **ON** in Canada.\n> Required for the US and Canada.",
                  "type" : "string"
               },
               "street" : {
                  "description" : "The name of the street. Maximum length: 3000 characters.\n> The house number should not be included in this field; it should be separately provided via `houseNumberOrName`.",
                  "maxLength" : 3000,
                  "type" : "string"
               }
            },
            "required" : [
               "street",
               "houseNumberOrName",
               "city",
               "postalCode",
               "country"
            ],
            "type" : "object"
         },
         "Amount" : {
            "additionalProperties" : false,
            "properties" : {
               "currency" : {
                  "description" : "The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes#currency-codes).",
                  "maxLength" : 3,
                  "minLength" : 3,
                  "type" : "string"
               },
               "value" : {
                  "description" : "The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes#minor-units).",
                  "format" : "int64",
                  "type" : "integer"
               }
            },
            "required" : [
               "value",
               "currency"
            ],
            "type" : "object"
         },
         "Authentication" : {
            "additionalProperties" : false,
            "properties" : {
               "email" : {
                  "description" : "The email address where the one-time password (OTP) is sent.",
                  "type" : "string"
               },
               "password" : {
                  "description" : "The password used for 3D Secure password-based authentication. The value must be between 1 to 30 characters and must only contain the following supported characters.\n\n* Characters between **a-z**, **A-Z**, and **0-9**\n\n* Special characters: **äöüßÄÖÜ+-*/ç%()=?!~#'\",;:$&àùòâôûáúó**",
                  "maxLength" : 30,
                  "minLength" : 1,
                  "type" : "string"
               },
               "phone" : {
                  "description" : "The phone number where the one-time password (OTP) is sent.\n\nThis object must have:\n\n* A `type` set to **mobile**.\n\n* A `number` with a valid country code.\n\n* A `number` with more than 4 digits, excluding the country code.\n\n>Make sure to verify that the card user owns the phone number.",
                  "$ref" : "#/components/schemas/Phone"
               }
            },
            "type" : "object"
         },
         "Balance" : {
            "additionalProperties" : false,
            "properties" : {
               "available" : {
                  "description" : "The balance available for use.",
                  "format" : "int64",
                  "type" : "integer"
               },
               "balance" : {
                  "description" : "The sum of the transactions that have already been settled.",
                  "format" : "int64",
                  "type" : "integer"
               },
               "currency" : {
                  "description" : "The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes) of the balance.",
                  "type" : "string"
               },
               "pending" : {
                  "description" : "The sum of the transactions that will be settled in the future.",
                  "format" : "int64",
                  "type" : "integer"
               },
               "reserved" : {
                  "description" : "The balance currently held in reserve.",
                  "format" : "int64",
                  "type" : "integer"
               }
            },
            "required" : [
               "currency",
               "balance",
               "reserved",
               "available"
            ],
            "type" : "object"
         },
         "BalanceAccount" : {
            "additionalProperties" : false,
            "properties" : {
               "accountHolderId" : {
                  "description" : "The unique identifier of the [account holder](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/accountHolders__resParam_id) associated with the balance account.",
                  "type" : "string"
               },
               "balances" : {
                  "description" : "List of balances with the amount and currency.",
                  "items" : {
                     "$ref" : "#/components/schemas/Balance"
                  },
                  "type" : "array"
               },
               "defaultCurrencyCode" : {
                  "description" : "The default three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes) of the balance account. This is the currency displayed on the Balance Account overview page in your Customer Area.\nThe default value is **EUR**.\n> After a balance account is created, you cannot change its default currency.",
                  "type" : "string"
               },
               "description" : {
                  "description" : "A human-readable description of the balance account, maximum 300 characters. You can use this parameter to distinguish between multiple balance accounts under an account holder.",
                  "maxLength" : 300,
                  "type" : "string"
               },
               "id" : {
                  "description" : "The unique identifier of the balance account.",
                  "type" : "string"
               },
               "metadata" : {
                  "additionalProperties" : {
                     "type" : "string"
                  },
                  "description" : "A set of key and value pairs for general use.\nThe keys do not have specific names and may be used for storing miscellaneous data as desired.\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"
               },
               "migratedAccountCode" : {
                  "description" : "The unique identifier of the account of the migrated account holder in the classic integration.",
                  "type" : "string"
               },
               "platformPaymentConfiguration" : {
                  "description" : "Contains key-value pairs to the configure the settlement model in a balance account.",
                  "$ref" : "#/components/schemas/PlatformPaymentConfiguration"
               },
               "reference" : {
                  "description" : "Your reference for the balance account, maximum 150 characters.",
                  "maxLength" : 150,
                  "type" : "string"
               },
               "status" : {
                  "description" : "The status of the balance account, set to **active** by default. \n",
                  "enum" : [
                     "active",
                     "closed",
                     "inactive",
                     "suspended"
                  ],
                  "type" : "string"
               },
               "timeZone" : {
                  "description" : "The time zone of the balance account. For example, **Europe/Amsterdam**.\nDefaults to the time zone of the account holder if no time zone is set. For possible values, see the [list of time zone codes](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).",
                  "type" : "string"
               }
            },
            "required" : [
               "accountHolderId",
               "id"
            ],
            "type" : "object"
         },
         "BalanceAccountNotificationData" : {
            "additionalProperties" : false,
            "properties" : {
               "balanceAccount" : {
                  "$ref" : "#/components/schemas/BalanceAccount"
               },
               "balancePlatform" : {
                  "description" : "The unique identifier of the balance platform.",
                  "type" : "string"
               }
            },
            "type" : "object"
         },
         "BalanceAccountNotificationRequest" : {
            "additionalProperties" : false,
            "properties" : {
               "data" : {
                  "description" : "Contains event details.",
                  "$ref" : "#/components/schemas/BalanceAccountNotificationData"
               },
               "environment" : {
                  "description" : "The environment from which the webhook originated.\n\nPossible values: **test**, **live**.",
                  "type" : "string"
               },
               "timestamp" : {
                  "description" : "When the event was queued.",
                  "format" : "date-time",
                  "type" : "string"
               },
               "type" : {
                  "description" : "Type of webhook.",
                  "enum" : [
                     "balancePlatform.balanceAccount.updated",
                     "balancePlatform.balanceAccount.created"
                  ],
                  "type" : "string"
               }
            },
            "required" : [
               "environment",
               "type",
               "data"
            ],
            "type" : "object"
         },
         "BalancePlatformNotificationResponse" : {
            "additionalProperties" : false,
            "properties" : {
               "notificationResponse" : {
                  "description" : "Respond with any **2xx** HTTP status code to [accept the webhook](https://docs.adyen.com/development-resources/webhooks#accept-notifications).",
                  "type" : "string"
               }
            },
            "type" : "object"
         },
         "BankAccountDetails" : {
            "additionalProperties" : false,
            "properties" : {
               "accountNumber" : {
                  "description" : "The bank account number, without separators or whitespace.",
                  "type" : "string"
               },
               "accountType" : {
                  "default" : "checking",
                  "description" : "The bank account type.\n\nPossible values: **checking** or **savings**. Defaults to **checking**.",
                  "type" : "string"
               },
               "branchNumber" : {
                  "description" : "The bank account branch number, without separators or whitespace",
                  "type" : "string"
               },
               "formFactor" : {
                  "default" : "physical",
                  "description" : "Business accounts with a `formFactor` value of **physical** are business accounts issued under the central bank of that country. The default value is **physical** for NL, US, and UK business accounts. \n\nAdyen creates a local IBAN for business accounts when the `formFactor` value is set to **virtual**. The local IBANs that are supported are for DE and FR, which reference a physical NL account, with funds being routed through the central bank of NL.",
                  "type" : "string"
               },
               "iban" : {
                  "description" : "The international bank account number as defined in the [ISO-13616](https://www.iso.org/standard/81090.html) standard.",
                  "type" : "string"
               },
               "routingNumber" : {
                  "description" : "The [routing number](https://en.wikipedia.org/wiki/ABA_routing_transit_number), without separators or whitespace.",
                  "type" : "string"
               },
               "sortCode" : {
                  "description" : "The [sort code](https://en.wikipedia.org/wiki/Sort_code), without separators or whitespace.",
                  "type" : "string"
               },
               "type" : {
                  "default" : "iban",
                  "description" : "**iban** or **usLocal** or **ukLocal**",
                  "type" : "string"
               }
            },
            "required" : [
               "type"
            ],
            "type" : "object"
         },
         "BulkAddress" : {
            "additionalProperties" : false,
            "properties" : {
               "city" : {
                  "description" : "The name of the city.",
                  "type" : "string"
               },
               "company" : {
                  "description" : "The name of the company.",
                  "type" : "string"
               },
               "country" : {
                  "description" : "The two-character ISO-3166-1 alpha-2 country code. For example, **US**.",
                  "type" : "string"
               },
               "email" : {
                  "description" : "The email address.",
                  "type" : "string"
               },
               "houseNumberOrName" : {
                  "description" : "The house number or name.",
                  "type" : "string"
               },
               "mobile" : {
                  "description" : "The full telephone number.",
                  "type" : "string"
               },
               "postalCode" : {
                  "description" : "The postal code.\n\nMaximum length:\n\n* 5 digits for addresses in the US.\n\n* 10 characters for all other countries.",
                  "type" : "string"
               },
               "stateOrProvince" : {
                  "description" : "The two-letter ISO 3166-2 state or province code.\n\nMaximum length: 2 characters for addresses in the US.",
                  "type" : "string"
               },
               "street" : {
                  "description" : "The streetname of the house.",
                  "type" : "string"
               }
            },
            "required" : [
               "country"
            ],
            "type" : "object"
         },
         "CapabilityProblem" : {
            "additionalProperties" : false,
            "properties" : {
               "entity" : {
                  "description" : "Contains the type of the entity and the corresponding ID.",
                  "$ref" : "#/components/schemas/CapabilityProblemEntity"
               },
               "verificationErrors" : {
                  "description" : "Contains information about the verification error.",
                  "items" : {
                     "$ref" : "#/components/schemas/VerificationError"
                  },
                  "type" : "array"
               }
            },
            "type" : "object"
         },
         "CapabilityProblemEntity" : {
            "additionalProperties" : false,
            "properties" : {
               "documents" : {
                  "description" : "List of document IDs to which the verification errors related to the capabilities correspond to.",
                  "items" : {
                     "type" : "string"
                  },
                  "type" : "array"
               },
               "id" : {
                  "description" : "The ID of the entity.",
                  "type" : "string"
               },
               "owner" : {
                  "description" : "Contains details about the owner of the entity that has an error.",
                  "$ref" : "#/components/schemas/CapabilityProblemEntity-recursive"
               },
               "type" : {
                  "description" : "Type of entity. \n\nPossible values: **LegalEntity**, **BankAccount**, **Document**.",
                  "enum" : [
                     "BankAccount",
                     "Document",
                     "LegalEntity"
                  ],
                  "type" : "string"
               }
            },
            "type" : "object"
         },
         "CapabilityProblemEntity-recursive" : {
            "additionalProperties" : false,
            "properties" : {
               "documents" : {
                  "description" : "List of document IDs to which the verification errors related to the capabilities correspond to.",
                  "items" : {
                     "type" : "string"
                  },
                  "type" : "array"
               },
               "id" : {
                  "description" : "The ID of the entity.",
                  "type" : "string"
               },
               "type" : {
                  "description" : "Type of entity. \n\nPossible values: **LegalEntity**, **BankAccount**, **Document**.",
                  "enum" : [
                     "BankAccount",
                     "Document",
                     "LegalEntity"
                  ],
                  "type" : "string"
               }
            },
            "required" : [
               ],
            "type" : "object"
         },
         "CapabilitySettings" : {
            "additionalProperties" : false,
            "properties" : {
               "amountPerIndustry" : {
                  "additionalProperties" : {
                     "$ref" : "#/components/schemas/Amount"
                  },
                  "description" : "",
                  "type" : "object"
               },
               "authorizedCardUsers" : {
                  "description" : "",
                  "type" : "boolean"
               },
               "fundingSource" : {
                  "description" : "",
                  "items" : {
                     "enum" : [
                        "credit",
                        "debit",
                        "prepaid"
                     ],
                     "type" : "string"
                  },
                  "type" : "array"
               },
               "interval" : {
                  "description" : "",
                  "enum" : [
                     "daily",
                     "monthly",
                     "weekly"
                  ],
                  "type" : "string"
               },
               "maxAmount" : {
                  "description" : "",
                  "$ref" : "#/components/schemas/Amount"
               }
            },
            "type" : "object"
         },
         "Card" : {
            "additionalProperties" : false,
            "properties" : {
               "authentication" : {
                  "description" : "Contains the card user's password and mobile phone number. This is required when you issue cards that can be used to make online payments within the EEA and the UK, or can be added to digital wallets. Refer to [3D Secure and digital wallets](https://docs.adyen.com/issuing/3d-secure-and-wallets) for more information.",
                  "$ref" : "#/components/schemas/Authentication"
               },
               "bin" : {
                  "description" : "The bank identification number (BIN) of the card number.",
                  "type" : "string"
               },
               "brand" : {
                  "description" : "The brand of the physical or the virtual card.\nPossible values: **visa**, **mc**.",
                  "type" : "string"
               },
               "brandVariant" : {
                  "description" : "The brand variant of the physical or the virtual card. For example, **visadebit** or **mcprepaid**.\n>Reach out to your Adyen contact to get the values relevant for your integration.",
                  "type" : "string"
               },
               "cardholderName" : {
                  "description" : "The name of the cardholder.\n Maximum length: 26 characters.",
                  "maxLength" : 26,
                  "type" : "string"
               },
               "configuration" : {
                  "description" : "Settings required when creating a physical or a virtual card. \n\nReach out to your Adyen contact to get the values that you can send in this object.",
                  "$ref" : "#/components/schemas/CardConfiguration"
               },
               "cvc" : {
                  "description" : "The CVC2 value of the card.\n> The CVC2 is not sent by default. This is only returned in the `POST` response for single-use virtual cards.",
                  "type" : "string"
               },
               "deliveryContact" : {
                  "x-addedInVersion" : "2",
                  "description" : "The delivery contact (name and address) for physical card delivery.",
                  "$ref" : "#/components/schemas/DeliveryContact"
               },
               "expiration" : {
                  "description" : "The expiration date of the card.",
                  "$ref" : "#/components/schemas/Expiry"
               },
               "formFactor" : {
                  "description" : "The form factor of the card.\nPossible values: **virtual**, **physical**.",
                  "enum" : [
                     "physical",
                     "unknown",
                     "virtual"
                  ],
                  "type" : "string"
               },
               "lastFour" : {
                  "description" : "Last last four digits of the card number.",
                  "type" : "string"
               },
               "number" : {
                  "description" : "The primary account number (PAN) of the card.\n> The PAN is masked by default and returned only for single-use virtual cards.",
                  "type" : "string"
               },
               "threeDSecure" : {
                  "description" : "The 3DS configuration of the physical or the virtual card. Possible values: **fullySupported**, **secureCorporate**.\n> Reach out to your Adyen contact to get the values relevant for your integration.",
                  "type" : "string"
               }
            },
            "required" : [
               "formFactor",
               "cardholderName",
               "brand",
               "brandVariant",
               "number"
            ],
            "type" : "object"
         },
         "CardConfiguration" : {
            "additionalProperties" : false,
            "properties" : {
               "activation" : {
                  "description" : "Overrides the activation label design ID defined in the `configurationProfileId`. The activation label is attached to the card and contains the activation instructions.",
                  "type" : "string"
               },
               "activationUrl" : {
                  "description" : "Your app's URL, if you want to activate cards through your app. For example, **my-app://ref1236a7d**. A QR code is created based on this URL, and is included in the carrier. Before you use this field, reach out to your Adyen contact to set up the QR code process. \n\nMaximum length: 255 characters.",
                  "maxLength" : 255,
                  "type" : "string"
               },
               "bulkAddress" : {
                  "description" : "Overrides the shipment bulk address defined in the `configurationProfileId`.",
                  "$ref" : "#/components/schemas/BulkAddress"
               },
               "cardImageId" : {
                  "description" : "The ID of the card image. This is the image that will be printed on the full front of the card.",
                  "type" : "string"
               },
               "carrier" : {
                  "description" : "Overrides the carrier design ID defined in the `configurationProfileId`. The carrier is the letter or packaging to which the card is attached.",
                  "type" : "string"
               },
               "carrierImageId" : {
                  "description" : "The ID of the carrier image. This is the image that will printed on the letter to which the card is attached.",
                  "type" : "string"
               },
               "configurationProfileId" : {
                  "description" : "The ID of the card configuration profile that contains the settings of the card. For example, the envelope and PIN mailer designs or the logistics company handling the shipment. All the settings in the profile are applied to the card, unless you provide other fields to override them.\n\nFor example, send the `shipmentMethod` to override the logistics company defined in the card configuration profile.",
                  "type" : "string"
               },
               "currency" : {
                  "description" : "The three-letter [ISO-4217](https://en.wikipedia.org/wiki/ISO_4217) currency code of the card. For example, **EUR**.",
                  "type" : "string"
               },
               "envelope" : {
                  "description" : "Overrides the envelope design ID defined in the `configurationProfileId`. ",
                  "type" : "string"
               },
               "insert" : {
                  "description" : "Overrides the insert design ID defined in the `configurationProfileId`. An insert is any additional material, such as marketing materials, that are shipped together with the card.",
                  "type" : "string"
               },
               "language" : {
                  "description" : "The two-letter [ISO-639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) language code of the card. For example, **en**.",
                  "type" : "string"
               },
               "logoImageId" : {
                  "description" : "The ID of the logo image. This is the image that will be printed on the partial front of the card, such as a logo on the upper right corner.",
                  "type" : "string"
               },
               "pinMailer" : {
                  "description" : "Overrides the PIN mailer design ID defined in the `configurationProfileId`. The PIN mailer is the letter on which the PIN is printed.",
                  "type" : "string"
               },
               "shipmentMethod" : {
                  "description" : "Overrides the logistics company defined in the `configurationProfileId`.",
                  "type" : "string"
               }
            },
            "required" : [
               "configurationProfileId"
            ],
            "type" : "object"
         },
         "CardOrderItem" : {
            "additionalProperties" : false,
            "properties" : {
               "balancePlatform" : {
                  "description" : "The unique identifier of the balance platform.",
                  "type" : "string"
               },
               "card" : {
                  "description" : "The status of the card delivery.\n\nPossible values: **created**, **rejected**, **processing**, **produced**, **shipped**, **delivered**, **notApplicable**, **unknown**. ",
                  "$ref" : "#/components/schemas/CardOrderItemDeliveryStatus"
               },
               "cardOrderItemId" : {
                  "description" : "The unique identifier of the card order item.",
                  "type" : "string"
               },
               "creationDate" : {
                  "description" : "The date and time when the event was triggered, in ISO 8601 extended format. For example, **2020-12-18T10:15:30+01:00**.",
                  "format" : "date-time",
                  "type" : "string"
               },
               "id" : {
                  "description" : "The ID of the resource.",
                  "type" : "string"
               },
               "paymentInstrumentId" : {
                  "description" : "The unique identifier of the payment instrument related to the card order item.",
                  "type" : "string"
               },
               "pin" : {
                  "description" : "Contains information about the status of the PIN delivery.",
                  "$ref" : "#/components/schemas/CardOrderItemDeliveryStatus"
               },
               "shippingMethod" : {
                  "description" : "The shipping method used to deliver the card or the PIN.",
                  "type" : "string"
               }
            },
            "type" : "object"
         },
         "CardOrderItemDeliveryStatus" : {
            "additionalProperties" : false,
            "properties" : {
               "errorMessage" : {
                  "description" : "An error message.",
                  "type" : "string"
               },
               "status" : {
                  "description" : "The status of the PIN delivery.",
                  "enum" : [
                     "created",
                     "delivered",
                     "notApplicable",
                     "processing",
                     "produced",
                     "rejected",
                     "shipped",
                     "unknown"
                  ],
                  "type" : "string"
               },
               "trackingNumber" : {
                  "description" : "The tracking number of the PIN delivery.",
                  "type" : "string"
               }
            },
            "type" : "object"
         },
         "CardOrderNotificationRequest" : {
            "additionalProperties" : false,
            "properties" : {
               "data" : {
                  "description" : "Contains event details.",
                  "$ref" : "#/components/schemas/CardOrderItem"
               },
               "environment" : {
                  "description" : "The environment from which the webhook originated.\n\nPossible values: **test**, **live**.",
                  "type" : "string"
               },
               "timestamp" : {
                  "description" : "When the event was queued.",
                  "format" : "date-time",
                  "type" : "string"
               },
               "type" : {
                  "description" : "Type of webhook.",
                  "enum" : [
                     "balancePlatform.cardorder.created",
                     "balancePlatform.cardorder.updated"
                  ],
                  "type" : "string"
               }
            },
            "required" : [
               "environment",
               "type",
               "data"
            ],
            "type" : "object"
         },
         "ContactDetails" : {
            "deprecated" : true,
            "additionalProperties" : false,
            "properties" : {
               "address" : {
                  "description" : "The address of the account holder.",
                  "$ref" : "#/components/schemas/Address"
               },
               "email" : {
                  "description" : "The email address of the account holder.",
                  "type" : "string"
               },
               "phone" : {
                  "description" : "The phone number of the account holder.",
                  "$ref" : "#/components/schemas/Phone"
               },
               "webAddress" : {
                  "description" : "The URL of the account holder's website.",
                  "type" : "string"
               }
            },
            "required" : [
               "email",
               "phone",
               "address"
            ],
            "type" : "object"
         },
         "DeliveryAddress" : {
            "additionalProperties" : false,
            "properties" : {
               "city" : {
                  "description" : "The name of the city.",
                  "type" : "string"
               },
               "country" : {
                  "description" : "The two-character ISO-3166-1 alpha-2 country code. For example, **US**.\n>If you don't know the country or are not collecting the country from the shopper, provide `country` as `ZZ`.",
                  "type" : "string"
               },
               "line1" : {
                  "description" : "The name of the street. Do not include the number of the building.\n\nFor example, if the address is Simon Carmiggeltstraat 6-50, provide **Simon Carmiggeltstraat**.",
                  "type" : "string"
               },
               "line2" : {
                  "description" : "The number of the building.\n\nFor example, if the address is Simon Carmiggeltstraat 6-50, provide **6-50**.",
                  "type" : "string"
               },
               "line3" : {
                  "description" : "Additional information about the delivery address.",
                  "type" : "string"
               },
               "postalCode" : {
                  "description" : "The postal code.\nMaximum length:\n* 5 digits for an address in the US.\n* 10 characters for an address in all other countries.",
                  "type" : "string"
               },
               "stateOrProvince" : {
                  "description" : "The two-letter ISO 3166-2 state or province code. For example, **CA** in the US or **ON** in Canada.\n> Required for the US and Canada.",
                  "type" : "string"
               }
            },
            "required" : [
               "country"
            ],
            "type" : "object"
         },
         "DeliveryContact" : {
            "additionalProperties" : false,
            "properties" : {
               "address" : {
                  "description" : "The address of the contact.",
                  "$ref" : "#/components/schemas/DeliveryAddress"
               },
               "company" : {
                  "x-addedInVersion" : "2",
                  "description" : "The company name of the contact.",
                  "type" : "string"
               },
               "email" : {
                  "description" : "The email address of the contact.",
                  "type" : "string"
               },
               "fullPhoneNumber" : {
                  "description" : "The full 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/Name"
               },
               "phoneNumber" : {
                  "description" : "The phone number of the contact.",
                  "$ref" : "#/components/schemas/PhoneNumber"
               },
               "webAddress" : {
                  "description" : "The URL of the contact's website.",
                  "type" : "string"
               }
            },
            "required" : [
               "name",
               "address"
            ],
            "type" : "object"
         },
         "Device" : {
            "additionalProperties" : false,
            "properties" : {
               "formFactor" : {
                  "description" : "The type of the device used for provisioning the network token.\n\nFor example, **phone**, **mobile_phone**, **watch**, **mobilephone_or_tablet**, etc",
                  "type" : "string"
               },
               "osName" : {
                  "description" : "The operating system of the device used for provisioning the network token.",
                  "type" : "string"
               }
            },
            "type" : "object"
         },
         "Expiry" : {
            "additionalProperties" : false,
            "properties" : {
               "month" : {
                  "description" : "The month in which the card will expire.",
                  "type" : "string"
               },
               "year" : {
                  "description" : "The year in which the card will expire.",
                  "type" : "string"
               }
            },
            "type" : "object"
         },
         "IbanAccountIdentification" : {
            "additionalProperties" : false,
            "properties" : {
               "iban" : {
                  "description" : "The international bank account number as defined in the [ISO-13616](https://www.iso.org/standard/81090.html) standard.",
                  "type" : "string"
               },
               "type" : {
                  "default" : "iban",
                  "description" : "**iban**",
                  "enum" : [
                     "iban"
                  ],
                  "type" : "string"
               }
            },
            "required" : [
               "type",
               "iban"
            ],
            "type" : "object"
         },
         "Name" : {
            "additionalProperties" : false,
            "properties" : {
               "firstName" : {
                  "description" : "The first name.",
                  "maxLength" : 80,
                  "type" : "string"
               },
               "lastName" : {
                  "description" : "The last name.",
                  "maxLength" : 80,
                  "type" : "string"
               }
            },
            "required" : [
               "firstName",
               "lastName"
            ],
            "type" : "object"
         },
         "NetworkTokenNotificationDataV2" : {
            "additionalProperties" : false,
            "properties" : {
               "authentication" : {
                  "description" : "Contains information about the authentication process triggered during token provisioning.",
                  "$ref" : "#/components/schemas/TokenAuthentication"
               },
               "authenticationApplied" : {
                  "description" : "Specifies whether the authentication process was triggered during token provisioning.",
                  "type" : "boolean"
               },
               "balancePlatform" : {
                  "description" : "The unique identifier of the balance platform.",
                  "type" : "string"
               },
               "decision" : {
                  "description" : "The decision about the network token provisioning.\n\nPossible values: **approved**, **declined**, **requiresAuthentication**.",
                  "type" : "string"
               },
               "id" : {
                  "description" : "The unique identifier of the network token.",
                  "type" : "string"
               },
               "paymentInstrumentId" : {
                  "description" : "The unique identifier of the payment instrument to which the network token is associated.",
                  "type" : "string"
               },
               "status" : {
                  "description" : "The status of the network token.",
                  "type" : "string"
               },
               "tokenLastFour" : {
                  "description" : "The last four digits of the network token. Use this value to help your user to identify their network token.",
                  "type" : "string"
               },
               "type" : {
                  "description" : "The type of network token.",
                  "type" : "string"
               },
               "validationFacts" : {
                  "description" : "The rules used to validate the request for provisioning the network token.",
                  "items" : {
                     "$ref" : "#/components/schemas/ValidationFacts"
                  },
                  "type" : "array"
               },
               "wallet" : {
                  "description" : "Contains information about the wallet for which the network token is provisioned.",
                  "$ref" : "#/components/schemas/Wallet"
               }
            },
            "type" : "object"
         },
         "NetworkTokenNotificationRequest" : {
            "additionalProperties" : false,
            "properties" : {
               "data" : {
                  "description" : "Contains event details.",
                  "$ref" : "#/components/schemas/NetworkTokenNotificationDataV2"
               },
               "environment" : {
                  "description" : "The environment from which the webhook originated.\n\nPossible values: **test**, **live**.",
                  "type" : "string"
               },
               "timestamp" : {
                  "description" : "When the event was queued.",
                  "format" : "date-time",
                  "type" : "string"
               },
               "type" : {
                  "description" : "The type of webhook.",
                  "enum" : [
                     "balancePlatform.networkToken.created",
                     "balancePlatform.networkToken.updated"
                  ],
                  "type" : "string"
               }
            },
            "required" : [
               "environment",
               "type",
               "data"
            ],
            "type" : "object"
         },
         "PaymentInstrument" : {
            "additionalProperties" : false,
            "properties" : {
               "additionalBankAccountIdentifications" : {
                  "deprecated" : true,
                  "x-deprecatedInVersion" : "2",
                  "x-deprecatedMessage" : "Please use `bankAccount` object instead",
                  "description" : "Contains optional, additional business account details. Returned when you create a payment instrument with `type` **bankAccount**.",
                  "items" : {
                     "oneOf" : [
                        {
                           "$ref" : "#/components/schemas/IbanAccountIdentification"
                        }
                     ]
                  },
                  "type" : "array"
               },
               "balanceAccountId" : {
                  "description" : "The unique identifier of the [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/v1/post/balanceAccounts__resParam_id) associated with the payment instrument.",
                  "type" : "string"
               },
               "bankAccount" : {
                  "description" : "Contains the business account details. Returned when you create a payment instrument with `type` **bankAccount**.",
                  "$ref" : "#/components/schemas/BankAccountDetails"
               },
               "card" : {
                  "description" : "Contains information about the card payment instrument. Returned when you create a payment instrument with `type` **card**.",
                  "$ref" : "#/components/schemas/Card"
               },
               "description" : {
                  "description" : "Your description for the payment instrument, maximum 300 characters.",
                  "maxLength" : 300,
                  "type" : "string"
               },
               "id" : {
                  "description" : "The unique identifier of the payment instrument.",
                  "type" : "string"
               },
               "issuingCountryCode" : {
                  "description" : "The two-character [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) country code where the payment instrument is issued. For example, **NL** or **US**.",
                  "type" : "string"
               },
               "paymentInstrumentGroupId" : {
                  "description" : "The unique identifier of the [payment instrument group](https://docs.adyen.com/api-explorer/#/balanceplatform/v1/post/paymentInstrumentGroups__resParam_id) to which the payment instrument belongs.",
                  "type" : "string"
               },
               "reference" : {
                  "description" : "Your reference for the payment instrument, maximum 150 characters.",
                  "maxLength" : 150,
                  "type" : "string"
               },
               "replacedById" : {
                  "description" : "The unique identifier of the payment instrument that replaced this payment instrument.",
                  "type" : "string"
               },
               "replacementOfId" : {
                  "description" : "The unique identifier of the payment instrument that is replaced by this payment instrument.",
                  "type" : "string"
               },
               "status" : {
                  "description" : "The status of the payment instrument. If a status is not specified when creating a payment instrument, it is set to **active** by default. However, there can be exceptions for cards based on the `card.formFactor` and the `issuingCountryCode`. For example, when issuing physical cards in the US, the default status is **inactive**.\n\nPossible values: \n\n * **active**:  The payment instrument is active and can be used to make payments. \n\n * **inactive**: The payment instrument is inactive and cannot be used to make payments. \n\n * **suspended**: The payment instrument is suspended, either because it was stolen or lost. \n\n * **closed**: The payment instrument is permanently closed. This action cannot be undone. \n\n",
                  "enum" : [
                     "active",
                     "closed",
                     "inactive",
                     "suspended"
                  ],
                  "type" : "string"
               },
               "statusComment" : {
                  "x-addedInVersion" : "2",
                  "description" : "The status comment provides additional information for the statusReason of the payment instrument.",
                  "type" : "string"
               },
               "statusReason" : {
                  "x-addedInVersion" : "2",
                  "description" : "The reason for the status of the payment instrument.\n\nPossible values: **accountClosure**, **damaged**, **endOfLife**, **expired**, **lost**, **stolen**, **suspectedFraud**, **transactionRule**, **other**.\nIf the reason is **other**, you must also send the `statusComment` parameter describing the status change.",
                  "enum" : [
                     "accountClosure",
                     "damaged",
                     "endOfLife",
                     "expired",
                     "lost",
                     "other",
                     "stolen",
                     "suspectedFraud",
                     "transactionRule"
                  ],
                  "type" : "string"
               },
               "type" : {
                  "description" : "The type of payment instrument.\n\nPossible values: **card**, **bankAccount**.",
                  "enum" : [
                     "bankAccount",
                     "card"
                  ],
                  "type" : "string"
               }
            },
            "required" : [
               "balanceAccountId",
               "issuingCountryCode",
               "type",
               "id"
            ],
            "type" : "object"
         },
         "PaymentInstrumentNotificationData" : {
            "additionalProperties" : false,
            "properties" : {
               "balancePlatform" : {
                  "description" : "The unique identifier of the balance platform.",
                  "type" : "string"
               },
               "paymentInstrument" : {
                  "description" : "Contains information about the payment instrument resource that triggered the event.",
                  "$ref" : "#/components/schemas/PaymentInstrument"
               }
            },
            "type" : "object"
         },
         "PaymentNotificationRequest" : {
            "additionalProperties" : false,
            "properties" : {
               "data" : {
                  "description" : "Contains event details.",
                  "$ref" : "#/components/schemas/PaymentInstrumentNotificationData"
               },
               "environment" : {
                  "description" : "The environment from which the webhook originated.\n\nPossible values: **test**, **live**.",
                  "type" : "string"
               },
               "timestamp" : {
                  "description" : "When the event was queued.",
                  "format" : "date-time",
                  "type" : "string"
               },
               "type" : {
                  "description" : "Type of webhook.",
                  "enum" : [
                     "balancePlatform.paymentInstrument.created",
                     "balancePlatform.paymentInstrument.updated"
                  ],
                  "type" : "string"
               }
            },
            "required" : [
               "environment",
               "type",
               "data"
            ],
            "type" : "object"
         },
         "Phone" : {
            "additionalProperties" : false,
            "properties" : {
               "number" : {
                  "description" : "The full phone number provided as a single string. \nFor example, **\"0031 6 11 22 33 44\"**, **\"+316/1122-3344\"**, \n\n or **\"(0031) 611223344\"**.",
                  "type" : "string"
               },
               "type" : {
                  "description" : "Type of phone number.\nPossible values: \n**Landline**, **Mobile**.\n",
                  "enum" : [
                     "landline",
                     "mobile"
                  ],
                  "type" : "string"
               }
            },
            "required" : [
               "number",
               "type"
            ],
            "type" : "object"
         },
         "PhoneNumber" : {
            "additionalProperties" : false,
            "properties" : {
               "phoneCountryCode" : {
                  "description" : "The two-character ISO-3166-1 alpha-2 country code of the phone number.\nFor example, **US** or **NL**.",
                  "type" : "string"
               },
               "phoneNumber" : {
                  "description" : "The phone number.\nThe inclusion of the phone number country code is not necessary.",
                  "type" : "string"
               },
               "phoneType" : {
                  "description" : "The type of the phone number.\nPossible values: **Landline**, **Mobile**, **SIP**, **Fax**.",
                  "enum" : [
                     "Fax",
                     "Landline",
                     "Mobile",
                     "SIP"
                  ],
                  "type" : "string"
               }
            },
            "type" : "object"
         },
         "PlatformPaymentConfiguration" : {
            "additionalProperties" : false,
            "properties" : {
               "salesDayClosingTime" : {
                  "description" : "Specifies at what time a [sales day](https://docs.adyen.com/platforms/settle-funds/sales-day-settlement#sales-day) ends for this account.\n\nPossible values: Time in **\"HH:MM\"** format. **HH** ranges from **00** to **07**. **MM** must be **00**.\n\nDefault value: **\"00:00\"**.",
                  "format" : "time",
                  "type" : "string"
               },
               "settlementDelayDays" : {
                  "description" : "Specifies after how many business days the funds in a [settlement batch](https://docs.adyen.com/platforms/settle-funds/sales-day-settlement#settlement-batch) are made available in this balance account.\n\nPossible values: **1** to **20**, or **null**.\n* Setting this value to an integer enables Sales day settlement in this balance account. See how Sales day settlement works in your [marketplace](https://docs.adyen.com/marketplaces/settle-funds/sales-day-settlement) or [platform](https://docs.adyen.com/platforms/settle-funds/sales-day-settlement).\n* Setting this value to **null** enables Pass-through settlement in this balance account. See how Pass-through settlement works in your [marketplace](https://docs.adyen.com/marketplaces/settle-funds/pass-through-settlement) or [platform](https://docs.adyen.com/platforms/settle-funds/pass-through-settlement).\n\nDefault value: **null**.",
                  "format" : "int32",
                  "type" : "integer"
               }
            },
            "type" : "object"
         },
         "RemediatingAction" : {
            "additionalProperties" : false,
            "properties" : {
               "code" : {
                  "description" : "The remediating action code.",
                  "type" : "string"
               },
               "message" : {
                  "description" : "A description of how you can resolve the verification error.",
                  "type" : "string"
               }
            },
            "type" : "object"
         },
         "Resource" : {
            "additionalProperties" : false,
            "properties" : {
               "balancePlatform" : {
                  "description" : "The unique identifier of the balance platform.",
                  "type" : "string"
               },
               "creationDate" : {
                  "description" : "The date and time when the event was triggered, in ISO 8601 extended format. For example, **2020-12-18T10:15:30+01:00**.",
                  "format" : "date-time",
                  "type" : "string"
               },
               "id" : {
                  "description" : "The ID of the resource.",
                  "type" : "string"
               }
            },
            "type" : "object"
         },
         "SweepConfigurationNotificationData" : {
            "additionalProperties" : false,
            "properties" : {
               "accountId" : {
                  "description" : "The unique identifier of the balance account for which the sweep was configured.",
                  "type" : "string"
               },
               "balancePlatform" : {
                  "description" : "The unique identifier of the balance platform.",
                  "type" : "string"
               },
               "sweep" : {
                  "description" : "Contains information about the sweep resource that triggered the event.",
                  "$ref" : "#/components/schemas/SweepConfigurationV2"
               }
            },
            "type" : "object"
         },
         "SweepConfigurationNotificationRequest" : {
            "additionalProperties" : false,
            "properties" : {
               "data" : {
                  "description" : "Contains event details.",
                  "$ref" : "#/components/schemas/SweepConfigurationNotificationData"
               },
               "environment" : {
                  "description" : "The environment from which the webhook originated.\n\nPossible values: **test**, **live**.",
                  "type" : "string"
               },
               "timestamp" : {
                  "description" : "When the event was queued.",
                  "format" : "date-time",
                  "type" : "string"
               },
               "type" : {
                  "description" : "Type of webhook.",
                  "enum" : [
                     "balancePlatform.balanceAccountSweep.created",
                     "balancePlatform.balanceAccountSweep.updated",
                     "balancePlatform.balanceAccountSweep.deleted"
                  ],
                  "type" : "string"
               }
            },
            "required" : [
               "environment",
               "type",
               "data"
            ],
            "type" : "object"
         },
         "SweepConfigurationV2" : {
            "additionalProperties" : false,
            "properties" : {
               "category" : {
                  "x-addedInVersion" : "2",
                  "description" : "The type of transfer that results from the sweep.\n\nPossible values:\n\n - **bank**: Sweep to a [transfer instrument](https://docs.adyen.com/api-explorer/#/legalentity/latest/post/transferInstruments__resParam_id).\n\n- **internal**: Transfer to another [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id) within your platform.\n\nRequired when setting `priorities`.",
                  "enum" : [
                     "bank",
                     "internal",
                     "platformPayment"
                  ],
                  "type" : "string"
               },
               "counterparty" : {
                  "description" : "The destination or the source of the funds, depending on the sweep `type`.\n\nEither a `balanceAccountId`, `transferInstrumentId`, or `merchantAccount` is required.",
                  "$ref" : "#/components/schemas/SweepCounterparty"
               },
               "currency" : {
                  "description" : "The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes) in uppercase. For example, **EUR**.\n\nThe sweep currency must match any of the [balances currencies](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/get/balanceAccounts/{id}__resParam_balances).",
                  "type" : "string"
               },
               "description" : {
                  "description" : "The message that will be used in the sweep transfer's description body with a maximum length of 140 characters.\n\nIf the message is longer after replacing placeholders, the message will be cut off at 140 characters.",
                  "type" : "string"
               },
               "id" : {
                  "description" : "The unique identifier of the sweep.",
                  "type" : "string"
               },
               "priorities" : {
                  "x-addedInVersion" : "2",
                  "description" : "The list of priorities for the bank transfer. This sets the speed at which the transfer is sent and the fees that you have to pay. You can provide multiple priorities, ordered by your preference. Adyen will try to pay out using the priorities in the given order. If the first priority is not currently supported or enabled for your platform, the system will try the next one, and so on.\n\nThe request will be accepted as long as **at least one** of the provided priorities is valid (i.e., supported by Adyen and activated for your platform). For example, if you provide `[\"wire\",\"regular\"]`, and `wire` is not supported but `regular` is, the request will still be accepted and processed.\n\nPossible values:\n\n* **regular**: for normal, low-value transactions.\n\n* **fast**: a faster way to transfer funds, but the fees are higher. Recommended for high-priority, low-value transactions.\n\n* **wire**: the fastest way to transfer funds, but this has the highest fees. Recommended for high-priority, high-value transactions.\n\n* **instant**: for instant funds transfers in [SEPA countries](https://www.ecb.europa.eu/paym/integration/retail/sepa/html/index.en.html).\n\n* **crossBorder**: for high-value transfers to a recipient in a different country.\n\n* **internal**: for transfers to an Adyen-issued business bank account (by bank account number/IBAN).\n\nSet `category` to **bank**. For more details, see optional priorities setup for [marketplaces](https://docs.adyen.com/marketplaces/payout-to-users/scheduled-payouts#optional-priorities-setup) or [platforms](https://docs.adyen.com/platforms/payout-to-users/scheduled-payouts#optional-priorities-setup).",
                  "items" : {
                     "enum" : [
                        "crossBorder",
                        "fast",
                        "instant",
                        "internal",
                        "regular",
                        "wire"
                     ],
                     "type" : "string"
                  },
                  "type" : "array"
               },
               "reason" : {
                  "description" : "The reason for disabling the sweep.",
                  "enum" : [
                     "accountHierarchyNotActive",
                     "amountLimitExceeded",
                     "approved",
                     "balanceAccountTemporarilyBlockedByTransactionRule",
                     "counterpartyAccountBlocked",
                     "counterpartyAccountClosed",
                     "counterpartyAccountNotFound",
                     "counterpartyAddressRequired",
                     "counterpartyBankTimedOut",
                     "counterpartyBankUnavailable",
                     "declined",
                     "declinedByTransactionRule",
                     "directDebitNotSupported",
                     "error",
                     "notEnoughBalance",
                     "pending",
                     "pendingApproval",
                     "pendingExecution",
                     "refusedByCounterpartyBank",
                     "refusedByCustomer",
                     "routeNotFound",
                     "scaFailed",
                     "transferInstrumentDoesNotExist",
                     "unknown"
                  ],
                  "type" : "string"
               },
               "reasonDetail" : {
                  "description" : "The human readable reason for disabling the sweep.",
                  "type" : "string"
               },
               "reference" : {
                  "description" : "Your reference for the sweep configuration.",
                  "maxLength" : 80,
                  "type" : "string"
               },
               "referenceForBeneficiary" : {
                  "description" : "The reference sent to or received from the counterparty. Only alphanumeric characters are allowed.",
                  "maxLength" : 80,
                  "type" : "string"
               },
               "schedule" : {
                  "description" : "The schedule when the `triggerAmount` is evaluated. If the balance meets the threshold, funds are pushed out of or pulled in to the balance account.",
                  "$ref" : "#/components/schemas/SweepSchedule"
               },
               "status" : {
                  "description" : "The status of the sweep. If not provided, by default, this is set to **active**.\n\nPossible values: \n\n * **active**:  the sweep is enabled and funds will be pulled in or pushed out based on the defined configuration. \n\n * **inactive**: the sweep is disabled and cannot be triggered. \n\n",
                  "enum" : [
                     "active",
                     "inactive"
                  ],
                  "type" : "string"
               },
               "sweepAmount" : {
                  "description" : "The amount that must be pushed out or pulled in. You can configure either `sweepAmount` or `targetAmount`, not both.",
                  "$ref" : "#/components/schemas/Amount"
               },
               "targetAmount" : {
                  "description" : "The amount that must be available in the balance account after the sweep. You can configure either `sweepAmount` or `targetAmount`, not both.",
                  "$ref" : "#/components/schemas/Amount"
               },
               "triggerAmount" : {
                  "description" : "The threshold amount that triggers the sweep. If not provided, by default, the amount is set to zero. The `triggerAmount` is evaluated according to the specified `schedule.type`.\n\n* For `type` **pull**, if the balance is less than or equal to the `triggerAmount`, funds are pulled in to the balance account.\n\n* For `type` **push**, if the balance is more than or equal to the `triggerAmount`, funds are pushed out of the balance account.",
                  "$ref" : "#/components/schemas/Amount"
               },
               "type" : {
                  "default" : "push",
                  "description" : "The direction of sweep, whether pushing out or pulling in funds to the balance account. If not provided, by default, this is set to **push**.\n\nPossible values:\n\n * **push**: _push out funds_ to a destination balance account or transfer instrument.\n\n * **pull**: _pull in funds_ from a source merchant account, transfer instrument, or balance account.",
                  "enum" : [
                     "pull",
                     "push"
                  ],
                  "type" : "string"
               }
            },
            "required" : [
               "id",
               "schedule",
               "currency",
               "counterparty"
            ],
            "type" : "object"
         },
         "SweepCounterparty" : {
            "additionalProperties" : false,
            "properties" : {
               "balanceAccountId" : {
                  "description" : "The unique identifier of the destination or source [balance account](https://docs.adyen.com/api-explorer/#/balanceplatform/latest/post/balanceAccounts__resParam_id).\n\n > If you are updating the counterparty from a transfer instrument to a balance account, set `transferInstrumentId` to **null**.",
                  "type" : "string"
               },
               "merchantAccount" : {
                  "description" : "The merchant account that will be the source of funds.\n\nYou can only use this parameter with sweeps of `type` **pull** and if you are processing payments with Adyen.",
                  "type" : "string"
               },
               "transferInstrumentId" : {
                  "description" : "The unique identifier of the destination or source [transfer instrument](https://docs.adyen.com/api-explorer/legalentity/latest/post/transferInstruments#responses-200-id) depending on the sweep `type`\n\n. To set up automated top-up sweeps to balance accounts in your [marketplace](https://docs.adyen.com/marketplaces/top-up-balance-account/#before-you-begin) or [platform](https://docs.adyen.com/platforms/top-up-balance-account/#before-you-begin), use this parameter in combination with a `merchantAccount` and a sweep `type` of **pull**.\n\nTop-up sweeps start a direct debit request from the source transfer instrument. Contact Adyen Support to enable this feature.> If you are updating the counterparty from a balance account to a transfer instrument, set `balanceAccountId` to **null**.",
                  "type" : "string"
               }
            },
            "type" : "object"
         },
         "SweepSchedule" : {
            "additionalProperties" : false,
            "properties" : {
               "cronExpression" : {
                  "description" : "A [cron expression](https://en.wikipedia.org/wiki/Cron#CRON_expression) that is used to set the sweep schedule. The schedule uses the time zone of the balance account. \nFor example, **30 17 * * MON** schedules a sweep every Monday at 17:30.\n\nThe expression must have five values separated by a single space in the following order:\n\n* Minute: **0-59**\n\n* Hour: **0-23**\n\n* Day of the month: **1-31**\n\n* Month: **1-12** or **JAN-DEC**\n\n* Day of the week: **0-7** (0 and 7 are Sunday) or **MON-SUN**.\n\nThe following non-standard characters are supported: **&ast;**, **L**, **#**, **W** and **/**. See [crontab guru](https://crontab.guru/) for more examples.\n\nRequired when `type` is **cron**.\n",
                  "type" : "string"
               },
               "type" : {
                  "description" : "The schedule type.\n\nPossible values:\n\n* **cron**: push out funds based on a `cronExpression`.\n\n* **daily**: push out funds daily at 07:00 AM CET.\n\n* **weekly**: push out funds every Monday at 07:00 AM CET.\n\n* **monthly**: push out funds every first of the month at 07:00 AM CET.\n\n* **balance**: execute the sweep instantly if the `triggerAmount` is reached.\n",
                  "enum" : [
                     "daily",
                     "weekly",
                     "monthly",
                     "balance",
                     "cron"
                  ],
                  "type" : "string"
               }
            },
            "required" : [
               "type"
            ],
            "type" : "object"
         },
         "TokenAuthentication" : {
            "additionalProperties" : false,
            "properties" : {
               "method" : {
                  "description" : "The method used to complete the authentication process.\n\nPossible values: **sms_OTP**, **email_OTP**.",
                  "type" : "string"
               },
               "result" : {
                  "description" : "The result of the authentication process.",
                  "type" : "string"
               }
            },
            "type" : "object"
         },
         "ValidationFacts" : {
            "additionalProperties" : false,
            "properties" : {
               "reasons" : {
                  "description" : "The reason for the `result` of the validations.\n\nThis field is only sent for `validationFacts.type` **walletValidation**, when `validationFacts.result` is **invalid**.",
                  "items" : {
                     "type" : "string"
                  },
                  "type" : "array"
               },
               "result" : {
                  "description" : "The evaluation result of the validation facts.\n\nPossible values: **valid**, **invalid**, **notValidated**, **notApplicable**.",
                  "enum" : [
                     "invalid",
                     "notApplicable",
                     "notValidated",
                     "valid"
                  ],
                  "type" : "string"
               },
               "type" : {
                  "description" : "The type of the validation fact.",
                  "type" : "string"
               }
            },
            "type" : "object"
         },
         "VerificationDeadline" : {
            "additionalProperties" : false,
            "properties" : {
               "capabilities" : {
                  "description" : "The names of the capabilities to be disallowed.",
                  "items" : {
                     "enum" : [
                        "acceptExternalFunding",
                        "acceptPspFunding",
                        "acceptTransactionInRestrictedCountries",
                        "acceptTransactionInRestrictedCountriesCommercial",
                        "acceptTransactionInRestrictedCountriesConsumer",
                        "acceptTransactionInRestrictedIndustries",
                        "acceptTransactionInRestrictedIndustriesCommercial",
                        "acceptTransactionInRestrictedIndustriesConsumer",
                        "acquiring",
                        "atmWithdrawal",
                        "atmWithdrawalCommercial",
                        "atmWithdrawalConsumer",
                        "atmWithdrawalInRestrictedCountries",
                        "atmWithdrawalInRestrictedCountriesCommercial",
                        "atmWithdrawalInRestrictedCountriesConsumer",
                        "authorisedPaymentInstrumentUser",
                        "getGrantOffers",
                        "issueBankAccount",
                        "issueCard",
                        "issueCardCommercial",
                        "issueCardConsumer",
                        "issueChargeCard",
                        "issueChargeCardCommercial",
                        "issueCreditLimit",
                        "localAcceptance",
                        "payout",
                        "payoutToTransferInstrument",
                        "processing",
                        "receiveFromBalanceAccount",
                        "receiveFromPlatformPayments",
                        "receiveFromThirdParty",
                        "receiveFromTransferInstrument",
                        "receiveGrants",
                        "receivePayments",
                        "sendToBalanceAccount",
                        "sendToThirdParty",
                        "sendToTransferInstrument",
                        "thirdPartyFunding",
                        "useCard",
                        "useCardCommercial",
                        "useCardConsumer",
                        "useCardInRestrictedCountries",
                        "useCardInRestrictedCountriesCommercial",
                        "useCardInRestrictedCountriesConsumer",
                        "useCardInRestrictedIndustries",
                        "useCardInRestrictedIndustriesCommercial",
                        "useCardInRestrictedIndustriesConsumer",
                        "useChargeCard",
                        "useChargeCardCommercial",
                        "withdrawFromAtm",
                        "withdrawFromAtmCommercial",
                        "withdrawFromAtmConsumer",
                        "withdrawFromAtmInRestrictedCountries",
                        "withdrawFromAtmInRestrictedCountriesCommercial",
                        "withdrawFromAtmInRestrictedCountriesConsumer"
                     ],
                     "type" : "string"
                  },
                  "type" : "array"
               },
               "entityIds" : {
                  "description" : "The unique identifiers of the bank account(s) that the deadline applies to",
                  "items" : {
                     "type" : "string"
                  },
                  "type" : "array"
               },
               "expiresAt" : {
                  "description" : "The date that verification is due by before capabilities are disallowed.",
                  "format" : "date-time",
                  "type" : "string"
               }
            },
            "required" : [
               "expiresAt",
               "capabilities"
            ],
            "type" : "object"
         },
         "VerificationError" : {
            "additionalProperties" : false,
            "properties" : {
               "capabilities" : {
                  "description" : "Contains the capabilities that the verification error applies to.",
                  "items" : {
                     "enum" : [
                        "acceptExternalFunding",
                        "acceptPspFunding",
                        "acceptTransactionInRestrictedCountries",
                        "acceptTransactionInRestrictedCountriesCommercial",
                        "acceptTransactionInRestrictedCountriesConsumer",
                        "acceptTransactionInRestrictedIndustries",
                        "acceptTransactionInRestrictedIndustriesCommercial",
                        "acceptTransactionInRestrictedIndustriesConsumer",
                        "acquiring",
                        "atmWithdrawal",
                        "atmWithdrawalCommercial",
                        "atmWithdrawalConsumer",
                        "atmWithdrawalInRestrictedCountries",
                        "atmWithdrawalInRestrictedCountriesCommercial",
                        "atmWithdrawalInRestrictedCountriesConsumer",
                        "authorisedPaymentInstrumentUser",
                        "getGrantOffers",
                        "issueBankAccount",
                        "issueCard",
                        "issueCardCommercial",
                        "issueCardConsumer",
                        "issueChargeCard",
                        "issueChargeCardCommercial",
                        "issueCreditLimit",
                        "localAcceptance",
                        "payout",
                        "payoutToTransferInstrument",
                        "processing",
                        "receiveFromBalanceAccount",
                        "receiveFromPlatformPayments",
                        "receiveFromThirdParty",
                        "receiveFromTransferInstrument",
                        "receiveGrants",
                        "receivePayments",
                        "sendToBalanceAccount",
                        "sendToThirdParty",
                        "sendToTransferInstrument",
                        "thirdPartyFunding",
                        "useCard",
                        "useCardCommercial",
                        "useCardConsumer",
                        "useCardInRestrictedCountries",
                        "useCardInRestrictedCountriesCommercial",
                        "useCardInRestrictedCountriesConsumer",
                        "useCardInRestrictedIndustries",
                        "useCardInRestrictedIndustriesCommercial",
                        "useCardInRestrictedIndustriesConsumer",
                        "useChargeCard",
                        "useChargeCardCommercial",
                        "withdrawFromAtm",
                        "withdrawFromAtmCommercial",
                        "withdrawFromAtmConsumer",
                        "withdrawFromAtmInRestrictedCountries",
                        "withdrawFromAtmInRestrictedCountriesCommercial",
                        "withdrawFromAtmInRestrictedCountriesConsumer"
                     ],
                     "type" : "string"
                  },
                  "type" : "array"
               },
               "code" : {
                  "description" : "The verification error code.",
                  "type" : "string"
               },
               "message" : {
                  "description" : "A description of the error.",
                  "type" : "string"
               },
               "remediatingActions" : {
                  "description" : "Contains the actions that you can take to resolve the verification error.",
                  "items" : {
                     "$ref" : "#/components/schemas/RemediatingAction"
                  },
                  "type" : "array"
               },
               "subErrors" : {
                  "description" : "Contains more granular information about the verification error.",
                  "items" : {
                     "$ref" : "#/components/schemas/VerificationError-recursive"
                  },
                  "type" : "array"
               },
               "type" : {
                  "description" : "The type of error.\n\n Possible values: **invalidInput**, **dataMissing**.",
                  "enum" : [
                     "dataMissing",
                     "invalidInput",
                     "pendingStatus"
                  ],
                  "type" : "string"
               }
            },
            "type" : "object"
         },
         "VerificationError-recursive" : {
            "additionalProperties" : false,
            "properties" : {
               "capabilities" : {
                  "description" : "Contains the capabilities that the verification error applies to.",
                  "items" : {
                     "enum" : [
                        "acceptExternalFunding",
                        "acceptPspFunding",
                        "acceptTransactionInRestrictedCountries",
                        "acceptTransactionInRestrictedCountriesCommercial",
                        "acceptTransactionInRestrictedCountriesConsumer",
                        "acceptTransactionInRestrictedIndustries",
                        "acceptTransactionInRestrictedIndustriesCommercial",
                        "acceptTransactionInRestrictedIndustriesConsumer",
                        "acquiring",
                        "atmWithdrawal",
                        "atmWithdrawalCommercial",
                        "atmWithdrawalConsumer",
                        "atmWithdrawalInRestrictedCountries",
                        "atmWithdrawalInRestrictedCountriesCommercial",
                        "atmWithdrawalInRestrictedCountriesConsumer",
                        "authorisedPaymentInstrumentUser",
                        "getGrantOffers",
                        "issueBankAccount",
                        "issueCard",
                        "issueCardCommercial",
                        "issueCardConsumer",
                        "issueChargeCard",
                        "issueChargeCardCommercial",
                        "issueCreditLimit",
                        "localAcceptance",
                        "payout",
                        "payoutToTransferInstrument",
                        "processing",
                        "receiveFromBalanceAccount",
                        "receiveFromPlatformPayments",
                        "receiveFromThirdParty",
                        "receiveFromTransferInstrument",
                        "receiveGrants",
                        "receivePayments",
                        "sendToBalanceAccount",
                        "sendToThirdParty",
                        "sendToTransferInstrument",
                        "thirdPartyFunding",
                        "useCard",
                        "useCardCommercial",
                        "useCardConsumer",
                        "useCardInRestrictedCountries",
                        "useCardInRestrictedCountriesCommercial",
                        "useCardInRestrictedCountriesConsumer",
                        "useCardInRestrictedIndustries",
                        "useCardInRestrictedIndustriesCommercial",
                        "useCardInRestrictedIndustriesConsumer",
                        "useChargeCard",
                        "useChargeCardCommercial",
                        "withdrawFromAtm",
                        "withdrawFromAtmCommercial",
                        "withdrawFromAtmConsumer",
                        "withdrawFromAtmInRestrictedCountries",
                        "withdrawFromAtmInRestrictedCountriesCommercial",
                        "withdrawFromAtmInRestrictedCountriesConsumer"
                     ],
                     "type" : "string"
                  },
                  "type" : "array"
               },
               "code" : {
                  "description" : "The verification error code.",
                  "type" : "string"
               },
               "message" : {
                  "description" : "A description of the error.",
                  "type" : "string"
               },
               "type" : {
                  "description" : "The type of error.\n\n Possible values: **invalidInput**, **dataMissing**.",
                  "enum" : [
                     "dataMissing",
                     "invalidInput",
                     "pendingStatus"
                  ],
                  "type" : "string"
               },
               "remediatingActions" : {
                  "description" : "Contains the actions that you can take to resolve the verification error.",
                  "items" : {
                     "$ref" : "#/components/schemas/RemediatingAction"
                  },
                  "type" : "array"
               }
            },
            "required" : [
               ],
            "type" : "object"
         },
         "Wallet" : {
            "additionalProperties" : false,
            "properties" : {
               "accountScore" : {
                  "description" : "The confidence score of the wallet account, calculated by the wallet provider.\n\nA high score means that account is considered trustworthy. A low score means that the account is considered suspicious.\n\nPossible values: **1** to **5**.",
                  "type" : "string"
               },
               "device" : {
                  "description" : "Contains information about the device used for provisioning the network token.",
                  "$ref" : "#/components/schemas/Device"
               },
               "deviceScore" : {
                  "description" : "The confidence score of the device, calculated by the wallet provider.\n\nA high score means that device is considered trustworthy. A low score means that the device is considered suspicious.\n\nPossible values: **1** to **5**.",
                  "type" : "string"
               },
               "provisioningMethod" : {
                  "description" : "The method used for provisioning the network token.\n\nPossible values: **push**, **manual**.",
                  "type" : "string"
               },
               "recommendationReasons" : {
                  "description" : "A list of risk indicators triggered at the time of provisioning the network token.\n\nPossible values:\n\n* **accountTooNewSinceLaunch**\n* **accountTooNew**\n* **accountCardTooNew**\n* **accountRecentlyChanged**\n* **suspiciousActivity**\n* **inactiveAccount**\n* **hasSuspendedTokens**\n* **deviceRecentlyLost**\n* **tooManyRecentAttempts**\n* **tooManyRecentTokens**\n* **tooManyDifferentCardholders**\n* **lowDeviceScore**\n* **lowAccountScore**\n* **outSideHomeTerritory**\n* **unableToAssess**\n* **accountHighRisk**\n* **lowPhoneNumberScore**\n* **unknown**",
                  "items" : {
                     "enum" : [
                        "accountCardTooNew",
                        "accountHighRisk",
                        "accountRecentlyChanged",
                        "accountTooNew",
                        "accountTooNewSinceLaunch",
                        "deviceRecentlyLost",
                        "hasSuspendedTokens",
                        "inactiveAccount",
                        "lowAccountScore",
                        "lowDeviceScore",
                        "lowPhoneNumberScore",
                        "outSideHomeTerritory",
                        "suspiciousActivity",
                        "tooManyDifferentCardholders",
                        "tooManyRecentAttempts",
                        "tooManyRecentTokens",
                        "unableToAssess",
                        "unknown"
                     ],
                     "type" : "string"
                  },
                  "type" : "array"
               },
               "type" : {
                  "description" : "The type of wallet that the network token is associated with.\n\nPossible values: **applePay**, **googlePay**, **garminPay**.",
                  "type" : "string"
               }
            },
            "type" : "object"
         }
      },
      "securitySchemes" : {
         "BasicAuth" : {
            "scheme" : "basic",
            "type" : "http"
         }
      },
      "examples" : {
         "post-balancePlatform.accountHolder.created-balancePlatform-accountHolder-created" : {
            "summary" : "Account holder created with LEM API v1, v2",
            "description" : "Example webhook when an account holder was created with LEM API v1, v2",
            "value" : {
               "data" : {
                  "balancePlatform" : "YOUR_BALANCE_PLATFORM",
                  "accountHolder" : {
                     "contactDetails" : {
                        "email" : "test@adyen.com",
                        "phone" : {
                           "number" : "0612345678",
                           "type" : "mobile"
                        },
                        "address" : {
                           "houseNumberOrName" : "23",
                           "city" : "Amsterdam",
                           "country" : "NL",
                           "postalCode" : "12345",
                           "street" : "Main Street 1"
                        }
                     },
                     "description" : "Shelly Eller",
                     "legalEntityId" : "LE00000000000000000001",
                     "reference" : "YOUR_REFERENCE-2412C",
                     "capabilities" : {
                        "issueCard" : {
                           "enabled" : true,
                           "requested" : true,
                           "allowed" : false,
                           "verificationStatus" : "pending"
                        },
                        "receiveFromTransferInstrument" : {
                           "enabled" : true,
                           "requested" : true,
                           "allowed" : false,
                           "verificationStatus" : "pending"
                        },
                        "sendToTransferInstrument" : {
                           "enabled" : true,
                           "requested" : true,
                           "allowed" : false,
                           "verificationStatus" : "pending"
                        },
                        "sendToBalanceAccount" : {
                           "enabled" : true,
                           "requested" : true,
                           "allowed" : false,
                           "verificationStatus" : "pending"
                        },
                        "receiveFromBalanceAccount" : {
                           "enabled" : true,
                           "requested" : true,
                           "allowed" : false,
                           "verificationStatus" : "pending"
                        }
                     },
                     "id" : "AH00000000000000000001",
                     "status" : "active"
                  }
               },
               "environment" : "test",
               "timestamp" : "2024-12-15T15:42:03+01:00",
               "type" : "balancePlatform.accountHolder.created"
            }
         },
         "post-balancePlatform.accountHolder.created-balancePlatform-accountHolder-created-lem-v3" : {
            "summary" : "Account holder created with LEM API v3",
            "description" : "Example webhook when an account holder was created with LEM API v3",
            "value" : {
               "data" : {
                  "balancePlatform" : "YOUR_BALANCE_PLATFORM",
                  "accountHolder" : {
                     "legalEntityId" : "LE00000000000000000001",
                     "reference" : "YOUR_REFERENCE-2412C",
                     "capabilities" : {
                        "sendToTransferInstrument" : {
                           "enabled" : true,
                           "requested" : true,
                           "allowed" : false,
                           "problems" : [
                              {
                                 "entity" : {
                                    "id" : "LE00000000000000000001",
                                    "type" : "LegalEntity"
                                 },
                                 "verificationErrors" : [
                                    {
                                       "code" : "2_902",
                                       "message" : "Terms Of Service forms are not accepted.",
                                       "remediatingActions" : [
                                          {
                                             "code" : "2_902",
                                             "message" : "Accept TOS"
                                          }
                                       ],
                                       "type" : "invalidInput"
                                    }
                                 ]
                              },
                              {
                                 "entity" : {
                                    "id" : "SE00000000000000000001",
                                    "type" : "BankAccount"
                                 },
                                 "verificationErrors" : [
                                    {
                                       "code" : "2_8037",
                                       "message" : "'bankStatement' was missing.",
                                       "remediatingActions" : [
                                          {
                                             "code" : "1_703",
                                             "message" : "Upload a bank statement"
                                          }
                                       ],
                                       "type" : "dataMissing"
                                    }
                                 ]
                              },
                              {
                                 "entity" : {
                                    "id" : "SE00000000000000000002",
                                    "type" : "BankAccount"
                                 },
                                 "verificationErrors" : [
                                    {
                                       "code" : "2_8037",
                                       "message" : "'bankStatement' was missing.",
                                       "remediatingActions" : [
                                          {
                                             "code" : "1_703",
                                             "message" : "Upload a bank statement"
                                          }
                                       ],
                                       "type" : "dataMissing"
                                    }
                                 ]
                              },
                              {
                                 "entity" : {
                                    "id" : "LE00000000000000000001",
                                    "type" : "LegalEntity"
                                 },
                                 "verificationErrors" : [
                                    {
                                       "code" : "2_8189",
                                       "message" : "'UBO through control' was missing.",
                                       "remediatingActions" : [
                                          {
                                             "code" : "2_151",
                                             "message" : "Add 'organization.entityAssociations' of type 'uboThroughControl' to legal entity"
                                          }
                                       ],
                                       "type" : "dataMissing"
                                    },
                                    {
                                       "code" : "1_50",
                                       "message" : "Organization details couldn't be verified",
                                       "subErrors" : [
                                          {
                                             "code" : "1_5016",
                                             "message" : "The tax ID number couldn't be verified",
                                             "remediatingActions" : [
                                                {
                                                   "code" : "1_500",
                                                   "message" : "Update organization details"
                                                },
                                                {
                                                   "code" : "1_501",
                                                   "message" : "Upload a registration document"
                                                }
                                             ],
                                             "type" : "invalidInput"
                                          }
                                       ],
                                       "type" : "invalidInput"
                                    },
                                    {
                                       "code" : "2_8067",
                                       "message" : "'Signatory' was missing.",
                                       "remediatingActions" : [
                                          {
                                             "code" : "2_124",
                                             "message" : "Add 'organization.entityAssociations' of type 'signatory' to legal entity"
                                          }
                                       ],
                                       "type" : "dataMissing"
                                    }
                                 ]
                              }
                           ],
                           "transferInstruments" : [
                              {
                                 "enabled" : true,
                                 "requested" : true,
                                 "allowed" : false,
                                 "id" : "SE00000000000000000001",
                                 "verificationStatus" : "pending"
                              },
                              {
                                 "enabled" : true,
                                 "requested" : true,
                                 "allowed" : false,
                                 "id" : "SE00000000000000000002",
                                 "verificationStatus" : "pending"
                              }
                           ],
                           "verificationStatus" : "pending"
                        }
                     },
                     "id" : "AH00000000000000000001",
                     "status" : "active"
                  }
               },
               "environment" : "live",
               "timestamp" : "2024-12-15T15:42:03+01:00",
               "type" : "balancePlatform.accountHolder.created"
            }
         },
         "post-balancePlatform.accountHolder.updated-balancePlatform-accountHolder-updated" : {
            "summary" : "Account holder updated with LEM API v1, v2",
            "description" : "Example webhook when an account holder was updated with LEM API v1, v2",
            "value" : {
               "data" : {
                  "balancePlatform" : "YOUR_BALANCE_PLATFORM",
                  "accountHolder" : {
                     "description" : "Shelly Eller",
                     "legalEntityId" : "LE00000000000000000001",
                     "reference" : "YOUR_REFERENCE-2412C",
                     "capabilities" : {
                        "sendToTransferInstrument" : {
                           "enabled" : true,
                           "requested" : true,
                           "allowed" : false,
                           "problems" : [
                              {
                                 "entity" : {
                                    "id" : "LE00000000000000000001",
                                    "type" : "BankAccount"
                                 },
                                 "verificationErrors" : [
                                    {
                                       "code" : "2_8037",
                                       "message" : "'bankStatement' was missing.",
                                       "remediatingActions" : [
                                          {
                                             "code" : "1_703",
                                             "message" : "Upload a bank statement"
                                          }
                                       ],
                                       "type" : "dataMissing"
                                    }
                                 ]
                              }
                           ],
                           "verificationStatus" : "invalid"
                        }
                     },
                     "id" : "AH00000000000000000001",
                     "status" : "active"
                  }
               },
               "environment" : "test",
               "timestamp" : "2024-12-15T15:42:03+01:00",
               "type" : "balancePlatform.accountHolder.updated"
            }
         },
         "post-balancePlatform.accountHolder.updated-balancePlatform-accountHolder-updated-lem-v3" : {
            "summary" : "Account holder updated with LEM API v3",
            "description" : "Example webhook when an account holder was updated with LEM API v3",
            "value" : {
               "data" : {
                  "balancePlatform" : "YOUR_BALANCE_PLATFORM",
                  "accountHolder" : {
                     "legalEntityId" : "LE00000000000000000001",
                     "reference" : "YOUR_REFERENCE-2412C",
                     "capabilities" : {
                        "sendToTransferInstrument" : {
                           "enabled" : true,
                           "requested" : true,
                           "allowed" : false,
                           "problems" : [
                              {
                                 "entity" : {
                                    "id" : "LE00000000000000000001",
                                    "type" : "LegalEntity"
                                 },
                                 "verificationErrors" : [
                                    {
                                       "code" : "2_902",
                                       "message" : "Terms Of Service forms are not accepted.",
                                       "remediatingActions" : [
                                          {
                                             "code" : "2_902",
                                             "message" : "Accept TOS"
                                          }
                                       ],
                                       "type" : "invalidInput"
                                    }
                                 ]
                              },
                              {
                                 "entity" : {
                                    "id" : "SE00000000000000000001",
                                    "type" : "BankAccount"
                                 },
                                 "verificationErrors" : [
                                    {
                                       "code" : "2_8037",
                                       "message" : "'bankStatement' was missing.",
                                       "remediatingActions" : [
                                          {
                                             "code" : "1_703",
                                             "message" : "Upload a bank statement"
                                          }
                                       ],
                                       "type" : "dataMissing"
                                    }
                                 ]
                              },
                              {
                                 "entity" : {
                                    "id" : "SE00000000000000000002",
                                    "type" : "BankAccount"
                                 },
                                 "verificationErrors" : [
                                    {
                                       "code" : "2_8037",
                                       "message" : "'bankStatement' was missing.",
                                       "remediatingActions" : [
                                          {
                                             "code" : "1_703",
                                             "message" : "Upload a bank statement"
                                          }
                                       ],
                                       "type" : "dataMissing"
                                    }
                                 ]
                              },
                              {
                                 "entity" : {
                                    "id" : "LE00000000000000000001",
                                    "type" : "LegalEntity"
                                 },
                                 "verificationErrors" : [
                                    {
                                       "code" : "2_8189",
                                       "message" : "'UBO through control' was missing.",
                                       "remediatingActions" : [
                                          {
                                             "code" : "2_151",
                                             "message" : "Add 'organization.entityAssociations' of type 'uboThroughControl' to legal entity"
                                          }
                                       ],
                                       "type" : "dataMissing"
                                    },
                                    {
                                       "code" : "1_50",
                                       "message" : "Organization details couldn't be verified",
                                       "subErrors" : [
                                          {
                                             "code" : "1_5016",
                                             "message" : "The tax ID number couldn't be verified",
                                             "remediatingActions" : [
                                                {
                                                   "code" : "1_500",
                                                   "message" : "Update organization details"
                                                },
                                                {
                                                   "code" : "1_501",
                                                   "message" : "Upload a registration document"
                                                }
                                             ],
                                             "type" : "invalidInput"
                                          }
                                       ],
                                       "type" : "invalidInput"
                                    },
                                    {
                                       "code" : "2_8067",
                                       "message" : "'Signatory' was missing.",
                                       "remediatingActions" : [
                                          {
                                             "code" : "2_124",
                                             "message" : "Add 'organization.entityAssociations' of type 'signatory' to legal entity"
                                          }
                                       ],
                                       "type" : "dataMissing"
                                    }
                                 ]
                              }
                           ],
                           "transferInstruments" : [
                              {
                                 "enabled" : true,
                                 "requested" : true,
                                 "allowed" : false,
                                 "id" : "SE00000000000000000001",
                                 "verificationStatus" : "pending"
                              },
                              {
                                 "enabled" : true,
                                 "requested" : true,
                                 "allowed" : false,
                                 "id" : "SE00000000000000000002",
                                 "verificationStatus" : "pending"
                              }
                           ],
                           "verificationStatus" : "pending"
                        }
                     },
                     "id" : "AH00000000000000000001",
                     "status" : "active"
                  }
               },
               "environment" : "live",
               "timestamp" : "2024-12-15T15:42:03+01:00",
               "type" : "balancePlatform.accountHolder.updated"
            }
         },
         "post-balancePlatform.balanceAccount.created-balancePlatform-balanceAccount-created" : {
            "summary" : "Balance account created",
            "description" : "Example webhook when a balance account was created",
            "value" : {
               "data" : {
                  "balancePlatform" : "YOUR_BALANCE_PLATFORM",
                  "balanceAccount" : {
                     "accountHolderId" : "AH00000000000000000001",
                     "defaultCurrencyCode" : "EUR",
                     "id" : "BA00000000000000000001",
                     "status" : "active"
                  }
               },
               "environment" : "test",
               "timestamp" : "2024-12-15T15:42:03+01:00",
               "type" : "balancePlatform.balanceAccount.created"
            }
         },
         "post-balancePlatform.balanceAccount.updated-balancePlatform-balanceAccount-updated" : {
            "summary" : "Balance account updated",
            "description" : "Example webhook when a balance account was updated",
            "value" : {
               "data" : {
                  "balancePlatform" : "YOUR_BALANCE_PLATFORM",
                  "balanceAccount" : {
                     "accountHolderId" : "AH00000000000000000001",
                     "defaultCurrencyCode" : "EUR",
                     "id" : "BA00000000000000000001",
                     "status" : "active",
                     "timeZone" : "Europe/Amsterdam"
                  }
               },
               "environment" : "test",
               "timestamp" : "2024-12-15T15:42:03+01:00",
               "type" : "balancePlatform.balanceAccount.updated"
            }
         },
         "post-balancePlatform.balanceAccountSweep.created-balancePlatform-sweep-created" : {
            "summary" : "Sweep created",
            "description" : "Example webhook when a sweep was created",
            "value" : {
               "data" : {
                  "balancePlatform" : "YOUR_BALANCE_PLATFORM",
                  "accountId" : "BA00000000000000000001",
                  "sweep" : {
                     "id" : "SWPC4227C224555B5FTD2NT2JV4WN5",
                     "schedule" : {
                        "type" : "weekly"
                     },
                     "status" : "active",
                     "targetAmount" : {
                        "currency" : "EUR",
                        "value" : 0
                     },
                     "triggerAmount" : {
                        "currency" : "EUR",
                        "value" : 0
                     },
                     "type" : "push",
                     "counterparty" : {
                        "balanceAccountId" : "BA00000000000000000002"
                     },
                     "currency" : "EUR"
                  }
               },
               "environment" : "test",
               "timestamp" : "2024-12-15T15:42:03+01:00",
               "type" : "balancePlatform.balanceAccountSweep.created"
            }
         },
         "post-balancePlatform.balanceAccountSweep.deleted-balancePlatform-sweep-deleted" : {
            "summary" : "Sweep deleted",
            "description" : "Example webhook when a sweep was deleted",
            "value" : {
               "data" : {
                  "balancePlatform" : "YOUR_BALANCE_PLATFORM",
                  "accountId" : "BA00000000000000000001",
                  "sweep" : {
                     "id" : "SWPC4227C224555B5FTD2NT2JV4WN5",
                     "schedule" : {
                        "type" : "weekly"
                     },
                     "status" : "active",
                     "targetAmount" : {
                        "currency" : "EUR",
                        "value" : 0
                     },
                     "triggerAmount" : {
                        "currency" : "EUR",
                        "value" : 0
                     },
                     "type" : "push",
                     "counterparty" : {
                        "balanceAccountId" : "BA00000000000000000002"
                     },
                     "currency" : "EUR"
                  }
               },
               "environment" : "test",
               "timestamp" : "2024-12-15T15:42:03+01:00",
               "type" : "balancePlatform.balanceAccountSweep.deleted"
            }
         },
         "post-balancePlatform.balanceAccountSweep.updated-balancePlatform-sweep-updated" : {
            "summary" : "Sweep updated",
            "description" : "Example webhook when a sweep was updated",
            "value" : {
               "data" : {
                  "balancePlatform" : "YOUR_BALANCE_PLATFORM",
                  "accountId" : "BA00000000000000000001",
                  "sweep" : {
                     "id" : "SWPC4227C224555B5FTD2NT2JV4WN5",
                     "schedule" : {
                        "type" : "weekly"
                     },
                     "status" : "inactive",
                     "targetAmount" : {
                        "currency" : "EUR",
                        "value" : 0
                     },
                     "triggerAmount" : {
                        "currency" : "EUR",
                        "value" : 0
                     },
                     "type" : "push",
                     "counterparty" : {
                        "balanceAccountId" : "BA00000000000000000002"
                     },
                     "currency" : "EUR"
                  }
               },
               "environment" : "test",
               "timestamp" : "2024-12-15T15:42:03+01:00",
               "type" : "balancePlatform.balanceAccountSweep.updated"
            }
         },
         "post-balancePlatform.cardorder.created-balancePlatform-cardorder-created-processing" : {
            "summary" : "Order for physical card with a PIN was successful",
            "description" : "Example webhook for when a user successfully orders a physical card with a PIN",
            "value" : {
               "data" : {
                  "card" : {
                     "status" : "processing"
                  },
                  "cardOrderItemId" : "OI00000000000000000000001",
                  "paymentInstrumentId" : "PI00000000000000000000001",
                  "pin" : {
                     "status" : "processing"
                  },
                  "shippingMethod" : "dhlInternationalExpressBulk"
               },
               "environment" : "test",
               "type" : "balancePlatform.cardorder.created"
            }
         },
         "post-balancePlatform.cardorder.created-balancePlatform-cardorder-created-rejected" : {
            "summary" : "Order for physical card with a PIN was rejected",
            "description" : "Example webhook for when a user orders a physical card with a PIN, but it is rejected",
            "value" : {
               "data" : {
                  "card" : {
                     "errorMessage" : "Unknown value in the image field",
                     "status" : "rejected"
                  },
                  "cardOrderItemId" : "OI00000000000000000000001",
                  "paymentInstrumentId" : "PI00000000000000000000001",
                  "pin" : {
                     "errorMessage" : "Unknown value in the image field",
                     "status" : "rejected"
                  },
                  "shippingMethod" : "dhlInternationalExpressBulk"
               },
               "environment" : "test",
               "type" : "balancePlatform.cardorder.created"
            }
         },
         "post-balancePlatform.cardorder.updated-balancePlatform-cardorder-updated-produced" : {
            "summary" : "Physical card with a PIN was produced",
            "description" : "Example webhook for when a physical card with a PIN has been produced",
            "value" : {
               "data" : {
                  "card" : {
                     "status" : "produced"
                  },
                  "cardOrderItemId" : "OI00000000000000000000001",
                  "paymentInstrumentId" : "PI00000000000000000000001",
                  "pin" : {
                     "status" : "produced"
                  },
                  "shippingMethod" : "dhlInternationalExpressBulk"
               },
               "environment" : "test",
               "type" : "balancePlatform.cardorder.updated"
            }
         },
         "post-balancePlatform.cardorder.updated-balancePlatform-cardorder-updated-shipped-card" : {
            "summary" : "Physical card was shipped",
            "description" : "Example webhook for when a physical card has been shipped",
            "value" : {
               "data" : {
                  "card" : {
                     "status" : "shipped",
                     "trackingNumber" : "12345ABCDEF"
                  },
                  "cardOrderItemId" : "OI00000000000000000000001",
                  "paymentInstrumentId" : "PI00000000000000000000001",
                  "shippingMethod" : "laposteLettreVert"
               },
               "environment" : "test",
               "type" : "balancePlatform.cardorder.updated"
            }
         },
         "post-balancePlatform.cardorder.updated-balancePlatform-cardorder-updated-shipped-pin" : {
            "summary" : "PIN for physical card was shipped",
            "description" : "Example webhook for when the PIN for a physical card has been shipped",
            "value" : {
               "data" : {
                  "cardOrderItemId" : "OI00000000000000000000001",
                  "paymentInstrumentId" : "PI00000000000000000000001",
                  "pin" : {
                     "status" : "shipped",
                     "trackingNumber" : "9876543210"
                  },
                  "shippingMethod" : "dhlInternationalExpressLetter"
               },
               "environment" : "test",
               "type" : "balancePlatform.cardorder.updated"
            }
         },
         "post-balancePlatform.paymentInstrument.created-balancePlatform-paymentInstrument-created" : {
            "summary" : "Card created",
            "description" : "Example webhook when a card was created",
            "value" : {
               "data" : {
                  "balancePlatform" : "YOUR_BALANCE_PLATFORM",
                  "paymentInstrument" : {
                     "balanceAccountId" : "BA00000000000000000001",
                     "description" : "C. Holden - card",
                     "issuingCountryCode" : "GB",
                     "status" : "active",
                     "type" : "card",
                     "card" : {
                        "cardholderName" : "Carl Holden",
                        "formFactor" : "virtual",
                        "brand" : "mc",
                        "brandVariant" : "mc",
                        "number" : "4010100000000000000",
                        "bin" : "555544",
                        "expiration" : {
                           "month" : "04",
                           "year" : "2024"
                        },
                        "lastFour" : "2732"
                     },
                     "id" : "PI00000000000000000001"
                  }
               },
               "environment" : "test",
               "timestamp" : "2024-12-15T15:42:03+01:00",
               "type" : "balancePlatform.paymentInstrument.created"
            }
         },
         "post-balancePlatform.paymentInstrument.updated-balancePlatform-paymentInstrument-updated" : {
            "summary" : "Card updated",
            "description" : "Example webhook when a card was updated",
            "value" : {
               "data" : {
                  "balancePlatform" : "YOUR_BALANCE_PLATFORM",
                  "paymentInstrument" : {
                     "balanceAccountId" : "BA00000000000000000001",
                     "description" : "C. Holden - card",
                     "issuingCountryCode" : "GB",
                     "status" : "suspended",
                     "type" : "card",
                     "card" : {
                        "cardholderName" : "Carl Holden",
                        "formFactor" : "virtual",
                        "brand" : "mc",
                        "brandVariant" : "mc",
                        "number" : "4010100000000000000",
                        "bin" : "555544",
                        "expiration" : {
                           "month" : "04",
                           "year" : "2024"
                        },
                        "lastFour" : "2732"
                     },
                     "id" : "PI00000000000000000001"
                  }
               },
               "environment" : "test",
               "timestamp" : "2024-12-15T15:42:03+01:00",
               "type" : "balancePlatform.paymentInstrument.updated"
            }
         }
      }
   }
}