Our main question is around device connectivity: is there a supported way to connect a Square Handheld device with a separate external Android device (i.e., an Android device managing/communicating with the Handheld)?
Once that connection is established, our intended workflow is:
The Android app creates the order and applies a discount to it
This order (with the discount already applied) is sent from the Android device to the connected Square Handheld device
The Square Handheld device is then used to complete payment/checkout for that order
So to summarize:
Is Handheld-to-external-Android device connectivity supported, and if so, how (which API/SDK)?
Once connected, can orders (with discounts applied) be pushed from the Android device to the Handheld for checkout?
Is there a supported API or SDK (e.g., Point of Sale API, Terminal API, or similar) that enables this kind of device connectivity and order hand-off? Any documentation or sample integrations would be greatly appreciated.
@Dev-Internetsoft - you can achieve this using the Terminal API. If your integration is using Square’s Orders API, Square can natively support pushing orders (with line items and discounts) to the Square handheld for checkout. See the following documentation: Take Payments for Orders .
@jseok , Can you confirm if terminal APIs works with Square Register device to connect with external Android device? Also confirm Square Register device also supports Order and Checkout apis as well.
from your reply we can confirm Terminal APIs and Orders, Checkout APIs will work with Square Terminal Device and Handheld device.
@Dev-Internetsoft - the Square Register operates differently from the Handheld and Terminal - it is incompatible with the Terminal and Checkout APIs.
For Orders API, an order that is created on the Register can be read via the API, but an order created via API cannot be pushed to the Register to be paid.