| [ Web Proxy ] |
| Viewing: https://docs.nmi.com/docs/start-transaction-android | [Back] [Original] |
Parameters startTransaction(Parameters) Call startTransaction() to initiate a transaction. This can be used to start a Sale transaction. The request accepts various parameters including amount, transaction type, unique reference, whether to enable/disable gratuity and currency.
When the startTransaction() method is successful, asynchronous updates are provided in the following callbacks; transactionUpdate, userNotification, applicationSelection, signatureVerification, and transactionFinished.
Using the ParameterKeys.TransactionPOI parameter allows you to dictate whether the transaction is run on an external device or as a Tap to Pay transaction.
When a single POI is Configured (either PaymentDevice or TapToMobile), it will be automatically selected when starting a transaction.
When both payment types are configured the payment device will be used by default unless the TransactionPOI parameter explicitly specifies Tap to Pay.
Please note that Tap to Pay transactions are currently online only as an auto confirmed sale. Therefore the following parameters are not supported when running a Tap to Pay Transaction:
TransactionType
RefundAccountVerificationDelayOnlineProcessing
TRUEPANKeyEntry
TRUETippingType
OnDeviceTippingEndOfDayTippingBothTippingAutoConfirm
FALSECardEaseReference - when performing a linked refund transaction.Although TippingType is not supported, tipping is still supported for Tap to Pay Transactions. To add tipping, pass TipAmount into StartTransaction. To enable it contact your Account Manager.
To perform a transaction using Tap to Pay on Android, an activity is required to be passed into the Payment Device SDK. This allows the SDK to access NFC permissions to prompt and perform a card read.
Please also note that before initiating a transaction using Tap to Pay, make sure the Request Activity Callback has been implemented. For detailed information on RequestActivity methods and implementation, see the Transaction Events page.
[Unified.png]
To enable contactless payments with Tap to Pay, the integrating application must:
startTransaction()
RequestActivityListener.onRequestActivity
continueRequestedActivity() with an appropriate ActivityCardTapped transaction update is received
For Tap to Pay transactions, you can use the optional TransactionPOI parameter to specify which payment method to use when multiple POIs are configured:
| Parameter | Value | Description |
|---|---|---|
ParameterKeys.TransactionPOI | ParameterValues.TapToMobile | Optional - Explicitly specifies use of Tap to Pay functionality |
During a Tap to Pay transaction, terminateTransaction() can be called between the transaction updates CardEntryPrompted and CardTapped.
If the transaction update CardTapped has been received before terminateTransaction() is called and the result of the transaction when it has finished is Approved, then voidTransaction() can be used to cancel the transaction.
Updated 3 months ago
| Web Proxy Viewer | New URL | Original Page |