Qeasy Cloud
Get Started

旺店通 Transfer-In Orders to Kingdee Direct Transfer Orders: 3000-Warehouse Backorder Inventory Sync in Practice

· 尹春锐· Integration Solutions· 28 views· 4 min read
WDTKingdee Cloud供应链集成即时库存调拨入库单轻易云

What This Strategy Solves

A retail enterprise runs multiple warehouses spread across two systems: Kingdee Cloud Sky (Kingdee) handles finance and formal ledger inventory, while 旺店通 handles physical inbound and outbound at stores and regional warehouses. In day-to-day operations, the 3000 warehouse serves as a transit replenishment point, and a common pain point is "goods have physically arrived, but the system inventory has not," which distorts the store stockout alert and delays purchase replenishment. This article focuses on one very specific strategy: syncing 旺店通 transfer-in orders to Kingdee direct transfer orders, using King's standard transfer logic to backorder real-time inventory in the 3000 warehouse so that the inventory numbers in both systems converge to the same level as quickly as possible.

Data Flow and Field Mapping

The entire chain is one-way: 旺店通 → Qeasy data integration platform → Kingdee Cloud Sky. Qeasy plays four roles in the middle: data fetching, cleansing, mapping, and pushing.

Key field mapping (excerpt):

Dimension旺店通 (Source)Qeasy Middle LayerKingdee Cloud Sky (Target)
Document typeTransfer-in orderStandardized as inbound eventDirect transfer order (document type code must be preconfigured in Kingdee)
Document numberERP document numberOriginal number preserved + source system marker addedFBillNo
Item codeProduct numberCode mapping (旺店通 SKU ↔ Kingdee material code)FMaterialId
QuantityInbound quantityUnit unified to base unit of measureFQty
Destination warehouseInbound warehouseWarehouse mapping tableFDestStockId
Source warehouseOutbound warehouseWarehouse mapping tableFSrcStockId
Business dateDocument dateOriginal value preservedFDate
RemarksBusiness remarksPrefix "Source: 旺店通" appendedFNote

Code mapping is the most error-prone part of this chain. It must be maintained centrally in Qeasy's mapping table rather than scattered in scripts.

How to Configure on Qeasy

Configuring this strategy on Qeasy comes down to four steps: source table configuration → field mapping → target interface → trigger and scheduling.

  1. Source table configuration: Pull 旺店通 transfer-in orders (usually incrementally by update time). Be sure to use "approved" as a filter condition so that draft documents do not flow through.

  2. Target interface: Kingdee's direct transfer order interface (save + approve). A common pattern is to split save and approve into separate calls. Qeasy first calls the save interface, then asynchronously calls the approve interface. This prevents a single HTTP timeout from failing the entire batch.

  3. Field mapping: In addition to the table above, pay close attention to: (a) unit conversion (旺店通 uses "pieces" while Kingdee uses "base units," so a conversion is needed in the middle layer); (b) document type code, which must be preconfigured with the corresponding business type in Kingdee; (c) warehouse mapping, because the 3000 warehouse very likely has different codes in the two systems. A centralized mapping table is more robust than hardcoding.

  4. Fault tolerance and retries: Qeasy retries by default based on interface results, but we still recommend adding an idempotency check based on document number in the configuration — when the same transfer-in order is pushed repeatedly, it must not produce two direct transfer orders in the target system.

Implementation Steps

We usually split the rollout of this strategy into three phases:

Phase 1: Incremental Starting Point Do not push historical data first. Only push documents dated from the go-live day onward. The purpose is "first stabilize the pipeline, then handle the backlog." At the customer site, we usually take a baseline snapshot in the early morning — recording the inventory quantity in Kingdee's 3000 warehouse on that day as a comparison baseline.

Phase 2: Full Trigger Once the pipeline is stable, trigger a one-time historical full backfill. We recommend running this during a low business period (for example, early morning on a weekend) and in batches, to avoid crushing King's interface with one oversized batch. The Qeasy data integration platform usually ships with built-in pagination and rate limiting for batch pushing, so the engineer only needs to tune the batch size to a threshold the target system can accept.

Phase 3: Scheduling Frequency In steady state, we recommend an incremental schedule every 5 to 15 minutes. Transfer-in orders require relatively high real-time accuracy, but polling every minute is unnecessary — too frequent overwhelms the interface, too slow leaves the store-facing inventory lagging. Five minutes has proven to be a comfortable interval at most customer sites.

Pitfall Retrospective

Pitfall 1: Warehouse codes differ between the two systems; initial hardcoding blows up three months later when business is adjusted. The robust approach is to maintain the mapping centrally in Qeasy's mapping table. When the business side adds a new warehouse, only one mapping row needs to be added; no script changes are required.

Pitfall 2: Unit conversion is missed. 旺店通's "pieces" and Kingdee's "base unit" are often not 1:1. Without a conversion in the middle layer, the inventory quantity will double or halve. This kind of error is usually discovered only at month-end reconciliation, and the cost is high.

Pitfall 3: Draft documents are pushed through. If 旺店通 does not filter by approval status, unapproved documents will also be pushed, and subsequent approval in Kingdee will fail. Adding one filter at the source side can save a lot of downstream trouble.

Pitfall 4: Save and approve are combined into a single call; once it times out, the entire batch rolls back. Splitting them into two calls, retrying only on save failure, and alerting separately on approve failure produces a more stable chain.

Pitfall 5: Idempotency is missing. When a network jitter causes Qeasy to push the same transfer-in order repeatedly, and the target system has no deduplication logic, the 3000 warehouse inventory will be accumulated twice. We usually use "source document number + document date" as the idempotency key, implemented in Qeasy's preprocessing script.

Applicable and Non-Applicable Scenarios

Applicable: Retail or distribution scenarios where inventory is dispersed across multiple systems and the core warehouse needs to be backordered through transfer logic; environments where the source-side document state machine is stable and the target side has a standard direct transfer order interface.

Not applicable: Scenarios that require strict control via purchase inbound or sales outbound documents (use purchase or sales sync strategies instead); scenarios where the source-side documents are frequently unapproved or modified, causing idempotency keys to fail; and cases where the target side has no standard direct transfer order interface and only a custom document can be used as a substitute.

Original content. Please credit the source when reposting: https://www.qeasy.cloud/insights/solutions/strat-wdt-kingdee-cloud-0874-3000-1301093c

Comments