應用場景
注意事項:超商代碼為一次性繳費,請勿重覆繳費或分次繳費。廠商可於系統加上此說明,以避免消費者的錯誤操作。
API介接網址
- 正式環境:https://ecpayment.ecpay.com.tw/1.0.0/Cashier/GenPaymentCode
- 測試環境:https://ecpayment-stage.ecpay.com.tw/1.0.0/Cashier/GenPaymentCode
HTTPS 傳輸協定
- Content Type:application/json
- HTTP Method:POST
特店Request參數說明 (Json格式)
MerchantID String(20)
特店編號 必填
RqHeader Object
傳輸資料 必填
Timestamp Number
傳輸時間 必填
請將傳輸時間轉換為時間戳(GMT+8),綠界會利用此參數將當下的時間轉為Unix TimeStamp來驗證此次介接的時間區間。
注意事項:
- 驗證時間區間為 10 分鐘內有效,若超過此驗證時間則此次訂單將無法建立,產生時間戳請參考相關資料。
- 合作特店須進行主機「時間校正」,避免主機產生時差,導致API無法正常運作。
Data String
加密資料 必填
此參數為加密過的 JSON 格式資料,加密方式請參考說明。
特店Request參數範例 (Json格式)
{
"MerchantID": "3002607",
"RqHeader": {
"Timestamp": 1234567890
},
"Data": "enter your data"
}
Data參數說明(Json格式)
注意事項:請在加密前對參數值進行 URLEncode
PlatformID String(10)
特約合作平台商代號
- 為專案合作的平台商使用
- 一般特店或平台商本身介接,則參數請帶空值
- 專案合作平台商的特店使用時,參數請帶平台
商所綁的特店編號 MerchantID
MerchantID String(10)
特店編號 必填
ChoosePayment String(20)
付款方式 必填
- CVS : 超商代碼
- BARCODE : 超商條碼
- ATM: 虛擬帳號
OrderInfo Object
訂單資訊 必填
MerchantTradeDate String(20)
特店交易時間 必填
格式為 yyyy/MM/dd HH:mm:ss
MerchantTradeNo String(20)
特店訂單編號 必填
- 特店訂單編號均為唯一值,不可重複使用
- 格式僅支援英數字a-zA-z0-9,且不支援全型文字
注意事項:如何避免訂單編號重複請參考 FAQ
TotalAmount Int
交易金額 必填
- 請帶整數,不可有小數點
- 僅限新台幣。各付款金額的限制,請參考賣家會員服務介紹
ReturnURL String(200)
付款回傳結果 必填
當消費者付款完成後,綠界會將付款結果參數以幕後(Server POST) 回傳到該網址。詳細說明請參考付款結果通知。
注意事項:
- 請在收到 Server 端付款結果通知後,請正確回應 1|OK 給綠界
- 1|OK 僅是特店回應綠界是否收到通知,並不會改變付款狀態
TradeDesc String(200)
交易描述 必填
請勿傳入超過長度 200 的內容,避免該欄位資訊被截斷
ItemName String(400)
商品名稱 必填
- 商品名稱以分隔線#分開
- 請勿傳入超過長度 400 的內容,避免該欄位資訊被截斷
Remark String(200)
備註
CVSInfo Object
超商代碼資訊
ExpireDate Int
超商繳費截止時間
- 當 ChoosePaymentList 為 0 或 4 ,此欄位必填
- 已分鐘為單位,預設為 10080 分鐘 (7天) 。不可超過 43200 分鐘(30天),超過時一律以 43200 分鐘計算
注意事項:舉例 08/01 的 20:15 分購買商品,繳費期限為 7 天,表示 08/08 的 20:15 分前您必須前往超商繳費。
CVSCode String(10)
超商代碼
- CVS : 超商代碼(不指定超商),此為預設值
- OK : OK 超商代碼
- FAMILY: 全家超商
- HILIFE : 萊爾富超商
- IBON : 7 – 11 ibon
Desc_1 String(20)
交易描述_1
若 CVSCode 為 FAMILY 或 IBON 時,會顯示在超商繳費平台螢幕上
Desc_2 String(20)
交易描述_2
若 CVSCode 為 FAMILY 或 IBON 時,會顯示在超商繳費平台螢幕上
Desc_3 String(20)
交易描述_3
若 CVSCode 為 FAMILY 或 IBON 時,會顯示在超商繳費平台螢幕上
Desc_4 String(20)
交易描述_4
若 CVSCode 為 FAMILY 或 IBON 時,會顯示在超商繳費平台螢幕上
CustomField String(200)
自訂欄位
- 提供特店使用客制化欄位
- 請勿傳入超過長度 200 的內容,避免該欄位資訊被截斷
Data參數範例(Json格式)
{
"MerchantID": "3002607",
"RememberCard": 1,
"PaymentUIType": 2,
"ChoosePayment": "CVS",
"OrderInfo": {
"MerchantTradeNo": "20180914001",
"MerchantTradeDate": "2020/09/26 14:49:12",
"TotalAmount": 100,
"ReturnURL": "https://yourReturnURL.com"
},
"CVSInfo": {
"ExpireDate": 10080
}
}
綠界Response參數說明 (Json格式)
MerchantID String(10)
特店編號
RpHeader Object
回傳資料
Timestamp Number
回傳時間
時間戳 Unix timestamp
TransCode Int
回傳代碼
1 代表 API 傳輸資料 (MerchantID, RqHeader, Data) 接收成功,實際的API執行結果狀態請參考 RtnCode 參數
TransMsg String(200)
回傳訊息
Data String
加密資料
此參數為加密過的 JSON 格式資料
綠界Response參數範例 (Json格式)
{
"MerchantID": "3002607",
"RpHeader": {
"Timestamp": 1234564848
},
"TransCode": 1,
"TransMsg": "Success",
"Data": "…"
}
Data參數說明(Json格式)
RtnCode Int
交易狀態
1 代表 API 執行成功,其餘代碼均為失敗,失敗代碼請參考交易訊息代碼表。
RtnMsg String(200)
回應訊息
PlatformID String(10)
平台商編號
MerchantID String(10)
特店編號
OrderInfo Object
訂單資訊
MerchantTradeNo String(20)
特店交易編號
TradeNo String(20)
綠界交易編號
請保存綠界的交易編號與特店交易編號MerchantTradeNo的關聯。
TradeDate String(20)
訂單成立時間
格式為 yyyy/MM/dd HH:mm:ss
CVSInfo Object
超商代碼資訊
付款方式為CVS時,回傳CVSInfo
ExpireDate String(20)
繳費期限
PaymentNo String(14)
繳費代碼
PaymentURL String(100)
繳費連結
CustomField String(200)
自訂欄位
提供特店使用客制化欄位
Data參數範例(Json格式)
{
"RtnCode": 1,
"RtnMsg": "Success",
"MerchantID": "3002607",
"OrderInfo": {
"MerchantTradeNo": "20180914001",
"TradeNo": "1809261503338172",
"TradeDate" :"2018/09/26 14:59:54"
},
"CVSInfo": {
"PaymentNo": "123456789",
"ExpireDate": "2018/09/26 14:59:54"
}
}