For the complete documentation index, see llms.txt. This page is also available as Markdown.

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:

Field
Included
Notes

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.

Option
Level
Description
Example values

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 fieldsToKeep is 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: orderDataOptions is not user-configurable. To enable or modify this configuration, contact support@limio.com or your Limio Implementation contact.


Platform Event Field Definitions

NEW_ORDER

Field
Data Type
Length
Populated?
Conditions/Details

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

Field
Data Type
Length
Populated?
Conditions/Details

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.

Field
Data Type
Length
Populated?
Conditions/Details

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

Field
Data Type
Length
Populated?
Conditions/Details

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

Field
Data Type
Length
Populated?
Conditions/Details

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.

Field
Data Type
Length
Populated?
Conditions/Details

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