Holiday Drop-Ship Without Overselling: Getting Your EDI 846 Inventory Feed Right for Peak
In a drop-ship program, the retailer's website sells your inventory. It doesn't see your warehouse. It sees your last EDI 846, and it'll keep selling against that number until you send a new one.
That makes the 846 Inventory Inquiry/Advice different from most EDI documents. A late ASN creates a receiving problem. A stale 846 turns into orders for products you don't have, then cancellations, then a customer who blames the retailer, and the retailer passes that blame back to you. Holiday peak makes all of this worse. More orders come in against the same feed, promotions drain stock faster than usual, and retailers watch scorecards closely heading into the biggest weeks of the year.
The fix starts with a change in mindset. Your 846 is a promise, not a report. Each quantity tells the retailer how many units it can sell right now and count on you to ship. Here's how to make that promise hold up through peak.
What retailers actually say about the 846
You don't have to guess what drop-ship retailers expect. Many publish it, and the published guides agree on more than you might think.
Full feeds on a fixed rhythm. DSW's Q3/holiday 2025 reminders to drop-ship vendors say it runs a full inventory sync daily and requires a daily 846, including weekends and holidays. Missing the feed can get a brand removed from DSW.com. Designer Brands Canada's reminders for DSW.ca and The Shoe Company say the same: a complete file every day, non-business days included. Belk's drop-ship policies (August 2025) ask for inventory at least daily on standard business days. Indigo's drop-ship vendor guide asks for at least one 846 per warehouse per day, and vendors may send more often with approval.
The minimum frequency differs, and so does the weekend rule. Read your own guide closely. "Daily" doesn't always mean seven days a week, and missing a weekend file with a retailer that expects one is an avoidable compliance hit.
Available, not on hand. Belk says it plainly: reported inventory should be 100% available to Belk customers, because its systems read the values as available-to-promise, and Belk will take orders up to the reported quantity. Indigo accepts only current in-stock quantities, with no backorders, pre-orders, or future dates.
Zero before you remove. DSW and Designer Brands Canada both require a zero quantity per UPC before an item comes off the feed. If you just drop the SKU, the last quantity you sent stays available for sale. Belk has the same rule for discontinued SKUs: report zero, wait until the item shows out of stock or drops off the site, and only then remove it from the feed. Belk also expects out-of-stock products zeroed the same business day.
No backorders. DSW, Designer Brands Canada, and Belk all say unavailable items must be canceled rather than backordered. Belk adds that partial-line fulfillment isn't accepted. If you can't ship the full quantity on a line, cancel the line.
Some retailers also hold back their own safety stock and show a SKU online only above a threshold, so a small positive quantity on your side may not even appear on the site. Your guide should say whether that applies.
Full feeds and quick updates do different jobs
Most peak-season oversells don't come from one wrong number. They come from a timing gap: something changed in the warehouse, and the feed hadn't caught up yet.
A full feed is the complete truth: every active SKU with its current sellable quantity, zeros included. It resets anything that drifted. Retailers that sync fully every day depend on it, which is why missing one is treated so seriously.
A quick update carries only the SKUs that changed, sent as soon as they change. It's how you close the gap between full feeds, especially when a SKU hits zero or close to it. Whether a retailer accepts updates during the day, and how often, varies. Indigo allows multiple 846s a day with approval, for example. Ask before you build it.
During peak, the safest pattern is both: a full feed on the retailer's required schedule (weekends too, where required), plus fast updates whenever a SKU drops to zero or falls below a threshold you set. The full feed fixes drift. The quick updates stop the oversell that would otherwise happen before the next full feed runs.
Report available-to-promise, not on-hand
On-hand is what's physically in the building. Available-to-promise (ATP) is what you can actually commit to a new order right now. During peak those two numbers drift apart quickly.
Take these out of on-hand before you send anything:
- Units already allocated to open orders, from every channel, that haven't shipped yet.
- Damaged, quarantined, or held stock.
- Units committed to wholesale or replenishment POs.
- Inventory sitting in a location that can't fulfill drop-ship orders.
- Any buffer you've chosen to hold back.
Most 846 specs let partners define which quantity qualifier they want. Some accept more than one, such as on-hand and available-for-sale. Use the qualifier your partner's guide asks for, and make sure the number behind it is ATP, whatever the label says. If your ERP can only export on-hand, fix that at the source. Patching numbers by hand on the way out doesn't hold up in December.
Reserve stock across channels on purpose
Most drop-ship brands sell the same units in several places: two or three retailers' drop-ship programs, their own website, a marketplace, and sometimes wholesale. If every channel's feed reports the full ATP, every channel is selling the same last unit.
There's no single right answer. There's only the answer you choose on purpose:
- Shared pool with buffers. Every channel sees the same ATP minus a safety buffer, and fast updates keep everyone in sync. It works when updates are frequent and volume is moderate.
- Allocated pools. Each channel gets a set share of stock, typically weighted toward the channels that sell fastest or carry the strictest penalties. It's safer for scarce, high-demand SKUs.
- Hybrid. Shared for deep-stock items, allocated for the hero SKUs most likely to sell out during a promotion.
Belk's policy calls out the planning side directly: anticipate inventory needs from historical sell-through and planned promotions. A doorbuster on one retailer's site can drain a pool everyone else is still selling from.
Zero out what you can't sell, then remove it
The guides above all describe the same trap: removing a SKU from the feed is not the same as setting it to zero. At several retailers, a SKU that just disappears from your file keeps its last reported quantity, and the site keeps selling it.
Make zeroing an explicit step in your process:
- A SKU that goes out of stock gets a zero right away, not at the next full feed if your partner accepts updates during the day.
- Discontinued SKUs stay on the feed at zero until the retailer's site shows them as unavailable. Then you can remove them, following the partner's rule.
- Items blocked for quality, recall, or listing issues go to zero immediately.
Treat cancellations as a monitored exception
Every drop-ship cancellation means a customer got a promise from the retailer that you couldn't keep. Retailers track them, and most of the guides above expect unavailable items to be canceled quickly rather than left open or backordered. Belk, for instance, expects orders that can't be filled because of missing inventory to be canceled within its standard fulfillment window, so they don't go delinquent.
So cancel fast when you have to. But treat every cancellation as a signal, not routine:
- Track cancellations by SKU, retailer, and reason. Ten cancels on one SKU in an afternoon means your feed for that SKU is wrong. It isn't bad luck.
- Tie each cancellation to the feed. What did your last 846 say for that SKU, and when was it sent? If you're canceling against a positive quantity you reported an hour ago, the problem is in your ATP math or your update timing.
- Follow the retailer's cancellation path. Some retailers take cancellations by EDI. Designer Brands lists the 870 as optional, with portal cancellations otherwise. Others work through a platform such as Rithum. Either way, the cancel has to reach the retailer's system, not just your ERP.
- Respect customer-initiated cancels. Belk asks vendors to try to stop shipment when a customer cancels, and says it won't pay for an order that's canceled in its system but shipped anyway.
How managed EDI keeps the promise honest
IDXE is EDI Partners' proprietary, Azure-native managed EDI platform. For drop-ship suppliers, the work is mostly plumbing and watching. On the plumbing side, IDXE connects the ERP or WMS that actually knows what's allocated, builds each retailer's 846 to its spec and schedule, and supports both full feeds and quick updates where partners accept them. On the watching side, it monitors acknowledgments and missed transmissions, and flags cancellation spikes before a retailer flags them for you.
EDI Partners runs that as a managed service, not as another dashboard for your team to check. When a weekend feed fails or one SKU starts racking up cancellations, someone who knows your partners is already on it.
Takeaways
- The 846 is a promise: retailers sell against your last number until you send a new one.
- Send full feeds on each retailer's schedule, weekends included where required, and add fast updates for stockouts.
- Report available-to-promise, net of allocations, holds, and buffers, not on-hand.
- Reserve stock across drop-ship partners and your own channels on purpose, especially for promoted SKUs.
- Zero a SKU before you remove it. A missing SKU can stay for sale at its last quantity.
- Track every cancellation back to the feed that allowed the oversell, and alert on missed or rejected 846s.
If last holiday's cancellation report is still a sore subject, now is the time to fix the feed, before the volume arrives. Talk to EDI Partners about drop-ship inventory feeds with IDXE →