Skip to main content

iPaaS.com to BigCommerce Customer Mapping Documentation

How iPaaS.com customers, their addresses, and customer categories write out to BigCommerce as customers, addresses, and customer groups — field mappings, filters, email matching, and category-to-group pricing.

Summary

iPaaS.com customers and their addresses write out to BigCommerce customers and addresses, and iPaaS.com customer categories write out to BigCommerce as customer groups. Outbound transfers run automatically from subscribed iPaaS.com triggers or on demand from the iPaaS.com Manual Sync page.

This article covers the standard (non-B2B) outbound customer collections. Customers, companies, and users belonging to BigCommerce B2B Edition are handled by a separate set of collections — see the Related Documents footer. Capturing BigCommerce customers and addresses into iPaaS.com is covered by the companion BigCommerce to iPaaS.com Customer Mapping Documentation. Only one of the B2C (standard) or B2B mappings should apply to any given customer.

Contents

Data Types and Direction

This article documents the following mapping collections and the iPaaS.com data type each one operates on. Every collection here transfers iPaaS.com to BigCommerce.

Collection

iPaaS.com data type

Direction

Add/Update BigCommerce Customer FROM iPaaS.com

Customer

iPaaS.com to BigCommerce

Add/Update BigCommerce Customer Address FROM iPaaS.com (child)

Customer Address

iPaaS.com to BigCommerce

Add/Update BigCommerce Customer Category FROM iPaaS.com

Customer Category

iPaaS.com to BigCommerce

ID Format

Manual Sync IDs differ by collection because each collection acts on a different record. Enter the ID that matches the collection you are syncing.

Manual Sync ID Format

  • Customer: enter the iPaaS.com Customer ID — the numeric identifier iPaaS.com assigns to the customer. Example: 456.

  • Customer Category: enter the iPaaS.com Customer Category ID — the numeric identifier iPaaS.com assigns to the category. Example: 31.

Addresses written as part of a customer have no independent Manual Sync entry point; sync the parent customer and its addresses transfer together.

External ID Format

After a successful transfer, iPaaS.com records the BigCommerce identifier as the external ID on the iPaaS.com record:

  • For a customer written to BigCommerce, the BigCommerce customer ID is saved as the external ID on the iPaaS.com Customer.

  • For a customer category written to BigCommerce, the BigCommerce customer group ID is saved as the external ID on the iPaaS.com Customer Category.

The external-ID record is the match that routes later transfers of the same record to an update rather than creating a duplicate.

Deleted Record Support

Outbound delete is not supported for these collections. Delete mappings are not included in the default templates, and deleting a customer, address, or category in iPaaS.com does not propagate the deletion to BigCommerce. Remove records manually in each system as needed.

Custom Field Support

BigCommerce does not expose custom fields for the customer, customer address, or customer group data types, and no iPaaS.com custom fields are created by default for these records. No custom-field configuration is required to run these collections.

Two iPaaS.com custom fields are read by filters — they route records rather than adding mapped data — and neither is created automatically:

  • B2B_SendToB2B: read by the outbound customer filter to route B2B customers to the B2B collections. See the Mappings section.

  • Customer Pricing Group: read by the outbound customer category filter to select which categories become BigCommerce customer groups. See the Mappings section.

Mapping Collection Status

All collections in this article ship Enabled. Trigger events:

  • Customer: iPaaS.com customer created and customer updated triggers.

  • Customer Category: iPaaS.com customer category created and customer category updated triggers.

Whether a given trigger drives an Add or an Update depends on whether the record is already linked to BigCommerce by an external ID. Automatic transfers do not run until the corresponding triggers are subscribed — see Setup Requirements.

Duplicate or Conflicting Mappings

Review each collection's filter and Add/Update settings before enabling them, and decide which collection is the source of truth for each record.

  • Standard vs. B2B customers. The outbound customer filter splits customers between the standard collection documented here and the separate B2B collection. Only one of the standard or B2B mappings should apply to any given customer. Enabling both without coordinated filters can create duplicate or conflicting customers.

  • Pricing-group-only categories. The outbound customer category collection processes only iPaaS.com categories flagged as a customer pricing group; other categories are skipped so unrelated categories are not written to BigCommerce as groups.

Collision Handling

The Customer data type matches on email address. When iPaaS.com finds an existing BigCommerce customer with the same email, the two records are assumed to be the same customer, and the transfer updates the existing record rather than creating a duplicate.

The behavior on a match is configurable on the mapping collection. The selectable methods are:

  • Remap and Link: link the incoming record to the matched record and remap it.

  • Update and Link: update the matched record and keep the link.

  • Update and No Link: update the matched record without establishing a persistent link.

  • Error: stop and raise an error instead of resolving the match automatically.

Choose the method that fits how your business wants duplicate emails handled before enabling the collection. A customer without an email cannot be matched reliably.

Customer Category does not use email collision handling; it matches on its external-ID link.

Supported Child Collections

The outbound Customer collection drives its addresses through a child collection that transfers as part of the customer:

  • Add/Update BigCommerce Customer FROM iPaaS.comAdd/Update BigCommerce Customer Address FROM iPaaS.com

Customer Address and Customer Category are leaf collections with no children of their own.

System Caveats

BigCommerce Caveats

  • Customer group must exist. A customer group written from an iPaaS.com category, and any group resolved for an outbound customer, must correspond to a BigCommerce customer group. Confirm the group exists in BigCommerce before relying on the assignment.

  • Customer group pricing requires a price list. A customer group's discount rules assign a BigCommerce price list. The referenced price list must exist in BigCommerce for the group's pricing to apply.

  • Rate limiting. When BigCommerce rate-limits requests, the transfer is automatically rescheduled to resume after the limit window resets. No subscriber action is required.

iPaaS.com Caveats

  • Email required for matching. The email address is the key iPaaS.com uses to match and de-duplicate customers. A customer without an email cannot be matched reliably.

  • Category-driven customer group. For outbound customers, the BigCommerce customer group is derived from the customer's iPaaS.com categories. Review the category-to-group setup so customers land in the intended group.

  • Pricing-group flag drives category eligibility. Only iPaaS.com categories flagged as a customer pricing group are transferred to BigCommerce customer groups. Set the pricing-group custom field on the categories you want to become groups.

  • Parent Customer required for addresses. An address is written only in relation to its parent Customer; the parent customer must transfer for its addresses to be processed.

Integration-Specific Caveats

  • Full-replace updates. Each outbound transfer writes the full record to BigCommerce; fields left unmapped can be overwritten on each transfer. Map every field you want preserved, or use a DestinationValue approach for fields you do not source from iPaaS.com.

  • PreventDuplicate scope. The duplicate-address suppression described in the address collection applies only to addresses transferred as a subcollection of a full customer request.

Setup Requirements

Automatic transfers do not run until the corresponding triggers are subscribed. Configure them in the subscription configuration:

  • Customer. Enable the iPaaS.com customer triggers (customer created and customer updated) under Outbound Data Flows.

  • Customer Category. Enable the iPaaS.com customer category triggers (customer category created and customer category updated) under Outbound Data Flows, and confirm the BigCommerce price lists referenced by the discount rules exist.

Integration Flow

Customer and its addresses:

  1. An iPaaS.com customer created or updated trigger fires, or a customer is manually synced by its iPaaS.com Customer ID.

  2. The outbound filter processes standard customers and skips customers flagged for B2B.

  3. The customer is created or updated in BigCommerce, resolving its customer group from the customer's iPaaS.com categories.

  4. The customer's addresses are written and linked through the child address collection.

Customer category:

  1. An iPaaS.com customer category trigger fires, or a category is manually synced by its iPaaS.com Customer Category ID.

  2. The outbound filter processes only categories flagged as a customer pricing group.

  3. The BigCommerce customer group is created or updated with the mapped name, default and guest flags, category access, and discount-rule (price-list) assignment.

Mappings

Each collection below lists its Mapping Filter (when the collection has one), the iPaaS.com data type it operates on, and its field mapping table. Source and destination field names are shown as they appear in each system.

Add/Update BigCommerce Customer FROM iPaaS.com

iPaaS.com data type: Customer

Writes an iPaaS.com Customer to BigCommerce, creating the customer when it does not yet exist and updating it when it does. Create-versus-update routing is decided by whether the customer is already linked to a BigCommerce customer by an external ID.

Mapping Filter

var result = GetCustomFieldValue(CustomFields, "B2B_SendToB2B");if (result != null) {   if (result.ToLower() == "y" || result.ToLower() == "true")    return false;  //Exclude B2B customers from this transfer}return true;  //Include all other customers

Filter Description. The filter reads the customer's iPaaS.com B2B_SendToB2B custom field. When that field is set to y or true, the customer is skipped here (return false) and handled by the B2B Customer collection instead. Every other customer passes through (return true). The filter references a custom-field name rather than an environment-specific value, so no placeholder substitution is required.

Mapping Type

Source Field (iPaaS.com Customer)

Destination Field (BigCommerce)

Description

Field

EmailAddress

Email

Required. The customer's email, and the key used to match an existing BigCommerce customer for de-duplication (see Collision Handling).

Dynamic Formula

(IsEmpty(FirstName) ? (IsEmpty(Company) ? "N/A" : Company) : FirstName)

FirstName

Required. BigCommerce expects a name on the customer. Falls back to the company name when the first name is empty, and to N/A when the company is also empty, so the write does not fail on a missing name.

Dynamic Formula

(IsEmpty(LastName) ? "N/A" : LastName)

LastName

Required. Falls back to N/A when the last name is empty so the write does not fail on a missing name.

Field

Company

Company

Recommended. The customer's company name where present.

Field

Comment

Notes

Recommended. The customer's comment, carried to the BigCommerce notes field.

Dynamic Formula

(see formula below)

CustomerGroupId

Recommended. Resolves the BigCommerce customer group from the customer's iPaaS.com categories. Returns 0 (no group assigned) when no matching group is found. Review the category-to-group setup so customers land in the intended group.

Dynamic Formula

(see formula below)

ChannelIds

Recommended. Sets the BigCommerce channels the customer is associated with, preserving any existing channel assignments and assigning a default of channel 1 when none are present.

CustomerGroupId formula:

var customerGroupId = await GetCustomerGroupIdByCategories(Categories);if(customerGroupId != null && customerGroupId.ToString() != ""){    return customerGroupId;}return 0;

ChannelIds formula:

//Use existing values   var channelIds = new List<int>;   var originalValues = GetCustomFieldValue(CustomFields,"Channel Assignments");   if(!String.IsNullOrEmpty(originalValues)){channelIds = IntListFromString(originalValues);} //Assign default values  if(channelIds.count()==0){ if(1==1){ channelIds.Add(1); } } //Assign new values   if(1==2){ channelIds.Add(2); }  return channelIds;

Placeholder value — replace during implementation: the default channel 1 in the ChannelIds formula is a BigCommerce channel identifier. Confirm that 1 is the correct channel for your store, or adjust the formula, before relying on it in production. The commented if(1==2) branch is an example scaffold for adding further channels and has no effect as written.

Add/Update BigCommerce Customer Address FROM iPaaS.com (child)

iPaaS.com data type: Customer Address

Writes an iPaaS.com Customer Address to BigCommerce, linked to its parent customer. This is a child collection of Add/Update BigCommerce Customer FROM iPaaS.com and transfers as part of the customer; it is not synced on its own.

Mapping Filter

!(IsEmpty(Address1)) && !(IsEmpty(Region))

Filter Description. An address is processed only when both the Address1 street line and the Region are present. Addresses missing either value are skipped. This filter contains no environment-specific value, so no placeholder substitution is required.

Mapping Type

Source Field (iPaaS.com Customer Address)

Destination Field (BigCommerce)

Description

Dynamic Formula

(see formula below)

Id

Recommended. Resolves the BigCommerce address ID for an existing address from its external-ID link so an update writes to the correct address rather than adding a new one. When no external ID exists yet, the address is created.

Dynamic Formula

(IsEmpty(FirstName) ? (IsEmpty(Company) ? "N/A" : Company) : FirstName)

FirstName

Required by the write path. Falls back to the company name when the first name is empty, and to N/A when the company is also empty.

Dynamic Formula

(IsEmpty(LastName) ? "N/A" : LastName)

LastName

Required by the write path. Falls back to N/A when the last name is empty.

Field

Company

Company

Recommended. The company name on the address where present.

Field

Address1

Address1

Required. The collection's filter skips any address without a street line.

Field

Address2

Address2

Optional. The secondary street line where present.

Field

City

City

Recommended. The city.

Dynamic Formula

StateName(Region)

State

Recommended. Resolves the full state name from the iPaaS.com region value.

Field

PostalCode

PostalCode

Recommended. The postal or ZIP code.

Dynamic Formula

CountryCodeWithDefault(Country, "US")

CountryCode

Recommended. Normalizes the country to a country code, defaulting to US when the country is empty or cannot be resolved. Confirm the default fits your customer base.

Dynamic Formula

Coalesce(PhoneNumber, "000")

Phone

Recommended. Uses the customer's phone when present and falls back to 000 when no phone is available so the write has a value.

Id formula:

var external = await GetExternalIdAsync(Id, "Address", SpaceportSystemId);return SubstringAfterLastMatch(external, "\\");

Placeholder value — replace during implementation: the "000" phone fallback is a filler value used when the customer has no phone number. Replace it, or remove the fallback, if your business needs a real phone value on BigCommerce addresses. The "US" country default likewise assumes a US-centric customer base — adjust it if your customers are primarily elsewhere.

Duplicate address prevention. To prevent duplicate addresses in BigCommerce, add a Static mapping to a destination field named PreventDuplicate on this collection. When its value is Y, y, or true, iPaaS.com searches BigCommerce for an existing address that exactly matches every mapped field (excluding custom fields); on an exact match, the address is not added and no external ID is assigned. This applies to addresses transferred as a subcollection of the customer.

Add/Update BigCommerce Customer Category FROM iPaaS.com

iPaaS.com data type: Customer Category

Writes an iPaaS.com Customer Category to BigCommerce as a customer group, creating the group when it does not yet exist and updating it when it does. Create-versus-update routing is decided by whether the category is already linked to a BigCommerce customer group by an external ID.

Mapping Filter

var pricingGroupChecker = GetCustomFieldValue(CustomFields, "Customer Pricing Group");if(!string.IsNullOrEmpty(pricingGroupChecker) && pricingGroupChecker.ToLower() == "true")    return true;return false;

Filter Description. The filter reads the category's iPaaS.com Customer Pricing Group custom field. Only categories whose value is true are processed (return true); every other category is skipped (return false). Set this custom field on the categories you want to become BigCommerce customer groups. The filter references a custom-field name rather than an environment-specific value, so no placeholder substitution is required.

Mapping Type

Source Field (iPaaS.com Customer Category)

Destination Field (BigCommerce)

Description

Field

Name

Name

Required. The customer group name written to BigCommerce; the group must have a name.

Static

"false"

IsDefault

Recommended. Whether this is the store's default customer group. Defaults to false; change it only if you intend this group to be the default.

Dynamic Formula

return SetCategoryAccessForCustomerGroup("all");

CategoryAccess

Recommended. Sets which BigCommerce product categories the group can access. Defaults to all. See the access-type note below.

Dynamic Formula

(see formula below)

DiscountRules

Recommended. Sets the group's discount rules by assigning a BigCommerce price list. The first argument must be price_list; the second must be a valid, positive price list ID.

Static

"false"

IsGroupForGuests

Recommended. Whether this group is applied to guest shoppers. Defaults to false; change it only if you intend this group to serve guests.

The category's CategoryId and InternalId are also required for the transfer to operate — they are the iPaaS.com identifiers the transfer acts on and the link back to the iPaaS.com record. They are supplied by the transfer rather than mapped as fields.

DiscountRules formula:

return SetDiscountRulesForCustomerGroup("price_list", 1);//Example formula applying category name logic//if (Name == "MEMBERS"){//  return SetDiscountRulesForCustomerGroup("price_list", 3);//}//else {//  return SetDiscountRulesForCustomerGroup("price_list", 2);//}

Placeholder value — replace during implementation: the price list ID 1 in the DiscountRules formula is an example. Replace it with your own BigCommerce price list ID before enabling this collection. To find the ID: log in to BigCommerce, open Products, click Price Lists, open the desired price list, and copy its ID. The commented example shows how to select the price list by category name instead.

Category access types. SetCategoryAccessForCustomerGroup supports three access types:

  • all: the group can access all categories. Pass all with no category IDs. This is the default.

  • specific: the group can access only the listed categories. Pass specific with an array of BigCommerce product category IDs, for example SetCategoryAccessForCustomerGroup("specific", new long[] { 1, 2, 3 });. The category IDs are environment-specific; confirm they match your BigCommerce store.

  • none: the group cannot access any categories. Pass none with no category IDs.

To find a BigCommerce product category ID: log in to BigCommerce, open Products, click Product Categories, open the desired category, and copy its ID.

Testing and Validation

Test Scenarios

  1. Customer write. Manually sync an iPaaS.com Customer by its Customer ID and confirm the customer is created or updated in BigCommerce with the resolved customer group and channels; confirm a customer flagged B2B_SendToB2B is skipped by this collection.

  2. Email matching. Write a customer whose email matches an existing BigCommerce customer and confirm the existing record is updated rather than a duplicate created, per the configured collision-handling method.

  3. Address (child). Write a customer with one or more addresses and verify each address is created in BigCommerce and linked to the customer; confirm addresses missing a street line or region are skipped.

  4. PreventDuplicate. With a PreventDuplicate static mapping set to true, write a customer whose address exactly matches an existing BigCommerce address and confirm no duplicate address is created.

  5. Category. Flag an iPaaS.com category as a customer pricing group, sync it by its Customer Category ID, and confirm a BigCommerce customer group is created with the mapped name and the configured price list; confirm an unflagged category is skipped.

Validation Checklist

  • Only one of the standard or B2B customer mappings applies to any given customer.

  • The default channel ID, the country-code default, the phone fallback, and the discount-rule price list ID have been reviewed and replaced with store-appropriate values before enabling automatic transfers.

  • Required fields are populated: email for customers, a street line and region for addresses, a name plus pricing-group flag for categories.

  • Referenced BigCommerce customer groups and price lists exist before relying on group assignments and pricing.

  • The correct collision-handling method is selected for the Customer collection.

Additional Notes

  • Outbound customer writes are not active. The Customer "FROM iPaaS.com" collection maps iPaaS.com customers to BigCommerce, but writing customers back to BigCommerce from iPaaS.com is not active at this time. Subscribers should validate any outbound customer behavior in a staging environment before relying on it in production. Outbound writes for customer categories to BigCommerce customer groups are active.

  • B2B Edition. Customers, companies, and users belonging to BigCommerce B2B Edition are handled by a separate set of collections and are out of scope for this article. See the Related Documents footer.

  • Full-replace updates. Outbound transfers write the full record on each run; map every field you want preserved or use a DestinationValue approach for fields not sourced from iPaaS.com.

Related Documents

Did this answer your question?