Skip to main content

iPaaS.com to Shopify Company Mapping Documentation

iPaaS.com to Shopify Company Mapping Documentation

This mapping collection writes iPaaS.com Companies to Shopify as B2B Companies (transfer FROM iPaaS.com — Add and Update). On Add it creates a new Shopify company and links it by saving the Shopify company id as the external id; on Update it edits the existing linked company. It is the parent of the Company Contacts child collection, which writes each company's contacts (B2B users) to Shopify. It is the outbound counterpart to Shopify to iPaaS.com Company Mapping Documentation (TO iPaaS.com), which imports companies into iPaaS.com.

Companies require Shopify's B2B capability to be enabled on the store. As of April 2026, Shopify's foundational B2B features — including company accounts — are available on the Basic, Grow, Advanced, and Plus plans and are no longer exclusive to Shopify Plus; some advanced B2B capabilities remain Plus-only (see Shopify's B2B for all announcement and the Shopify B2B Help Center).

ID Format

Manual Sync ID.

On the iPaaS.com Manual Sync page, enter the iPaaS.com Company id to send that company to Shopify.

External ID.

After a successful sync, the Shopify company id is saved as the external id on the iPaaS.com Company. Subsequent updates use that link to edit the same Shopify company rather than creating a new one. The link is carried by the iPaaS.com Company externalId custom field.

Deleted Record Support

Deletion is not performed by this collection. Delete mappings are not included in the default template, and deletions in iPaaS.com do not propagate to Shopify. Removing a company in Shopify is a manual action carried out in the Shopify admin.

Mapping Collection Status

  • Status: Enabled (no mapping filter; every iPaaS.com Company sent through the collection is processed).

  • Trigger Events: the iPaaS.com Company Create and Update outbound triggers (enabled per Setup Requirements below).

The Company Contacts child collection is Enabled and carries a mapping filter — see Supported Child Collections.

Duplicate or Conflicting Mappings

De-duplication by Name.

Unless the Allow Creating Duplicate Companies subscription setting is enabled, the integration runs a prerequisite step that looks up an existing Shopify company by exact Name and links the iPaaS.com Company to it (saving the Shopify id as the external id), rather than creating a new one. This prevents a duplicate when a company with the same name already exists in Shopify. With Allow Creating Duplicate Companies enabled, this step is skipped and a new Shopify company is always created (see Prerequisite Handling for the full effect of the setting).

Conflicting Collection — Inbound Overwrite Awareness.

The inbound Shopify Company To iPaaS collection transfers Shopify companies back into iPaaS.com, matched by the same Shopify company id (saved as the external id). Because the two directions share that link, a company created or updated through this FROM-iPaaS collection is matched and updated inbound rather than duplicated. Keep both directions' mappings aligned so a round-trip does not clear fields one side does not maintain.

Supported Child Collections

  • Add/Update Shopify Company Contacts FROM iPaaS.com — writes the company's contacts (B2B users) to Shopify, resolving each contact's Shopify customer id from the iPaaS.com company relationship. The child runs as part of this company's transfer; it has no independent automatic trigger. It carries a mapping filter that skips a contact whose Customer is not yet linked to Shopify (see Mappings and Prerequisite Handling).

System Caveats

Shopify Caveats

  • B2B must be enabled. Companies require Shopify's B2B capability — available on the Basic, Grow, Advanced, and Plus plans (foundational B2B is no longer Plus-only as of April 2026; advanced B2B features remain Plus-only). Without B2B enabled, companies cannot be created in Shopify.

  • Write access required. The Shopify connection must be authorized to read and write companies (the Shopify B2B read_companies / write_companies access scopes).

  • Name is the de-duplication key. When Allow Creating Duplicate Companies is off, an existing Shopify company is matched by Name and linked; choose company names that identify the intended Shopify company.

iPaaS.com Caveats

  • External-id link required. The Shopify company id is saved as the external id (in the iPaaS.com Company externalId custom field) so subsequent updates edit the same Shopify company rather than creating a duplicate.

  • Contacts depend on Customers in Shopify. Each contact must resolve to a Shopify customer id. When duplicate creation is disabled (the default), the integration transfers any related Customer that is not yet linked to Shopify as a prerequisite (see Prerequisite Handling), so you do not have to pre-sync customers; when it is enabled, link Customers to Shopify first.

Prerequisite Handling

Both of the integration's automatic prerequisite steps for a company are governed by the Allow Creating Duplicate Companies subscription setting:

  • When the setting is off (default), the integration runs the prerequisite step before the company is written:

  • If the iPaaS.com Company is not yet linked to Shopify, it looks up an existing Shopify company by exact Name and, if one is found, links it (saving its Shopify id as the external id) so the transfer updates that company instead of creating a duplicate.

  • For each company relationship, if the related Customer is not yet linked to Shopify, it transfers that Customer to Shopify as a prerequisite before the company completes. If a prerequisite customer transfer fails, the company transfer also fails.

  • When the setting is on, the entire prerequisite step is skipped — the integration does not de-duplicate by name and does not pre-transfer related Customers. A new Shopify company is created, and any contact whose related Customer is not already linked to Shopify is skipped by the child collection's filter (see the child mapping below).

Setup Requirements

iPaaS.com Configuration

Enable this mapping collection. Automatic transfers are enabled in the subscription configuration's Outbound Data Flows section — subscribe to the iPaaS.com Company Create and Update outbound triggers that should dispatch this collection to Shopify. No automatic transfers occur until those subscriptions are enabled. Companies can also be sent on demand from the Manual Sync page using the iPaaS.com Company id — Manual Sync does not require the outbound triggers.

Review the Allow Creating Duplicate Companies subscription setting (default off). Leave it off to de-duplicate by company name and to have related Customers auto-transferred as a prerequisite. Enabling it skips the whole prerequisite step — a new Shopify company is created on every transfer and related Customers are not pre-transferred (link them to Shopify beforehand). Enable it only if your business intends that behavior.

Shopify Configuration

The store must have Shopify B2B enabled (available on the Basic, Grow, Advanced, or Plus plans), and the Shopify connection must be authorized to read and write companies (the read_companies / write_companies access scopes). No additional per-company configuration is required in Shopify.

Integration Flow

  1. Resolve the Shopify company for the record from the saved external-id link.

  2. If no external id is saved and Allow Creating Duplicate Companies is off, search Shopify for an existing company by Name; an exact match is linked instead of created.

  3. On Add: create a new Shopify company with the mapped Name (and any configured custom-field values), and save its id as the external-id link.

  4. On Update: edit the linked Shopify company with the mapped values.

  5. For each company relationship, the child collection resolves the contact's Shopify customer id and attaches the contact to the Shopify company. When duplicate creation is disabled (the default), any related Customer not yet linked to Shopify is transferred first as a prerequisite (step above); when it is enabled, an unlinked contact is skipped by the child filter.

Mappings

Add/Update Shopify Company FROM iPaaS.com

Mapping Type

Source Field (iPaaS.com)

Destination Field (Shopify)

Description

Field

Name

Name

Required. The iPaaS.com Company name, written to the Shopify company Name. Also used to de-duplicate against an existing Shopify company by name when no external-id link exists.

Field

externalId (custom field)

ExternalId

Required. Carries the Shopify company id (held in the iPaaS.com Company externalId custom field) so the company is linked and subsequent updates edit the same Shopify company.

Static

Test shopify cf value

Test Shopify CF (custom field)

Example custom-field mapping: writes a fixed value to a Shopify custom field. Placeholder value — replace during implementation: Test shopify cf value and the Test Shopify CF field are samples — replace them with the Shopify custom field and the iPaaS.com-sourced value your business needs, or remove this mapping if custom-field sync is not required.

Add/Update Shopify Company Contacts FROM iPaaS.com (child)

Description: Writes the company's contacts (B2B users) to Shopify as part of the company transfer. For each iPaaS.com company relationship it resolves the related Shopify customer id so the contact can be attached to the Shopify company. A mapping filter (below the table) skips a contact whose Customer is not yet linked to Shopify.

Mapping Type

Source Field (iPaaS.com)

Destination Field (Shopify)

Description

Dynamic Formula

GetExternalIdAsync(RelatedToId, "Customer", SpaceportSystemId)

CustomerId

Required. Resolves the Shopify customer id for the iPaaS.com Customer referenced by the company relationship (RelatedToId), so the contact can be attached to the Shopify company. When duplicate creation is disabled (the default), the parent company's prerequisite handling transfers the related Customer to Shopify first, so you do not need to pre-sync customers.

Mapping Filter. The child carries a filter that confirms the related Customer already exists in Shopify:

var shopifyCustomerId = await GetExternalIdAsync(RelatedToId, "Customer", SpaceportSystemId);
if(shopifyCustomerId == null)
    return false;
return true;

It looks up the Shopify customer id (external id) for the iPaaS.com Customer referenced by the relationship, and the record proceeds only if that id is found. When duplicate creation is disabled (the default), the parent's prerequisite handling auto-transfers the related Customer to Shopify first, so the filter then passes; it skips the contact (no error) only if the customer is genuinely unavailable. When Allow Creating Duplicate Companies is enabled, related Customers are not pre-transferred, so any contact whose Customer is not already linked to Shopify is skipped here.

Error Handling

  • Unauthorized access — ensure the store has Shopify B2B enabled and the Shopify connection is authorized to write companies (write_companies).

  • Unexpected duplicate Shopify company — confirm whether Allow Creating Duplicate Companies is enabled; with it on, a new company is created on every transfer regardless of name.

  • Contact not attached — the contact's related Customer was not linked to Shopify and the filter skipped it. With duplicate creation disabled (the default), the parent's prerequisite handling normally transfers the Customer first; if a contact is consistently skipped, confirm the Customer FROM-iPaaS mapping is configured correctly. With Allow Creating Duplicate Companies enabled, this is expected — Customers are not pre-transferred, so link the Customer to Shopify before the company sync.

Testing & Validation

  • Create an iPaaS.com Company with a Name, sync it, and confirm a new Shopify company is created and the Shopify company id is saved as the external id; re-sync and confirm the same Shopify company is updated rather than duplicated.

  • With Allow Creating Duplicate Companies off, sync a Company whose Name matches an existing Shopify company and confirm it is linked rather than duplicated.

  • With Allow Creating Duplicate Companies on, confirm a new Shopify company is created even when a same-name company already exists.

  • Sync a Company with contacts whose Customers are already linked to Shopify and confirm each contact is attached to the Shopify company.

  • With duplicate creation disabled (the default), sync a Company with a contact whose Customer is not yet in Shopify and confirm the Customer is transferred as a prerequisite, then the contact attaches. With it enabled, confirm such a contact is skipped instead.

Additional Notes

The default template ships with an example custom-field mapping (Test Shopify CF) — replace or remove it during implementation; it is not required for the company sync to succeed. Deleting a Shopify company is intentionally out of scope for this collection and is handled manually in the Shopify admin.

Related Documents

Did this answer your question?