Reference
acquirer
What is it?
您的收單銀行或是金流處理器
使用 Reconciliation API 時,欲使用收單銀行為搜尋條件時,請按照以下參數帶入 Request
銀行 | 參數名稱 |
---|---|
國泰世華銀行 | TW_CATGAY |
玉山銀行 | TW_ESUN |
台新銀行 | TW_TAISHIN |
中國信託銀行 | TW_CTBC |
永豐銀行 | TW_NEW_SINOPAC |
凱基銀行 | TW_KAIGI |
合作金庫銀行 | TW_TCB |
第一銀行 | TW_FIRST |
財團法人聯合信用卡處理中心 | TW_NCCC |
藍新金流 | TW_SPGATEWAY |
台北富邦銀行 | TW_FUBON |
陽信銀行 | TW_SUNNY |
中國銀行 | HK_BOC |
聯邦銀行 | TW_UBOT |
RAZER PAY | MY_MOLPAY |
彰化銀行 | TW_CHB |
環匯亞太 | US_GLOBAL_PAYMENTS |
LINE Pay | TW_LINE_PAY |
JKOPAY | TW_JKO_PAY |
悠遊付 | TW_EASY_WALLET |
Related topics
amount
What is it?
一筆交易的總金額
若欲部分退款,請輸入比原始金額還小的價格
台幣(TWD):單筆交易金額下限為台幣1元,金額上限為台幣1,000,000元。台幣交易1元時,請帶入1
港幣(HKD):單筆交易金額下限為港幣0.01元,金額上限為港幣252500元。港幣交易1.01元時,請帶 101
馬幣(MYR):單筆交易金額下限為馬幣0.01令吉,金額上限為馬幣135000令吉。馬幣交易1.01令吉時,請帶 101
美金(USD):單筆交易金額下限為美金0.01元,金額上限為美金33169元。美金交易1.01元時,請帶 101
Related topics
payByPrime
payByToken
Refund
trade_records
Partial Refund
amount(filter)
What is it?
用來過濾特定金額內的搜尋條件
外幣金額需包含兩位小數,如100代表1.00
裡面有兩個參數:
名稱 | 類別(長度) | 內容 |
---|---|---|
upper_limit | int | 最高價格 |
lower_limit | int | 最低價格 |
Related topics
appid
What is it?
您 APP 或網站的數字識別碼,做於驗證用途
可於 Portal > APP Management > 點擊對應 APP 或網站的"內容"找到
Related topics
TPDSetup.initInstance()
TPDirect.setupSDK()
appKey
serverType
TPDServerType
appKey
What is it?
您的 APP 或網站的驗證金鑰匙
可於 Portal > APP Management > 點擊對應 APP 或網站的"內容"找到
Related topics
TPDSetup.initInstance()
TPDirect.setupSDK()
appid
serverType
TPDServerType
appname
What is it?
於 Portal 網站上所定義的 APP 或網站名稱
Related topics
rec_trade_id
auth_code
merchant_id
merchant_name
time
amount
refund_amount
record_status
trade_records
attribute
What is it?
排序交易紀錄的條件
以下為接受的值:
值 | 內容 |
---|---|
time | 依交易時間排序 |
amount | 依交易金額排序 |
Related topics
order_by
is_descending
time
amount
auth_code
銀行授權碼以確保交易是否有成功
Related topics
payByPrime
payByToken
trade_records
bank_id
What is it?
名稱 | 銀行代碼 |
---|---|
中國信託銀行 | 822 |
台新銀行 | 812 |
玉山銀行 | 808 |
國泰世華銀行 | 013 |
兆豐銀行 | 017 |
渣打銀行 | 052 |
凱基銀行 | 809 |
聯邦銀行 | 803 |
日盛銀行 | 815 |
安泰銀行 | 816 |
元大銀行 | 806 |
上海商業儲蓄銀行 | 011 |
永豐銀行 | 807 |
新光銀行 | 103 |
華泰銀行 | 102 |
交通銀行 | 003 |
合作金庫銀行 | 006 |
台灣企銀 | 050 |
京城商銀 | 054 |
匯豐銀行 | 081 |
陽信銀行 | 108 |
三行銀行 | 147 |
第一銀行 | 007 |
中華郵政 | 700 |
中華銀行 | 804 |
大眾銀行 | 814 |
台灣銀行 | 004 |
華南銀行 | 008 |
台北富邦銀行 | 012 |
農業金庫 | 018 |
王道銀行 | 048 |
遠東銀行 | 805 |
萬泰銀行 | 809 |
土地銀行 | 005 |
彰化銀行 | 009 |
花旗銀行 | 021 |
台中商銀 | 053 |
東亞銀行 | 075 |
板信銀行 | 118 |
星辰銀行 | 810 |
backend_notify_url
What is it?
商戶 Server 接收交易結果的 URL。必須以 https 開頭。
3D 交易過程中有可能發生消費者棄單,消費者操作異常或是銀行端和 TapPay 狀態同步異常導致該筆 交易狀態為待付款(商戶此時不會收到 backend_notify_url 通知)。
TapPay 將針對待付款交易,於訂單建立後每隔 30 分鐘進行反查,共向銀行反查 2 次。若得到銀行端真實結果,即更新後台訂單狀態並發出 backend_notify_url 通知商戶,反查 2 次後若仍無結果則停止反查。
bank_transaction_id
What is it?
由 大寫英文字母 及數字所組成的訂單編號
此訂單編號為方便您對帳使用,並將會送至銀行
沒有需求的話可以不填,我們會自動幫您產生一組
若有填寫的話,請遵守每家銀行的長度限制:
名稱 | 長度 |
---|---|
玉山銀行 | 20 |
台新銀行 | 23 |
中國信託銀行 | 19 |
永豐銀行 | 40 |
台北富邦銀行 | 25 |
LINE Pay | 40 |
凱基銀行 | 40 |
聯邦銀行 | 40 |
國泰世華銀行 | 20 |
合作金庫銀行 | 19 |
第一銀行 | 19 |
財團法人聯合信用卡處理中心 | 40 |
藍新金流 | 20 |
陽信銀行 | 19 |
中國銀行 | 40 |
RAZER PAY | 32 |
JKOPAY | 40 |
悠遊付 | 50 |
Related topics
payByPrime
payByToken
trade_records
rec_trade_id
bank_transaction_end_millis
What is it?
銀行實際處理完畢交易請求的時間,單位為毫秒
Related topics
bank_transaction_start_millis
What is it?
銀行實際收到交易請求並開始處理的時間,單位為毫秒
Related topics
bank_transaction_time
What is it?
銀行處理交易請求的時間
裡面有兩個參數:
名稱 | 類別 | 內容 |
---|---|---|
start_time_millis | String | 起始時間 |
end_time_millis | String | 結束時間 |
Related topics
start_time_millis
end_time_millis
bank_transaction_time(bind_card)
What is it?
銀行處理交易請求的時間
裡面有兩個參數:
名稱 | 類別 | 內容 |
---|---|---|
start_time_millis | long | 起始時間 |
end_time_millis | long | 結束時間 |
Related topics
start_time_millis
end_time_millis
cap_millis
What is it?
交易會被請款的時間
Related topics
card_identifier(filter)
What is it?
名稱 | 類別 | 內容 |
---|---|---|
card_identifier | String | 帶入卡號識別碼搜尋該筆交易資料 |
card
What is it?
由 TPDirect.card.createToken() 所回傳的 JSON 物件
裡面包含 prime 字串及卡號後四碼
Related topics
TPDirect.card.createToken()
status
clientip
prime
lastfour
cardholder
What is it?
卡片持有者的資訊,應包含以下值:
名稱(*為必填) | 類別(長度) | 內容 |
---|---|---|
phone_number* | String(40) | 手機號碼,包含加號之 E.164 格式(“+886923456789”) |
name* | String(40) | 名稱 |
email* | String(40) | 電子信箱 |
zip_code | String(40) | 郵遞區號 |
address | String(90) | 地址 |
national_id | String(40) | 身分證字號 |
非必填欄位也應有對應的 key,value 的部分可以帶空字串(zip_code: “”, address: “”, national_id: “”)
各支援銀行需驗證的必填欄位
支援銀行 | 需驗證的必填欄位 | 備註 |
---|---|---|
財團法人聯合信用卡處理中心 | national_id | 若此筆屬於產壽險交易,強烈建議您進行身份驗證 若您使用的是僅供身份驗證的收單帳號,可再額外驗證電話號碼 |
台新銀行 (只支援自行卡) |
national_id | 若是台新自行卡可再額外驗 phone_number (務必在 cardholder 中帶入 09 開頭的電話,若輸入錯誤會導致交易失敗) |
Related topics
cardholder(filter)
What is it?
用來過濾特定消費者的搜尋條件 裡面有三個參數:
名稱 | 類別 | 內容 |
---|---|---|
name | String | 名稱 |
phone_number | String | 電話 |
String | 電子信箱 |
Related topics
card_info
What is it?
卡片資訊,會回傳以下值:
名稱 | 類別(長度) | 內容 |
---|---|---|
bin_code | String(6) | 卡片前六碼 |
last_four | String(4) | 卡片後四碼 |
issuer | String | 發卡行 |
issuer_zh_tw | String | 發卡銀行中文名稱 |
bank_id | String | 發卡銀行代碼 |
funding | int | 卡片類別 -1 = Unknown 0 = 信用卡 1 = 簽帳卡 2 = 預付卡 |
type | int | 卡片種類 -1 = Unknown 1 = VISA 2 = MasterCard 3 = JCB 4 = Union Pay 5 = AMEX |
level | String | 卡片等級 |
country | String | 發卡行國家 |
country_code | String | 發卡行國家碼 |
expiry_date | String | 卡片到期時間,格式 YYYYMM,卡片到期時間( remember = true 時回傳) ( Apple Pay / Google Pay / LINE Pay / Samsung Pay 不會回傳此欄位) |
Related topics
card_info
What is it?
卡片資訊,會回傳以下值:
名稱 | 類別(長度) | 內容 |
---|---|---|
bin_code | String(6) | 卡片前六碼 |
last_four | String(4) | 卡片後四碼 |
issuer | String | 發卡行 |
funding | int | 卡片類別 -1 = Unknown 0 = 信用卡 1 = 簽帳卡 2 = 預付卡 |
type | int | 卡片種類 -1 = Unknown 1 = VISA 2 = MasterCard 3 = JCB 4 = Union Pay 5 = AMEX |
level | String | 卡片等級 |
country | String | 發卡行國家 |
country_code | String | 發卡行國家碼 |
expiry_date | String | 卡片到期時間,格式 YYYYMM,卡片到期時間( remember = true 時回傳) ( Apple Pay / Google Pay / LINE Pay / Samsung Pay 不會回傳此欄位) |
token_status | String | 啟用中:ACTIVE 已暫停:SUSPENDED 已刪除:DELETED |
Related topics
card_key
What is it?
保護卡片字串的卡片金鑰
若 remember = true ,則會於 payByPrime 中的 card_secret 內回傳
未來付款就只需利用卡片字串與金鑰來呼叫 payByToken API,省略 createToken 與 payByPrime 的步驟
Related topics
payByPrime
payByToken
card_token
remember
card_secret
What is it?
包含卡片字串與金鑰的 JSON 物件,只有呼叫 payByPrime 時,參數 remember = true 才會回傳
名稱 | 類別(長度) | 內容 |
---|---|---|
card_key | String(64) | 保護卡片字串的卡片金鑰 |
card_token | String(67) | 代表消費者卡片的字串 |
未來付款就只需利用卡片字串與金鑰來呼叫 payByToken API,省略 createToken 與 payByPrime 的步驟
Related topics
payByPrime
payByToken
card_key
card_token
remember
card_token
What is it?
代表消費者卡片的字串
若 remember = true ,則會於 payByPrime 中的 card_secret 內回傳
未來付款就只需利用卡片字串與金鑰來呼叫 payByToken API,省略 createToken 與 payByPrime 的步驟
Related topics
payByPrime
payByToken
card_key
remember
CCV
What is it?
信用卡背後的三位識別碼
Related topics
TPDCard
TPDirect.card.createToken()
cardNumber
dueMonth
dueYear
Test Card
client_ip
What is it?
消費者的 IP 位置
Related topics
TPDirect.card.createToken()
status
card
currency
What is it?
貨幣的 ISO 4217 字母代碼,如:新台幣 = “TWD”
銀行 | 支援幣別 |
---|---|
中國信託銀行 | 新台幣(TWD) |
玉山銀行 | 新台幣(TWD) |
台新銀行 | 新台幣(TWD) |
國泰世華銀行 | 新台幣(TWD) |
永豐銀行 | 新台幣(TWD) |
凱基銀行 | 新台幣(TWD) |
合作金庫銀行 | 新台幣(TWD) |
第一銀行 | 新台幣(TWD) |
財團法人聯合信用卡處理中心 | 新台幣(TWD) |
藍新金流 | 新台幣(TWD) |
台北富邦銀行 | 新台幣(TWD) |
陽信銀行 | 新台幣(TWD) |
聯邦銀行 | 新台幣(TWD) |
中國銀行 | 港幣(HKD) |
RAZER PAY | 馬幣(MYR) |
環匯亞太 | 台幣(TWD), 美金(USD) |
Related topics
delay_capture_in_days
What is it?
銀行授權款項與實際請款之間的天數
這期限可以延長至最多 7 天
若您欲手動請款,可輸入 -1 來取消自動請款
當您呼叫此API時,TapPay 將於當日向銀行進行請款,不代表當日請款已成功。
實際請款是否成功,請於請款隔天上午9點利用TapPay 後台或 Record API查詢交易狀態進行確認。
Related topics
details
What is it?
交易明細
此欄位資訊將顯示在銀行對帳系統中
銀行名稱 | 內容 |
---|---|
中國信託銀行 | 限制 18 字節,超過將自動截斷 |
陽信銀行 | 限制 18 字節,超過將自動截斷 |
台新銀行 | 限制 40 字節,超過將自動截斷 |
藍新金流 | 限制 50 字節,超過將自動截斷 |
國泰世華銀行 | 未提供此欄位 |
玉山銀行 | 未提供此欄位 |
凱基銀行 | 未提供此欄位 |
永豐銀行 | 未提供此欄位 |
合作金庫銀行 | 未提供此欄位 |
第一銀行 | 未提供此欄位 |
財團法人聯合信用卡處理中心 | 未提供此欄位 |
Related topics
due_month
What is it?
信用卡的到期月份:
月份 | 值 |
---|---|
一月 | 01 |
二月 | 02 |
三月 | 03 |
四月 | 04 |
五月 | 05 |
六月 | 06 |
七月 | 07 |
八月 | 08 |
九月 | 09 |
十月 | 10 |
十一月 | 11 |
十二月 | 12 |
Related topics
TPDCard
TPDirect.card.createToken()
cardNumber
dueYear
CCV
Test Card
due_year
What is it?
信用卡的到期年份,為西元年的後兩位數(“2019” -> “19”)
Related topics
TPDCard
TPDirect.card.createToken()
cardNumber
due_month
CCV
Test Card
extra_info
What is it?
分期付款額外資訊,各間銀行參數請參考下表
銀行名稱 | 名稱 | 類別 | 內容 |
---|---|---|---|
台新銀行 | install_order_no | String | 分期編號 |
install_period | String | 分期期數 | |
install_pay_fee | String | 每期手續費 | |
install_pay | String | 每期費用 | |
install_down_pay | String | 頭期費用 | |
install_down_pay_fee | String | 頭期手續費 | |
財團法人聯合信用卡處理中心 | installment | String | 分期期數 |
installment_type | String | 分期付款手續費方式(E = 外加, I = 內合) | |
first_amt | String | 頭期費用 | |
each_amt | String | 每期金額 | |
fee | String | 手續費 | |
藍新金流 | inst | Integer | 分期期數 |
inst_first | Integer | 首期金額 | |
inst_each | Integer | 每期金額 | |
國泰世華銀行 | period_number | String | 分期期數 |
玉山銀行 | ITA | String | 分期總金額 |
IP | String | 分期期數 | |
IPA | String | 每期金額 | |
IFPA | String | 首期金額 |
Error Handling
後端 API Error Code 建議的處理方式
status | msg | Error Handling |
---|---|---|
92 | 此收單不支援非同日交易取消授權 | 因該收單行不支援取消授權非當日授權之交易,需等該筆交易請款後再執行退款 |
filters
What is it?
過濾交易紀錄的條件,每個皆非必帶:
名稱 | 類別(長度) | 預設 |
---|---|---|
time | JSONObject | {“start_time”:0, “end_time”: 無上限} |
amount | JSONObject | {“upper_limit”: 無上限, “lower_limit”: 0} |
merchant_id | String array | |
record_status | int | |
rec_trade_id | String(20) | |
tsp | Boolean | |
card_identifier | String |
Related topics
time(filter)
amount(filter)
merchant_id(filter)
record_status
rec_trade_id
frontend_redirect_url
What is it?
使用 LINE Pay、街口支付或者 3D 驗證交易時,當消費者在 LINE Pay、街口支付或 3D 驗證完成交易程序後,導轉回到商戶網頁前端的交易結果頁面 URL。必須以 https 開頭。
geoLocation
What is it?
消費者地點的經緯度,格式為"(經度, 緯度)“或是"UNKNOWN”
Related topics
instalment
What is it?
分期付款的期數,預設為 0
Related topics
is_descending
What is it?
排序交易紀錄的條件,根據"attribute“的值有不同效果:
值 | attribute 值 | 內容 |
---|---|---|
true | time | 由最新的紀錄到最舊的紀錄 |
true | amount | 由金額最高的紀錄到金額最少的紀錄 |
false | time | 由最舊的紀錄到最新的紀錄 |
false | amount | 由金額最少的紀錄到金額最高的紀錄 |
Related topics
order_by
is_descending
time
amount
last_four
What is it?
卡片後四碼
Related topics
onSuccessCallBack()
card
prime
merchant_id
What is it?
於 Portal 上為每個商家所產生的識別碼,須由小於 50 位數的英數字元所組合
Related topics
payByPrime
payByToken
Record
merchantid(filter)
trade_records
merchant_id(filter)
What is it?
用來指定特定 merchant_id 的搜尋條件
您可將一次將許多 merchant_id 放入同個陣列中進行搜尋
Related topics
merchant_name
What is it?
於 Portal 上所定義的商家名稱
Related topics
rec_trade_id
auth_code
merchant_id
appname
time
amount
refundamount
record_status
orderid
trade_records
millis
What is it?
交易時間,單位為毫秒
請參考 https://currentmillis.com
Related topics
msg
What is it?
錯誤訊息,呼叫 API 錯誤時回傳
請參考我們的錯誤代碼表
Related topics
TPDCard.createToken()
payByPrime
payByToken
Refund
Record
onFailureCallBack()
status
number_of_transactions
What is it?
總交易筆數
Related topics
onFailureCallBack()
What is it?
TPDCard.createToken() 的回傳函數,於方法錯誤時回傳錯誤代碼及訊息
Related topics
TPDCard.createToken()
onSuccessCallBack()
status
msg
onSuccessCallBack()
What is it?
TPDCard.createToken() 的回傳函數,於方法成功時回傳 prime 字串與卡片後四碼
Related topics
TPDCard.createToken()
onFailureCallBack()
prime
lastfour
order_by
What is it?
排序交易紀錄的條件
這個 JSON 物件有以下值:
名稱 | 類別 | 預設值 | 可帶值 |
---|---|---|---|
attribute | String | time | time amount |
is_descending | boolean | true | true false |
Related topics
Record
partner_key
records_per_page
page
filters
attribute
is_descending
order_number
What is it?
由小於五十位的英數位元所自行定義的訂單編號,用於 TapPay 做訂單識別,可重複帶入
Related topics
payByPrime
payByToken
filters
trade_records
original_amount
What is it?
一筆交易的原始金額
此金額不會因款項被退款而受影響
Related topics
page
What is it?
某一頁交易紀錄,此參數預設為0,並從0開始增加
每一頁的交易紀錄數量將取決於 “records_per_page”
舉例來說:
如果總交易紀錄量為400,而 “records_per_page” 為200
則第0頁會有第1筆紀錄至第200筆紀錄,而第1頁會有第201筆至第400筆紀錄
如果 “records_per_page” 為50,則總共會有四頁
第0頁1~50,第1頁51~100,第2頁101~150,第3頁151~200
Related topics
Partial Refund
What is it?
部分退款必須等銀行請款成功後方可執行,全額退款則沒有此限制
整個付款流程為下:
交易 > delay_capture_in_days 天後請款 > 請款成功即可部分退款
舉例:
顧客於十月九號交易,delay_capture_in_days 預設為 0,則當日請款,請款成功即可部分退款
顧客於十月九號交易,delay_capture_in_days 更改為 3,則十月十二號請款,請款成功即可部分退款
*若顯示「請款成功」但無法部分退款,原因為銀行正針對該筆交易進行結帳,請稍後一至兩天再試
Related topics
partner_key
What is it?
每個 Portal 帳號的識別金鑰
呼叫 TapPay 伺服器的 API 時必須將 header 中的"x-api-key“設為此值
您可於 Portal 左手邊的 Information 找到此值
Related topics
payByPrime
payByToken
Refund
Record
x-api-key
payByPrime
What is it?
利用 prime 字串來付款的 API
使用者第一次登錄卡號時必須使用此 API 來進行付款並儲存卡片
Related topics
TPDCard.createToken()
payByToken
prime
partner_key
merchant_id
amount
currency
details
cardholder
instalment
remember
status
msg
rec_trade_id
auth_code
card_secret
card_info
acquirer
millis
x-api-key
payByToken
What is it?
利用卡片金鑰及卡片字串來付款的 API
當使用者願意儲存卡號後,即可跳過 createToken 跟 payByPrime 的步驟,直接使用此 API 進行付款
Related topics
payByPrime
card_key
card_token
partner_key
merchant_id
amount
currency
details
instalment
status
msg
rec_trade_id
auth_code
card_info
acquirer
millis
x-api-key
partial_card_number
What is it?
信用卡前六碼與後四碼
Related topics
prime
What is it?
代替卡片的一次性字串,由 TPDCard.createToken()的 onSuccessCallBack() 或 TPDirect.card.createToken() 回傳
可用於 payByPrime API 內進行付款
此字串的時效為 90 秒
若您有開啟 Apple Pay 延後授權,請自行保管 Prime。預設 Prime 有效期限為 30 天
Related topics
TPDirect.card.createToken()
TPDCard.createToken()
onSuccessCallBack()
card
last_four
payByPrime
Production
What is it?
交易的正式環境,當您的產品正式上線後應切換至此環境
您可利用 TPDSetup.initInstance() 或 TPDirect.setupSDK() 來進行設定
請確認以下事情:
1. Portal 上的商家是否有在正式環境註冊,並使用銀行的正式收單帳號
2. Portal 上的 IP 是否有在正式環境登錄
3. 前端的環境設定中必須要帶入正式環境的 App Key
4. 前端的伺服器種類必須要切換到正式環境 (Production)
5. 後端的傳送的網址必須要切換到正式環境 (https://sandbox.tappaysdk.com/tpc/ -> https://prod.tappaysdk.com/tpc/)
Related topics
TPDSetup.initInstance()
TPDirect.setupSDK()
TPDServerType
serverType
Sandbox
product_image_url
What is it?
交易付款頁面上所顯示的商品或商家圖片。此欄位等同於line_pay_product_image_url, 若您於呼叫時同時帶入 product_image_url 與line_pay_product_image_url,TapPay 將以product_image_url 欄位的內容為主。
名稱 | 長度 | 圖片大小 |
---|---|---|
LINE Pay | 500 | 84 x 84 |
Record
What is it?
查詢交易紀錄用的 API
Related topics
partner_key
records_per_page
page
filters
order_by
status
msg
total_page_count
trade_records
x-api-key
number_of_transactions
records_per_page
What is it?
決定一張頁面上有幾筆交易紀錄的參數
預設值為50,而最大值為200
舉例來說:
如果總交易紀錄量為400,而 “records_per_page” 為200
則第0頁會有第1筆紀錄至第200筆紀錄,而第1頁會有第201筆至第400筆紀錄
Related topics
Redeem extra_info
What is it?
紅利額外資訊,各間銀行參數請參考下表
銀行名稱 | 名稱 | 類別 | 內容 |
---|---|---|---|
財團法人聯合信用卡處理中心 | redeem_used | String | 使用的紅利 |
credit_amt | String | 持卡人自付金額 | |
redeem_balance | String | 紅利餘額 | |
redeem_type | String | 1 : 部分紅利 2 : 全額紅利 |
record_status
What is it?
交易紀錄的狀態
可能的值包括:
值 | 狀態 | 內容 |
---|---|---|
-1 | ERROR | 交易錯誤 |
0 | AUTH | 銀行已授權交易,但尚未請款 |
1 | OK | 交易完成 |
2 | PARTIALREFUNDED | 部分退款 |
3 | REFUNDED | 完全退款 |
4 | PENDING | 待付款 |
5 | CANCEL | 取消交易 |
Related topics
rec_trade_id
What is it?
Related topics
payByPrime
payByToken
Refund
filters
trade_records
Refund
What is it?
退款的 API,支援部分退款
Related topics
partner_key
rec_trade_id
amount
status
msg
refund_amount
x-api-key
Partial Refund
refunded_amount
What is it?
退款金額
Related topics
remember
What is it?
決定是否要記憶卡號的參數
此參數 = true 時,payByPrime 會回傳 card_secret,裡面包含卡片字串與金鑰
未來付款就只需利用卡片字串與金鑰來呼叫 payByToken API,省略 createToken 與 payByPrime 的步驟
Related topics
Sandbox
What is it?
測試環境,具有與正式環境一樣的功能,但付款時不會接觸到金流
您可利用 TPDSetup.initInstance() 或 TPDirect.setupSDK() 來進行設定
Related topics
TPDSetup.initInstance()
TPDirect.setupSDK()
TPDServerType
serverType
Production
serverType
What is it?
決定伺服器環境的參數,應為以下其中一值:
值 | 內容 |
---|---|
sandbox | 測試環境 |
production | 正式環境 |
Related topics
TPDSetup.initInstance()
TPDirect.setupSDK()
appid
appKey
TPDServerType
Sandbox
Production
status
What is it?
API 回傳代碼
請參考我們的錯誤代碼表
Related topics
TPDirect.card.createToken()
TPDCard.createToken()
payByPrime
payByToken
Refund
Record
onFailureCallBack
msg
Status Code
What is it?
消費者填卡號的狀態,由 JavaScript 的 SDK 所回傳:
code | 內容 |
---|---|
0 | 欄位已填好,並且沒有問題 |
1 | 欄位還沒有填寫 |
2 | 欄位有錯誤,此時在 CardView 裡面會用顯示 errorColor |
3 | 使用者正在輸入中 |
TapPay Fields Styles
What it is?
TapPay Fields 支援的 CSS 屬性
color , font , font-family , font-size , font-size-adjust , font-stretch , font-style , font-variant , font-variant-alternates , font-variant-caps , font-variant-east-asian , font-variant-ligatures , font-variant-numeric , font-weight , line-height , outline , opacity , text-shadow , transition , -moz-osx-font-smoothing , -moz-transition , -webkit-font-smoothing , -webkit-transition
Test Card
What is it?
在測試環境內,您可用以下的卡號進行付款
卡號 | 到期月份 | 到期年份 | CCV | 結果 |
---|---|---|---|---|
4242 4242 4242 4242 | 01 | 23 | 123 | 0 - Success ( type : Visa ) |
3543 9234 8838 2426 | 01 | 23 | 123 | 0 - Success ( type : JCB ) |
3454 5465 4604 563 | 01 | 23 | 1234 | 0 - Success ( type : AMEX ) |
5451 4178 2523 0575 | 01 | 23 | 123 | 0 - Success ( type : MASTERCARD ) 使用此卡號進行 3D 驗證時會直接授權成功 |
6234 5774 3859 4899 | 01 | 23 | 123 | 0 - Success ( type : UnionPay ) |
4242 4202 3507 4242 | 01 | 23 | 123 | 915 - Unknown Error, please contact TapPay customer service |
4242 4216 0218 4242 | 01 | 23 | 123 | 10003 - Card Error |
4242 4222 0418 4242 | 01 | 23 | 123 | 10005 - Bank System Error |
4242 4240 1026 4242 | 01 | 23 | 123 | 10006 - Duplicate Transaction |
4242 4246 1228 4242 | 01 | 23 | 123 | 10008 - Bank Merchant Account Data Error |
4242 4264 1829 4242 | 01 | 23 | 123 | 10009 - Amount Error |
4242 4276 2229 4242 | 01 | 23 | 123 | 10013 - Order number duplicate |
4242 4288 2639 4242 | 01 | 23 | 123 | 10023 - Bank Error |
4242 4210 0008 4242 | 01 | 23 | 123 | 10015 = Redeem Failed |
在測試環境內,若您要測試Card Metadata API,您一定要用以下的卡號進行測試:
卡號 | 到期月份 | 到期年份 | CCV | 結果 |
---|---|---|---|---|
5480 3543 1215 3777 | 01 | 23 | 123 | 將回傳真實卡面 (Mastercard) token_status=“ACTIVE”, card art status=“SUPPORT”, is_real_card_face=“TRUE” |
4622 9431 2741 6387 | 01 | 23 | 123 | 將回傳真實卡面(Visa) token_status=“ACTIVE”, card art status=“SUPPORT”, is_real_card_face=“TRUE” |
4242 4217 4599 4242 | 01 | 23 | 123 | 將回傳假卡面(商戶使用不支援TSP系統的信用卡測試) token_status=“NOT_SUPPORT”, card art status=“NOT SUPPORT”, is_real_card_face=“FALSE” |
4242 4278 8927 4242 | 01 | 23 | 123 | 將回傳假卡面 token_status=“REQUEST_PROCESSING”, card art status=“REQUEST_PROCESSING”, is_real_card_face=“FALSE” |
4242 4230 1382 4242 | 01 | 23 | 123 | 將回傳假卡面 token_status=“ACTIVE”, card art status=“NOT_SUPPORT”, is_real_card_face=“FALSE” |
4242 4235 5081 4242 | 01 | 23 | 123 | 將回傳假卡面 token_status=“ACTIVE”, card art status=“REQUEST_PROCESSING”, is_real_card_face=“FALSE” |
4242 4246 9569 4242 | 01 | 23 | 123 | 將回傳假卡面 token_status=“SUSPENDED”, card art status=“NOT_SUPPORT”, is_real_card_face=“FALSE” |
4242 4253 9494 4242 | 01 | 23 | 123 | 將回傳假卡面 token_status=“SUSPENDED”, card art status=“REQUEST_PROCESSING”, is_real_card_face=“FALSE” |
4242 4266 2411 4242 | 01 | 23 | 123 | 將回傳假卡面 token_status=“DELETED”, card art status=“NOT_SUPPORT”, is_real_card_face=“FALSE” |
4242 4272 1860 4242 | 01 | 23 | 123 | 將回傳假卡面 token_status=“DELETED”, card art status=“REQUEST_PROCESSING”, is_real_card_face=“FALSE” |
4242 4259 9407 4242 | 01 | 23 | 123 | 將回傳假卡面 token_status=“DELETED”, card art status=“SUPPORT”, is_real_card_face=“FALSE” |
4242 4264 8626 4242 | 01 | 23 | 123 | “將回傳假卡面(當消費者在交易完成,但商戶尚未呼叫Card Metadata API前,消費者就先通 知發卡行剪卡)token_status="NOT_SUPPORT”, card art status=“NOT_SUPPORT”, is_real_card_face=“FALSE”“ |
5455 7339 9439 8399 | 01 | 23 | 123 | "將回傳真卡面,但TSP系統不支援該卡面,但TapPay系統裡存有該卡面) token_status="NOT_SUPPORT”, card art status=“SUPPORT”, is_real_card_face=“TRUE” |
4242 4241 8178 4242 | 01 | 23 | 123 | 將回傳真卡面token_status=“SUSPENDED”, card art status=“SUPPORT”, is_real_card_face=“TRUE" |
這些卡號將會產生對應的結果
在測試環境內,若您要測試Card Notify API,您一定要用以下的卡號進行測試:
卡號 | 到期月份 | 到期年份 | CCV | 結果 |
---|---|---|---|---|
4242 4241 8178 4242 | 01 | 23 | 123 | 此測試卡,測試結果固定為token_status=“SUSPENDED”, card art status=“SUPPORT”, is_real_card_face=“TRUE” |
在測試環境中,若您要測試 KYC 驗證功能,請一定要使用以下的身份證字號及電話號碼
身分證字號 | 電話號碼 |
---|---|
A123456789 | 0912345678 |
Related Topics
cardNumber
due_month
due_year
CCV
time
What is it?
交易時間,單位為毫秒
請參考 https://currentmillis.com
Related topics
rec_trade_id
auth_code
merchant_id
merchant_name
appname
amount
refund_amount
record_status
trade_records
time(filter)
What is it?
用來過濾特定時間內的搜尋條件
時間限制為 90天,有帶時間時進行驗證
裡面有兩個參數;
名稱 | 類別 | 內容 |
---|---|---|
start_time | long | 起始時間 |
end_time | long | 結束時間 |
Related topics
total_page_count
What is it?
交易紀錄總頁數
由於頁數由0開始,所以如果 total_page_count = 2,則指會有第0頁與第1頁
Related topics
Record
status
msg
records_per_page
page
trade_records
Web SDK compatibility
Safari | Direct pay | Apple pay | Google pay (真實卡號) | Google pay (虛擬卡號) | PaymentRequestAPI | LINE Pay | Samsung Pay | JKOPAY |
---|---|---|---|---|---|---|---|---|
Mac Safari | O | O | O | X | X | O | O | O |
iOS Safari | O | O | O | X | X | O | O | O |
Chrome | Direct pay | Apple pay | Google pay (真實卡號) | Google pay (虛擬卡號) | PaymentRequestAPI | LINE Pay | Samsung Pay | JKOPAY |
---|---|---|---|---|---|---|---|---|
Mac Chrome | O | X | O | X | O | O | O | O |
Windows Chrome | O | X | O | X | O | O | O | O |
iOS Chrome | O | X | O | X | X | O | O | O |
Android Chrome | O | X | O | O | O | O | O | O |
FireFox | Direct pay | Apple pay | Google pay (真實卡號) | Google pay (虛擬卡號) | PaymentRequestAPI | LINE Pay | Samsung Pay | JKOPAY |
---|---|---|---|---|---|---|---|---|
Mac FireFox | O | X | O | X | X | O | O | O |
Windows FireFox | O | X | O | X | X | O | O | O |
iOS FireFox | O | X | X | X | X | X | O | O |
Android FireFox | O | X | O | X | X | O | O | O |
Opera | Direct pay | Apple pay | Google pay (真實卡號) | Google pay (虛擬卡號) | PaymentRequestAPI | LINE Pay | Samsung Pay | JKOPAY |
---|---|---|---|---|---|---|---|---|
Mac Opera | O | X | O | X | O | O | O | O |
Windows Opera | O | X | O | X | O | O | O | O |
iOS Opera | O | X | X | X | X | O | X | O |
Android Opera | O | X | O | X | X | O | X | O |
Edge | Direct pay | Apple pay | Google pay (真實卡號) | Google pay (虛擬卡號) | PaymentRequestAPI | LINE Pay | Samsung Pay | JKOPAY |
---|---|---|---|---|---|---|---|---|
Windows Edge | O | X | O | X | X | O | O | O |
IE11 | Direct pay | Apple pay | Google pay (真實卡號) | Google pay (虛擬卡號) | PaymentRequestAPI | LINE Pay | Samsung Pay | JKOPAY |
---|---|---|---|---|---|---|---|---|
Windows IE11 | O | X | X | X | X | O | O | O |
Facebook Browser | Direct pay | Apple pay | Google pay (真實卡號) | Google pay (虛擬卡號) | PaymentRequestAPI |
---|---|---|---|---|---|
iOS Facebook Browser | O | X | X | X | X |
Android Facebook Browser | O | X | X | X | X |
LINE Browser | Direct pay | Apple pay | Google pay (真實卡號) | Google pay (虛擬卡號) | PaymentRequestAPI |
---|---|---|---|---|---|
iOS LINE Browser | O | X | X | X | X |
Android LINE Browser | O | X | X | X | X |
TPDCard
What is it?
設定使用者卡片的類別
Related topics
TPDSetup
cardNumber
due_month
due_year
CCV
TPDCard.createToken()
What is it?
取得 prime 字串的方法
Related topics
TPDCard
geoLocation
prime
onSuccessCallBack()
onFailureCallBack()
payByPrime
TPDirect.card.createToken()
What is it?
取得 prime 字串的方法
Related topics
cardNumber
due_month
due_year
CCV
status
card
client_ip
payByPrime
TPDirect.setupSDK()
What is it?
驗證並設定伺服器的方法,必須於呼叫其他 SDK 方法前優先呼叫
Related topics
TPDirect.card.createToken()
appid
appKey
serverType
TPDServerType
What is it?
決定伺服器環境的參數,應為以下其中一值:
值 | 內容 |
---|---|
TPDServerType.Sandbox | 測試環境 |
TPDServerType.Production | 正式環境 |
Related topics
TPDSetup.initInstance()
TPDirect.setupSDK()
appid
appKey
serverType
Sandbox
Production
TPDSetup
What is it?
驗證並設定伺服器的方法的類別
Related topics
TPDCard
TPDSetup.initInstance()
TPDSetup.initInstance()
What is it?
驗證並設定伺服器的方法,必須於呼叫其他 SDK 方法前優先呼叫
Related topics
TPDSetup
appid
appKey
TPDServerType
trade_records
What is it?
包含對應條件底下全部交易紀錄的 JSON 陣列
每筆交易紀錄為一個 JSONObject,並包含以下值:
名稱 | 類別(長度) | 內容 | |||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
rec_trade_id | String(20) | 交易紀錄識別碼 | |||||||||||||||||||||||||||||||||
auth_code | String(6) | 銀行授權碼 | |||||||||||||||||||||||||||||||||
merchant_id | String(50) | 商家識別碼 | |||||||||||||||||||||||||||||||||
merchant_name | String(50) | 商家名稱 | |||||||||||||||||||||||||||||||||
app_name | String | App 或網站名稱 | |||||||||||||||||||||||||||||||||
time | long | 交易時間 | |||||||||||||||||||||||||||||||||
amount | int | 交易金額,會因退款而減少 | |||||||||||||||||||||||||||||||||
refunded_amount | int | 退款金額 | |||||||||||||||||||||||||||||||||
record_status | int | 交易狀態 | |||||||||||||||||||||||||||||||||
bank_transaction_id | String | 由大寫英文字母及數字所組成的訂單編號,此訂單編號為方便您對帳使用,並將會送至銀行 | |||||||||||||||||||||||||||||||||
cap_millis | long | 交易會被請款的時間 | |||||||||||||||||||||||||||||||||
original_amount | int | 原始交易金額 | |||||||||||||||||||||||||||||||||
bank_transaction_start_millis | long | 銀行實際交易時間 | |||||||||||||||||||||||||||||||||
bank_transaction_end_millis | long | 銀行實際結束時間 | |||||||||||||||||||||||||||||||||
is_captured | boolean | 是否已請款 | |||||||||||||||||||||||||||||||||
bank_result_code | String | 銀行錯誤代碼 | |||||||||||||||||||||||||||||||||
bank_result_msg | String | 銀行錯誤訊息 | |||||||||||||||||||||||||||||||||
partial_card_number | String | 卡號的前六碼與後四碼 | |||||||||||||||||||||||||||||||||
payment_method | String | 付款方式
|
|||||||||||||||||||||||||||||||||
details | String | 交易明細 | |||||||||||||||||||||||||||||||||
cardholder | JSONArray | 消費者資料
|
|||||||||||||||||||||||||||||||||
merchandise_details | JSONObject | 交易商品明細
|
|||||||||||||||||||||||||||||||||
currency | String | 此筆交易幣別 | |||||||||||||||||||||||||||||||||
merchant_reference_info | JSON | 商戶參考資訊
|
|||||||||||||||||||||||||||||||||
e_invoice_carrier | JSONObject | 電子發票載具資料
|
|||||||||||||||||||||||||||||||||
three_domain_secure | boolean | 是否為 3D 驗證交易 | |||||||||||||||||||||||||||||||||
pay_by_instalment | boolean | 是否為分期付款 | |||||||||||||||||||||||||||||||||
instalment_info | JSONObject | pay_by_instalment 為 true 時回傳
|
|||||||||||||||||||||||||||||||||
order_number | String | 自定義的訂單編號,用於 TapPay 做訂單識別,可重複帶入 | |||||||||||||||||||||||||||||||||
pay_info | JSONObject | 支援:LINE Pay, JKOPAY, 悠遊付 若此交易為LINE PAY定期定額,"method" 與 “masked_credit_card_number” 回傳值為空字串,其餘欄位回傳值為 0
|
|||||||||||||||||||||||||||||||||
pay_by_redeem | boolean | 是否為紅利折抵交易 | |||||||||||||||||||||||||||||||||
redeem_info | JSONObject |
|
|||||||||||||||||||||||||||||||||
kyc_info | JSONObject |
|
|||||||||||||||||||||||||||||||||
card_identifier | String | 信用卡識別碼,每張信用卡只會對到一組識別碼 不支援:Apple Pay, Google Pay, Samsung Pay, LINE Pay, JKOPAY, Easy Wallet |
|||||||||||||||||||||||||||||||||
card_info | JSONObject | 卡片資訊。不支援:LINE Pay, JKOPAY, 悠遊付 裡面包含以下值:
|
Related topics
Record
status
msg
records_per_page
page
total_page_count
rec_trade_id
auth_code
merchant_id
merchant_name
app_name
time
amount
refund_amount
record_status
cap-millis
original_amount
bank_transaction_start_millis
bank_transaction_end_millis
trade_history
針對所查詢之該交易下,每一筆交易的歷史紀錄的 JSON 陣列
每個歷史紀錄為一個 JSONObject , 並包含以下值:
名稱 | 類別 | 內容 |
---|---|---|
amount | int | 交易金額 |
action | int | 交易狀態 0 授權 1 請款 3 退款 4 待付款 5 取消 6 取消退款 |
millis | long | 觸發該狀態的時間 |
success | boolean | 該狀態是否成功 |
bank_transaction_millis | long | 真實送到銀行進行授權、請款、退款、取消授權的時間 |
can_refund_cancel_millis | long | action = 3,可以取消退款時回傳 |
refund_id | String | action = 3, 6 時回傳,退款動作由 TapPay 產生的辨識碼 |
request_id | String | action = 6 時回傳,退款請求動作的辨識碼 |
bank_refund_id | String(20) | 商戶定義的退款紀錄識別碼(需為半形的英數字) |
is_pending | Boolean | 當退款並未完成前會回應 true,已完成則會回傳 false 會出現此狀態的銀行:玉山銀行、聯邦銀行、中國信託銀行(其中的批次請款規格)、永豐銀行、台北富邦銀行、財團法人聯合信用卡處理中心、凱基銀行、環匯亞太、悠遊付、RAZER PAY |
bank_result_code | String | 銀行錯誤代碼。 授權與請款會顯示實際從銀行拿到的最新狀態。 退款則會逐筆顯示 |
bank_result_msg | String | 銀行錯誤訊息。 授權與請款會顯示實際從銀行拿到的最新狀態。 退款則會逐筆顯示 |
transaction_time_millis
What is it?
交易時間,單位為毫秒
請參考 https://currentmillis.com
Related topics
tsp(filter)
What is it?
名稱 | 類別 | 內容 |
---|---|---|
tsp | Bool | 預設為 false true 時搜尋 TSP 交易,不會搜尋其他 payment type 的交易 |
x-api-key
What is it?
每個 Portal 帳號的識別金鑰,亦稱為 partner_key
呼叫 TapPay 伺服器的 API 時必須將此值放進 header 中
您可於 Portal 左手邊的 Information 找到此值
Related topics
payByPrime
payByToken
partner_key
Refund
Record
samsung_pay_country_code
What is it?
Samsung Pay 驗證頁面國家及語言
值 | 內容 |
---|---|
ae | UAE (English) |
au | Australia (English) |
br | Brazil (Portu) |
de_ch | Switzerland (German) |
fr_ch | Switzerland (French) |
hk | Hong Kong (Chinese) |
my | Malysia (English) |
ru | Russia (Russian) |
se | Sweden (Swedish) |
sg | Singapore (English) |
th | Thailand (Thai) |
tw | Taiwan (Chinese) |
uk | UK (English) |
us | USA (English) |
vn | Vietnam (Vietnamese) |
Each bank capture / refund time
銀行 | TapPay 送請款時間 | TapPay 收到銀行請款回覆檔的時間 |
---|---|---|
中國信託銀行(一般) | 06:00 PM | 當下回應 |
中國信託銀行(銀聯) | 06:00 PM | 當下回應 |
中國信託銀行(批次) | 06:00 PM | 隔日 07:30AM |
⽟山銀⾏ | 11:30 PM | 隔日 04:30 AM |
台新銀⾏ | 09:00 PM | 當下回應 |
台北富邦銀⾏ | 08:30 PM (取消授權/請款) | 10:00 PM |
國泰世華銀⾏ | 10:00 PM | 當下回應 |
永豐銀⾏ | 09:00 PM | 隔日 09:30 AM |
凱基銀⾏ | 10:00 PM | 隔日 07:30 AM |
合作金庫銀行 | 10:30 PM | 當下回應 |
第⼀銀⾏ | 10:30 PM | 當下回應 |
聯邦銀行 | 10:00 PM | 隔日 05:30 AM |
財團法人聯合信用卡處理中心 | 10:00 PM | 隔日 07:30 AM |
藍新金流 | 06:00 PM | 當下回應 |
陽信銀⾏ | 10:30 PM | 當下回應 |
中國銀⾏ | 11:00 PM | 當下回應 |
RAZER PAY | 09:00 PM | 當下回應 |
LINE Pay | 10:00 PM | 當下回應 |
環匯亞太 | 00:00 AM | 隔日 12:00 pm |