Tipping support in the Android SDK
This document provides an overview of tipping functionality available when taking card payments through Zettle Payments SDK for Android.
The usage of tipping is optional. For each call the requestor can specify if tipping should be part of the payment or not. If tipping is enabled, the payment will return both the total amount and the tipping amount.
Example: Merchant initiates a payment of 150 and tipping is enabled. The card holder decides to give an additional 20 as a tip. The total amount returned from the call would be 170 and the tipping amount would contain 20.
The process to enter tips in the card reader may vary between markets due to to differences in tipping behaviour. From an integration perspective, there is no difference however. The market specific logic is handled by the SDK and the card reader.
Please note that the following prerequisites are required to initiate tipping:
- Tipping is only available on the Zettle reader
- Usage of SDK version
- The card reader needs to contain the latest software versions.
- Tipping needs to be enabled for the market connected to the Zettle account used by the merchant. See the list of supported markets for tipping.
Tipping will be made available on a market by market basis. The following markets are supported at the moment:
- United States
- United Kingdom
- The Netherlands
Zettle's tipping function allows customers to add an extra amount to the total sum of their bill (market specific versions: entering total sum or adding an extra amount), and they can do so straight into your card reader. This function only works with a Zettle Reader.
Tipping is optional and is enabled on each call to the
Tipping is not supported by all accounts and card readers, so tipping may not be displayed even when
tippingStyle is passed on the
For help activating tipping, see Manage card payments.
See section prerequisites.
Tipping methods differ by market. In some markets, users can include the tip in the total amount they enter. In some others, users prefer that the reader prompts them to enter the tip after which they add it.
Starting with SDK version
1.36.8, in the US and UK markets, users can add a tip based on a percentage of the total amount.
|Total Amount||Extra Amount||Percentage|
The tipping style is pre-defined per market and is not configurable.
|Market||Tipping style||Supporting SDK version|
|United States||Percentage tipping||1.36.8|
|United Kingdom||Percentage tipping||1.36.8|
|The Netherlands||Total Amount||1.4.0|
To avoid accidental or incorrect entries, the system verifies a maximum level that you can enter for the tip. For example, customers may accidentally input their PIN code instead of a tip amount. The maximum limit is 50% for Europe and 100% for the US. If the entered amount exceeds this level, the card reader will display a warning message stating "Too high amount."
In markets where the tipping style is
Total amount, there card holder is required to enter the amount to be charged including tips. If the user enters an amount that is less than the amount entered by the merchant, the card reader will show a “too low amount” warning message.
Yes, tipping requires a minimum version of the card reader software. It’s highly recommended that merchants upgrade the card reader software prior to accepting payments with tips. The update will take a few minutes to be completed.
The SDK will verify that the correct software is installed on the Zettle card reader when requesting tips. If the card reader software doesn’t support tipping, a message will be displayed asking the merchant to update the card reader software.
- Make sure that the card reader and your smartphone or tablet are charged before you update the software.
- Keep the smartphone or tablet close to the card reader during the update.
What happens if a tipping call is made using a Zettle account in a market that doesn’t support tipping?
The payment function will work as before when the tipping flow is not initiated in the card reader.
Tipping is planned to be introduced in more markets. Information about the availability will be announced on Github and via email.