How to Implement FulfillmentService based on Current State of REST vs GraphQL

New Member
1 0 0

Hi guys,

I am working on developing an app that will include a FulfillmentService to handle tracking numbers, order cancellation, and inventory levels.

I am confused because I have been following this model:

Which states that "Once per hour Shopify will make a request to this endpoint if there are any completed fulfillments awaiting tracking numbers from the remote fulfillment service."

This sounds great and I can build my app around this model.

However, then I discovered this little gem

Which seems to be a newer approach, uses more GraphQL, seems to eliminate the need to handle fulfillment during the OrderCreate webhook, and seems to have more features that would be useful to the store owner.

My questions are:

  • Are both of these approaches still valid?
  • Is the newer approach in link #2 more futureproof because it is based on GQL?
  • Is the proper solution a combination of these two?
  • Does link #2 provide any mechanism to perform inventory management?
  • In scenario #2, do I still need my OrderCreate webhook?

I did check out the demo app they provided but its all in Ruby and I am not too familiar and working in Typescript.

Thanks in advance!