{"title":"Platform-generated webhooks","category":"default","creationDate":1776961627,"content":"<p>Webhooks generated on the plataforma de pagamentos da Adyen share a similar format and are delivered in the same way across sales channels. Platform-generated webhooks inform you asynchronously of transaction details and settings updates.<\/p>\n<p>There are two types of platform-generated webhooks relevant for in-person payments:<\/p>\n<ul>\n<li><a href=\"#standard-webhook\">Standard webhooks<\/a><\/li>\n<li><a href=\"#terminal-management-webhooks\">Terminal management webhooks<\/a><\/li>\n<\/ul>\n<h2 id=\"webhooks\">Set up webhooks<\/h2>\n<p>To add standard or terminal management webhooks, follow our <a href=\"\/pt\/development-resources\/webhooks\">webhooks documentation<\/a> to:<\/p>\n<ul>\n<li>Set up standard webhooks and other platform-generated webhooks.<\/li>\n<li>Verify the HMAC signature included in webhooks.<\/li>\n<li>Acknowledge webhooks with a <a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/HTTP\/Status#successful_responses\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">successful HTTP response status code<\/a>, for example <strong>202<\/strong>.<\/li>\n<li>Understand the structure of webhooks.<\/li>\n<li>Learn best practices for using webhooks.<\/li>\n<\/ul>\n<h2>Standard webhook<\/h2>\n<p>In a point-of-sale integration, standard webhooks may seem less important, because the terminal provides instant feedback: it immediately shows if a transaction is approved or declined. And even if you do not receive the Terminal API response with the transaction details, you can get the details through a <a href=\"\/pt\/point-of-sale\/basic-tapi-integration\/verify-transaction-status\">transaction status request<\/a>.<\/p>\n<p>However, there are point-of-sale use cases that rely on standard webhooks:<\/p>\n<ul>\n<li>Asynchronous requests:\n<ul>\n<li>Referenced and unreferenced <a href=\"\/pt\/point-of-sale\/basic-tapi-integration\/refund-payment\/referenced\">refunds<\/a><\/li>\n<li><a href=\"\/pt\/point-of-sale\/pre-authorisation?tab=asynchronous_authorisation_adjustment_1#adjust-auth\">Asynchronous authorization adjustment<\/a><\/li>\n<li><a href=\"\/pt\/point-of-sale\/capturing-payments#manual-capture\">Manual capture<\/a><\/li>\n<li><a href=\"\/pt\/point-of-sale\/capturing-payments#cancel-authorisation\">Cancellation of uncaptured authorizations<\/a> when using delayed automatic capture or manual capture<\/li>\n<\/ul><\/li>\n<li><a href=\"\/pt\/point-of-sale\/offline-payment#reconcile-offline-transactions\">PSP reference-based reconciliation of offline payments<\/a><\/li>\n<li><a href=\"\/pt\/unified-commerce\/collect-data\">Customer insights<\/a> through combining data from multiple sales channels<\/li>\n<li><a href=\"\/pt\/point-of-sale\/recurring-payments\">Recurring online payments<\/a> after creating a token through an initial point-of-sale payment<\/li>\n<\/ul>\n<p>Standard webhooks include a few details by default, as well as configurable additional data. Depending on your use case, you need to and select <a href=\"\/pt\/point-of-sale\/card-acquisition\/identifiers\">identifiers<\/a> that you want to receive in the additional data of webhooks.<\/p>\n<p>To configure the structure, when <a href=\"\/pt\/development-resources\/webhooks\">setting up a standard webhook<\/a>:<\/p>\n<ol>\n<li>Select the <a href=\"\/pt\/development-resources\/webhooks\/webhook-types\/#event-codes\">event codes<\/a> that trigger sending the webhook.<\/li>\n<li>\n<p>Select the <a href=\"\/pt\/development-resources\/webhooks\/webhook-types\/additional-settings\">additional settings<\/a> you want to receive. For example:<\/p>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left;\">Identifier<\/th>\n<th style=\"text-align: left;\">Additional setting to select<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: left;\">Card alias<\/td>\n<td style=\"text-align: left;\"><strong>Include Alias Info<\/strong><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">Funding source<\/td>\n<td style=\"text-align: left;\"><strong>Include Funding Source<\/strong><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">Issuer country\/region<\/td>\n<td style=\"text-align: left;\"><strong>Include Issuer Country\/Region<\/strong><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">PAR<\/td>\n<td style=\"text-align: left;\"><strong>Add Payment Account Reference<\/strong> <br> <div class=\"sc-notice info\"><div>Must be enabled under <b>Developers<\/b> &gt; <b>Additional data<\/b>.<\/div><\/div><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">Recurring detail reference<\/td>\n<td style=\"text-align: left;\"><div class=\"sc-notice info\"><div>Cannot be enabled in the webhook settings. Must be enabled under <b>Developers<\/b> &gt; <b>Additional data<\/b>.<\/div><\/div><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">Shopper email, shopper reference<\/td>\n<td style=\"text-align: left;\"><strong>Include Shopper Details<\/strong><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">Token variant<\/td>\n<td style=\"text-align: left;\"><strong>Include tokenTxVariant<\/strong> <br> <div class=\"sc-notice info\"><div>Must be enabled under <b>Developers<\/b> &gt; <b>Additional data<\/b>.<\/div><\/div><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">BIN<\/td>\n<td style=\"text-align: left;\"><strong>Include Card Bin<\/strong><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">POIID<\/td>\n<td style=\"text-align: left;\"><strong>Include POS TerminalInfo<\/strong><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">Store name<\/td>\n<td style=\"text-align: left;\"><strong>Include Store<\/strong><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">Tender reference, POIID<\/td>\n<td style=\"text-align: left;\"><strong>Include POS Details<\/strong><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<div class=\"notices yellow\">\n<p>When you enable identifiers under <strong>Developers<\/strong> &gt; <strong>Additional data<\/strong> you also receive these identifiers in your API responses.<\/p>\n<\/div>\n<\/li>\n<\/ol>\n<p>The following example shows the standard webhook for an in-person payment. The identifiers are in the <code>additionalData<\/code> object.<\/p>\n<div data-component-wrapper=\"code-sample\">\n    <code-sample :title=\"'Identifiers in a standard webhook'\" :id=\"''\" :code-data='[{\"language\":\"json\",\"tabTitle\":\"\",\"content\":\"{\\n   \\\"live\\\":\\\"false\\\",\\n   \\\"notificationItems\\\":[\\n      {\\n         \\\"NotificationRequestItem\\\":{\\n            \\\"additionalData\\\":{\\n               \\\"alias\\\":\\\"M469509594859802\\\",\\n               \\\"aliasType\\\":\\\"Default\\\",\\n               \\\"authCode\\\":\\\"00\\\",\\n               \\\"cardBin\\\":\\\"541333\\\",\\n               \\\"cardSummary\\\":\\\"9999\\\",\\n               \\\"expiryDate\\\":\\\"02\\\/2028\\\",\\n               \\\"fundingSource\\\":\\\"CREDIT\\\",\\n               \\\"issuerCountry\\\":\\\"GB\\\",\\n               \\\"recurring.shopperReference\\\":\\\"YOUR_SHOPPER_REFERENCE\\\",\\n               \\\"shopperEmail\\\":\\\"S.Hopper@example.com\\\",\\n               \\\"shopperIP\\\":\\\"198.51.100.1\\\",\\n               \\\"shopperReference\\\":\\\"YOUR_SHOPPER_REFERENCE\\\",\\n               \\\"store\\\":\\\"YOUR_STORE\\\",\\n               \\\"tenderReference\\\":\\\"CYHG001647245627000\\\",\\n               \\\"terminalId\\\":\\\"V400m-346403161\\\"\\n            },\\n            \\\"amount\\\":{\\n               \\\"currency\\\":\\\"EUR\\\",\\n               \\\"value\\\":12098\\n            },\\n            \\\"eventCode\\\":\\\"AUTHORISATION\\\",\\n            \\\"eventDate\\\":\\\"2021-04-14T15:30:14+02:00\\\",\\n            \\\"merchantAccountCode\\\":\\\"ADYEN_MERCHANT_ACCOUNT\\\",\\n            \\\"merchantReference\\\":\\\"902\\\",\\n            \\\"operations\\\":[\\n               \\\"CANCEL\\\",\\n               \\\"CAPTURE\\\",\\n               \\\"REFUND\\\"\\n            ],\\n            \\\"paymentMethod\\\":\\\"mc\\\",\\n            \\\"pspReference\\\":\\\"8825408195409505\\\",\\n            \\\"reason\\\":\\\"00:9999:02\\\/2028\\\",\\n            \\\"success\\\":\\\"true\\\"\\n         }\\n      }\\n   ]\\n}\"}]' :enable-copy-link-to-code-block=\"true\" :code-sample-card-size=\"'fullsize'\"><\/code-sample>\n<\/div>\n<h2>Terminal management webhooks<\/h2>\n<p>Adyen sends terminal management webhooks to inform your system about the status of payment terminals orders, assignment, or settings update.<\/p>\n<p>Terminal management webhooks have a different structure from standard webhooks and do not require additional setup apart from the <a href=\"\/pt\/development-resources\/webhooks\/#set-up-webhooks-in-your-customer-area\">server and security configuration<\/a> in your <a href=\"https:\/\/ca-test.adyen.com\/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">Customer Area<\/a>.<\/p>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left;\">Webhook type<\/th>\n<th style=\"text-align: left;\">Description<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: left;\"><span translate=\"no\"><strong>Terminal assignment completed<\/strong><\/span><\/td>\n<td style=\"text-align: left;\">Receive a webhook event when a scheduled assignment of a payment terminal has been completed. Refer to <a href=\"\/pt\/point-of-sale\/automating-terminal-management\/assign-terminals-api\">Assign terminals<\/a>.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><span translate=\"no\"><strong>Terminal boarding succeeded<\/strong><\/span><\/td>\n<td style=\"text-align: left;\">Receive a webhook event when the boarding of a terminal succeeded.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><span translate=\"no\"><strong>Terminal order updated<\/strong><\/span><\/td>\n<td style=\"text-align: left;\">Receive a webhook event about updates to your sales, return, or replacement order for payment terminals. Refer to <a href=\"\/pt\/point-of-sale\/automating-terminal-management\/order-terminals-api\/\">Order terminals<\/a>.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><span translate=\"no\"><strong>Terminal settings updated<\/strong><\/span><\/td>\n<td style=\"text-align: left;\">Receive a webhook event when the terminal settings are updated. Refer to <a href=\"\/pt\/point-of-sale\/automating-terminal-management\/configure-terminals-api\/\">Configure terminals<\/a>.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n\n<div id=\"tab8KoWw\">\n    <div data-component-wrapper=\"tabs\">\n        <tabs\n                        :items=\"[{&quot;title&quot;:&quot;Terminal assignment completed&quot;,&quot;content&quot;:&quot;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Terminal assignment completed&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;uniqueTerminalId\\\\\\&quot;:\\\\\\&quot;V400m-324688179\\\\\\&quot;,\\\\n   \\\\\\&quot;pspReference\\\\\\&quot;:\\\\\\&quot;PPKFQ89R6QRXGN82\\\\\\&quot;,\\\\n   \\\\\\&quot;eventDate\\\\\\&quot;:\\\\\\&quot;2020-06-03 22:42:13.840 CEST\\\\\\&quot;,\\\\n   \\\\\\&quot;assignedToAccount\\\\\\&quot;:\\\\\\&quot;ADYEN_COMPANY_ACCOUNT\\\\\\&quot;,\\\\n   \\\\\\&quot;assignedToStore\\\\\\&quot;:\\\\\\&quot;YOUR_STORE_ID\\\\\\&quot;\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;altTitle&quot;:null,&quot;oldTabId&quot;:&quot;terminal_assignment_completed_0_1&quot;,&quot;relation&quot;:&quot;&quot;},{&quot;title&quot;:&quot;Terminal boarding succeeded&quot;,&quot;content&quot;:&quot;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Terminal boarding succeeded&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;terminalBoarding.triggered\\\\\\&quot;,\\\\n   \\\\\\&quot;environment\\\\\\&quot;:\\\\\\&quot;live\\\\\\&quot;,\\\\n   \\\\\\&quot;createdAt\\\\\\&quot;:\\\\\\&quot;2024-04-23T22:42:51+02:00\\\\\\&quot;,\\\\n   \\\\\\&quot;data\\\\\\&quot;:{\\\\n      \\\\\\&quot;companyId\\\\\\&quot;:\\\\\\&quot;ADYEN_COMPANY_ACCOUNT\\\\\\&quot;,\\\\n      \\\\\\&quot;merchantId\\\\\\&quot;:\\\\\\&quot;ADYEN_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n      \\\\\\&quot;storeId\\\\\\&quot;:\\\\\\&quot;YOUR_STORE_ID\\\\\\&quot;,\\\\n      \\\\\\&quot;uniqueTerminalId\\\\\\&quot;:\\\\\\&quot;V400m-324688179\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;altTitle&quot;:null,&quot;oldTabId&quot;:&quot;terminal_boarding_succeeded_1_2&quot;,&quot;relation&quot;:&quot;&quot;},{&quot;title&quot;:&quot;Terminal order updated&quot;,&quot;content&quot;:&quot;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Terminal order updated&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;orderNumber\\\\\\&quot;:\\\\\\&quot;8815329842815460\\\\\\&quot;,\\\\n   \\\\\\&quot;orderType\\\\\\&quot;:\\\\\\&quot;salesOrder\\\\\\&quot;,\\\\n   \\\\\\&quot;orderStatus\\\\\\&quot;:\\\\\\&quot;placed\\\\\\&quot;,\\\\n   \\\\\\&quot;orderReference\\\\\\&quot;:\\\\\\&quot;YOUR_PURCHASE_ORDER\\\\\\&quot;,\\\\n   \\\\\\&quot;orderedBy\\\\\\&quot;:\\\\\\&quot;YOUR_USERNAME\\\\\\&quot;,\\\\n   \\\\\\&quot;company\\\\\\&quot;:\\\\\\&quot;ADYEN_COMPANY_ACCOUNT\\\\\\&quot;,\\\\n   \\\\\\&quot;merchant\\\\\\&quot;:\\\\\\&quot;ADYEN_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n   \\\\\\&quot;content\\\\\\&quot;:{\\\\n      \\\\\\&quot;shippingAddress\\\\\\&quot;:{\\\\n         \\\\\\&quot;streetAddress\\\\\\&quot;:\\\\\\&quot;Neherkade 1 XI, Gravenhage\\\\\\&quot;,\\\\n         \\\\\\&quot;postalCode\\\\\\&quot;:\\\\\\&quot;2521VK\\\\\\&quot;,\\\\n         \\\\\\&quot;stateOrProvince\\\\\\&quot;:\\\\\\&quot;SH\\\\\\&quot;,\\\\n         \\\\\\&quot;countryCode\\\\\\&quot;:\\\\\\&quot;NL\\\\\\&quot;\\\\n      },\\\\n      \\\\\\&quot;billingAddress\\\\\\&quot;:{\\\\n         \\\\\\&quot;streetAddress\\\\\\&quot;:\\\\\\&quot;Neherkade 1 XI, Gravenhage\\\\\\&quot;,\\\\n         \\\\\\&quot;postalCode\\\\\\&quot;:\\\\\\&quot;2521VK\\\\\\&quot;,\\\\n         \\\\\\&quot;stateOrProvince\\\\\\&quot;:\\\\\\&quot;SH\\\\\\&quot;,\\\\n         \\\\\\&quot;countryCode\\\\\\&quot;:\\\\\\&quot;NL\\\\\\&quot;\\\\n      },\\\\n      \\\\\\&quot;orderLines\\\\\\&quot;:[\\\\n         {\\\\n            \\\\\\&quot;productcode\\\\\\&quot;:\\\\\\&quot;M435-003-04-WWA-5\\\\\\&quot;,\\\\n            \\\\\\&quot;description\\\\\\&quot;:\\\\\\&quot;P400Plus\\\\\\&quot;,\\\\n            \\\\\\&quot;quantity\\\\\\&quot;:\\\\\\&quot;1\\\\\\&quot;\\\\n         },\\\\n         {\\\\n            \\\\\\&quot;productcode\\\\\\&quot;:\\\\\\&quot;CBL435-044-01-C\\\\\\&quot;,\\\\n            \\\\\\&quot;description\\\\\\&quot;:\\\\\\&quot;Dongle Ethernet RS232 USB 1,0m - P400\\\\\\&quot;,\\\\n            \\\\\\&quot;quantity\\\\\\&quot;:\\\\\\&quot;1\\\\\\&quot;\\\\n         }\\\\n      ],\\\\n      \\\\\\&quot;creationDate\\\\\\&quot;:\\\\\\&quot;Fri May 03 15:30:15 CEST 2024\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;altTitle&quot;:null,&quot;oldTabId&quot;:&quot;terminal_order_updated_2_3&quot;,&quot;relation&quot;:&quot;&quot;},{&quot;title&quot;:&quot;Terminal settings updated&quot;,&quot;content&quot;:&quot;\\n&lt;div data-component-wrapper=\\&quot;code-sample\\&quot;&gt;\\n    &lt;code-sample :title=\\&quot;&#039;Terminal settings updated&#039;\\&quot; :id=\\&quot;&#039;&#039;\\&quot; :code-data=&#039;[{\\&quot;language\\&quot;:\\&quot;json\\&quot;,\\&quot;tabTitle\\&quot;:\\&quot;\\&quot;,\\&quot;content\\&quot;:\\&quot;{\\\\n   \\\\\\&quot;type\\\\\\&quot;:\\\\\\&quot;terminalSettings.modified\\\\\\&quot;,\\\\n   \\\\\\&quot;environment\\\\\\&quot;:\\\\\\&quot;Live\\\\\\&quot;,\\\\n   \\\\\\&quot;createdAt\\\\\\&quot;:\\\\\\&quot;2024-04-23T22:42:51+02:00\\\\\\&quot;,\\\\n   \\\\\\&quot;data\\\\\\&quot;:{\\\\n      \\\\\\&quot;companyId\\\\\\&quot;:\\\\\\&quot;ADYEN_COMPANY_ACCOUNT\\\\\\&quot;,\\\\n      \\\\\\&quot;merchantId\\\\\\&quot;:\\\\\\&quot;ADYEN_MERCHANT_ACCOUNT\\\\\\&quot;,\\\\n      \\\\\\&quot;storeId\\\\\\&quot;:\\\\\\&quot;YOUR_STORE_ID\\\\\\&quot;,\\\\n      \\\\\\&quot;terminalId\\\\\\&quot;:\\\\\\&quot;V400m-324688179\\\\\\&quot;,\\\\n      \\\\\\&quot;updateSource\\\\\\&quot;:\\\\\\&quot;Customer Area\\\\\\&quot;,\\\\n      \\\\\\&quot;user\\\\\\&quot;:\\\\\\&quot;Adyen\\\\\\&quot;\\\\n   }\\\\n}\\&quot;}]&#039; :enable-copy-link-to-code-block=\\&quot;true\\&quot; :code-sample-card-size=\\&quot;&#039;fullsize&#039;\\&quot;&gt;&lt;\\\/code-sample&gt;\\n&lt;\\\/div&gt;\\n&quot;,&quot;altTitle&quot;:null,&quot;oldTabId&quot;:&quot;terminal_settings_updated_3_4&quot;,&quot;relation&quot;:&quot;&quot;}]\"\n            :should-update-when-url-changes='false'>\n        <\/tabs>\n    <\/div>\n<\/div>\n\n<h2>See also<\/h2>\n<div class=\"see-also-links output-inline\" id=\"see-also\">\n<ul><li><a href=\"\/development-resources\/webhooks\"\n                        target=\"_self\"\n                        >\n                    Webhooks\n                <\/a><\/li><li><a href=\"\/development-resources\/webhooks\/webhook-types\/\"\n                        target=\"_self\"\n                        >\n                    Webhook structure and types\n                <\/a><\/li><li><a href=\"\/point-of-sale\/design-your-integration\/notifications\/display-notifications\"\n                        target=\"_self\"\n                        >\n                    Terminal-generated display notifications\n                <\/a><\/li><li><a href=\"\/point-of-sale\/design-your-integration\/notifications\/event-notifications\"\n                        target=\"_self\"\n                        >\n                    Terminal-generated event notifications\n                <\/a><\/li><\/ul><\/div>\n","url":"https:\/\/docs.adyen.com\/pt\/point-of-sale\/design-your-integration\/notifications\/standard-notifications","articleFields":{"description":"Receive platform-generated webhooks on your back-end system.","page_id":"ebd3c758-e4f4-43c1-b9a4-06ec195bc710","feedback_component":true,"filters_component":false,"decision_tree":"[]"},"algolia":{"url":"https:\/\/docs.adyen.com\/pt\/point-of-sale\/design-your-integration\/notifications\/standard-notifications","title":"Platform-generated webhooks","content":"Webhooks generated on the plataforma de pagamentos da Adyen share a similar format and are delivered in the same way across sales channels. Platform-generated webhooks inform you asynchronously of transaction details and settings updates.\nThere are two types of platform-generated webhooks relevant for in-person payments:\n\nStandard webhooks\nTerminal management webhooks\n\nSet up webhooks\nTo add standard or terminal management webhooks, follow our webhooks documentation to:\n\nSet up standard webhooks and other platform-generated webhooks.\nVerify the HMAC signature included in webhooks.\nAcknowledge webhooks with a successful HTTP response status code, for example 202.\nUnderstand the structure of webhooks.\nLearn best practices for using webhooks.\n\nStandard webhook\nIn a point-of-sale integration, standard webhooks may seem less important, because the terminal provides instant feedback: it immediately shows if a transaction is approved or declined. And even if you do not receive the Terminal API response with the transaction details, you can get the details through a transaction status request.\nHowever, there are point-of-sale use cases that rely on standard webhooks:\n\nAsynchronous requests:\n\nReferenced and unreferenced refunds\nAsynchronous authorization adjustment\nManual capture\nCancellation of uncaptured authorizations when using delayed automatic capture or manual capture\n\nPSP reference-based reconciliation of offline payments\nCustomer insights through combining data from multiple sales channels\nRecurring online payments after creating a token through an initial point-of-sale payment\n\nStandard webhooks include a few details by default, as well as configurable additional data. Depending on your use case, you need to and select identifiers that you want to receive in the additional data of webhooks.\nTo configure the structure, when setting up a standard webhook:\n\nSelect the event codes that trigger sending the webhook.\n\nSelect the additional settings you want to receive. For example:\n\n\n\nIdentifier\nAdditional setting to select\n\n\n\n\nCard alias\nInclude Alias Info\n\n\nFunding source\nInclude Funding Source\n\n\nIssuer country\/region\nInclude Issuer Country\/Region\n\n\nPAR\nAdd Payment Account Reference  Must be enabled under Developers &gt; Additional data.\n\n\nRecurring detail reference\nCannot be enabled in the webhook settings. Must be enabled under Developers &gt; Additional data.\n\n\nShopper email, shopper reference\nInclude Shopper Details\n\n\nToken variant\nInclude tokenTxVariant  Must be enabled under Developers &gt; Additional data.\n\n\nBIN\nInclude Card Bin\n\n\nPOIID\nInclude POS TerminalInfo\n\n\nStore name\nInclude Store\n\n\nTender reference, POIID\nInclude POS Details\n\n\n\n\nWhen you enable identifiers under Developers &gt; Additional data you also receive these identifiers in your API responses.\n\n\n\nThe following example shows the standard webhook for an in-person payment. The identifiers are in the additionalData object.\n\n    \n\nTerminal management webhooks\nAdyen sends terminal management webhooks to inform your system about the status of payment terminals orders, assignment, or settings update.\nTerminal management webhooks have a different structure from standard webhooks and do not require additional setup apart from the server and security configuration in your Customer Area.\n\n\n\nWebhook type\nDescription\n\n\n\n\nTerminal assignment completed\nReceive a webhook event when a scheduled assignment of a payment terminal has been completed. Refer to Assign terminals.\n\n\nTerminal boarding succeeded\nReceive a webhook event when the boarding of a terminal succeeded.\n\n\nTerminal order updated\nReceive a webhook event about updates to your sales, return, or replacement order for payment terminals. Refer to Order terminals.\n\n\nTerminal settings updated\nReceive a webhook event when the terminal settings are updated. Refer to Configure terminals.\n\n\n\n\n\n    \n        \n        \n    \n\n\nSee also\n\n\n                    Webhooks\n                \n                    Webhook structure and types\n                \n                    Terminal-generated display notifications\n                \n                    Terminal-generated event notifications\n                \n","type":"page","locale":"pt","boost":16,"hierarchy":{"lvl0":"Home","lvl1":"Terminais","lvl2":"Design your integration","lvl3":"Notifications and webhooks","lvl4":"Platform-generated webhooks"},"hierarchy_url":{"lvl0":"https:\/\/docs.adyen.com\/pt","lvl1":"https:\/\/docs.adyen.com\/pt\/point-of-sale","lvl2":"https:\/\/docs.adyen.com\/pt\/point-of-sale\/design-your-integration","lvl3":"https:\/\/docs.adyen.com\/pt\/point-of-sale\/design-your-integration\/notifications","lvl4":"\/pt\/point-of-sale\/design-your-integration\/notifications\/standard-notifications"},"levels":5,"category":"In-person payments","category_color":"green","tags":["Platform-generated","webhooks"]}}
