When utilizing the orders endpoint via the Shopify API (/admin/orders.json), within each order requested all fields of `landing_site` continue to return `"landing_site": "\/wallets\/checkouts.json",` instead of the expected landing site url from the store. After extensive research/testing my current conclusion, the culprit spawns from the different ways to purchase a product. Utilizing the 'Buy it now' (Direct to checkout) to purchase a product produces `"landing_site": "\/wallets\/checkouts.json",` on the order. Utilizing a flow of 'Add To Cart' > 'Cart' > 'Checkout' to purchase a product, the landing_site returns the correct value on the order. Please note before each experiment the Shopify session was destroyed.
My current assumption is that if the cart page is skipped the `landing_site` will produce `"landing_site": "\/wallets\/checkouts.json",` on the order, which needs fixed as this is invalid value and is false. In the current state this field is very unreliable until a fix can occur.
Can you share an order id where the landing_site is showing the wallets/checkouts.json url? The landing_site field represents the page the customer first arrived to the shop at, so it shouldn't be a JSON endpoint. I'd like to look at an existing order with this value so I can investigate further and escalate as needed, as I was unable to replicate with the steps you highlighted.
So after some days going through multiple reps, here is the response to the current state of the issue mentioned:
My name is Casey and I'm from Shopify's Technical Support team.
I've confirmed with our developers that what you are seeing is expected behaviour. Whenever you use the dynamic checkout, such as the Buy Button or the "Buy It Now" function, or you pay with a "wallet" (PayPal, Amazon, Apple Pay, Google Pay, etc) before the checkout is created you will see /wallets/checkout.json appear as the landing_site. I realize you feel this behaviour may seem to represent a false value for that field, but given the description of the circumstances of the checkout it sounds like everything is behaving exactly as expected. If there is some function or feature that you are developing that this information hinders then at this time the most I can advise is to use an alternative method."
We are currently still in contact with the rep to attempt to find a better solution, But I do not have high hopes at this point. I would suggest that Shopify update its API documentation to better reflect the challenges and add clarity to how this field actually works as the description is very miss leading and has sent MANY developers down a path with a unachievable solution provided by Shopify (Just search up /wallets/checkout.json in the forum). We are posting our finding here so other in the future don't have this issue and WASTE there time with relying on the field that will provide inconsistent results.
The current experience with Shopify in regards to development support and its state of API documentation has been the most disappointing we have experienced with so far when dealing with 3rd Party data sources.