Shopify to iPaaS.com Customer Mapping Documentation
This documentation covers importing Shopify customers into iPaaS.com (transfer TO iPaaS.com). Shopify customer creation, update, and deletion are handled by separate mapping collections — Add Shopify Customer TO iPaaS.com, Update Shopify Customer TO iPaaS.com, and Delete Shopify Customer TO iPaaS.com — each driven by the matching Shopify customer webhook. The Add and Update collections are parents of the Customer Address and Customer Company child collections, which import the customer's address and B2B company relationship in the same transfer. Customer tags are maintained as iPaaS.com customer categories by Add/Update Shopify Customer Tags TO iPaaS.com. The reverse direction (writing iPaaS.com customers to Shopify) is documented in iPaaS.com to Shopify Customer Mapping Documentation.
ID Format
Manual Sync ID: the Shopify customer id (for example, 10), entered on the iPaaS.com Manual Sync page.
External ID saved after sync: the Shopify customer id is recorded as the external-id link, so later transfers update the same iPaaS.com Customer rather than creating a duplicate.
Deleted Record Support
Customer deletion is supported in this direction. The Shopify Customer Deleted (customers/delete) event is handled by the Delete Shopify Customer TO iPaaS.com collection, which removes the iPaaS.com Customer matched by the saved external id. Deletion is not enabled until that inbound event is subscribed.
Mapping Collection Status
Status: Enabled. Add and Update carry no mapping filter; the Customer Company child collection carries a filter requiring the related iPaaS.com Company to exist.
Trigger Events: Shopify Customer Created (
customers/create), Customer Updated (customers/update), and Customer Deleted (customers/delete).
Duplicate or Conflicting Mappings
The opposite-direction iPaaS.com to Shopify Customer collection writes iPaaS.com customers to Shopify. Within this direction, Add and Update are distinct collections triggered by the respective Shopify event; they do not overlap. On Update, the iPaaS.com CustomerNumber and Company values are deliberately preserved from the existing record (sourced from DestinationValue) so an inbound update does not clobber an iPaaS.com-assigned customer number or company.
Supported Child Collections
Parent Collections: Add Shopify Customer TO iPaaS.com; Update Shopify Customer TO iPaaS.com.
Add / Update Shopify Customer Address TO iPaaS.com — imports the customer's address (recipient name, street, city, region, country, postal code, phone). The PreventDuplicate flag is set so repeated imports do not create duplicate addresses.
Add / Update Shopify Customer Company TO iPaaS.com — imports the customer's B2B company relationship, linking the customer to the existing iPaaS.com Company. Carries a filter that requires the related Company to exist in iPaaS.com.
Related standalone collection: Add/Update Shopify Customer Tags TO iPaaS.com maintains iPaaS.com customer categories from Shopify tags.
System Caveats
Shopify Caveats
Read access required. The Shopify connection must include the
read_customersOAuth scope; without it the transfer fails with an authorization error.Email uniqueness. Shopify enforces a unique email per customer.
Multiple addresses per customer. Shopify allows multiple addresses; only the default is treated as primary unless your configuration handles others.
Customer metafields. The metafield-to-custom-field mapping returns a value only if the metafield exists on the Shopify customer under the configured key.
iPaaS.com Caveats
External-id link required. The Shopify customer id is saved as the external id so updates edit the same iPaaS.com Customer rather than creating a duplicate.
Category lookup. A Shopify tag is assigned as a customer category only when a matching iPaaS.com category already exists (maintained by the Customer Tags collection); unmatched tags are skipped.
Company must be linked first. The Customer Company child collection resolves its link only when the related Company already exists in iPaaS.com (enforced by its filter).
Setup Requirements
iPaaS.com Configuration
Enable the Customer collections and subscribe to the Shopify Customer Created, Customer Updated, and (if deletion is desired) Customer Deleted events in the subscription configuration's Inbound Data Flows section. No automatic transfers occur until those subscriptions are enabled. Customers can also be imported on demand from the Manual Sync page using the Shopify customer id. To use the sample customer-metafield mapping, set the metafield key to the one your Shopify store uses (Shopify Settings > Custom data > Customers).
Shopify Configuration
The Shopify connection must be authorized with the read_customers OAuth scope. The Shopify-side webhook registration for the customer events is covered in the Shopify Installation Instructions.
Integration Flow
A Shopify customer is received via the customer webhook, or retrieved via the Shopify Customers API on Manual Sync.
The integration matches the existing iPaaS.com Customer by the saved external id (the Shopify customer id), or creates a new one on first sync.
Customer fields are written to iPaaS.com; Shopify tags are converted to iPaaS.com customer categories.
The child Address collection imports the customer's address.
The child Company collection imports the B2B company relationship, provided the related iPaaS.com Company already exists (its filter raises a clear error otherwise).
The Shopify customer id is saved as the external-id link.
Mappings
Add Shopify Customer TO iPaaS.com (Parent)
Mapping Type | Source (Shopify) | Destination (iPaaS.com) | Description |
Field | Id | CustomerNumber | Required. |
Field | Firstname | FirstName | |
Field | Lastname | LastName | |
Field | EmailAddress | Recommended natural key; unique in Shopify. | |
Dynamic Formula |
| Categories | Converts Shopify tags to iPaaS.com customer categories; unmatched tags skipped. |
Field | Note | Comment | |
Dynamic Formula |
| ShopifyCustomerType (custom) | Placeholder — replace |
Update Shopify Customer TO iPaaS.com (Parent)
Mapping Type | Source (Shopify) | Destination (iPaaS.com) | Description |
Dynamic Formula |
| CustomerNumber | Preserves the existing iPaaS.com value. |
Field | Firstname | FirstName | |
Field | Lastname | LastName | |
Field | EmailAddress | ||
Dynamic Formula |
| Company | Preserves the existing iPaaS.com value. |
Dynamic Formula |
| Categories | |
Field | Note | Comment | |
Dynamic Formula |
| ShopifyCustomerType (custom) | Placeholder — see above. |
Add / Update Shopify Customer Address TO iPaaS.com (Child)
Mapping Type | Source (Shopify) | Destination (iPaaS.com) | Description |
Static |
| PreventDuplicate | Control flag; avoids duplicate addresses. |
Field | FirstName | FirstName | |
Field | LastName | LastName | |
Field | Company | Company | Free-text address field. |
Field | Address1 | Address1 | |
Field | Address2 | Address2 | |
Field | City | City | |
Field | ProvinceCode | Region | |
Field | Country | Country | |
Field | Zip | PostalCode | |
Field | Phone | PhoneNumber |
Add / Update Shopify Customer Company TO iPaaS.com (Child)
Mapping Type | Source (Shopify) | Destination (iPaaS.com) | Description |
Field | CompanyName | B2B Company Name (custom) | |
Static |
| Type | Sets the relationship type. |
Dynamic Formula |
| RelatedToId | Resolves the iPaaS.com Company id; filter requires the company to exist. |
Add/Update Shopify Customer Tags TO iPaaS.com (Standalone)
Mapping Type | Source (Shopify) | Destination (iPaaS.com) | Description |
Field | Name | Name | Tag name → customer category name; the key for tag-to-category matching. |
Error Handling
Unauthorized access — ensure the Shopify connection includes the
read_customersscope.Company not found — the Customer Company child raises "There is no company in iPaaS by this external id" when the related iPaaS.com Company is not present; import the Company TO iPaaS.com first.
Duplicate email — Shopify already enforces unique email; match on email to avoid duplicate iPaaS.com customers.
Testing & Validation
Sync a Shopify customer and confirm it appears in iPaaS.com with the correct CustomerNumber, name, email, and Note.
Confirm the Shopify customer id is saved as the external id and a re-sync updates the same iPaaS.com Customer.
Confirm Shopify tags resolve to existing iPaaS.com customer categories.
Confirm the address child imports with the correct region and postal code, and that re-imports do not create duplicate addresses.
For B2B customers, confirm the company relationship links to the correct iPaaS.com Company; verify the filter error when the company is absent.
On Update, confirm CustomerNumber and Company are preserved from the existing iPaaS.com record.
Additional Notes
Shopify supports multiple addresses per customer; clarify whether all addresses or only the default should sync. The customer-metafield mapping is a sample — point it at the metafield key your store actually uses, or remove it.
