I’m using Square Terminal with the Terminal API.
The device logs in correctly with a 6‑digit device code and shows AVAILABLE in the Devices API.
However, every CreateTerminalCheckout request returns NOT_FOUND and nothing appears on the terminal.
A sanitized Devices API response shows both Terminal API and Square POS applications:
Could the terminal still be holding a POS session and preventing Terminal API from becoming active?
How can I clear the POS session or refresh the device state?
Hey @satoshi can you confirm you’re passing the device ID (and not the device code) into the CreateTerminalCheckout request? The device code logs you into the device but you’ll want the ID for the checkout request.
Thank you for your reply.
I tested it using a different method.
I would like to provide some additional information.
Sensitive details are omitted.
Here is the sequence of steps I followed:
• Retrieved my access token and location ID
• Used the access token and location ID to create a device code
• Logged out of the Square POS application on my Square Terminal
• Logged in to the Square Terminal using the device code
• Retrieved the device_id
• Created an order and retrieved the order_id
After that, I sent the following Terminal Checkout request: