Hi,
We build a point-of-sale app for service businesses that drives Square Terminals via the Terminal API.
Our sellers have completed credit card surcharge onboarding in the Square Dashboard (Beta, 3%). The Terminal displays the surcharge during checkout. We create checkouts with POST /v2/terminals/checkouts on Square-Version 2026-01-22, and every request sets device_options.allow_auto_card_surcharge: true — retrieving the stored checkouts confirms the flag is persisted. The Terminal runs OS 5.65 / app 7.13 (above the documented 5.57.0000 / 6.79 floor, and “Check for updates” reports up to date). Checkouts are order-backed (order_id set, amount_money pinned to the order total).
Yet completed payments — including credit cards (Visa/Mastercard/Amex, card_details.card.card_type = “CREDIT”, CARD_PRESENT) — have no card_details.applied_card_surcharge_details at all (not even proposed_card_surcharge_money). We verified this across 100+ recent production payments; not one was surcharged.
We understand the seller-facing docs say surcharges are “not supported for … Connected Terminal”, but the 2026-01-22 developer changelog says “Terminal API now supports adding a surcharge to credit card payments in the US”, and allow_auto_card_surcharge exists on DeviceCheckoutOptions for exactly this. Our questions:
- Is Terminal-API auto card surcharging a separately gated beta? If so, how do we enroll (per application, per seller, or both)?
- If it is not yet live, what is the expected GA timeline?
- Are there request-shape constraints we should know about (e.g. order-backed vs. amount-only checkouts, show_itemized_cart, tip settings)?
- If the exclusion is permanent, what is the recommended compliant pattern for fee pass-through on Terminal-API checkouts?
Happy to share our application ID and example payment IDs via DM. Thanks!