應用場景
特店可透過API查詢財政部整合服務平台授權於綠界之發票號碼配號結果。
注意事項:如查無資料,可能的原因為取字軌號碼時並未授權於綠界,或字軌尚未取號完成。
API介接網址
- 測試環境:https://einvoice-stage.ecpay.com.tw/B2BInvoice/GetGovInvoiceWordSetting
- 正式環境:https://einvoice.ecpay.com.tw/B2BInvoice/GetGovInvoiceWordSetting
HTTPS傳輸協定
- Content Type :application/json
- HTTP Method :POST
特店傳入參數(Json格式)
PlatformID String(10)
特約合作平台商代號
- 提供特約合作平台商向綠界申請開通後使用,一般廠商介接請放空值。
- 平台商使用時,MerchantID(特店編號)欄位僅限帶入已綁定子廠商的特店編號,以免造成失敗。
MerchantID String(10)
特店編號 必填
RqHeader Object
傳入資料 必填
Timestamp Number
傳入時間 必填
請將傳輸時間轉換為時間戳(GMT+8),綠界會利用此參數將當下的時間轉為Unix TimeStamp來驗證此次介接的時間區間。
注意事項:
- 驗證時間區間暫訂為 10 分鐘內有效,若超過此驗證時間則此次訂單將無法建立,參考資料:http://www.epochconverter.com/。
- 合作特店須進行主機「時間校正」,避免主機產生時差,導致API無法正常運作。
Data String
加密資料 必填
此為加密過JSON格式的資料。加密方法說明
特店傳入參數範例(Json格式)
{
"MerchantID": "2000132",
"RqHeader": {
"Timestamp": 1525168923
},
"Data": "加密資料"
}
Data參數說明(Json格式) : 請先將Json字串進行urlencode後再進行AES加密
MerchantID String(10)
特店編號 必填
InvoiceYear String(3)
發票年度 必填
- 僅可查詢去年、當年與明年的發票年度
- 格式為民國年 ex:110
Data參數範例(Json格式)
{
"MerchantID": "2000132",
"InvoiceYear": "110"
}
綠界回傳參數格式
- Content Type :application/json
- HTTP Method :POST
綠界回傳參數(Json格式)
PlatformID String(10)
特約合作平台商代號
MerchantID String(10)
特店編號
RpHeader Object
回傳資料
Timestamp Number
回傳時間
Unix timestamp(GMT+8)
TransCode Int
回傳代碼
1 代表 API 傳輸資料(MerchantID, RqHeader, Data)接收成功,實際的 API 執行結果狀態請參考 RtnCode。
TransMsg String(200)
回傳訊息
Data String
加密資料
回傳相關資料,此為加密過JSON格式的資料。加密方法說明
綠界回傳參數範例
{
"MerchantID": "2000132",
"RpHeader": {
"Timestamp": 1525169058
},
"TransCode": 1,
"TransMsg": "",
"Data": "加密資料"
}
Data參數說明(Json格式) : 請先將Data進行AES解密後再做urldecode
RtnCode Int
回應代碼
1 代表 API 執行成功,其餘代碼均為失敗。
RtnMsg String(200)
回應訊息
InvoiceInfo Array[Object]
發票配號結果清單
InvoiceTerm Int
發票期別
- 1:1-2月
- 2:3-4月
- 3:5-6月
- 4:7-8月
- 5:9-10月
- 6:11-12月
InvType String(2)
字軌類別
- 07:一般稅額發票
- 08:特種稅額發票
InvoiceHeader String(2)
發票字軌
發票字軌名稱 ex:KK
InvoiceStart String(8)
起始發票編號
8碼發票號碼,尾數需為00或50。(例:10000000)
InvoiceEnd String(8)
結束發票編號
8碼發票號碼,尾數需為49或99。(例:10000049)
Number Int
申請本數
本數為特店向財政部申請字軌配號的單位。一本為50個發票號碼。
Data參數範例
{
"RtnCode": 1,
"RtnMsg": "成功",
"InvoiceInfo": [
{
"InvoiceTerm": 1,
"InvType": "07",
"InvoiceHeader": "KK",
"InvoiceStart": "10000000",
"InvoiceEnd": "10000049",
"Number": 1
}
]
}