Field Definitions
The LFS managed package features a custom platform event published by Limio for various order types: i42as__OrderEvent__e. This event allows for additional logic to be built in the Salesforce org using a platform-event triggered flow. The fields in the event payload vary based on the order type.
This document lists all the field sets for the available order types.
The headings below name the order type the event is generated from. They are not the value of the event's Type field: a gift order is published as NEW_ORDER, a refund as COMPENSATION_PAYMENT, and a customer details update as UPDATE_SUBSCRIPTION. Each section states the Type value it publishes. For the full list of Type values, see Webhooks and Notifications.
LimioOrder Payload (sendWholeOrder)
When sendWholeOrder is enabled in the Salesforce V3 plugin options, the i42as__LimioOrder field is populated with a JSON string containing the Limio order object.
Whether the order is reduced or sent in full depends on the order type:
Order type
What i42as__LimioOrder contains
New order, add offer, change offer, change payment, renewal, refund, update subscription
The reduced order described below
Cancel subscription, cancel intent, change address, update customer details
The full, unreduced Limio order object
Data capture
The submitted form data only, and it is sent regardless of the sendWholeOrder setting
Gift order
Nothing. Gift orders do not support sendWholeOrder and never carry this field
The reduction described in the rest of this section therefore applies only to the order types in the first row.
Default top-level fields
The LimioOrder payload includes the following top-level order fields by default:
tracking, billingDetails, customerDetails, deliveryDetails, orderDate, orderItems, payment, payment_reference, payment_status, source, total, variant, forSubscription, originalOffer, customFields
Default order item fields
Each order item in orderItems is simplified to include:
name
Always
type
Always
quantity
Always
Number of units for the order item
id
Always
price (summary, currency, amount)
Always
offer (name, path, id, version, type)
Always
offer.data.attributes.price__limio
Always
Full pricing array including value, type, currencyCode, repeat_interval, etc.
products (path, attributes, record_type)
Always
Configurable fields (orderDataOptions)
Additional fields can be preserved in the LimioOrder payload by adding orderDataOptions to the Salesforce V3 plugin configuration. This allows including extra data per-customer without code changes.
fieldsToKeep
Top-level order
Overrides the default top-level field list
["orderItems", "tracking", "country"]
itemFields
Order item
Additional fields on each order item
["parentId", "orderItemActionType"]
productDataFields
Product (within order item)
Additional fields on each product
["syncedFrom"]
offerDataFields
Offer data (offer.data)
Additional fields on the offer data object
["productBundles"]
offerAttributeFields
Offer attributes (offer.data.attributes)
Additional offer attribute fields
["display_price__limio", "term__limio"]
Note: When
fieldsToKeepis specified, it replaces the entire default top-level field list. All other options add to the defaults.
Example configuration:
This example preserves syncedFrom on each product and productBundles (including rate_plan) on each offer's data, in addition to all the defaults.
Important:
orderDataOptionsis not user-configurable. To enable or modify this configuration, contact support@limio.com or your Limio Implementation contact.
Platform Event Field Definitions
NEW_ORDER
i42as__OrderType
Text
40
Yes
i42as__ChangeType
Text
40
Yes
i42as__OrderNumber
Text
40
Yes
i42as__PurchaseDate
DateTime
Yes
i42as__EffectiveDate
DateTime
Yes
i42as__SubscriptionId
Text
100
Yes
i42as__Source
Text
40
Yes
Populated as "Limio".
i42as__InitiatedSource
Text
40
Yes
Either "shop" or "salesforce".
i42as__OrderSource
Text
40
Yes
Either "shop" or "salesforce".
i42as__ContactId
Text
18
Conditional
Populated in orders triggered from Salesforce.
i42as__AccountId
Text
18
Conditional
i42as__CaseId
Text
18
Conditional
i42as__GiftCode
Text
40
Conditional
Populated if a gift code is present on the order.
i42as__InitiatedByLimioId
Text
70
Yes
i42as__InitiatedByExternalId
Text
150
Yes
i42as__LimioOrder
LongTextArea
Configurable
Can be added to the payload upon request. See How Limio Updates Salesforce Data for more details. You can see a typical Limio Order in our API docs ( Get Object > Get Order Response)
i42as__OfferId
Text
40
Yes
i42as__OfferType
Text
40
Yes
i42as__TermLengthUnits
Text
40
Yes
i42as__TermLengthValue
Text
40
Yes
i42as__OfferDisplayName
Text
100
Conditional
Populated if available in the offer setup.
i42as__DisplayPrice
Text
150
Conditional
i42as__Description
Text
100
Conditional
i42as__ProductCode
Text
40
Yes
i42as__ProductName
Text
40
Yes
i42as__StudentCourse
Text
100
Conditional
Populated when student_offer = true and student fields were included at checkout.
i42as__StudentUniversity
Text
100
Conditional
i42as__StudentGraduationYear
Text
4
Conditional
CHANGE_OFFER
i42as__OrderType
Text
40
Yes
i42as__ChangeType
Text
40
Yes
i42as__OrderNumber
Text
40
Yes
i42as__PurchaseDate
DateTime
Yes
i42as__EffectiveDate
DateTime
Yes
i42as__Reason
Text
200
Conditional
Populated if provided in the online order.
i42as__SubscriptionId
Text
100
Yes
i42as__Source
Text
40
Yes
Populated as "Limio".
i42as__OrderSource
Text
40
Yes
Populated with either "shop" or "salesforce".
i42as__InitiatedSource
Text
40
Yes
Populated with either "shop" or "salesforce".
i42as__ContactId
Text
18
Conditional
Populated in orders triggered from Salesforce.
i42as__AccountId
Text
18
Conditional
i42as__CaseId
Text
18
Conditional
i42as__InitiatedByLimioId
Text
70
Yes
i42as__InitiatedByExternalId
Text
150
Yes
i42as__LimioOrder
LongTextArea
Configurable
Can be added to the payload by Limio team upon request.
i42as__OfferId
Text
40
Yes
i42as__OfferType
Text
40
Yes
i42as__TermLengthUnits
Text
40
Yes
i42as__TermLengthValue
Text
40
Yes
i42as__OfferDisplayName
Text
100
Conditional
Populated if available in the offer setup.
i42as__DisplayPrice
Text
150
Conditional
i42as__Description
Text
100
Conditional
i42as__ProductCode
Text
40
Yes
i42as__ProductName
Text
40
Yes
CANCEL_REQUEST
The same CANCEL_REQUEST event is emitted for two distinct Limio order types:
cancel_subscription— a finalised cancellation of an active subscription.cancel_intent— a customer-expressed intent to cancel (e.g. captured by a cancel survey or save/retention flow) that has not yet been processed as a cancellation.
Subscribers should branch on i42as__OrderType (equivalently i42as__ChangeType) to distinguish the two. The cancel_intent variant carries only the minimum fields needed to identify the subscription and the actor; the cancel_subscription variant additionally carries the order reference, purchase date, and cancellation reason. From Release 116, both variants carry the Salesforce CRM identifiers (i42as__AccountId, i42as__ContactId) whenever the customer is linked to a Salesforce Account and Contact in Limio, regardless of whether the order was initiated from the shop or Salesforce. The Conditions/Details column below indicates which fields are variant-specific.
i42as__OrderType
Text
40
Yes
cancel_subscription or cancel_intent. Use this to discriminate the two variants.
i42as__ChangeType
Text
40
Yes
Mirrors OrderType (cancel_subscription or cancel_intent).
i42as__OrderNumber
Text
40
Conditional
cancel_subscription only.
i42as__PurchaseDate
DateTime
Conditional
cancel_subscription only.
i42as__EffectiveDate
DateTime
Yes
The requested cancellation date.
i42as__Reason
Text
200
Conditional
cancel_subscription only, when a reason is present on the order.
i42as__SubscriptionId
Text
100
Yes
i42as__Source
Text
40
Yes
Populated as "Limio".
i42as__OrderSource
Text
40
Yes
Populated with either "shop" or "salesforce".
i42as__InitiatedSource
Text
40
Yes
Populated with either "shop" or "salesforce".
i42as__ContactId
Text
18
Conditional
Populated when the customer is linked to a Salesforce Contact in Limio, for both shop and Salesforce initiated orders. Both variants from Release 116.
i42as__AccountId
Text
18
Conditional
Populated when the customer is linked to a Salesforce Account in Limio, for both shop and Salesforce initiated orders. Both variants from Release 116.
i42as__CaseId
Text
18
Conditional
cancel_subscription only, when the order was triggered from Salesforce.
i42as__InitiatedByLimioId
Text
70
Yes
i42as__InitiatedByExternalId
Text
150
Yes
i42as__LimioOrder
LongTextArea
Configurable
Can be added to the payload by Limio team upon request. Available in both variants.
ADD_OFFER
i42as__OrderType
Text
40
Yes
i42as__ChangeType
Text
40
Yes
i42as__OrderNumber
Text
40
Yes
i42as__OrderValue
Number
Yes
i42as__OrderCurrency
Text
3
Yes
i42as__Status
Text
35
Yes
i42as__PurchaseDate
DateTime
Yes
i42as__EffectiveDate
DateTime
Yes
i42as__Reason
Text
200
Yes
i42as__SubscriptionId
Text
100
Yes
i42as__Source
Text
40
Yes
Populated as "Limio".
i42as__OrderSource
Text
40
Yes
Populated with either "shop" or "salesforce".
i42as__InitiatedSource
Text
40
Yes
Populated with either "shop" or "salesforce".
i42as__ContactId
Text
18
Conditional
Populated in orders triggered from Salesforce.
i42as__AccountId
Text
18
Conditional
i42as__CaseId
Text
18
Conditional
i42as__InitiatedByLimioId
Text
70
Yes
i42as__InitiatedByExternalId
Text
150
Yes
i42as__LimioOrder
LongTextArea
Configurable
Can be added to the payload by Limio team upon request.
i42as__OfferId
Text
40
Yes
i42as__OfferType
Text
40
Yes
i42as__TermLengthUnits
Text
40
Yes
i42as__TermLengthValue
Text
40
Yes
i42as__OfferDisplayName
Text
100
Conditional
Populated if available in the offer setup.
i42as__DisplayPrice
Text
150
Conditional
i42as__Description
Text
100
Conditional
i42as__ProductCode
Text
40
Yes
i42as__ProductName
Text
40
Yes
CHANGE_PAYMENT_REQUEST
i42as__OrderType
Text
40
Yes
i42as__ChangeType
Text
40
Yes
i42as__OrderNumber
Text
40
Yes
i42as__PurchaseDate
DateTime
Yes
i42as__EffectiveDate
DateTime
Yes
i42as__SubscriptionId
Text
100
Yes
i42as__Source
Text
40
Yes
Populated as "Limio".
i42as__OrderSource
Text
40
Yes
Populated with either "shop" or "salesforce".
i42as__InitiatedSource
Text
40
Yes
Populated with either "shop" or "salesforce".
i42as__ContactId
Text
18
Conditional
Populated in orders triggered from Salesforce
i42as__AccountId
Text
18
Conditional
i42as__CaseId
Text
18
Conditional
i42as__InitiatedByLimioId
Text
70
Yes
i42as__InitiatedByExternalId
Text
150
Yes
i42as__LimioOrder
LongTextArea
Configurable
Can be added to the payload by Limio team upon request.
Gift order
Published with Type = NEW_ORDER, the same value as a standard new order, with the gift fields below added. Use i42as__redemptionCode (or the presence of the recipient fields) to tell a gift order apart from a standard one.
i42as__OrderType
Text
40
Yes
i42as__ChangeType
Text
40
Yes
i42as__OrderNumber
Text
40
Yes
i42as__OrderValue
Number
Yes
i42as__PurchaseDate
DateTime
Yes
i42as__EffectiveDate
DateTime
Yes
i42as__SubscriptionId
Text
100
Yes
i42as__Source
Text
40
Yes
Populated as "Limio".
i42as__OrderSource
Text
40
Yes
Populated with either "shop" or "salesforce".
i42as__InitiatedSource
Text
40
Yes
Populated with either "shop" or "salesforce".
i42as__ContactId
Text
18
Conditional
Populated in orders triggered from Salesforce.
i42as__AccountId
Text
18
Conditional
i42as__CaseId
Text
18
Conditional
i42as__InitiatedByLimioId
Text
70
Yes
i42as__InitiatedByExternalId
Text
150
Yes
i42as__LimioOrder
LongTextArea
Configurable
Can be added to the payload by Limio team upon request.
i42as__OfferId
Text
40
Yes
i42as__OfferType
Text
40
Yes
i42as__TermLengthUnits
Text
40
Yes
i42as__TermLengthValue
Text
40
Yes
i42as__OfferDisplayName
Text

