Solutions For Kinaxis Maestro

Kinaxis Maestro, fed on your planning calendar.

Maestro recalculates the whole plan the moment an input changes, so it needs a complete and consistent copy of parts, sources, bills of material, stock, open orders and demand from every ERP you run. Lima Backbone builds that copy from SAP and Oracle, checks it before every load, delivers it inside the run window, and returns planned orders to the ERP as acknowledged transactions.

Lima has run the SAP ↔ RapidResponse closed loop since 2021. First load: one dataset, four weeks, fixed price.
KINAXIS MAESTRO · THE LINKED TABLES A PLAN IS BUILT FROM · dark border = loaded firstOnHandstock by type and available dateSAP MARD · MCHB · MSKA · MSLBOracle MTL_ONHAND_QUANTITIES_DETAILCalendar · CalendarDateworking days and shifts per siteSAP TFACS · CRHD shiftsOracle BOM_CALENDARSPartSourceeach way to supply a part: make · buy ·transferSAP MKAL · EINA/EINE · EORD · MARCOracle sourcing rules · ASLScheduledReceiptopen supply: POs, planned and workorders, transfersSAP EKPO/EKET · PLAF · AFPO · EBANOracle PO_LINES_ALL · WIP jobsPartone item at one site, with its planningrulesSAP MARA · MARC · MARMOracle MTL_SYSTEM_ITEMS_BBillOfMaterialcomponents per source, quantity per,effectivitySAP MAST · STKO · STPOOracle BOM_INVENTORY_COMPONENTSIndependentDemandcustomer orders and forecastSAP VBAP/VBEP · PBIM/PBEDOracle OE_ORDER_LINES_ALL · MRPforecastsConstraintcapacity per resourceSAP CRHD · KAKO/KAZYOracle BOM_RESOURCESHistoricalDemandActualshipments for forecasting and peggingSAP LIPS · VBRPOracle WSH_DELIVERY_DETAILSLoad order Lima enforces: Part → PartSource → BillOfMaterial → OnHand · ScheduledReceipt · IndependentDemand → Calendar · Constraint · history
Maestro's plan is built from linked tables. Each box names the SAP and Oracle tables Lima reads to fill it; the dark-bordered ones must exist before the rest can load.
Since 2021
the SAP ↔ RapidResponse closed loop in production
0
rows reaching Maestro with a missing reference — every reference is checked before the load
58,900
PartSources generated from 41,300 production versions and source lists
8–10 weeks
to the first full planning load on recent programs
customer engagements · anonymised
~30 min
220M rows · 615 tables · ~30 GB on 64 vCPU
performance estimate
Every write
acknowledged by the ERP before it counts
product
Step 1 · What Maestro expects

A plan built from linked tables, loaded in the right order

Maestro keeps planning data in tables that reference each other: a source belongs to a part, a bill of material belongs to a source, a receipt belongs to a part and a source. Maestro checks those references as it loads, which is why the order and the completeness of the load matter more than for most targets.

ObjectWhat it holds, in plain wordsWhy the plan needs itSAP sourceOracle source
PartOne item at one site with its planning rules: lot size, safety stock, lead time, planning time fence, unitEvery other record hangs off it; a missing Part rejects everything that references itMARA · MARC · MARMMTL_SYSTEM_ITEMS_B
PartSourceEach way the part can be supplied: made on a production version, bought from a supplier, transferred from another site — with its own lead time and order policyDecides which lead time and which bill of material the plan usesMKAL · EINA/EINE · EORD · MARC special procurementSourcing rules · approved supplier list · routings
BillOfMaterialComponents consumed per unit, per source, with quantity per and effectivity datesDependent demand: what the plan orders for lower levelsMAST · STKO · STPOBOM_BILL_OF_MATERIALS · BOM_INVENTORY_COMPONENTS
OnHandStock by storage location, batch and status, with the date it becomes availableProjected inventory starts hereMARD · MCHB · MSKA · MSLBMTL_ONHAND_QUANTITIES_DETAIL
ScheduledReceiptEvery open supply order: purchase orders and schedule lines, planned orders, production orders, transfers, requisitionsThe supply side of the balanceEKKO/EKPO/EKET · PLAF · AFKO/AFPO · EBANPO_HEADERS_ALL/PO_LINES_ALL · WIP_DISCRETE_JOBS · MRP planned orders
IndependentDemandCustomer orders with requested and confirmed dates and quantities; forecastThe demand side of the balanceVBAK/VBAP/VBEP · PBIM/PBEDOE_ORDER_HEADERS_ALL/LINES_ALL · MRP_FORECAST_DATES
Constraint · CalendarCapacity per resource, working days and shifts per siteMakes the plan feasible in timeCRHD · KAKO/KAZY · TFACSBOM_RESOURCES · BOM_DEPARTMENTS · BOM_CALENDARS
HistoricalDemandActualShipments and billed quantities by periodForecasting and peggingLIKP/LIPS · VBRPWSH_DELIVERY_DETAILS · billed lines
Maestro's data import interfaces accept files and API loads; Lima produces both, as full loads and as net-change loads. Oracle table names are for E-Business Suite; Oracle Cloud ERP is read through its REST and extract interfaces.
Step 2 · Where ERP integrations go wrong for Maestro

Six places the data breaks, and what it does to the plan

These are the problems that show up in every Maestro program, regardless of the tool used to load it. Each one has a cause in how ERPs store data and an effect a planner can see.

Sources hide inside SAP production versions wrong BOM, wrong lead timeSAP keeps "how a part is made" in production versions (MKAL) that pair a bill-of-material alternative with a routing; buying lives in info records and source lists; transfers in special procurement keys on the plant record. Maestro wants one PartSource per way of supply, each with its own bill of material. An integration that loads "the BOM" without resolving production versions gives Maestro one bill of material where the plant runs two, and the plan builds the wrong version at the wrong lead time.
The tables must arrive as one consistent set, in order rejected rows, holes in the planMaestro checks references as it loads. A bill-of-material row for a part that is still missing is rejected; a receipt against an unknown source is rejected. A load that runs table by table without ordering leaves rejected rows in a log and a plan with holes that nobody sees until a shortage appears.
Concurrent planning amplifies small errors one row, every siteBecause Maestro recalculates everything at once, one wrong unit of measure on a component — pieces loaded as cases — multiplies through every parent and every site within seconds of the load. The error is in one row; the effect is everywhere.
Stock has a status and a date supply overstatedSAP stock sits in several tables by status: unrestricted, in quality inspection, blocked, in transit, at a subcontractor, reserved for a sales order. Maestro needs each quantity with its type and the date it becomes usable. Collapsing them into one number overstates supply and hides the stock that is stuck.
Open quantities are a calculation supply double countedAn SAP order line carries ordered, delivered and invoiced quantities across schedule lines and history tables. The open quantity Maestro needs is ordered minus delivered, per schedule line, and a line that was delivered last night must drop out of ScheduledReceipt on the next net-change load or the plan double counts supply.
Engineering change, effectivity and phantoms demand on the wrong partBills of material in high-tech and semiconductor equipment run 15 to 20 levels deep, with dated effectivity, phantom assemblies and components supplied to contract manufacturers on subcontracting orders. If effectivity windows and phantoms are lost in the transformation, dependent demand lands on the wrong part or the wrong date.
Industry flavour: high-tech, semiconductor equipment, aerospace, automotive, life sciences

Semiconductor-equipment and high-tech estates bring the deepest bills of material, frequent engineering changes, configure-to-order variants and contract manufacturers who receive components on subcontracting purchase orders. Aerospace adds serial and lot tracking and program pegging. Automotive adds scheduling agreements with delivery schedules in place of discrete orders. Life sciences adds batches with expiry dates. Each of these has a specific check in Step 4.

Step 3 · How Lima Backbone handles each one

Each problem has a specific answer, and each answer is something you can see

The figure shows the hardest one — turning SAP production versions and source lists into Maestro sources. The table maps all six.

SAP · MATERIAL P-1001 AT PLANT 1000MAESTROMKAL production version PV01BOM alternative 1 + routing 10valid 2025-01-01 → 2026-06-30MKAL production version PV02BOM alternative 2 + routing 20valid 2026-07-01 → openEORD source list · EINE info recordvendor V-77 · planned delivery 21 daysfixed source from 2026-01-01Lima resolves the sourcesone PartSource per way of supplyBOM alternative + routing perversionlead time from the right placePartSource MAKE-PV01lead time from routing 10 · policy fromMARCBillOfMaterial · 14 rowsalternative 1 · effectivity carriedPartSource MAKE-PV02lead time from routing 20BillOfMaterial · 15 rowsalternative 2 · effective 2026-07-01PartSource BUY-V77lead time 21 days · no BOM · supplierV-77Check before load: every make source has at least one BOM row valid on the load date; every buy source has a lead time; effectivity windows are free of overlaps.
ProblemWhat Lima doesThe capability behind itWhat you see
1 · SourcesReads MKAL, EINA/EINE, EORD and the plant record together and generates one PartSource per way of supply, attaching the BOM alternative and routing each production version names; lead time comes from the routing for make, from the info record for buyModel-aware transformation operators for SAP and Oracle; versioned mappingsA source table with counts by type (make, buy, transfer) and the production version behind each
2 · Order and referencesLoads Part → PartSource → BillOfMaterial → OnHand, ScheduledReceipt, IndependentDemand, and checks every reference before the load, so Maestro receives no dangling rowsDependency-ordered orchestration; pre-load referential rulesA load report with zero rejections, or exceptions with owners before anything reaches Maestro
3 · UnitsConverts every quantity to the part's Maestro unit using MARM and Oracle conversions; a missing conversion is an exception for the item ownerQuality rules in plain language with preview on live rowsThe rule, the row and the owner; the load continues with the rest
4 · StockMaps each SAP stock table to OnHand rows with a type and an available date: quality-inspection stock gets its expected release date, blocked stock is excluded or dated per your policy, in-transit stock comes from stock transport ordersRule packs per stock type; policy as a governed rule with an ownerOnHand by type, with the policy that produced it
5 · Open quantitiesComputes ordered minus delivered per schedule line from EKET and EKBE (Oracle: shipments minus receipts) and drops delivered lines through change-data captureChange-data capture with deletes applied; control totals per tableOpen quantity totals reconciled against the ERP's own open-order figures each run
6 · Effectivity and phantomsCarries effectivity dates to every BOM row, flattens or keeps phantom assemblies according to your Maestro setting, and turns subcontracting orders into receipts with component demand150+ operators including BOM explode and flattenEffectivity coverage per assembly; phantom handling stated per part
Step 4 · The checks that run before anything loads

Nine checks a Maestro load runs every night

Every check is a rule with an owner. A failed row is held with the rule and the row; the load continues with the rest and the report says what was held. Examples from the showcase estate:

CheckKindExampleWhen it fails
Every part referenced by a source, BOM, receipt or demand row exists at that siteCompleteness1,204 STPO components at plant 1000 with no MARC recordRows held; exception to the material-master owner; load continues
Every make source has at least one BOM row and a routing valid on the load dateCompletenessPV02 for P-1001 has a BOM alternative with zero valid components on the load dateException to the BOM owner
Quantity-per and units are positive and convertible to the part's unitQualityComponent supplied in cases with no conversion to eachException to the item owner
Effectivity windows are consistent: in-date before out-date, no overlap between alternativesConsistencyAlternative 1 and 2 both valid on 2026-07-01Exception to the BOM owner
Batch stock sums to storage-location stock; storage-location stock sums to plant stockConsistencyMCHB total differs from MARD total for one materialException with both figures side by side
Open order quantity = ordered − delivered, and never negativeQualityA schedule line delivered twice in historyException to the buyer
Confirmed delivery date is on or after the order date; requested quantity ≥ confirmedQuality16 schedule lines with confirmed dates before order datesHeld; exception to the planner
Record counts and quantity control totals per table match the sourceCompletenessEvery table, every loadLoad report stays open until they match
The calendar covers the planning horizon for every siteCompletenessSite 2100 calendar ends 2026-12-31Exception to the site planner
Kinds: completeness (is everything there), consistency (do related numbers agree), quality (is each value valid).
Step 5 · Watching the data flow, correcting it on the way

One screen from the ERP table to the planning object

Load · IndependentDemand · net-change · window 01:00–05:30 · deadline 06:00LINEAGE CAPTURED FROM THIS RUN · EVERY STEP COUNTEDRead VBAP · VBEPSAP ECC · changes since01:006,102,447 rowsConsolidatethree ERPs → one Partcode and unit6,102,447Rule R-021confirmed date ≥ orderdate16 heldConvert→ IndependentDemand rows6,102,431Load Maestronet-change · countsproved6,102,431 · reconciledEXCEPTION · RULE R-021Confirmed delivery date is earlier than the order date16 schedule lines held · 6,102,431 loaded · deadline clock paused 00:00:00Owner: Priya Sharma · planner, site 1000 · due 14:00 todayFix and replay from hereShow the rowsLINEAGE FOR ONE NUMBER · RECORDED FROM THE RUNIndependentDemand.Quantity for Part P-1001 ← Convert ← Rule R-021 ← Consolidate ← VBEP.BMENG, order 4711 item 10 line 1, SAP ECC client 100SHOWCASE ESTATE · the same screen for every load · a fix is applied where the row stopped and the replay starts from that step

Integration suites such as Informatica sell data integration, data quality, the catalog and lineage as separate services on one consumption meter, and a team stitches the four together for each load. Lima runs the four as one surface. The screen above is the same for every load into Kinaxis Maestro: each step from the SAP or Oracle order table to the Maestro IndependentDemand row shows its row count; the rule that stopped a row shows the row and the person who owns the fix; the fix is applied where the row stopped and the replay starts from that step. Column-level lineage is recorded from the run itself, so the trace from a number in Kinaxis Maestro back to the ERP table is current every morning without a scanning project.

Rules in plain language

Checks a planner can read

A rule such as "confirmed date is on or after order date" is written in words, previewed on live rows, versioned, and owned by a named person.

Exceptions with owners

Nothing disappears

A row that fails a rule becomes an exception with the row, the rule, an owner and a deadline. The load carries on with the valid rows and says what it held.

Lineage from the run

Always current

Every step records what it read and wrote at column level, so the trace from a planning number back to the ERP field is captured as a by-product of running.

Governed planning master data

Parameters with owners

Values the ERP never held — hierarchies, changeover matrices, demand-stream rules — live in Lima with an owner and an effective date.

Acknowledged write-back

The loop closes

Results return to the ERP as transactions the ERP confirms; the confirmation is stored and reconciled against what was sent.

Deadlines on the pipeline

The planning run waits for nothing

Each load carries its window and deadline; a tripped rule pauses the run and the clock, and the run resumes from its checkpoint after the fix.

Step 6 · Load, reconcile, return

On the calendar, reconciled, and back to the ERP

Maestro is loaded on its planning calendar; every load ends with a reconciliation report; the plan it produces returns to the ERP as transactions the ERP confirms.

Nightly net-change before the planning run

Changes since the last load, in dependency order, inside the window; counts and control totals per table.

Intraday for order changes

Sales-order and receipt changes every 15 minutes where you want them, so the plan sees today's orders today.

Full load weekly or on demand

A complete refresh with the same checks, used after mass changes or a new site.

What goes back to the ERP

ResultSAP transactionOracle interfaceHow it is confirmed
Planned ordersBAPI_PLANNEDORDER_CREATE · BAPI_PLANNEDORDER_CHANGEWIP job interface (WIP_JOB_SCHEDULE_INTERFACE)Acknowledgement and order number stored against the Maestro record; counts reconciled; failures re-queued with reason
Purchase requisitionsBAPI_PR_CREATEPO_REQUISITIONS_INTERFACE_ALLRequisition number stored; acknowledged and reconciled
Approved master-data correctionsBAPI_MATERIAL_SAVEDATA (lead times, safety stock)Item interfaceSecond-person approval in Lima, then the acknowledged write; visible on the next extraction
Standard released interfaces; the exact objects are confirmed per scope during the assessment.
A first load, step by step

Twenty-two days on the showcase estate

How a first load into Maestro runs, with the checks doing their job. Figures are from the showcase estate.

Day 1
connect
Three ERPs connectedSAP ECC (two plants), SAP S/4HANA (one plant) and Oracle EBS (an acquired unit) connected on open interfaces; the MRP dataset scoped; run window 01:00–05:30 with a 06:00 deadline.
Day 3
inventory
The estate counted2.9 million item-plant records become Parts; 41,300 production versions and source-list entries become 58,900 PartSources; 18.4 million BOM rows; 6.1 million open demand lines.
Day 8
first extraction
The checks find what a load would have hidden1,204 components with no plant record, 312 quantities without a unit conversion, 27 effectivity overlaps and one site calendar ending in December. Each becomes an exception with an owner and a deadline.
Day 12
first load
Zero rejections in MaestroOwners clear the exceptions in Lima; the first full load runs in dependency order; Maestro reports no rejected rows; the reconciliation report matches counts and control totals for every table.
Day 15
net-change
Nights inside the windowNet-change loads run seven nights with the deadline clock; the worst night finishes with 3 hours 32 minutes to spare.
Day 19
write-back
The loop closes41,207 planned orders posted to S/4HANA through BAPI_PLANNEDORDER_CREATE, each acknowledged; the planner sees the confirmation beside the Maestro record.
Day 22
hand-over
LiveRun-window adherence, the reconciliation report and the exception register are handed to the planning COE; the subscription starts.
Partner and certification status

Stated as it is

ProgramWhat it gives youStatus
Kinaxis PartnerLink · Solution ExtensionA Kinaxis-certified application badge planning COEs check forApplication planned · Q4 2026
Maestro agent marketplaceA listing for Lima's ETL-runner agent beside Maestro's own agentsPlanned · after PartnerLink
Systems integrator deliveryDelivery by your SI or ours on the same fixed-scope offerAvailable
Statuses are stated as they are and dated when they change. Badges appear only after they are granted.
Lifecycle

A Maestro integration uses every stage, Return included.

One engine underneath every page in this family. It reads from any source and writes to any target, runs batch loads or change-data streams, handles a nightly delta or a multi-terabyte migration, and is licensed by capacity, so the bill stays the same however many rows move. Lima's fabric answers questions on data in place; Lima Backbone moves, transforms and returns data on a deadline. When to federate and when to pipeline · The Backbone hub.

Terms on this page

Plain definitions

Concurrent planningMaestro's way of recalculating the whole plan at once when an input changes; it depends on a complete and consistent copy of the data.
Production versionSAP's record that says which bill-of-material alternative and which routing make a material at a plant, and when.
PartSourceMaestro's record for one way of supplying a part — make, buy or transfer — with its lead time and order policy.
EffectivityThe dates between which a bill-of-material component applies.
Phantom assemblyA bill-of-material level that exists for design but is never stocked; the plan looks through it to its components.
Net-changeA load that carries only what changed since the last one.
Control totalA sum (quantity, value) computed on the source and the target and compared, alongside record counts.
Acknowledged writeA transaction the ERP has confirmed, with the confirmation stored and reconciled against what was sent.
Questions we hear

Asked before the first load.

Kinaxis has its own data-integration interfaces. Where does Lima fit?

Maestro accepts loads through its file and API interfaces, and Lima produces those loads: the source resolution, the ordering, the checks, the reconciliation and the run-window schedule. Your Kinaxis team keeps its data model, its scenarios and its resources.

We have three ERPs. Does each need its own pipeline?

Each ERP is a source on the same pipeline. Consolidation resolves the item, site and unit differences into one Part code before the load, and the report shows the counts per ERP.

How are subcontracting orders handled?

A subcontracting purchase order becomes a ScheduledReceipt for the finished part and component demand at the subcontractor for the parts you supply, from the order's component list (RESB).

How current is the data between planning runs?

Net-change runs nightly before the planning run, with intraday loads for order changes every 15 minutes where you want them; the dashboard shows lag and window margin.

What comes back to SAP and Oracle?

Planned orders and purchase requisitions through released BAPIs and Oracle open interfaces, plus approved master-data corrections after a second-person approval — each acknowledged and reconciled.

Can we start with one plant?

Yes. One plant or one product family is the usual first dataset; the pattern extends from there.

Run your first load into Maestro

One planning dataset, four weeks, fixed price, with the checks above run on your own data and a reconciliation report at the end.