Summary
Klaviyo Profiles can be created and updated from iPaaS.com Customer records through the outbound (FROM iPaaS.com) direction of the Klaviyo integration. When an iPaaS.com Customer is sent outbound, the integration assembles the customer's name, email, phone, organization, and primary billing address and writes them to Klaviyo. Two standalone collections cover the flow: one creates a new Klaviyo profile when the source Customer is not yet linked, and the other patches an existing profile when the source Customer is already linked by its iPaaS.com external id.
ID Format
Manual Sync ID Format
To transfer a single Customer on demand, enter the iPaaS.com Customer ID into the iPaaS.com ID field on the iPaaS.com Manual Sync page. The value is the internal iPaaS.com Customer identifier — for example, 55260.
External ID Format
After a profile is created in Klaviyo, the integration stores the Klaviyo-generated profile identifier as the external id that links the iPaaS.com Customer to its Klaviyo profile. The Klaviyo profile identifier is a string — for example, 44552. This stored link is what routes later changes to the same profile and what determines whether a Customer is created (no link) or updated (linked).
Deleted Record Support
Outbound delete is not supported. The Customer entity's delete operation is not implemented on the FROM iPaaS.com side, delete mappings are not included in the default templates, and a deletion in iPaaS.com will not propagate to Klaviyo. Profile removal must be performed directly in Klaviyo.
Custom Field Support
Subscribers can carry additional iPaaS.com Customer values into a Klaviyo profile by creating subscription custom fields and mapping values to them. Three custom-field naming conventions drive special behavior:
SubscribeProfile: A custom field named SubscribeProfile mapped to a
trueorfalsevalue controls the profile's subscription state. A value oftruemakes the profile eligible to receive subscription consent notifications and to be added to lists. No mapping, or a value offalse, fully unsubscribes the profile, so this field should be mapped deliberately to honor opt-out status from other sources.LIST_{list name}: A custom field named with the
LIST_prefix followed by a Klaviyo list name, mapped totrueorfalse, adds the profile to (or removes it from) a list that uses double opt-in. When the list is configured for double opt-in, Klaviyo sends a consent email to the profile's email address, and the subscription completes only after the recipient responds.UCLIST_{list name}: A custom field named with the
UCLIST_prefix followed by a Klaviyo list name, mapped totrueorfalse, adds the profile to (or removes it from) a list that auto-subscribes without consent. When the list is configured for single opt-in, no consent email is sent and the profile is subscribed automatically.
Any subscription custom field that is not named SubscribeProfile and does not start with LIST_ or UCLIST_ is written to the Klaviyo profile's custom properties. Klaviyo may automatically add a $source property of API to a profile's custom properties.
Mapping Collection Status
Status: Enabled
Trigger Events: iPaaS.com Customer outbound triggers (Create, Update). The subscriber enables these triggers under Outbound Data Flows. Klaviyo does not send change webhooks to the integration, so the enabled outbound triggers — together with Manual Sync — are what drive these collections.
Duplicate or Conflicting Mappings
The outbound Profile flow is split across two standalone collections: Add Klaviyo Profile FROM iPaaS.com (creates a profile) and Update Klaviyo Profile FROM iPaaS.com (patches an existing profile). The two collections differ only by create versus patch.
Add-vs-Update Routing
Routing between the two collections depends on whether the source Customer is already linked to a Klaviyo profile by its iPaaS.com external id. An unlinked Customer is created by the Add collection; a linked Customer is patched by the Update collection. The Id mapping resolves the stored link and supplies the value that targets the correct profile.
Profile Matching
If the source Customer's email matches an existing Klaviyo profile, the existing profile is linked automatically. If no email match is found, the phone number is used as a fallback for matching.
Unmapped-Field Overwrite Risk
Updates are sent as a partial patch, so Klaviyo profile fields that the Update collection does not map are left untouched. The Add and Update collections are kept separate so that values a subscriber maintains directly in Klaviyo — for example, an unsubscribe a customer performs inside Klaviyo — are not overwritten by a later outbound update from iPaaS.com. Keeping the two collections separate is strongly recommended whenever Klaviyo is the system of record for any profile field.
Supported Child Collections
None. Address details are pulled inline from the iPaaS.com Customer's primary billing address rather than from a child collection, so there is no child address collection on the outbound side.
System Caveats
Klaviyo Caveats
Identifier required for matching: Although Klaviyo marks every profile attribute as optional, a profile cannot be created or matched without at least one identifier. Either Email or PhoneNumber must resolve to a value.
Phone number format: Klaviyo requires phone numbers in an E.164-style format. The integration normalizes the iPaaS.com Customer number before sending; a number that cannot be normalized is omitted rather than sent. Klaviyo performs its own additional validation, so a number that Klaviyo rejects will cause the transfer to error.
Single address per profile: A Klaviyo profile supports a single address through the API. The address values are set in the parent mapping from the iPaaS.com Customer.
Partial update preserves unmapped fields: Updates are sent as a partial patch, so profile fields the Update collection does not map are left untouched. The overwrite risk to existing Klaviyo data is low.
iPaaS.com Caveats
Address sourced from primary billing address: The address fields (Address1, Address2, City, Region, Zip, Country) are read from the iPaaS.com Customer's primary billing address. A Customer without a primary billing address sends no address values. On an update, a partial patch leaves the profile's existing address untouched.
Identifier present: A Customer without an email address or a normalizable phone number cannot be transferred, because Klaviyo has no identifier to create or match the profile.
Integration-Specific Caveats
iPaaS.com as source of truth: The default templates both add and update a profile from iPaaS.com, which assumes iPaaS.com is the source of truth for all profile data. Splitting the templates into separate Add-only and Update-only collections preserves any values that Klaviyo controls going forward.
Subscription state is deliberate: Because an absent or
falseSubscribeProfile value fully unsubscribes the profile, the subscription custom field should be mapped intentionally rather than left unset.
Setup Requirements
Klaviyo Configuration
Identify the Klaviyo lists that profiles should join, and confirm each list's opt-in configuration (single versus double opt-in), which determines whether a consent email is sent.
iPaaS.com Configuration
Enable the relevant iPaaS.com Customer outbound triggers under Outbound Data Flows so that profile creates and updates are sent automatically. Until these triggers are enabled, transfers occur only through Manual Sync.
Create the subscription custom fields the integration relies on — SubscribeProfile, any
LIST_{list name}andUCLIST_{list name}fields, and any additional custom-property fields — and map values to them.Refer to the Klaviyo installation and connection articles for the full authentication and connection walkthrough.
Integration Flow
The outbound Profile flow from iPaaS.com to Klaviyo follows this sequence:
Trigger: An iPaaS.com Customer is created or updated and an enabled outbound trigger fires, or a subscriber requests a Manual Sync by entering the iPaaS.com Customer ID.
Field assembly: The integration gathers the relevant fields — email, phone, first and last name, organization, and the primary billing address — from the iPaaS.com Customer.
Phone normalization: The Customer number is normalized to Klaviyo's required E.164-style format by removing non-digit characters and applying the country code. If the result is empty, no phone number is sent.
Link resolution: The integration resolves whether the source Customer is already linked to a Klaviyo profile by its iPaaS.com external id. A linked Customer is routed to the Update collection; an unlinked Customer is routed to the Add collection.
Profile matching: When creating, the integration matches an existing Klaviyo profile by email first, then by phone number if no email match is found. A match links the existing profile rather than duplicating it.
Create or patch: A new profile is created (Add) or the existing profile is patched (Update) using the mapped name, email, phone, organization, and address. On update, unmapped Klaviyo fields are preserved.
Lists and subscription: Based on the SubscribeProfile,
LIST_, andUCLIST_custom-field values, the profile is added to or removed from lists and its subscription state is set. Lists configured for double opt-in trigger a Klaviyo consent email; single opt-in lists subscribe automatically.Link stored: The Klaviyo profile identifier is stored as the iPaaS.com external id so later changes route to the same profile.
Mappings
The outbound Profile flow uses two standalone collections. Both carry the same 18 field mappings; they differ only in whether the result is a create (Add) or a partial patch (Update), and in how the Id mapping is used for routing. Neither collection has a mapping filter applied: every iPaaS.com Customer reached through an enabled outbound trigger or Manual Sync is processed.
In the tables below, Static rows show the fixed value the template ships with, Field rows map a single iPaaS.com Customer field directly, and Dynamic Formula rows resolve a value through a formula. The list-membership and subscription rows (LIST_Sms Subscribers, UCLIST_Preview List, SubscribeProfile, My Custom) are template examples — subscribers can change, remove, or extend them to fit their data and their Klaviyo lists.
Add Klaviyo Profile FROM iPaaS.com
This collection creates a new Klaviyo profile from an iPaaS.com Customer that is not yet linked to a profile.
Mapping Type | Source Field (iPaaS.com) | Destination Field (Klaviyo) | Description |
Static |
| Type | Required. Fixed value identifying the record as a Klaviyo profile. It is required by Klaviyo and should not be changed. |
Dynamic Formula | Resolves the Klaviyo profile link from the source Customer's iPaaS.com external id | Id | Resolves the Klaviyo profile link for the source Customer using the iPaaS.com external id. It returns the linked Klaviyo profile identifier when one exists, so the integration can determine whether to create a new profile or target an existing one. When no link exists, it returns no value and the Customer is created as a new profile. |
Field | EmailAddress | Required. Sets the profile's email from the iPaaS.com Customer email address. Email is the primary identifier used to create and match the profile. | |
Dynamic Formula | Normalizes the iPaaS.com Customer number to E.164 format and returns it, or no value when empty | PhoneNumber | Recommended. Sets the profile's phone number from the iPaaS.com Customer number. The number is normalized to Klaviyo's required E.164-style format by removing non-digit characters and applying the country code. If the result is empty, no phone number is sent. When Email is absent, this serves as the identifier. |
Field | Id | ExternalId | Required. Records the iPaaS.com Customer's identifier on the Klaviyo profile as an external id, linking the profile back to its source Customer. |
Field | FirstName | FirstName | Recommended. Sets the profile's first name from the iPaaS.com Customer's first name. |
Field | LastName | LastName | Recommended. Sets the profile's last name from the iPaaS.com Customer's last name. |
Field | Company | Organization | Recommended. Sets the profile's organization from the iPaaS.com Customer's company. |
Dynamic Formula | First primary-billing address line 1 | Address1 | Optional. Sets the profile's first address line from the iPaaS.com Customer's primary billing address. |
Dynamic Formula | First primary-billing address line 2 | Address2 | Optional. Sets the profile's second address line from the iPaaS.com Customer's primary billing address. |
Dynamic Formula | First primary-billing city | City | Optional. Sets the profile's city from the iPaaS.com Customer's primary billing address. |
Dynamic Formula | First primary-billing region | Region | Optional. Sets the profile's region from the iPaaS.com Customer's primary billing address. |
Dynamic Formula | First primary-billing postal code | Zip | Optional. Sets the profile's postal code from the iPaaS.com Customer's primary billing address. |
Dynamic Formula | First primary-billing country | Country | Optional. Sets the profile's country from the iPaaS.com Customer's primary billing address. |
Static |
| SubscribeProfile | Optional template. Marks the profile to be subscribed. Subscribers can change this value to control subscription behavior. A value of |
Static |
| LIST_Sms Subscribers | Optional template. Adds the profile to the SMS Subscribers list. Subscribers can change or remove this value to control list membership. |
Static |
| UCLIST_Preview List | Optional template. Adds the profile to the Preview list (single opt-in, no consent email). Subscribers can change or remove this value to control list membership. |
Static |
| My Custom | Optional template. Sets a fixed example value on a custom field. Subscribers can replace it with a value or mapping that fits their data. |
Update Klaviyo Profile FROM iPaaS.com
This collection patches an existing Klaviyo profile from an iPaaS.com Customer that is already linked to a profile. The update is sent as a partial patch, so Klaviyo profile fields this collection does not map are preserved.
Mapping Type | Source Field (iPaaS.com) | Destination Field (Klaviyo) | Description |
Static |
| Type | Required. Fixed value identifying the record as a Klaviyo profile. It is required by Klaviyo and should not be changed. |
Dynamic Formula | Resolves the Klaviyo profile link from the source Customer's iPaaS.com external id | Id | Required. Resolves the Klaviyo profile link for the source Customer using the iPaaS.com external id, so the update targets the existing profile. It returns the linked Klaviyo profile identifier when one exists. When no link exists, it returns no value and the Customer is handled by the Add collection instead. |
Field | EmailAddress | Required. Sets the profile's email from the iPaaS.com Customer email address. Email is the primary identifier that keeps the profile matchable. | |
Dynamic Formula | Normalizes the iPaaS.com Customer number to E.164 format and returns it, or no value when empty | PhoneNumber | Recommended. Sets the profile's phone number from the iPaaS.com Customer number. The number is normalized to Klaviyo's required E.164-style format by removing non-digit characters and applying the country code. If the result is empty, no phone number is sent. |
Field | Id | ExternalId | Required. Records the iPaaS.com Customer's identifier on the Klaviyo profile as an external id, keeping the profile linked to its source Customer. |
Field | FirstName | FirstName | Recommended. Sets the profile's first name from the iPaaS.com Customer's first name. |
Field | LastName | LastName | Recommended. Sets the profile's last name from the iPaaS.com Customer's last name. |
Field | Company | Organization | Recommended. Sets the profile's organization from the iPaaS.com Customer's company. |
Dynamic Formula | First primary-billing address line 1 | Address1 | Optional. Sets the profile's first address line from the iPaaS.com Customer's primary billing address. A partial patch leaves the existing address untouched when no value is sent. |
Dynamic Formula | First primary-billing address line 2 | Address2 | Optional. Sets the profile's second address line from the iPaaS.com Customer's primary billing address. |
Dynamic Formula | First primary-billing city | City | Optional. Sets the profile's city from the iPaaS.com Customer's primary billing address. |
Dynamic Formula | First primary-billing region | Region | Optional. Sets the profile's region from the iPaaS.com Customer's primary billing address. |
Dynamic Formula | First primary-billing postal code | Zip | Optional. Sets the profile's postal code from the iPaaS.com Customer's primary billing address. |
Dynamic Formula | First primary-billing country | Country | Optional. Sets the profile's country from the iPaaS.com Customer's primary billing address. |
Static |
| SubscribeProfile | Optional template. Marks the profile to be subscribed. Subscribers can change this value to control subscription behavior. A value of |
Static |
| LIST_Sms Subscribers | Optional template. Adds the profile to the SMS Subscribers list. Subscribers can change or remove this value to control list membership. |
Static |
| UCLIST_Preview List | Optional template. Adds the profile to the Preview list (single opt-in, no consent email). Subscribers can change or remove this value to control list membership. |
Static |
| My Custom | Optional template. Sets a fixed example value on a custom field. Subscribers can replace it with a value or mapping that fits their data. |
Error Handling
No valid identifier present — A Customer reaches the integration with no email address and no normalizable phone number, so Klaviyo has no identifier to create or match the profile and the transfer fails. Resolution: ensure the source Customer has a valid email address or a phone number that normalizes to E.164 format before sending.
Phone number rejected by Klaviyo — A phone number passes integration normalization but fails Klaviyo's own validation. Resolution: correct the source Customer number so it normalizes to a phone number Klaviyo accepts as valid.
Klaviyo API temporarily unavailable — A profile create or update runs while the Klaviyo API is unreachable, and the transfer fails. The error appears in iPaaS.com Dashboard / Integration Monitoring / Error Logs. Resolution: retry the transfer via Manual Sync once the API is reachable.
All transfer errors are logged to iPaaS.com Dashboard / Integration Monitoring / Error Logs, where they can be reviewed and retried.
Testing & Validation
Test Scenarios
Create a new profile: Send an iPaaS.com Customer that is not yet linked to a Klaviyo profile and confirm a new profile is created in Klaviyo with the mapped name, email, phone, organization, and primary billing address, and that the iPaaS.com external id is stored on the profile.
Update an existing profile: Change a field on a Customer that is already linked to a Klaviyo profile, send it outbound, and confirm the same profile is patched and that unmapped Klaviyo fields are preserved.
Match by email: Send a Customer whose email matches an existing Klaviyo profile and confirm the existing profile is linked rather than duplicated.
Match by phone fallback: Send a Customer with no email but a valid phone number and confirm the profile is matched by phone number.
Missing identifier: Send a Customer with neither a valid email nor a normalizable phone number and confirm the transfer errors and is logged.
Phone normalization: Send a Customer number that includes non-digit characters and confirm it is normalized to E.164 format, and that a number Klaviyo rejects produces a logged error.
Subscription state: Map SubscribeProfile to
false(or leave it unmapped) and confirm the profile is unsubscribed; map it totruewith a list and confirm the profile is eligible for list membership.Double vs single opt-in: Map a
LIST_{list name}value against a double opt-in list and confirm a consent email is sent; map aUCLIST_{list name}value against a single opt-in list and confirm the profile is subscribed automatically without a consent email.Manual Sync ID format: Manually sync a Customer by entering its iPaaS.com Customer ID and confirm the profile is created or updated.
Validation Checklist
The source Customer has an email address, or a phone number that normalizes to E.164 format.
The Id mapping resolves the Klaviyo profile link correctly so the Customer is routed to Add (unlinked) or Update (linked).
The ExternalId mapping stores the iPaaS.com Customer identifier on the created profile.
SubscribeProfile is mapped intentionally to honor the desired subscription state.
Any
LIST_{list name}andUCLIST_{list name}values match real Klaviyo list names and the lists' opt-in configuration.A primary billing address is present on the Customer when address values should appear on the profile.
Add-only and Update-only collections are kept separate when Klaviyo is the system of record for any profile field.
Additional Notes
iPaaS.com is treated as the source of truth for profile data in the default templates. Splitting the templates into separate Add-only and Update-only collections is strongly recommended so that values controlled directly in Klaviyo — such as an in-Klaviyo unsubscribe — are not overwritten by a later outbound update.
A profile cannot be transferred when no valid email or phone number is available.
Klaviyo does not send change webhooks to the integration, so these collections run only when an enabled iPaaS.com outbound trigger fires or a Manual Sync is requested.
