@capawesome/capacitor-square-mobile-payments¶
Unofficial Capacitor plugin for Square Mobile Payments SDK.1
Features¶
This plugin provides a comprehensive integration with Square's Mobile Payments SDK for in-person payment processing. Here are some of the key features:
- 🖥️ Cross-platform: Supports Android and iOS.
- 💳 Payment Processing: Accept in-person payments with Square card readers.
- 📱 Reader Management: Pair, manage, and monitor Square card readers.
- 🔐 Secure Authorization: OAuth-based authorization with Square access tokens.
- 🎨 Flexible UI: Choose between Square's default payment UI or build your own custom interface.
- 📊 Real-time Updates: Listen to reader status changes, pairing events, and payment completion.
- 💰 Multiple Payment Methods: Support for contactless (tap), chip (dip), swipe, and manual entry.
- 🌐 Online & Offline: Process payments online or offline with automatic sync.
- 🧾 Receipt Data: Access card details, authorization codes, and EMV data for compliant receipts.
- 🔁 Up-to-date: Always supports the latest Capacitor version.
Missing a feature? Just open an issue and we'll take a look!
Compatibility¶
| Plugin Version | Capacitor Version | Status |
|---|---|---|
| 0.1.x | >=8.x.x | Active support |
Installation¶
Android¶
Variables¶
If needed, you can define the following project variable in your app's variables.gradle file to change the default version of the dependency:
$squareMobilePaymentsSdkVersionversion ofcom.squareup.sdk:mobile-payments-sdk(default:2.3.4)
This can be useful if you encounter dependency conflicts with other plugins in your project.
iOS¶
Privacy Descriptions¶
Add the NSLocationWhenInUseUsageDescription and NSBluetoothAlwaysUsageDescription keys to the ios/App/App/Info.plist file, which tells the user why your app is requesting location and Bluetooth permissions:
<key>NSBluetoothAlwaysUsageDescription</key>
<string>We need Bluetooth access to connect to Square card readers.</string>
<key>NSLocationWhenInUseUsageDescription</key>
<string>We need your location to confirm payments are occurring in a supported Square location.</string>
Configuration¶
No configuration required for this plugin.
Usage¶
import { SquareMobilePayments, CardInputMethod } from '@capawesome/capacitor-square-mobile-payments';
const initializeSDK = async () => {
await SquareMobilePayments.initialize({
locationId: 'YOUR_LOCATION_ID',
});
await SquareMobilePayments.authorize({
accessToken: 'YOUR_ACCESS_TOKEN',
});
};
const checkAuthorization = async () => {
const { authorized } = await SquareMobilePayments.isAuthorized();
console.log('Authorized:', authorized);
};
const pairReader = async () => {
await SquareMobilePayments.startPairing();
};
const getReaders = async () => {
const { readers } = await SquareMobilePayments.getReaders();
for (const reader of readers) {
console.log('Reader:', reader.serialNumber, reader.model, reader.status);
}
};
const processPayment = async () => {
await SquareMobilePayments.startPayment({
paymentParameters: {
amountMoney: {
amount: 100,
currency: 'USD',
},
paymentAttemptId: crypto.randomUUID(),
},
promptParameters: {
mode: 'DEFAULT',
additionalMethods: ['KEYED'],
},
});
};
const listenToPaymentEvents = () => {
SquareMobilePayments.addListener('paymentDidFinish', (event) => {
console.log('Payment completed:', event.payment.id);
console.log('Amount:', event.payment.amountMoney.amount);
console.log('Card:', event.payment.cardDetails?.card.lastFourDigits);
});
SquareMobilePayments.addListener('paymentDidFail', (event) => {
console.error('Payment failed:', event.message);
});
SquareMobilePayments.addListener('paymentDidCancel', (event) => {
console.log('Payment cancelled');
});
};
const listenToReaderEvents = () => {
SquareMobilePayments.addListener('readerWasAdded', (event) => {
console.log('Reader added:', event.reader.serialNumber);
});
SquareMobilePayments.addListener('readerDidChange', (event) => {
console.log('Reader changed:', event.reader.serialNumber, event.change);
});
SquareMobilePayments.addListener('availableCardInputMethodsDidChange', (event) => {
console.log('Available methods:', event.cardInputMethods);
});
};
const getAvailableMethods = async () => {
const { cardInputMethods } = await SquareMobilePayments.getAvailableCardInputMethods();
console.log('Available card input methods:', cardInputMethods);
};
API¶
initialize(...)authorize(...)isAuthorized()deauthorize()showSettings()getSettings()startPairing()stopPairing()isPairingInProgress()getReaders()forgetReader(...)retryConnection(...)startPayment(...)cancelPayment()getAvailableCardInputMethods()checkPermissions()requestPermissions()addListener('readerPairingDidBegin', ...)addListener('readerPairingDidSucceed', ...)addListener('readerPairingDidFail', ...)addListener('readerWasAdded', ...)addListener('readerWasRemoved', ...)addListener('readerDidChange', ...)addListener('availableCardInputMethodsDidChange', ...)addListener('paymentDidFinish', ...)addListener('paymentDidFail', ...)addListener('paymentDidCancel', ...)removeAllListeners()- Interfaces
- Type Aliases
- Enums
initialize(...)¶
Initialize the Square Mobile Payments SDK.
This method must be called before any other method.
Only available on Android and iOS.
| Param | Type |
|---|---|
options |
InitializeOptions |
Since: 0.0.1
authorize(...)¶
Authorize the SDK with a Square access token.
Only available on Android and iOS.
| Param | Type |
|---|---|
options |
AuthorizeOptions |
Since: 0.0.1
isAuthorized()¶
Check if the SDK is currently authorized.
Only available on Android and iOS.
Returns: Promise<IsAuthorizedResult>
Since: 0.0.1
deauthorize()¶
Deauthorize the SDK and clear the current authorization.
Only available on Android and iOS.
Since: 0.0.1
showSettings()¶
Show the Square settings screen.
This displays a pre-built settings UI where merchants can view and manage their paired readers.
Only available on Android and iOS.
Since: 0.0.1
getSettings()¶
Get the current SDK settings.
Only available on Android and iOS.
Returns: Promise<GetSettingsResult>
Since: 0.0.1
startPairing()¶
Start pairing with a Square reader.
This initiates the reader pairing process. The SDK will search for nearby readers and pair with the first one found.
Only available on Android and iOS.
Since: 0.0.1
stopPairing()¶
Stop the reader pairing process.
Only available on Android and iOS.
Since: 0.0.1
isPairingInProgress()¶
Check if a pairing process is currently in progress.
Only available on Android and iOS.
Returns: Promise<IsPairingInProgressResult>
Since: 0.0.1
getReaders()¶
Get a list of all paired readers.
Only available on Android and iOS.
Returns: Promise<GetReadersResult>
Since: 0.0.1
forgetReader(...)¶
Forget a paired reader.
Only available on Android and iOS.
| Param | Type |
|---|---|
options |
ForgetReaderOptions |
Since: 0.0.1
retryConnection(...)¶
Retry connecting to a reader.
Only available on Android and iOS.
| Param | Type |
|---|---|
options |
RetryConnectionOptions |
Since: 0.0.1
startPayment(...)¶
Start a payment flow.
This presents the payment UI and processes the payment using the specified parameters. Only one payment can be active at a time.
Only available on Android and iOS.
| Param | Type |
|---|---|
options |
StartPaymentOptions |
Since: 0.0.1
cancelPayment()¶
Cancel an ongoing payment.
Only available on Android and iOS.
Since: 0.0.1
getAvailableCardInputMethods()¶
Get the currently available card input methods.
This returns the card entry methods that are available based on the connected readers (e.g., TAP, DIP, SWIPE, KEYED).
Only available on Android and iOS.
Returns: Promise<GetAvailableCardInputMethodsResult>
Since: 0.0.1
checkPermissions()¶
Check the current permission status.
Only available on Android and iOS.
Returns: Promise<PermissionStatus>
Since: 0.0.1
requestPermissions()¶
Request the required permissions.
Only available on Android and iOS.
Returns: Promise<PermissionStatus>
Since: 0.0.1
addListener('readerPairingDidBegin', ...)¶
addListener(eventName: 'readerPairingDidBegin', listenerFunc: ReaderPairingDidBeginListener) => Promise<PluginListenerHandle>
Listen for reader pairing events.
Only available on Android and iOS.
| Param | Type |
|---|---|
eventName |
'readerPairingDidBegin' |
listenerFunc |
ReaderPairingDidBeginListener |
Returns: Promise<PluginListenerHandle>
Since: 0.0.1
addListener('readerPairingDidSucceed', ...)¶
addListener(eventName: 'readerPairingDidSucceed', listenerFunc: ReaderPairingDidSucceedListener) => Promise<PluginListenerHandle>
Listen for successful reader pairing events.
Only available on Android and iOS.
| Param | Type |
|---|---|
eventName |
'readerPairingDidSucceed' |
listenerFunc |
ReaderPairingDidSucceedListener |
Returns: Promise<PluginListenerHandle>
Since: 0.0.1
addListener('readerPairingDidFail', ...)¶
addListener(eventName: 'readerPairingDidFail', listenerFunc: ReaderPairingDidFailListener) => Promise<PluginListenerHandle>
Listen for failed reader pairing events.
Only available on Android and iOS.
| Param | Type |
|---|---|
eventName |
'readerPairingDidFail' |
listenerFunc |
ReaderPairingDidFailListener |
Returns: Promise<PluginListenerHandle>
Since: 0.0.1
addListener('readerWasAdded', ...)¶
addListener(eventName: 'readerWasAdded', listenerFunc: ReaderWasAddedListener) => Promise<PluginListenerHandle>
Listen for reader added events.
Only available on Android and iOS.
| Param | Type |
|---|---|
eventName |
'readerWasAdded' |
listenerFunc |
ReaderWasAddedListener |
Returns: Promise<PluginListenerHandle>
Since: 0.0.1
addListener('readerWasRemoved', ...)¶
addListener(eventName: 'readerWasRemoved', listenerFunc: ReaderWasRemovedListener) => Promise<PluginListenerHandle>
Listen for reader removed events.
Only available on Android and iOS.
| Param | Type |
|---|---|
eventName |
'readerWasRemoved' |
listenerFunc |
ReaderWasRemovedListener |
Returns: Promise<PluginListenerHandle>
Since: 0.0.1
addListener('readerDidChange', ...)¶
addListener(eventName: 'readerDidChange', listenerFunc: ReaderDidChangeListener) => Promise<PluginListenerHandle>
Listen for reader status and property changes.
Only available on Android and iOS.
| Param | Type |
|---|---|
eventName |
'readerDidChange' |
listenerFunc |
ReaderDidChangeListener |
Returns: Promise<PluginListenerHandle>
Since: 0.0.1
addListener('availableCardInputMethodsDidChange', ...)¶
addListener(eventName: 'availableCardInputMethodsDidChange', listenerFunc: AvailableCardInputMethodsDidChangeListener) => Promise<PluginListenerHandle>
Listen for available card input method changes.
Only available on Android and iOS.
| Param | Type |
|---|---|
eventName |
'availableCardInputMethodsDidChange' |
listenerFunc |
AvailableCardInputMethodsDidChangeListener |
Returns: Promise<PluginListenerHandle>
Since: 0.0.1
addListener('paymentDidFinish', ...)¶
addListener(eventName: 'paymentDidFinish', listenerFunc: PaymentDidFinishListener) => Promise<PluginListenerHandle>
Listen for successful payment completion events.
Only available on Android and iOS.
| Param | Type |
|---|---|
eventName |
'paymentDidFinish' |
listenerFunc |
PaymentDidFinishListener |
Returns: Promise<PluginListenerHandle>
Since: 0.0.1
addListener('paymentDidFail', ...)¶
addListener(eventName: 'paymentDidFail', listenerFunc: PaymentDidFailListener) => Promise<PluginListenerHandle>
Listen for failed payment events.
Only available on Android and iOS.
| Param | Type |
|---|---|
eventName |
'paymentDidFail' |
listenerFunc |
PaymentDidFailListener |
Returns: Promise<PluginListenerHandle>
Since: 0.0.1
addListener('paymentDidCancel', ...)¶
addListener(eventName: 'paymentDidCancel', listenerFunc: PaymentDidCancelListener) => Promise<PluginListenerHandle>
Listen for cancelled payment events.
Only available on Android and iOS.
| Param | Type |
|---|---|
eventName |
'paymentDidCancel' |
listenerFunc |
PaymentDidCancelListener |
Returns: Promise<PluginListenerHandle>
Since: 0.0.1
removeAllListeners()¶
Remove all listeners for this plugin.
Only available on Android and iOS.
Since: 0.0.1
Interfaces¶
InitializeOptions¶
| Prop | Type | Description | Since |
|---|---|---|---|
locationId |
string |
The Square location ID. | 0.0.1 |
AuthorizeOptions¶
| Prop | Type | Description | Since |
|---|---|---|---|
accessToken |
string |
The Square access token. | 0.0.1 |
IsAuthorizedResult¶
| Prop | Type | Description | Since |
|---|---|---|---|
authorized |
boolean |
Whether the SDK is currently authorized. | 0.0.1 |
GetSettingsResult¶
| Prop | Type | Description | Since |
|---|---|---|---|
version |
string |
The SDK version. | 0.0.1 |
environment |
Environment |
The current environment. | 0.0.1 |
IsPairingInProgressResult¶
| Prop | Type | Description | Since |
|---|---|---|---|
inProgress |
boolean |
Whether a pairing process is currently in progress. | 0.0.1 |
GetReadersResult¶
| Prop | Type | Description | Since |
|---|---|---|---|
readers |
ReaderInfo[] |
The list of paired readers. | 0.0.1 |
ReaderInfo¶
| Prop | Type | Description | Since |
|---|---|---|---|
serialNumber |
string |
The reader's serial number. | 0.0.1 |
model |
ReaderModel |
The reader's model. | 0.0.1 |
status |
ReaderStatus |
The reader's current status. | 0.0.1 |
firmwareVersion |
string |
The reader's firmware version. | 0.0.1 |
batteryLevel |
number |
The reader's battery level (0-100). | 0.0.1 |
isCharging |
boolean |
Whether the reader is currently charging. | 0.0.1 |
supportedCardInputMethods |
CardInputMethod[] |
The card input methods supported by this reader. | 0.0.1 |
unavailableReasonInfo |
UnavailableReasonInfo |
Additional information about why the reader is unavailable. Only present when status is ReaderUnavailable. | 0.0.1 |
UnavailableReasonInfo¶
| Prop | Type | Description | Since |
|---|---|---|---|
reason |
UnavailableReason |
The reason code why the reader is unavailable. | 0.0.1 |
message |
string |
A human-readable message describing why the reader is unavailable. | 0.0.1 |
ForgetReaderOptions¶
| Prop | Type | Description | Since |
|---|---|---|---|
serialNumber |
string |
The serial number of the reader to forget. | 0.0.1 |
RetryConnectionOptions¶
| Prop | Type | Description | Since |
|---|---|---|---|
serialNumber |
string |
The serial number of the reader to retry connection. | 0.0.1 |
StartPaymentOptions¶
| Prop | Type | Description | Since |
|---|---|---|---|
paymentParameters |
PaymentParameters |
The payment parameters. | 0.0.1 |
promptParameters |
PromptParameters |
The prompt parameters. | 0.0.1 |
PaymentParameters¶
| Prop | Type | Description | Default | Since |
|---|---|---|---|---|
amountMoney |
Money |
The amount of money to charge. | 0.0.1 | |
paymentAttemptId |
string |
A unique identifier for this payment attempt. This is used for idempotent payment requests. | 0.0.1 | |
processingMode |
ProcessingMode |
The processing mode for this payment. | ProcessingMode.AutoDetect |
0.0.1 |
referenceId |
string |
A user-defined reference ID to associate with the payment. | 0.0.1 | |
note |
string |
An optional note to add to the payment. | 0.0.1 | |
orderId |
string |
The Square order ID to associate with this payment. | 0.0.1 | |
tipMoney |
Money |
The tip amount. | 0.0.1 | |
applicationFee |
Money |
The application fee. | 0.0.1 | |
autocomplete |
boolean |
Whether to automatically complete the payment. If false, the payment will be authorized but not captured, requiring manual completion via the Payments API. | true |
0.0.1 |
delayDuration |
string |
The duration to delay before automatically completing or canceling the payment. Only applicable when autocomplete is false. | 0.0.1 | |
delayAction |
DelayAction |
The action to take when the delay duration expires. Only applicable when autocomplete is false. | 0.0.1 |
Money¶
| Prop | Type | Description | Since |
|---|---|---|---|
amount |
number |
The amount in the smallest currency unit (e.g., cents for USD). | 0.0.1 |
currency |
CurrencyCode |
The ISO 4217 currency code. | 0.0.1 |
PromptParameters¶
| Prop | Type | Description | Default | Since |
|---|---|---|---|---|
mode |
PromptMode |
The prompt mode. | PromptMode.Default |
0.0.1 |
additionalMethods |
AdditionalPaymentMethod[] |
Additional payment methods to allow. | [] |
0.0.1 |
GetAvailableCardInputMethodsResult¶
| Prop | Type | Description | Since |
|---|---|---|---|
cardInputMethods |
CardInputMethod[] |
The available card input methods. | 0.0.1 |
PermissionStatus¶
| Prop | Type | Description | Since |
|---|---|---|---|
location |
PermissionState |
Permission state for accessing location. Required to confirm that payments are occurring in a supported Square location. | 0.0.1 |
recordAudio |
PermissionState |
Permission state for recording audio. Required to receive data from magstripe readers. Only available on Android. | 0.0.1 |
bluetoothConnect |
PermissionState |
Permission state for Bluetooth connect. Required to receive data from contactless and chip readers. Only available on Android. | 0.0.1 |
bluetoothScan |
PermissionState |
Permission state for Bluetooth scan. Required to store information during checkout. Only available on Android. | 0.0.1 |
readPhoneState |
PermissionState |
Permission state for reading phone state. Required to identify the device sending information to Square servers. Only available on Android. | 0.0.1 |
bluetooth |
PermissionState |
Permission state for using Bluetooth. Only available on iOS. | 0.0.1 |
PluginListenerHandle¶
| Prop | Type |
|---|---|
remove |
() => Promise<void> |
ReaderPairingDidFailEvent¶
| Prop | Type | Description | Since |
|---|---|---|---|
code |
string |
The error code. | 0.0.1 |
message |
string |
The error message. | 0.0.1 |
ReaderWasAddedEvent¶
| Prop | Type | Description | Since |
|---|---|---|---|
reader |
ReaderInfo |
The reader that was added. | 0.0.1 |
ReaderWasRemovedEvent¶
| Prop | Type | Description | Since |
|---|---|---|---|
reader |
ReaderInfo |
The reader that was removed. | 0.0.1 |
ReaderDidChangeEvent¶
| Prop | Type | Description | Since |
|---|---|---|---|
reader |
ReaderInfo |
The reader that changed. | 0.0.1 |
change |
ReaderChange |
The type of change that occurred. | 0.0.1 |
AvailableCardInputMethodsDidChangeEvent¶
| Prop | Type | Description | Since |
|---|---|---|---|
cardInputMethods |
CardInputMethod[] |
The available card input methods. | 0.0.1 |
PaymentDidFinishEvent¶
| Prop | Type | Description | Since |
|---|---|---|---|
payment |
Payment |
The completed payment. | 0.0.1 |
Payment¶
| Prop | Type | Description | Since |
|---|---|---|---|
id |
string | null |
The unique identifier for this payment. For offline payments, this may be null until synced. | 0.0.1 |
type |
PaymentType |
The payment type. | 0.0.1 |
status |
PaymentStatus |
The payment status. | 0.0.1 |
amountMoney |
Money |
The amount paid. | 0.0.1 |
tipMoney |
Money |
The tip amount. | 0.0.1 |
applicationFee |
Money |
The application fee. | 0.0.1 |
referenceId |
string |
The reference ID provided in the payment parameters. | 0.0.1 |
orderId |
string |
The order ID associated with this payment. | 0.0.1 |
cardDetails |
CardPaymentDetails |
Card payment details. Only present for card payments. | 0.0.1 |
createdAt |
string |
The time the payment was created (ISO 8601 format). | 0.0.1 |
updatedAt |
string |
The time the payment was updated (ISO 8601 format). | 0.0.1 |
CardPaymentDetails¶
| Prop | Type | Description | Since |
|---|---|---|---|
card |
Card |
The card information. | 0.0.1 |
entryMethod |
CardInputMethod |
The card entry method used. | 0.0.1 |
authorizationCode |
string |
The authorization code. | 0.0.1 |
applicationName |
string |
The EMV application name. | 0.0.1 |
applicationId |
string |
The EMV application identifier. | 0.0.1 |
Card¶
| Prop | Type | Description | Since |
|---|---|---|---|
brand |
CardBrand |
The card brand. | 0.0.1 |
lastFourDigits |
string |
The last four digits of the card number. | 0.0.1 |
cardholderName |
string |
The cardholder name. | 0.0.1 |
expirationMonth |
number |
The card expiration month (1-12). | 0.0.1 |
expirationYear |
number |
The card expiration year. | 0.0.1 |
PaymentDidFailEvent¶
| Prop | Type | Description | Since |
|---|---|---|---|
payment |
Payment |
The failed payment. | 0.0.1 |
code |
string |
The error code. | 0.0.1 |
message |
string |
The error message. | 0.0.1 |
PaymentDidCancelEvent¶
| Prop | Type | Description | Since |
|---|---|---|---|
payment |
Payment |
The cancelled payment. | 0.0.1 |
Type Aliases¶
CurrencyCode¶
string
PermissionState¶
'prompt' | 'prompt-with-rationale' | 'granted' | 'denied'
ReaderPairingDidBeginListener¶
Callback to receive reader pairing start notifications.
(): void
ReaderPairingDidSucceedListener¶
Callback to receive reader pairing success notifications.
(): void
ReaderPairingDidFailListener¶
Callback to receive reader pairing failure notifications.
(event: ReaderPairingDidFailEvent): void
ReaderWasAddedListener¶
Callback to receive reader added notifications.
(event: ReaderWasAddedEvent): void
ReaderWasRemovedListener¶
Callback to receive reader removed notifications.
(event: ReaderWasRemovedEvent): void
ReaderDidChangeListener¶
Callback to receive reader change notifications.
(event: ReaderDidChangeEvent): void
AvailableCardInputMethodsDidChangeListener¶
Callback to receive available card input method change notifications.
(event: AvailableCardInputMethodsDidChangeEvent): void
PaymentDidFinishListener¶
Callback to receive payment completion notifications.
(event: PaymentDidFinishEvent): void
PaymentDidFailListener¶
Callback to receive payment failure notifications.
(event: PaymentDidFailEvent): void
PaymentDidCancelListener¶
Callback to receive payment cancellation notifications.
(event: PaymentDidCancelEvent): void
Enums¶
Environment¶
| Members | Value | Description | Since |
|---|---|---|---|
Production |
'production' |
Production environment. | 0.0.1 |
Sandbox |
'sandbox' |
Sandbox environment for testing. | 0.0.1 |
ReaderModel¶
| Members | Value | Description | Since |
|---|---|---|---|
ContactlessAndChip |
'CONTACTLESS_AND_CHIP' |
Square Reader for contactless and chip. | 0.0.1 |
Magstripe |
'MAGSTRIPE' |
Square Reader for magstripe. | 0.0.1 |
Stand |
'STAND' |
Square Stand. | 0.0.1 |
Unknown |
'UNKNOWN' |
Unknown reader model. | 0.0.1 |
ReaderStatus¶
| Members | Value | Description | Since |
|---|---|---|---|
Ready |
'READY' |
Reader is paired, connected, and ready to accept payments. | 0.0.1 |
ConnectingToSquare |
'CONNECTING_TO_SQUARE' |
Reader is connecting to Square servers. | 0.0.1 |
ConnectingToDevice |
'CONNECTING_TO_DEVICE' |
Reader is connecting to the mobile device. | 0.0.1 |
Faulty |
'FAULTY' |
Reader has a hardware or connection error in an unrecoverable state. | 0.0.1 |
ReaderUnavailable |
'READER_UNAVAILABLE' |
Reader is connected but unable to process payments. | 0.0.1 |
CardInputMethod¶
| Members | Value | Description | Since |
|---|---|---|---|
Tap |
'TAP' |
Contactless card tap (NFC). | 0.0.1 |
Dip |
'DIP' |
EMV chip card insertion. | 0.0.1 |
Swipe |
'SWIPE' |
Magnetic stripe swipe. | 0.0.1 |
Keyed |
'KEYED' |
Manually keyed card entry. | 0.0.1 |
UnavailableReason¶
| Members | Value | Description | Since |
|---|---|---|---|
BluetoothError |
'BLUETOOTH_ERROR' |
Bluetooth connection issue. Only available on iOS. | 0.0.1 |
BluetoothFailure |
'BLUETOOTH_FAILURE' |
Bluetooth failure. Only available on Android. | 0.0.1 |
BluetoothDisabled |
'BLUETOOTH_DISABLED' |
Bluetooth is disabled. Only available on Android. | 0.0.1 |
FirmwareUpdate |
'FIRMWARE_UPDATE' |
Reader firmware is updating. Only available on iOS. | 0.0.1 |
BlockingUpdate |
'BLOCKING_UPDATE' |
Blocking firmware update. Only available on Android. | 0.0.1 |
ReaderUnavailableOffline |
'READER_UNAVAILABLE_OFFLINE' |
Reader is unavailable offline. Only available on Android. | 0.0.1 |
DeviceDeveloperMode |
'DEVICE_DEVELOPER_MODE' |
Device is in developer mode. Only available on Android. | 0.0.1 |
Unknown |
'UNKNOWN' |
Unknown reason. | 0.0.1 |
ProcessingMode¶
| Members | Value | Description | Since |
|---|---|---|---|
AutoDetect |
'AUTO_DETECT' |
Automatically detect the best processing mode (online or offline). | 0.0.1 |
OnlineOnly |
'ONLINE_ONLY' |
Process the payment online only. | 0.0.1 |
OfflineOnly |
'OFFLINE_ONLY' |
Allow offline payment processing. | 0.0.1 |
DelayAction¶
| Members | Value | Description | Since |
|---|---|---|---|
Complete |
'COMPLETE' |
Automatically complete the payment when the delay expires. | 0.0.1 |
Cancel |
'CANCEL' |
Automatically cancel the payment when the delay expires. | 0.0.1 |
PromptMode¶
| Members | Value | Description | Since |
|---|---|---|---|
Default |
'DEFAULT' |
Use the default Square payment UI. | 0.0.1 |
Custom |
'CUSTOM' |
Use a custom payment UI. | 0.0.1 |
AdditionalPaymentMethod¶
| Members | Value | Description | Since |
|---|---|---|---|
Keyed |
'KEYED' |
Allow manually keyed card entry. | 0.0.1 |
Cash |
'CASH' |
Allow cash payments. | 0.0.1 |
ReaderChange¶
| Members | Value | Description | Since |
|---|---|---|---|
BatteryDidBeginCharging |
'BATTERY_DID_BEGIN_CHARGING' |
Reader battery started charging. Only available on iOS. | 0.0.1 |
BatteryDidEndCharging |
'BATTERY_DID_END_CHARGING' |
Reader battery stopped charging. Only available on iOS. | 0.0.1 |
BatteryLevelDidChange |
'BATTERY_LEVEL_DID_CHANGE' |
Reader battery level changed. Only available on iOS. | 0.0.1 |
BatteryCharging |
'BATTERY_CHARGING' |
Reader battery charging status changed. Only available on Android. | 0.0.1 |
Added |
'ADDED' |
Reader was added. Only available on Android. | 0.0.1 |
Removed |
'REMOVED' |
Reader was removed. Only available on Android. | 0.0.1 |
StatusDidChange |
'STATUS_DID_CHANGE' |
Reader status changed. | 0.0.1 |
PaymentType¶
| Members | Value | Description | Since |
|---|---|---|---|
Online |
'ONLINE' |
Payment processed online. | 0.0.1 |
Offline |
'OFFLINE' |
Payment processed offline. | 0.0.1 |
PaymentStatus¶
| Members | Value | Description | Since |
|---|---|---|---|
Completed |
'COMPLETED' |
Payment was completed successfully. | 0.0.1 |
Approved |
'APPROVED' |
Payment was approved but not yet completed. | 0.0.1 |
Canceled |
'CANCELED' |
Payment was canceled. | 0.0.1 |
Failed |
'FAILED' |
Payment failed. | 0.0.1 |
Pending |
'PENDING' |
Payment is pending. | 0.0.1 |
CardBrand¶
| Members | Value | Description | Since |
|---|---|---|---|
Visa |
'VISA' |
Visa card. | 0.0.1 |
Mastercard |
'MASTERCARD' |
Mastercard. | 0.0.1 |
AmericanExpress |
'AMERICAN_EXPRESS' |
American Express card. | 0.0.1 |
Discover |
'DISCOVER' |
Discover card. | 0.0.1 |
DiscoverDiners |
'DISCOVER_DINERS' |
Discover Diners card. | 0.0.1 |
Jcb |
'JCB' |
JCB card. | 0.0.1 |
UnionPay |
'UNION_PAY' |
UnionPay card. | 0.0.1 |
Interac |
'INTERAC' |
Interac card. | 0.0.1 |
Eftpos |
'EFTPOS' |
Eftpos card. | 0.0.1 |
Other |
'OTHER' |
Other or unknown card brand. | 0.0.1 |
Changelog¶
See CHANGELOG.md.
License¶
See LICENSE.
-
This project is not affiliated with, endorsed by, sponsored by, or approved by Square, Inc. or any of their affiliates or subsidiaries. ↩