https://github.com/ECPay/ECPayAIO_Python/tree/master/sdk已經有了可以直接使用 ecpay_payment_sdk.py
因為本地測試需要開 tunnel 綠界才能連接到本地的 callback
# 沒有的話先下載
brew install cloudflared
# 開啟
cloudflared tunnel --url http://localhost:5000 pay.py 裡的 BACK_URL 改成 cloudflared 給的 Tunnel
# 1. 建立名為 venv 的虛擬環境
python -m venv venv
# 2. 啟動虛擬環境
# Mac/Linux:
source venv/bin/activate
# Windows:
# venv\Scripts\activate需先安裝
pip install --upgrade pip
pip install -r requirements.txtpython pay.pyhttp://127.0.0.1:5000/docs選擇 /api/callback > try it out > Execute
把回傳的 response body copy > pay.html 啟動 live server


輸入測試卡號:4311-9522-2222-2222。
日期 12/30 安全碼 222
手機輸入自己的 不然驗證失敗 QQ
點擊 立即付款
他會提醒這是測試網址請勿輸入真實資料 再按一次即可送出

並且確定有收到綠界回傳的資料以及驗證成功付款成功的 log
127.0.0.1 - - [25/Nov/2025 16:43:59] "POST /api/checkout HTTP/1.1" 200 -
收到綠界回傳: {'CustomField1': '', 'CustomField2': '', 'CustomField3': '', 'CustomField4': '', 'MerchantID': '1', 'MerchantTradeNo': '2', 'PaymentDate': '2333/12/05 06:04:54', 'PaymentType': 'Credit_CreditCard', 'PaymentTypeChargeFee': '11', 'RtnCode': '1', 'RtnMsg': '交易成功', 'SimulatePaid': '0', 'StoreID': '', 'TradeAmt': '500', 'TradeDate': '2025/11/25 16:44:09', 'TradeNo': '444444444', 'CheckMacValue': 'WETWT87W9ET789W7T9E7D60B215D25B13D4C6C512FCCA'}
驗證成功:付款成功!curl -X POST http://127.0.0.1:5000/api/callback \
-d "MerchantID=2000132" \
-d "MerchantTradeNo=Test12345" \
-d "RtnCode=1" \
-d "CheckMacValue=FakeValueForTesting"curl -X POST https://{your-url}/api/callback \
-d "MerchantID=2000132" \
-d "MerchantTradeNo=TestPublic" \
-d "RtnCode=1" \
-d "CheckMacValue=FakeTest"

