What It Does
Open the Square Point of Sale app from a custom mobile application to process in-person payments using Square hardware.
The Point of Sale API lets mobile applications open the Square Point of Sale app to process in-person payments using Square hardware. Developers can use the Point of Sale API to build customized point-of-sale solutions or any other application that requires payments, without worrying about hardware integrations. Square takes on the burden of staying PCI compliant - no checklists, assessments, or audits required. The Point of Sale API is available for native and web apps on iOS and Android.
The Point of Sale API requires an Android or iOS device with the most recent version of Square Point of Sale app installed.
Point of Sale API does not support:
Integration with the Orders API.
Sandbox testing. See our Testing Mobile Apps guide.
Processing card payments with the Point of Sale API requires:
An activated Square merchant account (for accepting card payments).
A Square Reader for accepting card payments.
Processing fees for transactions initiated with the Point of Sale API are identical to fees for transactions initiated directly from Square Point of Sale. See What are Square's Fees? for details.
A complete mobile POS solution is comprised of mobile device. Square card reader, mobile device logic, and a backend service that uses the Catalog API to get items and services for purchase.
A mobile app uses the POS API to create a charge request, start a transaction, open the POS UI, and parse transaction results. The POS API takes care of transmitting a payment to Square for crediting to a Square account.
A charge request includes a payment total amount which can be arbitrary or derived from the unit price of a catalog item or service.
A mobile app should have a backend process to connect to the product catalog defined for the Square account. The backend provides catalog items and services to the mobile device so that the device can show descriptions and unit prices.
A mobile backend is not required if the mobile app does not display the product catalog in a Square account.