Search

Are you looking for test card numbers?

Would you like to contact support?

Default icon

Collect data

Collect customer identifiers to run your own analyses.

When processing payments on the Adyen payments platform, we send you payment details containing data you can use to identify customers. You can import these identifiers into your own data warehouse to create granular customer profiles and gain insights into your customers.

Requirements

To collect customer identifiers, you need to:

  1. Consider data privacy.
  2. Understand the identifiers you could use.
  3. Set up webhooks to receive standard notifications. Once set up, you receive a notification for every payment, regardless of the sales channel. The notification contains the payment details, including customer identifiers.

Overview of identifiers

To gain insights and create customer profiles, these are the identifiers you could collect:

  • Card alias: A value that uniquely represents the shopper's card number (PAN), for example A37317672402294. With this, you can recognize the card that a shopper is using. You can't use the card alias for making payments. For NFC wallet transactions, there's no card alias because the PAN is not available.
  • Payment Account Reference (PAR) (only Visa and MasterCard): The PAR is an identifier behind the card or digital wallet. It solves the issue with the PAN not being available for NFC wallet transactions. The PAR is currently being rolled out by Visa and Mastercard and therefore does not yet have full coverage.
  • Shopper reference: A unique reference defined by you and stored on the Adyen payments platform when creating a recurring contract. Based on the shopper reference, you can recognize the shopper who makes a purchase. If you collect the shopper's email address, you can link multiple card aliases and recurring detail references to the same shopper through their email address.
  • Shopper email: The shopper's email address that you collected in some way, and stored on the Adyen payments platform when creating a recurring contract.

For analysis purposes, you can also collect:

  • Funding source: Funding source of the card, for example debit, credit, or prepaid.

  • Issuer country: Country code of the country where the card was issued. This is usually a good indicator of the shopper's country of residence.

Using data from webhooks

To combine data from multiple sales channels, we recommend using standard notification webhooks. Standard notifications have the same format and are delivered in the same way across channels. This makes it easier to set up your integration for collecting data.

To receive identifiers in webhooks:

  1. Set up webhooks for standard notifications.
  2. Enable additional settings to ensure the standard notifications contain the identifiers you are interested in. Some of the settings you may want to enable, are:
    Additional setting Description
    Include Alias Info Returns alias (card alias) and aliasType
    Include Funding Source Returns the fundingSource
    Include Issuer Country Returns the issuerCountry
    Include Shopper Details Returns the shopperEmail and shopperReference

Example standard notification

The following example shows the standard notification webhook for a point-of-sale payment. The identifiers are in the additionalData object.

Identifiers in a standard notification webhook
{
    "live": "false",
    "notificationItems": [
        {
            "NotificationRequestItem": {
                "additionalData": {
                    "authCode": "00",
                    "cardSummary": "9999",
                    "shopperEmail": "S.Hopper@example.com",
                    "shopperIP": "198.51.100.1",
                    "expiryDate": "02/2028",
                    "issuerCountry": "GB",
                    "cardBin": "541333",
                    "aliasType": "Default",
                    "alias": "M469509594859802",
                    "recurring.shopperReference": "SREF12458",
                    "fundingSource": "CREDIT",
                    "shopperReference": "SREF12458"
                },
                "amount": {
                    "currency": "EUR",
                    "value": 12098
                },
                "eventCode": "AUTHORISATION",
                "eventDate": "2021-04-14T15:30:14+02:00",
                "merchantAccountCode": "YOUR_MERCHANT_ACCOUNT",
                "merchantReference": "902",
                "operations": [
                    "CANCEL",
                    "CAPTURE",
                    "REFUND"
                ],
                "paymentMethod": "mc",
                "pspReference": "8825408195409505",
                "reason": "00:9999:02/2028",
                "success": "true"
            }
        }
    ]
}

Using data from Terminal API responses

If you have a point-of-sale integration with our Terminal API, you could use the Terminal API payment responses to collect customer data. The same identifiers that are returned in standard notification webhooks, are also returned in Terminal API payment responses. However, the format is different.

Refer to Receiving identifiers in Terminal API responses for more information and an example.

See also