建立交易(Server)
應用場景
廠商 Server 需將從廠商 Web 取得到的 PayToken,送至歐買尬金流Server 建立交易。
介接路徑
- 正式環境:https://ecpg.funpoint.com.tw/Merchant/CreatePayment
- 測試環境:https://ecpg-stage.funpoint.com.tw/Merchant/CreatePayment
廠商傳入參數說明:(JSON 格式,名稱前若有紅色星號*為必填欄位):
- Content Type:application/json
- HTTP Method:POST
| 參數 / 型態 | 參數名稱 | 說明 |
|---|---|---|
| *MerchantID String(10) | 特店編號 | 請填入由歐買尬金流提供的特店編號 |
| *RqHeader JSON | 傳輸資料 | |
| *Timestamp Number | 傳輸時間 | 時間戳 Unix timestamp ※注意事項: 若時間戳跟歐買尬金流伺服器接收到時間超過 10 分鐘時,交易會失敗無法進行 |
| *Revision String(10) | 串接版號 | 請參考 系統介接測試相關資訊的串接版號。 例:1.0.0 |
| *Data String | 加密資料 | 加密過 JSON 格式的資料。加密方法說明 |
範例
json
{
"MerchantID": "1000031",
"RpHeader":
{
"Timestamp": 1234564848,
"Revision": "1.0.0"
},
"Data": "…"
}Data參數說明:請在加密前對參數值進行 URLEncode
| 參數 / 型態 | 參數名稱 | 說明 |
|---|---|---|
| PlatformID String(10) | 特約合作平台商代號 | |
| *MerchantID String(10) | 特店編號 | |
| *PayToken String(64) | 付款代碼 | |
| *MerchantTradeNo String(20) | 特店交易編號 | 必須與 取得廠商驗證碼 API 的 MerchantTradeNo 相同 |
| *CVV String(20) | 信用卡驗證碼 | 1. 必須與 取得廠商驗證碼 API 的 CVV 相同 2. 如未使用信用卡功能(例:僅使用 ATM 付款),CVV 仍為必須參數,可帶空值 |
Data範例
json
{
"MerchantID": "1000031",
" PayToken ": "55a026b8df314f9bb2dc808a5fe21c9d",
" MerchantTradeNo ": " test123456789",
" CVV": " 123"
}歐買尬金流回傳參數說明:回傳3D URL 或授權結果 (JSON 格式)
| 參數 / 型態 | 參數名稱 | 說明 |
|---|---|---|
| MerchantID String(10) | 特店編號 | |
| RqHeader JSON | 傳輸資料 | |
| Timestamp Number | 傳輸時間 | 時間戳 Unix timestamp |
| TransCode Int | 回傳代碼 | 1 代表傳輸資料(MerchantID,RqHeader,Data)接收成功,其餘均為失敗 |
| TransMsg String(200) | 回傳訊息 | 回傳訊息 |
| Data String | 加密資料 | 加密過 JSON 格式的資料。加密方法說明 |
範例
json
{
"MerchantID": "1000031",
"RpHeader":
{
"Timestamp": 1234564848
},
"TransCode": 1,
"TransMsg": "Success",
"Data": "…"
}Data參數說明
(1) 需進行3D驗證時,回傳以下參數
| 參數 / 型態 | 參數名稱 | 說明 |
|---|---|---|
| RtnCode Int | 交易狀態 | 1 代表 API 執行成功,其餘代碼均為失敗。失敗代碼請參考交易訊息代碼表 |
| RtnMsg String(200) | 回應訊息 | |
| 以下為 RtnCode 為 1 時才會回傳 | ||
| PlatformID String(10) | 平台商編號 | 特約合作平台商特店編號。 |
| MerchantID String(10) | 特店編號 | |
| OrderInfo JSON Object | 訂單資訊 | |
| MerchantTradeNo String(20) | 特店交易編號 | |
| ThreeDInfo JSON Object | 3D 驗證資訊 | |
| ThreeDURL String(200) | 3D 驗證 URL | 3D 驗證連結,請勿使用 iframe 方式開啟。 |
Data範例(解密後)
json
{
"RtnCode": 1,
"RtnMsg": "Success",
"MerchantID": "1000031",
"OrderInfo":
{
"MerchantTradeNo": "test123466"
},
"ThreeDInfo":
{
"ThreeDURL": "https://3durl.com.tw"
}
}(2) 需進行銀聯卡驗證時,回傳以下參數
| 參數 / 型態 | 參數名稱 | 說明 |
|---|---|---|
| RtnCode Int | 交易狀態 | 1 代表 API 執行成功,其餘代碼均為失敗。 失敗代碼請參考交易訊息代碼表 |
| RtnMsg String(200) | 回應訊息 | |
| 以下為 RtnCode 為 1 時才會回傳 | ||
| PlatformID String(10) | 平台商編號 | 特約合作平台商特店編號。 |
| MerchantID String(10) | 特店編號 | |
| OrderInfo JSON Object | 訂單資訊 | |
| MerchantTradeNo String(20) | 特店交易編號 | |
| UnionPayInfo JSON Object | 銀聯卡驗證資訊 | |
| UnionPayURL String(200) | 銀聯卡驗證 URL | 銀聯卡驗證連結,請勿使用 iframe 方式開啟 |
Data範例(解密後)
json
{
"RtnCode": 1,
"RtnMsg": "Success",
"MerchantID": "1000031",
"OrderInfo":
{
"MerchantTradeNo": "test123466"
},
"UnionPayInfo":
{
"UnionPayURL": "https://unionpayurl.com.tw"
}
}(3) 不需3D驗證時,直接回傳授權結果
| 參數 / 型態 | 參數名稱 | 說明 |
|---|---|---|
| RtnCode Int | 交易狀態 | 1 代表 API 執行成功,其餘代碼均為失敗。失敗代碼請參考交易訊息代碼表 |
| RtnMsg String(200) | 回應訊息 | |
| 以下為 RtnCode 為 1 時才會回傳 | ||
| PlatformID String(10) | 平台商編號 | 特約合作平台商特店編號。 |
| MerchantID String(10) | 特店編號 | |
| OrderInfo JSON Object | 訂單資訊 | |
| MerchantTradeNo String(20) | 特店交易編號 | |
| TradeNo String(20) | 歐買尬金流交易編號 | |
| TradeAmt Int | 交易金額 | |
| TradeDate String(20) | 訂單成立時間 | yyyy/MM/dd HH:mm:ss |
| PaymentType String(20) | 付款方式 | |
| PaymentDate String(20) | 付款時間 | yyyy/MM/dd HH:mm:ss |
| ChargeFee Number | 手續費 | |
| TradeStatus String(8) | 交易狀態 | |
| CardInfo JSON Object | 信用卡授權資訊 | |
| AuthCode String(6) | 銀行授權碼 | |
| Gwsr Int | 授權交易單號 | |
| ProcessDate String(20) | 交易時間 | yyyy/MM/dd HH:mm:ss |
| Amount Int | 金額 | |
| Stage Int | 分期期數 | |
| Stast Int | 首期金額 | |
| Staed Int | 各期金額 | |
| Eci Int | 3D(VBV)回傳值 | Eci=5,6,2,1 代表該筆交易為 3D 交易。 |
| Card6No String(6) | 信用卡卡號前六碼 | |
| Card4No String(4) | 信用卡卡號末四碼 | |
| RedDan Int | 紅利扣點 | 使用信用卡紅利時回傳。 |
| RedDeAmt Int | 紅利折抵金額 | 使用信用卡紅利時回傳。 |
| RedOkAmt Int | 實際扣款金額 | 使用信用卡紅利時回傳。 |
| RedYet Int | 紅利剩餘點數 | 使用信用卡紅利時回傳。 |
| PeriodType String(1) | 週期種類 | 定期定額時回傳,訂單建立時所設定的週期種類。 |
| Frequency Int | 執行頻率 | 定期定額時回傳,訂單建立時所設定的執行頻率。 |
| ExecTimes Int | 執行次數 | 定期定額時回傳,訂單建立時所設定的執行頻率。 |
| PeriodAmount Int | 訂單建立時的每次要授權金額 | 定期定額時回傳。 |
| TotalSuccessTimes Int | 目前已成功授權的次數 | 定期定額時回傳,目前已成功授權的次數。 |
| TotalSuccessAmount Int | 目前已成功授權的金額合計 | 定期定額時回傳。 |
| ATMInfo JSON Object | ATM 資訊 | |
| BankCode String(3) | 繳費銀行代碼 | |
| vAccount String(16) | 繳費虛擬帳號 | |
| ExpireDate String(10) | 繳費期限 | 格式為 yyyy/MM/dd |
| CVSInfo JSON Object | 超商代碼資訊 | |
| PaymentNo String(14) | 繳費代碼 | |
| ExpireDate String(20) | 繳費期限 | 格式為 yyyy/MM/dd HH:mm:ss |
| PaymentURL String(100) | 繳費連結 | 由歐買尬金流提供手機上顯示的三段式繳費條碼網頁 |
| CustomField String(100) | 自訂欄位 | 提供特店使用客制化欄位 |
Data範例(解密後)
json
{
"RtnCode": 1,
"RtnMsg": "Success",
"MerchantID": "1000031",
"OrderInfo":
{
"MerchantTradeNo": "test123466"
},
"ThreeDInfo":
{
"ThreeDURL": "https://3durl.com.tw"
}
}