Preview warehouse stock movements, transport orders and internal deliveries, issuing one approval token.
Per-operation required parameters:
* ``movement`` — documentless booking. kind + article_id or
article_number + quantity (omit for serial-tracked) + places:
INCOMING_WITHOUT_REFERENCE -> target_storage_place_id;
OUTGOING_WITHOUT_REFERENCE -> source_storage_place_id;
DIRECT_TRANSFER (same warehouse) -> source + destination
storage place. Tracked stock: serial_numbers / batch_number;
optional batch_expiration_date, valuation_price, movement_note.
* ``internal_delivery`` — warehouse-to-warehouse via INTERNAL
shipment (the only cross-warehouse channel). mode (CREATE_ONLY |
COMPLETE_NOW) + source/destination_warehouse_id + items.
* ``transport_order`` — same-warehouse pick/transit/put-down
(Transportauftrag). mode (CREATE_ONLY | COMPLETE_NOW | RESUME);
RESUME needs transportation_order_id, create modes
destination_storage_place_id + items (each with
source_storage_place_id); optional loading-equipment pair.
Args:
operation: ``movement``, ``internal_delivery`` or
``transport_order``; foreign parameters are rejected.
items: {article_id/article_number, quantity (omit for serial
articles), source_storage_place_id?, batch_number?,
serial_numbers?}.
Full semantics: get_schema(entity="warehouseStockMovement",
detail="payload_guide"). Receipts: preview_entity_action
purchaseOrder.bookIncomingGoods. Customer shipments: salesOrder.createShipment.
Returns plan + approval + 'execution', or diagnostics
(ready_for_write=false).
when_to_use: corrections, found/lost stock, scrapping, seeding,
relocations, inter-warehouse deliveries; after the user explicitly confirms, execute_approved.
preconditions: STORABLE articles; exact serial/batch identity;
stock available at the source.
post_effects: no ERP mutation; the token binds the plan and live
stock baseline — drift forces a fresh preview.
ConnectorOAuth