Summary
Jasper PIM Product Inventory can be transferred from iPaaS.com Product Inventory through manual sync. Jasper PIM supports the manual synchronization of Product Inventory records from iPaaS.com using its Inventory API.
Mapping Collection Status
Product Inventory Mapping
Status: Enabled
Trigger Events: Create, Update
Id Format
Description
When manually transferring a product inventory from iPaaS.com to Jasper, you must accurately input the iPaaS.com Product Inventory ID (e.g., 12345|23456) into the designated field on the manual sync page.
System Caveats
iPaaS.com Caveats
Location Conversion Issues: If ConvertIpaasLocationIdToJasperLocationName fails, inventory records may not map to valid Jasper locations.
Partial Data in Required Fields: Missing Name, Sku, or CountOnHand in iPaaS may block product/variant creation or inventory sync.
Jasper Caveats
Inventory Rules:
Location must be a valid Jasper-defined location.
CountOnHand must be numeric ≥ 0.
Setup Requirements
Authentication & Security
API Key / OAuth token
Jasper PIM: Requires an API key generated in the Jasper admin console with Product Inventory read/write permissions.
iPaaS.com: Requires an access token for the Product Inventory API endpoint with create/update permissions.
Integration Flow
Product Inventory Flow
When inventory updates occur in iPaaS.com, a sync triggers.
iPaaS.com fields (Id, ProductId, Location, QtyAvailable) are mapped to Jasper’s inventory fields.
The inventory record is created or updated in Jasper PIM against the corresponding product.
Mappings
Jasper Product Inventory Updates From iPaaS (Standalone)
Mapping Type | Source Field (iPaaS.com) | Destination Field (Jasper PIM) | Description |
Dynamic Formula |
| Id | Required: Unique identifier for the product inventory record in Jasper PIM. Dynamically retrieved via GetExternalIdAsync to ensure consistency across systems. |
Dynamic Formula |
| ProductId | Required: Links the inventory record to its parent product in Jasper PIM. Uses GetExternalIdAsync on the parent product’s ID. |
Dynamic Formula |
| Location | Required: Converts the iPaaS LocationId into the corresponding Jasper PIM location name. Ensures stock is tied to the correct fulfillment or warehouse location. |
Field | QtyAvailable | CountOnHand | Required: Maps the available inventory quantity from iPaaS to Jasper PIM. Represents the number of units available at the specified location. |
Error Handling
Product Inventory
Missing Inventory Link
Description: ProductId not found in Jasper.
Resolution: Ensure parent product exists before inventory sync.
Invalid Location
Description: iPaaS location not correctly converted to Jasper location name.
Resolution: Apply ConvertIpaasLocationIdToJasperLocationName and validate mapping.
Negative Quantities
Description: CountOnHand or QtyAvailable < 0.
Resolution: Normalize to zero or reject record.
Testing & Validation
Test Scenarios
Product Without Inventory
Action: Create product but omit inventory.
Expected Outcome: Product created; inventory record rejected separately.
Negative Inventory
Action: Transfer inventory with negative QtyAvailable.
Expected Outcome: Normalized to 0 or rejected with error.
Validation Rules
Product Inventory Validation
Id: Required, unique per inventory record.
ProductId: Required, must exist in Jasper.
Location: Required, must match valid Jasper location name.
CountOnHand (QtyAvailable): Required, integer ≥ 0.
Validation Checklist
Validate inventory link: ProductId must exist.
Confirm inventory quantities are non-negative integers.
Log and return errors for duplicates, invalid formats, missing fields.
