Labels
Clear labels
Amazon SP-API
bug
Doing
eBay API
FBA Restock
FBA Restock
FBA Restock
fulfillment
Planning
Planning
Planning
Planning
Planning
prod
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
QA
shipstation
shipstation
No Label
Planning
Milestone
No items
No Milestone
Projects
Clear projects
No project
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: rob/estack-laminas#73
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
eStack GitLab Issues — Full Backlog
Issues are grouped by type. Each is a separate GitLab issue.
🐛 BUGS & FIXES
Issue 6: Products — retail shipments picked page (missing route)
/products/:id/retail-shipments/pickedreturns 404. Build this route — should show retail shipments for the product filtered tostatus = picked.Issue 7: Purchase Order detail — three fixes
7a. No green SKU links on PO detail
On
/purchase-order/1157, SKUs render as plain text. Applyes-cell-mono es-skulink style.7b. Qty column missing/empty
Qty values not displaying. Investigate view model.
7c. Cannot submit empty PO guard
Prevent sending a PO with zero line items or zero quantities. Add controller guard + client-side validation.
Issue 8: SKU widget — thumbnail position
Move product thumbnail from the top of the SKU widget popup to either the bottom or the left side (beside the SKU title). Gives more prominence to text/data immediately.
Component:
.es-sku-widgetin_components.scssIssue 9: Remove Stock — missing location causes page error
Submitting Remove Stock without selecting a location throws a server error. Add validation: show
es-error-blockinline if no location selected, don't crash.Issue 13: Product images — drag and drop multi-upload broken
Dragging and dropping more than one image at a time on the Product Detail image upload area only processes the first file. Fix the drop handler to iterate
event.dataTransfer.files(it's a FileList, not a single file):Issue 14: Supplier tab — layout improvements needed
The Supplier tab on Product Detail needs a better layout. Current display is too cramped/unstructured. Specific improvements:
es-form-rowgrid(Awaiting design direction from Rob before implementing)
Issue 16: B2B Shipments — multi-carton support (EasyPost, UPS, FedEx, ShipStation)
Multi-carton B2B shipments are not fully supported through EasyPost, UPS, FedEx, and ShipStation. The cartonization page exists (built in BS5 migration) but the carrier API calls need to support multiple parcels per shipment request.
Each carrier's multi-parcel approach:
parcelobjects to the shipment(Requires carrier-specific implementation — scope with Van before estimating)
Issue 17: Create Shipment action on Orders — status guard
The "Create Shipment" action on the Retail Orders list/detail should only appear after the order reaches a certain status. Proposed rule:
Show "Create Shipment" only when order status is
PickedorComplete.Rationale: if an order is still in Initial/New, creating a separate shipment for forgotten items is premature. Once an order is Picked and sealed, a separate shipment makes sense.
Rob to confirm exact status threshold before implementing.
⚙️ FEATURES & ENHANCEMENTS
Issue 18: Global units preference — metric/imperial display
Add a global display preference in Settings for metric vs. imperial units. Decision:
For now: Unit toggle is display-only. The system stores everything canonically in oz (weight) and inches (dimensions). If a user selects grams or cm, values are converted from oz/inches for display only — the stored value remains in imperial.
Implementation:
Note: This affects a large number of pages. Rob to confirm which pages are in scope before Van implements. At minimum: Product Detail (weight/dimensions fields), Purchase Orders, Shipping Rules, Packaging.
Issue 19: Direct Orders — totals per page and overall
On B2B Direct Orders:
URL:
/direct-ordersIssue 20: Purchase Orders — currency column + FX totals
On the PO list (
/purchase-orders):NaN%display bug in existing totals/variance columnsIssue 21: EasyPost — allow updating return address on labels
Add the ability to change the return address on an EasyPost label after it's been generated (or during creation). Currently the return address is fixed to the store's default. Some shipments may need a different return location.
Issue 22: Security — verify identity before showing API credentials
Before revealing stored API keys or secrets (when "Show" is clicked on credential fields in Channel Setup), send a verification code to the account owner's email. User must enter the code to reveal the value.
Applies to: Amazon, eBay, Walmart, ShipStation setup pages.
Issue 23: Avery label template selection for Print Jobs
(Deferred — post BS5 migration)
Add the ability to select an Avery label template when printing labels from the Print Job page. Requires mapping shipment data (tracking number, address, weight, dimensions) to label fields per template.
This is a deeper integration with the print system. Not a priority until BS5 migration is complete and other functions are finished. Rob to scope separately.
🤖 AI / FUTURE PLANNING
(Not GitLab issues yet — planning notes only)
Planning: AI product listing creation
Use an AI API to generate Amazon/eBay/Shopify product listings from product data (title, description, images, specs). Output: fully formatted listing copy optimized per channel.
Planning: Amazon catalog + competitive research
Connect to Amazon catalog data (via SP-API Product Catalog API) to power:
Planning: AI-powered PO generation from BRR/JIT
Connect an AI engine to the Burn Rate Report and JIT Purchase Order Generator to automatically draft POs based on velocity data, stock levels, and lead times. Human review step before submission.
Planning: FX API integration
Integrate a live FX rate API for multi-currency PO and DO totals. Evaluate cost:
Recommendation: use a dedicated FX API (xe or Open Exchange Rates) rather than an AI API for currency conversion. AI APIs are not reliable sources of live financial data.
Planning: SOC 2 Type II certification (PII Data)
Scope and begin the SOC 2 Type II process for handling PII data. This requires:
(Long-term initiative — separate from product roadmap)
Shipment Details card too wide.. address scrunched up because of it
update messages without file name looking text:
20% Complete
Requesting merchant-listings report from Amazon
29% Complete
Waiting for Amazon to generate the report (status: IN_QUEUE)
33% Complete
Waiting for Amazon to generate the report (status: IN_PROGRESS)
92%
Report ready. Downloading and importing SKUs...
-- LATER:
https://primabrands-llc.estack.com/retail/shipments/5337
Pending reship has no Finalize Shipment button