Afternoon! I’m trying to manage orders through the API, and right now I’m using the Fulfillment object to see where we’re at in the process of completing the order. My app sends orders with the object, so I’m good there. But I just tested with a cash order from the POS and it looks like it might not have a fulfillment object - should it? Or, am I missing a setting or something? Just because the customer ordered and paid doesn’t mean we handed them their drink, so I’m hoping there’s a way to force it to get a PROPOSED fulfillment status or something that I can start from.
If the payment is from the POS there won’t be a
fulfillment in the order. The only time a
fulfillment will be on an order from the POS is if the seller creates the order with the
fulfillment prior to paying for it.
So if I’m effectively building a custom KDS, is there a way to filter new POS transactions? I was filtering with fulfillments before, but it looks like that won’t work now. Is it possible to do something like search for transactions by metadata or something, then set the metadata as the order is started, completed, and ready?
Shoot, I won’t even be able to modify the metadata since it comes in as state = COMPLETED, right? Completed means no more changes are allowed via the API?
If that’s the case, then I’d assume my only option is to track each order id and status in my own DB, eh? (I’d really like to not have disparate data like that, but obviously will if I have to)
Your KDS is going to display fully paid for orders right? Cause Open Tickets created in the POS aren’t available till they’re paid for.
Yes, that’s correct the order will be
COMPLETED when it’s paid for.
Correct, I’d expect them to be paid for before they hit the KDS.
Right now, here’s my flow - Customer orders & pays on the app and it hits Square with a fulfillment state of proposed. The order shows up on the screen in my shop for the barista to complete, and when they mark it done in the KDS we update the fulfillment & order status to COMPLETED.
I’d really like to be able to use the same flow for in shop orders using the Square POS, too, but it looks like that’s a no go if they always come in as Completed.
Any chance there’s something in Square for Restaurants that would add fulfillment or something similar to POS orders?
At this time the retrievable orders that you’ll have access to once their paid for will always be in a
COMPLETED state with no
fulfillment. This is the same with our other verticals like Restaurants as well. We’re constantly working to improve our features based on feedback like this, so I’ll be sure to share your request to the API product team.
Understood. Thanks for the quick replies!