Skip to content

Fulfillment and Shipping

Record the products leaving your stock for a customer.

  • Sales order is in CREATED or ALLOCATED status.
  • Every line is fully allocated (Allocated = Ordered) before fulfillment can succeed.
  • Items are physically picked and packed.
  1. Open the target sales order.

  2. Open Allocate Inventory and make sure each line reaches full allocation (Allocated = Ordered).

    Allocation modal showing line-level ordered and allocated quantities

  3. Click Fulfill Order.

  4. Review Fulfill Sales Order, then click Confirm Fulfillment.

    Confirming Fulfillment

  5. Check that the order now shows FULFILLED.

    Fulfilled Order detail after successful fulfillment

  • Order status moves to FULFILLED.
  • The shipped products leave On Hand stock.
  • Their reservations clear, so shipped stock is no longer counted as allocated.

Confirm fulfillment when the order is ready to leave, after checking the picked batch against its allocation. Once fulfilled, the normal order actions don’t let you cancel it or record a return.

Sales Order Status to Ledger Impact (Fulfillment)

Section titled “Sales Order Status to Ledger Impact (Fulfillment)”
Sales order statusLedger behavior in Formul
ALLOCATED (before ship)Stock is reserved using ALLOCATION entries only
FULFILLEDFormul first reverses active allocation (REVERSAL), then posts shipped quantity (SHIPMENT) which reduces physical on-hand
Cancellation/reversal after FULFILLEDNot supported through normal order actions; fulfilled orders cannot be cancelled
  • If fulfill button is unavailable, confirm the order is CREATED or ALLOCATED (not FULFILLED/CANCELLED).
  • If fulfillment fails with Line ... is not fully allocated, go back to allocation, allocate remaining quantity, and retry fulfillment.
  • If balances look incorrect, compare order lines, allocations, and shipment postings.

Measure performance and trace batch history in Analyze Overview.