Home / Point of View / Sales Forecast Pipeline
Forecasting

From ERP to MRP:
Building a Forecasting Competency That Runs Itself

The difference between a forecasting project and a forecasting competency is what happens after the model finishes running. A competency runs again automatically next month, writes its primary output back into the ERP as a demand plan, and gets more accurate with every period that passes. Here is the architecture that makes that possible.

Paul Ausserer, Marquis Data May 2026 11 min read

Two kinds of forecasting organizations

Most PE-owned manufacturers who have attempted a demand forecasting initiative have built a project. A consultant or data team is engaged, they spend the first several weeks extracting and cleaning ERP data, they build a model, they present a 12-month forecast, and the deliverable is a spreadsheet. Six months later, when someone needs to rerun the forecast, the process starts over from scratch - because the data pipeline that fed the first model was never designed to persist.

A forecasting competency looks different. The data pipeline is permanent. The models run on a schedule, refresh automatically at period close, and produce outputs that are distributed to the right stakeholders at the right grain - finance at L1, procurement at L2, the board at portfolio level. The primary output is not a report. It is an MRP forecast file that uploads directly back into the ERP as a forward demand plan, closing the loop from data source to operational decision.

The pipeline is the moat. The model is replaceable. A team that builds a connected, automated forecasting pipeline owns a capability that compounds with every period it runs - not a one-time analysis that decays the moment the project ends.

This article describes the architecture of that pipeline: five stages, a stack built on Marquis IQ plus open source Python plus AI, and a circular flow that starts and ends at the ERP.

A note on methodology
Demand forecasting is a deep field with many valid methodologies. The approaches here reflect what we have seen produce the best practical results in PE-owned manufacturing environments - not a claim that these are the only right answers. There are practitioners with far broader expertise in the discipline. One we have worked with directly and recommend without reservation is Nicolas Vandeput, whose work on demand forecasting and inventory optimization is worth reading by anyone building serious forecasting capability.

How it works: four steps, one automated cycle

Data originates in the ERP, is normalized by Marquis IQ, shaped into model-ready features, run through competing models, and then written back into the ERP as a forward demand plan. The cycle repeats at every period close automatically.

1
Collect
Three data sources pulled from Marquis IQ for each pipeline run:
Invoice Transactions
48 months of completed sales
Backlog Balances
Point-in-time backlog snapshots
Quote Activity
Monthly aggregate new-quote value
2
Shape
Transactions aggregated to monthly revenue by segment and grain. Backlog lag features (Lag 1-6) computed per grain. Quote activity lags (1, 2, 3, 6, 12 months) broadcast as a macro signal. A normalized quote index is added so the model sees whether quoting is running hot or soft relative to its own history.
Backlog lags Quote lags Quote index
3
Model
Models compete for each grain: Naive, ETS, Prophet, Croston, XGBoost, LightGBM, CatBoost, and Booking Curve. Each runs independently and the best performer per grain is selected by walk-forward accuracy. Models with insufficient history are silently skipped.
Walk-forward validation FVA scoring
4
Output
A 12-month forward forecast produced for each grain combination, with confidence bands, open order visibility, and booking coverage percentages. The primary output feeds directly back into the ERP as a demand plan.
Excel Reports Marquis IQ MRP Input File

The model stack

Not every model is right for every entity. A facility with stable, seasonal revenue and 48 months of history needs a different approach than a product line that ships intermittently or an entity added through acquisition with 14 months of clean data. Running a single model against all entities and calling it a forecast is how you get confident wrong numbers.

The Marquis IQ pipeline runs multiple models in competition for each grain and lets walk-forward accuracy determine the winner. Forecast Value Added (FVA = MAE of the naive baseline minus MAE of the model) is calculated per entity per model. A model with positive FVA earns its place. A model with negative FVA - meaning it underperforms simply repeating last year's number - is a signal that the data at that grain needs attention, not that a better algorithm is required. The eight models below cover the full range of demand patterns found in PE-owned manufacturing portfolios.

Naive
Seasonal baseline - FVA denominator
Baseline
Uses the same month from the prior year as the forecast. No calculation, no fitting - just last year's number. Every other model must beat this to earn its place in the pipeline.
Best forStable, seasonal businesses with predictable annual patterns.
WeaknessMisses trend changes, growth, or one-time events in the prior year.
ETS
Exponential Triple Smoothing
Statistical
Decomposes the series into level (current baseline), trend (growth or decline), and seasonality (repeating annual pattern). All three are projected forward with recent months weighted more heavily than older ones.
Best forEntities with a clear seasonal cycle and consistent trend. The interpretable baseline for business users.
WeaknessStruggles with sudden structural breaks or volatile, lumpy demand.
Prophet
Meta's decomposable time series model
Statistical
Fits trend and seasonality using curve-fitting rather than smoothing. Handles changepoints where the trend visibly shifted and accepts external regressors including reconstructed backlog indicators.
Best forSeries with visible trend breaks, multiple seasonal cycles, or known structural shifts such as acquisitions or product launches.
WeaknessSlower to train than ETS. Requires additional library installation.
Croston
Intermittent demand - Syntetos-Boylan variant
Statistical
Models two separate series: demand size when demand occurs, and the interval between occurrences. Point forecast = size / interval. Handles periods of zero demand that cause standard models to underforecast. Applies the Syntetos-Boylan bias correction (SBA).
Best forSKU-level intermittent demand - items that don't sell every period. The forecastability module flags which entities should use this model.
WeaknessAt aggregate facility level, ETS typically wins. Designed specifically for sparse, intermittent series.
XGBoost
Gradient boosted decision trees
Machine Learning
Builds decision trees sequentially, each correcting errors of the previous. Receives a rich feature matrix: revenue lags (1-12 months), rolling averages, calendar features, YoY growth rate, and backlog and quote activity lags where available. Forecasts future months recursively.
Best forComplex, non-linear relationships between pipeline activity and revenue. Benefits most when backlog correlation is strong.
WeaknessRisk of overfitting on short series. Requires at least 24 months for meaningful lag features. Slower than ETS.
LightGBM
Leaf-wise gradient boosted trees
Machine Learning
Shares XGBoost's feature matrix but uses leaf-wise tree growth rather than level-wise, which often fits sparse patterns better on small datasets. Faster training makes it the preferred gradient booster inside walk-forward validation loops across many entities.
Best forSame profile as XGBoost. Use when training speed matters - particularly across large portfolios with many entity-grain combinations.
WeaknessSimilar overfitting risk to XGBoost on short series. FVA comparison per entity determines which gradient booster wins.
CatBoost
Ordered boosting with native regularization
Machine Learning
Uses ordered boosting to reduce target leakage during training - well suited to the recursive time-series setting where rows are temporally ordered. Strong default L2 regularization prevents overfitting on the small per-entity datasets typical at L2 grain. Feature set mirrors XGBoost and LightGBM for direct FVA comparison.
Best forL2 grain entities where XGBoost and LightGBM overfit. Ordered boosting handles small, temporally structured datasets better.
WeaknessSlower training than LightGBM. Results often close to XGBoost - worth comparing on FVA before deploying.
Booking Curve
Backlog coverage at forecast horizon
Analytical
Computes the fraction of revenue already in the order book when forecasting H months ahead. Coverage at 1 month = fraction of revenue already ordered with a lead time of 30+ days. Coverage at 6 months = 180+ days. These coverage fractions become lag features in the XGBoost, LightGBM, and CatBoost models.
Best forManufacturing entities with meaningful backlog data and longer lead times. High coverage = the near-term forecast is mostly already committed.
WeaknessRequires clean pipeline bin data by lead time bucket. Coverage falls to zero where backlog history is unavailable or unreliable.

The MRP Input File is what closes the loop. Excel reports and Marquis IQ serve the finance and planning teams. The MRP file serves the ERP - a structured, ERP-formatted upload that converts model predictions into the demand plan format each system expects for material requirements planning. Without it, the forecast informs decisions people make manually. With it, the model's output directly influences purchase order generation, production scheduling, and safety stock calculations. The data came from the ERP. The forecast goes back in.

AI: turning numbers into plain English

The statistical models - ETS, Prophet, XGBoost - handle the forecasting mathematics. AI (Claude, OpenAI, and similar language models) plays a different role in the pipeline: it translates what the models produce into language that non-technical stakeholders can act on.

When the model's residual spikes unusually in a period - a segment that was expected to generate $2.1M came in at $3.4M - AI generates a plain-language explanation of what changed based on the data context available: which customers contributed to the over-performance, whether the pattern is consistent with prior seasonal behavior, and whether it signals a structural shift or a one-period event. The model surfaces the anomaly. AI explains it.

The same pattern applies to model health monitoring. When FVA drops below zero in a specific segment, AI flags the issue and communicates it to the planning team: "The model for Foodservice at Indianapolis is currently underperforming the naive baseline. The most likely cause is the step-change in order patterns following the March distribution agreement. Consider retraining with a shortened history window that excludes the pre-agreement period." That communication requires no statistical background from the reader.

For board and executive reporting, AI converts the forecast table into a narrative: what the model expects, where performance is ahead or behind structural baseline, and which segments carry the highest uncertainty in the forward period. The finance team stops writing the same descriptive paragraph every month and starts reviewing AI-generated drafts that are grounded in the actual model outputs.

Related reading: Why Manufacturing Demand Planning Fails covers the data foundation this pipeline requires. Beyond the 12-Month Forecast covers how PE operators use the model outputs as business intelligence.

Common questions

Questions about building and maintaining a connected forecasting pipeline for manufacturing.

Why does the forecasting pipeline aggregate daily ERP transactions to monthly?
Monthly aggregation is a deliberate design choice driven by three factors. First, business planning cycles - budgets, performance reviews, procurement contracts, and production schedules - all operate at monthly cadence. Aligning the forecast to the same interval makes the output directly usable without conversion. Second, signal-to-noise ratio: daily transactions at item or customer level have substantial noise relative to underlying demand patterns. Monthly aggregation smooths transient variation and exposes the seasonal and trend components the model needs to learn. Third, model practicality: monthly aggregation reduces the training dataset to a manageable size while preserving the full history needed for seasonal decomposition - typically 24 to 36 periods.
What is an MRP forecast file and why does it matter?
An MRP (Material Requirements Planning) forecast file is a structured, ERP-formatted upload that converts model output into the demand plan format the ERP expects for its planning engine. Without this step, a forecast is an analytical output that informs decisions people make manually. With this step, the model's predictions directly influence purchase order generation, production scheduling, and safety stock calculations in the system that runs the business. Each ERP platform has a specific format and import process for demand plans. A well-built forecasting pipeline generates the appropriate format automatically for each entity in the portfolio.
What is Forecast Value Added and how does it validate the pipeline?
Forecast Value Added (FVA) measures whether a model is worth using by comparing it to a naive baseline. FVA = MAE(Naive) minus MAE(Model). A positive FVA means the model outperforms the naive baseline and is adding value. A negative FVA means the naive approach would have been more accurate - a signal to investigate data quality, grain definition, or history length rather than a reason to switch models. The naive seasonal baseline - last year's same month, adjusted for trend - represents the minimum acceptable performance bar. Any model that cannot consistently beat it should not be driving operational decisions.
What role does AI play in a forecasting pipeline - does it replace the statistical models?
AI does not replace the statistical models. ETS, Prophet, and XGBoost handle the forecasting mathematics. AI plays a different role: interpretation and plain-language communication. When the residual spikes unusually, AI generates a plain-language explanation of what changed and likely why. When model accuracy drops in a segment, AI flags the issue and suggests investigation paths. When the forecast needs to be summarized for a board presentation, AI converts the model output into an executive narrative. AI is the communication layer that makes statistical output accessible to the non-technical stakeholders who need to act on it - not a replacement for the models that produce those outputs.

The pipeline is the moat. Build it once. Run it forever.

Marquis IQ certified connectors, conformed master data, and Azure SQL give the Python runbook everything it needs. The data foundation is already there - the forecasting competency is the next layer on top of it.