Infor ERP Ecommerce Integration: A Technical Implementation Guide for Infor LN, M3, and CloudSuite

Sama Consulting | Infor ERP Ecommerce Integration: A Technical Implementation Guide for Infor LN, M3, and CloudSuite
Madhu Nair
Practice Director
25 min read

Connecting an Infor ERP environment to a production ecommerce platform is an integration challenge that sits in a different category from most enterprise-to-enterprise connectivity work. The transaction volumes are higher, the latency tolerances are tighter, the failure consequences are more visible to end customers, and the data model mismatches between Infor business objects and ecommerce platform schemas run deeper than most architects expect before they start building. This guide works through the architecture, the specific integration mechanics across ION, API Gateway, and custom middleware layers, and the implementation decisions that separate a maintainable production system from one that fails under real commerce load.

Why Ecommerce Integration Is Structurally Different from Standard Infor Integrations

Most Infor integration projects operate in a batch-oriented paradigm. Financial consolidations, procurement approvals, intercompany settlements: these are transactions where a processing window of minutes or hours is acceptable and where the downstream system is another enterprise application operating on a comparable schedule. Ecommerce breaks every one of those assumptions.

An active Shopify Plus store or Adobe Commerce deployment can generate hundreds of orders per hour during normal trading periods, with that volume spiking by a significant factor during promotional events. Each order needs to reach the ERP, be validated against available inventory, generate pick instructions in the warehouse management layer, and return a confirmation to the storefront in a timeframe that a customer waiting on a browser screen will notice. The architecture must handle this while the ERP itself may be operating on transaction commit cycles designed for its own internal consistency requirements, which are not always tuned for sub-second response.

The schema mismatch problem is equally significant. Shopify organizes its order object around line items, discount applications, and fulfillment service assignments that reflect a consumer commerce model. The Infor CustomerOrder or SalesOrder BOD organizes around sold-to and ship-to party references, order type codes, price list identifiers, and warehouse assignment logic that reflects a manufacturing and distribution model. A field like “customer” means a fundamentally different thing on each side: Shopify tracks a customer as a storefront account with email and address history, while Infor LN or M3 maintains a business partner record with a full credit, currency, and tax classification profile. Mapping between these is not a simple field-to-field operation – it requires a stateful resolution layer that can look up or create Infor business partner records from ecommerce customer data.

The stateful versus stateless distinction matters here in a specific way. Standard API integrations between enterprise systems can often be designed as stateless request-response pairs because both systems maintain authoritative records of the same entities. An ecommerce integration cannot work this way because the ecommerce platform and the ERP have different authoritative domains: the storefront owns the customer session and cart state, while the ERP owns the inventory position and order confirmation. The integration layer must maintain enough state to correlate a Shopify order ID with an Infor sales order number, track partial fulfillments, and reconcile cancellation events that may arrive asynchronously on either side. The common challenges in ERP integration that surface in any enterprise connectivity project are amplified in ecommerce environments by transaction frequency and the direct visibility of failures to end customers.

Infor ION as the Integration Middleware Layer

ION is the natural starting point for any Infor integration project because it is the native middleware fabric across the Infor product portfolio. For ecommerce connectivity, it handles the document flow layer – receiving, routing, transforming, and delivering BODs between the ecommerce integration endpoint and the target Infor application.

ION Document Flows for Ecommerce Transaction Types

When an ecommerce order arrives, the processing goal within ION is to construct a valid SalesOrder BOD that the target Infor application – LN, M3, or CloudSuite Industrial – can ingest through its standard BOD processing pipeline. The field coverage required for a minimally valid order ingestion includes the sold-to party reference, the order type, at least one order line with an item reference and quantity, and a requested delivery date. Missing any mandatory element causes the BOD to fail at the receiving application level, not at the ION transport level, which is an important distinction for error handling design: ION will report the document as delivered, while the receiving application logs a processing error that requires separate monitoring.

Inventory sync uses the ItemInventory BOD to carry warehouse-level quantity positions from Infor to the ecommerce platform, or alternatively a sync process reading directly from Infor via API Gateway for near-real-time updates. Shipment confirmations travel the reverse direction: LN or M3 generates a ShipmentAdvice BOD when a shipment is confirmed in the warehouse management layer, and ION routes this outbound to the middleware endpoint that calls the ecommerce platform fulfillment API. Customer data exchange, including the creation and update of business partner records, uses the CustomerPartyMaster BOD in both directions depending on whether the canonical source of record for customer data is the ERP or the ecommerce platform.

Connection Points, Adapters, and Grid Configuration

ION provides three primary connection point types relevant to ecommerce integration. The IEC (Infor Enterprise Collaborator) adapter handles file-based and message-based exchange, making it useful for batch-oriented catalog updates or settlement files. The REST adapter in ION allows ION itself to expose endpoints that external systems can POST documents to, or allows ION to make outbound REST calls to ecommerce platform APIs. The file-based adapter covers scenarios like inventory exports to flat file formats for legacy catalog feeds. In a real-time ecommerce architecture, the REST adapter is the dominant connection point for inbound order traffic, with file-based adapters typically relegated to overnight catalog reconciliation jobs.

ION document flow configuration controls how a BOD received at a connection point is routed to the target application. The routing logic uses a combination of the BOD type, the logical ID of the source connection point, and configurable routing rules defined in the ION configuration in the Infor documentation portal. For a multi-warehouse or multi-entity Infor deployment where a single ecommerce storefront routes orders to different Infor companies or warehouses based on product type or geography, this routing layer is where the branching logic lives. Getting the routing configuration right requires mapping the ecommerce platform’s fulfillment service or location model to Infor’s company and warehouse structure, which rarely aligns cleanly and often requires a transformation step before the routing decision can be made.

When ION Alone Is Insufficient

ION becomes insufficient when the ecommerce platform requires synchronous responses. ION is fundamentally an asynchronous document bus: it delivers BODs with eventual consistency guarantees, not synchronous acknowledgement. A Shopify checkout flow that needs to confirm inventory availability before accepting payment cannot rely on ION’s async delivery to provide that confirmation within the checkout latency budget. For these synchronous use cases, Infor API Gateway becomes the required component.

Are Order, Inventory and Pricing Sync Issues Causing Problems Between Your Infor ERP and Ecommerce Platform?

Sama's senior Infor consultants design and implement ERP to ecommerce integrations across Infor LN, M3, and CloudSuite so your product, order, and fulfilment data stays consistent across channels.

Infor API Gateway and REST Connectivity

The Infor API Gateway functions as the synchronous REST interface to Infor backend services, exposing core business functionality as RESTful endpoints secured through the Infor OS identity layer. For ecommerce integration, it handles the use cases that require a request-response interaction: real-time inventory availability checks during cart and checkout, customer credit validation before order acceptance, and price retrieval against configured price lists.

Authentication via Infor OS and OAuth 2.0

Authentication to the API Gateway is handled through Infor OS using the OAuth 2.0 client credentials flow for service-to-service integration. The integration middleware runs as a service account registered in Infor OS, obtains a bearer token against the configured OAuth 2.0 token endpoint, and presents that token with each API call. The token carries the scope entitlements that determine which API families the service account can access. Service account configuration in Infor OS requires assigning the account to the appropriate security role and granting the specific API scopes – attempting to call an endpoint outside the granted scopes returns a 403 at the gateway level, not at the application level, so scope configuration errors surface early in testing rather than presenting as ambiguous application errors.

Token lifetime management requires explicit handling in the middleware. Access tokens issued by Infor OS have a finite expiry period configured at the tenant level. A middleware that caches the token without checking expiry will begin receiving 401 responses when the token lapses, typically during periods of lower activity when the token was not refreshed by recent calls. The token refresh logic must be implemented proactively – refreshing the token before expiry rather than reacting to a 401 – to prevent transient authentication failures from appearing in the order processing pipeline as drops in throughput.

API Families for Ecommerce Connectivity

The API families most relevant to ecommerce connectivity are the Item Master endpoints for catalog and pricing data retrieval, the Customer Order endpoints for order status queries and synchronous order creation, and the Shipment Confirmation endpoints for fulfillment status retrieval. The exact endpoint paths and request schemas are specific to the Infor application version in use and must be verified against the Infor API documentation for the specific product and release in your environment, since endpoint structures have changed materially across major CloudSuite, LN, and M3 release cycles. Relying on endpoint paths documented for an earlier release is a common source of integration failures after an Infor upgrade.

Rate Limits, Pagination, and Catalog Sync Considerations

Rate limiting and pagination are operational realities on the API Gateway that ecommerce integrations encounter quickly during initial catalog sync operations. A full Item Master sync for a large product catalog cannot be executed as a single API call. The API Gateway enforces per-client request rate limits and returns paginated result sets for collection endpoints. Catalog sync processes need to be designed with page token handling, backoff logic on rate limit responses (HTTP 429), and checkpoint persistence so that an interrupted sync can resume from the last successfully processed page rather than restarting from the beginning. These are not optional design considerations – they are required for any catalog of meaningful scale, and the absence of checkpoint logic is one of the most common causes of incomplete catalog syncs that go undetected until customers report missing products.

Data Mapping Between Infor Business Objects and Ecommerce Schemas

The mapping layer between Infor business objects and ecommerce platform schemas is where the majority of integration development effort concentrates, and where the most common production failures originate. The mapping is not mechanical; it requires understanding the business rules embedded in Infor’s data model and translating them into the constraints of the ecommerce platform’s schema.

Order Object Mapping

For order objects, the Infor CustomerOrder or SalesOrder BOD carries fields that have no direct ecommerce equivalent. The order type code in Infor determines how the order is processed in terms of warehouse allocation, revenue recognition, and invoice generation. An ecommerce platform like Shopify has no concept of order type in this sense. The mapping layer must derive the correct Infor order type from the context of the ecommerce transaction: whether it is a standard consumer order, a click-and-collect order, a B2B account order placed through the storefront, or a return authorization. Each requires a different order type code in Infor, and using the wrong code creates downstream problems in finance and fulfillment that are difficult to trace back to the integration layer once they reach the ERP.

The Shopify Admin REST API order object organizes line item data around variant IDs, SKUs, and fulfillment service references. The Infor SalesOrder line requires an item reference that resolves to a valid item record in the Infor Item Master, a unit of measure code that matches the item’s defined selling UOM, and a warehouse reference for allocation. The integration layer must maintain a cross-reference table mapping Shopify variant IDs or SKUs to Infor item codes, and must validate that the UOM on the inbound order line is valid for the item in Infor before constructing the BOD. A mismatch on UOM – for example, where Shopify sells an item in “each” but Infor carries it in a pack UOM – will fail at BOD ingestion with a validation error that is not always straightforward to diagnose if the mapping layer has not been built to log the resolved Infor item and UOM before submission.

Multi-Warehouse Inventory Availability

Inventory availability mapping requires handling the difference between how ecommerce platforms model multi-location inventory and how Infor models multi-warehouse availability. The Adobe Commerce inventory management API uses a source and stock model where inventory is allocated from named sources to named stocks, and a storefront displays availability based on the stock assigned to the sales channel. Infor LN and M3 hold inventory at the warehouse and location level, with available-to-promise calculations running against the item’s demand and supply planning parameters. Syncing these requires a mapping configuration that translates Infor warehouse inventory positions into Adobe Commerce source quantities, and keeps those source quantities updated at a frequency that prevents oversell without flooding the API Gateway with update calls.

Catalog Synchronization and Pricing

Product catalog synchronization from Infor to an ecommerce platform uses the Item Master as the primary source of record for product identity, description, and classification, supplemented by the price list structures for pricing and the item UOM table for unit-of-measure presentation. The mapping layer must handle attribute set assignment, configurable product structure for items with variants, and the translation of Infor item classifications into ecommerce category assignments. Tax code mapping across jurisdictions adds another dimension: Infor carries tax codes at the item and customer level, while ecommerce platforms typically apply tax through a tax service at checkout. The integration needs to ensure that Infor’s tax classification for an item is correctly reflected in the product’s tax class assignment on the ecommerce platform so that orders arriving in Infor carry tax treatment that is consistent with the Infor tax configuration for the relevant company and jurisdiction.

Order Ingestion Architecture – A Worked Implementation Example

The most common ecommerce integration pattern in Infor LN environments is a Shopify Plus storefront feeding orders into LN for warehouse fulfillment and financial processing. The following describes the data flow and implementation decisions for a production-grade implementation of this pattern.

System Topology and Data Flow

The topology begins with a Shopify Plus store configured to emit webhook events for the orders/create and orders/updated topics. The webhook destination is an integration middleware service – typically a lightweight application layer running outside both Shopify and Infor – that acts as the stateful coordination point for the integration. This middleware is responsible for payload validation, business partner resolution, order deduplication, BOD construction, and the callback mechanism that posts fulfillment confirmations back to Shopify. The middleware communicates inbound to Infor via the ION REST adapter connection point, and outbound to Shopify via the Shopify Admin REST API. ION then routes the constructed BOD to the LN company configured as the receiving application in the document flow.

Inbound Order Processing

When the middleware receives an orders/create webhook from Shopify, the first processing step is payload validation against the expected Shopify order schema. The Shopify webhook delivery documentation specifies the payload structure and includes HMAC verification using the webhook secret to confirm that the payload originated from the expected Shopify store. Skipping HMAC verification in production is a security failure that also opens the integration to order injection attacks; this check must run before any business logic processes the payload.

After validation, the middleware performs business partner resolution: it looks up the Shopify customer record’s email address against the Infor business partner cross-reference table to determine whether this customer has an existing Infor sold-to party record. If a record exists, the BOD is constructed with the existing business partner reference. If no record exists, the middleware must either create a new Infor business partner through the API Gateway or route the order to a holding queue for manual review, depending on the business rules in place for new customer onboarding. Automatically creating business partner records in Infor without validation creates data quality problems in the customer master that accumulate over time; this decision between automatic creation and manual review should be made deliberately and documented as an architectural constraint before the integration goes to production.

The BOD construction step assembles the SalesOrder BOD from the validated Shopify payload and the resolved Infor references. The BOD is submitted to ION through the configured REST connection point, and ION routes it to the LN company configured as the receiving application for the document flow. LN ingests the BOD through its standard BOD processing pipeline, creates the sales order record, and performs warehouse allocation. The order confirmation BOD that LN generates in response is routed back through ION to the middleware connection point, where the middleware extracts the LN sales order number and stores it in the cross-reference table against the Shopify order ID.

Shipment Confirmation Callback

When the warehouse completes the pick-pack-ship process in LN, LN generates a ShipmentAdvice BOD containing the shipment reference, carrier information, and tracking number. This BOD arrives at the middleware through the ION return flow. The middleware calls the Shopify Fulfillment API to create a fulfillment record on the Shopify order, posting the tracking number and carrier code. Shopify then dispatches the shipment confirmation email to the customer. The integration is complete when the Shopify order reaches fulfilled status and the LN sales order reaches invoiced status.

Error Handling and Partial Fulfillment

Error handling at each stage must be explicit rather than implicit. Failed BOD ingestion in LN generates an ION error event that the middleware must monitor via the ION Activity Monitor. The middleware should subscribe to error events on the document flow and process them against a defined retry policy: transient LN errors warrant automatic retry with exponential backoff; validation errors require routing to a dead letter queue and alerting the integration operations team. Duplicate order detection is handled by checking the cross-reference table for the Shopify order ID before BOD submission – if a cross-reference record already exists, the inbound webhook is discarded and logged. Partial fulfillment scenarios, where LN ships part of an order and holds the remainder, require the middleware to map multiple ShipmentAdvice BODs from LN to multiple fulfillment records on the single Shopify order, using the Shopify line item fulfillment assignment logic to correctly mark which lines have shipped.

Performance and Resilience Patterns for High-Volume Commerce

Peak commerce periods create order ingestion bursts that can exceed normal transaction volumes by a significant factor within a short window. An integration architecture that handles average load cannot be assumed to handle peak load; the design must account for burst explicitly from the outset.

Queue-Based Decoupling

Queue-based decoupling is the primary architectural pattern for absorbing order bursts. Rather than routing Shopify webhooks directly to the BOD construction and submission pipeline, the middleware places each inbound webhook payload onto a durable message queue. The BOD processing workers consume from the queue at a rate controlled by the integration layer’s configured concurrency and Infor’s own ingestion capacity. This separates the rate at which orders arrive from the rate at which they are processed, prevents the middleware from overwhelming LN or M3 during a burst, and ensures that no orders are lost if the processing layer temporarily falls behind. Queue depth monitoring then becomes a key operational metric: sustained queue growth during a peak period signals that processing capacity needs to be scaled up, and the queue depth trend provides early warning before order processing latency becomes customer-visible.

Retry Logic and Dead Letter Queues

Retry logic within the processing pipeline must distinguish between transient failures that are appropriate to retry and permanent failures that should route to a dead letter queue. A transient failure is one where the underlying cause – a temporary lock, a brief ION grid unavailability, a momentary API Gateway rate limit response – is expected to resolve on its own. A permanent failure is one where the order contains data that Infor will reject on every attempt: an invalid item code, a missing business partner record, a currency code not configured in the Infor company. Retrying permanent failures indefinitely consumes processing capacity and delays detection of the underlying data problem. The retry policy should apply a finite retry count with exponential backoff for transient errors, and should move messages to a dead letter queue after the retry limit is exhausted, triggering an alert to the operations team for investigation. Teams building scalable integrations that must sustain throughput across unpredictable volume patterns will recognize that retry policy design is as important as initial throughput capacity.

Monitoring Integration Health

Monitoring integration health requires visibility into both the ION layer and the middleware layer simultaneously. The ION Activity Monitor provides visibility into document flow execution, error rates, and processing latency at the BOD level. The middleware should emit metrics covering queue depth, processing throughput, error rates by failure category, and end-to-end latency from webhook receipt to LN order creation confirmation. Correlating these two data sources is essential for diagnosing production incidents where the root cause may be in either layer.

Handling Infor Downtime During Commerce Peak Periods

Infor maintenance windows during ecommerce trading periods require a specific handling strategy. If LN or M3 undergoes a planned maintenance window, the integration must continue to accept and queue inbound orders rather than returning errors to the storefront. The queue-based decoupling architecture handles this naturally: orders accumulate in the queue during the Infor downtime window and are processed when the ERP returns to availability. The operational risk is queue depth growth during the window; the team needs to confirm in advance that queue storage capacity is sufficient for the expected order volume during the window duration. For managed integration services operations, this queue sizing exercise should be part of the pre-peak capacity review alongside ERP maintenance schedule coordination.

Are Order, Inventory and Pricing Sync Issues Causing Problems Between Your Infor ERP and Ecommerce Platform?

Sama's senior Infor consultants design and implement ERP to ecommerce integrations across Infor LN, M3, and CloudSuite so your product, order, and fulfilment data stays consistent across channels.

Security Architecture

Security for an Infor ecommerce integration spans three layers: the Infor OS identity layer that governs access to Infor backend services, the transport security layer that protects data in transit, and the data handling layer that manages PII in compliance with applicable privacy regulations.

Infor OS Identity Layer and OAuth 2.0

The Infor OS identity layer uses OAuth 2.0 as the authorization framework for API access. Integration service accounts are provisioned in Infor OS as named service principals, assigned to security roles that grant the minimum necessary API scopes for the integration function. An order ingestion service account needs write access to the SalesOrder API family and read access to the BusinessPartner API family; it does not need access to financial reporting APIs or HR data. Applying least-privilege scope assignment at the service account level limits the blast radius of a compromised service account credential and reduces the attack surface of the integration endpoint as a whole. Token lifetimes should be configured at the Infor OS tenant level to balance operational convenience against security exposure; short-lived tokens with refresh capability are preferable to long-lived tokens for production integration accounts.

Transport Security and PII Handling

Transport security requires TLS on all connections between the ecommerce platform, the middleware, and Infor API Gateway. Shopify enforces HTTPS on webhook delivery, so the middleware endpoint receiving Shopify webhooks must present a valid TLS certificate issued by a trusted certificate authority. Connections from the middleware to Infor API Gateway are likewise TLS-encrypted. Within the ION layer, connections between ION grid nodes operate over encrypted channels configured at the ION grid infrastructure level. PII carried in order payloads – customer names, delivery addresses, payment method identifiers – must not be logged in plaintext in middleware application logs. Log sanitization that masks PII fields before writing to log storage is a required implementation step, not an optional hardening measure, for any integration handling consumer order data under GDPR or CCPA.

Role-Based Access Control for Integration Service Accounts

Role-based access control within Infor OS for integration service accounts should follow the same governance process as any other privileged account in the Infor environment. Service account credentials should be rotated on a defined schedule, with the rotation process automated where possible to avoid operational disruption. Access reviews for integration service accounts should confirm that each account’s granted scopes remain aligned with the integration functions it currently performs. Accounts provisioned for development or testing should not carry production-level scopes into the live environment, and tenant isolation in Infor OS should be used to enforce separation between development and production integration endpoints.

Common Failure Modes and How to Address Them

BOD Validation Failures

BOD validation failures are the most frequent failure category in a production ecommerce integration and the most important to instrument correctly. When a SalesOrder BOD submitted through ION fails validation at the receiving Infor application, the error event in ION carries a structured error message that identifies the failing field and the validation rule. These errors must be captured, categorized, and routed to the integration operations team with enough context – the original Shopify order ID, the failing Infor field name, and the submitted field value – to allow rapid diagnosis. BOD validation failures that are not surfaced promptly result in orders that the customer believes are placed but that have not entered the Infor fulfillment pipeline. Addressing the root cause usually requires either a fix to the data mapping logic in the middleware or a correction to the Infor master data that the failing BOD references; the error message alone is often not sufficient to distinguish between these two causes without examining both the submitted BOD and the current state of the referenced Infor master record.

Inventory Oversell from Sync Latency

Inventory oversell caused by sync latency is a structural risk in any integration where inventory availability is published to the ecommerce platform as a snapshot rather than queried in real time at checkout. If a Shopify storefront is displaying inventory quantities that were last updated ten minutes ago, and a burst of orders depletes the available quantity in Infor within that window, the storefront will accept orders for stock that is not available. The mitigation options are to reduce the sync interval to approach real time through more frequent API Gateway inventory queries, to implement a safety stock buffer in the quantities published to the ecommerce platform, or to move inventory validation to a synchronous API call at checkout rather than relying on stored quantities. Each option carries trade-offs in terms of API Gateway load, customer experience, and implementation complexity; the right choice depends on the velocity of inventory movement for the specific product categories involved.

Order Duplication from At-Least-Once Delivery

Order duplication from at-least-once delivery semantics is a risk in webhook-based integrations because Shopify, like most webhook providers, guarantees at-least-once delivery rather than exactly-once delivery. Under network interruption or middleware timeout conditions, Shopify may redeliver a webhook for an order that the middleware already received and processed. The deduplication check against the cross-reference table – where the middleware verifies that the Shopify order ID has not already been processed before submitting a BOD – is the required guard against this. The deduplication check must be implemented with appropriate concurrency controls – a database-level unique constraint on the order ID cross-reference, not just an application-level read-before-write check – to handle the case where two webhook deliveries for the same order arrive simultaneously and both pass the application-level check before either has written to the cross-reference table.

Fulfillment Status Desync

Fulfillment status desync between Infor and the ecommerce storefront occurs when the ShipmentAdvice BOD flow from Infor to the middleware breaks down without the middleware detecting the failure. If the ION document flow delivering shipment confirmations to the middleware encounters a persistent error – a misconfigured routing rule, an expired service account token, a middleware endpoint returning 500 responses – Infor will continue to fulfill orders and generate ShipmentAdvice BODs that never reach Shopify. Storefront orders remain in an unfulfilled state while Infor considers them shipped, and customers receive neither shipment confirmation emails nor tracking information. Detecting this desync requires monitoring both the ION document flow delivery metrics and the Shopify order fulfillment rate on the middleware side; a divergence between the number of ShipmentAdvice BODs recorded by ION as delivered and the number of Shopify fulfillment records created by the middleware is the signal that the flow has broken down. Teams relying on structured support and troubleshooting coverage for their integration layer benefit from having this divergence check defined as an automated alert rather than a manual reconciliation task, since desync conditions that go undetected for more than a few hours generate significant customer service volume.

Conclusion

Ecommerce integration with Infor LN, M3, or CloudSuite Industrial is a multi-layer engineering problem that spans ION document flow configuration, API Gateway authentication and endpoint management, stateful middleware design, and careful data object mapping between platforms with fundamentally different data models. The patterns described in this guide – queue-based order ingestion, synchronous inventory validation at checkout, BOD construction with explicit field validation before submission, and ShipmentAdvice-based fulfillment callbacks – reflect the architecture required for production reliability at real commerce volumes, not just functional connectivity in a test environment.

The failure modes that create production incidents are almost always traceable to insufficient error handling in the middleware layer, inadequate monitoring of ION document flow health, or data mapping assumptions that hold during development but break against the full range of real transaction data. Building the instrumentation and deduplication logic from the start is significantly less expensive than retrofitting it after the first production incident. Teams beginning this work benefit from a review of available Infor integration services to assess where implementation acceleration is possible, and from engaging integration consulting support early in the architectural design phase, particularly for the order type mapping and business partner resolution design decisions that most commonly require costly rework once the integration has entered production.