Infor Factory Track ERP Integration Architecture: SyteLine, LN, and M3 Connector Development with Real-Time Data Sync

Luis Hayes
Luis Hayes
Director, Solution Engineering
12 min read

Factory Track operates as a discrete manufacturing execution layer built on Infor’s Mongoose application platform, and its integration surface is substantially more complex than a simple data pass-through. When a shop floor transaction closes in Factory Track, whether a labor clock-out, a material issue against a work order, or a production quantity confirmation, that event must reach the upstream ERP with full transactional integrity. The connector architecture connecting Factory Track to SyteLine, LN, and M3 differs at every layer: the API contract, the document model, the failure behavior, and the sync model each vary by ERP. Understanding those differences at the implementation level is what separates a stable integration from one that silently drops transactions under sustained load.

Factory Track as a Shop Floor Execution Layer

Factory Track manages the operational data generated between work order release and production completion. Its core data objects include work orders, operation sequences, labor transactions, material issue and return transactions, production quantity postings, and scrap records. Each of these objects carries ERP-originated reference data, such as a job number, an operation sequence, a resource identifier, and site-level identifiers, alongside the shop floor event data generated by the operator interaction.

The integration surface Factory Track exposes to upstream ERP systems consists primarily of outbound transaction queues and inbound master data subscriptions. Work orders are pulled from the ERP at release or via a scheduled sync, and Factory Track holds a local copy that tracks operational status independently. When operators complete transactions, Factory Track writes those events to internal staging tables within its Mongoose-hosted database before the connector service processes them for ERP consumption. This staging architecture is what makes retry and idempotency logic possible.

Factory Track’s transaction schema for ERP consumption organizes labor records by employee, operation, and elapsed time, with fields for regular, overtime, and burden categories. Material movements carry the job number, operation, item number, quantity, unit of measure, and warehouse location. Production quantity records include the completed quantity, the scrapped quantity, and the reason code. Each of these record types maps differently depending on the target ERP, which is why connector development for Factory Track is not a generic exercise. Teams evaluating Infor ERP integration strategy for discrete manufacturing need to treat each ERP connector as a distinct integration project with its own contract and failure model.

SyteLine Connector Architecture and IDO Framework

The SyteLine connector in Factory Track uses the IDO (Intelligent Data Objects) framework as the primary integration contract. IDOs are SyteLine’s abstraction layer over its underlying database objects, and they expose server-side methods that enforce business logic, including validation, cross-reference lookups, and posting routines, before data reaches the SyteLine tables. The Factory Track connector does not write directly to SyteLine database tables. All production transactions are submitted through IDO method calls over SyteLine’s application server, which means every transaction passes through SyteLine’s own posting logic.

The IDO methods relevant to production transaction sync include those in the JobTrans, JobMtlTrans, and LaborTrans families. A completed production quantity from Factory Track maps to a JobTrans IDO call with a transaction type of ‘C’ (close) or ‘Q’ (quantity), carrying the job number, suffix, operation sequence, completed quantity, and effective date. Labor transactions post through the LaborTrans IDO with employee ID, job reference, start and end times, and pay category classifications. Material issues map to the JobMtlTrans IDO, which validates the item number against the SyteLine job’s material requirements before accepting the quantity.

The Factory Track connector batches these IDO calls within configurable transaction windows. When a sync batch fails mid-execution, the behavior depends on where in the batch the failure occurs. IDO calls are not wrapped in a single distributed transaction across the batch. Each IDO call is a discrete server-side operation, and a partial batch failure leaves the successfully posted transactions committed in SyteLine while the failed records remain in the Factory Track staging queue for retry. This means duplicate detection logic at the IDO call level is essential. Factory Track uses a transaction identifier generated at staging time to detect whether a record has already been accepted by SyteLine before resubmitting, preventing double-posting of labor hours or material quantities.

In high-volume environments, IDO timeout behavior becomes a critical operational concern. SyteLine’s application server enforces a default request timeout on IDO method calls, and under sustained batch load this threshold can be reached before the posting routine completes. The practical remedy at the connector layer involves reducing batch sizes, staggering sync intervals, and configuring the IDO client timeout on the Factory Track side to match or slightly exceed the SyteLine server-side threshold. Practitioners working on SyteLine job costing and production transaction architecture will recognize this timeout mismatch as one of the more consistent sources of incomplete sync in production environments.

Are gaps in your Factory Track ERP integration causing shop floor data to post incorrectly or out of sync?

Sama's consultants design and fix Factory Track connector architecture across SyteLine, LN, and M3 so labor, job moves, and inventory transactions sync to your ERP accurately in real time.

LN Connector Architecture via ION and BODs

The Factory Track connector for Infor LN operates through Infor ION (Intelligent Open Network) using Business Object Documents as the canonical message format. Factory Track does not call LN APIs directly. Instead, it publishes BODs to the ION message bus, and LN subscribes to those BODs through connection points configured in ION Desk. The reverse flow, LN publishing work order and routing data for Factory Track to consume, follows the same mechanism with Factory Track acting as the subscriber.

The BODs relevant to the Factory Track and LN integration include ProductionOrder for work order master data sync from LN to Factory Track, InventoryTransaction for material movement postings from Factory Track to LN, and LaborTransaction for labor hour postings. Each BOD follows the Open Applications Group schema, and the Factory Track connector generates BOD XML that must conform to LN’s expected noun and verb structure. The Process.ProductionOrder BOD carries the production order number, routing operations, required components, and site assignment. Factory Track consumes this document at work order pull time to build its local operational record.

When Factory Track posts transactions back to LN, it generates Sync.InventoryTransaction or Sync.LaborTransaction BODs and publishes them to the ION API Gateway. The ION API Gateway handles authentication using OAuth 2.0 bearer tokens issued by the Infor Identity Service. Token expiry in production environments is a known failure mode: if the Factory Track connector service holds a token past its expiry window and attempts to publish a BOD, the gateway returns a 401 response, and the publish attempt fails. The connector must implement token refresh logic that detects the 401 response, re-authenticates against the Infor Identity Service, and retries the publish before escalating to the dead-letter queue.

LN’s multi-site architecture introduces document routing complexity. In a multi-site LN deployment, each site has its own logical company identifier, and BODs must carry the correct AccountingEntity and Location noun qualifiers so that ION routes the document to the right LN site. Factory Track’s site configuration maps each local site to an LN logical company, and this mapping must be maintained in sync with LN’s own site configuration. If a site is added in LN without a corresponding update in Factory Track’s ION connection point mapping, BODs for that site will route to the default company or fail routing altogether. Teams responsible for Infor LN multi-site deployment and ION connectivity should treat this mapping table as a change-controlled artifact updated in lockstep with any LN site structure changes.

M3 Connector Architecture via MEC and MWS APIs

The Factory Track connector for M3 uses either M3 Enterprise Collaborator or the M3 Web Services API layer, depending on the version of M3 in the deployment. In modern M3 environments running on Infor OS, the MWS REST and SOAP endpoints are the primary integration surface. MEC remains relevant in older or hybrid deployments where the M3 Business Engine is the primary runtime and direct API access is not fully available.

The MWS API families relevant to Factory Track integration include PDS for production order confirmation, MMS for inventory balance updates and material transactions, and MOS for labor reporting. Factory Track maps its production quantity confirmation to the PDS100MI API, specifically the UpdProdOrdOp transaction, which accepts the production order number, operation sequence, reported quantity, and transaction date. Material issues against production orders map to MMS100MI or MMS060MI depending on whether the movement involves a warehouse balance adjustment or a direct issue to a production order. Labor reporting uses MOS100MI with transaction type, employee reference, operation, and elapsed time parameters.

M3’s transaction model requires that each API call carry a company and division identifier, which corresponds to the M3 facility and warehouse structure. Factory Track’s M3 connector configuration must map each shop floor site to the correct M3 company and division pair. When M3 is deployed across multiple divisions, this mapping carries the same change management risk as LN’s multi-site routing: a facility change in M3 that is not reflected in Factory Track’s connector configuration will cause API calls to land in the wrong division or return a validation error on the company identifier field.

Real-Time Data Sync Mechanisms and Transactional Queuing

Factory Track supports both event-driven sync and polling-based sync, and the choice between them has direct consequences for transaction latency and system load. In event-driven mode, the Mongoose service layer triggers a connector publish as soon as a transaction is committed to the Factory Track staging tables. The latency between a shop floor event and its appearance in the ERP is bounded by the connector service processing time rather than a poll interval, which in practice means sub-minute sync for most transaction types under normal load.

Polling-based sync checks the staging queue at a configured interval, typically between 30 seconds and 5 minutes, and processes all staged records in batches. This mode is more resilient to connector service interruptions because records accumulate in staging and are processed when the service recovers, but it introduces predictable latency and can create batch processing spikes if the interval is too long and transaction volume is high.

Mongoose’s service layer, which hosts the connector background processes, manages thread allocation for sync workers across all configured ERP connectors. Each connector instance runs as a Mongoose service with its own thread pool, queue monitor, and retry scheduler. Idempotency is enforced at the staging record level: each record carries a processed flag and a last-attempt timestamp, and the retry scheduler only re-queues records where the processed flag is false and the last-attempt timestamp exceeds the configured retry delay. This prevents concurrent retry attempts from processing the same record simultaneously when the service restarts after a crash.

The retry logic is configured per connector and per transaction type. Labor transactions typically carry a higher retry count than material movements because a missed labor posting has cost accounting implications that accumulate over a pay period. Teams managing Infor Factory Track implementation and connector configuration should document retry thresholds and dead-letter escalation paths as part of the integration runbook, not as an afterthought to go-live.

Failure Modes and Connector-Layer Remediation

Schema version mismatches between Factory Track releases and ERP upgrades are the most common source of silent integration failures. When Infor releases a Factory Track version update that modifies the staging table schema or the connector’s internal transaction model, and that update is applied without a corresponding review of the ERP-side contract, the connector may continue to submit transactions that are structurally valid but semantically incorrect because field mappings no longer align with the upgraded ERP version. The SyteLine IDO framework can tolerate unknown properties in some call signatures, which means the connector may receive a success response from the IDO call even when a field was silently dropped. The only reliable detection method is post-sync reconciliation between Factory Track’s staged record counts and the ERP’s posted transaction counts for the same time window.

Authentication token expiry in ION-based flows is a time-sensitive failure that compounds quickly if the retry logic does not distinguish between a temporary authentication failure and a persistent routing error. A connector that retries a 401 response without first refreshing the token will consume its retry allowance on a recoverable error and then escalate the record to the dead-letter queue unnecessarily. The remediation is to implement a pre-flight token validation step at the beginning of each sync cycle, not only on failure detection, so that the connector always holds a valid token before attempting to publish.

IDO timeout behavior in high-volume SyteLine environments requires both server-side and client-side configuration attention. Increasing the SyteLine application server’s IDO request timeout without also reducing the Factory Track batch size shifts the problem rather than resolving it: larger batches with a longer timeout succeed more often but create longer blocking windows on the SyteLine application server thread pool. The correct approach reduces batch size to keep individual IDO operations well within the timeout window, and monitors the SyteLine event log for timeout entries to establish a baseline before tuning begins. Practitioners who have worked through SyteLine integration performance tuning in production manufacturing environments know that IDO timeout issues tend to surface first during month-end closing cycles when concurrent posting volume spikes across all active jobs simultaneously.

Are gaps in your Factory Track ERP integration causing shop floor data to post incorrectly or out of sync?

Sama's consultants design and fix Factory Track connector architecture across SyteLine, LN, and M3 so labor, job moves, and inventory transactions sync to your ERP accurately in real time.

Building stable Factory Track integrations across SyteLine, LN, and M3 requires treating each connector as a first-class software component with its own configuration management, failure handling, and reconciliation tooling. The Mongoose platform provides the infrastructure, but the reliability of the integration depends entirely on how thoroughly the connector configuration, retry logic, and schema version management are implemented and maintained across the full lifecycle of both the Factory Track instance and the upstream ERP.