We are integrating a custom iPad front desk application with our existing second-generation Square Register (S252) and original USB-connected customer display/card reader (S251). Our requirement is for staff to build a complete unpaid sale in the iPad app and tap once so that the same itemized sale becomes the active native Register checkout, ready for card or cash payment. A documented single scan of a whole-order QR code on the Register-connected scanner could also work. Staff must not create, search for, or manually open a ticket. We need the original customer reader, Register receipt, and cash-drawer workflow; a separate Square Terminal is a different workflow.
Please answer these separately for Square Register:
- C1 — payable unpaid order: Can an external application create a complete itemized unpaid order that this Register can actually collect payment against?
- C2 — active checkout: Can the application make that exact order active on the intended Register automatically, or through one supported whole-order QR scan, without staff creating/searching/opening a ticket?
For each, is the mechanism supported now, unsupported, or gated by partner/account access? If supported, please name the API/SDK/partner product, current eligibility, required POS mode/version/scopes, documentation and example. How does it select the intended Register, handle a busy checkout, repeat sends, cancellation and disconnects, and return the exact order/payment IDs needed to prevent duplicate collection? For QR, what payload and native whole-order action are supported? Does it preserve the original customer reader, receipt printer and cash drawer?
Our recorded test baseline is Square OS 7.51.0044 and Square POS 7.28.1 on the S252; S251 reader firmware 4.18.98. We will verify current versions at a device test. We can provide merchant/application identifiers and full serials privately if Square needs them.
We have seen Square’s documentation that POS-created orders cannot be updated through UpdateOrder and forum guidance that open-order access is limited. An API-created order appearing in a list, an IN_STORE fulfillment, an added catalog item, or an HTTP success response alone would not establish C2. Please identify a supported route for both capabilities or state which is unavailable. We would like a technical demonstration with a multi-line unpaid cart, quantity, discount, tax, busy-device handling, repeated handoff and cancellation on the original Register.