Aiden WMS

Sales Return Request

TL;DR — Aiden WMS Sales Return Mapper
  • Purpose: Turn an open SAP B1 sales return/return request into a WMS inbound return request for receiving work. WMS endpoint: InboundReturnRequest. Fixed defaults: handling=Manual, priority=3, header/line customFields.objectType=SalesReturn.

  • Flow & Correlation: B1 return doc → mapper builds InboundReturnRequest → publishes to WMS → correlation.correlationId copied from the Kafka message key for traceability.

  • Inputs used:

    • Header: DocNum, DocEntry, CardCode/Name, DocumentStatus, PartialSupply, DocObjectCode, PickRemark, NumAtCard.

    • Ship-to: AddressExtension.ShipTo* fields.

    • Lines: DocumentLines[] (RemainingOpenQuantity, VisualOrder, BaseType/BaseEntry/BaseLine, UoM, WarehouseCode, LineStatus, ShipDate, TreeType, FreeText, LineNum, UoMEntry).

    • Expenses: Header DocumentAdditionalExpenses and Line DocumentLineAdditionalExpenses.

    • Hourly warehouse list: WarehouseCode, U_AEN_WHS_Picking (Y/N) to filter lines.

    • Internal sales-BOM helper from lines with TreeType=iSalesTree to compute BOM flags/quantities.

  • Which lines are sent: Only lines whose WarehouseCode is picking-enabled (U_AEN_WHS_Picking=Y). Others are omitted.

  • Document identity: data.documentId = "SO-" + DocNum (e.g., SO-950).

  • Statuses:

    • Header: data.status = DocumentStatus without “bost_”, with Close→Closed.

    • Lines: lines[].status = LineStatus without “bost_”, Close→Closed.

  • Partial delivery flags:

    • data.partialDelivery ⇐ PartialSupply (tYES→true, tNO→false).

    • lines[].partialDelivery ⇐ BackOrder (tYES→true, tNO→false).

  • Object types:

    • data.objectType from DocObjectCode valuemap: oOrders→Orders, oDeliveryNotes→DeliveryNotes, oStockTransferRequests→StockTransferRequests, oPurchaseOrders→PurchaseOrders.

    • customFields.objectType on header and lines is always SalesReturn.

  • Quantities & numbering:

    • lines[].quantity = RemainingOpenQuantity (open return qty; not ordered qty).

    • lines[].documentLine = VisualOrder + 1; lines[].customFields.lineNum = LineNum (original B1 line).

  • UoM on lines:

    • If UoMEntry != -1 → uomCode = UoMCode.

    • If UoMEntry = -1 → uomCode = "m" + MeasureUnit (empty measure → "m").

    • Copy UoMEntry to lines[].customFields.UoMEntry.

  • Ship-to address (header):

    • street/addressId = ShipToStreet + " " + ShipToStreetNo (no separate streetNumber).

    • city/zipCode/county/country from ShipTo fields.

  • Sales BOM (lines[].salesBom): Present only for TreeType in {iSalesTree, iIngredient}.

    • salesBom.parent = true if iSalesTree; respectSingleQuantity = true on parents.

    • salesBom.parentLine = 1 + max(parent VisualOrder) less than the current line’s VisualOrder.

    • salesBom.singleQuantity = line Quantity ÷ last matching parent qty (based on sales-tree helper).

  • Base document references (per line): Copy BaseType/BaseEntry/BaseLine into lines[].customFields.* for traceability.

  • Customer reference: If NumAtCard is filled, send it as a dynamic header custom property named NumAtCard.

  • Expenses:

    • Header expenses → data.customFields.DocumentAdditionalExpenses[].

    • Line expenses → lines[].customFields.DocumentAdditionalExpenses[].

    • Fields copied: ExpenseCode, LineTotal, GroupCode, DistributionMethod, VatGroup, LineNum.

  • Not mapped / caveats: No bill-to; header receiveDate/pickDate not wired (line receiveDate comes from ShipDate); prices/VAT/discounts/currency not mapped; owner not mapped; DocumentSpecialLines ignored; production BOMs not treated as sales BOM; closed lines can still map if warehouse is picking-enabled; sample scenario target is a placeholder (not expected output).

  • End-to-end expectation: B1 return is published → warehouses loaded (hourly) and sales-tree helper built → mapper outputs InboundReturnRequest with SO-DocNum, BP, ship-to, picking-enabled lines using RemainingOpenQuantity, visual-order numbering, statuses/UoM/BOM/base refs → trace via correlation.correlationId, header customFields.DocEntry, and line base refs.

  • Consultant checklist:

    • Ensure U_AEN_WHS_Picking=Y for all warehouses that should create WMS return work.

    • Validate RemainingOpenQuantity reflects what’s still to be received.

    • Maintain Ship-to fields in AddressExtension.

    • Understand UoM -1 fallback ("m" + MeasureUnit).

    • For BOM returns, use TreeType iSalesTree/iIngredient with consistent VisualOrder.

    • Keep BaseType/BaseEntry/BaseLine on lines for origin tracing.

    • Expect handling=Manual, priority=3, custom object type SalesReturn, and SO- prefix on every document.

Functional documentation for the Aiden WMS sales return mapper.

This document describes what happens after the mapper is installed: which SAP Business One (B1) sales return / return request data is sent to Aiden WMS, how values are translated, and which business rules apply. It is intended for end-users and functional consultants.


1. Overview



Source

SAP B1 sales return / return request document (Service Layer document JSON)

Target

Aiden WMS inbound return document (InboundReturnRequest)

Purpose

Convert an open B1 return document into a WMS inbound return request for warehouse receipt processing

After installation, when a return document is published to the integration, the mapper produces a WMS document that contains:

  • Document identity (with SO- prefix) and type labels for returns

  • Customer (business partner)

  • Ship-to address

  • Return lines for picking-enabled warehouses only, with remaining open quantity

  • Line references back to the base B1 document (BaseType / BaseEntry / BaseLine)

  • Optional sales BOM structure on BOM-related lines

  • Optional freight/expenses

  • Correlation id for tracking

Fixed business defaults

These values are always set by the mapper (not taken from B1):

WMS field

Fixed value

Meaning for WMS

data.handling

Manual

Manual handling mode in WMS

data.priority

3

Default priority

data.customFields.objectType

SalesReturn

Custom object type label for returns

lines[].customFields.objectType

SalesReturn

Same label on every line

Note: A constant SalesReturn also exists in the mapping near header fields historically associated with baseType. Header data.receiveDate is present in the output schema but is not wired in the current MapForce mapping. Line receiveDate is mapped from ShipDate.

Key differences vs sales-order mapper

Topic

Sales order mapper

This sales return mapper

Kafka / WMS endpoint

OutgoingDocument

InboundReturnRequest

data.documentId

DocNum as-is

SO- + DocNum

Line quantity

Quantity

RemainingOpenQuantity

documentLine

LineNum

VisualOrder + 1

Custom object type

Orders

SalesReturn

Header internal key

often customFields.externalId

customFields.DocEntry

Line base document refs

typically not

BaseType / BaseEntry / BaseLine

Header date field

pickDateDocDueDate

Header receiveDate not mapped; line receiveDateShipDate

Special lines

text special lines mapped

DocumentSpecialLines not mapped


2. What the mapper uses as input

2.1 Main payload — B1 return document

The primary input is the full B1 document JSON (schema named input_sales_order in MapForce for historical reasons), including for example:

  • Header: DocNum, DocEntry, CardCode, CardName, DocumentStatus, PartialSupply, DocObjectCode, PickRemark, NumAtCard

  • Ship-to address: AddressExtension.ShipTo*

  • Lines: DocumentLines[] (including RemainingOpenQuantity, VisualOrder, BaseType / BaseEntry / BaseLine, UoM, warehouse, tree type, etc.)

  • Header additional expenses: DocumentAdditionalExpenses[]

  • Line additional expenses: DocumentLineAdditionalExpenses[]

2.2 Warehouse list (automatic)

The integration periodically loads warehouses from B1:

  • WarehouseCode

  • U_AEN_WHS_Picking (Y / N)

  • (also retrieved but not used in field mapping: EnableBinLocations, DefaultBin)

Business impact: only return lines whose warehouse is marked as picking-enabled (U_AEN_WHS_Picking = Y) are sent to WMS.

2.3 Sales BOM helper data (automatic)

From the same document, the integration builds a helper list of lines where:

  • TreeType = iSalesTree (sales BOM parent lines)

That list is used only to calculate sales BOM parent/child quantities and parent line references on the WMS lines. Consultants do not need to supply this separately.

2.4 Correlation id

The message correlation id (integration message key / Kafka key) is written to:

  • correlation.correlationId

Use this to trace a WMS document back to the integration message.


3. Business behavior

3.1 Which lines are sent to WMS?

A B1 document line is included in data.lines only when its WarehouseCode matches a warehouse with U_AEN_WHS_Picking = Y.

Lines for warehouses with U_AEN_WHS_Picking = N (or unknown warehouse) are not sent to WMS.

Configure picking warehouses correctly in B1 (U_AEN_WHS_Picking) before go-live. Otherwise returns may arrive in WMS with missing lines.

3.2 Document id prefix

WMS data.documentId is built as:

  1. Constant prefix SO-

  2. Concatenated with B1 DocNum

Example: B1 DocNum = 950 → WMS documentId = SO-950.

3.3 Document and line status

B1 statuses look like bost_Open / bost_Close.

The mapper:

  1. Removes the bost_ prefix → Open / Close

  2. Translates CloseClosed (other values stay as-is, e.g. Open)

Applied to:

  • Header: DocumentStatusdata.status

  • Line: LineStatuslines[].status

B1 value

WMS value

bost_Open

Open

bost_Close

Closed

3.4 Partial delivery flags

B1 tYES / tNO flags are converted to booleans:

B1 field

WMS field

Translation

PartialSupply

data.partialDelivery

tYEStrue, tNOfalse

Line BackOrder

lines[].partialDelivery

tYEStrue, tNOfalse

3.5 Object type (data.objectType)

B1 DocObjectCode

WMS data.objectType

oOrders

Orders

oDeliveryNotes

DeliveryNotes

oStockTransferRequests

StockTransferRequests

oPurchaseOrders

PurchaseOrders

Separately, custom object type on header and lines is always the constant SalesReturn (not driven by DocObjectCode).

3.6 Quantity on lines

WMS field

Source

Rule

lines[].quantity

DocumentLines.RemainingOpenQuantity

Direct — open remaining quantity, not ordered Quantity

For returns, WMS receives what is still open to receive/return. Fully closed quantities will appear as zero (or whatever B1 reports as remaining open).

Ordered Quantity is still used inside sales BOM single-quantity calculations when BOM parents apply (see §3.10).

3.7 Document line number

WMS field

Source

Rule

lines[].documentLine

VisualOrder

VisualOrder + 1

lines[].customFields.lineNum

LineNum

Direct B1 line number

So WMS documentLine is visual-order based (1-based offset), while customFields.lineNum keeps the original B1 LineNum.

3.8 Unit of measure on lines (uomCode)

For each line:

  1. If UoMEntry is not -1 → use UoMCode

  2. If UoMEntry is -1 → use "m" + MeasureUnit

    • If MeasureUnit is missing, an empty string is used after m (result can be just m)

UoMEntry is also copied unchanged to lines[].customFields.UoMEntry.

3.9 Ship-to address

Address is taken from ship-to fields on the document (AddressExtension), not bill-to.

WMS address field

Source

street

ShipToStreet + space + ShipToStreetNo (street no. omitted / empty when null)

addressId

Same concatenated street value as street

city

ShipToCity

zipCode

ShipToZipCode

county

ShipToCounty

country

ShipToCountry

streetNumber

Not mapped as a separate field (folded into street)

3.10 Sales BOM structure (lines[].salesBom)

B1 tree types used:

TreeType

Meaning in this mapper

iSalesTree

Sales BOM parent

iIngredient

Sales BOM ingredient/child

Other (e.g. iProductionTree, empty)

Not treated as sales BOM

When is salesBom present on a line?

  • Only if the line is a sales BOM parent or ingredient (iSalesTree or iIngredient).

  • Otherwise the salesBom object is omitted.

Fields:

WMS field

Rule

salesBom.parent

true when TreeType = iSalesTree, else false (for BOM-relevant lines)

salesBom.respectSingleQuantity

true when TreeType = iSalesTree; for other BOM-relevant cases the false branch is empty in the mapping (effectively only set meaningfully on parents)

salesBom.parentLine

For sales-tree parents: 1 + highest BOM parent VisualOrder that is still less than this line’s VisualOrder (from the sales-tree helper list)

salesBom.singleQuantity

For sales-tree parents: line Quantity divided by the last matching BOM parent quantity among helper lines with VisualOrder less than this line’s VisualOrder

Practical expectation for consultants:

  • Sales BOM parents and ingredients are flagged in WMS via salesBom.

  • Parent kit lines get parent = true and respectSingleQuantity = true.

  • Quantity/parent-line calculations depend on VisualOrder ordering of sales-tree lines on the B1 document.

  • Non-BOM lines do not get a salesBom block.

3.11 Base document references on lines

For each included line, B1 base document fields are copied into line custom fields:

WMS field

B1 source

lines[].customFields.BaseType

DocumentLines.BaseType

lines[].customFields.BaseEntry

DocumentLines.BaseEntry

lines[].customFields.BaseLine

DocumentLines.BaseLine

These support tracing a return line back to the originating B1 document/line (e.g. delivery or invoice base).

3.12 Customer reference (NumAtCard)

If filled in B1, NumAtCard is sent as a dynamic custom property:

  • Property name: NumAtCard

  • Property value: the B1 NumAtCard value

(Output schema path: dynamic property / property.name under header customFields.)

3.13 Additional expenses

  • Header DocumentAdditionalExpensesdata.customFields.DocumentAdditionalExpenses[]

  • Line DocumentLineAdditionalExpenseslines[].customFields.DocumentAdditionalExpenses[]

Copied fields: ExpenseCode, LineTotal, GroupCode, DistributionMethod, VatGroup, and line number (LineNum).

3.14 Special lines

DocumentSpecialLines exists on the B1 input schema but is not mapped in this MapForce definition. Text/special lines are not sent to WMS by this mapper.

3.15 Integration endpoint

After mapping, the Camel route sets the outbound HTTP/WMS endpoint header to:

  • InboundReturnRequest

This is an inbound return flow for WMS (not an outgoing pick document).


4. Field mapping tables

Legend:

  • WMS output field — path in the Aiden WMS return document

  • B1 / source input — field on the return document or other source

  • What happens — copy or transformation

  • Notes — consultant-relevant remarks

4.1 Correlation

WMS output field

B1 / source input

What happens

Notes

correlation.correlationId

Integration message key

Direct copy

Used for end-to-end tracing

4.2 Document header (data)

WMS output field

B1 / source input

What happens

Notes

data.documentId

DocNum

Concatenate constant SO- + DocNum

e.g. SO-950

data.handling

Constant Manual

Always

data.priority

Constant 3

Always

data.status

DocumentStatus

Strip bost_ + CloseClosed

See §3.3

data.objectType

DocObjectCode

Value map

See §3.5

data.partialDelivery

PartialSupply

tYES/tNO → boolean


data.details

PickRemark

Direct


data.receiveDate

Not mapped

Schema field only

data.owner

Not mapped

Remains empty/absent

data.customFields.DocEntry

DocEntry

Direct

Internal B1 key (header)

data.customFields.objectType

Constant SalesReturn

Always

Dynamic property NumAtCard

NumAtCard

Name constant + value copy

Only meaningful when filled in B1

4.3 Business partner

WMS output field

B1 / source input

What happens

Notes

data.businessPartner.businessPartnerId

CardCode

Direct


data.businessPartner.name

CardName

Direct


4.4 Address (data.address)

WMS output field

B1 / source input

What happens

Notes

data.address.addressId

ShipToStreet + ShipToStreetNo

Concatenate with space; null street no. → empty

Same value as street

data.address.street

ShipToStreet + ShipToStreetNo

Same as addressId

Ship-to only

data.address.city

ShipToCity

Direct


data.address.zipCode

ShipToZipCode

Direct


data.address.county

ShipToCounty

Direct


data.address.country

ShipToCountry

Direct


data.address.streetNumber

Not mapped

Included in street concat

4.5 Lines (data.lines[])

Only lines for picking-enabled warehouses (§3.1).

WMS output field

B1 / source input

What happens

Notes

lines[].documentLine

DocumentLines.VisualOrder

VisualOrder + 1

Not raw LineNum

lines[].warehouseId

DocumentLines.WarehouseCode

Direct

Must be picking-enabled

lines[].itemId

DocumentLines.ItemCode

Direct


lines[].quantity

DocumentLines.RemainingOpenQuantity

Direct

Open qty for return/receive

lines[].uomCode

UoMEntry, UoMCode, MeasureUnit

Conditional — see §3.8


lines[].status

DocumentLines.LineStatus

Strip bost_ + CloseClosed


lines[].receiveDate

DocumentLines.ShipDate

Direct

Line-level receive date

lines[].partialDelivery

DocumentLines.BackOrder

tYES/tNO → boolean


lines[].details

DocumentLines.FreeText

Direct


lines[].customFields.lineNum

DocumentLines.LineNum

Direct

Original B1 line number

lines[].customFields.UoMEntry

DocumentLines.UoMEntry

Direct


lines[].customFields.externalId

Header DocEntry

Direct

Document internal key on the line

lines[].customFields.objectType

Constant SalesReturn

Always on included lines

lines[].customFields.BaseType

DocumentLines.BaseType

Direct

Base document type

lines[].customFields.BaseEntry

DocumentLines.BaseEntry

Direct

Base document entry

lines[].customFields.BaseLine

DocumentLines.BaseLine

Direct

Base document line

4.6 Sales BOM on lines (lines[].salesBom)

Only for TreeType in (iSalesTree, iIngredient) — see §3.10.

WMS output field

B1 / source input

What happens

Notes

salesBom (object present?)

TreeType

Present if parent or ingredient

Omitted otherwise

salesBom.parent

TreeType

true if iSalesTree, else false


salesBom.respectSingleQuantity

TreeType

true if iSalesTree


salesBom.parentLine

Line VisualOrder + sales-tree helper VisualOrder

1 + max helper visual order < current

Parents/BOM calc

salesBom.singleQuantity

Line Quantity + helper quantities / visual orders

Quantity ÷ last matching parent qty

Per-single-parent qty

4.7 Line additional expenses

WMS output field

B1 / source input

What happens

Notes

lines[].customFields.DocumentAdditionalExpenses[].ExpenseCode

Line expense ExpenseCode

Direct


...LineTotal

LineTotal

Direct


...GroupCode

GroupCode

Direct


...DistributionMethod

DistributionMethod

Direct


...VatGroup

VatGroup

Direct


...LineNum

LineNum

Direct

B1 line expense number

4.8 Header additional expenses

WMS output field

B1 / source input

What happens

Notes

data.customFields.DocumentAdditionalExpenses[].ExpenseCode

Header ExpenseCode

Direct


...LineTotal

LineTotal

Direct


...GroupCode

GroupCode

Direct


...DistributionMethod

DistributionMethod

Direct


...VatGroup

VatGroup

Direct


...LineNum

LineNum

Direct



5. Value translations (reference)

5.1 Yes/no flags

B1

WMS

tYES

true

tNO

false

5.2 Warehouse picking flag

B1 U_AEN_WHS_Picking

Meaning in mapper

Y

Warehouse lines are sent to WMS

N

Warehouse lines are not sent to WMS

5.3 Status

After removing bost_

Final WMS status

Open

Open

Close

Closed

Other

Unchanged (passthrough)

5.4 Document object code

B1

WMS

oOrders

Orders

oDeliveryNotes

DeliveryNotes

oStockTransferRequests

StockTransferRequests

oPurchaseOrders

PurchaseOrders

5.5 Sales tree types

B1 TreeType

Mapper treatment

iSalesTree

Sales BOM parent

iIngredient

Sales BOM ingredient/child

Other

No salesBom block

5.6 Fixed constants

Constant

Used for

SO-

Prefix of data.documentId

Manual

data.handling

3

data.priority

SalesReturn

Header and line customFields.objectType

m

UoM fallback prefix when UoMEntry = -1

-1

UoM entry comparison

NumAtCard

Dynamic property name

iSalesTree / iIngredient

Sales BOM detection

bost_

Status prefix stripped


6. What is not mapped / important omissions

Consultants should not expect the following from this mapper:

Topic

Behavior

Bill-to address

Not mapped (ship-to only)

Header receiveDate / pickDate

Header date fields not wired; only line receiveDate from ShipDate

Prices, VAT, discounts, currency

Not mapped to WMS core fields

Sales employee / owner

data.owner not mapped

Ordered line Quantity as WMS qty

WMS qty uses RemainingOpenQuantity instead

DocumentSpecialLines

Present on input schema but not mapped

Non-picking warehouses

Lines suppressed

Production tree BOM (iProductionTree)

Not treated as sales BOM

Closed-line filter

No extra filter beyond status mapping; closed statuses can still map if the line’s warehouse is picking-enabled

Business partner master data beyond CardCode/CardName

Not enriched from BP GET in the MapForce mapping itself

Scenario target sample

scenario_files/1_mainRoute/99_target.json is dummy/placeholder — do not treat it as expected mapped output


7. End-to-end expectation (happy path)

  1. A sales return / return request is created or updated in SAP B1 and published to the integration.

  2. Integration loads picking warehouse configuration from B1 (hourly).

  3. Integration builds a sales-tree helper body from lines with TreeType = iSalesTree.

  4. Mapper converts the document to a WMS return document:

    • Header + BP + ship-to address

    • documentId = SO- + DocNum

    • Only lines on picking warehouses

    • Quantity = remaining open quantity

    • documentLine = visual order + 1

    • Status / partial-delivery / UoM / BOM / base refs applied

    • Custom object type SalesReturn

  5. WMS receives an InboundReturnRequest ready for inbound warehouse processing.

  6. correlation.correlationId, header customFields.DocEntry, and line base refs support support/troubleshooting.


8. Example (illustrative)

Illustrative values based on mappings/input_sales_order.example.json and confirmed MapForce rules.
Project scenario files under scenario_files/1_mainRoute are schema placeholders and are not reliable expected I/O samples.

B1 input (excerpt)

Field

Example value

DocNum / DocEntry

950

CardCode

1000101

CardName

Mattheus Schiller

DocumentStatus

bost_Open

PartialSupply

tYES

DocObjectCode

oOrders

Ship-to street / no.

from AddressExtension

Line

Item e.g. stock item, warehouse 01, RemainingOpenQuantity open, VisualOrder 0-based, optional base refs

WMS output (expected shape)

WMS field

Example result

Endpoint

InboundReturnRequest

data.documentId

SO-950

data.businessPartner.businessPartnerId

1000101

data.businessPartner.name

Mattheus Schiller

data.handling

Manual

data.priority

3

data.status

Open

data.objectType

Orders (from valuemap of oOrders)

data.partialDelivery

true

data.customFields.DocEntry

950

data.customFields.objectType

SalesReturn

Line included?

Only if warehouse has U_AEN_WHS_Picking = Y

lines[].documentLine

VisualOrder + 1 (e.g. visual 0 → 1)

lines[].quantity

From RemainingOpenQuantity

lines[].receiveDate

From line ShipDate

lines[].customFields.objectType

SalesReturn

lines[].customFields.lineNum

B1 LineNum

lines[].customFields.BaseType / BaseEntry / BaseLine

From B1 line when present

lines[].salesBom

Only for iSalesTree / iIngredient


9. Implementation checklist for consultants

  1. Warehouses: set U_AEN_WHS_Picking = Y on every warehouse that must create WMS return work.

  2. Open quantities: ensure B1 remaining open quantities reflect what should still be received in WMS.

  3. Ship-to address: maintain AddressExtension ship-to fields on the return document.

  4. UoM: understand -1 UoM entry fallback (m + measure unit).

  5. Sales BOM: use iSalesTree / iIngredient and consistent VisualOrder if WMS must receive BOM structure.

  6. Base document links: maintain BaseType / BaseEntry / BaseLine on return lines when WMS or support needs origin tracing.

  7. Tracking: use correlation.correlationId, header customFields.DocEntry, and line base refs for support.

  8. Defaults: expect handling=Manual, priority=3, custom object type SalesReturn, and document id prefix SO- on every document.

  9. Do not expect special text lines or header receive/pick dates from this mapper.


10. Source artifacts (for reference)

Artifact

Role

mappings/sales-return-mapper.mfd

MapForce mapping definition (field logic)

mappings/input_sales_order.schema.json

B1 document schema (shared naming with sales order)

mappings/output_order_document.schema.json

WMS document schema

mappings/intermediate.warehouses.schema.json

Warehouse list schema

mappings/input_bom_order.schema.json

Sales-tree helper schema

src/main/java/.../route/MainRoutes.java

Kafka in, BOM prep, endpoint InboundReturnRequest

src/main/java/.../mapper/Mapper.java

MapForce invoke (body, BOM, warehouses, correlationId)

src/main/java/.../route/ConfigurationRoute.java

Hourly warehouse load

scenario_files/1_mainRoute/

Sample placeholders (not full mapped examples)


Generated from the mapping definition and integration behavior in this project. If the MapForce mapping changes, this document should be reviewed and updated.


Maintaining this document

For the original documentation intent, when to update, source-of-truth checklist, and a ready-made refresh prompt, see README.md and the repository AGENTS.md.