Purchase orders

How can I pull purchase orders by API that are created in shopify portal. Also does it support creating PO by API ?

super keen on figuring this out as well?

Hey folks,

From looking into this, it does look like there’s no easy way to query orders that are specifically purchase orders. One workaround could be to apply a metafield to purchase orders (this might be possible to automate with Shopify Flow), and then query orders filtering by this metafield.

For creating purchase orders via the Admin API - this is not currently supported.

@Liam-Shopify

just so i have my head around this, are you saying that purchase orders are queryable (not sure if able works here), via the order query?

I believe you should be able to- I can’t test on my side without purchase orders on a test store, but if you query orders, do you see purchase orders appearing with regular orders?

@Liam-Shopify (soz I have two accounts, need to merge).

I have one in draft and can’t see it on the draftorders query. will need to wait until i guess it is migrated to an order to query, but couldnt seem them currently. i am on 2025-01.

What is the plan with purchase orders? like its a pretty cool function with alot of potential but without graphQL access it is kind of siloed from ERP/Accounting Systems (which is really needs to be connected to), making it a little hard to adopt.

From my perspective, really we would need an mutation/queries to do the following:

  • Insert Purchase Order
  • Get Purchase Order
  • Approve/Roll Back Purchase Order
  • Receipt Purchase Order
  • Get a list of purchase orders.

Also for what it is worth, it would be 100x easier to test if there was the ability to import lineitems via CSV in the admin UX (both for Purchase order and Receipt).

Hey Chris,

These are great questions - connecting with our internal team to confirm what is/isn’t possible with purchase orders via our APIs.

I wanted to jump in here since I am at the tail end of migrating all of our historical data to Shopify and the only holdout are our historical purchase orders. I have spoken with our rep who has confirmed that there is no current way to create historical purchase orders programmatically.

Obviously the endpoints for creation of purchase orders and suppliers exist otherwise the user would not be able to do these things in the Admin. I am not sure if it is a stability concern or something else that is preventing these endpoints from being exposed to developers, but I desperately want access to them so that we can have all of our relevant data from the old PoS and ecomm solutions integrated into Shopify at transition time.

If there is a need for testing of these endpoints please point the engineering team to me and I would be happy to test them on our 300+ suppliers and 10k+ purchase order backlog.

thanks heaps. wondering if you got any feedback.

wold love to use this feature, and currently building a QBO <> Shopify integrations, so would love to include this featureset.