支付系統相關修改指南,包括多個支付閘道整合(PayPal、Stripe、LINE Pay)、交易處理、Webhook 安全驗證,以及結帳流程優化。
此 skill 用來記錄與標準化支付系統相關的變更,包括多個支付閘道整合(PayPal、Stripe、LINE Pay)、交易處理、Webhook 安全驗證,以及結帳流程優化。
app/api/paypal/webhook/route.tsapp/api/paypal/capture-order/route.tsapp/api/stripe/webhook/route.tspayment_intent.succeeded - 支付成功payment_intent.payment_failed - 支付失敗charge.refunded - 退款完成app/api/linepay/checkout/route.tsapp/api/linepay/confirm/route.tslib/linepay.ts)文件:app/pricing/checkout/page.tsx
支援功能:
scripts/init-pricing-data.mjs)scripts/merge-pricing-data.mjs)PAYPAL_CLIENT_ID、STRIPE_SECRET_KEY、LINEPAY_API_KEY 等使用 Conventional Commits 類型:
feat(payment): 新增支付功能fix(payment): 修正支付流程或 webhook 錯誤chore(payment): 支付相關配置/依賴更新refactor(payment): 支付代碼重構Commit 範例:
feat(payment): add LINE Pay integration with checkout and confirm flows
- 新增 LINE Pay API 整合(checkout/confirm routes)
- 實作 LINE Pay 服務庫 (lib/linepay.ts)
- 更新結帳頁面支援 LINE Pay 選項
- 補充定價資料初始化和合併腳本
相關環境變數:LINEPAY_API_KEY, LINEPAY_MERCHANT_ID
app/api/
├── paypal/
│ ├── webhook/route.ts
│ └── capture-order/route.ts
├── stripe/
│ ├── webhook/route.ts
│ └── ... (其他 Stripe 路由)
└── linepay/
├── checkout/route.ts
└── confirm/route.ts
app/pricing/
└── checkout/page.tsx
lib/
├── linepay.ts # LINE Pay 服務庫
└── types/ # 支付相關類型定義
scripts/
├── init-pricing-data.mjs # 定價資料初始化
└── merge-pricing-data.mjs # 定價資料合併
.env.local 必須包含 PAYPAL_CLIENT_ID / PAYPAL_CLIENT_SECRET.env.local 必須包含 STRIPE_SECRET_KEY / STRIPE_WEBHOOK_SECRET.env.local 必須包含 LINEPAY_API_KEY / LINEPAY_MERCHANT_IDscripts/init-pricing-data.mjs (定價資料初始化)lib/linepay.ts (支付邏輯實作)