Wholesale stall trading: workflow routing for document comparison

Review workflow routing for document comparison in Wholesale stall trading. Check sources, input boundaries, error handling and repeatable test evidence.

What the documents look like

Wholesale market stall trading runs on four kinds of paper: purchase notes, handwritten sales slips, stall lease contracts, and payment receipts. Deals are fragmentary. Price is argued on the spot, the slip is written by hand, payment is often settled in instalments, and the shipping waybill travels alongside the sales slip. Data sources include stall inventory, WeChat payment records, and logistics waybills, updated daily or per order.

Each document plays a different role in contract and transaction material comparison. The stall lease contract fixes the stall subject and the lease period. The handwritten sales slip records the item name, quantity, and amount of a single sale. The payment receipt reflects money already received. The purchase note reflects the source of goods. Across these four materials, subject, amount, and period frequently do not line up directly, so comparison requires field-by-field confirmation of the basis used. A single field cannot complete a full reconciliation.

Constraints at the workflow routing step

Workflow routing here carries three duties: collecting materials, checking fields, and carrying results forward. When the Form Input node is triggered, the conversation enters an interactive state, records the workflow state, and waits for the user to complete the interaction. Required information is collected and, after submission, passed to subsequent nodes. The User Selection node also enters an interactive state; when the user makes a choice, the node evaluates that choice and executes the corresponding branch. The interactive state and state recording are existing behaviours of these two interaction nodes. No additional global state switch exists.

Hypothetical drill sample. A stall operator and a purchaser need to reconcile a batch of goods. The three source sentences supplied for comparison are: one, the stall lease contract states "the lessor is a market management office, the lessee is a stall operator, the lease runs from 1 January 2024 to 31 December 2024, stall number B-12". Two, the handwritten sales slip states "5 March 2024, sold to a purchaser, item A, quantity 200 pieces, unit price 8 yuan, amount 1,600 yuan, signed by the stall operator". Three, the payment receipt states "20 March 2024 received 1,000 yuan from a purchaser, balance 600 yuan outstanding". One draft sentence awaits a decision: "This transaction was settled in full on 20 March 2024." The comparison task is to judge whether that draft sentence is consistent with the three materials.

Routing constraints follow from this. Fields collected by the Form Input node need to correspond one-to-one with material fields. The User Selection node marks the comparison conclusion branch. A retrieval or judgement node carries the form output forward. Order writing, document backfill, and external status synchronisation require a separate business interface; neither the form nor retrieval constitutes authorised execution.

Configuration and implementation checks

The configuration below concerns the hypothetical sample above and lists only documented settings or implementation checks relevant to this feature and the primary task.

Configuration itemHypothetical starting point for this trialReason for the choice and method of comparison
Form Input node fieldsSix items: subject, object, date, quantity, amount, statusAligned with the fields of the three sample materials; compare output against input item by item
User Selection node branchesThree branches: consistent, inconsistent, to be verifiedVerify each branch connection; confirm the corresponding branch executes after a choice
Output receiving nodePass form output to a judgement nodeCompare the judgement node input against the form output item by item
Retrieval scopeLimited to the target material library within access rightsConfirm materials fall inside the accessible scope; where missing, record the gap
Interactive state checkState recording is an existing behaviour of interaction nodesCheck whether an interactive state is entered after triggering; no separate global switch is set
External action divisionOrder writing and document backfill use a separate interfaceConfirm external actions are carried by a downstream interface; the form does not perform writes

Three common errors

  1. Treating form submission as authorised execution. The Form Input node only collects information and passes it to subsequent nodes; order writing and external synchronisation require a separate interface. If form submission is taken as the basis for settlement or for an order taking effect, the input and the comparison object are misaligned, and the observed result drifts from the source wording.
  2. Treating a User Selection branch as automatic judgement. The User Selection node executes the corresponding branch after the user makes a choice; the branch conclusion comes from the user's choice, not from automatic system determination. If the branch result is taken as an automatic system finding on material consistency, the comparison basis is replaced.
  3. Treating retrieval results as a permission or entity isolation measure. A relevance score does not carry permission filtering duties, and retrieval does not replace an authorisation check. If a retrieval hit is used as proof that a material is accessible or that a subject matches, the input scope and the authorisation boundary diverge, and the observed result cannot support the conclusion.

How to verify the setup

  1. Use the three source sentences from the hypothetical sample above and the draft sentence "This transaction was settled in full on 20 March 2024." as input. Compare the "settled in full" status in the draft against the payment receipt wording "balance 600 yuan outstanding". If the draft status and the receipt status are inconsistent, the finding is to be verified, not settled. The expectation is to be verified; no claim of actual testing is made.
  2. Use the same hypothetical sample and compare the six Form Input node fields against the three materials item by item. Compare whether subject, object, date, quantity, amount, and status share the same subject, the same period, and the same field. If a field is not stated in the materials, record it as unsupported rather than as a contradiction. The expectation is that some fields are unsupported; no claim of actual testing is made.
  3. Use the same hypothetical sample and check the three User Selection branch connections. Compare whether the "consistent", "inconsistent", and "to be verified" branches all connect to downstream nodes and whether the corresponding branch executes after a choice. If a branch is not connected, record it as a branch gap. The expectation is that branch connections are complete; no claim of actual testing is made.