# Response Parameters

This reference page lists all the output parameters (intent extras) returned by the Tap on Phone application.

When you launch an intent using the Android Activity Result API, the Tap on Phone application returns a result code (`RESULT_OK` or `RESULT_CANCELED`) along with an `Intent` object containing these data fields.

## Success Parameters (RESULT_OK)

When an operation finishes without a fatal system error or user cancellation, the Tap on Phone application returns `Activity.RESULT_OK`. You extract the following parameters from the returned intent data to record the transaction and generate receipts.

<Callout type="warning">

`RESULT_OK` indicates that the Tap on Phone app successfully processed the request. It does **not** mean a financial transaction was approved. Always check the `status` parameter to determine the actual financial outcome.

</Callout>

### Transaction Status

| Parameter Name | Data Type | Description |
| :--- | :--- | :--- |
| `status` | String | The definitive final status of the financial transaction. Values are `APPROVED` or `DECLINED`. |
| `authorized` | Boolean | A convenience boolean derived from the `status` field. Returns `true` if approved, `false` if declined. |
| `detailedStatus` | String | The detailed internal status of the transaction. *Note: Do not use this to check the final approval status, as it may reflect a temporary state.* |
| `declineError` | String | The system error code if the transaction is declined. |
| `declineCause` | String | The human-readable description of the decline cause. |

### Identifiers

| Parameter Name | Data Type | Description |
| :--- | :--- | :--- |
| `receipt` | String | The primary unique identifier used to fetch transaction data from the backend. |
| `transactionId` | Int | The Tap on Phone internal ID for the transaction. You must save this if you intend to perform a refund, cancellation, or pre-authorization completion later. |
| `userId` | Int | The technical user identifier mapped to the current session. |
| `merchantId` | Int | The unique Tap to Pay merchant identifier. |
| `terminalId` | String | The Wallet/Terminal ID of the mobile device. |
| `uuid` | String | Unique ID for the current process; do not use for final status checks. |

### Financial Data

| Parameter Name | Data Type | Description |
| :--- | :--- | :--- |
| `amount` | Long | The total transaction amount in cents (e.g., `1200` for \$12.00). |
| `tip` | Long | The tip amount in cents. |
| `currency` | String | The ISO 4217 currency AlphaCode (e.g., `EUR`, `USD`). |
| `date` | String | The date and time of the transaction. |

### Card and EMV Details

| Parameter Name | Data Type | Description |
| :--- | :--- | :--- |
| `scheme` | String | The payment network used. Possible values include: `Visa`, `Mastercard`, `Amex`, `CB`, `Discover`, `DinnersClub`, `Elo`, `Conecs`, `Pago`, `Bankaxept`. |
| `mode` | String | The payment mode. Values are `Contactless` and `Link`. |
| `pan` | String | The masked Primary Account Number (e.g., `************1234`). |
| `aid` | String | The selected EMV Application ID. |
| `applicationLabel` | String | The human-readable label of the selected EMV application. |
| `authMode` | String | The EMV authorization mode. |
| `authCode` | String | The EMV authorization code generated by the issuer. |
| `transactionType` | String | The EMV Transaction Type (Tag 9C) value. (`00` for Purchase/Pre-auth, `20` for Refund, `22` for Cancellation). |
| `completionMode` | String | Indicates the transaction completion mode. Values are `AUTO`, `PREAUTH`, or `PENDING`. |

### Receipt Data

| Parameter Name | Data Type | Description |
| :--- | :--- | :--- |
| `formatedString` | String | A pre-formatted, plain-text string containing the full receipt layout, ready for printing or display. |
| `receiptUrl` | String | A unique URL hosting the digital receipt for the customer. |
| `cancellationExpiryDate` | String | The maximum date and time before which you can cancel the receipt. After this date, you must process a refund instead. |

### Deprecated Parameters

| Parameter Name | Data Type | Description |
| :--- | :--- | :--- |
| `latitude` | String | Always returns `null`. Slated for removal in future versions. |
| `longitude` | String | Always returns `null`. Slated for removal in future versions. |

## Error Parameters (RESULT_CANCELED)

If the user manually aborts the transaction (e.g., by pressing the back button) or if the system encounters an error that prevents the transaction from completing, the Tap on Phone application returns Activity.RESULT\_CANCELED.

If an error caused the cancellation, the intent data contains the following fields. If the intent does not contain these fields, it indicates a manual user cancellation.

| Parameter Name | Data Type | Description |
| :---- | :---- | :---- |
| `errorCode` | String | The specific 6-digit error code detailing the failure (e.g., 10-2110). Refer to the [Result Codes and Errors](/en/get-tap-on-phone/reference/result-codes-and-errors) page for a complete list. |
| `errorName` | String | The technical name of the error (e.g., `BackendTimeout`). |
| `errorMessage` | String | A descriptive message explaining the error. |