x

Orders endpoint allows sale of out-of-stock items

The API allows for the sale of out-of-stock items, which creates more problems than it solves. Selling out-of-stock items means having to deal with angry customers, process chargebacks, pay fees, etc. I find it hard to believe that the average store owner would prefer to sell things they can't deliver vs. having the opportunity to recommend an alternative item or provide some other preferable customer experience. That said, I would like to recommend some potential solutions:

 

  1. Disallow the sale/processing of out-of-stock items/variations via the /orders endpoint(s). If maintaining backwards compatibility is a requirement, you could simply adding a parameter to the request body to explicitly toggle this feature on, e.g. in_stock_only: true. 
  2. Give store owners the ability to hide out-of-stock items in their storefronts by returning inventory counts in the /catalog endpoints' responses. Again, to maintain backwards compatibility, you might provide a request body parameter to explicitly enable this feature, e.g. include_inventory_counts: true. 

Currently, in an attempt to mitigate these issues, developers can request inventory counts from the /inventory/batch-retrieve-counts endpoint; however, that could potentially create a race condition where the item may sell out between that request and any subsequent request(s). 

 

It's been almost a year and a half and nearly 17 API versions since I first built my custom Square-powered storefront. Unfortunately, that code has sat dormant, un-launched due to this issue. The poor UX that allowing the sale of out-of-stock items would provide my potential customers is a showstopper for me. I couldn't in good faith launch an eCommerce store that allows customers to pay for items with the expectation that they'll receive them, only to be told later that they're out of stock. This is especially frustrating because I've gone to such lengths to ensure the inventory counts are accurate and current via my dashboard. 

 

I'm hoping your product and engineering teams find this well and that these or similar alterations to the API are prioritized so that we can put a stop to the sale of out-of-stock items once and for all. 

 

Thank you!

243 Views
Message 1 of 1
Report
0 REPLIES 0