{"title":"View available limits","category":"default","creationDate":1571779440,"content":"<p>Adyen allows you to set specific limits that regulate outgoing payments made from your users' payment instruments (Adyen-issued cards). These limits can be configured using <a href=\"\/issuing\/authorisation\/transaction-rules\">transaction rules<\/a> or <a href=\"\/issuing\/verification-overview\/capabilities#capability-levels\">capability levels<\/a>.<\/p>\n<ul>\n<li>\n<p>Using transaction rules, you can set limits on:<\/p>\n<ul>\n<li>The total amount spent using the payment instrument (Adyen-issued card), within a specified time interval. This is called an <strong>amount limit<\/strong>.<\/li>\n<li>The total number of payments made using the payment instrument (Adyen-issued card), within a specified time interval. This is called a <strong>count limit<\/strong>.<\/li>\n<\/ul>\n<\/li>\n<li>\n<p>Using capability levels, you can set limits on:<\/p>\n<ul>\n<li>The total amount your user can withdraw from an ATM using their payment instrument (Adyen-issued card).<\/li>\n<li>The total amount your user can spend or withdraw using their payment instrument (Adyen-issued card) in restricted countries.<\/li>\n<li>The total amount your user can spend using their payment instrument (Adyen-issued card) in restricted industries.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>Within the time interval that these limits are active, you can make API calls to check the details of these limits. These include:<\/p>\n<ul>\n<li>The total limit<\/li>\n<li>How much of the limit is already used<\/li>\n<li>How much of the limit is remaining<\/li>\n<li>Where the limit is defined<\/li>\n<li>Details of time interval in which the limit is active<\/li>\n<\/ul>\n<h3>Benefits of viewing existing limits<\/h3>\n<p>Checking the details of your existing limits allows you to:<\/p>\n<ol>\n<li>Prevent unexpected payment failures that can occur when your user surpasses their limit. For example, you can provide your user with a warning when they are nearing their total limit.<\/li>\n<li>Help your users keep track of and regulate their spending within certain time intervals. For example, you can allow your users to see how much of their budget they have left after every payment they make.<\/li>\n<li>Identify situations where a limit is too high or too low. For example, if you notice that your users are consistently exceeding their limits, you can decide to increase this limit for them.<\/li>\n<\/ol>\n<h2>Requirements<\/h2>\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>Integration type<\/strong><\/td>\n<td style=\"text-align: left;\">Adyen Issuing<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><strong><a href=\"\/development-resources\/api-credentials\/roles\/\">API credential roles<\/a><\/strong><\/td>\n<td style=\"text-align: left;\">Make sure that you have access to the  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/balanceplatform\/latest\/overview\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Configuration API<\/a> with following role: <ul><li markdown=\"1\"><strong>Bank Manage TransactionRules role<\/strong><\/li><\/ul><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><strong>Limitations<\/strong><\/td>\n<td style=\"text-align: left;\"><ul><li markdown=\"1\">This feature is only supported for limits configured using the  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/balanceplatform\/latest\/post\/transactionRules#request-ruleRestrictions-totalAmount\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">totalAmount<\/a> or  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/balanceplatform\/latest\/post\/transactionRules#request-ruleRestrictions-matchingTransactions\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">matchingTransactions<\/a> rule restrictions. Transaction rules that use the  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/balanceplatform\/latest\/post\/transactionRules#request-ruleRestrictions-matchingValues\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">matchingValues<\/a> rule restriction combined with  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/balanceplatform\/latest\/post\/transactionRules#request-ruleRestrictions-matchingTransactions\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">matchingTransactions<\/a> are not taken into account when calculating the available limits.<\/li><li markdown=\"1\">This feature is only supported for limits that are <a href=\"\/issuing\/authorisation\/transaction-rules#accumulate-data\">aggregated at the payment instrument level<\/a>. Limits that are aggregated at higher levels are not returned in the response.<\/li><li markdown=\"1\">This feature is not supported for the <code>blockList<\/code> rule type, because this rule type does not use limits.<\/li><\/ul><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><strong>Setup steps<\/strong><\/td>\n<td style=\"text-align: left;\">Make sure that you have <a href=\"\/issuing\/authorisation\/transaction-rules\/create-and-manage\">created a transaction rule<\/a> with a  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/balanceplatform\/latest\/post\/transactionRules#request-ruleRestrictions-totalAmount\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">totalAmount<\/a> or  <a href=\"https:\/\/docs.adyen.com\/api-explorer\/balanceplatform\/latest\/post\/transactionRules#request-ruleRestrictions-matchingTransactions\" class=\"codeLabel  external-link no-image\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">matchingTransactions<\/a> rule restriction.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>Calculating limits<\/h2>\n<p>When you set restrictions on the total amount (amount limit) or total number of transactions (count limit), Adyen calculates the available limit as follows:<\/p>\n<ul>\n<li><strong>Amount limit<\/strong>: Adyen uses the total amount that has been <strong>authorized<\/strong> using the Adyen-issued card.<\/li>\n<li><strong>Count limit<\/strong>: Adyen uses the total number of transactions that have been <strong>authorized<\/strong> using the Adyen-issued card.<\/li>\n<\/ul>\n<p>All authorizations are deducted from the available limit, regardless of whether they have been captured or not. If an authorization expires or is canceled, then the amount or count is released and added back to the available limit.<\/p>\n<h2>View available limits<\/h2>\n<p>To view your available limits:<\/p>\n<ol>\n<li>\n<p>Make a GET <code>\/paymentinstruments\/{id}\/limits<\/code> request, specifying the following parameters:<\/p>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left;\">Parameter<\/th>\n<th style=\"text-align: center;\">Type<\/th>\n<th style=\"text-align: center;\">Required<\/th>\n<th style=\"text-align: left;\">Description<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: left;\"><code>id<\/code><\/td>\n<td style=\"text-align: center;\">Path<\/td>\n<td style=\"text-align: center;\"><span class=\"hint--bottom\" data-hint=\"Required\" markdown=\"1\"><img style=\"width: 25px;\" alt=\"Required\" src=\"\/user\/pages\/reuse\/image-library\/01.icons\/required\/required.svg?decoding=auto&amp;fetchpriority=auto\" \/><\/span><\/td>\n<td style=\"text-align: left;\">The unique identifier of the Adyen-issued card for which you want to view the available limit details.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>transactionRuleId<\/code><\/td>\n<td style=\"text-align: center;\">Query<\/td>\n<td style=\"text-align: center;\"><\/td>\n<td style=\"text-align: left;\">The unique identifier of the transaction rule for which you want to view the available limit details. If not provided, we return the limit that applies to the Adyen-issued card based on the <a href=\"\/issuing\/authorisation\/transaction-rules#hierarchy-for-transaction-rules\">transaction rule hierarchy<\/a>.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><img alt=\"This is the required icon.\" src=\"\/user\/pages\/reuse\/image-library\/01.icons\/requirements-legend\/required.svg?decoding=auto&amp;fetchpriority=auto\" \/> Required for all transactions. <br><img alt=\"This is the conditionally required icon.\" src=\"\/user\/pages\/reuse\/image-library\/01.icons\/requirements-legend\/conditionally-required.svg?decoding=auto&amp;fetchpriority=auto\" \/> Required for particular setups, or issuers and card schemes. <br><img alt=\"This is the recommended icon.\" src=\"\/user\/pages\/reuse\/image-library\/01.icons\/requirements-legend\/recommended.svg?decoding=auto&amp;fetchpriority=auto\" \/> Recommended for all transactions, but not required.<\/p>\n<p>Here is an example request to get the available limits for the transaction rule with ID <span translate=\"no\"><strong>TR00000000000000000000001<\/strong><\/span>, that applies to the payment instrument with ID <span translate=\"no\"><strong>PI00000000000000000000001<\/strong><\/span>.<\/p>\n<div data-component-wrapper=\"code-sample\">\n<code-sample :title=\"''\" :id=\"''\" :code-data=\"[{&quot;language&quot;:&quot;bash&quot;,&quot;tabTitle&quot;:&quot;&quot;,&quot;content&quot;:&quot;curl https:\\\/\\\/balanceplatform-api-test.adyen.com\\\/bcl\\\/v2\\\/paymentInstruments\\\/PI00000000000000000000001\\\/limits?transactionRuleId=TR00000000000000000000001 \\\\\\n-H 'x-api-key: ADYEN_BALANCE_PLATFORM_API_KEY' \\\\\\n-H 'content-type: application\\\/json' \\\\\\n-X GET&quot;}]\" :enable-copy-link-to-code-block=\"true\" :code-sample-card-size=\"'fullsize'\"><\/code-sample>\n<\/div>\n<\/li>\n<li>\n<p>Note the response, which returns the following parameters:<\/p>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left;\">Parameter<\/th>\n<th style=\"text-align: center;\">Returned<\/th>\n<th style=\"text-align: left;\">Description<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: left;\"><code>calculatedAt<\/code><\/td>\n<td style=\"text-align: center;\"><span class=\"hint--bottom\" data-hint=\"Required\" markdown=\"1\"><img style=\"width: 25px;\" alt=\"Required\" src=\"\/user\/pages\/reuse\/image-library\/01.icons\/required\/required.svg?decoding=auto&amp;fetchpriority=auto\" \/><\/span><\/td>\n<td style=\"text-align: left;\">The date and time at which the available limit was calculated following your request.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>amountLimits<\/code><\/td>\n<td style=\"text-align: center;\"><\/td>\n<td style=\"text-align: left;\">An array where each object returns the details of a limit set using the <code>totalAmount<\/code> rule restriction.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>countLimits<\/code><\/td>\n<td style=\"text-align: center;\"><\/td>\n<td style=\"text-align: left;\">An array where each object returns the details of a limit set using the <code>matchingTransactions<\/code> rule restriction.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Each object in the <code>amountLimits<\/code> and <code>countLimits<\/code> arrays returns the following parameters:<\/p>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left;\">Parameter<\/th>\n<th style=\"text-align: center;\">Returned<\/th>\n<th style=\"text-align: left;\">Description<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: left;\"><code>limit<\/code><\/td>\n<td style=\"text-align: center;\"><span class=\"hint--bottom\" data-hint=\"Required\" markdown=\"1\"><img style=\"width: 25px;\" alt=\"Required\" src=\"\/user\/pages\/reuse\/image-library\/01.icons\/required\/required.svg?decoding=auto&amp;fetchpriority=auto\" \/><\/span><\/td>\n<td style=\"text-align: left;\">The total limit set on the Adyen-issued card, concerning either the total amount or the number of transactions.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>spent<\/code><\/td>\n<td style=\"text-align: center;\"><span class=\"hint--bottom\" data-hint=\"Required\" markdown=\"1\"><img style=\"width: 25px;\" alt=\"Required\" src=\"\/user\/pages\/reuse\/image-library\/01.icons\/required\/required.svg?decoding=auto&amp;fetchpriority=auto\" \/><\/span><\/td>\n<td style=\"text-align: left;\">The part of the total limit that has already been spent in the given time interval.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>remaining<\/code><\/td>\n<td style=\"text-align: center;\"><span class=\"hint--bottom\" data-hint=\"Required\" markdown=\"1\"><img style=\"width: 25px;\" alt=\"Required\" src=\"\/user\/pages\/reuse\/image-library\/01.icons\/required\/required.svg?decoding=auto&amp;fetchpriority=auto\" \/><\/span><\/td>\n<td style=\"text-align: left;\">The part of the total limit that is remaining in the given time interval.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>source<\/code><\/td>\n<td style=\"text-align: center;\"><span class=\"hint--bottom\" data-hint=\"Required\" markdown=\"1\"><img style=\"width: 25px;\" alt=\"Required\" src=\"\/user\/pages\/reuse\/image-library\/01.icons\/required\/required.svg?decoding=auto&amp;fetchpriority=auto\" \/><\/span><\/td>\n<td style=\"text-align: left;\">Details about the transaction rule or capability that defined the limit.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>interval<\/code><\/td>\n<td style=\"text-align: center;\"><span class=\"hint--bottom\" data-hint=\"Required\" markdown=\"1\"><img style=\"width: 25px;\" alt=\"Required\" src=\"\/user\/pages\/reuse\/image-library\/01.icons\/required\/required.svg?decoding=auto&amp;fetchpriority=auto\" \/><\/span><\/td>\n<td style=\"text-align: left;\">Details about the time interval within which the limit is active.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>The <code>interval<\/code> object returns the following parameters:<\/p>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left;\">Parameter<\/th>\n<th style=\"text-align: center;\">Required<\/th>\n<th style=\"text-align: left;\">Description<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: left;\"><code>type<\/code><\/td>\n<td style=\"text-align: center;\"><span class=\"hint--bottom\" data-hint=\"Required\" markdown=\"1\"><img style=\"width: 25px;\" alt=\"Required\" src=\"\/user\/pages\/reuse\/image-library\/01.icons\/required\/required.svg?decoding=auto&amp;fetchpriority=auto\" \/><\/span><\/td>\n<td style=\"text-align: left;\">The <a href=\"\/issuing\/transaction-rules#time-intervals\">type of interval<\/a> during which the limits apply, and how often counters are reset.<br><br><strong>Possible values<\/strong>:<ul><li markdown=\"1\"><span translate=\"no\"><strong>perTransaction<\/strong><\/span>: The conditions are evaluated and the counters are reset for every transaction.<\/li><li markdown=\"1\"><span translate=\"no\"><strong>daily<\/strong><\/span>: The counters are reset daily at 00:00:00 CET.<\/li><li markdown=\"1\"><span translate=\"no\"><strong>weekly<\/strong><\/span>: The counters are reset every Monday at 00:00:00 CET.<\/li><li markdown=\"1\"><span translate=\"no\"><strong>monthly<\/strong><\/span>: The counters reset every first day of the month at 00:00:00 CET.<\/li><li markdown=\"1\"><span translate=\"no\"><strong>lifetime<\/strong><\/span>: The conditions are applied to the lifetime of the Adyen-issued card.<\/li><li markdown=\"1\"><span translate=\"no\"><strong>rolling<\/strong><\/span>: The conditions are applied and the counters are reset based on a <code>duration<\/code>, start date (defined using <code>dayOfWeek<\/code> or <code>dayOfMonth<\/code>), and start time (defined using <code>timeOfDay<\/code>) that you specified. If you did not provide a start date and time, Adyen applies the default start date and time that apply to fixed intervals. For example, if the duration is every two weeks, the counter resets every third Monday at 00:00:00 CET.<\/li><li markdown=\"1\"><span translate=\"no\"><strong>sliding<\/strong><\/span>: The conditions are applied and the counters are reset based on the current time and a <code>duration<\/code> that you specify.<\/li><\/ul><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>duration<\/code><\/td>\n<td style=\"text-align: center;\"><span class=\"hint--bottom\" data-hint=\"Conditionally required\" markdown=\"1\"><img style=\"width: 25px;\" alt=\"Conditionally required\" src=\"\/user\/pages\/reuse\/image-library\/01.icons\/conditionally-required\/conditionally-required.svg?decoding=auto&amp;fetchpriority=auto\" \/><\/span><\/td>\n<td style=\"text-align: left;\"><strong>Use case<\/strong>: Returned when <code>type<\/code> is <span translate=\"no\"><strong>rolling<\/strong><\/span> or <span translate=\"no\"><strong>sliding<\/strong><\/span>.<br><br>The duration of the time interval. This object returns:<ul><li markdown=\"1\"><code>unit<\/code>: The unit of time in which the duration is defined. Possible values: <span translate=\"no\"><strong>minutes<\/strong><\/span>, <span translate=\"no\"><strong>hours<\/strong><\/span>, <span translate=\"no\"><strong>days<\/strong><\/span>, <span translate=\"no\"><strong>weeks<\/strong><\/span>, <span translate=\"no\"><strong>months<\/strong><\/span>.<\/li><li markdown=\"1\"><code>value<\/code>: The numerical value of the duration, in terms of the defined <code>unit<\/code>. For example, <strong>5<\/strong> indicates 5 days if <code>unit<\/code> is <span translate=\"no\"><strong>days<\/strong><\/span>.<\/li><\/ul><br><strong>Format<\/strong>:<ul><li markdown=\"1\">The maximum duration is 90 days, or its equivalent in another unit, for example 3 months.<\/li><\/ul><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>dayOfMonth<\/code><\/td>\n<td style=\"text-align: center;\"><span class=\"hint--bottom\" data-hint=\"Conditionally required\" markdown=\"1\"><img style=\"width: 25px;\" alt=\"Conditionally required\" src=\"\/user\/pages\/reuse\/image-library\/01.icons\/conditionally-required\/conditionally-required.svg?decoding=auto&amp;fetchpriority=auto\" \/><\/span><\/td>\n<td style=\"text-align: left;\"><strong>Use case<\/strong>: Returned when <code>duration.unit<\/code> is <span translate=\"no\"><strong>months<\/strong><\/span>.<br><br>The day of the month when the time interval starts.<br><br><strong>Format<\/strong>:<ul><li markdown=\"1\">The default value is <strong>1<\/strong>, which indicates the first day of the month.<\/li><\/ul><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>dayOfWeek<\/code><\/td>\n<td style=\"text-align: center;\"><span class=\"hint--bottom\" data-hint=\"Conditionally required\" markdown=\"1\"><img style=\"width: 25px;\" alt=\"Conditionally required\" src=\"\/user\/pages\/reuse\/image-library\/01.icons\/conditionally-required\/conditionally-required.svg?decoding=auto&amp;fetchpriority=auto\" \/><\/span><\/td>\n<td style=\"text-align: left;\"><strong>Use case<\/strong>: Returned when <code>duration.unit<\/code> is <span translate=\"no\"><strong>weeks<\/strong><\/span>.<br><br>The day of the week when the time interval starts.<br><br><strong>Possible values<\/strong>: <ul><li markdown=\"1\"><span translate=\"no\"><strong>monday<\/strong><\/span> (default)<\/li><li markdown=\"1\"><span translate=\"no\"><strong>tuesday<\/strong><\/span><\/li><li markdown=\"1\"><span translate=\"no\"><strong>wednesday<\/strong><\/span><\/li><li markdown=\"1\"><span translate=\"no\"><strong>thursday<\/strong><\/span><\/li><li markdown=\"1\"><span translate=\"no\"><strong>friday<\/strong><\/span><\/li><\/ul>.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>timeOfDay<\/code><\/td>\n<td style=\"text-align: center;\"><span class=\"hint--bottom\" data-hint=\"Conditionally required\" markdown=\"1\"><img style=\"width: 25px;\" alt=\"Conditionally required\" src=\"\/user\/pages\/reuse\/image-library\/01.icons\/conditionally-required\/conditionally-required.svg?decoding=auto&amp;fetchpriority=auto\" \/><\/span><\/td>\n<td style=\"text-align: left;\"><strong>Use case<\/strong>: Returned when <code>duration.unit<\/code> is <span translate=\"no\"><strong>hours<\/strong><\/span>.<br><br>The time of the day when the time interval starts.<br><br><strong>Format<\/strong>:<ul><li markdown=\"1\">Date format is <span translate=\"no\"><strong>hh:mm:ss<\/strong><\/span><\/li><li markdown=\"1\">Default value is <span translate=\"no\"><strong>00:00:00<\/strong><\/span>.<\/li><\/ul><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><code>timezone<\/code><\/td>\n<td style=\"text-align: center;\"><span class=\"hint--bottom\" data-hint=\"Required\" markdown=\"1\"><img style=\"width: 25px;\" alt=\"Required\" src=\"\/user\/pages\/reuse\/image-library\/01.icons\/required\/required.svg?decoding=auto&amp;fetchpriority=auto\" \/><\/span><\/td>\n<td style=\"text-align: left;\">The timezone for the configured time interval.<br><br><strong>Format<\/strong>:<ul><li markdown=\"1\">The default value is <span translate=\"no\"><strong>UTC<\/strong><\/span>.<\/li><\/ul><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><img alt=\"This is the required icon.\" src=\"\/user\/pages\/reuse\/image-library\/01.icons\/requirements-legend\/required.svg?decoding=auto&amp;fetchpriority=auto\" \/> Required for all transactions. <br><img alt=\"This is the conditionally required icon.\" src=\"\/user\/pages\/reuse\/image-library\/01.icons\/requirements-legend\/conditionally-required.svg?decoding=auto&amp;fetchpriority=auto\" \/> Required for particular setups, or issuers and card schemes. <br><img alt=\"This is the recommended icon.\" src=\"\/user\/pages\/reuse\/image-library\/01.icons\/requirements-legend\/recommended.svg?decoding=auto&amp;fetchpriority=auto\" \/> Recommended for all transactions, but not required.<\/p>\n<p>Here is an example response that shows the available limits for the transaction rule with ID <span translate=\"no\"><strong>TR00000000000000000000001<\/strong><\/span>, that applies to the payment instrument with ID <span translate=\"no\"><strong>PI00000000000000000000001<\/strong><\/span>.<\/p>\n<div data-component-wrapper=\"code-sample\">\n<code-sample :title=\"''\" :id=\"''\" :code-data='[{\"language\":\"json\",\"tabTitle\":\"\",\"content\":\"{\\n   \\\"calculatedAt\\\": \\\"2025-03-19T10:15:30+01:00\\\",\\n   \\\"amountLimits\\\": [\\n      {\\n          \\\"limit\\\": {\\n             \\\"currency\\\": \\\"USD\\\",\\n             \\\"value\\\": 700000\\n          },\\n          \\\"spent\\\": {\\n             \\\"currency\\\": \\\"USD\\\",\\n             \\\"value\\\": 300000\\n          },\\n          \\\"remaining\\\": {\\n             \\\"currency\\\": \\\"USD\\\",\\n             \\\"value\\\": 400000\\n          },\\n          \\\"source\\\": {\\n             \\\"type\\\": \\\"transactionRule\\\",\\n             \\\"id\\\": \\\"TR00000000000000000000001\\\",\\n             \\\"reference\\\": \\\"Your reference for the transaction rule that defined the limit.\\\"\\n          },\\n          \\\"interval\\\": {\\n             \\\"duration\\\": {\\n                \\\"unit\\\": \\\"weeks\\\",\\n                \\\"value\\\": 4\\n             },\\n             \\\"dayOfWeek\\\": \\\"friday\\\",\\n             \\\"timeOfDay\\\": \\\"07:00:00\\\",\\n             \\\"timeZone\\\": \\\"CST\\\",\\n             \\\"type\\\": \\\"rolling\\\"\\n          }\\n     }\\n   ],\\n   \\\"countLimits\\\": [\\n      {\\n          \\\"limit\\\": 100,\\n          \\\"spent\\\": 37,\\n          \\\"remaining\\\": 63,\\n          \\\"source\\\": {\\n             \\\"type\\\": \\\"transactionRule\\\",\\n             \\\"id\\\": \\\"TR00000000000000000000001\\\",\\n             \\\"reference\\\": \\\"Your reference for the transaction rule that defined the limit.\\\"\\n          },\\n          \\\"interval\\\": {\\n             \\\"duration\\\": {\\n                \\\"unit\\\": \\\"weeks\\\",\\n                \\\"value\\\": 4\\n             },\\n             \\\"dayOfWeek\\\": \\\"friday\\\",\\n             \\\"timeOfDay\\\": \\\"07:00:00\\\",\\n             \\\"timeZone\\\": \\\"CST\\\",\\n             \\\"type\\\": \\\"rolling\\\"\\n          }\\n      }\\n   ]\\n}\"}]' :enable-copy-link-to-code-block=\"true\" :code-sample-card-size=\"'fullsize'\"><\/code-sample>\n<\/div>\n<\/li>\n<\/ol>","url":"https:\/\/docs.adyen.com\/issuing\/authorisation\/transaction-rules\/view-available-limits","articleFields":{"description":"View details about the limits set by your transaction rules or capability levels.","feedback_component":true,"last_edit_on":"07-01-2025 15:06","parameters":{"directoryPath":"\/issuing","integrationType":"issuing"},"filters_component":false,"decision_tree":"[]","page_id":"9e3fb9d8-b752-4ea9-a510-22b4335b656b"},"algolia":{"url":"https:\/\/docs.adyen.com\/issuing\/authorisation\/transaction-rules\/view-available-limits","title":"View available limits","content":"Adyen allows you to set specific limits that regulate outgoing payments made from your users' payment instruments (Adyen-issued cards). These limits can be configured using transaction rules or capability levels.\n\n\nUsing transaction rules, you can set limits on:\n\nThe total amount spent using the payment instrument (Adyen-issued card), within a specified time interval. This is called an amount limit.\nThe total number of payments made using the payment instrument (Adyen-issued card), within a specified time interval. This is called a count limit.\n\n\n\nUsing capability levels, you can set limits on:\n\nThe total amount your user can withdraw from an ATM using their payment instrument (Adyen-issued card).\nThe total amount your user can spend or withdraw using their payment instrument (Adyen-issued card) in restricted countries.\nThe total amount your user can spend using their payment instrument (Adyen-issued card) in restricted industries.\n\n\n\nWithin the time interval that these limits are active, you can make API calls to check the details of these limits. These include:\n\nThe total limit\nHow much of the limit is already used\nHow much of the limit is remaining\nWhere the limit is defined\nDetails of time interval in which the limit is active\n\nBenefits of viewing existing limits\nChecking the details of your existing limits allows you to:\n\nPrevent unexpected payment failures that can occur when your user surpasses their limit. For example, you can provide your user with a warning when they are nearing their total limit.\nHelp your users keep track of and regulate their spending within certain time intervals. For example, you can allow your users to see how much of their budget they have left after every payment they make.\nIdentify situations where a limit is too high or too low. For example, if you notice that your users are consistently exceeding their limits, you can decide to increase this limit for them.\n\nRequirements\n\n\n\nRequirement\nDescription\n\n\n\n\nIntegration type\nAdyen Issuing\n\n\nAPI credential roles\nMake sure that you have access to the  Configuration API with following role: Bank Manage TransactionRules role\n\n\nLimitations\nThis feature is only supported for limits configured using the  totalAmount or  matchingTransactions rule restrictions. Transaction rules that use the  matchingValues rule restriction combined with  matchingTransactions are not taken into account when calculating the available limits.This feature is only supported for limits that are aggregated at the payment instrument level. Limits that are aggregated at higher levels are not returned in the response.This feature is not supported for the blockList rule type, because this rule type does not use limits.\n\n\nSetup steps\nMake sure that you have created a transaction rule with a  totalAmount or  matchingTransactions rule restriction.\n\n\n\nCalculating limits\nWhen you set restrictions on the total amount (amount limit) or total number of transactions (count limit), Adyen calculates the available limit as follows:\n\nAmount limit: Adyen uses the total amount that has been authorized using the Adyen-issued card.\nCount limit: Adyen uses the total number of transactions that have been authorized using the Adyen-issued card.\n\nAll authorizations are deducted from the available limit, regardless of whether they have been captured or not. If an authorization expires or is canceled, then the amount or count is released and added back to the available limit.\nView available limits\nTo view your available limits:\n\n\nMake a GET \/paymentinstruments\/{id}\/limits request, specifying the following parameters:\n\n\n\nParameter\nType\nRequired\nDescription\n\n\n\n\nid\nPath\n\nThe unique identifier of the Adyen-issued card for which you want to view the available limit details.\n\n\ntransactionRuleId\nQuery\n\nThe unique identifier of the transaction rule for which you want to view the available limit details. If not provided, we return the limit that applies to the Adyen-issued card based on the transaction rule hierarchy.\n\n\n\n Required for all transactions.  Required for particular setups, or issuers and card schemes.  Recommended for all transactions, but not required.\nHere is an example request to get the available limits for the transaction rule with ID TR00000000000000000000001, that applies to the payment instrument with ID PI00000000000000000000001.\n\n\n\n\n\nNote the response, which returns the following parameters:\n\n\n\nParameter\nReturned\nDescription\n\n\n\n\ncalculatedAt\n\nThe date and time at which the available limit was calculated following your request.\n\n\namountLimits\n\nAn array where each object returns the details of a limit set using the totalAmount rule restriction.\n\n\ncountLimits\n\nAn array where each object returns the details of a limit set using the matchingTransactions rule restriction.\n\n\n\nEach object in the amountLimits and countLimits arrays returns the following parameters:\n\n\n\nParameter\nReturned\nDescription\n\n\n\n\nlimit\n\nThe total limit set on the Adyen-issued card, concerning either the total amount or the number of transactions.\n\n\nspent\n\nThe part of the total limit that has already been spent in the given time interval.\n\n\nremaining\n\nThe part of the total limit that is remaining in the given time interval.\n\n\nsource\n\nDetails about the transaction rule or capability that defined the limit.\n\n\ninterval\n\nDetails about the time interval within which the limit is active.\n\n\n\nThe interval object returns the following parameters:\n\n\n\nParameter\nRequired\nDescription\n\n\n\n\ntype\n\nThe type of interval during which the limits apply, and how often counters are reset.Possible values:perTransaction: The conditions are evaluated and the counters are reset for every transaction.daily: The counters are reset daily at 00:00:00 CET.weekly: The counters are reset every Monday at 00:00:00 CET.monthly: The counters reset every first day of the month at 00:00:00 CET.lifetime: The conditions are applied to the lifetime of the Adyen-issued card.rolling: The conditions are applied and the counters are reset based on a duration, start date (defined using dayOfWeek or dayOfMonth), and start time (defined using timeOfDay) that you specified. If you did not provide a start date and time, Adyen applies the default start date and time that apply to fixed intervals. For example, if the duration is every two weeks, the counter resets every third Monday at 00:00:00 CET.sliding: The conditions are applied and the counters are reset based on the current time and a duration that you specify.\n\n\nduration\n\nUse case: Returned when type is rolling or sliding.The duration of the time interval. This object returns:unit: The unit of time in which the duration is defined. Possible values: minutes, hours, days, weeks, months.value: The numerical value of the duration, in terms of the defined unit. For example, 5 indicates 5 days if unit is days.Format:The maximum duration is 90 days, or its equivalent in another unit, for example 3 months.\n\n\ndayOfMonth\n\nUse case: Returned when duration.unit is months.The day of the month when the time interval starts.Format:The default value is 1, which indicates the first day of the month.\n\n\ndayOfWeek\n\nUse case: Returned when duration.unit is weeks.The day of the week when the time interval starts.Possible values: monday (default)tuesdaywednesdaythursdayfriday.\n\n\ntimeOfDay\n\nUse case: Returned when duration.unit is hours.The time of the day when the time interval starts.Format:Date format is hh:mm:ssDefault value is 00:00:00.\n\n\ntimezone\n\nThe timezone for the configured time interval.Format:The default value is UTC.\n\n\n\n Required for all transactions.  Required for particular setups, or issuers and card schemes.  Recommended for all transactions, but not required.\nHere is an example response that shows the available limits for the transaction rule with ID TR00000000000000000000001, that applies to the payment instrument with ID PI00000000000000000000001.\n\n\n\n\n","type":"page","locale":"en","boost":16,"hierarchy":{"lvl0":"Home","lvl1":"Adyen Issuing","lvl2":"Payment authorisation","lvl3":"Use transaction rules","lvl4":"View available limits"},"hierarchy_url":{"lvl0":"https:\/\/docs.adyen.com\/","lvl1":"https:\/\/docs.adyen.com\/issuing","lvl2":"https:\/\/docs.adyen.com\/issuing\/authorisation","lvl3":"https:\/\/docs.adyen.com\/issuing\/authorisation\/transaction-rules","lvl4":"\/issuing\/authorisation\/transaction-rules\/view-available-limits"},"levels":5,"category":"Issuing","category_color":"green","tags":["available","limits"]}}
