> ## 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.

# 执行交易阶段2

`doTransactionPhase2` 方法用于完成由 `doTransactionPhase1` 开始的交易。完成该交易仅需要 `vuid`。客户端可以更改在 `doTransactionPhase1` 调用中发送的任何项目。

## 要求

> [!NOTE]
>
> JSON-RPC 2.0
>
> TweezerComm 中的所有方法都遵循 JSON-RPC 2.0 结构。有关请求的结构和发送方式的更多详细信息，请参阅[“集成”部分](/docs/integrate-pos-device/tweezercomm/tweezercomm-get-started.md)。

请在请求中确保配置以下内容：

* `method` 字段必须设置为 `doTransactionPhase2`。
* The service must be set to `ashrait` in the `params`.

该请求包含一个参数列表，其中包含所有特定于交易的详细信息。

```json theme={null}
{  
   "jsonrpc":"2.0",
   "method":"DoTransactionPhase2",
   "params":[  
      "ashrait",
      {  
         "vuid":"123456789",
         "loyaltyAmount":5000,
         "creditTerms":1
      }
   ],
   "id":1
}
```

### 请求参数

下表描述了此方法的请求参数。

<table>
  <thead>
    <tr>
      <th>
        姓名
      </th>

      <th>
        类型
      </th>

      <th>
        描述
      </th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>
        `vuid`
      </td>

      <td>
        string
      </td>

      <td>
        供应商（客户端）唯一交易标识符
      </td>
    </tr>

    <tr>
      <td>
        `creditTerms`
      </td>

      <td>
        整数
      </td>

      <td>
        信用卡支付选项。可选值为：
        `1`（常规），
        `2`（特殊信用），
        `3`（即时），
        `6`（信用），
        `8`（结算）
      </td>
    </tr>

    <tr>
      <td>
        `creditPayments`
      </td>

      <td>
        整数
      </td>

      <td>
        信用付款期数
      </td>
    </tr>

    <tr>
      <td>
        `payments`
      </td>

      <td>
        整数
      </td>

      <td>
        付款期数
      </td>
    </tr>

    <tr>
      <td>
        `firstPaymentAmount`
      </td>

      <td>
        整数
      </td>

      <td>
        首期付款金额（以分为单位）
      </td>
    </tr>

    <tr>
      <td>
        `otherPaymentAmount`
      </td>

      <td>
        整数
      </td>

      <td>
        其余付款的金额（以分为单位）
      </td>
    </tr>

    <tr>
      <td>
        `paymentIndex`
      </td>

      <td>
        整数
      </td>

      <td>
        付款所挂钩的指数。可选值为：
        `1`（挂钩 Madad 指数），
        `2`（挂钩美元）
      </td>
    </tr>

    <tr>
      <td>
        `ipayCode`
      </td>

      <td>
        整数
      </td>

      <td>
        权益类型。可选值为：
        `0`（货币），
        `1`（星级积分），
        `2`（积分），
        `3`（会员俱乐部），
        `99`（无权益）
      </td>
    </tr>

    <tr>
      <td>
        `ipayAmount`
      </td>

      <td>
        整数
      </td>

      <td>
        权益金额（以分为单位）
      </td>
    </tr>

    <tr>
      <td>
        `ipayPercent`
      </td>

      <td>
        整数
      </td>

      <td>
        权益百分比（`0-100`）
      </td>
    </tr>

    <tr>
      <td>
        `ipayUnits`
      </td>

      <td>
        整数
      </td>

      <td>
        权益单位数量
      </td>
    </tr>

    <tr>
      <td>
        `loyaltyAmount`
      </td>

      <td>
        整数
      </td>

      <td>
        折扣金额（以分为单位）
      </td>
    </tr>
  </tbody>
</table>

## 回复

成功的请求将返回以下响应：

```json theme={null}
{  
   "jsonrpc":"2.0",
   "result":{  
    "statusCode": 0,
    "statusMessage": "TRANSACTION APPROVED",
    "appVersion": "01.05.22",
    "retailerId": "0883012013",
    "ecrNo": "1",
    "vuid": "ee5e7af5-7719-4726-992f-0eb2915b992a",
    "tranCode": 1,
    "currency": "376",
    "amount": 100,
    "mutag": 1,
    "mutagName": "Mastercard",
    "manpik": 2,
    "solek": 2,
    "cardNumber": "*********",
    "cardNumberOriginalLength": "************************",
    "expDate": "2305",
    "cardName": "Mastercard",
    "tokenizedCardNumber": "c8ae19356dd1d7e946165fab67a14516",
    "tranType": 1,
    "posEntryMode": 5,
    "isClub": false,
    "isPrepaid": false,
    "creditTerms": 1,
    "uid": "23031212432508830123729",
    "rrn": "948767075   ",
    "authCodeManpik": 1,
    "issuerAuthNum": "0652073",
    "acquirerMerchantID": "6543505",
    "sysTraceNumber": "01001001",
    "authorizationCommStat": "{\"connectRetries\":0,\"connectTotalTime\":555,\"authorizationTotalTime\":744,\"smallBlockedTotalTime\":0}",
    "merchantReceipt":[  
         {"fieldName":"׳¡׳›׳•׳","fieldValue":"1000"},
         {"fieldName":"ATC","fieldValue":"0289"}
      ],
      "customerReceipt":[  
         {"fieldName":"׳¡׳›׳•׳","fieldValue":"1000"},
         {"fieldName":"ATC","fieldValue":"0289"}
      ]
   },
   "id":1
}
```

### 响应参数

下表描述了该方法的响应参数。

<table>
  <thead>
    <tr>
      <th>
        姓名
      </th>

      <th>
        类型
      </th>

      <th>
        描述
      </th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>
        `statusCode`
      </td>

      <td>
        整数
      </td>

      <td>
        交易状态。值为 `0` 表示交易成功（已批准）。
      </td>
    </tr>

    <tr>
      <td>
        `statusMessage`
      </td>

      <td>
        string
      </td>

      <td>
        交易消息（例如 `ok`）
      </td>
    </tr>

    <tr>
      <td>
        `mutag`
      </td>

      <td>
        整数
      </td>

      <td>
        卡片品牌
      </td>
    </tr>

    <tr>
      <td>
        `solek`
      </td>

      <td>
        整数
      </td>

      <td>
        收购方
      </td>
    </tr>

    <tr>
      <td>
        `manpik`
      </td>

      <td>
        整数
      </td>

      <td>
        发卡机构
      </td>
    </tr>

    <tr>
      <td>
        `uid`
      </td>

      <td>
        string
      </td>

      <td>
        交易唯一标识符
      </td>
    </tr>

    <tr>
      <td>
        `posEntryMode`
      </td>

      <td>
        整数
      </td>

      <td>
        POS 输入方式（POS Entry Mode），即卡片交易的类型。取值包括：
        `0`（MSR，磁条读卡）,
        `5`（CTLS MSR，非接触式磁条读卡）,
        `40`（Contact EMV，接触式 EMV）,
        `50`（Phone，电话）,
        `51`（Signature only，仅签名）,
        `80`（Fallback (err)，降级 (错误)）,
        `81`（Fallback (no AID)，降级 (无 AID)）
      </td>
    </tr>

    <tr>
      <td>
        `cardNumber`
      </td>

      <td>
        string
      </td>

      <td>
        已屏蔽的个人账号（PAN）
      </td>
    </tr>

    <tr>
      <td>
        `rrn`
      </td>

      <td>
        string
      </td>

      <td>
        来自授权实体的交易授权号
      </td>
    </tr>

    <tr>
      <td>
        `issuerAuthNum`
      </td>

      <td>
        string
      </td>

      <td>
        发卡机构授权号
      </td>
    </tr>

    <tr>
      <td>
        `acquirerMerchantID`
      </td>

      <td>
        string
      </td>

      <td>
        收单系统中的商户 ID
      </td>
    </tr>

    <tr>
      <td>
        `authCodeManpik`
      </td>

      <td>
        整数
      </td>

      <td>
        授权代码。可选值为：`0`（未授权交易），`1`（发卡方已授权），
        `2`（发卡方已拒绝），
        `3`（ABS Stip 已批准），
        `4`（ABS Stip 已拒绝），
        `5`（语音批准），
        `6`（语音拒绝），
        `7`（预授权发卡方已批准），
        `8`（银行卡已批准）
      </td>
    </tr>

    <tr>
      <td>
        `gatewayToken`
      </td>

      <td>
        string
      </td>

      <td>
        卡的网关令牌
      </td>
    </tr>

    <tr>
      <td>
        `appVersion`
      </td>

      <td>
        string
      </td>

      <td>
        支付应用程序版本
      </td>
    </tr>

    <tr>
      <td>
        `retailerId`
      </td>

      <td>
        string
      </td>

      <td>
        终端零售商 ID
      </td>
    </tr>

    <tr>
      <td>
        `ecrNo`
      </td>

      <td>
        string
      </td>

      <td>
        POS 标识符
      </td>
    </tr>

    <tr>
      <td>
        `vuid`
      </td>

      <td>
        string
      </td>

      <td>
        供应商唯一标识符
      </td>
    </tr>

    <tr>
      <td>
        `tranCode`
      </td>

      <td>
        string
      </td>

      <td>
        交易代码
      </td>
    </tr>

    <tr>
      <td>
        `merchantReceipt`
      </td>

      <td>
        键/值数组
      </td>

      <td>
        商家收据，可打印或保存
      </td>
    </tr>

    <tr>
      <td>
        `customerReceipt`
      </td>

      <td>
        键/值数组
      </td>

      <td>
        打印客户收据
      </td>
    </tr>
  </tbody>
</table>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.