{"title":"Additional features for Hosted Payment Pages","category":"default","creationDate":1776961627,"content":"<div class=\"sc-notice warning\"><div>\n<p><strong>Hosted Payment Pages are no longer available<\/strong><\/p>\n<p>To accept payments through an Adyen-hosted page, use our <a href=\"\/pt\/online-payments\/build-your-integration\/sessions-flow?platform=Web&amp;integration=Hosted%2BCheckout\">Hosted Checkout<\/a>.<\/p>\n<p>This page is for the classic Hosted Payment Pages (HPP) integration, which has reached end-of-life.  We are no longer processing transactions though HPP.<\/p>\n<\/div><\/div>\n<h2 id=\"hpp-in-an-iframe\">HPP in an iFrame<\/h2>\n<p>Although possible, using iFrames can introduce known usability, security and cross-domain browser issues.<\/p>\n<p>Keep the following in mind:<\/p>\n<ul>\n<li>Some redirect payment methods, such as iDEAL, do not allow displaying their pages in an iFrame; they will break out of it. Other redirect payment methods may require more available screen space than your iFrame allows. You should also be prepared to handle the difference in behaviour for the payment result URL, as once the payment completes you may not be in an iFrame anymore.<\/li>\n<li>Another problem you may face is the browser's cookie policy. The HPP solution requires cookies. Using an iFrame means that the browser may impose restrictions regarding the conditions in which cookies are allowed to be set within the iFrame. While there are workarounds to get the browser to accept cookies in a default configuration, the shopper may have configured a more restrictive policy. The most common problem is with Apple Safari and Google Chrome browsers: by default, they require user-initiated page loading inside an iFrame. This means that first the iFrame needs to be loaded with a page hosted at the parent domain. Secondly, on this page the user needs to actively click on a button submitting the redirect to the HPP.<\/li>\n<\/ul>\n<p>Adyen cannot guarantee that all payment methods will work when using an iFrame, nor that the behaviour of a payment method will remain the same. Furthermore, the exact operation of a redirect payment method can differ between the test and the live environments.<\/p>\n<h2 id=\"filtering-payment-methods\">Filtering payment methods<\/h2>\n<p>For some payment requests, you may decide to filter the payment methods that are shown on the HPP or bypass the HPP entirely.<\/p>\n<ul>\n<li>The\u00a0<code>allowedMethods<\/code> field is used to display specific payment methods.<\/li>\n<li>The <code>blockedMethods<\/code> field is used to prevent specific payment methods from being shown.<\/li>\n<li>The <code>brandCode<\/code> and the\u00a0issuerId fields are used to take the customer directly to a specific payment method.<\/li>\n<\/ul>\n<p>All the payment methods that are configured for your account, including the value you use to indicate the specific payment method, are available in the Adyen Customer Area (CA) interface under\u00a0<strong>Settings | Payment Methods | Name<\/strong>.<br \/>\nFor the allowedMethods and\u00a0blockedMethods fields you can use a group payment method value:<\/p>\n<table>\n<thead>\n<tr>\n<th>Payment group name<\/th>\n<th>Value<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Cards (includes all debit and credit cards)<\/td>\n<td>card<\/td>\n<\/tr>\n<tr>\n<td>Bank Transfers (from all countries\/regions)<\/td>\n<td>bankTransfer<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3 id=\"payment-method-availability\">Payment method availability<\/h3>\n<p>Some payment methods are not available in all countries\/regions. For example, iDEAL is only offered if the shopper is from The Netherlands.<\/p>\n<p>If the payment method selection is done on your web site, and the\u00a0allowedMethods parameter contains a value for a payment method that is not available in all countries\/regions, we advise that you set the\u00a0countryCode parameter as well. This ensures that the shopper only sees the payment methods that are relevant for their country\/region.<\/p>\n<p>For example, if you set\u00a0allowedMethods to ideal, you need to set\u00a0countryCode to\u00a0NL to ensure that the iDEAL payment method is shown.<br \/>\nThe list of countries\/regions where a payment method is offered is also available in the payment methods list in the CA interface, under the\u00a0<strong>Available Countries<\/strong>\u00a0column.<\/p>\n<p>The list of payment methods may differ in the test and live environments. All payment methods are not automatically configured for the LIVE environment.<\/p>\n<h2 id=\"custom-payment-methods\">Custom payment methods<\/h2>\n<p>Adyen offers an option to display custom payment methods on the HPP. Contact our <a href=\"https:\/\/ca-test.adyen.com\/ca\/ca\/contactUs\/support.shtml?form=other\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">Support Team<\/a> to enable this.<\/p>\n<p>The name of a custom payment method always starts with\u00a0c_. For example,\u00a0c_invoice.<\/p>\n<p>The custom payment method is shown like all other payment methods on your HPP. This also means that you can add extra charges to the payment method, change the display order, and so on.\u00a0<\/p>\n<p>When a shopper selects a custom payment method, they are redirected to a static URL, which you need to provide during the setup of the custom payment method. The following parameters are passed back to this redirect URL.<\/p>\n<table>\n<thead>\n<tr>\n<th>Field<\/th>\n<th>Description<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>pspReference<\/td>\n<td>Adyen's 16-character unique reference associated with the transaction\/the request.\u00a0This value is globally unique; quote it when communicating with us about this request.<\/td>\n<\/tr>\n<tr>\n<td>merchantReference<\/td>\n<td>This is the reference that you assigned to the original payment.<\/td>\n<\/tr>\n<tr>\n<td>skinCode<\/td>\n<td>The code of the Skin used to process the payment.<\/td>\n<\/tr>\n<tr>\n<td>paymentAmount<\/td>\n<td>The payment amount as specified in your initial payment request.<\/td>\n<\/tr>\n<tr>\n<td>currencyCode<\/td>\n<td>The three-character <a href=\"https:\/\/en.wikipedia.org\/wiki\/ISO_4217\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">ISO currency code<\/a>.<\/td>\n<\/tr>\n<tr>\n<td>additionalAmount<strong>\u00a0<\/strong>(optional)<\/td>\n<td>An additional amount when there are extra charges configured for this custom payment method in your skin. Similar to the\u00a0<code>paymentAmount<\/code>\u00a0field, the\u00a0<code>additionalAmount<\/code>\u00a0is specified in minor units, without a decimal separator.<\/td>\n<\/tr>\n<tr>\n<td>customPaymentMethod<\/td>\n<td>The custom payment method used for the transaction.<\/td>\n<\/tr>\n<tr>\n<td>paymentMethod<\/td>\n<td>The payment method\u00a0used for the transaction; it holds the same value as\u00a0<code>customPaymentMethod<\/code>.<\/td>\n<\/tr>\n<tr>\n<td>merchantSig<\/td>\n<td>The signature in Base64 encoded format. It is generated by concatenating the values of payment session fields, and by computing the HMAC using the shared secret, as configured in the skin. <br \/>For more information, refer to <a href=\"\/pt\/online-payments\/classic-integrations\/hosted-payment-pages\/hmac-signature-calculation\">HMAC signature calculation<\/a>.<\/td>\n<\/tr>\n<tr>\n<td>merchantReturnData<\/td>\n<td>If you set this field in the payment session setup, the value is passed back as is.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>The\u00a0<code>customPaymentMethod<\/code>\u00a0and\u00a0<code>paymentMethod<\/code>\u00a0parameters hold the same value, and they are both included in the URL to keep consistent with the\u00a0<code>resultUrl<\/code>\u00a0value.<\/p>\n<p>Given that there are extra fields in the custom payment URL the associated\u00a0<code>merchantSig<\/code>\u00a0is also calculated differently.\u00a0<code>authResult<\/code>\u00a0is not one of the parameters because its value is not known. It should be determined by the system that is behind the redirect URL. After a shopper has selected the custom payment method, the payment request is stored in our system with the\u00a0<code>HandledExternally<\/code>\u00a0status.<\/p>\n<h2 id=\"address-verification-system-avs\">Address Verification System (AVS)<\/h2>\n<p>This is a security feature that verifies the billing address of the cardholder. It does so by comparing\u00a0the numeric portions of the card holder's registered billing address to those entered by the shopper.\u00a0It must be supported for a limited set of card types in certain countries\/regions.<\/p>\n<p>For more information, refer to\u00a0<a href=\"\/pt\/risk-management\/avs-checks\">AVS<\/a>.<\/p>","url":"https:\/\/docs.adyen.com\/pt\/online-payments\/classic-integrations\/hosted-payment-pages\/additional-features","articleFields":{"parameters":{"anchor_new":"<a href=\"\/online-payments\/drop-in-web\">Web Drop-in<\/a> or <a href=\"\/online-payments\/components-web\">Components<\/a>","parent_page":"classic Hosted Payment Pages (HPP)","new_desc":"integrating using our Checkout APIs"},"sitemap":{"priority":0.3},"id":"24217224","type":"page","_expandable":{"operations":""},"status":"current","last_edit_on":"14-01-2021 15:00"},"algolia":{"url":"https:\/\/docs.adyen.com\/pt\/online-payments\/classic-integrations\/hosted-payment-pages\/additional-features","title":"Additional features for Hosted Payment Pages","content":"\nHosted Payment Pages are no longer available\nTo accept payments through an Adyen-hosted page, use our Hosted Checkout.\nThis page is for the classic Hosted Payment Pages (HPP) integration, which has reached end-of-life.  We are no longer processing transactions though HPP.\n\nHPP in an iFrame\nAlthough possible, using iFrames can introduce known usability, security and cross-domain browser issues.\nKeep the following in mind:\n\nSome redirect payment methods, such as iDEAL, do not allow displaying their pages in an iFrame; they will break out of it. Other redirect payment methods may require more available screen space than your iFrame allows. You should also be prepared to handle the difference in behaviour for the payment result URL, as once the payment completes you may not be in an iFrame anymore.\nAnother problem you may face is the browser's cookie policy. The HPP solution requires cookies. Using an iFrame means that the browser may impose restrictions regarding the conditions in which cookies are allowed to be set within the iFrame. While there are workarounds to get the browser to accept cookies in a default configuration, the shopper may have configured a more restrictive policy. The most common problem is with Apple Safari and Google Chrome browsers: by default, they require user-initiated page loading inside an iFrame. This means that first the iFrame needs to be loaded with a page hosted at the parent domain. Secondly, on this page the user needs to actively click on a button submitting the redirect to the HPP.\n\nAdyen cannot guarantee that all payment methods will work when using an iFrame, nor that the behaviour of a payment method will remain the same. Furthermore, the exact operation of a redirect payment method can differ between the test and the live environments.\nFiltering payment methods\nFor some payment requests, you may decide to filter the payment methods that are shown on the HPP or bypass the HPP entirely.\n\nThe\u00a0allowedMethods field is used to display specific payment methods.\nThe blockedMethods field is used to prevent specific payment methods from being shown.\nThe brandCode and the\u00a0issuerId fields are used to take the customer directly to a specific payment method.\n\nAll the payment methods that are configured for your account, including the value you use to indicate the specific payment method, are available in the Adyen Customer Area (CA) interface under\u00a0Settings | Payment Methods | Name.\nFor the allowedMethods and\u00a0blockedMethods fields you can use a group payment method value:\n\n\n\nPayment group name\nValue\n\n\n\n\nCards (includes all debit and credit cards)\ncard\n\n\nBank Transfers (from all countries\/regions)\nbankTransfer\n\n\n\nPayment method availability\nSome payment methods are not available in all countries\/regions. For example, iDEAL is only offered if the shopper is from The Netherlands.\nIf the payment method selection is done on your web site, and the\u00a0allowedMethods parameter contains a value for a payment method that is not available in all countries\/regions, we advise that you set the\u00a0countryCode parameter as well. This ensures that the shopper only sees the payment methods that are relevant for their country\/region.\nFor example, if you set\u00a0allowedMethods to ideal, you need to set\u00a0countryCode to\u00a0NL to ensure that the iDEAL payment method is shown.\nThe list of countries\/regions where a payment method is offered is also available in the payment methods list in the CA interface, under the\u00a0Available Countries\u00a0column.\nThe list of payment methods may differ in the test and live environments. All payment methods are not automatically configured for the LIVE environment.\nCustom payment methods\nAdyen offers an option to display custom payment methods on the HPP. Contact our Support Team to enable this.\nThe name of a custom payment method always starts with\u00a0c_. For example,\u00a0c_invoice.\nThe custom payment method is shown like all other payment methods on your HPP. This also means that you can add extra charges to the payment method, change the display order, and so on.\u00a0\nWhen a shopper selects a custom payment method, they are redirected to a static URL, which you need to provide during the setup of the custom payment method. The following parameters are passed back to this redirect URL.\n\n\n\nField\nDescription\n\n\n\n\npspReference\nAdyen's 16-character unique reference associated with the transaction\/the request.\u00a0This value is globally unique; quote it when communicating with us about this request.\n\n\nmerchantReference\nThis is the reference that you assigned to the original payment.\n\n\nskinCode\nThe code of the Skin used to process the payment.\n\n\npaymentAmount\nThe payment amount as specified in your initial payment request.\n\n\ncurrencyCode\nThe three-character ISO currency code.\n\n\nadditionalAmount\u00a0(optional)\nAn additional amount when there are extra charges configured for this custom payment method in your skin. Similar to the\u00a0paymentAmount\u00a0field, the\u00a0additionalAmount\u00a0is specified in minor units, without a decimal separator.\n\n\ncustomPaymentMethod\nThe custom payment method used for the transaction.\n\n\npaymentMethod\nThe payment method\u00a0used for the transaction; it holds the same value as\u00a0customPaymentMethod.\n\n\nmerchantSig\nThe signature in Base64 encoded format. It is generated by concatenating the values of payment session fields, and by computing the HMAC using the shared secret, as configured in the skin. For more information, refer to HMAC signature calculation.\n\n\nmerchantReturnData\nIf you set this field in the payment session setup, the value is passed back as is.\n\n\n\nThe\u00a0customPaymentMethod\u00a0and\u00a0paymentMethod\u00a0parameters hold the same value, and they are both included in the URL to keep consistent with the\u00a0resultUrl\u00a0value.\nGiven that there are extra fields in the custom payment URL the associated\u00a0merchantSig\u00a0is also calculated differently.\u00a0authResult\u00a0is not one of the parameters because its value is not known. It should be determined by the system that is behind the redirect URL. After a shopper has selected the custom payment method, the payment request is stored in our system with the\u00a0HandledExternally\u00a0status.\nAddress Verification System (AVS)\nThis is a security feature that verifies the billing address of the cardholder. It does so by comparing\u00a0the numeric portions of the card holder's registered billing address to those entered by the shopper.\u00a0It must be supported for a limited set of card types in certain countries\/regions.\nFor more information, refer to\u00a0AVS.","type":"page","locale":"pt","boost":16,"hierarchy":{"lvl0":"Home","lvl1":"Online payments","lvl2":"Classic integrations for Ecommerce","lvl3":"Hosted Payment Pages","lvl4":"Additional features for Hosted Payment Pages"},"hierarchy_url":{"lvl0":"https:\/\/docs.adyen.com\/pt","lvl1":"https:\/\/docs.adyen.com\/pt\/online-payments","lvl2":"https:\/\/docs.adyen.com\/pt\/online-payments\/classic-integrations","lvl3":"https:\/\/docs.adyen.com\/pt\/online-payments\/classic-integrations\/hosted-payment-pages","lvl4":"\/pt\/online-payments\/classic-integrations\/hosted-payment-pages\/additional-features"},"levels":5,"category":"Online Payments","category_color":"green","tags":["Additional","features","Hosted","Payment","Pages"]}}
