Skip to main content
Problem Solver I
January 30, 2024
Solved

Appending email address in the URL,GDPR & Data Security

  • January 30, 2024
  • 6 replies
  • 597 views

Hi there :)

 

I hope someone can help!

 

I need to send information about the customer email in the URL - This has initially been asked and answered in this earlier post here.

 

However, this provides issues with GDPR and Data Security.
 

Currently the customer information is directly accessible in the URL when using this method:

  • email={{ email }}
  • email=Name.LastName%40email.com


Therefore I need to figure out, if I can hash the information in the URL.
 

Fingers crossed that someone has the answer to this!

 

Thanks,

Mathilde

    This topic has been closed for replies.
    Best answer by saulblum

    There’s a template filter md5_hash you can use:

    https://developers.klaviyo.com/en/docs/glossary_of_variable_filters

    md5_hash Converts a value to an MD5 hash. {{ your_variable|md5_hash }}

    What’s the use case for including a hash of the email in the URL? If you have click tracking enabled, Klaviyo will append a _kx param to links, which includes a profile identifier, and which will cookie the browser with the profile.

    https://help.klaviyo.com/hc/en-us/articles/115005076767#h_01HADAYAACCVC5TX5932PQ2AZA

    6 replies

    saulblumAnswer
    Klaviyo Employee
    January 30, 2024

    There’s a template filter md5_hash you can use:

    https://developers.klaviyo.com/en/docs/glossary_of_variable_filters

    md5_hash Converts a value to an MD5 hash. {{ your_variable|md5_hash }}

    What’s the use case for including a hash of the email in the URL? If you have click tracking enabled, Klaviyo will append a _kx param to links, which includes a profile identifier, and which will cookie the browser with the profile.

    https://help.klaviyo.com/hc/en-us/articles/115005076767#h_01HADAYAACCVC5TX5932PQ2AZA

    MathildeAuthor
    Problem Solver I
    January 30, 2024

    Hi :)

     

    Thank you for your quick answer!

    Our use cases are right now besed around removing barriers for the customer, when we ask them to fill out an email, e.g. in product reviews.

    MathildeAuthor
    Problem Solver I
    January 30, 2024

    Hi,

    I tested this and it worked great!

     

    Would you be able to guide me on how to addapt the site script on site, that extracts the information for the form, so that it is then converted back to the correct email? :)

    MathildeAuthor
    Problem Solver I
    January 30, 2024

    I just noticed this one in the glossery you send me: base64_encode


    Maybe I should in fact use that instead? It seems specifically catored for sending email information in the URL.

    Klaviyo Employee
    January 30, 2024

    The _kx param sets a __kla_id cookie is a base64 encoded JSON block that includes an $exchange_id property. You can use the Get Profiles call server-side to filter on this _kx value and get back the profile and its plain-text email address.

    You could use base64_encode but it’s effectively the same as sending the email in plain-text, it’s not encrypting anything.

    MathildeAuthor
    Problem Solver I
    January 30, 2024

    I see! :)

    Yes, I understand that base64_encode is not encrypted.
    Thank you for your help! :D