CancelTransaction
The CancelTransaction method stops the execution of an ongoing PayTransaction or PreAuthorize call. The system blocks further requests until the cancellation is accepted and confirmed.
Implementation Notes:
- Before Card Presentation: If a card has not been presented yet, the Reader poll sequence stops. The display will show “Cancelling”; the host application must then update the UI using the
ShowMessagecommand. - During Processing: If the card was already presented but processing is not finished, the system returns
CannotCancel. It may take a few seconds to receive theTransactionCompleteevent while the EMV Core waits for the online result. - After Completion: If the transaction is already finished, it returns
NoTransaction. - Undoing Success: To undo a completed transaction, use
VoidTransaction. - Declined Transactions: If
TransactionCompletereturns aDeclinestatus, there is no need to send aVoidTransactioncommand. - Events: In all scenarios, EMV Core will eventually send a
TransactionCompleteevent to finalize the state.
CancelTransaction method:
- JSON
- Android
- Linux
Request:Response:
ConfirmTransaction
A confirmation request is the second stage of an authorization request. It is used to confirm the authorization obtained so that settlement can proceed.
API Signature
- JSON
- Android
- Linux
Response:Request:Response:Parameters:
JSON
JSON
JSON
| Parameter | Description |
|---|---|
| id | Command ID. |
| amount | The actual amount to charge – in minor units (cents). |
| transactionReference | Transaction reference from the PSP. Use the TransactionDbID field from the TransactionComplete event. |
| productID | Optional parameter: ID of the product selected by the consumer. This number will be saved on the server and available for reports. |
| terminal_data | Optional parameter: terminal_data=(key1=value1,key2=value2). |
GetCardToken
The GetCardToken method initiates the card tokenization process, returning a card token without performing a financial transaction.
EMV Core waits for a card to be presented, reads the data, and triggers a CardTokenReceived event:
- Payment Cards: Returns a Base64 string containing the card token.
- CLP Cards (e.g., Mifare): Returns the card UID.
API Signature
- JSON
- Android
- Linux
Request:Response:Parameters:
JSON
| Parameter | Description |
|---|---|
| timeoutSeconds | Maximum number of seconds to wait. If no card arrives within this time – return Timeout status. Maximum value is 60 seconds. |
PreAuthorize
This method initiates a pre-authorization transaction with a specified amount. It helps reserve funds without immediate settlement, for example, EV chargers reserve a maximum amount before actual usage. EMV Core will wait for a card to be presented to the reader, read it, and, if needed, process it with the payment service. It will then send the TransactionComplete event.
API Signature
- JSON
- Android
- Linux
Request:Response:Parameters:
JSON
JSON
| Parameter | Description |
|---|---|
| amount | Amount to charge – in full units (Dollars, not cents). |
| fee | Deprecated – Not used. |
| currency | Taken from configuration since SDK v1.4. |
| productID | Optional parameter: ID of the product selected by the consumer. This number will be saved in the server and available for reports. |
| continuous | If continuous is true, then poll for card will start immediately after card transaction timeout and TransactionComplete event will be sent with status ‘PollContinuous’. |
| timeout | Maximum seconds to wait. If no card arrives, the request returns a Timeout status. |
TransactionComplete event returns with status OK), the application must call the ConfirmTransaction or VoidTransaction methods to complete the workflow.
VoidTransaction
This request is used to void a transaction in two specific cases:
- Release Funds: The transaction was Pre-Authorized but not Confirmed. Voiding releases the reserved funds when the transaction will no longer occur.
- Reversal: The transaction was completed using
PayTransactionbut needs to be canceled.
API Signature
- JSON
- Android
- Linux
Request:Response:Parameters:
JSON
JSON
| Parameter | Description |
|---|---|
| id | Command ID. |
| transactionReference | Transaction reference came from PSP with the TransactionComplete event. |