Skip to content

@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

npm install @capawesome/capacitor-square-mobile-payments
npx cap sync

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:

  • $squareMobilePaymentsSdkVersion version of com.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(...)

initialize(options: InitializeOptions) => Promise<void>

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(options: AuthorizeOptions) => Promise<void>

Authorize the SDK with a Square access token.

Only available on Android and iOS.

Param Type
options AuthorizeOptions

Since: 0.0.1


isAuthorized()

isAuthorized() => Promise<IsAuthorizedResult>

Check if the SDK is currently authorized.

Only available on Android and iOS.

Returns: Promise<IsAuthorizedResult>

Since: 0.0.1


deauthorize()

deauthorize() => Promise<void>

Deauthorize the SDK and clear the current authorization.

Only available on Android and iOS.

Since: 0.0.1


showSettings()

showSettings() => Promise<void>

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()

getSettings() => Promise<GetSettingsResult>

Get the current SDK settings.

Only available on Android and iOS.

Returns: Promise<GetSettingsResult>

Since: 0.0.1


startPairing()

startPairing() => Promise<void>

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()

stopPairing() => Promise<void>

Stop the reader pairing process.

Only available on Android and iOS.

Since: 0.0.1


isPairingInProgress()

isPairingInProgress() => Promise<IsPairingInProgressResult>

Check if a pairing process is currently in progress.

Only available on Android and iOS.

Returns: Promise<IsPairingInProgressResult>

Since: 0.0.1


getReaders()

getReaders() => Promise<GetReadersResult>

Get a list of all paired readers.

Only available on Android and iOS.

Returns: Promise<GetReadersResult>

Since: 0.0.1


forgetReader(...)

forgetReader(options: ForgetReaderOptions) => Promise<void>

Forget a paired reader.

Only available on Android and iOS.

Param Type
options ForgetReaderOptions

Since: 0.0.1


retryConnection(...)

retryConnection(options: RetryConnectionOptions) => Promise<void>

Retry connecting to a reader.

Only available on Android and iOS.

Param Type
options RetryConnectionOptions

Since: 0.0.1


startPayment(...)

startPayment(options: StartPaymentOptions) => Promise<void>

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()

cancelPayment() => Promise<void>

Cancel an ongoing payment.

Only available on Android and iOS.

Since: 0.0.1


getAvailableCardInputMethods()

getAvailableCardInputMethods() => Promise<GetAvailableCardInputMethodsResult>

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()

checkPermissions() => Promise<PermissionStatus>

Check the current permission status.

Only available on Android and iOS.

Returns: Promise<PermissionStatus>

Since: 0.0.1


requestPermissions()

requestPermissions() => Promise<PermissionStatus>

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()

removeAllListeners() => Promise<void>

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.


  1. This project is not affiliated with, endorsed by, sponsored by, or approved by Square, Inc. or any of their affiliates or subsidiaries.