Hello Square Team,
We created an order through the Square POS app and then used the Orders API UpdateOrder endpoint to add a service charge.
The service charge is correctly added:
- It appears in Square Dashboard.
- It is included in the Terminal total.
- Issue: It is not displayed as a separate line item on the Terminal.
Device details:
Model: Square Terminal (1st Gen, v2)
Device ID: 542CS145C4005573
Terminal OS: 5.67.0105
Square for Restaurants: 7.24
Square POS: 7.22
Region: UK
Example:
Square Dashboard:
Subtotal: £10.00
TEST GiftTree Service Charge: £1.23
Total: £11.23
Square Terminal:
Subtotal: £10.00
Total: £11.23
The Terminal API documentation mentions that show_itemized_cart requires Terminal software version 6.62+ here.
However, we are not using the Terminal API or creating Terminal checkouts. We only update the existing POS order using the Orders API.
Could you please clarify:
- What does version
6.62 refer to—Terminal OS, Square POS, or Square for Restaurants?
- Is our OS version
5.67.0105 below the required version?
- Why does the device show
Up to date if version 6.62+ is required?
- Is version
6.62+ available for the Square Terminal (1st Gen, v2) in the UK?
- Is displaying a service charge added through
UpdateOrder supported in the standard Square POS/Terminal flow?
Screenshots are attached for reference.
Hopping to get response soon.
Thank you.
show_itemized_cart doesn’t apply to your flow. It’s a DeviceCheckoutOptions property on the Terminal API, only read when you create a checkout via CreateTerminalCheckout, and only active when that checkout includes an order_id (docs). The POS app owns this order and is driving the checkout, so that flag is never read.
On the version numbers: the docs say “Square Terminal version 6.62 or later” without specifying app vs. device OS, which I agree is ambiguous. That said, 6.62 is in the Square app version range, not the Terminal OS range. Your device reports Application: Square for Restaurants 7.25so and OS version: 5.67.0105 as separate fields on different numbering schemes. Comparing 5.67 to 6.62 isn’t like-for-like, and your OS correctly shows “Up to date.”
On the itemization: your total is correct and Dashboard itemizes the charge correctly, so the order data is fine. What’s left is how the Square for Restaurants checkout screen renders a service charge added out-of-band. That’s app display behavior, not an Orders API issue, so it’s outside what the API docs cover.
Two things worth noting. The Terminal API docs do state that order updates aren’t supported once a checkout is IN_PROGRESS and may cause unexpected behavior; different flow from yours, but it suggests modifying an order mid-checkout isn’t a fully supported pattern in general.
If you want to confirm it’s specific to the API path, could you add the same service charge directly in the app and see whether it itemizes?