OrderLink CSV Orders

As part of creating jobs, OrderLink imports bookings and workorders. These can either come from your ERP as part of a custom plugin or can be imported from CSV files located in a single directory. This page describes the CSV order format.

For an overview of bookings and workorders, what they are, and how they are used, see the whitepaper on orders and ERP integration.


A booking is an order that concerns itself only with the demand for the cell, therefore limits itself only to the input boundary between the cell and the rest of the factory. A booking consists of:

  • Unique Identifier
  • Part Name(s) and Demand Quantity
  • Priority
  • Due Date
  • A flag if the booking has been scheduled or not
  • An optional list of path colors to use

The daily schedule calculated by OrderLink will include enough parts to ensure the machines stay busy, and this might mean only a portion of a booking fits into the schedule. Rather than track partially completed bookings, OrderLink instead allows the ERP to track a list of parts and quantities that have been scheduled without a booking. The next day's schedule will see these part quantities and realize that to complete the booking only the remaining parts must be scheduled. See the whitepaper for some specific examples.


The bookings.csv CSV file contains all the bookings. OrderLink treats this file as read-only and never edit or update this file. It can either be edited manually or generated as an export from the ERP.


The Id column is the booking identifier and should be unique and never reused. The due date and priority are used by OrderLink to help sort the orders, and the part name and quantity determine what to produce. A single order can have more than one part in it, in which case two parts should be on separate lines with the same booking identifier. (We suggest for ease of tracking that each booking is only a single part type, but we do support multiple part types per order.) The PathColors column is optional and if specified, it is a semicolon (;) separated list of colors. The booking will be restricted to run on only those specific path colors in the flexibility plan. If the column is empty or missing, the booking can use any of the available paths configured in the flexibility plan.


The scheduled-parts.csv file is created by OrderLink and stores the parts which were scheduled without a booking (typically because only part of a booking could fit into the daily schedule so the booking is left unscheduled). OrderLink will overwrite this file each time a schedule is generated, since OrderLink recalculates the scheduled parts without bookings after the new schedule has been generated. Typically, during normal operations you should not edit the scheduled-parts.csv file at all. New bookings come into the bookings.csv file and OrderLink uses scheduled-parts.csv to track scheduled parts between days. Having said that, you can edit the scheduled-parts.csv file to adjust the part counts; see the whitepaper for details.

scheduled-bookings folder

Since OrderLink treats the bookings.csv file as read-only, when a booking is scheduled OrderLink instead creates a file named after the booking ID into the scheduled-bookings folder. For example, if OrderLink decided to schedule the 12345 booking, it would create a file scheduled-bookings\12345.csv with the following contents:


This shows the time the booking was scheduled in Coordinated Universal Time (formatted according to ISO 8601), the part type, the quantity, and a unique schedule identifier. If needed, the schedule identifier can be matched with log entries in FMS Insight and the cell controller itself to find the schedule that consumed this booking.

The bookings loaded by OrderLink are everything in bookings.csv except the bookings in the scheduled-bookings folder.

If you are manually editing bookings.csv, typically the best method is to just delete entirely the scheduled-bookings folder and then manually edit the bookings.csv to be exactly the unscheduled bookings that you want to transmit to the cell controller. If instead the bookings.csv file is being exported from the ERP, you should also create an ERP task which imports the scheduled-bookings CSVs. Indeed, once OrderLink creates a file in the scheduled-bookings folder, this file can be imported into the ERP to mark the booking as scheduled inside the ERP. Then, the next time the unscheduled bookings are exported into the bookings.csv file, the scheduled booking should be missing because the ERP marked it that way. The CSV in the scheduled-booking folder should then be deleted so that the size of the folder does not grow over time (OrderLink never edits or deletes any scheduled-booking files).


Similar to bookings, a workorder consists of

  • Unique Identifier
  • Part Name
  • Quantity
  • Priority
  • Due Date

The workorders.csv file contains all the workorders. OrderLink treats this file as read-only and never edit or update it. It can either be edited manually or generated as an export from the ERP.


The Id column is the workorder identifier and should be unique and never reused. The due date and priority are used by OrderLink to help sort the workorders for filling.

Have more questions?

Contact Us