Overview
This integration transfers item inventory records from Prophet 21 to iPaaS.com. The integration ensures that whenever an item inventory is created or updated in Prophet 21, the corresponding Product Inventory record is transferred and updated in iPaaS, keeping inventory information consistent across systems.
Mapping Collection Status
Mapping Status: Enabled.
Trigger Events: The sync is triggered by the creation or update of item in Prophet 21.
ID Format
When manually syncing, the correct Prophet 21 item inventory ID must be entered concatenated with the item ID (e.g., item ID is 12 and item inventory with ID 12345 then β12|12345β must be entered).
Duplicate or Conflicting Mappings
This mapping applies only to Product Inventory. Ensure no other mappings target the same iPaaS.com entity to prevent data from being overwritten.
Conflicting Mappings
This mapping applies only to Product Inventory from Prophet 21. Ensure no other mappings target the same iPaaS Product Inventory entity to prevent data from being overwritten.
System Caveats
Prophet 21
Item must already exists in iPaaS.com.
iPaaS.com
Valid Product exists in iPaaS.com.
Setup Requirements
Prophet 21 Configuration
Ensure item Id is valid.
iPaaS Configuration
Ensure Product already exists in iPaaS.com
Authentication & Security
Prophet 21 uses username and password authentication to access the iPaaS API. These credentials authorize all Prophet 21 API requests during transfer operations.
Integration Flow
The integration processes Prophet 21 item inventory records as follows:
The integration is triggered when an item inventory is created or updated in Prophet 21.
Item inventory data is fetched from Prophet 21.
The mapping filter validates that the Location exists in iPaaS.
Field mappings and dynamic formulas are applied to transform data.
Required fields (LocationId, ParentId) are validated.
The Product Inventory is inserted or updated in iPaaS.
Upon successful transfer, the inventory record is linked to the Product in iPaaS.
Mappings
Product Inventory to iPaaS.com
Mapping Filter
var iPaaSLocationId = await GetSpaceportIdAsync(LocationId, "Location", SpaceportSystemId);
if(String.IsNullOrEmpty(iPaaSLocationId.toString())) {
return false;
}
return true;
Description
This filter checks if the Location exists in iPaaS by looking up the Prophet 21 Location ID. If the Location exists, the inventory proceeds to transfer. If not found, the transfer is skipped.
Mapping Type | Source (Prophet 21) | Destination (iPaaS.com) | Description |
Dynamic Formula |
| ParentId | Returns the iPaaS Product ID by looking up the Prophet 21 Product ID. Returns null if the Product does not exist in iPaaS. |
Field | MovingAverageCost | Cost | Maps the Prophet 21 MovingAverageCost to the iPaaS Cost. |
Dynamic Formula |
| LocationId | Returns the iPaaS Location ID by looking up the Prophet 21 Location ID. Returns null if the Location does not exist in iPaaS. |
Field | QtyInProcess | QtyAvailable | Maps the Prophet 21 QtyInProcess to the iPaaS QtyAvailable. |
Field | QtyOnHand | QtyOnHand | Maps the Prophet 21 QtyOnHand to the iPaaS QtyOnHand. |
Error Handling
Location Not Mapped
Location does not exist in iPaaS.
Description: The mapping filter could not find the corresponding Location in iPaaS for the given Prophet 21 Location ID.
Resolution: Sync or manually create the Location in iPaaS before syncing inventory for that location.
Validation & Testing
Before deploying this integration, verify the following configuration items and run the test scenarios to confirm proper operation.
Validation Checklist
Product must exist in iPaaS before syncing inventory.
Location must exist in iPaaS (mapping filter validates this).
ParentId resolves to a valid iPaaS Product.
LocationId resolves to a valid iPaaS Location.
QtyOnHand and QtyInProcess are valid numeric values.
MovingAverageCost is a valid numeric value.
Test Scenarios
Scenario 1: New Product Inventory Sync
Create a new item inventory record in Prophet 21 with valid Item ID and Location. Sync to iPaaS and verify the Product Inventory appears with correct quantity and cost values.
Scenario 2: Inventory Update for Valid Location
Update quantity values (QtyOnHand, QtyInProcess) in Prophet 21. Sync to iPaaS and verify QtyOnHand and QtyAvailable update correctly without creating duplicate records.
Scenario 3: Inventory Sync for Invalid Location (Failure Case)
Attempt to sync inventory for a Location that does not exist in iPaaS. Verify the mapping filter blocks the sync and no record is created.
Scenario 4: Missing Product (Failure Case)
Attempt to sync inventory for a Product that does not exist in iPaaS. Verify the system returns an appropriate error for ParentId resolution failure.
Additional Notes
Ensure Products are synced to iPaaS before syncing their inventory records.
Ensure Locations are synced to iPaaS before syncing inventory for those locations.
