# 信用卡授權

## 說明

取得信用卡授權, 進行交易

{% hint style="warning" %}
Response中取得的信用卡交易URL, 需要進行發送(https request), 取得回應後, 才能完成該筆交易 (note: 需使用TLS1.2以上安全協議連線)
{% endhint %}

{% hint style="info" %}
若使用測試Server，請洽詢intella取得測試信用卡號以進行測試.
{% endhint %}

## Request

### Header

| 欄位          | 必填  | 型別         | 範例             | 說明                                          |
| ----------- | --- | ---------- | -------------- | ------------------------------------------- |
| Method      | YES | String(5)  | 20000          | 支付方式請填20000 (信用卡授權交易)                       |
| ServiceType | YES | String     | **Payment**    | 所選用的Scan2Pay服務代碼                            |
| MchId       | YES | String     | Account0001    | 由intella所提供的特店帳號                            |
| TradeKey    | YES | String     | sha256...hash  | 由intella所提供的交易密碼, 此密碼須先經過SHA256加密，再進行Hex編碼。 |
| CreateTime  | YES | String(14) | 20180101120000 | Request建立時間, 格式為yyyyMMddHHmmss              |

### Data

| 欄位           | 必填  | 型別          | 範例               | 說明                                                  |
| ------------ | --- | ----------- | ---------------- | --------------------------------------------------- |
| TimeExpire   | NO  | String      | 20180101120000   | 訂單失效時間, 格式為yyyyMMddHHmmss                           |
| DeviceInfo   | YES | String      | skb0001          | 終端機編號, 請固定填skb0001                                  |
| StoreOrderNo | YES | String(20)  | PO180101001      | 訂單編號, 全英數不超過20字元                                    |
| Body         | YES | String(128) | 雞排               | 商品名稱                                                |
| FeeType      | NO  | String      | TWD              | 交易幣別, 預設為台幣TWD                                      |
| TotalFee     | YES | Integer     | 75               | 交易金額, 正整數, 不能為負值                                    |
| Detail       | NO  | String(200) | 香酥大雞排            | 訂單資訊                                                |
| StoreInfo    | NO  | String      | 00001            | 門市代號                                                |
| StoreName    | NO  | String      | 忠孝店              | 分店名稱                                                |
| StoreType    | NO  | String      | 直營店              | 分店類型                                                |
| DeviceOS     | NO  | String      | 2                | 裝置類型 (1: iOS / 2: Android / 3: Windows / 4: Others) |
| CardId       | YES | String(16)  | 1234567898764423 | 信用卡卡號                                               |
| ExtenNo      | YES | String(3)   | 123              | 背面三碼                                                |
| ExpireDate   | YES | String(4)   | 2505             | 格式為YYMM                                             |

{% hint style="danger" %}
訂單編碼(StoreOrderNo)不可超過20字元，且只能使用英文字母和數字，不能使用符號或是特殊字元，以免導致部分支付交易失敗
{% endhint %}

## Response

### Header

| 欄位           | 型別        | 範例             | 說明                                                   |
| ------------ | --------- | -------------- | ---------------------------------------------------- |
| StatusCode   | String(4) | 0000           | [交易結果代碼](/scan2pay/appendix/scan2pay-error-codes.md) |
| StatusDesc   | String    | 交易成功           | 交易結果代碼說明                                             |
| Method       | String(5) | 10100          | 支付方式代碼                                               |
| ServiceType  | String    | **Payment**    | 所選用的Scan2Pay服務代碼                                     |
| MchId        | String    | Account0001    | 特店帳號                                                 |
| ResponseTime | String    | 20180101120000 | 交易回應時間, 格式為yyyyMMddHHmmss                            |

### Data

| 欄位           | 型別         | 範例                  | 說明                     |
| ------------ | ---------- | ------------------- | ---------------------- |
| SysOrderNo   | String     | 2018010110074205610 | 系統訂單編號                 |
| StoreOrderNo | String(20) | PO180101001         | 特店訂單編號                 |
| TotalFee     | Integer    | 7500                | 交易總金額 (註: 金額部分需要除以100) |
| FeeType      | String     | TWD                 | 交易幣別                   |
| DeviceInfo   | String     | skb0001             | 終端機編號                  |
| Body         | String     | 雞排                  | 商品名稱                   |
| platformRsp  | String     | https\://...        | 交易URL                  |
| serialNumber | String     | 0                   |                        |

## API Example

### Request

```
{
  "Header": {
    "Method": "20000",
    "ServiceType": "Payment",
    "MchId": "myMchId",
    "TradeKey": "9af15b336e6a9619928537df30b2e6a2376569fcf9d7e773eccede65606529a0",
    "CreateTime": "20180715102050"
  },
  "Data": "{\"DeviceInfo\":\"skb0001\",\"StoreOrderNo\":\"PO20180715003\",\"Body\":\"Food\",\"TotalFee\":\"1\",\"CardId\":\"4050123300004321\",\"ExtenNo\":\"123\",\"ExpireDate\":\"3012\"}"
}
```

### Response

```
{
  "Header": {
    "StatusCode": "0000",
    "StatusDesc": "執行成功",
    "Method": "20800",
    "ServiceType": "Payment",
    "MchId": "myMchId",
    "ResponseTime": "20180715102052"
  },
  "Data": {
    "sysOrderNo": "",
    "storeOrderNo": "PO-20180715-003",
    "totalFee": "100",
    "feeType": "TWD",
    "deviceInfo": "DeviceMiles",
    "platformRsp": "https://tspg-t.taishinbank.com.tw/tspgapi/hpp/vweb.aspx?MID=999812666555044&KEY=IspQv2tH8sMXGeGPUYhM1S3HPpP4j5z3PfXar+5bbEwLrEBJtTbzQPZhTVkVAW+Hnx3DZJIbflPqP9PhC/TiceBYxcrdYxRt9HBK4qGG8UfLeYbpfN3lUH41Rx7eJb8dB++3Y82VJbc49TO2jBSmsj/IadqLqpYdZl8W8q+0S4WqG32r0FJDnWxCkMnwhQqCeBPOkHGCTGTTV+/5UqgfDVjQ/VdcSWSHwJCm9P2eysyyp6uPZgtddzG94CbxzquapMMlvDAQqxUWIsk7R+wcjYDPIgAMRsdA==&MAC=ViTrzqfObo3XWaio9Ru50OxkQhAN4k5u6KW7j1nMzm0=&CIPHER=0MSF3mFVQS4TdfcClB2DolTnYEBzS4auzNgzuEBsqsHPDL1GxtyBqmhnReCSzLpFXr4FQ+nErB04f6/NNNFHZjLzv1TxAepaoa+YI5LXP14nUExqXV4UZbT7ie6RVZHeY8anrLEnmXhns2dy0TmZAM6D+8HWN3vwBuKBE8C42bHrlqwf5CipjUhSGBvOaSnxOJR0aPqfiBO0l5syMzvANwZgF67vtJaJMBRVEXqBoMo2/SSUE/tW9qn/YpMKIFYXI2OPZyV5jBmcv13N4iuiFwajINFeHMSYGAo38TZxyMVJNOeqKDfN7+UaXanzpIbBvbB2X5LlsJ1xOVCQvXXZ3fboigqhYacXRP6542PODSa/btcPSi1fpxwOoHRGQr5IvRT+SUGc9gg/RMCG2RxxvJmF6shmBCHA1sHx6KwDw29SP7MA9AcNoIQ5ScMjjGMwMTWAUWjx9Z6NJld/3P87DZBwNfzuPNgUx4SBxR7/wjyh+h0mhJQDcpLRnILGVKbHcKT9ptvxm9qqOlSqKZrZkwepe62P0r+fWCjyIqeFgdDXm/QWEpGrw37o8iKnhYHQ15kQfq7QMD4lmPIip4WB0Neb8g71kgLsElsQQ6Q6n4wZr4TndqCl6+TwOr991udWh2LuAs+TU1SZdxaNVpI6T94kmt+fqth5PTdJd8bpe1zE+6qDYSFCfMsX7FjSiMuZn1LVK8LzxyFMb8opbtO8S4OO6edkAKUbuPG9mnjvTL9f+wBafaTIPJMlQji3mg6XKXC10R9Zxplx+7IB2f5bJCc+R6EQwBl5HSL/fxtGRWiLJdaRTlTfJmNbEk8t8TLJ7iNXx4tZMsnuI1fHi1k=",
    "serialNumber": 0
  }
}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://intella.gitbook.io/scan2pay/api-specification/credit-card.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
