應用場景
提供特店查詢ATM/CVS/BARCODE的取號結果。
注意事項:若訂單已完成付款時,則不提供查詢取號結果,訂單資訊請用查詢訂單API進行查詢。
API介接網址
- 測試環境:https://payment-stage.ecpay.com.tw/Cashier/QueryPaymentInfo
- 正式環境:https://payment.ecpay.com.tw/Cashier/QueryPaymentInfo
HTTPS 傳輸協定
- Content-Type:application/x-www-form-urlencoded
- HTTP Method:POST
特店傳入參數說明
MerchantID String(10)
特店編號(由綠界提供) 必填
MerchantTradeNo String(20)
特店交易編號 必填
訂單產生時傳送給綠界的特店交易編號。
TimeStamp Int
驗證時間 必填
- 將當下的時間轉為UnixTimeStamp(見範例)用於驗證此次介接的時間區間。
- 綠界驗證時間區間暫訂為 3 分鐘內有效,超過則此次介接無效。 參考資料:http://www.epochconverter.com/。
CheckMacValue String
檢查碼 必填
將收到的參數和參數值,加上特店的HashKey&HashIV所產生,請參考附錄檢查碼機制。
PlatformID String(10)
特約合作平台商代號 非必填
為專案合作的平台商使用。
- 一般特店或平台商本身介接,則參數請帶放空值。
- 若為專案合作平台商的特店使用時,則參數請帶平台商所綁的特店編號[MerchantID]。
綠界回傳參數說明
RtnCode Int
交易狀態
RtnMsgString(200)
交易訊息
MerchantID String(10)
特店編號
MerchantTradeNo String(20)
特店交易編號
訂單產生時傳送給綠界的特店交易編號。
StoreID String(20)
特店旗下店舖代號
TradeNo String(20)
綠界的交易編號
TradeAmt Int
交易金額
PaymentType String(20)
特店選擇的付款方式
TradeDate String(20)
訂單成立時間
格式為yyyy/MM/dd HH:mm:ss
CustomField1 String(50)
自訂名稱欄位1
提供合作廠商使用記錄用客製化使用欄位
CustomField2 String(50)
自訂名稱欄位2
提供合作廠商使用記錄用客製化使用欄位
CustomField3 String(50)
自訂名稱欄位3
提供合作廠商使用記錄用客製化使用欄位
CustomField4 String(50)
自訂名稱欄位4
提供合作廠商使用記錄用客製化使用欄位
CheckMacValue String
檢查碼
特店必須檢查檢查碼[CheckMacValue]來驗證,請參考附錄檢查碼機制。
當付款方式為使用CVS付款方式時會回傳以下參數
PaymentNoString(14)
繳費代碼
PaymentURLString(100)
繳費連結
ExpireDate String(10)
繳費期限
格式為 yyyy/MM/dd HH:mm:ss
當付款方式為使用ATM付款方式時會回傳以下參數
BankCode String(3)
繳費銀行代碼
vAccount String(16)
繳費虛擬帳號
ExpireDate String(10)
繳費期限
格式為 yyyy/MM/dd
當付款方式為使用BarCode付款方式時會回傳以下參數
Barcode1 String(20)
條碼第一段號碼
Barcode2 String(20)
條碼第二段號碼
Barcode3 String(20)
條碼第三段號碼
ExpireDate String(20)
繳費期限
格式為 yyyy/MM/dd HH:mm:ss
YAML
提供的 YAML 文件用於定義 API 的配置、結構、操作和基礎設施管理等資訊,方便開發人員理解和使用 API。
openapi: 3.1.0
info:
title: ECPay ATM/CVS/BARCODE Payment Info Query API
version: 1.0.0
servers:
- url: https://payment.ecpay.com.tw
description: Production Environment
- url: https://payment-stage.ecpay.com.tw
description: Testing Environment
paths:
/Cashier/QueryPaymentInfo:
post:
summary: Query payment information for ATM/CVS/BARCODE
requestBody:
content:
application/x-www-form-urlencoded:
schema:
type: object
properties:
MerchantID:
type: string
description: Merchant ID provided by ECPay
MerchantTradeNo:
type: string
description: Merchant trade number
TimeStamp:
type: integer
description: Unix timestamp of the request
CheckMacValue:
type: string
description: CheckMac value for verification
PlatformID:
type: string
description: Partner platform ID
required:
- MerchantID
- MerchantTradeNo
- TimeStamp
- CheckMacValue
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: object
properties:
RtnCode:
type: integer
description: Transaction status code
RtnMsg:
type: string
description: Transaction message
MerchantID:
type: string
description: Merchant ID
MerchantTradeNo:
type: string
description: Merchant trade number
StoreID:
type: string
description: Store ID under the merchant
TradeNo:
type: string
description: ECPay trade number
TradeAmt:
type: integer
description: Transaction amount
PaymentType:
type: string
description: Payment type selected by the merchant
TradeDate:
type: string
description: Order creation date (yyyy/MM/dd HH:mm:ss)
CustomField1:
type: string
description: Custom field 1
CustomField2:
type: string
description: Custom field 2
CustomField3:
type: string
description: Custom field 3
CustomField4:
type: string
description: Custom field 4
CheckMacValue:
type: string
description: CheckMac value
PaymentNo:
type: string
description: Payment code (for CVS payments)
PaymentURL:
type: string
description: Payment link (for CVS payments)
ExpireDate:
type: string
description: Payment deadline (yyyy/MM/dd HH:mm:ss)
BankCode:
type: string
description: Bank code (for ATM payments)
vAccount:
type: string
description: Virtual account number (for ATM payments)
Barcode1:
type: string
description: First segment of barcode (for BarCode payments)
Barcode2:
type: string
description: Second segment of barcode (for BarCode payments)
Barcode3:
type: string
description: Third segment of barcode (for BarCode payments)