Skip to content
A simple library for letting Point of Sale take in-store payments for your app using Point of Sale API.
Branch: master
Clone or download
Salvatore Testa
Salvatore Testa Merge pull request #46 from square/salvatoret/remove-buildToolsVersion
Remove buildToolsVersion from build.gradle files
Latest commit 44da10f Jul 11, 2019

Point of Sale Android SDK

The Point of Sale Android SDK lets you quickly build custom Android point-of-sale applications that take swipe, dip, or tap payments through Square hardware.

Get started!

Need help?

Here's how to get help.

Building the Hellocharge Sample App

The hellocharge app is available in the sample-hellocharge folder.

Check out this repo:

git clone
cd point-of-sale-android-sdk

Create a file in the sample-hellocharge folder, with a clientId key set to your application's client id which is the same as your application id in the Square Developer Portal (sq0idp-XXXXXXXXXXXXXXX). Do NOT use a sandbox clientId, as those do not work for the Point of Sale API.

echo clientId=\"[put your clientId here]\" > sample-hellocharge/

Build the SDK and the sample app:

./gradlew build

Add the SHA1 fingerprint of the sample app to your application dashboard:

keytool -list -printcert -jarfile ./sample-hellocharge/build/outputs/apk/sample-hellocharge-debug.apk

Install the sample app:

./gradlew :sample-hellocharge:installDebug


Bikeshop Sample App

The bikeshop is an example of a real point-of-sale application, available in the sample-bikeshop folder. To build this sample app, follow the same instructions as above, substituting "hellocharge" for "bikeshop".


Contributions are welcome! Please read our contributing guidelines.


Copyright 2016 Square, Inc.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
See the License for the specific language governing permissions and
limitations under the License.
You can’t perform that action at this time.