Wholesale & EDI
Can I fulfill wholesale and DTC from the same warehouse? How do I set that up?
Running wholesale and DTC out of one warehouse with different pack rules and availability.
Last updated September 16, 2026
Yes. One physical pile. Two work queues. Different pack rules. Different available-to-sell. Not a second inventory system.
Share on-hand but not available-to-sell
On-hand is shared. ATS is not. Fund a wholesale hold (a reservation, or a zone outside primary sellable) for open POs plus inbound you have already sold. DTC publishes the remainder after a buffer. A display pool changes what each channel sees. It does not stop the floor from allocating a 20-case order if 20 exist. If a Nordstrom PO must be untouchable, park it outside the primary sellable zone and pick against that hold. A separate "wholesale warehouse" that is just another receiving step will slow you down and still share the same aisle. Dummy locations do not create holds. They create a second receiving step and a second ATS lie. Wholesale ATS is the hold. DTC ATS is the remainder. Add them back to on-hand and publish the sum, and you sell the hold twice. Fulfill both from one building only if you can name, for every line, which queue picks it, which hold it came from, and which pack rule prints the carton.
Pallet versus parcel work queues
Work is pallet versus parcel. Bulk-ship or case-pick for wholesale: case-pack, inner-pack, SSCC, BOL, retailer-assigned carrier. Tote or batch pick for DTC: eaches, packing slip, parcel. Exclude wholesale channels from the DTC batch pool or a WS order lands in a tote. Wholesale Net30 needs its own channel import rules. Do not loosen DTC paid-only so unpaid wholesale will import. Default the wholesale channel to the site (or zone) that actually holds case-pack. Do not split a retail PO across nodes unless the routing guide allows it. Pack size on the 850 has to reach the pick face. If wholesale is case-pack and the tote system only sees eaches, the 856 goes out in the wrong UOM. Carton labels and the BOL are pack-time rules on the same SKU, not a second product.
Slot one catalog for both motions
Slot for both motions without two catalogs. Case-pack and reserve in bulk. A-movers for DTC in the forward pick face. Receive a PO into the hold that funded the buy, or remainder math lies until you re-import the holds. Every order is a native order. Spreadsheet adjustments for Faire, Amazon replenishment, or a wholesale spreadsheet are how DTC oversells. If this building is a 3PL, their on-hand is still a file, not a live pick face. Publish only the primary sellable zone. The hold stays off the channel. If you cannot name the queue, the hold, and the pack rule for a line, you do not have a shared warehouse. You have two teams arguing over one bin.
Connect Claude or ChatGPT to your Fulfil data with the Fulfil MCP, then run this prompt on your own numbers.
You are the warehouse lead running wholesale and DTC from one building. Here is: sku, on_hand, wholesale_pool, dtc_published, open_850_qty, uom_wholesale, batch_queue, pack_rule (case/parcel), warehouse_assigned, inbound_pool. [paste] Produce: 1. Whether one pile plus two queues is set up, or someone invented a second warehouse. 2. Lines that will allocate past a display pool (shown vs on-hand). 3. WS orders in a DTC tote batch, and retail POs that would split. 4. Inbound that did not receive into the pool that funded the buy. Recommend hold-then-pick, channel-filtered batches, no dummy wholesale location.
Explore this in Fulfil
More on Wholesale & EDI
EDI to big-box retail: 3PL vs your own warehouse
How the EDI document flow to big-box retailers works whether a 3PL or you run the warehouse.
How do I allocate inventory between Shopify DTC and wholesale so I don't chargeback a Target or Nordstrom PO?
Splitting stock between Shopify DTC and wholesale so a retailer PO never gets shorted.
How do I stop EDI chargebacks from Target / Costco / Nordstrom?
Why most EDI chargebacks trace back to inventory, and how to keep them from happening.
See it run on
your data.
Fulfil runs inventory, fulfillment, purchasing, and accounting for scaling DTC brands in one system.