{"title":"Configure settlement delay","category":"default","creationDate":1776961628,"content":"<p>By default, the settlement delay for transactions is configured for your entire merchant account. You can configure a different settlement delay for specific balance accounts when you create or update them using the  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/balanceplatform\/latest\/overview\" class=\" external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Configuration API<\/a>.<\/p>\n<h2>Requirements<\/h2>\n<p>Before you begin, take into account the following requirements, limitations, and preparations.<\/p>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left;\">Requirement<\/th>\n<th style=\"text-align: left;\">Description<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: left;\"><strong><a href=\"\/pt\/development-resources\/api-credentials\/roles\/\">API credential roles<\/a><\/strong><\/td>\n<td style=\"text-align: left;\">Make sure that you have the following role for the  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/balanceplatform\/latest\/overview\" class=\" external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Configuration API<\/a>: <ul><li markdown=\"1\"><strong>Balance Platform BCL role<\/strong><\/li><\/ul><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><strong><a href=\"\/pt\/development-resources\/webhooks\">Webhooks<\/a><\/strong><\/td>\n<td style=\"text-align: left;\">Subscribe to the  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/balanceplatform-webhooks\/latest\/overview\" class=\" external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Configuration webhooks<\/a> to receive the following webhooks: <ul><li markdown=\"1\"> <a href=\"https:\/\/docs.adyen.com\/api-explorer\/balanceplatform-webhooks\/latest\/post\/balancePlatform.balanceAccount.created\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">balancePlatform.balanceAccount.created<\/a><\/li><li markdown=\"1\"> <a href=\"https:\/\/docs.adyen.com\/api-explorer\/balanceplatform-webhooks\/latest\/post\/balancePlatform.balanceAccount.updated\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">balancePlatform.balanceAccount.updated<\/a><\/li><\/ul><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><strong>Limitations<\/strong><\/td>\n<td style=\"text-align: left;\">You can only specify a settlement delay of <strong>1<\/strong> day with previous approval from Adyen.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><strong>Setup steps<\/strong><\/td>\n<td style=\"text-align: left;\">You must contact your Account Manager to enable custom sales day settlement delay for your platform.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>Configure settlement delay<\/h2>\n<p>You can configure the settlement delay on new and existing balance accounts by using the  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/balanceplatform\/latest\/overview\" class=\" external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Configuration API<\/a> and including the <code>platformPaymentConfiguration<\/code> object in your request:<\/p>\n<ul>\n<li>Use POST  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/balanceplatform\/latest\/post\/balanceAccounts\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\/balanceAccounts<\/a> when you create a balance account.<\/li>\n<li>Use PATCH  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/balanceplatform\/latest\/patch\/balanceAccounts\/(id)\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\/balanceAccounts\/{id}<\/a> when you update a balance account.<\/li>\n<\/ul>\n<p>In the  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/balanceplatform\/latest\/post\/balanceAccounts#request-platformPaymentConfiguration\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">platformPaymentConfiguration<\/a> object, include the following parameters:<\/p>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left;\">Parameter<\/th>\n<th style=\"text-align: left;\">Required<\/th>\n<th style=\"text-align: left;\">Description<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: left;\"> <a href=\"https:\/\/docs.adyen.com\/api-explorer\/balanceplatform\/latest\/post\/balanceAccounts#request-platformPaymentConfiguration-settlementDelayDays\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">settlementDelayDays<\/a><\/td>\n<td style=\"text-align: left;\"><img alt=\"\" src=\"\/user\/pages\/reuse\/pfs-payments\/settle-funds\/configure-settlement-delay\/required.svg?decoding=auto&amp;fetchpriority=auto\" \/><\/td>\n<td style=\"text-align: left;\">Specifies after how many business days the funds in a settlement batch are made available.<br> Possible values: integers from <strong>1<\/strong> to <strong>20<\/strong>, and <strong>null<\/strong> (default).<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"> <a href=\"https:\/\/docs.adyen.com\/api-explorer\/balanceplatform\/latest\/post\/balanceAccounts#request-platformPaymentConfiguration-salesDayClosingTime\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">salesDayClosingTime<\/a><\/td>\n<td style=\"text-align: left;\"><img alt=\"\" src=\"\/user\/pages\/reuse\/pfs-payments\/settle-funds\/configure-settlement-delay\/conditionally-required.svg?decoding=auto&amp;fetchpriority=auto\" \/><\/td>\n<td style=\"text-align: left;\">Specifies at what time a sales day ends.<br>Possible values: Time in <code>\"HH:MM\"<\/code> format, where:<ul><li markdown=\"1\"><code>HH<\/code> ranges from <strong>00<\/strong> to <strong>07<\/strong>.<\/li><li markdown=\"1\"><code>MM<\/code> must be <strong>00<\/strong>.<\/li><\/ul>Default value: <strong>00:00<\/strong>. <div class=\"notices yellow\">If you have previously configured a specific closing time, you must include this parameter whenever you update the balance account. Otherwise, the parameter is set back to the default value.<\/div><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>The following code sample shows how you can change the sales day's settlement delay to 3 days.<\/p>\n<div data-component-wrapper=\"code-sample\">\n    <code-sample :title=\"'Change settlement delay'\" :id=\"'update-settlement-delay'\" :code-data=\"[{&quot;language&quot;:&quot;bash&quot;,&quot;tabTitle&quot;:&quot;curl&quot;,&quot;content&quot;:&quot;curl https:\\\/\\\/balanceplatform-api-test.adyen.com\\\/bcl\\\/v2\\\/balanceAccounts\\\/BA00000000000000000000001 \\\\\\n-H 'x-api-key: ADYEN_BALANCE_PLATFORM_API_KEY' \\\\\\n-H 'content-type: application\\\/json' \\\\\\n-X PATCH \\\\\\n-d '{\\n    \\&quot;platformPaymentConfiguration\\&quot;: {\\n        \\&quot;settlementDelayDays\\&quot;: 3\\n    }\\n}'&quot;},{&quot;language&quot;:&quot;java&quot;,&quot;tabTitle&quot;:&quot;Java&quot;,&quot;content&quot;:&quot;\\\/\\\/ Adyen Java API Library v38.1.0\\nimport com.adyen.Client;\\nimport com.adyen.enums.Environment;\\nimport com.adyen.model.balanceplatform.*;\\nimport java.time.OffsetDateTime;\\nimport java.util.*;\\nimport com.adyen.service.balancePlatform.*;\\n\\nClient client = new Client(\\&quot;ADYEN_BALANCE_PLATFORM_API_KEY\\&quot;, Environment.TEST);\\n\\n\\\/\\\/ Create the request object(s)\\nPlatformPaymentConfiguration platformPaymentConfiguration = new PlatformPaymentConfiguration()\\n  .settlementDelayDays(3);\\n\\nBalanceAccountUpdateRequest balanceAccountUpdateRequest = new BalanceAccountUpdateRequest()\\n  .platformPaymentConfiguration(platformPaymentConfiguration);\\n\\n\\\/\\\/ Send the request\\nBalanceAccountsApi service = new BalanceAccountsApi(client);\\nBalanceAccount response = service.updateBalanceAccount(\\&quot;id\\&quot;, balanceAccountUpdateRequest, null);&quot;},{&quot;language&quot;:&quot;php&quot;,&quot;tabTitle&quot;:&quot;PHP&quot;,&quot;content&quot;:&quot;&lt;?php\\n\\\/\\\/ Adyen PHP API Library v28.0.0\\nuse Adyen\\\\Client;\\nuse Adyen\\\\Environment;\\nuse Adyen\\\\Model\\\\BalancePlatform\\\\PlatformPaymentConfiguration;\\nuse Adyen\\\\Model\\\\BalancePlatform\\\\BalanceAccountUpdateRequest;\\nuse Adyen\\\\Service\\\\BalancePlatform\\\\BalanceAccountsApi;\\n\\n$client = new Client();\\n$client-&gt;setXApiKey(\\&quot;ADYEN_BALANCE_PLATFORM_API_KEY\\&quot;);\\n$client-&gt;setEnvironment(Environment::TEST);\\n\\n\\n\\\/\\\/ Create the request object(s)\\n$platformPaymentConfiguration = new PlatformPaymentConfiguration();\\n$platformPaymentConfiguration\\n  -&gt;setSettlementDelayDays(3);\\n\\n$balanceAccountUpdateRequest = new BalanceAccountUpdateRequest();\\n$balanceAccountUpdateRequest\\n  -&gt;setPlatformPaymentConfiguration($platformPaymentConfiguration);\\n\\n\\\/\\\/ Send the request\\n$service = new BalanceAccountsApi($client);\\n$response = $service-&gt;updateBalanceAccount('id', $balanceAccountUpdateRequest);&quot;},{&quot;language&quot;:&quot;cs&quot;,&quot;tabTitle&quot;:&quot;C#&quot;,&quot;content&quot;:&quot;\\\/\\\/ Adyen .net API Library v32.0.0\\nusing Adyen;\\nusing Environment = Adyen.Model.Environment;\\nusing Adyen.Model;\\nusing Adyen.Model.BalancePlatform;\\nusing Adyen.Service.BalancePlatform;\\n\\nvar config = new Config()\\n{\\n    XApiKey = \\&quot;ADYEN_BALANCE_PLATFORM_API_KEY\\&quot;,\\n    Environment = Environment.Test\\n};\\nvar client = new Client(config);\\n\\n\\\/\\\/ Create the request object(s)\\nPlatformPaymentConfiguration platformPaymentConfiguration = new PlatformPaymentConfiguration\\n{\\n  SettlementDelayDays = 3\\n};\\n\\nBalanceAccountUpdateRequest balanceAccountUpdateRequest = new BalanceAccountUpdateRequest\\n{\\n  PlatformPaymentConfiguration = platformPaymentConfiguration\\n};\\n\\n\\\/\\\/ Send the request\\nvar service = new BalanceAccountsService(client);\\nvar response = service.UpdateBalanceAccount(\\&quot;id\\&quot;, balanceAccountUpdateRequest);&quot;},{&quot;language&quot;:&quot;js&quot;,&quot;tabTitle&quot;:&quot;NodeJS (JavaScript)&quot;,&quot;content&quot;:&quot;\\\/\\\/ Adyen Node API Library v27.0.0\\nconst { Client, BalancePlatformAPI } = require('@adyen\\\/api-library');\\n\\nconst client = new Client({ apiKey: \\&quot;ADYEN_BALANCE_PLATFORM_API_KEY\\&quot;, environment: \\&quot;TEST\\&quot; });\\n\\n\\\/\\\/ Create the request object(s)\\nconst balanceAccountUpdateRequest = {\\n  platformPaymentConfiguration: {\\n    settlementDelayDays: 3\\n  }\\n}\\n\\n\\\/\\\/ Send the request\\nconst balancePlatformAPI = new BalancePlatformAPI(client);\\nconst response = balancePlatformAPI.BalanceAccountsApi.updateBalanceAccount(\\&quot;id\\&quot;, balanceAccountUpdateRequest);&quot;},{&quot;language&quot;:&quot;go&quot;,&quot;tabTitle&quot;:&quot;Go&quot;,&quot;content&quot;:&quot;\\\/\\\/ Adyen Go API Library v21.0.0\\nimport (\\n  \\&quot;context\\&quot;\\n  \\&quot;github.com\\\/adyen\\\/adyen-go-api-library\\\/v21\\\/src\\\/common\\&quot;\\n  \\&quot;github.com\\\/adyen\\\/adyen-go-api-library\\\/v21\\\/src\\\/adyen\\&quot;\\n  \\&quot;github.com\\\/adyen\\\/adyen-go-api-library\\\/v21\\\/src\\\/balancePlatform\\&quot;\\n)\\nclient := adyen.NewClient(&amp;common.Config{\\n  ApiKey:      \\&quot;ADYEN_BALANCE_PLATFORM_API_KEY\\&quot;,\\n  Environment: common.TestEnv,\\n})\\n\\n\\\/\\\/ Create the request object(s)\\nplatformPaymentConfiguration := balancePlatform.PlatformPaymentConfiguration{\\n  SettlementDelayDays: common.PtrInt32(3),\\n}\\n\\nbalanceAccountUpdateRequest := balancePlatform.BalanceAccountUpdateRequest{\\n  PlatformPaymentConfiguration: &amp;platformPaymentConfiguration,\\n}\\n\\n\\\/\\\/ Send the request\\nservice := client.BalancePlatform()\\nreq := service.BalanceAccountsApi.UpdateBalanceAccountInput(\\&quot;id\\&quot;).BalanceAccountUpdateRequest(balanceAccountUpdateRequest)\\nres, httpRes, err := service.BalanceAccountsApi.UpdateBalanceAccount(context.Background(), req)&quot;},{&quot;language&quot;:&quot;py&quot;,&quot;tabTitle&quot;:&quot;Python&quot;,&quot;content&quot;:&quot;# Adyen Python API Library v13.5.0\\nimport Adyen\\n\\nadyen = Adyen.Adyen()\\nadyen.client.xapikey = \\&quot;ADYEN_BALANCE_PLATFORM_API_KEY\\&quot;\\nadyen.client.platform = \\&quot;test\\&quot; # The environment to use library in.\\n\\n# Create the request object(s)\\njson_request = {\\n  \\&quot;platformPaymentConfiguration\\&quot;: {\\n    \\&quot;settlementDelayDays\\&quot;: 3\\n  }\\n}\\n\\n# Send the request\\nresult = adyen.balancePlatform.balance_accounts_api.update_balance_account(request=json_request, id=\\&quot;id\\&quot;)&quot;},{&quot;language&quot;:&quot;rb&quot;,&quot;tabTitle&quot;:&quot;Ruby&quot;,&quot;content&quot;:&quot;# Adyen Ruby API Library v10.3.0\\nrequire \\&quot;adyen-ruby-api-library\\&quot;\\n\\nadyen = Adyen::Client.new\\nadyen.api_key = 'ADYEN_BALANCE_PLATFORM_API_KEY'\\nadyen.env = :test # Set to \\&quot;live\\&quot; for live environment\\n\\n# Create the request object(s)\\nrequest_body = {\\n  :platformPaymentConfiguration =&gt; {\\n    :settlementDelayDays =&gt; 3\\n  }\\n}\\n\\n# Send the request\\nresult = adyen.balancePlatform.balance_accounts_api.update_balance_account(request_body, 'id')&quot;},{&quot;language&quot;:&quot;ts&quot;,&quot;tabTitle&quot;:&quot;NodeJS (TypeScript)&quot;,&quot;content&quot;:&quot;\\\/\\\/ Adyen Node API Library v27.0.0\\nimport { Client, BalancePlatformAPI, Types } from \\&quot;@adyen\\\/api-library\\&quot;;\\n\\nconst client = new Client({ apiKey: \\&quot;ADYEN_BALANCE_PLATFORM_API_KEY\\&quot;, environment: \\&quot;TEST\\&quot; });\\n\\n\\\/\\\/ Create the request object(s)\\nconst platformPaymentConfiguration: Types.balancePlatform.PlatformPaymentConfiguration = {\\n  settlementDelayDays: 3\\n};\\n\\nconst balanceAccountUpdateRequest: Types.balancePlatform.BalanceAccountUpdateRequest = {\\n  platformPaymentConfiguration: platformPaymentConfiguration\\n};\\n\\n\\\/\\\/ Send the request\\nconst balancePlatformAPI = new BalancePlatformAPI(client);\\nconst response = balancePlatformAPI.BalanceAccountsApi.updateBalanceAccount(\\&quot;id\\&quot;, balanceAccountUpdateRequest);&quot;}]\" :enable-copy-link-to-code-block=\"true\" :code-sample-card-size=\"'fullsize'\"><\/code-sample>\n<\/div>\n<p>If the request was successful, the response contains the <code>platformPaymentConfiguration<\/code> object with the data you provided.<\/p>\n<div data-component-wrapper=\"code-sample\">\n    <code-sample :title=\"'Response \u2014 Balance account updated with sales day settlement'\" :id=\"''\" :code-data='[{\"language\":\"json\",\"tabTitle\":\"\",\"content\":\"{\\n    \\\"accountHolderId\\\": \\\"AH00000000000000000000001\\\",\\n    \\\"defaultCurrencyCode\\\": \\\"EUR\\\",\\n    \\\"description\\\": \\\"S.Eller - Main balance account\\\",\\n    \\\"platformPaymentConfiguration\\\": {\\n        \\\"settlementDelayDays\\\": 3\\n    },\\n    \\\"timeZone\\\": \\\"Europe\\\/Amsterdam\\\",\\n    \\\"balances\\\": [\\n        {\\n            \\\"available\\\": 0,\\n            \\\"balance\\\": 0,\\n            \\\"currency\\\": \\\"EUR\\\",\\n            \\\"reserved\\\": 0\\n        }\\n    ],\\n    \\\"id\\\": \\\"BA00000000000000000000001\\\",\\n    \\\"status\\\": \\\"active\\\"\\n}\"}]' :enable-copy-link-to-code-block=\"true\" :code-sample-card-size=\"'fullsize'\"><\/code-sample>\n<\/div>\n<h2>Webhooks<\/h2>\n<p>After the new settlement delay is applied to the balance account, we send one of the following webhooks to your server:<\/p>\n<ul>\n<li>For a new balance account, we send the  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/balanceplatform-webhooks\/latest\/post\/balancePlatform.balanceAccount.created\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">balancePlatform.balanceAccount.created<\/a> webhook.<\/li>\n<li>For existing balance accounts, we send the  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/balanceplatform-webhooks\/latest\/post\/balancePlatform.balanceAccount.updated\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">balancePlatform.balanceAccount.updated<\/a> webhook.<\/li>\n<\/ul>\n<div data-component-wrapper=\"code-sample\">\n    <code-sample :title=\"'Balance account updated'\" :id=\"''\" :code-data='[{\"language\":\"json\",\"tabTitle\":\"\",\"content\":\"{\\n  \\\"data\\\": {\\n    \\\"balancePlatform\\\": \\\"YOUR_BALANCE_PLATFORM\\\",\\n    \\\"balanceAccount\\\": {\\n      \\\"accountHolderId\\\": \\\"AH00000000000000000001\\\",\\n      \\\"defaultCurrencyCode\\\": \\\"EUR\\\",\\n      \\\"id\\\": \\\"BA00000000000000000001\\\",\\n      \\\"status\\\": \\\"active\\\",\\n      \\\"platformPaymentConfiguration\\\": {\\n        \\\"settlementDelayDays\\\": 3\\n      },\\n      \\\"timeZone\\\": \\\"Europe\\\/Amsterdam\\\"\\n    }\\n  },\\n  \\\"environment\\\": \\\"test\\\",\\n  \\\"timestamp\\\": \\\"2025-04-15T15:42:03+01:00\\\",\\n  \\\"type\\\": \\\"balancePlatform.balanceAccount.updated\\\"\\n}\"}]' :enable-copy-link-to-code-block=\"true\" :code-sample-card-size=\"'fullsize'\"><\/code-sample>\n<\/div>\n<p><\/p>","url":"https:\/\/docs.adyen.com\/pt\/platforms\/settle-funds\/configure-settlement-delay","articleFields":{"description":"Learn how you can change the default settlement delay for you users' balance accounts.","feedback_component":true,"parameters":{"directoryPath":"\/platforms","model":"platform"}},"algolia":{"url":"https:\/\/docs.adyen.com\/pt\/platforms\/settle-funds\/configure-settlement-delay","title":"Configure settlement delay","content":"By default, the settlement delay for transactions is configured for your entire merchant account. You can configure a different settlement delay for specific balance accounts when you create or update them using the  Configuration API.\nRequirements\nBefore you begin, take into account the following requirements, limitations, and preparations.\n\n\n\nRequirement\nDescription\n\n\n\n\nAPI credential roles\nMake sure that you have the following role for the  Configuration API: Balance Platform BCL role\n\n\nWebhooks\nSubscribe to the  Configuration webhooks to receive the following webhooks:  balancePlatform.balanceAccount.created balancePlatform.balanceAccount.updated\n\n\nLimitations\nYou can only specify a settlement delay of 1 day with previous approval from Adyen.\n\n\nSetup steps\nYou must contact your Account Manager to enable custom sales day settlement delay for your platform.\n\n\n\nConfigure settlement delay\nYou can configure the settlement delay on new and existing balance accounts by using the  Configuration API and including the platformPaymentConfiguration object in your request:\n\nUse POST  \/balanceAccounts when you create a balance account.\nUse PATCH  \/balanceAccounts\/{id} when you update a balance account.\n\nIn the  platformPaymentConfiguration object, include the following parameters:\n\n\n\nParameter\nRequired\nDescription\n\n\n\n\n settlementDelayDays\n\nSpecifies after how many business days the funds in a settlement batch are made available. Possible values: integers from 1 to 20, and null (default).\n\n\n salesDayClosingTime\n\nSpecifies at what time a sales day ends.Possible values: Time in \"HH:MM\" format, where:HH ranges from 00 to 07.MM must be 00.Default value: 00:00. If you have previously configured a specific closing time, you must include this parameter whenever you update the balance account. Otherwise, the parameter is set back to the default value.\n\n\n\nThe following code sample shows how you can change the sales day's settlement delay to 3 days.\n\n    \n\nIf the request was successful, the response contains the platformPaymentConfiguration object with the data you provided.\n\n    \n\nWebhooks\nAfter the new settlement delay is applied to the balance account, we send one of the following webhooks to your server:\n\nFor a new balance account, we send the  balancePlatform.balanceAccount.created webhook.\nFor existing balance accounts, we send the  balancePlatform.balanceAccount.updated webhook.\n\n\n    \n\n","type":"page","locale":"pt","boost":17,"hierarchy":{"lvl0":"Home","lvl1":"Platforms","lvl2":"Settle funds","lvl3":"Configure settlement delay"},"hierarchy_url":{"lvl0":"https:\/\/docs.adyen.com\/pt","lvl1":"https:\/\/docs.adyen.com\/pt\/platforms","lvl2":"https:\/\/docs.adyen.com\/pt\/platforms\/settle-funds","lvl3":"\/pt\/platforms\/settle-funds\/configure-settlement-delay"},"levels":4,"category":"Platforms","category_color":"green","tags":["Configure","settlement","delay"]}}
