Cancel Checkout with Terminal API

When we attempt to issue a Cancel Terminal Checkout call, we are occasionally getting an HTTP 400 response with the body of:
{“errors”: [{“code”: “INVALID_VALUE”,“detail”: “Cannot transition from status IN_PROGRESS to status CANCELED with cancel_reason SELLER_CANCELED”,“field”: “status”,“category”: “INVALID_REQUEST_ERROR”}]}

We should be able to cancel a request that is IN_PROGRESS, right? Is this a known issue?

Unfortunately this is a known feature request, and it’s currently documented as:

While the status of the checkout is PENDING , the POS client or the buyer can cancel the checkout. When the status is IN_PROGRESS , the process continues until COMPLETED . At that time, the POS client can query for the final state of the checkout.

Currently, you cannot cancel an IN_PROGRESS checkout.

Ah ok. Where is that documented? I was working off the reference here: https://developer.squareup.com/reference/square/terminal-api/cancel-terminal-checkout

Is the checkout in PENDING status until the Terminal picks up on it?

Found both answers at https://developer.squareup.com/docs/terminal-api/square-terminal-payments

Just wanted to update here: this is now been released. You can cancel an IN_PROGRESS checkout :smiley:

Great! Thanks so much for letting me know.