Skip to main content

Oracle ERP to iPaaS.com Item Mapping Documentation

How Oracle ERP item (product catalog) and inventory records are captured and matched into iPaaS.com Product and Product Inventory records through scheduled polling or Manual Sync, including the location prerequisite for inventory transfers.

Contents

  • Summary

  • ID Format

  • Deleted Record Support

  • Custom Field Support

  • Mapping Collection Status

  • Duplicate or Conflicting Mappings

  • Supported Child Collections

  • System Caveats

  • Setup Requirements

  • Integration Flow

  • Mappings

  • Error Handling

  • Testing & Validation

  • Additional Notes

  • Related Documents

Summary

This documentation covers how Oracle ERP item (product catalog) records are captured into iPaaS.com as Product records, and how their on-hand inventory is captured as Product Inventory records. The integration reads items from Oracle ERP and creates or updates the matching Product in iPaaS.com, mapping the item's identity fields and description and applying a set of standard catalog defaults so transferred items are immediately usable. Each item's inventory is transferred alongside it through the associated Add/Update Oracle ERP Item Inventory TO iPaaS.com child collection, one record per warehouse; a separate Add/Update Oracle ERP Item Inventory Standalone TO iPaaS.com collection can transfer inventory on its own. Transfers run in one direction only — Oracle ERP to iPaaS.com — and are driven by scheduled polling or on-demand Manual Sync.

ID Format

Manual Sync ID Format

To transfer a specific item together with its inventory child records, enter the Oracle ERP item's system record identifier — a numeric value, for example 100000 — on the iPaaS.com Manual Sync page.

An inventory record is identified by the Oracle ERP item number and the warehouse name joined by a pipe character — the item number, then a pipe character, then the warehouse name (for example, 100000|Main Warehouse). This Manual Sync ID applies to both inventory collections. The child and the standalone Item Inventory collections are each independently transferable — each has its own scheduled polling and its own Manual Sync entry point using this ID — and the child inventory is additionally transferred automatically as part of a parent Item transfer.

External ID Format (saved after sync)

On the first successful transfer, iPaaS.com saves the Oracle ERP item identifier as the external ID on a dedicated, platform-managed external-ID record. That external-ID record is the primary match used to route subsequent updates to the same Product rather than creating a duplicate.

Until that external-ID link exists — typically on the very first transfer — the mapped Sku value is the practical match: when no external-ID record yet exists for an incoming item, the integration links to an existing iPaaS.com Product whose SKU matches, then records the external-ID link for future transfers. Keep the mapped SKU unique and stable per item.

Each inventory record transferred through the child or standalone collection is saved with its own external-ID link so subsequent transfers update the same Product Inventory record rather than creating a duplicate. Each inventory record is also linked to its parent Product and to the resolved iPaaS.com Location.

Deleted Record Support

Not supported. This integration captures items and inventory from Oracle ERP into iPaaS.com in one direction only, and it does not process deletions for these records. Removing an item or an inventory record in Oracle ERP does not delete the corresponding record in iPaaS.com, delete mappings are not included in the default templates, and the integration does not delete products or inventory in either system.

Custom Field Support

None. These mapping collections do not configure, require, or transfer custom fields.

Mapping Collection Status

  • Status: Enabled. The Item collection has no mapping filter applied, so all items retrieved from Oracle ERP are processed. Both the child and standalone Item Inventory collections apply a mapping filter that enforces the location prerequisite described under Mappings — inventory is processed once its warehouse resolves to an iPaaS.com Location.

  • Trigger Events: Scheduled polling and Manual Sync. Through scheduled polling, the integration periodically checks Oracle ERP for items or inventory created or updated since the last successful poll and transfers them to iPaaS.com. How far back the initial item poll reaches is governed by the Product Search Poll Days subscription setting (it defaults to 4 days when left blank); the initial inventory poll window is governed by the Product Inventory Search Poll Days subscription setting. The child and standalone Item Inventory collections are each independently pollable and Manual-Syncable on their own inventory records, and the child inventory is additionally transferred with its parent Item. Manual Sync is available on demand. These collections are poll-driven; they do not use webhooks, and no Inbound Data Flows or webhook configuration is required or available for them.

Duplicate or Conflicting Mappings

This integration captures items and their inventory in one direction only (Oracle ERP to iPaaS.com). There is no collection that writes items or inventory back to Oracle ERP, so for the parent Item there is no opposing-direction collection to reconcile against and no circular-update risk.

Two collections operate on the same Product Inventory records, and they can conflict with each other:

  • Add/Update Oracle ERP Item Inventory TO iPaaS.com (child): transfers inventory automatically as part of the parent Item transfer.

  • Add/Update Oracle ERP Item Inventory Standalone TO iPaaS.com (standalone): transfers the same inventory independently, without re-syncing the parent item.

Before enabling both, review their mapping filters and Add/Update settings so that inventory for the same item and warehouse is not processed by two conflicting configurations, and decide which collection is the source of truth for a given set of records.

The integration does not implement selectable collision-handling methods for these collections. Instead, duplicate prevention is handled by matching and external-ID linking: an item links to an existing iPaaS.com Product by external-ID record first, and by matching Sku before that link exists; an inventory record is matched by its external-ID link and is tied to its parent Product and resolved iPaaS.com Location.

Supported Child Collections

  • Add/Update Oracle ERP Item Inventory TO iPaaS.com: Transfers on-hand inventory quantities for the item, one record per warehouse. Each inventory record is linked to its parent Product and to an iPaaS.com Location. This collection is transferred automatically as part of a parent Item transfer, and it is also independently transferable on its own through its own scheduled polling (governed by the Product Inventory Search Poll Days subscription setting) and its own Manual Sync entry point (Manual Sync ID: the item number and warehouse name joined by a pipe character).

The Add/Update Oracle ERP Item Inventory Standalone TO iPaaS.com collection covers the same Product Inventory records but is a standalone collection, not a child of the Item collection — it resolves its parent Item link itself and is documented in the Mappings and Duplicate or Conflicting Mappings sections above.

System Caveats

Oracle ERP Caveats

  • Read-only source: These collections only read from Oracle ERP. The integration never creates, updates, or deletes items or inventory in Oracle ERP.

  • Item identity: Items are identified and matched by their Oracle ERP item number. A stable item number in the source is required for reliable matching across transfers.

  • Warehouse drives location: The Oracle ERP warehouse name is the value matched against iPaaS.com Location names for inventory. Keep warehouse names consistent with the Location names created in iPaaS.com.

iPaaS.com Caveats

  • SKU is the match key for items: iPaaS.com uses the mapped Sku value as the fallback key to match an incoming item to an existing Product before the external-ID link is established. Ensure the mapped SKU is unique and stable per item; leaving it unmapped can result in duplicate product records.

  • Location prerequisite for inventory: Inventory transferred through either inventory collection requires a matching iPaaS.com Location to already exist for each Oracle ERP warehouse, matched by name. This is a hard prerequisite — when the warehouse has no matching Location, the inventory transfer stops with an error and no inventory record is created. See the Error Messages article for the message and resolution.

  • Parent product dependency: Inventory is linked to its parent Product. Through the child collection, the parent product is transferred automatically as a prerequisite if it does not already exist. Through the standalone collection, the parent Item must already be present in iPaaS.com so the parent link can be resolved.

Setup Requirements

For full setup steps, see the Installation Instructions and Connections and Settings articles. The integration-wide setup (connection credentials, subscription settings) is documented there and not repeated here.

Before transferring inventory through either inventory collection, create the iPaaS.com Locations the transfers depend on: in iPaaS.com, go to Settings → Locations and create a Location for each Oracle ERP warehouse whose inventory you intend to transfer, with each Location's name matching the corresponding Oracle ERP warehouse name exactly. When using the standalone Item Inventory collection, also transfer the parent Items first (through Add/Update Oracle ERP Item TO iPaaS.com), or confirm they are already present in iPaaS.com, so the standalone inventory records can resolve their parent link. Subscribers or their MiSP must create these Locations manually — the integration does not create them.

Integration Flow

When a scheduled poll runs, or a Manual Sync is initiated, the integration processes an item transfer in the following order:

  1. Retrieve the item from Oracle ERP. For scheduled polling, the integration reads items created or updated since the last successful poll; the initial poll window is governed by the Product Search Poll Days subscription setting. For Manual Sync, the integration reads the single item identified by the item system record identifier entered on the Manual Sync page. The item is read together with its inventory.

  2. Match the item and prevent duplicates. The integration looks for an existing iPaaS.com Product that matches by external-ID record first, and by the mapped Sku before that link exists. If a match is found, the integration links to it rather than creating a duplicate; otherwise a new Product is created.

  3. Map the item fields. The item number, description, and the standard catalog defaults are translated into the iPaaS.com Product shape.

  4. Process the inventory. Each inventory record on the item is processed through the Add/Update Oracle ERP Item Inventory TO iPaaS.com child collection. The integration resolves the iPaaS.com Location whose name matches the Oracle ERP warehouse name; if no matching Location exists, the inventory transfer stops with an error until the Location is created. The inventory record is linked to its parent Product and to the resolved Location.

  5. Record external-ID links. On success, iPaaS.com records the external-ID link for the item and for each inventory record so that subsequent transfers route to the same records rather than creating duplicates.

Beyond this parent-driven flow, the child Item Inventory collection is also independently transferable: its own scheduled polling (governed by the Product Inventory Search Poll Days subscription setting) and its own Manual Sync entry point transfer inventory records directly, following the same Location resolution described in step 4, in addition to being transferred automatically with a parent Item as described above.

The standalone Item Inventory collection likewise follows the same Location resolution but transfers inventory on its own. Unlike the child collection, it does not transfer the parent Item automatically — instead it resolves the parent Product from the Oracle ERP item's existing external-ID link, so the parent Item must already have been transferred to iPaaS.com. When the parent link or the Location cannot be resolved, the inventory transfer stops with an error.

Mappings

Add/Update Oracle ERP Item TO iPaaS.com

Description: Transfers item (product catalog) records from Oracle ERP to iPaaS.com through scheduled polling or Manual Sync. Maps the item's name, SKU, and description, and applies fixed catalog defaults (type, status, tracking method, and a default price) so transferred items are immediately usable in iPaaS.com.

Mapping Filter: None — this collection does not have a mapping filter applied. All item records retrieved through scheduled polling or Manual Sync are processed without additional filtering conditions.

Field Mapping Table

Mapping Type

Source Field (Oracle ERP)

Destination Field (iPaaS.com)

Description

Field

ItemNumber

Name

Required. Sets the iPaaS.com Product Name from the Oracle ERP item number, giving the product a readable name. Because the same source value is also mapped to Sku, the name and SKU will match unless subscribers or their MiSP remap this field to a source that carries a more descriptive item title.

Field

ItemNumber

Sku

Required. Sets the iPaaS.com Product Sku from the Oracle ERP item number. The SKU is the identifier iPaaS.com uses to match an incoming item against an existing Product, so a stable, unique value must be mapped. It also serves as the fallback matching key before the external-ID link is established. Leaving it unmapped can result in duplicate product records.

Static

Static value: 0

DefaultPrice

Required. Sets the iPaaS.com Product DefaultPrice to a fixed value of 0 for every item. Placeholder value — replace during implementation: 0 is supplied only to satisfy the required-field rule because this integration captures the catalog and inventory rather than pricing. The transfer still succeeds with 0, but the recorded price is inaccurate until replaced. Subscribers or their MiSP who manage pricing in iPaaS.com should replace this Static mapping with a Field or Dynamic Formula mapping that supplies a real price before relying on price data.

Static

Static value: Physical

Type

Required. Sets the iPaaS.com Product Type to Physical for every item, applied uniformly because the items captured from Oracle ERP are stock-tracked goods. Allowed values: Physical, Virtual. Subscribers or their MiSP who also transfer non-physical items should review whether this fixed value fits their catalog.

Static

Static value: Product

TrackingMethod

Required. Sets the iPaaS.com Product TrackingMethod to Product for every item, indicating inventory is tracked at the product level. Allowed values: Product, Variant.

Static

Static value: Active

Status

Required. Sets the iPaaS.com Product Status to Active for every item so transferred items are usable immediately. Allowed values: Preorder, Active, Disabled, Discontinued. Subscribers or their MiSP who need to reflect inactive or discontinued items should replace this Static mapping with a Field or Dynamic Formula mapping that derives the status from the source item.

Field

Description

Description

Optional. Maps the Oracle ERP item description to the iPaaS.com Product Description. It improves catalog completeness but the transfer will not fail if the source description is empty. When the source value is blank, no description is written.

Add/Update Oracle ERP Item Inventory TO iPaaS.com (Child)

Description: Transfers on-hand inventory quantities from Oracle ERP to iPaaS.com as children of the parent Item transfer, one record per item and warehouse combination. Maps the on-hand quantity to the available and on-hand quantity fields, resolves the iPaaS.com Location that corresponds to the Oracle ERP warehouse, and records an inventory cost. This collection is transferred automatically as part of a parent Item transfer, and it can also be transferred independently through its own scheduled polling and its own Manual Sync entry point.

Mapping Filter:

if (Id == "|" || Id == null)
return false;

var Locationid = await GetLocationIdByName(WarehouseName);
if(!string.IsNullOrEmpty(Locationid))
return true;
throw new Exception($"Cannot find location \"{WarehouseName}\" please create it manually in iPaaS");

Filter Description: This collection's mapping filter enforces the location prerequisite. Records with an empty item-and-warehouse key (no item number and no warehouse name) are skipped and not processed. For all other records, the integration looks up an iPaaS.com Location whose name matches the Oracle ERP warehouse name; if a matching Location exists, the record is processed. If no matching Location exists, the transfer stops with the error Cannot find location "[warehouse name]" please create it manually in iPaaS. The filter does not pin any environment-specific value — the warehouse name comes from each source record — so the subscriber action is to create the matching Locations in iPaaS.com, not to edit the filter.

Field Mapping Table

Mapping Type

Source Field (Oracle ERP)

Destination Field (iPaaS.com)

Description

Field

OnhandQuantity

QtyAvailable

Recommended. Maps the Oracle ERP on-hand quantity to the iPaaS.com Product Inventory QtyAvailable (quantity available) at the warehouse being transferred. The same on-hand value is also mapped to QtyOnHand; subscribers or their MiSP who need available quantity to differ from on-hand quantity (for example, to account for reserved stock) should remap this field to a source that carries the distinct available amount.

Dynamic Formula

(Resolves the iPaaS.com Location by warehouse name — see Dynamic Formula Documentation below.)

LocationId

Required. Resolves the iPaaS.com LocationId by looking up an iPaaS.com Location whose name matches the Oracle ERP warehouse name and returning that Location's identifier; if no matching Location is found, no value is returned. Inventory in iPaaS.com is tracked per location, so each record must resolve to a valid Location. A matching Location must exist before inventory for that warehouse can transfer — see the Filter Description above and Setup Requirements.

Static

Static value: 100

Cost

Recommended. Sets the iPaaS.com Product Inventory Cost to a fixed value for every inventory record. Placeholder value — replace during implementation: 100 is an example cost, not a real per-item cost. Replace this Static mapping with a Field or Dynamic Formula mapping that supplies a real cost, or with your own fixed value, before relying on inventory cost data. The transfer still succeeds with the example value, but the recorded cost is inaccurate until replaced.

Field

OnhandQuantity

QtyOnHand

Recommended. Maps the Oracle ERP on-hand quantity to the iPaaS.com Product Inventory QtyOnHand (quantity on hand) at the warehouse being transferred. The same on-hand value is also mapped to QtyAvailable; see that mapping if available quantity needs to differ from on-hand quantity.

Dynamic Formula Documentation — LocationId

var Locationid = await GetLocationIdByName(WarehouseName);
if(!string.IsNullOrEmpty(Locationid))
return Locationid;
return null;

This formula looks up an iPaaS.com Location whose name matches the Oracle ERP warehouse name on the source record and returns that Location's identifier, or no value when no matching Location is found. It resolves the same Location prerequisite enforced by the collection's mapping filter: the matching iPaaS.com Location must exist before inventory for that warehouse can transfer.

Add/Update Oracle ERP Item Inventory Standalone TO iPaaS.com (Standalone)

Description: Transfers on-hand inventory quantities from Oracle ERP to iPaaS.com independently of the parent Item transfer, one record per item and warehouse combination. Maps the on-hand quantity to the available and on-hand quantity fields, resolves the iPaaS.com Location that corresponds to the Oracle ERP warehouse, and links each inventory record to its parent Item. Unlike the child collection, this collection has its own Manual Sync entry point and does not transfer the parent Item automatically.

Mapping Filter:

var Locationid = await GetLocationIdByName(WarehouseName);
if(!string.IsNullOrEmpty(Locationid))
return true;
throw new Exception($"Cannot find location \"{WarehouseName}\" please create it manually in iPaaS");

Filter Description: This collection's mapping filter enforces the location prerequisite. For each record, the integration looks up an iPaaS.com Location whose name matches the Oracle ERP warehouse name; if a matching Location exists, the record is processed. If no matching Location exists, the transfer stops with the error Cannot find location "[warehouse name]" please create it manually in iPaaS. The filter does not pin any environment-specific value — the warehouse name comes from each source record — so the subscriber action is to create the matching Locations in iPaaS.com, not to edit the filter.

Field Mapping Table

Mapping Type

Source Field (Oracle ERP)

Destination Field (iPaaS.com)

Description

Dynamic Formula

(Resolves the iPaaS.com Location by warehouse name — see Dynamic Formula Documentation below.)

LocationId

Required. Resolves the iPaaS.com LocationId by looking up an iPaaS.com Location whose name matches the Oracle ERP warehouse name and returning that Location's identifier; if no matching Location is found, no value is returned. Inventory in iPaaS.com is tracked per location, so each record must resolve to a valid Location. A matching Location must exist before inventory for that warehouse can transfer — see the Filter Description above and Setup Requirements.

Dynamic Formula

(Resolves the parent Item from the item's external-ID link — see Dynamic Formula Documentation below.)

ParentId

Required. Resolves the iPaaS.com ParentId — the parent Item this inventory record belongs to. The formula finds the external-ID link recorded for the Oracle ERP item number and, when one exists, returns the identifier of the corresponding iPaaS.com Item; if the item has not yet been transferred, no value is returned. Because this standalone collection does not transfer the parent Item automatically, the parent Item must already be present in iPaaS.com so the link can be resolved.

Field

OnhandQuantity

QtyAvailable

Recommended. Maps the Oracle ERP on-hand quantity to the iPaaS.com Product Inventory QtyAvailable (quantity available) at the warehouse being transferred. The same on-hand value is also mapped to QtyOnHand; subscribers or their MiSP who need available quantity to differ from on-hand quantity (for example, to account for reserved stock) should remap this field to a source that carries the distinct available amount.

Field

OnhandQuantity

QtyOnHand

Recommended. Maps the Oracle ERP on-hand quantity to the iPaaS.com Product Inventory QtyOnHand (quantity on hand) at the warehouse being transferred. The same on-hand value is also mapped to QtyAvailable; see that mapping if available quantity needs to differ from on-hand quantity.

Dynamic Formula Documentation — LocationId

var Locationid = await GetLocationIdByName(WarehouseName);
if(!string.IsNullOrEmpty(Locationid))
return Locationid;
return null;

This formula looks up an iPaaS.com Location whose name matches the Oracle ERP warehouse name on the source record and returns that Location's identifier, or no value when no matching Location is found. It resolves the same Location prerequisite enforced by the collection's mapping filter.

Dynamic Formula Documentation — ParentId

var ExternalId = await GetProductExternalIdByItemNumber(Item);
if(!string.IsNullOrEmpty(ExternalId)){
return await GetSpaceportIdAsync(ExternalId, "Product", SpaceportSystemId);
}

This formula finds the external-ID link recorded for the Oracle ERP item number and, when a link exists, returns the identifier of the corresponding iPaaS.com Item so the inventory record can be attached to its parent. If the item has not yet been transferred to iPaaS.com — and therefore has no external-ID link — no value is returned, and the parent Item must be transferred first through Add/Update Oracle ERP Item TO iPaaS.com.

Error Handling

Errors from these mapping collections appear in the iPaaS.com Dashboard under Integration Monitoring / Error Logs.

  • Cannot find location "[warehouse name]" please create it manually in iPaaS — Occurs when an inventory record's Oracle ERP warehouse has no matching iPaaS.com Location. The inventory transfer stops and no inventory record is created. Resolution: create a Location under Settings → Locations in iPaaS.com whose name matches the Oracle ERP warehouse name exactly, then retry the transfer through Manual Sync or on the next scheduled poll.

  • Source availability — If Oracle ERP is temporarily unavailable when a transfer is triggered, the transfer fails and an error appears in Integration Monitoring / Error Logs. The item or inventory record can be retried through Manual Sync or on the next scheduled poll.

For the full catalog of error messages, their descriptions, and resolution steps, see the Error Messages article.

Testing & Validation

Test Scenarios

  1. Create a new item in Oracle ERP, then run a scheduled poll or a Manual Sync using the item's system record identifier, and verify that a new iPaaS.com Product is created with the expected Name, Sku, Type, Status, TrackingMethod, and DefaultPrice.

  2. Update the description of an existing item in Oracle ERP and verify that the matching iPaaS.com Product is updated on the next transfer without creating a duplicate.

  3. Transfer an item that already exists in iPaaS.com by SKU (with no external-ID link yet) and verify the integration links to the existing Product rather than creating a duplicate, then records the external-ID link.

  4. Before creating a matching Location, transfer an item whose inventory references a warehouse that has no iPaaS.com Location, and verify the inventory transfer stops with the message Cannot find location "[warehouse name]" please create it manually in iPaaS.

  5. Create the matching iPaaS.com Location under Settings → Locations, re-transfer the item, and verify the inventory record is created with the resolved LocationId and the expected QtyAvailable, QtyOnHand, and Cost.

  6. With the parent Item already present in iPaaS.com, run a Manual Sync of the standalone Item Inventory collection and verify the inventory record transfers on its own, resolves its ParentId to the correct Item, and resolves its LocationId.

Validation Checklist

  • The Product Search Poll Days and Product Inventory Search Poll Days subscription settings are configured to the desired initial poll windows.

  • An iPaaS.com Location exists for each Oracle ERP warehouse whose inventory will be transferred, with names matching exactly.

  • The mapped Sku is populated for every item so that matching stays reliable and duplicates are prevented.

  • The DefaultPrice Static mapping (0) and the inventory Cost Static mapping (100) have been reviewed and, where pricing or cost accuracy matters, replaced with real sources before relying on that data.

  • When using the standalone Item Inventory collection, the parent Items have been transferred to iPaaS.com first so the parent link resolves.

Additional Notes

  • Inventory transfer paths. The child Item Inventory collection is transferred automatically as part of a parent Item transfer and can also be transferred on its own through its own scheduled polling and its own Manual Sync entry point. The standalone Item Inventory collection transfers inventory independently and requires the parent Item to already exist so its parent link can be resolved.

  • Static catalog defaults. Product type, status, tracking method, and default price are set to fixed values for all items in the default mappings. Subscribers or their MiSP whose catalog varies on these attributes should replace the relevant Static mappings before relying on that data.

  • Custom integration scope. At the time this documentation was written, this integration is built for a specific client's Oracle ERP configuration. Behavior with other Oracle ERP configurations has not been validated; subscribers or their MiSP should validate item and inventory transfers in a staging environment before relying on them in production.

Related Documents

Did this answer your question?