Skip to main content

What’s new at Endless

Changelog

The latest features, improvements, and fixes across Endless Commerce.

improvement

Product Costs: Lead Time Is Optional

Lead time is no longer required on a product cost. Saving a supplier cost or a purchase order cost tier without entering a lead time works — the value is stored empty rather than as a stand-in zero. If you do enter one, it still has to be a positive whole number.

feature

Notifications Move Into An Inbox

Notifications have their own home now. The bell inside the profile drawer is gone; in its place is an Inbox entry in the sidebar with an unread count and an active-process indicator, opening a dedicated page instead of a small drawer. Filtering lines up with the notification categories the API supports, so what you see under each filter matches what’s actually there. Long-running processes still surface progress the same way — the Inbox is where you go to look through them without stacking a drawer over the app.

improvement

Sidebar: Settings And Help Move Up, Announcement Bar

Settings and Help have moved off the sidebar and into the company menu in the top-left, which frees up room for the primary navigation. A reusable dismissible announcement bar is in place at the top of the app for one-off notices, and the sidebar itself is tightened up so more of the navigation fits without collapsing groups.

feature

Bulk Forward Shipments

Forwarding shipments is now a bulk action. Select a set of shipments on the shipments list and forward them all in one go instead of opening each one individually. The bulk path runs the same forwarding logic per shipment as the single-shipment action, so any per-shipment failure is reported without holding up the rest.

improvement

EDI: A Round Of Improvements

A broad round of improvements across the EDI order path — from how orders come in, to how they’re matched against your catalog, to how outbound documents go out.

Inbound matching and units. Inbound EDI orders now match products through the same partner-identifier registry you maintain on the product page — UPC, ASIN, TCIN, whatever the partner sends — and convert cases or inner packs to eaches automatically, using a per-partner unit-of-measure mapping so quantity and price land correctly. Those mappings now live on the integration’s Data mapping tab, so you can add, edit, and remove them yourself instead of asking engineering to. A line that can’t be matched or converted doesn’t fail the whole order — it’s flagged and held so you can finish the mapping and let it through.

Inbound carrier mapping. Incoming orders resolve their requested carrier through the same custom and global carrier mappings other integrations use, so per-brand and global mappings you’ve set up for a partner’s carrier codes are applied on the way in. When no mapping matches, the raw external value is kept on the order so it can be resolved on the fulfillment.

Inbound B2B data. Orders created from an inbound document now carry their B2B data — label and routing flags — straight onto the order.

Outbound documents. Acknowledgments, ship notices, and invoices are flowing reliably again. Acknowledgments carry the right PO references, a class of documents that used to render empty on certain orders now renders correctly, and ship notices and invoices that had silently stopped going out after an internal migration are going out again — each ship notice tied to its specific shipment, and the invoice sent once, when the order finishes shipping. The per-partner configuration you already have still controls which documents are sent, and a document that fails to send now surfaces instead of failing silently.

Forward Shipment now works on EDI orders, and moved to the per-fulfillment action menu — click it and the same Advance Ship Notice dialog opens for review before sending. For every other integration the button behaves as before.

Behind the scenes, order shipments are backstopped so a near-simultaneous webhook can’t create a duplicate, the admin bulk-deliver task sends acknowledgments alongside ship notices and invoices, and the internal tool used to author and validate a trading partner’s template got a faithful live preview plus a dry run that shows exactly how an order would resolve, without touching a real order.

feature

Inventory Syndication: Per-Channel Sync And Bulk Controls

Inventory sync is no longer all-SKUs-or-no-SKUs on a channel. The Inventory list has a Sync tab with one column per connected sales channel, showing whether each SKU is syncing and the quantity that would push. Select rows and use Bulk Actions → Disable / Enable Inventory Sync to mark a SKU out of stock on one channel without touching its inventory anywhere else, or open an item’s quickview and toggle individual channels from the Channel Sync card.

When a SKU is opted out on a channel, Endless pushes a quantity of zero on that channel; every other channel keeps pushing the real on-hand. The same SKU can be out of stock on one channel and live on another. Opt-outs take effect on each channel’s next scheduled push, on Shopify, Rithum, Walmart, Amazon FBM, Faire, Sellbrite, Skubana, and Orderful.

The item detail page’s Syndication card also picked up a header control that acts across every connected integration at once. A status badge reads Active, Out of Stock, or Mixed at a glance, and one button flips every channel to active or every channel to out of stock in a single call instead of toggling each row on its own. Per-integration quantities on the same card now read with thousands separators — 1,234 instead of 1234.

feature

Packiyo: Inventory Sync And A Warehouse Mapping Tool

The Packiyo integration picked up inventory alongside its order push. Available quantity is pulled from Packiyo on a schedule and on demand, and lands per warehouse: each Endless warehouse that’s mapped to a Packiyo warehouse gets its own quantity, allocated stock keeps being layered in from Endless on top, and warehouses with no Packiyo mapping are skipped.

Setting up those mappings now has its own tool. The Data Mapping section on the Packiyo integration lists the warehouses Packiyo returned and lets you map each one to an Endless warehouse from a single screen instead of hand-editing external relations. Existing setups keep the same shape.

On the shipping side, Packiyo now uses its own carrier mapping when Endless ships an order through it, so only the shipping method name has to line up on the Endless side, and the Packiyo order push carries the Endless carrier service name on each outgoing order. A few API response fields also read back correctly now.

improvement

Purchase Orders And Shipments: Full-Precision Unit Costs

Unit cost fields on purchase order lines and shipment product costs now show and save their full supported precision — up to four decimal places — instead of being silently capped at two. The edit box starts at two decimals and expands only when a value actually has more precision, so 10.12 still reads as 10.12 and 10.123 reads as 10.123. The read-only Unit Cost column picks one precision per column — the most precise item in the column, up to four — so every row stays aligned without hiding any item’s precision. Extended cost and total columns still show at two decimals.

improvement

Resolve Carrier Service: Save The Mapping For Next Time

When an order arrives with a carrier service Endless doesn’t recognize, the Resolve carrier service dialog on the fulfillment now offers a checkbox: Map to for future orders. Tick it and the chosen mapping is saved as a custom carrier mapping for that integration, so the next order with the same external carrier name resolves on its own. Leaving the checkbox unchecked applies the carrier to just this fulfillment, same as before. The dialog also skips offering the checkbox if a mapping already exists for that external name. The Resolve shipping address dialog now reuses the same form as the regular Shipping Info editor, so the entry surface is one consistent surface instead of two.

feature

Sales Orders: Create Fulfillments In Bulk

Orders that land without a routing automation used to leave you creating fulfillments one order at a time. Sales Orders now has a Create Fulfillments bulk action: select up to 50 orders, choose a routing strategy, and Endless creates the fulfillments by running that strategy across them. Orders that already have fulfillments are skipped so nothing gets over-fulfilled, and the running progress and skip summary land in the notifications toast and panel.