{"title":"Receive card and shopper identifiers","category":"default","creationDate":1776961627,"content":"<div class=\"additional-info-block output-inline\">\n<div class=\"additional-info-block__body\"><p>Using card and shopper identifiers is even more powerful across channels. See our <a href=\"\/pt\/unified-commerce\">omnichannel documentation<\/a>.<\/p><\/div><\/div>\n\n<p>The payment data that you receive from Adyen offer a unique opportunity to connect payments with <a href=\"\/pt\/point-of-sale\/card-acquisition\/insights\">insights<\/a> into your customers, and to implement specific customer journeys like the <a href=\"\/pt\/point-of-sale\/card-acquisition#scenarios\">card acquisition scenarios<\/a>. We refer to these data as <em>card and shopper identifiers<\/em>.<\/p>\n<p>The identifiers are returned in Terminal API card acquisition and payment responses, and also asynchronously in <a href=\"\/pt\/development-resources\/webhooks\">webhooks<\/a>. However, you do not receive all of them automatically. There are some identifiers that you need to enable in your <a href=\"https:\/\/ca-test.adyen.com\/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">Customer Area<\/a>, and some that you first need to collect or create yourself.<\/p>\n<h2>Requirements<\/h2>\n<p>Before you begin, take into account the following requirements 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>Integration type<\/strong><\/td>\n<td style=\"text-align: left;\">A <a href=\"\/pt\/point-of-sale\/basic-tapi-integration\/\">Terminal API integration<\/a> with payment terminals.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><strong>Webhooks<\/strong><\/td>\n<td style=\"text-align: left;\">To use identifiers from webhook events, set up <a href=\"\/pt\/development-resources\/webhooks\/\">standard webhooks<\/a>.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\"><strong>Setup steps<\/strong><\/td>\n<td style=\"text-align: left;\">Before you begin, check the <a href=\"#considerations\">general considerations<\/a>.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2 id=\"considerations\">General considerations<\/h2>\n<p>To use card and shopper identifiers, you need to:<\/p>\n<ul>\n<li>Know what data you will be handling. Refer to the <a href=\"#overview\">overview<\/a> to learn more.<\/li>\n<li>Understand and manage the <a href=\"#privacy\">privacy implications<\/a> of using such data.<\/li>\n<li>Have your own back-end system for storing shopper identifiers and purchase data, like a Customer Relationship Management System (CRM) or other database.<\/li>\n<li>Implement business logic to get the desired result from this data. For example, to combine data in a way that answers questions about your shoppers.<\/li>\n<\/ul>\n<h2 id=\"privacy\">Customer data and privacy<\/h2>\n<p>Before storing any customer data, including payment data, you need to consider data privacy.<\/p>\n<ul>\n<li>Consult your legal department or an accredited third-party company to understand the data privacy regulations of the countries\/regions that you operate in.<\/li>\n<li>Ask for your customer's explicit permission to store their data, and be clear about what you intend to use it for.  For this, you could use the Terms and Conditions on your website, or you can <a href=\"\/pt\/point-of-sale\/shopper-engagement\/shopper-input\">use the payment terminal to interact with the customer<\/a>. <\/li>\n<\/ul>\n<p>If the customer asks to remove their information, you can use our <a href=\"\/pt\/development-resources\/data-protection-api\">Data Protection API<\/a> to remove any customer-related data that you have stored with Adyen. The API also enables you to comply with the General Data Protection Regulation (GDPR) <a href=\"https:\/\/gdpr-info.eu\/art-17-gdpr\/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">right to erasure<\/a>.<\/p>\n<h2 id=\"overview\">Overview of card and shopper identifiers<\/h2>\n<p>Specific use cases or customer journeys can involve one or more of the following identifiers:<\/p>\n<ul>\n<li>\n<p><strong>BIN<\/strong>: the <a href=\"\/pt\/get-started-with-adyen\/adyen-glossary\/#bank-identification-number-bin\">Bank Identification Number<\/a> of the shopper's card.<\/p>\n<\/li>\n<li>\n<p><strong>Card alias<\/strong>: a value that uniquely represents the shopper's card number (PAN), for example <code>A373176724022941<\/code>. With this, you can recognize the card that a shopper is using and identify if they are returning customers. You cannot use the card alias for making payments.<\/p>\n<\/li>\n<li>\n<p><strong>Funding source<\/strong>: funding source of the card, for example debit, credit, or prepaid.<\/p>\n<\/li>\n<li>\n<p><strong>Issuer country<\/strong>: the two-letter country code and the numeric country code of the country where the card was issued. This is a good indicator of the shopper's country\/region of residence.<\/p>\n<\/li>\n<li>\n<p><strong>Payment Account Reference<\/strong> (PAR): the PAR is an identifier behind the card or NFC wallet. It represents the payment account that the card and\/or NFC wallet is linked to. It solves the issue with the PAN not being available for NFC wallet transactions. You can use the PAR to identify the shopper.<\/p>\n<\/li>\n<\/ul>\n<div class=\"notices green\">\n<p>Card schemes are starting to adopt the PAR. Currently, we return it for Visa and MasterCard transactions, when available. The PAR can be returned for ecommerce transactions and for Terminal API payment and card acquisition requests.<\/p>\n<\/div>\n<ul>\n<li>\n<p><strong>Recurring detail reference<\/strong>: the token for making <a href=\"\/pt\/get-started-with-adyen\/adyen-glossary\/#recurring-payments-definition\">recurring contract payments<\/a>. The token is generated on the plataforma de pagamentos da Adyen and returned in the response for the initial payment. In the recurring payments you use this token instead of actual card details.<\/p>\n<\/li>\n<li>\n<p><strong>Shopper reference<\/strong>: a unique reference defined by you and stored on the plataforma de pagamentos da Adyen.  Each shopper reference must have a minimum length of three characters, and should not include personally identifiable information (PII), such as name or email address. With the shopper reference, you can recognize the shopper who makes the purchase. If you collect the shopper's email address, you can link multiple card aliases, shopper references, and stored payment method identifiers (tokens) to the same shopper through their email address. The shopper reference and the tokens are necessary for making <a href=\"\/pt\/get-started-with-adyen\/adyen-glossary\/#recurring-payments-definition\">recurring contract payments<\/a>.<\/p>\n<\/li>\n<li>\n<p><strong>Shopper email<\/strong>: the shopper's email address that you collected in some way, and stored on the plataforma de pagamentos da Adyen when creating a recurring contract.<\/p>\n<\/li>\n<li>\n<p><strong>Token variant<\/strong>: the type of NFC wallet, like Apple Pay, used in the transaction. Note that this is not the kind of token you can use for making payments. Example value: <span translate=\"no\"><strong>mc_applepay<\/strong><\/span>.<\/p>\n<\/li>\n<\/ul>\n<p>The importance of these identifiers depends on your scenario. The following table shows the connection between identifiers and use case examples.<\/p>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left;\">Identifier<\/th>\n<th style=\"text-align: center;\"><a href=\"\/pt\/point-of-sale\/card-acquisition\/insights\">Insights<\/a><\/th>\n<th style=\"text-align: center;\"><a href=\"\/pt\/point-of-sale\/shopper-recognition\/identification\">Card recognition<\/a><\/th>\n<th style=\"text-align: center;\"><a href=\"\/pt\/point-of-sale\/loyalty\">Loyalty<\/a><\/th>\n<th style=\"text-align: center;\"><a href=\"\/pt\/point-of-sale\/shopper-recognition\/tax-free-shopping\">Tax-free<br \/>shopping<\/a><\/th>\n<th style=\"text-align: center;\"><a href=\"\/pt\/point-of-sale\/recurring-payments\">Recurring<br \/>payments<\/a><\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: left;\">BIN<\/td>\n<td style=\"text-align: center;\"><\/td>\n<td style=\"text-align: center;\"><\/td>\n<td style=\"text-align: center;\"><\/td>\n<td style=\"text-align: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<td style=\"text-align: center;\"><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">Card alias<\/td>\n<td style=\"text-align: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<td style=\"text-align: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<td style=\"text-align: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<td style=\"text-align: center;\"><\/td>\n<td style=\"text-align: center;\"><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">Funding source<\/td>\n<td style=\"text-align: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<td style=\"text-align: center;\"><\/td>\n<td style=\"text-align: center;\"><\/td>\n<td style=\"text-align: center;\"><\/td>\n<td style=\"text-align: center;\"><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">Issuer country\/region<\/td>\n<td style=\"text-align: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<td style=\"text-align: center;\"><\/td>\n<td style=\"text-align: center;\"><\/td>\n<td style=\"text-align: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<td style=\"text-align: center;\"><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">Payment Account Reference<\/td>\n<td style=\"text-align: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<td style=\"text-align: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<td style=\"text-align: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<td style=\"text-align: center;\"><\/td>\n<td style=\"text-align: center;\"><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">Recurring detail reference<\/td>\n<td style=\"text-align: center;\"><\/td>\n<td style=\"text-align: center;\"><\/td>\n<td style=\"text-align: center;\"><\/td>\n<td style=\"text-align: center;\"><\/td>\n<td style=\"text-align: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">Shopper email<\/td>\n<td style=\"text-align: center;\"><\/td>\n<td style=\"text-align: center;\"><\/td>\n<td style=\"text-align: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<td style=\"text-align: center;\"><\/td>\n<td style=\"text-align: center;\"><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">Shopper reference<\/td>\n<td style=\"text-align: center;\"><\/td>\n<td style=\"text-align: center;\"><\/td>\n<td style=\"text-align: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<td style=\"text-align: center;\"><\/td>\n<td style=\"text-align: center;\"><img title=\"-white_check_mark-\" alt=\"-white_check_mark-\" class=\"smileys\" src=\"\/user\/data\/smileys\/emoji\/white_check_mark.png\" \/><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2 id=\"receiving-identifiers-in-responses\">Receive identifiers in Terminal API responses<\/h2>\n<p>Now that you know based on the <a href=\"#overview\">overview<\/a> what card and shopper identifiers exist and which ones you need for your use cases, you have to make sure that your Terminal API responses actually return those identifiers.<\/p>\n<p>The following identifiers are returned automatically:<\/p>\n<ul>\n<li>Funding source<\/li>\n<li>Card BIN<\/li>\n<\/ul>\n<p>The shopper email is only returned in the response if you have previously collected the email from the shopper and submitted the email in a payment request.<\/p>\n<p>But to get the card alias, issuer country\/region, PAR, shopper reference, and recurring detail reference, you need to enable receiving this data:<\/p>\n<ol>\n<li>In your <a href=\"https:\/\/ca-test.adyen.com\/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">Customer Area<\/a>, go to <strong>Developers<\/strong> &gt; <strong>Additional data<\/strong>.<\/li>\n<li>\n<p>Select options:<\/p>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left;\">Identifier<\/th>\n<th style=\"text-align: left;\">Instruction<\/th>\n<th style=\"text-align: left;\">Result<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: left;\">Card alias<\/td>\n<td style=\"text-align: left;\">Select <strong>Payment<\/strong> &gt; <strong>Include alias info<\/strong><\/td>\n<td style=\"text-align: left;\">Returns the alias in the <code>AdditionalResponse<\/code>.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">Issuer country\/region<\/td>\n<td style=\"text-align: left;\">Select <strong>Card<\/strong> &gt; <strong>Issuer country\/region<\/strong><\/td>\n<td style=\"text-align: left;\">Returns the numeric country code (for example, <strong>528<\/strong>), both in the <code>CardData<\/code> and in the <code>AdditionalResponse<\/code>. Also returns the two-letter country code (for example, <span translate=\"no\"><strong>NL<\/strong><\/span>) in the <code>AdditionalResponse<\/code>.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">PAR<\/td>\n<td style=\"text-align: left;\">Select <strong>Acquirer<\/strong> &gt; <strong>Payment account reference<\/strong><\/td>\n<td style=\"text-align: left;\">Returns the PAR, if available<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">Recurring detail reference<\/td>\n<td style=\"text-align: left;\">Select <strong>Payment<\/strong> &gt; <strong>Recurring details<\/strong><\/td>\n<td style=\"text-align: left;\">Returns the recurring detail reference and the shopper reference in the <code>AdditionalResponse<\/code>.<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">Shopper reference<\/td>\n<td style=\"text-align: left;\">Select <strong>Payment<\/strong> &gt; <strong>Recurring details<\/strong><\/td>\n<td style=\"text-align: left;\">Returns the recurring detail reference and the shopper reference in the <code>AdditionalResponse<\/code>.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/li>\n<\/ol>\n<h3>Example<\/h3>\n<p>In the Terminal API response, the identifiers are in the <code>AdditionalResponse<\/code>. Some identifiers are also returned in other fields. We return the <code>AdditionalResponse<\/code> either as key-value pairs separated by an ampersand <strong>&amp;<\/strong>, or as a Base64-encoded string that you need to decode to get a JSON object.<\/p>\n<div data-component-wrapper=\"code-sample\">\n    <code-sample :title=\"'Identifiers in a payment response'\" :id=\"''\" :code-data='[{\"language\":\"json\",\"tabTitle\":\"\",\"content\":\"{\\n    \\\"SaleToPOIResponse\\\": {\\n        \\\"MessageHeader\\\": {...},\\n        \\\"PaymentResponse\\\": {...},\\n            \\\"PaymentReceipt\\\": [...],\\n            \\\"PaymentResult\\\": {\\n                ...\\n                \\\"PaymentInstrumentData\\\": {\\n                    \\\"CardData\\\": {\\n                        \\\"{hint:Included if you enabled receiving the issuer country}CardCountryCode{\\\/hint}\\\": \\\"826\\\",\\n                        ...\\n                        \\\"PaymentToken\\\": {\\n                            \\\"TokenRequestedType\\\": \\\"Customer\\\",\\n                            \\\"{hint:The card alias, returned if the request includes TokenRequestedType}TokenValue{\\\/hint}\\\": \\\"M469509594859802\\\"\\n                        },\\n                    },\\n                    \\\"PaymentInstrumentType\\\": \\\"Card\\\"\\n                }\\n            },\\n            \\\"Response\\\": {\\n                \\\"{hint:Includes identifiers and transaction details}AdditionalResponse{\\\/hint}\\\": \\\"...&amp;alias=M469509594859802....&amp;recurring.shopperReference=SREF12458...&amp;shopperReference=SREF12458&amp;shopperEmail=S.Hopper%40example.com...&amp;cardIssuerCountryId=826...&amp;fundingSource=CREDIT&amp;issuerCountry=GB...&amp;cardBin=541333...\\\",\\n                \\\"Result\\\": \\\"Success\\\"\\n            },\\n            \\\"SaleData\\\": {...}\\n        }\\n    }\\n}\"}]' :enable-copy-link-to-code-block=\"true\" :code-sample-card-size=\"'fullsize'\"><\/code-sample>\n<\/div>\n<p>If the <code>AdditionalResponse<\/code> is returned as a Base64-encoded string, you get a JSON object similar to the following when you Base64-decode the string:<\/p>\n<pre><code class=\"language-json\">{\n    \"additionalData\": {\n        \"AID\": \"A000000004101001\",\n        \"adjustAuthorisationData\": \"BQABAQA20...oyMyv\",\n        \"alias\": \"M469509594859802\",\n        \"aliasType\": \"Default\",\n        \"applicationPreferredName\": \"mc en gbr gbp\",\n        \"backendGiftcardIndicator\": \"false\",\n        \"batteryLevel\": \"40%\",\n        \"cardBin\": \"541333\",\n        \"cardHolderVerificationMethodResults\": \"420300\",\n        \"cardIssueNumber\": \"33\",\n        \"cardIssuerCountryId\": \"826\",\n        \"cardScheme\": \"mc\",\n        \"cardSummary\": \"9999\",\n        \"cardType\": \"mc\",\n        \"expiryMonth\": \"02\",\n        \"expiryYear\": \"2028\",\n        \"fundingSource\": \"CREDIT\",\n        \"giftcardIndicator\": \"false\",\n        \"iso8601TxDate\": \"2021-04-14T13:06:39.0000000+0000\",\n        \"issuerCountry\": \"GB\",\n        \"merchantReference\": \"818\",\n        \"mid\": \"1000\",\n        \"offline\": \"false\",\n        \"paymentMethod\": \"mc\",\n        \"paymentMethodVariant\": \"mc\",\n        \"posAmountCashbackValue\": \"0\",\n        \"posAmountGratuityValue\": \"0\",\n        \"posAuthAmountCurrency\": \"EUR\",\n        \"posAuthAmountValue\": \"12098\",\n        \"posEntryMode\": \"CLESS_CHIP\",\n        \"posOriginalAmountValue\": \"12098\",\n        \"posadditionalamounts.originalAmountCurrency\": \"EUR\",\n        \"posadditionalamounts.originalAmountValue\": \"12098\",\n        \"pspReference\": \"NC6HT9CRT65ZGN82\",\n        \"recurring.shopperReference\": \"SREF12458\",\n        \"shopperEmail\": \"S.Hopper@example.com\",\n        \"shopperReference\": \"SREF12458\",\n        \"startMonth\": \"01\",\n        \"startYear\": \"2017\",\n        \"tc\": \"23733CAF5C7F70B2\",\n        \"tid\": \"47069832\",\n        \"transactionLanguage\": \"en\",\n        \"transactionReferenceNumber\": \"NC6HT9CRT65ZGN82\",\n        \"transactionType\": \"GOODS_SERVICES\",\n        \"txdate\": \"14-04-2021\",\n        \"txtime\": \"15:06:39\"\n    },\n    \"store\": \"YOUR_STORE\"\n}<\/code><\/pre>\n<h2 id=\"receiving-identifiers-in-webhooks\">Receive identifiers in webhooks<\/h2>\n<p>In particular for <a href=\"\/pt\/point-of-sale\/card-acquisition\/insights\">gaining insights across channels<\/a>, you may want to gather identifiers from standard webhooks. For this, you need to enable receiving the identifiers that your use cases require. The identifies are then included in the webhook message in the <code>additionalData<\/code> object.<\/p>\n<ol>\n<li>\n<p><a href=\"\/pt\/development-resources\/webhooks\">Set up a standard webhook<\/a>, if you haven't done so already.<\/p>\n<\/li>\n<li>\n<p>In your <a href=\"https:\/\/ca-test.adyen.com\/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" class=\"external-link no-image\">Customer Area<\/a>, open the <strong>Standard webhook<\/strong> you set up and select the <a href=\"\/pt\/development-resources\/webhooks\/webhook-types\/additional-settings\">additional settings<\/a> you want to receive.<\/p>\n<p>Some of the settings you may want to enable, are:<\/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<\/td>\n<td style=\"text-align: left;\"><strong>Include Issuer Country<\/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> too.<\/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> too.<\/div><\/div><\/td>\n<td><\/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<td><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/li>\n<li>\n<p>To receive the PAR, or the token variant in standard webhooks, go to <strong>Developers<\/strong> &gt; <strong>Additional data<\/strong> and enable these identifiers:<\/p>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: left;\">Identifier<\/th>\n<th style=\"text-align: left;\">Additional data to select<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: left;\">PAR<\/td>\n<td style=\"text-align: left;\">Under <strong>Acquirer<\/strong>, select <strong>Payment account reference<\/strong><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: left;\">Token variant<\/td>\n<td style=\"text-align: left;\">Under <strong>Card<\/strong>, select <strong>Token information for digital wallets<\/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<h3>Example standard webhook<\/h3>\n<p>The following example shows the standard webhook for a point-of-sale 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\\\": \\\"YOUR_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>See also<\/h2>\n<div class=\"see-also-links output-inline\" id=\"see-also\">\n<ul><li><a href=\"\/point-of-sale\/card-acquisition\"\n                        target=\"_self\"\n                        >\n                    Card acquisition\n                <\/a><\/li><li><a href=\"\/point-of-sale\/card-acquisition\/insights\"\n                        target=\"_self\"\n                        >\n                    Shopper insights\n                <\/a><\/li><\/ul><\/div>\n","url":"https:\/\/docs.adyen.com\/pt\/point-of-sale\/card-acquisition\/identifiers","articleFields":{"description":"Understand the data you may want to collect in shopper recognition use cases.","last_edit_on":"27-03-2020 16:16","feedback_component":true},"algolia":{"url":"https:\/\/docs.adyen.com\/pt\/point-of-sale\/card-acquisition\/identifiers","title":"Receive card and shopper identifiers","content":"\nUsing card and shopper identifiers is even more powerful across channels. See our omnichannel documentation.\n\nThe payment data that you receive from Adyen offer a unique opportunity to connect payments with insights into your customers, and to implement specific customer journeys like the card acquisition scenarios. We refer to these data as card and shopper identifiers.\nThe identifiers are returned in Terminal API card acquisition and payment responses, and also asynchronously in webhooks. However, you do not receive all of them automatically. There are some identifiers that you need to enable in your Customer Area, and some that you first need to collect or create yourself.\nRequirements\nBefore you begin, take into account the following requirements and preparations.\n\n\n\nRequirement\nDescription\n\n\n\n\nIntegration type\nA Terminal API integration with payment terminals.\n\n\nWebhooks\nTo use identifiers from webhook events, set up standard webhooks.\n\n\nSetup steps\nBefore you begin, check the general considerations.\n\n\n\nGeneral considerations\nTo use card and shopper identifiers, you need to:\n\nKnow what data you will be handling. Refer to the overview to learn more.\nUnderstand and manage the privacy implications of using such data.\nHave your own back-end system for storing shopper identifiers and purchase data, like a Customer Relationship Management System (CRM) or other database.\nImplement business logic to get the desired result from this data. For example, to combine data in a way that answers questions about your shoppers.\n\nCustomer data and privacy\nBefore storing any customer data, including payment data, you need to consider data privacy.\n\nConsult your legal department or an accredited third-party company to understand the data privacy regulations of the countries\/regions that you operate in.\nAsk for your customer's explicit permission to store their data, and be clear about what you intend to use it for.  For this, you could use the Terms and Conditions on your website, or you can use the payment terminal to interact with the customer. \n\nIf the customer asks to remove their information, you can use our Data Protection API to remove any customer-related data that you have stored with Adyen. The API also enables you to comply with the General Data Protection Regulation (GDPR) right to erasure.\nOverview of card and shopper identifiers\nSpecific use cases or customer journeys can involve one or more of the following identifiers:\n\n\nBIN: the Bank Identification Number of the shopper's card.\n\n\nCard alias: a value that uniquely represents the shopper's card number (PAN), for example A373176724022941. With this, you can recognize the card that a shopper is using and identify if they are returning customers. You cannot use the card alias for making payments.\n\n\nFunding source: funding source of the card, for example debit, credit, or prepaid.\n\n\nIssuer country: the two-letter country code and the numeric country code of the country where the card was issued. This is a good indicator of the shopper's country\/region of residence.\n\n\nPayment Account Reference (PAR): the PAR is an identifier behind the card or NFC wallet. It represents the payment account that the card and\/or NFC wallet is linked to. It solves the issue with the PAN not being available for NFC wallet transactions. You can use the PAR to identify the shopper.\n\n\n\nCard schemes are starting to adopt the PAR. Currently, we return it for Visa and MasterCard transactions, when available. The PAR can be returned for ecommerce transactions and for Terminal API payment and card acquisition requests.\n\n\n\nRecurring detail reference: the token for making recurring contract payments. The token is generated on the plataforma de pagamentos da Adyen and returned in the response for the initial payment. In the recurring payments you use this token instead of actual card details.\n\n\nShopper reference: a unique reference defined by you and stored on the plataforma de pagamentos da Adyen.  Each shopper reference must have a minimum length of three characters, and should not include personally identifiable information (PII), such as name or email address. With the shopper reference, you can recognize the shopper who makes the purchase. If you collect the shopper's email address, you can link multiple card aliases, shopper references, and stored payment method identifiers (tokens) to the same shopper through their email address. The shopper reference and the tokens are necessary for making recurring contract payments.\n\n\nShopper email: the shopper's email address that you collected in some way, and stored on the plataforma de pagamentos da Adyen when creating a recurring contract.\n\n\nToken variant: the type of NFC wallet, like Apple Pay, used in the transaction. Note that this is not the kind of token you can use for making payments. Example value: mc_applepay.\n\n\nThe importance of these identifiers depends on your scenario. The following table shows the connection between identifiers and use case examples.\n\n\n\nIdentifier\nInsights\nCard recognition\nLoyalty\nTax-freeshopping\nRecurringpayments\n\n\n\n\nBIN\n\n\n\n\n\n\n\nCard alias\n\n\n\n\n\n\n\nFunding source\n\n\n\n\n\n\n\nIssuer country\/region\n\n\n\n\n\n\n\nPayment Account Reference\n\n\n\n\n\n\n\nRecurring detail reference\n\n\n\n\n\n\n\nShopper email\n\n\n\n\n\n\n\nShopper reference\n\n\n\n\n\n\n\n\nReceive identifiers in Terminal API responses\nNow that you know based on the overview what card and shopper identifiers exist and which ones you need for your use cases, you have to make sure that your Terminal API responses actually return those identifiers.\nThe following identifiers are returned automatically:\n\nFunding source\nCard BIN\n\nThe shopper email is only returned in the response if you have previously collected the email from the shopper and submitted the email in a payment request.\nBut to get the card alias, issuer country\/region, PAR, shopper reference, and recurring detail reference, you need to enable receiving this data:\n\nIn your Customer Area, go to Developers &gt; Additional data.\n\nSelect options:\n\n\n\nIdentifier\nInstruction\nResult\n\n\n\n\nCard alias\nSelect Payment &gt; Include alias info\nReturns the alias in the AdditionalResponse.\n\n\nIssuer country\/region\nSelect Card &gt; Issuer country\/region\nReturns the numeric country code (for example, 528), both in the CardData and in the AdditionalResponse. Also returns the two-letter country code (for example, NL) in the AdditionalResponse.\n\n\nPAR\nSelect Acquirer &gt; Payment account reference\nReturns the PAR, if available\n\n\nRecurring detail reference\nSelect Payment &gt; Recurring details\nReturns the recurring detail reference and the shopper reference in the AdditionalResponse.\n\n\nShopper reference\nSelect Payment &gt; Recurring details\nReturns the recurring detail reference and the shopper reference in the AdditionalResponse.\n\n\n\n\n\nExample\nIn the Terminal API response, the identifiers are in the AdditionalResponse. Some identifiers are also returned in other fields. We return the AdditionalResponse either as key-value pairs separated by an ampersand &amp;, or as a Base64-encoded string that you need to decode to get a JSON object.\n\n    \n\nIf the AdditionalResponse is returned as a Base64-encoded string, you get a JSON object similar to the following when you Base64-decode the string:\n{\n    \"additionalData\": {\n        \"AID\": \"A000000004101001\",\n        \"adjustAuthorisationData\": \"BQABAQA20...oyMyv\",\n        \"alias\": \"M469509594859802\",\n        \"aliasType\": \"Default\",\n        \"applicationPreferredName\": \"mc en gbr gbp\",\n        \"backendGiftcardIndicator\": \"false\",\n        \"batteryLevel\": \"40%\",\n        \"cardBin\": \"541333\",\n        \"cardHolderVerificationMethodResults\": \"420300\",\n        \"cardIssueNumber\": \"33\",\n        \"cardIssuerCountryId\": \"826\",\n        \"cardScheme\": \"mc\",\n        \"cardSummary\": \"9999\",\n        \"cardType\": \"mc\",\n        \"expiryMonth\": \"02\",\n        \"expiryYear\": \"2028\",\n        \"fundingSource\": \"CREDIT\",\n        \"giftcardIndicator\": \"false\",\n        \"iso8601TxDate\": \"2021-04-14T13:06:39.0000000+0000\",\n        \"issuerCountry\": \"GB\",\n        \"merchantReference\": \"818\",\n        \"mid\": \"1000\",\n        \"offline\": \"false\",\n        \"paymentMethod\": \"mc\",\n        \"paymentMethodVariant\": \"mc\",\n        \"posAmountCashbackValue\": \"0\",\n        \"posAmountGratuityValue\": \"0\",\n        \"posAuthAmountCurrency\": \"EUR\",\n        \"posAuthAmountValue\": \"12098\",\n        \"posEntryMode\": \"CLESS_CHIP\",\n        \"posOriginalAmountValue\": \"12098\",\n        \"posadditionalamounts.originalAmountCurrency\": \"EUR\",\n        \"posadditionalamounts.originalAmountValue\": \"12098\",\n        \"pspReference\": \"NC6HT9CRT65ZGN82\",\n        \"recurring.shopperReference\": \"SREF12458\",\n        \"shopperEmail\": \"S.Hopper@example.com\",\n        \"shopperReference\": \"SREF12458\",\n        \"startMonth\": \"01\",\n        \"startYear\": \"2017\",\n        \"tc\": \"23733CAF5C7F70B2\",\n        \"tid\": \"47069832\",\n        \"transactionLanguage\": \"en\",\n        \"transactionReferenceNumber\": \"NC6HT9CRT65ZGN82\",\n        \"transactionType\": \"GOODS_SERVICES\",\n        \"txdate\": \"14-04-2021\",\n        \"txtime\": \"15:06:39\"\n    },\n    \"store\": \"YOUR_STORE\"\n}\nReceive identifiers in webhooks\nIn particular for gaining insights across channels, you may want to gather identifiers from standard webhooks. For this, you need to enable receiving the identifiers that your use cases require. The identifies are then included in the webhook message in the additionalData object.\n\n\nSet up a standard webhook, if you haven't done so already.\n\n\nIn your Customer Area, open the Standard webhook you set up and select the additional settings you want to receive.\nSome of the settings you may want to enable, are:\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\nInclude Issuer Country\n\n\nPAR\nAdd Payment Account Reference  Must be enabled under Developers &gt; Additional data too.\n\n\nShopper email, shopper reference\nInclude Shopper Details\n\n\nToken variant\nInclude tokenTxVariant  Must be enabled under Developers &gt; Additional data too.\n\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\n\n\nTo receive the PAR, or the token variant in standard webhooks, go to Developers &gt; Additional data and enable these identifiers:\n\n\n\nIdentifier\nAdditional data to select\n\n\n\n\nPAR\nUnder Acquirer, select Payment account reference\n\n\nToken variant\nUnder Card, select Token information for digital wallets\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\nExample standard webhook\nThe following example shows the standard webhook for a point-of-sale payment. The identifiers are in the additionalData object.\n\n    \n\nSee also\n\n\n                    Card acquisition\n                \n                    Shopper insights\n                \n","type":"page","locale":"pt","boost":17,"hierarchy":{"lvl0":"Home","lvl1":"Terminais","lvl2":"Aquisi\u00e7\u00e3o de cart\u00e3o","lvl3":"Receive card and shopper identifiers"},"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\/card-acquisition","lvl3":"\/pt\/point-of-sale\/card-acquisition\/identifiers"},"levels":4,"category":"In-person payments","category_color":"green","tags":["Receive","shopper","identifiers"]}}
