ERP and MES Integration with PICO: Architecture and APIs

PICO connects the shop floor through IoT tool integrations and connects the factory to the rest of the business through seamless ERP integrations. In this blog, the minimum requirements for integrating your ERP with PICO will be outlined to help you understand and prepare for this plug-and-play adoption.

 

Why Connect PICO and Your ERP?

PICO serves as your factory’s MES, monitoring and controlling assembly processes and providing real-time data to track parts throughout production. Through PICO, manufacturers error-proof each assembly using digital work instructions and connected tools, allowing for meaningful and instant insights into process efficiency and product quality.

Your ERP–whether it’s NetSuite, Infor, Odoo, SAP, PLEX, or another system–lives on the commercial side of the business, managing various data and activities relating to inventory, work orders, and shipping logistics, as well as tracking materials and purchase requisitions. You may also rely on your ERP to sync financial, operations, and sales data.

 

See why your factory needs both an MES and ERP.

 

Ultimately, connecting your ERP with PICO allows for full data transparency between the factory and the front offices, allowing sales and work orders to seamlessly drive operations on the shop floor.

➡️ Learn more about the benefits of integrating your ERP with PICO.

 

Laying the Foundation:  Defining ERP Terminology

Each ERP uses their own terminology for what we call work orders–possibly referring to them as production orders or manufacturing orders. To clarify these and other terms as they appear in PICO, we created the following definitions:

  • PICO process: A sequence of steps completed by an operator or technician to produce and complete an assembly or subassembly.
  • PICO product: The part that is assembled as a result of building a sequence of PICO processes.
  • Work order: A single quantity work order for 1 PICO Process.
  • Manufacturing order: A higher-level grouping of work orders sequenced through a PICO product. For example, 1 manufacturing order could contain 10 individual work orders in PICO. 
  • ERP order: Generally these refer to the scheduled orders within the ERP that require work to be done from Manufacturing. ERP orders are sometimes called “manufacturing orders” or “production orders”. They usually have a quantity and a top-level bill of materials (BOM) item or part. For example: A production order of quantity 10 could be scheduled for part Battery Pack X1.

 

Understanding Your ERP’s Integration Capabilities

ERPs typically fall into two different categories: Those that allow customization (configurable), and those that do not (non-configurable). Certain ERPs allow for customization that extends the default ERP behavior, database, and processing capability and some ERPs offer no such customization, instead relying on publicly available APIs for interaction with other systems. PICO has different strategies for interacting with both types of ERPs:

1. Configurable ERP (preferred ERPs such as NetSuite and Odoo): PICO-specific code is installed and executed within the ERP, allowing for configurations and data fields from PICO to live directly in the ERP. This code interacts with the native PICO API to create work orders (in PICO) whenever ERP orders are created and/or released. At the same time, the PICO-specific code can subscribe to work order completion messages and update ERP work orders and inventory accordingly as builds are completed in PICO. For example, end users can use this integration method to associate ERP BOM items with specific PICO processes directly within the ERP, backflushing inventory from PICO to the ERP as materials are consumed in a build.


2. Non-configurable ERP (for example, SAP): To connect PICO with ERPs that only offer standard APIs, a middleware is required to translate the ERP’s API with PICO’s API. Typically, ERP items are associated with PICO processes based on part numbers. The middleware is responsible for periodically querying the ERP for any new ERP orders. When new orders are retrieved, the middleware creates the necessary work orders in PICO. As work orders are completed in PICO, the middleware translates these PICO API messages and posts to the appropriate ERP API to update the ERP order status.
 

⏯️ Watch this demo on PICO’s BOM management capabilities:


PICO Integration Tiers

There are multiple levels of integration that can be possible between PICO and your ERP. We break these down into the following levels:

1. Base Integration: The minimum level of integration required to support the standard

communication between the ERP and PICO, primarily around the creation and completion of work orders. A PICO-ERP integration must meet the Base Integration requirements in order to be considered valuable and valid.

2. Enhanced Data Integration: This includes everything from the base integration as well as

additional information exchanged between PICO and your ERP. This includes such features as work order status (beyond just created and completed), BOM transfer, scrapping of builds, etc.

 

Below is a summary of the high-level requirements for both the Base and Enhanced Data Integration tiers:

Base Integration Requirements

  • Process mapping: A way to associate PICO processes with ERP BOM items/products.
  • Validate required fields: Validation that all the necessary consumption fields have been lined up between PICO and the ERP when mapping an ERP BOM item to a PICO process.
  • Receive new MOs and associated work orders: Upon the creation of a new ERP work order, validation that a PICO process matches each process in the work order and creates a new PICO work order.
  • Send order completion: Records the completion of a process in the ERP on the completion of a work order in PICO.
  • Manual work order creation: Allows the end users to create PICO work orders without having to associate it to the ERP (typically used for testing purposes).
  • Manual work order deletion: Allows the end user to delete PICO work orders which are no longer applicable.
  • Receive work order updates and deletion: Automatically deletes PICO work orders if the associated ERP work order is canceled.
  • Errors: Notifies PICO or customer log of any errors.
  • Retry of errors: If an error is known to have been fixed, the affected outgoing PICO request is re-triggered.

Enhanced Data Integration Requirements

  • Send serialized component information: Sends the serialized consumable inventory items back to the ERP when builds are completed in PICO.
  • Receive serial number from ERP: If the ERP is used to generate serial numbers, the integration can pull serial numbers from the ERP to PICO (instead of generating serial numbers in PICO).
  • Associated PICO operators to ERP operators: PICO operator IDs may not match ERP user IDs. If per-employee time tracking is required when completing ERP orders, then a way to associate PICO user IDs with ERP user IDs will need to be supplied.

PICO API Summary

The PICO API provides a connection between the PICO server and your ERP. The basic API structure allows for the ERP to create work orders in PICO. Upon completion of those work orders in PICO, a completion message is sent back to the ERP as dictated by the subscribed endpoints.

In addition to work orders, PICO can also send the latest process configurations to the ERP. The process version subscriptions allow the ERP to stay up-to-date with the latest processes and workflows created in PICO so that BOM items in the ERP can be accurately mapped to PICO processes.Learn about PICO's ERP integration requirements.

Note: The PICO data objects are encoded in JSON and sent over HTTP.

  • The Workflow Version object applies to both the WorkflowVersion and ProductionVersion. WorkflowVersions capture new changes to the PICO workflow that have not yet been approved. ProductionVersions are sent whenever a workflow is approved. Without full change control, PICO will only send the ProductionVersion.
  • Work Complete and Work Order Complete use the same data structure, with the only difference being that if work orders are enabled then PICO will send the Work Order Complete event. If work orders are not enabled, then PICO will send the Work Complete event whenever a PICO process is finished.

 

Need more information? We’re here to help.

Gain access to hundreds of solutions from a single platform

Step into the future of factory operations with Pico MES. Start your journey toward a more efficient, error-proof factory floor today.

Add new device_higher res