- Home
- Blog
- ERP Integration (EDGEBIC)
- EDGEBIC + Acumatica: The Complete Scheduling Integ…
EDGEBIC + Acumatica: The Complete Scheduling Integration Guide
Integrating Acumatica with EDGEBIC means exporting the stock items, work centers, bills of material, and open production orders Acumatica already holds to Excel or CSV, usually from a Generic Inquiry, mapping those columns once with a reusable import mask, and letting EDGEBIC schedule the work against finite capacity: real shift hours, real machine counts, and sequence-dependent setups. Executable dates then go back as Excel. There is no marketplace connector to install, no API integration to build, and no customization package to promote between tenants.
EDGEBIC by User Solutions is the newest generation of a scheduling line that has integrated with ERPs this way since 1991. Across 35+ years the same file-based approach has fed schedules for the US Navy, GE, BAE Systems, and Cummins. This guide covers the Acumatica case: what to export, how the masks work, what the engine does with the result, and what a realistic first week looks like.
Why a cloud ERP still needs a floor scheduler
Acumatica runs the business well: orders, inventory, purchasing, financials, and the manufacturing records that hang off them. What most Acumatica manufacturers report is that the daily sequencing decision still happens in a spreadsheet, because the questions a planner asks each morning are finite capacity questions:
- Which of these 60 open production orders fit on the two CNC cells this week?
- If this rush order jumps the queue, which promise dates move and by how much?
- Is the paint booth loaded to 80 percent or 160 percent next Thursday?
Those require modeling shifts, machine instances, changeover sequences, and operator availability against every open order at once. It is a different computational problem from recording transactions, which is why a dedicated finite capacity layer beside the ERP is the standard pattern. The general case is in finite versus infinite capacity scheduling; the wider category view is on the EDGEBIC ERP integration hub.
The integration in one table
The EDGEBIC ERP integration architecture is identical for every ERP, Acumatica included:
| Direction | Data | How it moves |
|---|---|---|
| Acumatica to EDGEBIC | Stock items | Generic Inquiry export to Product import mask |
| Acumatica to EDGEBIC | Work centers | Export to Workcenter import mask |
| Acumatica to EDGEBIC | BOM / routing operations | Export to BOR (bill of routing) import mask, two-pass |
| Acumatica to EDGEBIC | Open production orders | Export to SalesOrder import mask |
| Acumatica to EDGEBIC | Labor hours (optional) | Export to Actuals import mask |
| EDGEBIC to Acumatica | Executable start and end dates, dispatch lists | Excel export from Job View and reports |
An import mask is a saved recipe. It remembers which kind of data you are importing, what format it arrives in (Excel workbook, or comma, semicolon, tab, or space delimited text), whether the first row is headings, whether text values are quoted, and how each column of your file maps onto an EDGEBIC field. You build it once by dragging your file's column headings onto EDGEBIC's target fields. Every run after that is two clicks.
Every row produces exactly one outcome: Created, Updated, Reused (matched and deliberately left alone), or Failed (rejected, with the reason recorded). A result dialog shows the counts and a per-run log file records every row individually.
The Generic Inquiry is the natural export
Acumatica's Generic Inquiry is a good fit for this pattern because it does the shaping before the file is written. A GI can join items to their production detail, filter to open orders only, and present exactly the columns EDGEBIC needs, then export to Excel or CSV on demand or on a schedule.
Three practical consequences follow for an Acumatica tenant:
- Nothing is installed in the tenant. No customization package, no integration endpoint, no webhook. Your update process is unaffected because there is nothing to carry forward.
- No integration user or credential is created. The scheduler never authenticates against Acumatica, so there is no permission surface to review or rotate.
- Scheduling keeps working offline. The plan is computed locally, so a connectivity problem stops the export, not the shop's dispatch list.
Step 1: the four exports
Four exports carry a complete scheduling model. Build a Generic Inquiry for each so the column set stays stable.
- Stock items. The item identifier, description, unit of measure, and any cost or lead-time columns worth having visible. The identifier is the natural key, matched case-insensitively, so
BRK-200in a file findsbrk-200in the database. - Work centers. Identifier, how many identical machines the center really holds, default setup hours, efficiency, and an hourly rate for cost rollups. Bottleneck and shift-assignment flags ride in the same file.
- BOM and routing operations. One row per operation: end product, work center, sequence number, hours per unit, setup time, queue time.
- Open production orders. Product, quantity, order reference, and dates.
Any Generic Inquiry that exports to Excel or CSV is a valid source. You are not writing integration code and not calling the API, which keeps the interface stable across Acumatica updates.
Step 2: map the columns once
Build one mask per file and name it after the routine rather than the file: Weekly Acumatica Production Orders outlives po-week31.xlsx. Mandatory fields are flagged, and the run refuses to start until they are mapped, so a half-built mask fails before it reads a single row.
Two mask features carry most of the weight:
Unit conversion. Set a conversion factor on any numeric column and the multiplication happens before the value is stored. Minutes to hours is 0.016667, seconds to hours 0.000278, and a standard time quoted per lot of 100 pieces becomes per piece with 0.01. Different columns in the same file can carry different factors.
Blank-cell preservation. On an update run, a blank cell keeps the existing value rather than wiping it, so a partial refresh file is safe. Watch the matching rule: a zero is a value, not a blank. Leave a column out of the export rather than filling it with zeros you do not mean.
Step 3: the routing import, and why it takes two passes
Routings are the hardest data to move between systems, because operations reference each other: step 10 feeds step 20 feeds step 30. A row-by-row import cannot wire those links, because step 20 does not exist yet when step 10 is written.
EDGEBIC's routing import runs in two passes. Pass one reads and validates every row, auto-creates any work center or product the file names that does not exist yet, and buffers the steps. Pass two groups the buffered rows by end product, sorts them by sequence number, writes them, and then wires the chain: 10 to 20, 20 to 30, and the terminal step to the finished product, so the routing renders as one connected flow in the graphical routing designer.
Conventions that pay off immediately:
- Number sequences in gaps of 10 so a later insert becomes 25 and nothing renumbers.
- Keep all of one product's steps in one file. A routing import wipes and recreates that product's steps once per run, which is what makes re-imports idempotent; splitting one product across two runs means the second run's wipe deletes the first.
- Re-importing is safe for running orders. Every scheduled job carries a frozen snapshot of the routing it was planned with, so a routing change applies to future jobs and leaves work in progress untouched.
Step 4: production orders in, then run the scheduler
The order import maps product, quantity, reference, and dates. When your GI carries an order reference, rows sharing that reference group under one order and their jobs auto-number as {Ref}-{line}, keeping a multi-line order together.
Imports never schedule anything. Imported orders sit as unscheduled demand until you run the scheduler, which states its scope in plain numbers before it plans. Data movement and planning stay separate on purpose. The choices are covered in EDGEBIC scheduling modes explained.
Once the data is in, the full engine applies: finite capacity across multiple shifts and machine instances, work center groups that re-shop the machine pool on every reschedule, a sequence-dependent setup matrix, lot streaming with transfer batches, operator skills, and mathematical optimization with a proven optimality gap. The EDGEBIC product overview maps the engine.
Step 5: sending dates back
The return trip is Excel. The Job View grid exports the job schedule as a workbook with colored cells and a legend sheet, the work center schedule exports the same way, and every report dialog exports to Excel or PDF using the column layout you saved. Revised dates then go back into Acumatica through the production order date path your team already uses. There is no automated write-back, which keeps your ERP data under your control.
A realistic first week
The method has a documented benchmark in the User Solutions lineage: at Plastilite Corporation the ERP vendor itself recommended User Solutions scheduling, and the team went from first export to a complete optimized schedule with ERP integration in 5 days. A mid-size Acumatica manufacturer usually follows the same shape.
| Day | Work |
|---|---|
| 1 | Build stock item and work center GIs; export; build and run those two masks; verify counts |
| 2 | Build the BOM/operations GI; export; build the routing mask with unit conversions; review the routing designer |
| 3 | Build the open production order GI; export; import; run the first full finite capacity schedule |
| 4 | Compare EDGEBIC dates to current promises; correct instance counts, shifts, and setups where reality disagrees |
| 5 | Lock the weekly rhythm: saved GIs, saved masks, import order, scheduler run, exports back |
The green-field setup walkthrough covers the from-empty sequence, and the Acumatica to EDGEBIC data mapping reference is the field-level lookup to keep open while building masks.
Test it with your own export
Export this week's open production orders and a BOM/operations file, then bring them to a demo. Mapping them live takes minutes, and you leave having watched your own shop scheduled against its own capacity. If you are evaluating more than one ERP, the Made2Manage, NetSuite, and Rootstock versions of this guide follow the same method, which is the point of a universal import layer.
No. EDGEBIC integrates with Acumatica through reusable import masks fed by the Excel or CSV exports Acumatica already produces, typically from a Generic Inquiry. There is no marketplace connector to install, no API integration to build, and no customization package to promote between tenants. You map an export's columns onto EDGEBIC fields once, and every later run is two clicks with a per-run log recording each row.
Four exports carry a complete scheduling model: stock items, work centers with capacity detail, bills of material with routing operations, and open production orders with quantities and dates. A fifth optional export carries labor hours from the floor. Each file goes through its own import mask, and every row returns as Created, Updated, Reused, or Failed.
No, because the two systems answer different questions. Acumatica stays the cloud system of record for orders, inventory, and financials. EDGEBIC handles finite capacity sequencing against real shifts and machine counts, which is a compute problem the planner runs on demand. Nothing about the ERP moves, and the daily schedule keeps working even when connectivity does not.
Expert Q&A: Deep Dive
Q: We already build Generic Inquiries for reporting. Can EDGEBIC read a GI export directly, or do we need something special?
A: A Generic Inquiry that you export to Excel or CSV is exactly the right source. Build one GI per entity, one for stock items, one for work centers, one for BOM operations, one for open production orders, so each produces a stable set of columns, then export each to a file and build a mask against it. The masks map GI column headings onto EDGEBIC fields once. Because a GI can join across tables and filter to open records, it is often cleaner than a stock report, and the same GI can feed the export every week without change. If you later add a column to a GI, the mask ignores unmapped columns, so nothing breaks.
Q: Our shop runs a single planner and we chose Acumatica to avoid on-premise infrastructure. Will a file-based scheduler undo that?
A: It adds one workstation-class install and no cloud infrastructure. Acumatica stays exactly as it is, no package deployed into the tenant, no integration user created, no customization to carry through an update. The recurring work is export the GIs, run the saved masks, run the scheduler, read the counts, which is about twenty minutes on a busy Monday and less on other days. The one thing the local install buys you is that the schedule keeps computing when the internet does not, so a connectivity blip stops the export rather than the shop's dispatch list.
Frequently Asked Questions
Ready to Transform Your Production Scheduling?
User Solutions has been helping manufacturers optimize their production schedules for over 35 years. One-time license, 5-day implementation.

User Solutions Team
Manufacturing Software Experts
User Solutions has been developing production planning and scheduling software for manufacturers since 1991. Our team combines 35+ years of manufacturing software expertise with deep industry knowledge to help factories optimize their operations.
Share this article
Related Articles
Connecting EDGEBIC to Your ERP Database With a SQL Source
How to point a scheduled EDGEBIC integration at a read-only ERP query instead of a file: testing the connection, previewing columns, checking the mask fits, and the stored-password rule that catches most teams out.
EDGEBIC ERP Integration: The Complete Guide
How EDGEBIC integrates with any ERP: eight import masks, three source options, a documented data mapping, and the weekly rhythm that keeps a finite capacity schedule current.
Closing ERP Work Orders That EDGEBIC Still Thinks Are Open
Your ERP closing a work order is invisible to EDGEBIC. There is no status column on the order mask, and a job whose every step is done is not closed automatically. Here is the closing pass that keeps your numbers honest.
