Shiphero Latest/Wrong Data Reported in API

Shiphero Latest Data Missing: Shiphero source is missing the latest data. 98,044 orders across 414 shops have this issue.

Sample Order ID – 3031537156189

In Shopify, the fulfillable quantity shows 0 for all the line items but in Shiphero it is 3 & 1 in fulfillable quantity. On checking the umg_report_date, Shopify has the latest record ingested on “2021-03-02” whereas Shiphero had the last data ingestion on “2021-02-16”. We have checked Shiphero API and the data isn’t available.

Shopify BQ:

select order_id,id,fulfillable_quantity ,umg_load_time,umg_report_date from umg-audience-data.shopify_unified.shopify_orders_line_items where order_id = 3031537156189;

Shiphero BQ:

select order_id,partner_line_item_id ,quantity_pending_fulfillment ,umg_load_time ,umg_report_date from umg-audience-data.ecommerce.shiphero_orders_line_items where partner_line_item_id in (‘6551672389725’,‘6551672422493’);

Wrong data in Shopify/Shiphero: Wrong data is received from either Shopify/Shiphero. 43,223 orders have this issue across 350 shops.

Sample Order ID – 3933284303048

In Shopify, the fulfillable quantity shows 1 for all the line items but in Shiphero it is 0 in the fulfillable quantity. On checking the umg_report_date, Shopify and Shiphero both were ingested on the same time (2021-06-20)

Shopify BQ:

select order_id,id,fulfillable_quantity ,umg_load_time,umg_report_date from umg-audience-data.shopify_unified.shopify_orders_line_items where order_id = 3933284303048;

Shiphero BQ:

select order_id,partner_line_item_id ,quantity_pending_fulfillment ,umg_load_time ,umg_report_date from umg-audience-data.ecommerce.shiphero_orders_line_items where order_id=‘T3JkZXI6MTk4MjQ0NjMy’;

Hi,
Welcome! What is the question that I can help with, in reference to the ShipHero public API specifically?

We’re fetching the latest order details from Shopify and Shiphero but it seems the Shiphero latest data is not updated/incorrect. Can you please check? Let me know if you need additional details.

Where are you fetching the information from in ShipHero? Do you have a request-id?

Hi, Below are the API details and the requests we are sending.

API - https://public-api.shiphero.com/graphql

Request:

Get latest order data - {“query”:"{ orders(updated_from: \"<START_DATE>\", updated_to: \"<END_DATE>\") { complexity request_id data(first: <PAGE_SIZE>, after: \"<LAST_CURSOR>\" ) { pageInfo { hasNextPage hasPreviousPage startCursor endCursor } edges { node { id } } } } } " }

Get order detail with history - {“query”:"{ order(id: \"<ORDER_ID>\") { request_id complexity data { authorizations { transaction_id authorized_amount postauthed_amount refunded_amount card_type date } line_items(first: <LINE_ITEM_PAGE_SIZE>, after: \"<LAST_LINE_ITEM_CURSOR>\") { pageInfo { hasNextPage hasPreviousPage startCursor endCursor } edges { node { id legacy_id sku partner_line_item_id quantity price product_name option_title fulfillment_status quantity_pending_fulfillment quantity_shipped warehouse quantity_allocated backorder_quantity custom_options custom_barcode eligible_for_return customs_value warehouse_id locked_to_warehouse_id subtotal barcode created_at updated_at order_id product { id legacy_id account_id } serial_numbers { id legacy_id line_item_id serial_number scanned created_at updated_at } } } } rma_labels { id legacy_id account_id order_id rma_id shipment_id shipping_name tracking_number status carrier shipping_method cost box_code dimensions { weight height width length } address { name address1 address2 city state country zip phone } paper_pdf_location thermal_pdf_location pdf_location image_location delivered picked_up refunded needs_refund profile full_size_to_print partner_fulfillment_id created_at updated_at } id legacy_id order_number partner_order_id shop_name fulfillment_status order_date total_tax subtotal total_discounts total_price auto_print_return_label custom_invoice_url account_id email profile gift_note packing_note required_ship_date shipping_address { first_name last_name company address1 address2 city state state_code zip country country_code email phone } billing_address { first_name last_name company address1 address2 city state state_code zip country country_code email phone } shipping_lines { title carrier method price } tags holds { fraud_hold address_hold shipping_method_hold operator_hold payment_hold } flagged saturday_delivery ignore_address_validation_errors priority_flag allocation_priority holds { fraud_hold address_hold shipping_method_hold operator_hold payment_hold } order_history {id order_id order_number information created_at} allow_partial} } } " }

Get order detail with no history - {“query”:"{ order(id: \"<ORDER_ID>\") { request_id complexity data { authorizations { transaction_id authorized_amount postauthed_amount refunded_amount card_type date } line_items(first: <LINE_ITEM_PAGE_SIZE>, after: \"<LAST_LINE_ITEM_CURSOR>\") { pageInfo { hasNextPage hasPreviousPage startCursor endCursor } edges { node { id legacy_id sku partner_line_item_id quantity price product_name option_title fulfillment_status quantity_pending_fulfillment quantity_shipped warehouse quantity_allocated backorder_quantity custom_options custom_barcode eligible_for_return customs_value warehouse_id locked_to_warehouse_id subtotal barcode created_at updated_at order_id product { id legacy_id account_id } serial_numbers { id legacy_id line_item_id serial_number scanned created_at updated_at } } } } rma_labels { id legacy_id account_id order_id rma_id shipment_id shipping_name tracking_number status carrier shipping_method cost box_code dimensions { weight height width length } address { name address1 address2 city state country zip phone } paper_pdf_location thermal_pdf_location pdf_location image_location delivered picked_up refunded needs_refund profile full_size_to_print partner_fulfillment_id created_at updated_at } id legacy_id order_number partner_order_id shop_name fulfillment_status order_date total_tax subtotal total_discounts total_price auto_print_return_label custom_invoice_url account_id email profile gift_note packing_note required_ship_date shipping_address { first_name last_name company address1 address2 city state state_code zip country country_code email phone } billing_address { first_name last_name company address1 address2 city state state_code zip country country_code email phone } shipping_lines { title carrier method price } tags holds { fraud_hold address_hold shipping_method_hold operator_hold payment_hold } flagged saturday_delivery ignore_address_validation_errors priority_flag allocation_priority holds { fraud_hold address_hold shipping_method_hold operator_hold payment_hold } } } } " }

We use the 1st request to get the list of orders, 2nd request to get the order data and 3rd request to get the line item level detail of that particular order.

Hi @naveen.soundararajan !
I believe there is a discussion about this going on at Support Ticket Nr 156647.
It might not be a Public API-related thing. Is it ok if we keep communication over there?
Thanks!
Tom