Skip to main content

NetSuite Customer Company To iPaaS.com Mapping Documentation

How NetSuite organization (company) customers are captured into iPaaS.com, including contact details, child collections, and sub-customer relationships.

Summary

An organization (company) customer can be captured from NetSuite into iPaaS.com. The integration records the company name, email, phone, fax, categories, and a range of NetSuite-specific attributes, and through its child collections the company's address, its parent relationship, and (when configured) its sub-customers. Individual (person) customers are captured separately by Add/Update NetSuite Customer TO iPaaS.com. Companies transfer on demand from the Manual Sync page or automatically on NetSuite company events.

ID Format

Manual Sync ID Format

Enter the NetSuite company's internal ID on the Manual Sync page.

External ID Format

iPaaS.com records the NetSuite internal ID as the external-ID link (the primary match for subsequent updates), and as a fallback match key on the iPaaS.com customer record.

Deleted Record Support

Inbound delete is driven by the external-ID link where a delete collection is enabled — a deletion in NetSuite removes the linked iPaaS.com company. It runs only when the corresponding NetSuite delete event and webhook scripts are in place.

Custom Field Support

A range of NetSuite-specific attributes — phone, mobile/home/alternate phone, alternate email, title, account number, URL, ship-complete, inactive flag, and subsidiary — are captured into iPaaS.com custom fields named NetSuite …. These are the capture side of the integration's round-trip convention: the same custom fields are read back on the Add/Update NetSuite Customer Company FROM iPaaS.com side. Add the matching iPaaS.com custom fields to retain these attributes.

Mapping Collection Status

  • Status: Enabled (a single Add/Update collection).

  • Trigger Events: company/created, company/updated. Enable inbound transfers in Inbound Data Flows and install the NetSuite-side webhook scripts (see NetSuite Connections and Settings). Manual Sync is always available.

Duplicate or Conflicting Mappings

  • Add/Update NetSuite Customer TO iPaaS.com: individual (person) customers.

  • Add/Update NetSuite Customer Company FROM iPaaS.com: writes companies to NetSuite (the reverse direction).

Collision handling

Matching uses the external-ID link (primary) and the captured NetSuite internal id (fallback). No iPaaS.com collision-handling method is configured for this collection.

Supported Child Collections

  • Add/Update NetSuite Customer Company Address TO iPaaS.com: the company's address.

  • Add/Update NetSuite Company Relationship TO iPaaS.com: the company's parent relationship (the customer or company in its NetSuite Parent Company field).

  • Add/Update NetSuite Company Sub Customer Relationship TO iPaaS.com: the company's sub-customers, each recorded as a relationship typed from the NetSuite custom field named by Sub Customer Type Custom Field Id and linked to the sub-customer's own iPaaS.com record. Records nothing while that setting is blank.

System Caveats

NetSuite Caveats

  • Subsidiary filter. Only companies in the subsidiary named in the filter are captured (see Mappings). The shipped name is a placeholder.

  • Sub-customer type field. Only a company's direct sub-customers are recorded, and only those with a value in the field named by Sub Customer Type Custom Field Id. A Free-Form Text value is recorded exactly as entered; for a List/Record field, the name of the selected list value is recorded. An ID NetSuite does not recognize makes the company transfer fail (NETS-EXTN-1018); a value that is not a valid field ID is ignored, as if the setting were blank.

Integration-Specific Caveats

  • "NetSuite …" round-trip convention. NetSuite-specific attributes are captured into the identically named custom fields read back by the FROM direction (see Custom Field Support).

  • Parent record is created for you. If the company belongs to a parent company or customer not yet in iPaaS.com, the integration imports that parent automatically as a prerequisite during capture (linked to an existing iPaaS.com record with the same email address, or otherwise transferred); a failure blocks the company — you do not pre-create it.

  • Sub-customers are imported for you, or skipped. When sub-customers are recorded, a sub-customer not yet in iPaaS.com is imported before the company the same way. One that iPaaS.com cannot import (for example an individual sub-customer with no email address, which iPaaS.com requires on every customer) is skipped: its relationship is not recorded, a warning (NETS-EXTN-1020) is written to the company transfer's activity log, and the company and its other relationships still transfer.

  • Every relationship is marked primary by default. The parent relationship and every sub-customer relationship are recorded with IsPrimary set to true. Change the IsPrimary mapping on Add/Update NetSuite Company Sub Customer Relationship TO iPaaS.com to fit your implementation, for example to false so only the company's parent relationship is primary.

  • Customer pricing becomes iPaaS.com categories. A NetSuite company's pricing group and/or price level — the things that set the prices that company sees — are captured as iPaaS.com customer categories. The Customer Company Pricing Source setting, in the NetSuite subscription's Subscription Settings in iPaaS.com, controls which is used: PRICE_GROUP_ONLY (the default — pricing group only), PRICE_LEVEL_ONLY (price level only, with an optional Default Price Level fallback), GROUP_THEN_LEVEL (pricing group, else price level), or LEVEL_THEN_GROUP (price level, else pricing group). You do not need to pre-create these categories — the integration creates the matching iPaaS.com customer category automatically as a prerequisite during capture; they can also be bulk-loaded via Add/Update NetSuite Customer Pricing Group TO iPaaS.com.

Setup Requirements

Control Fields and Required Configuration

  • Subsidiary filter — placeholder. The capture filter is hardcoded to the subsidiary named Parent Company; replace it with your subsidiary (or broaden it) so the companies you intend to capture are not silently excluded.

  • Customer Company Pricing Source (and the optional Default Price Level fallback) — found in the NetSuite subscription's Subscription Settings in iPaaS.com. Controls whether a company's NetSuite pricing group, price level, or one-then-the-other becomes the iPaaS.com categories (PRICE_GROUP_ONLY default, PRICE_LEVEL_ONLY, GROUP_THEN_LEVEL, LEVEL_THEN_GROUP).

  • Sub Customer Type Custom Field Id: found in the NetSuite subscription's Subscription Settings in iPaaS.com. Names the NetSuite customer custom field (for example custentity_web_user_type) whose value labels each sub-customer relationship (for example Authorized Buyer). Leave it blank to not record sub-customers. Setup steps: NetSuite Connections and Settings, Recording a company's sub-customers.

  • NetSuite … custom fields: create the iPaaS.com custom fields you want to retain.

  • Inbound Data Flows + webhook scripts: enable the NetSuite company events and install the webhook scripts for automatic capture.

Authentication

The integration authenticates to NetSuite using the connection configured for the integration; the webhook scripts that emit NetSuite events are documented in NetSuite Connections and Settings.

Integration Flow

  1. A NetSuite company is captured — on demand from the Manual Sync page, or automatically on company/created / company/updated events when Inbound Data Flows and the webhook scripts are in place.

  2. The subsidiary filter admits only companies in the configured subsidiary.

  3. If the company's parent customer or company is not yet in iPaaS.com, the integration imports it first: it is linked to an existing iPaaS.com record with the same email address, or otherwise transferred. If that import fails, the company transfer fails (NETS-EXTN-1004 for a parent company, NETS-EXTN-1019 for a parent individual customer).

  4. When Sub Customer Type Custom Field Id is set, the integration reads the company's direct sub-customers from NetSuite and keeps each one that has a value in that field. Any of them not yet in iPaaS.com is imported the same way; a sub-customer that cannot be imported is skipped with a warning (NETS-EXTN-1020) and the company carries on.

  5. The company's pricing group and/or price level are created as iPaaS.com customer categories as needed, per the Customer Company Pricing Source setting.

  6. The integration creates or updates the iPaaS.com company (matched by external ID, then by the captured NetSuite id), capturing the NetSuite-specific attributes into the NetSuite … custom fields, and transfers the address and relationship children: the parent relationship, and one relationship for each recorded sub-customer.

Mappings

The address child has no filter. The two relationship children are split by filter: Add/Update NetSuite Company Relationship TO iPaaS.com records the company's parent, and Add/Update NetSuite Company Sub Customer Relationship TO iPaaS.com records its sub-customers, so each relationship is recorded once. The subsidiary value in the parent filter is a placeholder to replace.

Add/Update NetSuite Customer Company TO iPaaS.com

iPaaS.com data type: Customer Company

Mapping Filter

var subsidiaryId = await GetSubsidiaryIdByName("Parent Company"); 
if(subsidiaryId != null && Subsidiary_Id != null && Subsidiary_Id == subsidiaryId) 
    return true; 
else 
    return false;

Filter Description. Resolves the internal ID of a named subsidiary, then captures the company only when its subsidiary matches; all other companies are skipped. Placeholder value — replace during implementation: Parent Company is an example subsidiary name — replace it with your subsidiary so the companies you intend to capture are not silently excluded.

Captures a NetSuite company (organization) customer into iPaaS.com, storing NetSuite-specific attributes in iPaaS.com "NetSuite …" custom fields.

Mapping Type

Source Field (NetSuite)

Destination Field (iPaaS.com)

Description

Field

CompanyName

Name

Required. The company name captured from NetSuite; identifies the company in iPaaS.com.

Field

Email

EmailAddress

Recommended. The company's email; the key used to match companies between systems.

Field

Phone

PhoneNumber

Optional. The company's phone number captured from NetSuite.

Field

Fax

FaxNumber

Optional. The company's fax number captured from NetSuite (company-only).

Dynamic Formula

await ConvertNetSuiteCategoryToiPaaS(Category, GroupPricing, PriceLevel)

Categories

Optional. Converts the company's category, and optionally pricing group / price level, into iPaaS.com categories per the Customer Company Pricing Source setting.

Field

Phone

NetSuite Phone

Optional. Capture side of the round-trip; stores the phone in the iPaaS.com NetSuite Phone custom field.

Field

MobilePhone

NetSuite Mobile Phone

Optional. Captures the mobile phone into the NetSuite Mobile Phone custom field.

Field

HomePhone

NetSuite Home Phone

Optional. Captures the home phone into the NetSuite Home Phone custom field.

Field

AltPhone

NetSuite Alt Phone

Optional. Captures the alternate phone into the NetSuite Alt Phone custom field.

Field

AltEmail

NetSuite Alt Email

Optional. Captures the alternate email into the NetSuite Alt Email custom field.

Field

Title

NetSuite Title

Optional. Captures the title into the NetSuite Title custom field.

Field

AccountNumber

NetSuite Account Number

Optional. Captures the account number into the NetSuite Account Number custom field.

Field

Url

NetSuite URL

Optional. Captures the website URL into the NetSuite URL custom field.

Field

ShipComplete

NetSuite Ship Complete

Optional. Captures the "ship complete" preference into the NetSuite Ship Complete custom field.

Field

IsInactive

NetSuite Is Inactive

Optional. Captures whether the company is inactive into the NetSuite Is Inactive custom field.

Field

Subsidiary_Id

NetSuite Subsidiary

Optional. Captures the subsidiary into the NetSuite Subsidiary custom field; the FROM direction reads this same field, so a round-tripped company keeps its subsidiary.

Add/Update NetSuite Customer Company Address TO iPaaS.com

iPaaS.com data type: Customer Company Address

Captures the NetSuite company's address into iPaaS.com, storing NetSuite-specific attributes in "NetSuite …" custom fields.

Mapping Type

Source Field (NetSuite)

Destination Field (iPaaS.com)

Description

Field

Addr1

Address1

Recommended. The first address line captured from NetSuite.

Field

Addr2

Address2

Optional. The second address line.

Field

Addr3

Address3

Optional. The third address line.

Field

City

City

Recommended. The city.

Field

State

Region

Recommended. The state/region.

Field

Country_RefName

Country

Recommended. The country.

Field

Zip

PostalCode

Recommended. The postal/ZIP code.

Field

AddrPhone

PhoneNumber

Optional. The address phone number.

Field

IsPrimaryBilling

IsPrimaryBilling

Recommended. Whether this is the primary billing address.

Field

IsPrimaryShipping

IsPrimaryShipping

Recommended. Whether this is the primary shipping address.

Static

true

PreventDuplicate

Control. Tells iPaaS.com to avoid creating a duplicate address row on repeated syncs; keep true.

Dynamic Formula

Parent.CompanyName

Company

Optional. The company name on the address, from the parent company.

Dynamic Formula

if (Addressee != null){ ...first name from Addressee }

FirstName

Optional. The recipient first name, extracted from the NetSuite addressee.

Dynamic Formula

if (Addressee != null){ ...last name from Addressee }

LastName

Optional. The recipient last name, extracted from the addressee.

Field

Addressee

NetSuite Addressee

Optional. Captures the addressee into the NetSuite Addressee custom field.

Field

Attention

NetSuite Address Attention

Optional. Captures the attention line into the NetSuite Address Attention custom field.

Field

AddrText

NetSuite Address Text

Optional. Captures the full formatted address text into the NetSuite Address Text custom field.

Field

ExternalId

NetSuite Address ExternalId

Optional. Captures the address external ID into the NetSuite Address ExternalId custom field.

Field

Override

NetSuite Override

Optional. Captures the address override flag into the NetSuite Override custom field.

Add/Update NetSuite Company Relationship TO iPaaS.com

iPaaS.com data type: Company Relationship

Captures a NetSuite company's parent relationship (the customer or company it is related to) into iPaaS.com.

Mapping Filter

Type == null;

Filter Description. Records only the company's own parent, which carries no sub-customer type. Sub-customers carry a type and are recorded by Add/Update NetSuite Company Sub Customer Relationship TO iPaaS.com instead.

Mapping Type

Source Field (NetSuite)

Destination Field (iPaaS.com)

Description

Dynamic Formula

var customerId = await GetSpaceportIdAsync(Id.Split("\|")[0]...)

RelatedToId

Required. Identifies the company's parent customer or company in iPaaS.com, resolved from the parent's NetSuite record. A parent not yet in iPaaS.com is imported automatically before the company.

Dynamic Formula

IsPerson ? "Parent Customer" : "Parent Company"

Type

Recommended. The relationship type — Parent Customer when the related record is an individual, Parent Company when it is a company.

Static

true

IsPrimary

Control. Marks this as the primary relationship.

Add/Update NetSuite Company Sub Customer Relationship TO iPaaS.com

iPaaS.com data type: Company Relationship

Records each of a NetSuite company's sub-customers that has a value in the field named by Sub Customer Type Custom Field Id, linked to the sub-customer's own iPaaS.com record. Records nothing while that setting is blank.

Mapping Filter

Type != null;

Filter Description. Records only relationships that carry a sub-customer type: the company's sub-customers. The company's own parent is left to Add/Update NetSuite Company Relationship TO iPaaS.com.

Mapping Type

Source Field (NetSuite)

Destination Field (iPaaS.com)

Description

Dynamic Formula

(same formula as the parent relationship)

RelatedToId

Required. Identifies the sub-customer's record in iPaaS.com (an individual customer, or a company when the sub-customer is itself a company), found through the sub-customer's NetSuite internal ID. A sub-customer not yet in iPaaS.com is imported automatically before the company.

Field

Type

Type

Required. The sub-customer's value in the configured custom field (for example Authorized Buyer); for a List/Record field, the selected list value's name. Sub-customers without a value are not recorded.

Static

true

IsPrimary

Optional. Marks the sub-customer relationship as primary. Ships as true; change it to fit your implementation (for example false, so only the company's parent relationship is primary).

Error Handling

  • Company skipped by the subsidiary filter: a company in a non-matching subsidiary is silently skipped. Resolution: if expected companies are missing, update the subsidiary in the filter.

  • Parent could not be imported (NETS-EXTN-1004 for a parent company, NETS-EXTN-1019 for a parent individual customer): the parent imported ahead of the company failed, so the company was not transferred. Resolution: transfer the parent on its own (Manual Sync with its NetSuite internal ID from the message) to see its own error, resolve it, then transfer the company again.

  • Sub-customers could not be loaded (NETS-EXTN-1018): the Sub Customer Type Custom Field Id setting names a field NetSuite does not recognize, or NetSuite rejected the sub-customer lookup, so the company was not transferred. Resolution: correct or clear the setting, then transfer the company again.

  • Sub-customer skipped (NETS-EXTN-1020, an activity-log warning): a sub-customer could not be imported, so its relationship was not recorded; the company still transferred. Resolution: correct the sub-customer in NetSuite (for example add a missing email address to an individual sub-customer), then transfer the company again.

See NetSuite Error Messages for every code.

Testing & Validation

Test Scenarios

  1. Capture a company. Manually sync a NetSuite company (in the configured subsidiary) and confirm the iPaaS.com company is created with name, email, phone/fax, and the NetSuite … attributes.

  2. Update. Re-sync and confirm the existing iPaaS.com company is updated.

  3. Subsidiary filter. Confirm a company in another subsidiary is skipped, then captured after updating the filter.

  4. Address + relationship. Confirm the address and parent relationship children transfer.

  5. Round-trip. Confirm the NetSuite … custom fields are populated for a subsequent FROM-iPaaS sync.

  6. Sub-customers, setting blank. With Sub Customer Type Custom Field Id blank, transfer a company that has sub-customers in NetSuite and confirm it transfers with only its parent relationship (if any).

  7. Sub-customers, setting configured. Set it to your field's ID, give one sub-customer a value and leave another blank, transfer the company, and confirm exactly one sub-customer relationship is recorded, typed with that value and linked to the sub-customer's iPaaS.com record.

  8. Sub-customer not yet in iPaaS.com. Confirm a sub-customer that has never been transferred is imported first and then linked.

  9. Unknown field ID. Set the ID to a field that does not exist on the customer record and confirm the company transfer fails with NETS-EXTN-1018; clear it and confirm the company transfers again.

Validation Checklist

  • The subsidiary filter names your subsidiary (not the Parent Company placeholder).

  • Sub Customer Type Custom Field Id is blank, or names a Free-Form Text or List/Record field on the NetSuite customer record.

  • The Customer Company Pricing Source setting is configured for how categories should resolve.

  • The NetSuite … custom fields exist in iPaaS.com to retain the attributes.

  • Inbound Data Flows and the NetSuite webhook scripts are in place for automatic capture.

Additional Notes

  • Round-trip with the FROM direction. The NetSuite … custom fields populated here are read back by Add/Update NetSuite Customer Company FROM iPaaS.com.

  • Individual (person) customers are documented separately under Add/Update NetSuite Customer TO iPaaS.com.

  • Known limitations affecting customers will be collected in NetSuite Known Limitations.

Related Documents

Related Mapping Documentation

Did this answer your question?