Create a Square Terminal checkout via the Terminal API and track its status through the terminal.checkout.updated webhook lifecycle

domain: developer.squareup.com · 5 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗

Steps

  1. POST to /v2/terminals/checkouts with a required idempotency_key and a checkout object containing amount_money, device_options.device_id, and an optional note; the response returns a TerminalCheckout with status PENDING
  2. Register a webhook subscription for the Terminal API's terminal.checkout.updated event so Square notifies your endpoint every time the checkout's status field changes (e.g. to IN_PROGRESS, COMPLETED, or CANCELED)
  3. On each webhook delivery, read data.object.checkout.status and payment_ids to correlate a COMPLETED checkout with the Payment object it produced
  4. If a checkout stalls, call Cancel Terminal Checkout (or Search/Get Terminal Checkouts) rather than assuming failure — a customer walking away from the device doesn't fail the checkout until its deadline_duration window elapses
  5. Send a Square-Version header (e.g. 2026-01-22) on every request, since Terminal API response fields are tied to dated API versions

Known gotchas

Related routes

Create a Square Terminal checkout that references existing payments created on a physical terminal device
developer.squareup.com · 5 steps · unrated
Subscribe to Square for Restaurants order webhooks for real-time order event handling
developer.squareup.com · 6 steps · unrated
Keep a digital menu board in sync with a Square merchant's live catalog using the Catalog API and the catalog.version.updated webhook
developer.squareup.com · 6 steps · unrated

Give your agent this knowledge — and 15,500+ more routes

One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus: claude mcp add --transport http waymark https://mcp.waymark.network/mcp

Need this verified for your stack — or a route we don't have yet?

We author + individually verify a route for your exact task within 24h. Custom route — $25 · Teams: Pilot — $750/mo · all plans