A few more thoughts / notes...
1. order finalized in TG > order created in ShipStation with all items
2. order shipped in ShipStation > order marked as packed & shipped in TradeGecko.
1. order finalized in TG
2. order marked as packed (partial or complete) in ShipStation > shipment created as new order in ShipStation containing only the items associated with the new shipment
3. order shipped in ShipStation > shipment marked as shipped in TradeGecko
— 3a. IF shipment contained the complete order, the order is marked as fulfilled.
— 3b. ELSE IF shipment only contained part of the complete order, the order is marked as partially fulfilled and the remaining items can later be packed for shipment (repeat flow from step 2 until order is completely fulfilled)
The "shipping" line item on orders would a lot of work for any of this to actually meet our needs.
The current integration is flawed in that shipments are linked at the order level instead of shipment level. If ShipStation shipments were linked to individual TradeGecko shipments, it would be more intuitive from a UX standpoint and would also presumably make it easier for TradeGecko to build partial shipment functionality into the integration.
ShipStation has pretty straightforward instructions on how to split up orders:
All they seem to do is duplicate the order, add suffixes to the order number to indicate each shipment, and let the user divvy up the quantities.
I imagine a technical hurdle is splitting orders via the API and transitioning from an order-level to a shipment-level integration — i.e. recognizing the '-1' '-2' etc suffixes that ShipStation adds to split orders and matching these to individual shipments on TradeGecko.
That said, directly matching TradeGecko shipments to ShipStation orders would presumably eliminate the need for split order functionality altogether, since all of the splitting would be happening on the TradeGecko side and only the packed shipments would be sent to ShipStation.