瀏覽主題
Tap 如何處理非信用卡交易?
非信用卡支付可使用共同支援的 ACTION_SEND_TRANSACTION,搭配不同的 PAY_MODE_ID,如 LINE PAY 等。
POS 系統無法掃碼或付款失敗該如何處理?
串接MYPAY金流系統後,運作流程為消費者於商店結帳畫面輸入行動支付帳號、手機號等資訊,商店端主動由 POS 或前後台掃描消費者螢幕產生的條碼。
若 POS 系統無法掃碼或付款失敗:
- 錯誤排查:應檢查條碼類型、API 參數回傳訊息及支付工具端設定,最常見錯誤為「條碼編碼不合規」或「支付工具尚未綁定」。
- 流程注意事項:商店端串接需正確取得消費者條碼資料串並呼叫 API 送出,部分工具須校驗條碼格式或限制掃描次數。
請參閱技術文件,詳細檢查開發者設定:
消費者掃碼無法付款該如何處理?
串接MYPAY金流系統後,運作流程為消費者主動打開行動支付App掃描商店端QRCode,平台需顯示動態碼或靜態碼供消費者掃描。
若消費者掃碼無法付款:
- 錯誤排查:追查 QRCode 生成格式、是否與支付工具規範一致、或串接API參數是否正確填寫。
- 流程注意事項:商店端需確保 QRCode 有效且支付工具支援動態/靜態碼呈現,部分工具更新後會要求特定格式。
請參閱技術文件,詳細檢查開發者設定:
行動支付退款、作廢流程如何進行?
- 行動支付付款成功後可於有效期限內發動退款或作廢 API。
- 注意部分支付工具退款須於指定時限內發動,否則無法再退;API發動時需查詢當次交易工具及條件。
- 檢查 user_id、user_cellphone、商店支付工具是否正確;依支付工具規範比對欄位格式。
- 檢查是否有國碼格式錯誤、消費者手機未綁定該支付工具。
行動支付交易有否專屬限制或注意事項?
- 行動支付類型不支援經銷商代收費模式,若交易指定為代收費則自動降為一般模式。
- 超商、第三方支付如掃碼付款通常有時間性限制與金額上限,需依支付工具規範設計。
行動支付串接需要額外參數嗎?
- 部分支付方式(如電子錢包 Barcode 掃描)會額外要求 user_name、user_real_name、user_cellphone_code、user_cellphone 等欄位。
- 預設需提供消費者行動造碼(國碼及手機號)及載具資訊。
如何指定或限制可用支付工具?
行動支付有哪些串接模式?
- 支援多種支付工具,如 LINE Pay、Apple Pay、Google Pay、街口支付、Pi 錢包等。
- 串接時可選用預設支付方式(pfn)或由消費者端介面自由選擇。
電子發票相關 API 參數有哪些?
電子發票主要 API 參數參考:
| 參數名稱 | 說明/用途 |
|---|---|
| issue_invoice_state | 是否開立發票: 0否/1開立 |
| invoice_input_type | 發票開立類型: 1雲端/2愛心碼/3B2B |
| invoice_ratetype | 稅率別: 0應稅5%,1零稅率,2免稅 |
| invoice_b2b_title | 公司抬頭(B2B時必填) |
| invoice_b2b_id | 公司統編(B2B時必填) |
| invoice_mobile_code | 手機條碼載具 |
| invoice_natural_person | 自然人憑證條碼 |
| invoice_love_code | 愛心碼(捐贈發票) |
| items | 商品明細陣列,建議含折扣、運費項目 |
| invoice_cloud_type | 雲端發票載具類型,如1、2、3(條碼/自然人等) |
* 電子發票串接的相關更新,請以技術文件為準:
Tap 常見整合模式有哪些?
- Cross App 模式:使用 Intent 互動,最常見。
- 裝置外部有藍牙模式與網路串接刷卡機模式,Android 10 以後需 App 在前台才能使用網路串接。
App 如何進行後開立發票?
Tap 的交易回傳資料格式與處理方式?
- 交易請求與回應皆透過 MyPayCommon 的 ActionDetails 類別,請求時以 JSON 字串設定 data 欄位。
- 回應資料透過 Intent 回傳,回傳時仍為 ActionDetails,data 欄位包含結果 JSON。
App 是否可以直接列印?
Tap 支持哪些設備?
- 商米設備包含 V2s、V3、V3 MIX、D3 MINI 等,非列表內設備不保證成功串接。
- iMin 設備僅 Swift 2 Pro 有保證支援。
App 如何查詢交易與退款?
MYPAY App 查詢交易與退款:
- 查詢交易使用 ACTION_QUERY_TRANSACTION。
- 退款使用 ACTION_REFUND,並可設置作廢發票狀態。
透過 Intent 設定 PACKAGE_NAME 為 tw.com.mypay.tap.dev(測試)或 tw.com.mypay.tap(正式)和 Activity 名稱 tw.com.mypay.MainActivity。
App 如何使用不同支付方式?
設置 MYPAY App 的支付方式:
- 付款方式以 PAY_MODE_ID 標示,如信用卡、Line Pay、街口支付等。
- 產生 QR Code 交易使用 ACTION_SEND_TRANSACTION 並設置相應支付方式。
串接 MYPAY 金流服務有什麼開發建議嗎?
- 開發前請使用 測試區 API (https://ka.usecase.cc/api/init 或 /api/agent) 測試;上線後切換至正式區。
- 建議程式支援 UTF-8 編碼,避免中文商品名稱或地址傳輸亂碼。
- 保留 uid、key、url 三個欄位於交易完成回傳資料,以利後續交易查詢與發票開立使用。
- 若使用 .NET、Java、Python、Node.js 均可參考官方文件範例程式碼結構(含加密模組與 POST 實作)。
代收交易完成後如何撥款給商店?
代收費模式(is_agent_charge)怎麼判斷?
若有設定手續費或簡訊費,系統預設自動啟用代收模式;若未帶費用參數或類型,則為一般交易。
若強制指定 is_agent_charge 欄位,會以指定為準。
應使用 /api/agent 介接網址(例如測試區 https://ka.usecase.cc/api/agent),以 agent_uid 身份加密發送金流請求。
交易 POST 請求需特別注意哪些重點?
所有資料均需經 AES256 加密後再以 Base64 編碼,並使用 application/x-www-form-urlencoded 或 JSON 格式進行 POST。
若使用的 HTTP 函式庫會自動加入 URL Encode,不要再手動重複編碼,否則會產生「解密失敗」錯誤。
API 出現 HTTP 429 (Too Many Requests) 是什麼原因?
串接時為什麼出現 403 錯誤? 串接錯誤
伺服器使用 AWS WAF 防火牆,會阻擋缺乏標準 User-Agent 的請求。請確認 User-Agent headers 設定為類似 Mozilla/5.0 (Windows NT 10.0; Win64; x64) 的正常瀏覽器字串。
消費者希望更換信用卡扣款資料能透過 API 處理嗎?
定期扣款失敗會自動重扣嗎?
電子錢包綁定後可否同時支援一次性交易與定期扣款?
後端應如何回應通知?
當 MYPAY 接收到上游金流回傳結果後,系統會主動以背景 POST 通知商家系統 URL。
若未收到商家回覆「8888」,MYPAY 會重送通知共 5 次,仍未成功則寄信通知技術窗口人員。
交易完成後導頁(success_returl、failure_returl)會回傳交易結果參數嗎? 交易結果
金鑰更新後舊金鑰是否仍可使用? 金鑰
系統會主動通知金鑰快到期嗎? 金鑰
金鑰多久會過期?可以提前更新嗎? 金鑰
什麼是 ACTION_TAP_INIT?需要呼叫嗎?
- ACTION_TAP_INIT 可在信用卡交易或退款之前呼叫,用於提前初始化,減少交易時等待的時間。
- 雖非強制使用,但建議預先呼叫以提升使用體驗。
- 透過 Intent 傳送 ActionDetails 物件,並設置指定的 Action(如 ACTION_SEND_TRANSACTION)。
- 傳入包含交易信息的 JSON 字串。
- 在 onActivityResult 中取得回傳資料。
發票地址、抬頭可否異動?
Tap 信用卡交易如何串接?
- Tap 不支援 ACTION_SEND_TRANSACTION 裡的 PAY_MODE_ID_CREDIT_CARD,必須使用 ACTION_TAP Action 來進行信用卡交易。
- 退款操作同樣必須使用 ACTION_TAP_REFUND。
App 如何區分呼叫測試版與正式版?
使用不同的包名(PACKAGE_NAME):
- MYPAY App 測試︰cc.usecase.mypay
- MYPAY App 正式︰tw.com.mypay
- MYPAY Tap 測試︰tw.com.mypay.tap.dev
- MYPAY Tap 正式︰tw.com.mypay.tap
發票張數是否有控管?
MYPAY Tap 與 MYPAY App 有何差異?
- MYPAY Tap 要求 Android 9 以上,且必須支援 Google Mobile Services(GMS) 與 NFC,非 EMV 設備。
- Tap 專為 NFC 感應信用卡交易設計,支持特定硬體,如:商米V2s、V3 等。
- Tap 的 PACKAGE_NAME 與測試、正式環境區分明確,如:正式環境為 tw.com.mypay.tap。
- 將最新版 AAR 檔(MyPayCommon_vX.X.X_release.aar)放入 app/libs 資料夾。
- 在 build.gradle 中增加依賴,並在 release 版本須添加 ProGuard 保護設定。
電子發票開立類型(invoice_input_type)代表什麼?
Tap 如何發動退款?
在 MYPAY Tap 環境下發動退款(信用卡 Tap 交易的退款),需使用專用的 ACTION_TAP_REFUND 動作。
參數設定重點
- action 值:Constant.ACTION_TAP_REFUND
- data:放入AppRequest的JSON 字串,須包含退款資料。
- PACKAGE_NAME:根據測試環境或正是環境設定。
- TARGET_ACTIVITY_NAME:固定為 tw.com.mypay.MainActivity。
注意事項
- 必須使用 Tap 專用的退款 Action (ACTION_TAP_REFUND),不可再使用 ACTION_REFUND。
- 若先呼叫 ACTION_TAP_INIT 可預初始化裝置,縮短退款時等待時間。
- 須確保 Android 版本需在 9 以上且裝置支援 GMS 與 NFC。
MYPAY App 和 MYPAY Tap 有什麼不同?
- MYPAY App:支援 Android 7 以上,為 EMV 設備,GMS 與 NFC 非必要。
- MYPAY Tap:需 Android 9 以上,支援 NFC 與 GMS,非 EMV 設備,專為信用卡感應支付設計。
- MYPAY App 和 MYPAY Tap 兩者的支援設備與串接包名不同。
金流退款時如何處理電子發票?
常見問題
如何做發票作廢串接?
發票作廢的串接主要是透過「交易退款」API,並以特定欄位 invoice_state 設值為 4 來表示發票作廢(註銷)。特約商店、經銷商兩種模式發票作廢串接的差異主要在 API 位址及驗證身份欄位,整體流程與欄位結構相似: 特約商店發票作廢串接 經銷商發票作廢串接 API 介接網址: 測試區:https://ka.usecase.cc/api/init 正式區:https://ka.mypay.tw/api/init 服務命令:api/refund 主要欄位:…
為什麼使用相機掃描客戶載具,會有缺少字元?
請確認相機完整開啟後,再掃載具條碼,條碼必須在完整框中,才能讀取完整的條碼內容。
如何知道剩下幾張電子發票號碼?
可以透過 MYPAY 交易查詢 API,查詢剩餘可用電子發票號碼數量。實際操作是在呼叫「交易查詢」時,系統回傳結果中會包含 invoice_count 欄位,其值即代表目前專戶剩下的可用電子發票張數。 查詢方式與必備欄位 特約商店(Store 模式)需以交易查詢 API(api/queryorder)發送查詢,必要參數為「uid」(交易流水號)與「key」(驗證碼)。 經銷商(Agent 模式)同樣以交易查詢 API(api/queryorder)查詢,必須帶入「uid」及「key」參數。 回傳資料解析 查詢回傳資料中,invoice_count…
如何發動發票折讓?
發動發票折讓的方式本質上類似,都是透過「交易退款(api/refund)」API發起折讓請求,但特約商店、經銷商兩模式在使用身分、API介接端點、必要參數等細節上有差異: 發票折讓發動方法(共通點) 折讓由「交易退款 API」發起,帶入折讓相關參數(invoice_state 指定為折讓狀態,退款商品明細 items 須與原發票相符) 送出資料前需以 AES 256 加密,並以 HTTPS POST 送出 發票折讓資料由系統送至財政部電子發票平台完成折讓作業…
特約商店可用支付工具查詢 API 有哪些?
特約商店可透過「特約商店可用支付工具查詢 API」來查詢目前特約商店所能啟用的支付方式。此查詢主要讓商戶知道可供消費者選擇的付款管道,內容包括信用卡、各電子錢包、ATM 轉帳、超商代碼、虛擬帳號等。 開發者文件(詳細說明及範例碼) 經銷商:https://doc.usecase.cc/Payment/Agent/#d45930806e 特約商店:https://doc.usecase.cc/Payment/Store/#d45930806e 注意事項 依商務代號區別,即可確知貴司身分。 【經銷商】商務代號,尾碼 4 碼 1XXX。 【特約商店】商務代號,尾碼 4 碼…