> ## Documentation Index
> Fetch the complete documentation index at: https://devzone.nayax.com/llms.txt
> Use this file to discover all available pages before exploring further.

# updatePinpadTransactionStatus

> Report the outcome of an externally authorized transaction back to the device.

The `updatePinpadTransactionStatus` method reports the outcome of an externally authorized transaction back to the device, after the card was read using [`readCardForExternalTransaction`](/docs/integrate-pos-device/tweezercomm/device-methods/readcardforexternaltransaction). See [Pinpad Mode](/docs/integrate-pos-device/tweezercomm/pinpad-mode) for more on this flow.

## Request

<Note>
  **JSON-RPC 2.0**

  All methods in TweezerComm follow a JSON-RPC 2.0 structure. See [Get Started](/docs/integrate-pos-device/tweezercomm/tweezercomm-get-started) for more details on how the requests are structured and sent.
</Note>

In the request, ensure to configure the following:

* The `method` field must be set to `updatePinpadTransactionStatus`.
* The service must be set to `engine` in the `params`.

```json theme={null}
{
    "jsonrpc": "2.0",
    "method": "updatePinpadTransactionStatus",
    "id": "123454352",
    "params": [
        "engine",
        {
            "pinpadCardDataId": "a1b2c3d4e5f6",
            "tranResultStatus": 1,
            "processorTerminalId": "12345",
            "paymentMethodId": "1",
            "tranType": 1
        }
    ]
}
```

### Request parameters

The table below describes the parameters of the request:

| Name                  | Type    | Description                                                                                                                                      |
| --------------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
| `pinpadCardDataId`    | string  | Identifier returned by [`readCardForExternalTransaction`](/docs/integrate-pos-device/tweezercomm/device-methods/readcardforexternaltransaction). |
| `tranResultStatus`    | integer | Result of the external authorization. `1` = PINPAD\_ONLY\_APPROVED, `2` = PINPAD\_ONLY\_DECLINED, `3` = PINPAD\_ONLY\_CANCELED.                  |
| `processorTerminalId` | string  | Merchant ID for the processor terminal.                                                                                                          |
| `paymentMethodId`     | string  | Payment method identifier. Currently only `1` (credit card) is supported.                                                                        |
| `tranType`            | integer | Transaction type code. See Transaction Type Values below.                                                                                        |

**Transaction Type Values**

| Value | Name                         |
| ----- | ---------------------------- |
| `1`   | Sale                         |
| `2`   | Refund                       |
| `3`   | Pre-Authorization            |
| `4`   | Deferred Authorization       |
| `5`   | CNP                          |
| `6`   | Pre-Authorization Completion |
| `7`   | Void                         |
