Summary
This documentation covers the standard (non-Plus) Shopify Order collections that import Shopify Orders into iPaaS.com (transfer TO iPaaS.com). The order header is the parent record; it drives child collections for the order's addresses, line items, customer note, tax lines, and payments (including gift-card payments). There are two header collections — one for Add (new orders) and one for Update (changed orders) — each with its own children.
Disable these standard-order collections if you run Shopify Plus; the Shopify Plus order collections cover that store tier. This direction is the inbound counterpart to iPaaS.com to Shopify Order Mapping Documentation (FROM iPaaS.com), which writes orders from iPaaS.com to Shopify.
Shopify Plus Variant
A parallel set of Shopify Plus order collections covers Shopify Plus stores. They mirror the standard collections (header plus Address, Line, Note, Tax, Payment, and Payment Gift Card children) and import the same Order entity, with these differences:
Disabled by default — deliberate off switch. The Plus header filter begins with
1==0 &&, so no Plus orders import until that guard is removed. On a standard store, leave the Plus collections disabled and use the collections documented here. On a Shopify Plus store, remove the leading1==0 &&from the Plus header filter and disable the standard header, so only one variant processes each order.One variant per store. Run the standard set or the Plus set for a given store, never both — running both would create duplicate or conflicting transactions.
Header totals exclude gift-card lines. On the Plus header, Subtotal, Total, and TotalQty are computed to exclude gift-card line items, so the header reflects sold product only.
Payment split (same rule as standard). The Plus Order Payment child excludes
gift_cardgateways and the Plus Order Payment Gift Card child requires them, so each payment imports through exactly one collection.
The Plus collections are Add Shopify Plus Order Header TO iPaaS.com (parent) with the Add Shopify Plus Order Address / Line / Note / Tax / Payment / Payment Gift Card TO iPaaS.com children; their per-collection mapping descriptions and notes carry the full field-level detail.
ID Format
Manual Sync ID: the Shopify order id, entered on the iPaaS.com Manual Sync page.
Transaction Number / external-id link: the Add header writes the Shopify OrderNumber to the iPaaS.com TransactionNumber; the Update header derives it from the order Name with the leading
#removed (Name.replace("#","")). This transaction number is the external-id link, so later transfers update the same iPaaS.com Order rather than creating a duplicate.
Deleted Record Support
Shopify also publishes Order Deleted (orders/delete) and Order Cancelled (orders/cancelled) events, but order deletion is not handled by these collections — an order deleted in Shopify is not removed from iPaaS.com automatically.
Mapping Collection Status
Status: Enabled.
Trigger Events: Shopify Order Created (
orders/create) drives the Add header; Order Updated (orders/updated) drives the Update header.Filter (both headers):
!OrderNumber.EndsWith("-D") && !OrderNumber.EndsWith("-GC") && Confirmed— only confirmed orders whose OrderNumber does not end with-D(deposit ticket) or-GC(gift card ticket) are processed. Deposit tickets and gift-card tickets have their own collections.
Duplicate or Conflicting Mappings
These collections create and update orders in iPaaS.com. The outbound iPaaS.com to Shopify Order collection writes the same orders from iPaaS.com to Shopify. Before enabling automatic order transfers in both directions, review and customize your mapping collection filters and Add/Update settings so each system's role as source of truth is clear; otherwise an order can loop or overwrite values between the two systems. The Add and Update header collections cover the same order data for their respective sync actions.
Supported Child Collections
Parent: Add Shopify Order Header TO iPaaS.com
Add Shopify Order Address TO iPaaS.com — billing and shipping addresses.
Add Shopify Order Line TO iPaaS.com — order line items.
Add Shopify Order Note TO iPaaS.com — the order's customer note.
Add Shopify Order Tax TO iPaaS.com — order tax lines.
Add Shopify Order Payment TO iPaaS.com — non-gift-card payment transactions.
Add Shopify Order Payment Gift Card TO iPaaS.com — gift-card payment transactions.
Parent: Update Shopify Order Header TO iPaaS.com
Update Shopify Order Line TO iPaaS.com — order line items.
Update Shopify Order Payment TO iPaaS.com — payment transactions.
System Caveats
Shopify Caveats
Order read access required. The Shopify connection must include order read scope; without it the transfer fails with an authorization error.
Standard (non-Plus) orders. These collections are for standard Shopify stores. Disable them on Shopify Plus and use the Shopify Plus order collections instead.
Order Number suffixes route the record. Orders ending in
-Dor-GCare excluded here and handled by the deposit-ticket and gift-card collections.Fulfillment order read access. Ship-from location data on order lines requires the
read_merchant_managed_fulfillment_ordersscope (included in the standard installation scopes). Without it the order still imports, but the ship-from custom fields are empty.
iPaaS.com Caveats
Status lookup translations. Order status uses the Shopify Transaction Status To iPaaS lookup translation, and line status uses Shopify Transaction Line Status To iPaaS. Confirm both are populated.
Email fallback. Orders without a customer email are imported with
defaultCustomer@shopify.com.Net line pricing. Line UnitPrice and ExtendedPrice are computed net of allocated discounts; OriginalUnitPrice carries the pre-discount price.
Units of measure. A line ordered for a unit-of-measure variant (SKU
base^UnitName) imports with the base SKU on Sku/Original SKU and the unit on SellingUnit. Map SellingUnit (and optionally Original SKU) if your store sells in units; a downstream system must read SellingUnit to know the ordered unit, since Sku alone no longer distinguishes units. The same product ordered in two units appears as two separate lines that differ only by SellingUnit.
Setup Requirements
iPaaS.com Configuration
Enable the Add Shopify Order Header TO iPaaS.com and Update Shopify Order Header TO iPaaS.com collections (and their children).
Subscribe to the Shopify Order Created and Order Updated events in the subscription configuration's Inbound Data Flows section. No automatic transfers occur until those subscriptions are enabled.
Populate the Shopify Transaction Status To iPaaS and Shopify Transaction Line Status To iPaaS lookup translations.
Review the order custom-field metafield mappings (Order-Items, Order-Desc, Order-Status) and replace the placeholder metafield keys with your own, or remove them.
Orders can also be imported on demand from the Manual Sync page using the Shopify order id.
Shopify Configuration
The Shopify connection must be authorized with the order read scope. The Shopify-side webhook registration for the order events is covered in the Shopify Installation Instructions.
Integration Flow
A Shopify order is received via the order webhook, or retrieved via the Shopify Orders API on Manual Sync.
The order's customer is resolved automatically as a prerequisite — linked by email or transferred from Shopify if not already in iPaaS.com (guest orders skip this). Gift cards sold or redeemed on the order are transferred automatically as prerequisites.
The iPaaS.com Order header is created or updated with totals, status, and email.
The child collections run in the same transfer to add or update the order's addresses, lines, note, tax lines, and payments.
Prerequisite Handling
When an order is transferred TO iPaaS.com, the integration automatically resolves the records it depends on, so subscribers do not pre-sync them:
Customer. If the order has a customer not already linked in iPaaS.com, the integration links an existing iPaaS.com Customer by email, or retrieves and transfers the customer from Shopify. A failed customer prerequisite blocks the order transfer. Guest orders (no customer) skip this.
Gift cards sold. Each gift-card line item triggers an automatic gift card transfer before the order completes.
Gift cards redeemed. Each successful gift-card payment triggers an automatic gift card balance update (skipped when the iPaaS.com balance already matches).
Mappings
Add Shopify Order Header TO iPaaS.com (Parent — Add)
Filter: !OrderNumber.EndsWith("-D") && !OrderNumber.EndsWith("-GC") && Confirmed
Mapping Type | Source (Shopify) | Destination (iPaaS.com) | Description |
Dynamic Formula |
| Order-Items (custom field) | Placeholder metafield key — replace with your own or remove. |
Dynamic Formula |
| Order-Desc (custom field) | Placeholder metafield key — replace with your own or remove. |
Dynamic Formula |
| Order-Status (custom field) | Placeholder metafield key — replace with your own or remove. |
Dynamic Formula |
| SystemId | Required. iPaaS.com subscription (system) id. |
Field | OrderNumber | TransactionNumber | Required. Transaction number and external-id link. |
Static |
| Type | Required. |
Lookup Translation | Shopify order status → Shopify Transaction Status To iPaaS | Status | Converts Shopify order status to iPaaS.com status. |
Dynamic Formula |
| EmailAddress | Fallback email for orders with no email. |
Field | TotalDiscounts | DiscountAmount | Order total discount. |
Field | TotalTax | TaxAmount | Order total tax. |
Field | ShippingPrice | ShippingAmount | Order shipping charge. |
Field | SubtotalPrice | Subtotal | Order subtotal. |
Field | TotalPrice | Total | Order grand total. |
Field | ItemsTotal | TotalQty | Total item quantity. |
Update Shopify Order Header TO iPaaS.com (Parent — Update)
Filter: !OrderNumber.EndsWith("-D") && !OrderNumber.EndsWith("-GC") && Confirmed
Same fields as the Add header, with one difference: TransactionNumber is a Dynamic Formula Name.replace("#","") (Shopify order Name with the # stripped) rather than the OrderNumber field.
Add Shopify Order Address TO iPaaS.com (Child)
Mapping Type | Source (Shopify) | Destination (iPaaS.com) | Description |
Dynamic Formula |
| IsPrimaryBilling | |
Dynamic Formula |
| IsPrimaryShipping | |
Field | Address1 | Address1 | |
Field | Address2 | Address2 | |
Field | City | City | |
Field | ProvinceCode | Region | Region from the province code. |
Field | Country | Country | |
Field | Zip | PostalCode | |
Dynamic Formula | carrier-code translation from | ShippingMethod | Placeholder — template maps only |
Field | FirstName | FirstName | |
Field | LastName | LastName | |
Field | Company | Company |
Add Shopify Order Line TO iPaaS.com (Child) and Update Shopify Order Line TO iPaaS.com (Child)
Both line collections share the same mappings; the Add-tree child is Add/Update, the Update-tree child is Update.
Shopify sells a product's units of measure as variants whose SKU is the base SKU plus a caret and the unit name (for example GLASS^BOX). When such a variant is ordered, this collection stores the base SKU on Sku and Original SKU and the unit name on SellingUnit, so the iPaaS.com line matches the base product while still recording which unit was sold. Lines for products without units are unaffected.
Mapping Type | Source (Shopify) | Destination (iPaaS.com) | Description |
Static |
| Type | |
Lookup Translation | Shopify line status → Shopify Transaction Line Status To iPaaS | Status | |
Dynamic Formula |
| Sku | Gift-card lines use SKU |
Dynamic Formula |
| SellingUnit | Unit of measure parsed from the line SKU ( |
Dynamic Formula |
| Original SKU | Base SKU (unit suffix removed), kept on a dedicated field for reference. |
Field | Title | Description | |
Field | Quantity | Qty | |
Dynamic Formula |
| UnitPrice | Net unit price after discounts. |
Dynamic Formula |
| ExtendedPrice | Net extended price after discounts. |
Field | Price | OriginalUnitPrice | Pre-discount unit price. |
Dynamic Formula |
| DiscountAmount | Total line discount. |
Dynamic Formula |
| TaxPercent | Summed tax rate. |
Dynamic Formula |
| EstimatedTaxAmount | Summed tax amount. |
Fulfillment order data (ship-from location)
Shopify assigns every order line to a fulfillment order — the unit of work for one location to fulfill some or all of the order's lines. An order shipping from two stores has two fulfillment orders. When an order transfers to iPaaS.com, the integration reads its fulfillment orders and records, on every line, the Shopify location assigned to ship it. This lets a destination system stock each line from the correct store, so split shipments land in the right place.
These details arrive as standard custom fields on every order line — on the Add, Update, and Shopify Plus order-line collections — so they are available out of the box with no mapping setup. The same fields are also captured on deposit-ticket lines.
Custom field | Meaning |
Ship-From Shopify Location ID | The Shopify location ID assigned to ship this line. When the line is split across locations, this is the location with the largest allocation. |
Ship-From iPaaS Location ID | The iPaaS.com location linked to that Shopify location, resolved automatically. Empty until the Shopify location has been linked to an iPaaS.com location. |
Ship-From Location Name | The name of the assigned Shopify location. |
Ship-From Split Shipment | True when the line is allocated across more than one location — see Split lines below. |
Ship-From Location Count | The number of Shopify locations allocated to the line. |
Fulfillment Order ID | The Shopify fulfillment order the line was resolved to. |
Fulfillment Order Status | The fulfillment order status: OPEN, IN_PROGRESS, SCHEDULED, ON_HOLD, CLOSED, or INCOMPLETE. |
Fulfillment Request Status | The fulfillment request status, for example UNSUBMITTED, SUBMITTED, or ACCEPTED. |
Fulfillment Order Quantity | The quantity of the line allocated to that fulfillment order — the largest allocation only when the line is split. |
Fulfillment Fulfillable Quantity | The quantity of the line still fulfillable from that fulfillment order. |
All ship-from fields are empty when Shopify created no fulfillment order for the line — the common case for digital gift-card lines. Treat an empty value as "no location assigned" and fall back to a default.
Mapping to your own location code. Ship-From iPaaS Location ID already resolves the Shopify location to the matching iPaaS.com location for you. If your destination system needs its own location code instead, add a Lookup Translation on Ship-From Shopify Location ID with one row per Shopify location, translating each to your code.
Split lines. Shopify can allocate one line across two locations (for example 5 units: 3 from Store A, 2 from Store B). Most destination systems cannot ship a single line from more than one location, so the integration does not split the line — the ship-from fields report the largest allocation and Ship-From Split Shipment is set to true, leaving the split for you to handle (for example route the line for review). Ship-From Location Count gives the number of locations involved, and the order's FulfillmentOrders field carries the complete per-location detail for formulas that need more than the per-line summary. Cancelled fulfillment orders are ignored (Shopify cancels the old one when it moves work to another location); closed ones still count, so a shipped line still reports where it shipped from.
Deposit tickets. Deposit-ticket lines carry the same ship-from fields, captured when the order is first imported. Because a deposit ticket is written once and not re-synced, these values are a snapshot from import time and are not updated afterward.
If the fulfillment orders cannot be read (for example the Shopify app is missing the read_merchant_managed_fulfillment_orders scope, which is included in the standard installation scopes), the order still imports and these fields stay empty. The failure is recorded in the technical log with a single warning and does not appear as an error in the activity tracker (except when Shopify rejects the call for API quota).
Add Shopify Order Note TO iPaaS.com (Child)
Filter: !IsEmpty(Parent.Note) && SourceTypeName == "ParentOnly"
Mapping Type | Source (Shopify) | Destination (iPaaS.com) | Description |
Static |
| Type | |
Dynamic Formula |
| Text | The order's note text. |
Static |
| IsPublic | Note created as public. |
Add Shopify Order Tax TO iPaaS.com (Child)
Mapping Type | Source (Shopify) | Destination (iPaaS.com) | Description |
Field | Title | Authority | Tax authority name. |
Field | Price | Amount | Tax amount. |
Field | Rate | TaxPercent | Tax rate. |
Add Shopify Order Payment TO iPaaS.com (Child)
Filter (summary): a transaction passes when it is a successful authorization (captured or not) or a successful sale, and the gateway is not gift_card.
Mapping Type | Source (Shopify) | Destination (iPaaS.com) | Description |
Dynamic Formula |
| Method | Raw gateway; commented-out option to match an iPaaS.com payment-method name. |
Field | Message | Description | |
Field | Amount | Amount | |
Dynamic Formula | Kind/Status/capture-state logic | Status |
|
Update Shopify Order Payment TO iPaaS.com (Child)
Filter (summary): a transaction passes when it is a successful authorization (captured or not) or a successful sale. Unlike the Add-tree payment collection, this filter does not exclude the gift_card gateway.
Mapping Type | Source (Shopify) | Destination (iPaaS.com) | Description |
Dynamic Formula |
| Method | Raw gateway; commented-out option to match an iPaaS.com payment-method name. |
Field | Message | Description | |
Dynamic Formula |
| Amount | Amount net of gift-card-sold value. |
Dynamic Formula | Kind/Status/capture-state logic | Status |
|
Add Shopify Order Payment Gift Card TO iPaaS.com (Child)
Filter: Gateway == "gift_card"
Mapping Type | Source (Shopify) | Destination (iPaaS.com) | Description |
Dynamic Formula |
| Method | |
Static |
| Description | |
Field | Amount | Amount | |
Static |
| Status |
Lookup Translations
Shopify Transaction Status To iPaaS
Shopify value | iPaaS.com value |
PENDING | Pending |
FULFILLED | Complete |
VOIDED | Cancelled |
SHIPPED | Shipped |
CONFIRMED | Pending |
PAID | Pending |
REFUNDED | Cancelled |
Shopify Transaction Line Status To iPaaS
Shopify value | iPaaS.com value |
PARTIAL | Pending |
FULFILLED | Complete |
NOT ELIGIBLE | Cancelled |
Confirm both translations in your subscription; the values above reflect the template defaults and may be adjusted to your business rules.
Error Handling
Order excluded by filter: orders ending in
-Dor-GC, or unconfirmed orders, are skipped by the header collections.Customer prerequisite fails: the order transfer fails; verify the Customer mapping and that the customer can be linked or created.
Unauthorized access: ensure the Shopify connection includes the order read scope.
Missing lookup translation: populate the status translations so order and line statuses map.
Testing & Validation
Sync a confirmed Shopify order and confirm the iPaaS.com Order appears with the correct transaction number, totals, status, and email.
Confirm a guest order (no email) imports with
defaultCustomer@shopify.com.Confirm an order with a new customer transfers the customer automatically as a prerequisite, and that a customer failure blocks the order.
Confirm line items, addresses (with shipping method), note, tax lines, and both gift-card and non-gift-card payments populate correctly.
Units of measure: order a unit-of-measure variant (SKU
base^UnitName) and confirm the iPaaS.com line carries the base SKU on Sku/Original SKU and the unit on SellingUnit; order the same product in two units and confirm two separate lines import.Ship-from location: place an order whose lines are assigned to two different Shopify locations and confirm each imported line carries the correct Ship-From Shopify Location ID and Ship-From Location Name (and Ship-From iPaaS Location ID when the Shopify location is linked to an iPaaS.com location); order a quantity split across two locations and confirm Ship-From Split Shipment is true.
Re-sync the order and confirm it updates the same iPaaS.com Order rather than creating a duplicate.
Additional Notes
Replace the placeholder order metafield keys (Order-Items, Order-Desc, Order-Status) and the placeholder shipping-method carrier mapping before relying on them in production.
Validate dynamic formulas in a staging environment before enabling automatic transfers.
The order-level FulfillmentOrders field holds the complete fulfillment order list (location, status, delivery method, destination, and per-line quantities) for formulas that need more than the per-line summary.
Reading fulfillment orders adds one Shopify API call each time an order is loaded from Shopify, including when a
-Dor-GCticket record is re-loaded or re-synced. The tickets created alongside a new order reuse the order already in memory and cost no extra call.
Related Documents
Related Mapping Documentation
