How to know from where the Shopify order is originated through Order API? ie, which Order API property will tell the details like order is placed from Facebook ads, Google ads, Instagram etc?
Every order comes with a source. You can easily determine where is originated scanning this. You can also get an ID from the source if needed. Just download an order and search for those key attributes and you're good to go. Also, a lot of Apps and channels broadcast themselves in order notes and they can also affect things like the payment gateway used etc. So you have no shortage of options to answer your questions.
I checked few Order JSON (from REST Order API) and for the orders generated through Facebook, Instagram etc, the source_name contains the value web.
Which other properties will give the Sales Channel from which Order is generated?
That does not compute or sound correct. web as a source name is assigned to Shopify orders on the shopify sales channel. I would double check your orders, especially one that is clearly from Facebook or some other sales channel. It is not hidden information. It is plain as day in the order itself where it comes from.
I just double checked orders from a very busy Plus store doing business on Amazon, Shopify and other channels. Clearly there are ways to figure out the sales channel.
1. The payment gateway will not be Shopify if the order was placed externally.
2. the source name shows where the order is coming from
3. the source identifier can be a clue too
If Facebook and some other sales channel are actual channels, processing orders, they are making it known somewhere in the order properties. If not those listed, the note and note attributes will have a clue.
I posit that there is zero chance you are getting orders from other sales channels with no indication of that. Impossible... but hey, if you can prove otherwise, great! Do share that with the community here, as others could benefit from knowing that.