Commit Graph
13 Commits
Author SHA1 Message Date
madminandClaude Sonnet 5 d8f59b7725 Fix external_shipment_id placement and test-mode store_id ticket persistence in the return-label flow
external_shipment_id was at the top level of the POST /v2/labels payload in both
_create_dummy_outbound_label() and create_return_label_from_dummy() - ShipStation's
schema only supports it nested under shipment, so it was silently ignored and
auto-generated ("SEAuto-...") on every label this flow ever created. Moved it inside
the shipment dict in both functions. Confirmed end-to-end on a real production
ticket (AR-166098): Order # now correctly shows the real ticket number, and
ship_from/ship_to are correct for a return.

Also: store_id is now only required in production - ShipStation's sandbox
environment cannot have stores/Order Sources at all (confirmed in the real sandbox
dashboard), so test mode omits it from the request instead of requiring an
impossible value. And three per-ticket write-backs (mark_shipstation_sent,
save_dummy_outbound_label_id, save_pack_data) were hardcoded to source == "jira",
silently no-opping for source == "test" tickets created by Create Test Shipment -
now match on ticket_number alone, since source is only ever "jira" or "test" and
ticket_number is already unique across both.

CLAUDE.md records the full investigation and closes out the long-standing
"return-label flow real-world verification" known-pending item.

Co-Authored-By: Claude Sonnet 5 <[email protected]>
2026-10-01 15:53:54 -05:00
madminandClaude Sonnet 5 a7d2e7870c Add Create Test Shipment (Email SKU) for testing the return-label flow, plus test-mode/store_id investigation notes
Adds synthetic source="test" tickets (create_test_shipment_order/delete_test_shipments)
carrying a company's real emailed-return-label SKU, so Step 1/Step 2 can be exercised
against the sandbox without a real JIRA ticket or risking a real customer's. Gated to
Test Mode - the same flow against production would create a real paid shipment.

CLAUDE.md also captures this session's ShipStation sandbox findings: store_id is
schema-optional but empirically required for label visibility, the newer ship15 web UI's
URL is NOT the se- store ID (confirmed via direct probe - different failure shape than a
wrong-but-well-formed ID), and two separate test stores/carriers are needed per company,
mirroring production.

Co-Authored-By: Claude Sonnet 5 <[email protected]>
2026-09-28 11:45:09 -05:00
madmin b5570d39f0 More email SKU shenanigans, now with more TEST labels! 2026-09-14 11:41:27 -05:00
madmin edd5f2a886 Email procedure (beta), WorkFlow update 2026-09-02 11:44:54 -05:00
madmin 826a70bdf6 EMailed label return generation (alpha) 2026-09-02 09:30:19 -05:00
madmin 6655b02f4a Major JQL bugfixes 2026-09-01 16:30:54 -05:00
madmin bf5566e911 TimeZone Bug Fix 2026-09-01 14:12:19 -05:00
madmin df9958cb97 GUI updates and misc fixes for the Cancel cutoff 2026-08-31 17:01:13 -05:00
madmin 9651b82415 More Shipstation integrations(warehouses) 2026-08-31 15:00:37 -05:00
madmin 4c172c1fd5 More Shipstation integrations 2026-08-31 10:08:30 -05:00
madmin ae74f78520 EOD and Carryover tickets added 2026-08-27 15:46:15 -05:00
madmin 18be8588f6 ShipStation tracking pull, status tracking, dashboard rework 2026-08-26 11:28:42 -05:00
madmin ffaaa0c8c8 Initial commit 2026-08-26 09:15:35 -05:00