Solved

Updating profiles without a PII identifier


Badge +1

My company is building a Klaviyo integration that will allow our SaaS product to update Klaviyo profiles with certain events and parameters (relevant to our product features) to power email campaigns. We would prefer not to store emails or phone numbers. However, we don’t expect that many of our clients will have $id parameters available to be able to key the update profiles calls. We will have some information about the consumer such as (typically) their Shopify customer id. Has anyone else faced this situation? What are some workaround so that we can still try to identify and update the correct profiles?

icon

Best answer by stephen.trumble 16 May 2022, 21:51

View original

2 replies

Userlevel 7
Badge +60

Hey @nick-sg 

Thanks for asking the Klaviyo Community for help! Happy to jump in.

You will need one of those (email, phone or $id) as a primary identifier for the profile. That’s how we know who to target when updating the profile. You can use $id to represent the Shopify customer ID if you want. But if you choose to use $id, then you run the risk of duplicate profiles being created in your account if you are not ingesting users through sign-up forms, subscribe pages or an ecommerce platform which uses the email address or phone number as primary identifiers. Also keep in mind that if you choose to not use any of the primary profile identifiers, profile management will be entirely up to you and your team which could complicate things more than you want.

Hope this helps!

Badge +1

@stephen.trumble - I ended up finding a suitable solution for my specific use case that doesn’t involve me knowing the email address or phone number. Here’s some detail:

I want to add custom properties to a person’s profile based on actions that they may perform after arriving at a website inbound from a Klaviyo email campaign. I learned that I can use the `_kx` url parameter that comes in with the inbound GET request along with the “exchange_id” that is the value of that key in order to retrieve the person_id. Then, I can use the person_id to retrieve and or update the corresponding profile. Problem solved!

API reference: https://developers.klaviyo.com/en/reference/exchange

Reply