Summary
An iPaaS.com Transaction can be transferred to Klaviyo as a Placed Order event through outbound triggers or manual sync. The integration records the order on the matching Klaviyo profile, carrying the order details in the event properties and tagging it with the order metric, so Klaviyo can drive order-based flows, segments, and analytics. This is the parent order event; a companion child collection sends one Ordered Product event per line on the same transaction.
ID Format
Manual Sync ID Format
When manually sending a transaction from the iPaaS.com Manual Sync page, enter the iPaaS.com Transaction ID into the iPaaS.com ID field. The value is the internal Transaction identifier, for example 55260.
External ID Format
After the event is recorded, the integration saves the Klaviyo event identifier as the external ID linking the iPaaS.com Transaction to its Klaviyo Placed Order event. An example Klaviyo event identifier is 44552.
Deleted Record Support
Outbound delete is not supported for this collection. Klaviyo events are append-only: the integration records events by creation only and provides no delete operation, so delete mappings are not included in the default templates and a deletion in iPaaS.com does not propagate to Klaviyo. To reverse the effect of an order in Klaviyo, subscribers should use Klaviyo's own tools or send a compensating event.
Custom Field Support
This collection maps one custom event field, Example event field, which ships as a placeholder set to a static example value. Subscribers can repurpose it to carry an additional transaction value into the Placed Order event properties, or remove it. Additional values can also be added directly inside the EventProperties formula by adding further key-value entries to the returned dictionary.
Mapping Collection Status
Status: Enabled
Trigger Events: Dispatched on the iPaaS.com Transaction outbound triggers the subscriber enables under Outbound Data Flows, and gated by the subscription's Generate Events setting. Events are emitted only when Generate Events is set to TRUE.
Duplicate or Conflicting Mappings
This is the Add collection for the Klaviyo Placed Order event outbound flow. There is no companion Update collection, because Klaviyo events are append-only: a re-sent transaction emits a new event rather than changing one already recorded. The UniqueId mapping is the safeguard against recording the same order twice — Klaviyo recognizes a repeated unique identifier for the same profile and metric and keeps only the first event. No collision handling is configured for this collection.
Supported Child Collections
Parent Collection: Add Klaviyo Placed Order Event FROM iPaaS.com
Child Collection: Add Klaviyo Ordered Product Event FROM iPaaS.com (Child of Placed Order) — sends one Klaviyo Ordered Product event per transaction line on the same transaction, so each product on the order is recorded as its own event in Klaviyo. See the Klaviyo Ordered Product Event From iPaaS.com Mapping Documentation article for that collection's mappings.
System Caveats
Klaviyo Caveats
Profile prerequisite: An event cannot be recorded without a profile. The integration resolves the Klaviyo profile from the iPaaS.com Customer's external-id link; when no link exists yet, it falls back to matching the profile by the customer's email address. If the customer is not yet present in Klaviyo, the customer is transferred to Klaviyo first as a prerequisite so the event has a profile to attach to. If the profile cannot be resolved or created, the event is not recorded.
Append-only events: Klaviyo records events by creation only and does not mutate an existing event. Re-sending the same transaction relies on the UniqueId idempotency key to avoid a duplicate event.
Metric name length: The event metric name must be fewer than 128 characters.
iPaaS.com Caveats
Generate Events gate: Events are emitted only when the subscription's Generate Events setting is TRUE. With the setting FALSE, transactions transferred outbound do not produce Klaviyo events.
Required mappings: A transaction will not produce a Placed Order event unless the ProfileId, EventProperties, MetricName, and UniqueId mappings all resolve to values. If any is missing, the event is not recorded and the transfer reports an error.
Integration-Specific Caveats
Klaviyo does not send change webhooks to the integration; this collection is outbound only and dispatches on the iPaaS.com outbound triggers the subscriber enables. There is no automatic transfer until those triggers are enabled.
Setup Requirements
iPaaS.com Configuration
Enable the relevant iPaaS.com Transaction outbound triggers under Outbound Data Flows so transactions dispatch to Klaviyo automatically. Until those triggers are enabled, transactions flow only through Manual Sync.
Set the subscription's Generate Events setting to TRUE. With it FALSE, no Klaviyo events are created from transferred transactions.
Klaviyo Configuration
A Klaviyo profile must exist for the event's customer. The integration transfers the customer to Klaviyo first when no profile link is present, so no manual profile creation is required in the common case. See the Klaviyo Installation Instructions and Connections & Settings articles for authentication and subscription setup.
Integration Flow
A transaction is transferred outbound, either automatically on an enabled iPaaS.com Transaction outbound trigger or on demand from the iPaaS.com Manual Sync page using the Transaction ID.
The integration confirms the subscription's Generate Events setting is TRUE. If it is FALSE, no event is created.
The integration resolves the Klaviyo profile for the event: it looks up the Klaviyo profile from the iPaaS.com Customer's external-id link, and if no link exists yet, it falls back to matching by the customer's email address.
If the customer is not yet present in Klaviyo, the customer is transferred to Klaviyo first so the event has a profile to attach to. If the profile cannot be resolved or created, the transfer errors and no event is recorded.
The integration builds the event payload from the mappings — the order properties, the Placed Order metric, the order value, and the idempotency key — and records the Placed Order event on the resolved profile.
For each transaction line, the companion child collection records an Ordered Product event on the same profile.
The Klaviyo event identifier is saved as the external ID linking the iPaaS.com Transaction to its Placed Order event.
Mappings
Add Klaviyo Placed Order Event FROM iPaaS.com
This collection does not have a mapping filter applied. Every transaction reached via an enabled outbound trigger or Manual Sync is processed.
Description. Sends an iPaaS.com Transaction to Klaviyo as a Placed Order event, attributed to the resolved Klaviyo profile and carrying the order details in its event properties.
Mapping Type | Source Field (iPaaS.com) | Destination Field (Klaviyo) | Description |
Dynamic Formula | See ProfileId formula below | ProfileId | Required. Resolves the Klaviyo profile the event is attributed to. The integration looks up the Klaviyo profile from the iPaaS.com Customer's external-id link; when no link exists, it falls back to matching the profile by the customer's email address. If the customer is not yet present in Klaviyo, the customer is transferred first as a prerequisite. |
Dynamic Formula | See EventProperties formula below | EventProperties | Required. Builds the order payload sent with the event. It returns a dictionary with the customer email and the order number; additional values can be added as further entries. This is the body of the event in Klaviyo. |
Static |
| MetricName | Recommended. Sets the event's metric name to the static value "Placed Order". This is the metric Klaviyo flows and segments key on to identify the event as a placed-order event, so it should remain populated. Must be fewer than 128 characters. |
Dynamic Formula | iPaaS.com Transaction ID | UniqueId | Recommended. The event's idempotency key, assigned from the iPaaS.com Transaction's primary identifier. Populating it lets Klaviyo recognize a re-sent event as the same order rather than recording a duplicate. |
Field | Total | NumericValue | Recommended. Sets the event's numeric value from the transaction Total, carrying the order value into Klaviyo so order-value metrics and segments are available. |
Static |
| Example event field | Optional. Sets a placeholder custom event property to the static text "Example values". It ships as an example showing how an extra value can be carried into the Placed Order event; subscribers can repurpose it to send a transaction value or remove it. |
ProfileId formula:
var customerId = await GetExternalIdAsync(CustomerId, "Customer", SpaceportSystemId);
if (customerId == null || customerId == "")
return await GetCustomerIdByEmail(EmailAddress);
else
return customerId;
EventProperties formula:
var viewDict = new Dictionary<string, object>();
viewDict.Add("Email", EmailAddress);
viewDict.Add("Order", TransactionNumber);
return viewDict;Additional values can be added to the Placed Order event by adding further entries to the dictionary returned by the EventProperties formula, or by mapping a custom event field as shown by the Example event field row.
Refer to the Klaviyo Ordered Product Event From iPaaS.com Mapping Documentation article for the child collection's field mapping table.
Error Handling
"Could not Create Transaction: Mapping field is missing / not complete" — Occurs when one or more of the required event fields (ProfileId, EventProperties, MetricName, UniqueId) did not resolve to a value, so the event payload is incomplete. Resolution: confirm the required mappings are present and that the source transaction has the values they read (customer link or email, order number, transaction identifier).
Profile could not be resolved — Occurs when the iPaaS.com Customer is not linked to a Klaviyo profile, no email match is found, and the prerequisite customer transfer does not produce a profile. Resolution: resolve the customer/profile transfer first, then retry the transaction; once the profile exists, the event transfer succeeds on retry.
Klaviyo API temporarily unavailable — Occurs when Klaviyo cannot be reached at the time the transfer runs. Resolution: retry the transfer from Manual Sync once the service is available.
All transfer errors appear in iPaaS.com Dashboard / Integration Monitoring / Error Logs and can be retried from the Manual Sync page.
Testing & Validation
Test Scenarios
Create a new transaction in iPaaS.com for a customer that already has a linked Klaviyo profile and verify a Placed Order event is recorded on that profile with the correct metric, order value, and order properties.
Send a transaction for a customer with no existing Klaviyo profile and verify the integration transfers the customer to Klaviyo first, then records the Placed Order event on the newly created profile.
Re-send the same transaction and verify Klaviyo does not record a duplicate event — the repeated UniqueId for the same profile and metric is recognized and only the first event is kept.
Set the subscription's Generate Events setting to FALSE, transfer a transaction, and verify no Klaviyo event is created.
Transfer a transaction with multiple lines and verify both the parent Placed Order event and one Ordered Product child event per line are recorded.
Attempt a transfer for a customer that cannot be resolved to a profile and confirm the transfer errors and the message appears in Integration Monitoring.
Validation Checklist
The Placed Order event appears on the expected Klaviyo profile.
The event metric is "Placed Order".
The event numeric value matches the transaction Total.
The event properties include the customer email and the order number.
The iPaaS.com Transaction ID is recorded as the event's unique identifier in the Klaviyo event details.
Re-sending the same transaction does not create a second event.
Each transaction line is recorded as its own Ordered Product event.
Additional Notes
Klaviyo events are append-only at the time this documentation was written. An "update" to an order emits a new event rather than changing the one already recorded, so corrections appear as additional events in Klaviyo.
This collection is kept separate from the Ordered Product event documentation; the two collections form a parent-child pair on the same transaction. See the Klaviyo Ordered Product Event From iPaaS.com Mapping Documentation article for the child.
