Shipments Created via API Not Showing in Shipments Report

I have a custom system that creates UPS shipments for orders, but they aren’t showing up in the Shipments Report. This is causing issues for our accounting department, as they rely on that report to track shipping expenses.

Here’s how the flow works:

  1. The warehouse creates generic labels for the orders to capture package measurements.
  2. My system retrieves those shipments and creates a consolidated UPS shipment.
  3. The system then creates a shipment for each ShipHero order and passes along the tracking information.

Everything processes correctly, but the shipments aren’t appearing in the report. Has anyone run into this before or know what might be causing it?

Please, always that there is an order involved, share the order id from the url so we can rapidly find it.

@jjconti Sorry, I didn’t know. The order_id is T3JkZXI6Njk4NjExMDUx

I have other orders with the same issue:
T3JkZXI6ODU0MzY4NDc4

T3JkZXI6ODU0MzU5OTY1

T3JkZXI6ODU0MzUzMTc0

To add some more context, I actually have another way of creating shipments in my system. When the user provides the order numbers and package dimensions manually, I use the order_fulfill mutation. With that method, the shipments do show up in the report correctly. You can see an example of this with the following orders:

T3JkZXI6ODU1MDc4OTU0

T3JkZXI6ODU1MDc5NDYz

Thanks for this info! With that I was able to check they payload you’re sending and found a problem.

When a 3PL creates the shipment, customer_account_id should not be included. The shipment and label must belong to the 3PL account, while the order already identifies the customer.

Please remove customer_account_id from the shipment_create payload. The shipment should then appear in the 3PL Shipments Report.

@jjconti Thanks for looking into that! I just created some test shipments in my development environment, and they’re showing up in the report now. I’ll update the payload and push it to production so the warehouse can run another test. I’ll confirm once we’ve verified the fix.